KR920004279B1 - 포인터레지스터를 구비한 마이크로프로세서 - Google Patents
포인터레지스터를 구비한 마이크로프로세서 Download PDFInfo
- Publication number
- KR920004279B1 KR920004279B1 KR1019890012223A KR890012223A KR920004279B1 KR 920004279 B1 KR920004279 B1 KR 920004279B1 KR 1019890012223 A KR1019890012223 A KR 1019890012223A KR 890012223 A KR890012223 A KR 890012223A KR 920004279 B1 KR920004279 B1 KR 920004279B1
- Authority
- KR
- South Korea
- Prior art keywords
- register
- general
- address
- pointer
- microprocessor
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/223—Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
Abstract
내용 없음.
Description
제 1 도는 본 발명에 따른 포인터레지스터를 구비한 마이크로프로세서의 1실시예를 도시한 도면.
제 2 도는 종래의 기술에 따른 마이크로프로세서의 개략적인 구성도.
제 3 도는 본 발명에 따른 제어공간을 구성하는 각 레지스터 및 범용레지스터군과 그 어드레스관계를 나타내는 어드레스맵을 도시한 도면이다.
* 도면의 주요부분에 대한 부호의 설명
1 : 명령디코더 2 : 마이크로명령격납부
3 : 어드레스레지스터 4 : 마이크로명령레지스터
5, 6 : 오퍼랜드레지스터 7 : 연산부
9 : 게이트 10 : 포인터레지스터
[산업상의 이용분야]
본 발명은 마이크로프로그램제어방식에 의한 마이크로프로세서에 관한 것으로, 특히 범용레지스터군중 소망하는 레지스터를 마이크로명령으로 직접 지정하지 않고도 억세스가 가능한 포인터레지스터를 구비한 마이크로프로세서에 관한 것이다.
[종래의 기술 및 그 문계점]
일반적으로 마이크로프로세서에서는 각종 제어레지스터 및 범용레지스터등에 소정의 어드레스를 할당하고 그 어드레스와 각 레지스터를 관계지워 제어공간을 구성하고, 디코드된 마이크로명령에 의해 소망의 레지스터에 정보를 격납하거나 독출하고 있다.
제 2 도는 종래의 마이크로프로세서의 구성을 도시한 것이고, 제 3 도는 제어공간을 구성하는 각 어드레스와 범용레지스터군을 포함한 각 레지스터의 어드레스맵을 도시한 도면이다. 이러한 종래의 마이크로프로세서에서 기계어명령으로 지정된 제어공간내의 범용레지스터에 데이터를 격납하거나 독출하는 경우에는 어드레스레지스터(3)로 지정된 어드레스와 제어공간내의 범용레지스터내의 16개 어드레스를 순차로 비교하여, 일치할 경우 지정된 레지스터로 억세스하는 프로그램으로 분기하여 처리하고 있다.
예를 들어, 범용레지스터군(8)내의 지정레지스터의 내용을 독출하는 경우에는, 기계어명령을 명령디코더(1)에서 디코드한 결과를 마이크로명령격납부(2)에 격납하고 그것을 독출하여 마이크로명령레지스터(4)에 넣는다. 그리고 마이크로명령의 선택필드(X2)에서 범용레지스터군(8)을 지정하여, 그 레지스터군중 특정레지스터(예컨대 제 3 도의 R4)를 범용레지스터번호필드(X3)로 지정하고, 제어필드(X1)로 지정된 동작, 즉 이 경우에 범용레지스터군(8)내의 레지스터(R4)로부터 데이터를 취출하여 데이터버스(B1)에 송출하는 동작을 하도록 하고 있다. 더욱이 제 2 도에서 참조부호 5,6은 오퍼랜드를 일시적으로 보유하기 위한 오퍼랜드레지스터이고, 7은 연산장치, 9는 게이트를 나타내는 것이다.
이와 같은 종래의 마이크로프로세서는 범용레지스터군(8)내의 각 레지스터에 대해 그 내용을 취출하여 예컨대 도시되지 않은 메모리에 격납하는 경우, 각 레지스터의 어드레스를 지정하고 검색하는 방법이지 않으면 않된다. 즉, 예컨대 제어공간을 구성하는 어드레스맵(제 3 도)중 범용레지스터(R14)를 지정한 것으로 하면, 기계어명령중의 어드레스와 상기 어드레스맵중 각 범용레지스터의 어드레스(H'0184, H'0l8C, H'0194, ...)를 순차로 비교하여 일치하는 어드레스의 내용을 취출하는 마이크로프로그램이 필요하기 때문에 그 프로그램의 스텝수가 증대하게 되어, 그를 위한 처리가 필요하게 된다.
[발명의 목적]
본 발명은 상기와 같은 문제점을 해결하기 위한 것으로, 범용레지스터군내의 각 레지스터를 지정하는 포인터레지스터를 설치하여 마이크로프로그램에 의해 상기 각 범용레지스터를 지정하지 않고도 기계어명령의 어드레스로 지정된 제어공간어드레스맵의 어드레스로부터 각 범용레지스터를 지정하는 비트정보를 산출하고 그것을 상기 포인터레지스터에 설정하도록 할 수 있는 포인터레지스터를 구비한 마이크로프로세서를 제공함에 그 목적이 있다.
[발명의 구성]
상기와 같은 목적을 달성하기 위한 본 발명은 기계어명령을 디코드하는 명령디코더(1)와, 상기 명령에 관련하여 제어공간의 억세스를 지정하는 어드레스레지스터(3), 디코드된 마이크로명령을 격납하는 마이크로명령격납부(2), 다수의 범용레지스터로 이루어진 범용레지스터군(8)을 구비하여 구성된 마이크로프로세서에 있어서, 상기 범용레지스터군(8)내의 각 레지스터를 지정하는 비트정보를 일시적으로 격납하는 포인터레지스터(10)를 설치하고 상기 제어공간의 어드레스를 지정하는 어드레스레지스터(3)의 내용으로부터 상기 범용레지스터군(8)내의 소망레지스터를 지정하기 위한 어드레스연산을 행하여 그 결과의 비트정보를 상기 포인터레지스터(10)에 격납함으로써, 마이크로명령격납부(2)에서 취출한 마이크로명령에 의해 각 범용레지스터를 직접 지정하지 않고 상기 포인터레지스터(10)내의 비트정보에서 소망의 각 범용레지스터를 억세스할 수 있도록 구성된다.
[작용]
이와 같은 본 발명에 의하면 각 범용레지스터는 상기 포인터레지스터내의 비트정보에 의해 지정되므로, 마이크로명령으로는 범용레지스터군 전체를 지정하는 것만으로 이루어지고, 각 범용레지스터지정용 마이크로프로그램을 공통화할 수 있음과 더불어 마이크로프로그램격납부에의 억세스시간도 단축할 수 있다.
[실시예]
이하, 예시도면을 참조하여 본 발명의 1실시예를 상세히 설명한다.
제 1 도는 본 발명의 1실시예에 따른 포인터레지스터를 구비한 마이크로프로세서의 구성을 도시한 도면으로서, 동도면에서 참조부호 1은 기계어명령을 디코드하는 명령디코더, 2는 마이크로명령레지스터, 5와 6은 오퍼랜드를 일시적으로 격납하는 오퍼랜드레지스터, 7은 연산부, 8은 범용레지스터군, 9는 게이트, 10은 기계어명령 어드레스로부터 산출된 비트정보를 일시적으로 격납하는 포인터레지스터를 나타내는 것이다.
여기서 제 1 도에 도시된 구성요소중 제 2 도와 같은 참조부호가 부여되고 있는 것은 동일구성요소를 나타내고 있다.
본 발명의 실시예에 있어서는 제 1 도에 도시된 바와 같이 포인터레지스터(10)가 설치된 구성으로 되어 있고, 후술하는 것과 같은 기계어명령의 어드레스로 지정된 제어공간어드레스맵의 어드레스로부터 산출되는 비트정보를 상기 포인터레지스터(10)에 설정함으로써 범용레지스터군(8)내의 특정레지스터를 지정할 수 있도록 하고 있다. 따라서 마이크로명령레지스터(4)내의 마이크로명령의 X3필드에서 개별적으로 각 범용레지스터를 지정하지 않아도 그 X2필드에서 범용레지스터군(8)만을 공통으로 지정하므로 특정범용레지스터에 억세스할 수 있도록 되어 있다.
즉, 이러한 동작은 제 1 도의 명령디코더(1)에서 디코드된 기계어명령이 마이크로명령격납부(2)에 격납되는 한편 그 어드레스가 어드레스레지스터(3)내에 일시적으로 격납된다.
마이크로명령격납부(2)로부터 독출된 마이크로명령은 마이크로명령레지스터(4)내에 인가되어 처리해야할 동작을 지정하는 선택필드(X1), 범용레지스터군(8)을 총괄적으로 지정하는 선택필드(X2), 마이크로프로세서내의 다른 각 레지스터를 지정하는 X3필드에 의해 각 제어가 이루어진다.
상기 제어공간어드레스맵의 어드레스를 지정하는 어드레스레지스터(3)의 내용은 마이크로프로그램에 의해 소정비트(예컨대 3비트)오른쪽으로 시프트되어 포인터레지스터(10)에 설정되고, 게이트(9)를 매개로 다음 마이크로명령으로 지정되는 동작을 위한 특정범용레지스터에 억세스되게 된다.
예를들면, 마이크로명령레지스터(4)내의 마이크로명령제어필드(X1)가 READ이고, X2가 범용레지스터군(8)을 지정한다고하면, 이 범용레지스터군(8)의 특정레지스터(예컨대 R3)의 내용이 게이트(9)를 매개로 포인터레지스터(10)내의 정보비트에 의해 지정되어 있으므로 그 내용이 독출되어 메모리에 기록된다.
따라서 마이크로명령에 의해 범용레지스터군(8)내의 특정레지스터를 지정하지 않아도 포인터레지스터(10)에서 지정할 수 있으므로 제어공간내의 어드레스를 검색하지 않고 소정의 범용어드레스에 억세스할 수 있다.
이상 상술한 바와 같이 본 발명에 따른 마이크로프로세서에는 포인터레지스터가 설치됨으로써 마이크로명령에 의한 범용레지스터군내의 특정레지스터에 직접 지정을 하지 않고도 억세스가 가능하므로 범용레지스터군에의 데이터격납, 독출용 마이크로프로그램을 공통화할 수 있다. 더욱이 상기 실시예에서는 범용레지스터군에 대해서 설명하였지만 동종의 레지스터가 하나로 뭉쳐 집중되어 형성된 것이면(예컨대 스택포인터 등) 마찬가지의 처리를 할 수 있다.
[발명의 효과]
상기한 바와 같이 본 발명에 따른 포인터레지스터를 구비한 마이크로프로세서는 범용레지스터군이 총괄적으로 마이크로명령에 의해 지정되고, 그중의 각 레지스터는 마이크로명령으로 지정되는 것이 아니고 포인터레지스터의 내용으로 지정되므로 범용레지스터군에 억세스하는 명령계통의 마이크로프로그램이 공통화된다. 따라서 프로그램의 스텝수를 대폭적으로 줄일 수 있고, 처리속도를 향상시킬 수 있다.
또한, 프로그램의 스텝수를 저감할 수 있다는 것은 마이크로명령격납부를 보다 유효하게 사용할 수 있음을 의미한다.
Claims (1)
- 기계어명령을 디코드하는 명령디코더(1)와, 상기 명령에 관련하여 제어공간의 억세스를 지정하는 어드레스레지스터(3), 디코드된 마이크로명령을 격납하는 마이크로명령격납부(2), 다수의 범용레지스터로 이루어진 범용레지스터군(8)을 구비하여 구성된 마이크로프로세서에 있어서, 상기 범용레지스터군(8)내의 각 레지스터를 지정하는 비트정보를 일시적으로 격납하는 포인터레지스터(10)를 설치하고 상기 제어공간의 어드레스를 지정하는 어드레스레지스터(3)의 내용으로부터 상기 범용레지스터군(8)내의 소망 레지스터를 지정하기 위한 어드레스연산을 행하여 그 결과의 비트정보를 상기 포인터레지스터(10)에 격납함으로써, 마이크로명령격납부(2)에서 취출한 마이크로명령에 의해 각 범용레지스터를 직접 지정하지 않고 상기 포인터레지스터(10)내의 비트정보에서 소망하는 각 범용레지스터를 억세스할 수 있도록 된 것을 특징으로 하는 포인터레지스터를 구비한 마이크로프로세서.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP21067388 | 1988-08-26 | ||
JP63-210673 | 1988-08-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR900003741A KR900003741A (ko) | 1990-03-27 |
KR920004279B1 true KR920004279B1 (ko) | 1992-06-01 |
Family
ID=16593216
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019890012223A KR920004279B1 (ko) | 1988-08-26 | 1989-08-26 | 포인터레지스터를 구비한 마이크로프로세서 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5117487A (ko) |
EP (1) | EP0361107B1 (ko) |
KR (1) | KR920004279B1 (ko) |
DE (1) | DE68928041T2 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190023209A (ko) * | 2017-08-28 | 2019-03-08 | 케이테크전해 주식회사 | 살균제 또는 세정제를 생성할 수 있는 전기분해 장치 및 그것을 위한 전기분해 방법 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5687338A (en) * | 1994-03-01 | 1997-11-11 | Intel Corporation | Method and apparatus for maintaining a macro instruction for refetching in a pipelined processor |
US5632028A (en) * | 1995-03-03 | 1997-05-20 | Hal Computer Systems, Inc. | Hardware support for fast software emulation of unimplemented instructions |
CN101079083B (zh) * | 2006-05-25 | 2010-05-12 | 中国科学院计算技术研究所 | 一种对访存操作进行权限检查的***、装置及方法 |
US8561037B2 (en) * | 2007-08-29 | 2013-10-15 | Convey Computer | Compiler for generating an executable comprising instructions for a plurality of different instruction sets |
US9710384B2 (en) * | 2008-01-04 | 2017-07-18 | Micron Technology, Inc. | Microprocessor architecture having alternative memory access paths |
US9015399B2 (en) | 2007-08-20 | 2015-04-21 | Convey Computer | Multiple data channel memory module architecture |
US8095735B2 (en) | 2008-08-05 | 2012-01-10 | Convey Computer | Memory interleave for heterogeneous computing |
US8423745B1 (en) * | 2009-11-16 | 2013-04-16 | Convey Computer | Systems and methods for mapping a neighborhood of data to general registers of a processing element |
US10430190B2 (en) | 2012-06-07 | 2019-10-01 | Micron Technology, Inc. | Systems and methods for selectively controlling multithreaded execution of executable code segments |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4124890A (en) * | 1977-06-20 | 1978-11-07 | Vasenkov Alexandr A | Microprocessor computing system |
US4156279A (en) * | 1977-11-22 | 1979-05-22 | Honeywell Information Systems Inc. | Microprogrammed data processing unit including a multifunction secondary control store |
US4347566A (en) * | 1978-12-11 | 1982-08-31 | Tokyo Shibaura Denki Kabushiki Kaisha | Data processor with register file and arithmetic logic circuit on one chip and register means directly connected to the chip |
JPS56129950A (en) * | 1980-03-07 | 1981-10-12 | Hitachi Ltd | Information processor |
US4358826A (en) * | 1980-06-30 | 1982-11-09 | International Business Machines Corporation | Apparatus for enabling byte or word addressing of storage organized on a word basis |
US4434461A (en) * | 1980-09-15 | 1984-02-28 | Motorola, Inc. | Microprocessor with duplicate registers for processing interrupts |
JPS58146941A (ja) * | 1982-02-26 | 1983-09-01 | Hitachi Ltd | マイクロプログラム制御デ−タ処理装置 |
US4586130A (en) * | 1983-10-03 | 1986-04-29 | Digital Equipment Corporation | Central processing unit for a digital computer |
JP2545789B2 (ja) * | 1986-04-14 | 1996-10-23 | 株式会社日立製作所 | 情報処理装置 |
US4878174A (en) * | 1987-11-03 | 1989-10-31 | Lsi Logic Corporation | Flexible ASIC microcomputer permitting the modular modification of dedicated functions and macroinstructions |
-
1989
- 1989-08-25 US US07/398,437 patent/US5117487A/en not_active Expired - Lifetime
- 1989-08-26 KR KR1019890012223A patent/KR920004279B1/ko not_active IP Right Cessation
- 1989-08-28 EP EP89115828A patent/EP0361107B1/en not_active Expired - Lifetime
- 1989-08-28 DE DE68928041T patent/DE68928041T2/de not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20190023209A (ko) * | 2017-08-28 | 2019-03-08 | 케이테크전해 주식회사 | 살균제 또는 세정제를 생성할 수 있는 전기분해 장치 및 그것을 위한 전기분해 방법 |
Also Published As
Publication number | Publication date |
---|---|
DE68928041T2 (de) | 1997-09-25 |
EP0361107B1 (en) | 1997-05-14 |
DE68928041D1 (de) | 1997-06-19 |
US5117487A (en) | 1992-05-26 |
EP0361107A3 (en) | 1993-01-27 |
KR900003741A (ko) | 1990-03-27 |
EP0361107A2 (en) | 1990-04-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
USRE43248E1 (en) | Interoperability with multiple instruction sets | |
EP0148478A2 (en) | A data processor with control of the significant bit lenghts of general purpose registers | |
US4954943A (en) | Data processing system | |
JPH0248931B2 (ko) | ||
US4388682A (en) | Microprogrammable instruction translator | |
KR920004279B1 (ko) | 포인터레지스터를 구비한 마이크로프로세서 | |
JPH03233630A (ja) | 情報処理装置 | |
US4812970A (en) | Microprogram control system | |
JPH077356B2 (ja) | パイプライン方式のマイクロプロセッサ | |
KR920006611B1 (ko) | 정보처리장치 | |
JPH031231A (ja) | マイクロプログラム制御装置 | |
US5187782A (en) | Data processing system | |
JPS6217773B2 (ko) | ||
JPS63123127A (ja) | マイクロプログラム制御方式 | |
JP2576589B2 (ja) | 仮想記憶アクセス制御方式 | |
JPS61838A (ja) | マイクロプログラム制御装置 | |
JPH0128965B2 (ko) | ||
JP2743947B2 (ja) | マイクロプログラム制御方式 | |
JPH02138623A (ja) | ポインタレジスタを備えたマイクロプログラム制御方式のマイクロプロセッサ | |
JPS61839A (ja) | マイクロプログラム制御装置 | |
JPS6051739B2 (ja) | マイクロプログラム方式 | |
JPS6091448A (ja) | マイクロプログラム制御型デ−タ処理装置 | |
JPS6362769B2 (ko) | ||
JPS59170947A (ja) | マイクロプログラム多方向分岐方式 | |
JPS6136657B2 (ko) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20030530 Year of fee payment: 12 |
|
LAPS | Lapse due to unpaid annual fee |