A Study on Extendable Instruction Set Computer 32 bit Microprocessor

확장 명령어 32비트 마이크로 프로세서에 관한 연구

  • 조건영 (정회원, 부경대학교 컴퓨터멀티미디어공학부)
  • Published : 1999.05.01

Abstract

The data transfer width between the mocroprocessor and the memory comes to a critical part that limits system performance since the data transfer width has been as it was while the performance of a microprocessor is getting higher due to its continuous development in speed. And it is important that the memory should be in small size for the reduction of embedded microprocessor's price which is integrated on a single chip with the memory and IO circuit. In this paper, a mocroprocessor tentatively named as Extendable Instruction Set Computer(EISC) is proposed as the high code density 32 bit mocroprocessor architecture. The 32 bit EISC has 16 general purpose registers and 16 bit fixed length instruction which has the short length offset and small immediate operand. By using and extend register and extend flag, the offset and immediate operand could be extended. The proposed 32 bit EISC is implemented with an FPGA and all of its functions have been tested and verified at 1.8432MHz. And the cross assembler, the cross C/C++ compiler and the instruction simulator of the 32 bit EISC shows 140-220% and 120-140% higher code density than RISC and CISC respectively, which is much higher than any other traditional architectures. As a consequence, the EISC is suitable for the next generation computer architecture since it requires less data transfer width compared to any other ones. And its lower memory requirement will embedded microprocessor more useful.

마이크로 프로세서의 동작 속도가 빨라지면서 메모리의 데이터 전송 폭이 시스템 성능을 제한하는 중요 인자가 되고 있다. 또한 CPU와 메모리 및 입출력회로가 하나의 반도체에 집적되는 실장 제어용 마이크로 프로세서의 가격을 낮추기 위해서 메모리 크기를 줄이는 것이 중요하다. 본 논문에서는 코드 밀도가 높은 32 비트 마이크로 프로세서 구조로 가칭 확장 명령어 세트 컴퓨터(Extendable Instruction Set Computer: EISC)를 제안한다. 32 비트 EISC는 16개의 범용 레지스타를 가지며, 16 비트 고정 길이 명령어, 짧은 오프셋 인덱스 어드래싱과 짧은 상수 오퍼랜드 명령어를 가지며, 확장 레지스타와 확장 프래그를 사용하여 오프셋 및 상수 오퍼랜드를 확장할 수 있다. 32비트 EISC는 FPGA로 구현하여 1.8432MHz에서 모든 기능이 정상적으로 동작하는 것을 확이하였고, 크로스 어셈블러와 크로스 C/C++ 컴파일러 및 명령어 시뮬레이터를 설계하고 동작을 검증하였다. 제안한 EISC의 코드 밀도는 기존 RISC의 140-220%, 기존 CISC의 120-140%로 현격하게 높은 장점을 가진다. 따라서 데이터 전송 폭을 적게 요구하므로 차세대 컴퓨터 구조로 적합하고, 프로그램 메모리 크기가 작아지므로 실장 제어용 마이크로 프로세서에 적합하기 때문에 폭 넓은 활용이 기대된다.

Keywords