1 |
1
프론트엔드 파이프라인을 통해 명령어를 미리 패치하는 선인출부와;
명령어 디코딩을 위해 선인출된 명령어를 순차 저장하는 명령 큐와;
상기 선인출부와 상기 명령 큐 사이에 위치하여 3-어드레스 모드 산술 연산을 위해 추가된 move 명령을 상기 선인출부의 선인출 사이클 내에 폴딩하는 move 폴딩부를 포함하고,
상기 move 폴딩부는 연속되는 2개의 명령이 산술 연산을 위해 변수를 목적 어드레스로 옮기는 명령과 상기 목적 어드레스에 대한 산술 연산 명령인지 판단하는 판단부와; 상기 명령 큐의 명령을 3-어드레스 모드 연산 명령으로 대체하는 폴딩부를 포함하는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
2 |
2
삭제
|
3 |
3
제 1항에 있어서, 상기 판단부는 상기 선인출부가 한 사이클에 패치하는 복수의 명령어들과 이전 사이클에 패치되어 저장된 명령 큐의 디코딩 되지 않은 명령들을 대상으로 move 명령과 산술 연산 명령 쌍을 판단하는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
4 |
4
제 1항에 있어서, 상기 명령 큐는 5개 이상의 엔트리로 구성되는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
5 |
5
제 1항에 있어서, 상기 선인출부와 상기 move 폴딩부 사이에 16비트 이상의 즉치값을 제공하기 위한 명령을 폴딩하는 즉치값 제공 명령 폴딩부를 더 포함하는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
6 |
6
제 5항에 있어서, 상기 즉치값 제공 명령 폴딩부는 AE32000 명령어 세트 중 LERI 명령을 폴딩하는 LERI 폴딩부인 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
7 |
7
제 1항에 있어서, 상기 명령 큐에 저장되는 패킷은 move 폴딩 여부를 나타내는 move 폴딩 플래그 필드와 move 폴딩을 위한 정보를 저장하는 move 폴딩 레지스터 필드를 더 포함하는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
8 |
8
제 7항에 있어서, 상기 move 폴딩부는 폴딩시 상기 move 폴딩 플래그 필드를 세트하고, 상기 move 폴딩 레지스터 필드에 move 명령의 소스 레지스터 번호를 기록하는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
9 |
9
제 8항에 있어서, 상기 명령 큐의 명령을 디코딩하면서 상기 move 폴딩 플래그 필드가 세트된 경우 상기 소스 오퍼런스로서 목적지 레지스터를 선택하는 대신 상기 move 폴딩 레지스터 필드에 저장된 레지스터 번호를 선택하는 디코딩 스테이지를 더 포함하는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
10 |
10
16비트 명령을 이용하여 32비트 데이터를 처리하는 EISC 기반 32비트 프로세서의 명령어 인출 장치에 있어서,
명령어를 미리 패치하는 선인출부와;
디코딩을 위한 명령를 순차 저장하는 명령 큐와;
선인출된 명령어가 즉치값 제공을 위한 확장 레지스터 제공 명령인 경우 해당 명령을 선인출 사이클 내에 폴딩하는 즉치값 제공 명령 폴딩부와;
상기 즉치값 제공 명령 폴딩부를 통해 제공되는 폴딩되거나 혹은 되지 않은 명령과 명령 큐에 저장된 명령을 대상으로 3-모드 어드레스 연산을 위해 move 명령 후 제공되는 산술 연산 명령 쌍을 파악하여 상기와 동일한 선인출 사이클 내에 상기 2개의 명령을 하나의 산술 연산 명령을 나타내는 패킷으로 치환하는 move 폴딩부를 포함하는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
11 |
11
제 10항에 있어서, 상기 EISC 기반 32비트 프로세서는 AE32000이며, 상기 즉치값 제공 명령 폴딩부는 LERI 폴딩부인 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
12 |
12
제 10항에 있어서, 상기 명령 큐는 5개 이상의 엔트리를 가지는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
13 |
13
제 10항에 있어서, 상기 명령 큐에 저장되는 패킷은 move 폴딩 여부를 나타내는 move 폴딩 플래그 필드와 move 폴딩을 위한 정보를 저장하는 move 폴딩 레지스터 필드를 더 포함하는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
14 |
14
제 13항에 있어서, 상기 move 폴딩부는 폴딩시 상기 move 폴딩 플래그 필드를 세트하고, 상기 move 폴딩 레지스터 필드에 move 명령의 소스 레지스터 번호를 기록하는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|
15 |
15
제 14항에 있어서, 상기 명령 큐의 명령을 디코딩하면서 상기 move 폴딩 플래그 필드가 세트된 경우 상기 소스 오퍼런스로서 목적지 레지스터를 선택하는 대신 상기 move 폴딩 레지스터 필드에 저장된 레지스터 번호를 선택하는 디코딩 스테이지를 더 포함하는 것을 특징으로 하는 16비트 명령 세트를 위한 명령어 인출 장치
|