KR100534967B1 - 코드효율이높은초장명령어를실행하는프로세서 - Google Patents
코드효율이높은초장명령어를실행하는프로세서 Download PDFInfo
- Publication number
- KR100534967B1 KR100534967B1 KR1019980022512A KR19980022512A KR100534967B1 KR 100534967 B1 KR100534967 B1 KR 100534967B1 KR 1019980022512 A KR1019980022512 A KR 1019980022512A KR 19980022512 A KR19980022512 A KR 19980022512A KR 100534967 B1 KR100534967 B1 KR 100534967B1
- Authority
- KR
- South Korea
- Prior art keywords
- field
- code
- format
- decoding
- instruction
- Prior art date
Links
- 238000000034 method Methods 0.000 claims description 46
- 230000000717 retained effect Effects 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 claims 3
- 238000010586 diagram Methods 0.000 description 23
- 230000004048 modification Effects 0.000 description 9
- 238000012986 modification Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 230000008859 change Effects 0.000 description 5
- 230000002093 peripheral effect Effects 0.000 description 5
- 230000001343 mnemonic effect Effects 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000005549 size reduction Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3818—Decoding for concurrent execution
- G06F9/3822—Parallel decoding, e.g. parallel decode units
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30149—Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30163—Decoding the operand specifier, e.g. specifier format with implied specifier, e.g. top of stack
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30181—Instruction operation extension or modification
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3824—Operand accessing
- G06F9/383—Operand prefetching
-
- 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3853—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
- Advance Control (AREA)
Abstract
Description
Claims (32)
- 2개 이상의 연산 필드를 갖는 명령을 해독하여 실행하는 초장 명령어(Very Long Instruction Word: VLIW) 프로세서로서,제 1의 상기 연산 필드에는 연산의 종류를 지정하는 1개의 연산 코드만이 배치되고, 제 2의 상기 연산 필드에는 1개의 연산 코드와 연산의 대상이 되는 데이터를 지정하는 1개 이상의 오퍼랜드(operand)의 조(組)가 배치되며,상기 제 1 연산 필드에 배치된 연산 코드를 해독하는 제 1 해독수단과,상기 제 1 해독수단에 의한 해독결과에 따라 상기 연산 코드에 의해 지정된 연산을 실행하는 제 1 실행수단과,상기 제 2 연산 필드에 배치된 연산 코드를 해독하는 제 2 해독수단과,상기 제 2 해독수단에 의한 해독결과에 기초하여 상기 오퍼랜드에 의해 지정된 데이터에 대하여 상기 연산 코드에 의해 지정된 연산을 실행하는 제 2 실행수단을 포함하는 것을 특징으로 하는 VLIW 프로세서.
- 제 1항에 있어서,상기 제 1 연산 필드의 자리수는 상기 제 2 연산 필드의 자리수보다 작은 것을 특징으로 하는 VLIW 프로세서.
- 제 2항에 있어서,상기 제 1 연산 필드에 배치된 연산 코드의 자리수는 상기 제 2 연산 필드에 배치된 연산 코드의 자리수와 같은 것을 특징으로 하는 VLIW 프로세서.
- 제 3항에 있어서,상기 명령에 포함되는 연산 필드는 3개이고,제 3의 상기 연산 필드는 상기 제 2 연산 필드와 같은 자리수로서 1개의 연산 코드와 1개 이상의 오퍼랜드의 조가 배치되며,상기 VLIW 프로세서는,상기 제 3 연산 필드에 연산 코드가 배치된 경우에 상기 연산 코드를 해독하는 제 3 해독수단과,상기 제 3 해독수단에 의한 해독결과에 따라 상기 오퍼랜드에 의해 지정된 데이터에 대하여 상기 연산 코드에 의해 지정된 연산을 실행하는 제 3 실행수단을 추가로 구비하는 것을 특징으로 하는 VLIW 프로세서.
- 제 4항에 있어서,상기 제 1 실행수단은 실행할 명령이 포함되는 프로그램의 흐름을 제어하는 것을 특징으로 하는 VLIW 프로세서.
- 제 5항에 있어서,상기 제 2 실행수단은 상기 제 2 연산 필드에 배치된 오퍼랜드에 의해 지정된 데이터의 전송을 제어하고,상기 제 3 실행수단은 상기 제 3 연산 필드에 배치된 오퍼랜드에 의해 지정된 데이터의 산술 논리연산을 실행하는 것을 특징으로 하는 VLIW 프로세서.
- 2개 이상의 연산 필드를 갖는 명령을 해독하여 실행하는 VLIW 프로세서로서,제 1의 상기 연산 필드에는 연산의 종류를 지정하는 1개의 연산 코드만 또는 정수(定數)만 배치되고, 제 2의 상기 연산 필드에는 1개의 연산 코드와 연산의 대상이 되는 데이터를 지정하는 1개 이상의 오퍼랜드의 조 또는 정수만이 배치되며,상기 제 1 연산 필드에 연산 코드가 배치된 경우에 상기 연산 코드를 해독하는 제 1 해독수단과,상기 제 1 해독수단에 의한 해독결과에 따라 상기 연산 코드에 의해 지정된 연산을 실행하는 제 1 실행수단과,상기 제 2 연산 필드에 연산 코드가 배치된 경우에 상기 연산 코드를 해독하는 제 2 해독수단과,상기 제 2 해독수단에 의한 해독결과에 따라 상기 오퍼랜드에 의해 지정된 데이터에 대하여 상기 연산 코드에 의해 지정된 연산을 실행하는 제 2 실행수단을 포함하는 것을 특징으로 하는 VLIW 프로세서.
- 제 7항에 있어서,상기 명령은, 상기 제 1 및 제 2 연산 필드 각각에 정수만이 배치되어 있는지의 여부를 지정하는 포맷 코드가 배치된 포맷 코드를 포함하며,상기 VLIW 프로세서는,상기 포맷 코드를 해독하는 포맷 해독수단과,상기 포맷 해독수단에 의해 상기 제 1 및 제 2의 적어도 하나의 연산 필드에 정수만이 배치되어 있다고 해독된 경우 그 정수를 페치하여 기억하는 정수 기억수단을 더 구비하는 것을 특징으로 하는 VLIW 프로세서.
- 제 8항에 있어서,상기 제 1 연산 필드의 자리수는 상기 제 2 연산 필드의 자리수보다 작은 것을 특징으로 하는 VLIW 프로세서.
- 제 9항에 있어서,상기 제 1 연산 필드에 배치된 연산 코드의 자리수는 상기 제 2 연산 필드에 배치된 연산 코드의 자리수와 같은 것을 특징으로 하는 VLIW 프로세서.
- 제 10항에 있어서,상기 명령에 포함되는 연산 필드는 3개이고,제 3의 상기 연산 필드는 상기 제 2 연산 필드와 같은 자리수로서 1개의 연산 코드와 1개 이상의 오퍼랜드의 조가 배치되고,상기 VLIW 프로세서는,상기 제 3 연산 필드에 연산 코드가 배치된 경우 상기 연산 코드를 해독하는 제 3 해독수단과,상기 제 3 해독수단에 의한 해독결과에 따라 상기 오퍼랜드에 의해 지정된 데이터에 대하여 상기 연산 코드에 의해 지정된 연산을 실행하는 제 3 실행수단을 더 구비하는 것을 특징으로 하는 VLIW 프로세서.
- 제 11항에 있어서,상기 제 1 실행수단은 실행할 명령이 포함되는 프로그램의 흐름을 제어하는 것을 특징으로 하는 VLIW 프로세서.
- 제 12항에 있어서,상기 제 2 실행수단은 상기 제 2 연산 필드에 배치된 오퍼랜드에 의해 지정된 데이터의 전송을 제어하고,상기 제 3 실행수단은 상기 제 3 연산 필드에 배치된 오퍼랜드에 의해 지정된 데이터의 산술논리연산을 실행하는 것을 특징으로 하는 VLIW 프로세서.
- 제 13항에 있어서,상기 포맷 필드의 자리수, 상기 제 1 연산 필드의 자리수, 상기 제 2 및 제 3 연산 필드에 배치된 연산 코드의 자리수, 상기 제 2 및 제 3 연산 필드에 배치된 각 오퍼랜드의 자리수는 모두 n비트인 것을 특징으로 하는 VLIW 프로세서.
- 제 14항에 있어서,상기 명령은 32비트 길이이고,상기 n은 4인 것을 특징으로 하는 VLIW 프로세서.
- 3개 이상의 연산 필드와 포맷 필드를 갖는 명령을 해독하여 실행하는 VLIW 프로세서로서,제 1의 상기 연산 필드에는 실행할 명령이 포함되는 프로그램의 흐름을 제어하는 연산 코드 또는 정수가 배치되며, 제 2의 상기 연산 필드에는 데이터 전송을 제어하는 연산 코드 또는 정수가 배치되고, 제 3의 상기 연산 필드에는 산술논리연산을 제어하는 연산 코드 또는 정수가 배치되며, 상기 포맷 필드에는 상기 제 1, 제 2 및 제 3 연산 필드 각각에 정수가 배치되어 있는지의 여부를 지정하는 포맷 코드가 배치되고,상기 제 1 연산 필드에 배치된 연산 코드를 해독하는 제 1 해독수단과,상기 제 1 해독수단에 의한 해독결과에 따라 상기 연산 코드에 의해 지정된 실행할 명령의 흐름의 제어를 실행하는 제 1 실행수단과,상기 제 2 연산 필드에 배치된 연산 코드를 해독하는 제 2 해독수단과,상기 제 2 해독수단에 의한 해독결과에 따라 상기 연산 코드에 의해 지정된 데이터 전송의 제어를 실행하는 제 2 실행수단과,상기 제 3 연산 필드에 배치된 연산 코드를 해독하는 제 3 해독수단과,상기 제 3 해독수단에 의한 해독결과에 따라 상기 연산 코드에 의해 지정된 산술논리연산을 실행하는 제 3 실행수단과,상기 포맷 코드를 해독하는 포맷 해독수단과,상기 포맷 해독수단에 의해 상기 제 1, 제 2 및 제 3의 적어도 하나의 연산 필드에 정수가 배치되어 있다고 해독된 경우 그 정수를 페치하고 기억하는 정수 기억수단을 포함하는 것을 특징으로 하는 VLIW 프로세서.
- 제 16항에 있어서,상기 명령이 32비트 길이인 것을 특징으로 하는 VLIW 프로세서.
- 포맷 코드를 포함하는 포맷 필드 및 적어도 하나의 연산 필드를 포함하는 명령을 해독 및 실행하는 초장 명령어(Very Long Instruction Word: VLIW) 프로세서로서,상기 포맷 필드 내의 포맷 코드를 해독하고, 상기 연산 필드 내의 연산의 종류를 지정하며, 상기 포맷 코드에 의해 지정된 연산의 종류에 의해 특정되는 방식으로 연산 필드를 해독하는 해독부와,상기 해독부에 의해 산출된 해독결과에 따라 상기 연산 필드에 의해 지정된 연산을 실행하는 실행부를 포함하는 것을 특징으로 하는 VLIW 프로세서.
- 제 18항에 있어서,상기 명령은 복수의 연산 필드를 포함하고, 상기 포맷 코드는 상기 각각의 연산 필드의 연산 종류를 추가로 지정하는 것을 특징으로 하는 VLIW 프로세서.
- 제 19항에 있어서,상기 각각의 연산 필드의 연산의 종류는 상기 명령내의 상기 연산 필드의 위치에 의해 추가로 특정되는 것을 특징으로 하는 VLIW 프로세서.
- 제 18항에 있어서,상기 해독부는 연산 필드 내에 포함된 연산 코드를 해독하고, 상기 실행부는 상기 해독된 연산 코드에 대응하는 연산을 실행하는 것을 특징으로 하는 VLIW 프로세서.
- 제 18항에 있어서,상기 해독부에 의해 상기 연산 필드 내의 연산의 종류가 정수를 기억하는 연산인 것으로 지정되는 경우, 상기 실행부는 상기 포맷 코드에 의해 지정된 연산 필드에 위치된 정수를 레지스터에 기억시키도록 제어를 실행하는 실행 제어수단을 포함하는 것을 특징으로 하는 VLIW 프로세서.
- 제 18항에 있어서,상기 해독부는 상기 연산 필드 내에 포함된 연산 코드를 해독하고, 상기 해독부에 의해 상기 연산 필드가 상기 연산 코드, 소스 레지스터 코드, 및 데스티네이션 레지스터 코드를 포함하는 것으로 추가로 지정되면, 상기 실행부는 상기 소스 레지스터 코드 및 상기 데스티네이션 레지스터 코드를 이용하는 상기 해독된 연산 코드에 대응하는 연산을 실행하는 것을 특징으로 하는 VLIW 프로세서.
- 제 18항에 있어서,상기 명령은 분기 필드를 추가로 포함하고,상기 해독부는 상기 분기 필드에 포함되는 분기 연산 코드를 해독하며,상기 해독부에 의해, 상기 연산 필드 내의 연산의 종류가 상기 분기 필드에 상기 분기 연산 코드가 포함됨을 나타내는 것으로 추가로 지정되면, 상기 실행부는 상기 해독된 분기 연산 코드에 대응하는 분기 연산을 실행하는 것을 특징으로 하는 VLIW 프로세서.
- 제 18항에 있어서,상기 포맷 코드는 상기 포맷 필드 외의 적어도 하나의 필드가 보유되어 있음을 추가로 지정하는 것을 특징으로 하는 VLIW 프로세서.
- VLIW 프로세서에 의해 해독 및 실행되는 VLIW 명령을 기록하는 기록매체로서,상기 VLIW 명령은,하나 이상의 연산 필드 각각에 대한 연산의 종류를 정의한 포맷 코드를 갖는 포맷 필드와;상기 포맷 코드에 의해 정의된 연산의 종류에 따라 상기 VLIW 프로세서에 의해 해독되는 값을 각각 갖는 하나 이상의 연산 필드를 포함하는 것을 특징으로 하는 기록매체.
- 제 26항에 있어서,상기 VLIW 명령은 복수의 연산 필드를 포함하며, 상기 포맷 코드는 상기 각각의 연산 필드의 연산의 종류를 추가로 지정하는 것을 특징으로 하는 기록매체.
- 제 27항에 있어서,상기 각각의 연산 필드의 연산의 종류는 상기 명령내의 상기 연산 필드의 위치에 의해 추가로 특정되는 것을 특징으로 하는 기록매체.
- VLIW 프로세서에 의해 해독 및 실행되는 VLIW 명령을 기록하는 기록매체로서,상기 VLIW 명령은 제 1 연산 필드 및 제 2 연산 필드를 포함하는 2개 이상의 연산 필드를 포함하며,상기 제 1 연산 필드는 한 종류의 연산을 특정하는 하나의 연산 코드만 갖고, 상기 제 2 연산 필드는 하나의 연산 코드, 및 각각이 하나의 연산에 사용되는 데이터를 특정하는 하나 이상의 오퍼랜드를 갖는 것을 특징으로 하는 기록매체.
- 제 29항에 있어서,상기 제 1 연산 필드의 비트수는 상기 제 2 연산 필드의 비트수 보다 작은 것을 특징으로 하는 기록매체.
- 제 30항에 있어서,상기 제 1 연산 필드 내의 상기 연산 코드의 비트수는 상기 제 2 연산 필드 내의 상기 연산 코드의 비트수와 같은 것을 특징으로 하는 기록매체.
- 포맷 코드를 포함하는 포맷 필드 및 적어도 하나의 연산 필드를 포함하는 명령을 해독 및 실행하는 초장 명령어(Very Long Instruction Word: VLIW)에서 이용하는 명령 해독/실행 방법에 있어서,상기 포맷 필드 내의 포맷 코드를 해독하고, 상기 연산 필드 내의 연산의 종류를 지정하며, 상기 포맷 코드에 의해 지정된 연산의 종류에 의해 특정되는 방식으로 연산 필드를 해독하는 해독단계; 및상기 해독단계에 의해 산출된 해독결과에 따라 상기 연산 필드에 의해 지정된 연산을 실행하는 실행단계를 포함하는 것을 특징으로 하는 명령 해독/실행 방법.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15904897A JP3790607B2 (ja) | 1997-06-16 | 1997-06-16 | Vliwプロセッサ |
JP9-159048 | 1997-06-16 | ||
JP???9-159048 | 1997-06-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990007023A KR19990007023A (ko) | 1999-01-25 |
KR100534967B1 true KR100534967B1 (ko) | 2006-03-23 |
Family
ID=15685098
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019980022512A KR100534967B1 (ko) | 1997-06-16 | 1998-06-16 | 코드효율이높은초장명령어를실행하는프로세서 |
Country Status (10)
Country | Link |
---|---|
US (7) | US6085306A (ko) |
EP (4) | EP2138932B1 (ko) |
JP (1) | JP3790607B2 (ko) |
KR (1) | KR100534967B1 (ko) |
CN (2) | CN100339824C (ko) |
DE (1) | DE69838966T2 (ko) |
IL (1) | IL124904A (ko) |
MY (2) | MY135426A (ko) |
SG (3) | SG91248A1 (ko) |
TW (1) | TW490636B (ko) |
Families Citing this family (56)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3790607B2 (ja) * | 1997-06-16 | 2006-06-28 | 松下電器産業株式会社 | Vliwプロセッサ |
JP3412462B2 (ja) * | 1997-07-30 | 2003-06-03 | 松下電器産業株式会社 | プロセッサ |
US6219776B1 (en) * | 1998-03-10 | 2001-04-17 | Billions Of Operations Per Second | Merged array controller and processing element |
EP0953898A3 (en) * | 1998-04-28 | 2003-03-26 | Matsushita Electric Industrial Co., Ltd. | A processor for executing Instructions from memory according to a program counter, and a compiler, an assembler, a linker and a debugger for such a processor |
JP2001034471A (ja) | 1999-07-19 | 2001-02-09 | Mitsubishi Electric Corp | Vliw方式プロセッサ |
NZ516680A (en) * | 1999-08-30 | 2004-01-30 | Ip Flex Inc | Program product for specifying an input and/or output interface of a processing unit independently of the timing of execution of the processing unit |
JP3730455B2 (ja) * | 1999-10-01 | 2006-01-05 | 富士通株式会社 | 情報処理装置及び情報処理方法 |
US20020004897A1 (en) * | 2000-07-05 | 2002-01-10 | Min-Cheng Kao | Data processing apparatus for executing multiple instruction sets |
US20030023830A1 (en) * | 2001-07-25 | 2003-01-30 | Hogenauer Eugene B. | Method and system for encoding instructions for a VLIW that reduces instruction memory requirements |
AU2003282553A1 (en) * | 2002-08-05 | 2004-02-25 | Koninklijke Philips Electronics N.V. | Processor and method for processing vliw instructions |
EP1530755B1 (en) | 2002-08-16 | 2019-11-06 | Intel Corporation | Apparatus, method, and compiler enabling processing of variable length isntructions in a very long instruction word processor |
AU2003253159A1 (en) * | 2002-09-24 | 2004-04-19 | Koninklijke Philips Electronics N.V. | Apparatus, method ,and compiler enabling processing of load immediate instructions in a very long instruction word processor |
JP4283226B2 (ja) * | 2002-10-11 | 2009-06-24 | エヌエックスピー ビー ヴィ | アドレス範囲に依存した命令並行処理を行うデータ処理装置 |
US8211338B2 (en) | 2003-07-01 | 2012-07-03 | Transitions Optical, Inc | Photochromic compounds |
JP4283131B2 (ja) * | 2004-02-12 | 2009-06-24 | パナソニック株式会社 | プロセッサ及びコンパイル方法 |
US8736628B1 (en) | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Single thread graphics processing system and method |
US8860722B2 (en) * | 2004-05-14 | 2014-10-14 | Nvidia Corporation | Early Z scoreboard tracking system and method |
US8736620B2 (en) * | 2004-05-14 | 2014-05-27 | Nvidia Corporation | Kill bit graphics processing system and method |
US8743142B1 (en) | 2004-05-14 | 2014-06-03 | Nvidia Corporation | Unified data fetch graphics processing system and method |
US8687010B1 (en) | 2004-05-14 | 2014-04-01 | Nvidia Corporation | Arbitrary size texture palettes for use in graphics systems |
US7146491B2 (en) * | 2004-10-26 | 2006-12-05 | Arm Limited | Apparatus and method for generating constant values |
KR100636596B1 (ko) | 2004-11-25 | 2006-10-23 | 한국전자통신연구원 | 고에너지 효율 병렬 처리 데이터 패스 구조 |
US7523295B2 (en) * | 2005-03-21 | 2009-04-21 | Qualcomm Incorporated | Processor and method of grouping and executing dependent instructions in a packet |
US7849466B2 (en) * | 2005-07-12 | 2010-12-07 | Qualcomm Incorporated | Controlling execution mode of program threads by applying a mask to a control register in a multi-threaded processor |
JP4916151B2 (ja) * | 2005-09-29 | 2012-04-11 | ルネサスエレクトロニクス株式会社 | 並列演算装置 |
CN101467128B (zh) * | 2006-06-15 | 2012-09-26 | 日本电气株式会社 | 处理器和指令控制方法 |
US8537168B1 (en) | 2006-11-02 | 2013-09-17 | Nvidia Corporation | Method and system for deferred coverage mask generation in a raster stage |
US8599208B2 (en) * | 2007-08-15 | 2013-12-03 | Nvidia Corporation | Shared readable and writeable global values in a graphics processor unit pipeline |
US8736624B1 (en) | 2007-08-15 | 2014-05-27 | Nvidia Corporation | Conditional execution flag in graphics applications |
US8314803B2 (en) | 2007-08-15 | 2012-11-20 | Nvidia Corporation | Buffering deserialized pixel data in a graphics processor unit pipeline |
US8521800B1 (en) | 2007-08-15 | 2013-08-27 | Nvidia Corporation | Interconnected arithmetic logic units |
US9183607B1 (en) | 2007-08-15 | 2015-11-10 | Nvidia Corporation | Scoreboard cache coherence in a graphics pipeline |
US8775777B2 (en) * | 2007-08-15 | 2014-07-08 | Nvidia Corporation | Techniques for sourcing immediate values from a VLIW |
US20090046105A1 (en) * | 2007-08-15 | 2009-02-19 | Bergland Tyson J | Conditional execute bit in a graphics processor unit pipeline |
US7739434B2 (en) | 2008-01-11 | 2010-06-15 | International Business Machines Corporation | Performing a configuration virtual topology change and instruction therefore |
US7734900B2 (en) | 2008-01-11 | 2010-06-08 | International Business Machines Corporation | Computer configuration virtual topology discovery and instruction therefore |
US9280480B2 (en) | 2008-01-11 | 2016-03-08 | International Business Machines Corporation | Extract target cache attribute facility and instruction therefor |
US7870339B2 (en) | 2008-01-11 | 2011-01-11 | International Business Machines Corporation | Extract cache attribute facility and instruction therefore |
US7895419B2 (en) | 2008-01-11 | 2011-02-22 | International Business Machines Corporation | Rotate then operate on selected bits facility and instructions therefore |
US20100004542A1 (en) | 2008-07-03 | 2010-01-07 | Texas Instruments Incorporated | System and method for ultrasound color doppler imaging |
US8418268B2 (en) * | 2009-12-04 | 2013-04-16 | Global Trademarks, Llc | Garment having support |
US9678754B2 (en) * | 2010-03-03 | 2017-06-13 | Qualcomm Incorporated | System and method of processing hierarchical very long instruction packets |
US8228109B2 (en) | 2010-06-28 | 2012-07-24 | Freescale Semiconductor, Inc. | Transmission gate circuitry for high voltage terminal |
US8804764B2 (en) | 2010-12-21 | 2014-08-12 | International Business Machines Corporation | Data path for data extraction from streaming data |
US20120198213A1 (en) * | 2011-01-31 | 2012-08-02 | International Business Machines Corporation | Packet handler including plurality of parallel action machines |
JP5813484B2 (ja) * | 2011-11-30 | 2015-11-17 | ルネサスエレクトロニクス株式会社 | Vliwプロセッサと命令構造と命令実行方法 |
US9411595B2 (en) | 2012-05-31 | 2016-08-09 | Nvidia Corporation | Multi-threaded transactional memory coherence |
US9824009B2 (en) | 2012-12-21 | 2017-11-21 | Nvidia Corporation | Information coherency maintenance systems and methods |
US10102142B2 (en) | 2012-12-26 | 2018-10-16 | Nvidia Corporation | Virtual address based memory reordering |
US9317251B2 (en) | 2012-12-31 | 2016-04-19 | Nvidia Corporation | Efficient correction of normalizer shift amount errors in fused multiply add operations |
US9483266B2 (en) * | 2013-03-15 | 2016-11-01 | Intel Corporation | Fusible instructions and logic to provide OR-test and AND-test functionality using multiple test sources |
US9886277B2 (en) | 2013-03-15 | 2018-02-06 | Intel Corporation | Methods and apparatus for fusing instructions to provide OR-test and AND-test functionality on multiple test sources |
US9569385B2 (en) | 2013-09-09 | 2017-02-14 | Nvidia Corporation | Memory transaction ordering |
CA2957729C (en) | 2014-10-23 | 2019-02-26 | Talon Technologies, Inc. | Garment with multilayer internal abdominal support panels |
CN106160717B (zh) | 2015-04-03 | 2020-08-18 | 恩智浦美国有限公司 | 传输门电路 |
TWI707272B (zh) * | 2019-04-10 | 2020-10-11 | 瑞昱半導體股份有限公司 | 可執行指令的電子裝置以及指令執行方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR930016896A (ko) * | 1992-01-06 | 1993-08-30 | 가나이 쯔도무 | 병렬연산기능을 가지는 계산기 |
EP0689129A1 (en) * | 1994-06-21 | 1995-12-27 | STMicroelectronics Limited | Processing of computer instructions with a reduced number of bits for operand specifiers |
Family Cites Families (65)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4295193A (en) * | 1979-06-29 | 1981-10-13 | International Business Machines Corporation | Machine for multiple instruction execution |
US5050070A (en) * | 1988-02-29 | 1991-09-17 | Convex Computer Corporation | Multi-processor computer system having self-allocating processors |
US5202967A (en) * | 1988-08-09 | 1993-04-13 | Matsushita Electric Industrial Co., Ltd. | Data processing apparatus for performing parallel decoding and parallel execution of a variable word length instruction |
US5000000A (en) * | 1988-08-31 | 1991-03-19 | University Of Florida | Ethanol production by Escherichia coli strains co-expressing Zymomonas PDC and ADH genes |
US5615349A (en) | 1990-09-04 | 1997-03-25 | Mitsubishi Denki Kabushiki Kaisha | Data processing system capable of execution of plural instructions in parallel |
JP2835103B2 (ja) * | 1989-11-01 | 1998-12-14 | 富士通株式会社 | 命令指定方法及び命令実行方式 |
DE4040382C2 (de) * | 1989-12-15 | 1999-03-11 | Hitachi Ltd | Integrierte Halbleiterschaltungsanordnung mit niederer Leistungsaufnahme und Verfahren zu ihrem Betrieb |
JPH04143819A (ja) * | 1989-12-15 | 1992-05-18 | Hitachi Ltd | 消費電力制御方法、半導体集積回路装置およびマイクロプロセツサ |
EP0450658B1 (en) * | 1990-04-06 | 2001-08-01 | Nec Corporation | Parallel pipelined instruction processing system for very long instruction word |
DE69130723T2 (de) * | 1990-10-05 | 1999-07-22 | Koninkl Philips Electronics Nv | Verarbeitungsgerät mit Speicherschaltung und eine Gruppe von Funktionseinheiten |
JP2908598B2 (ja) * | 1991-06-06 | 1999-06-21 | 松下電器産業株式会社 | 情報処理装置 |
JP3186095B2 (ja) | 1991-07-05 | 2001-07-11 | 日本電気株式会社 | 演算処理装置 |
JPH0527970A (ja) * | 1991-07-18 | 1993-02-05 | Seikosha Co Ltd | 演算装置 |
JP2848727B2 (ja) | 1991-11-18 | 1999-01-20 | 株式会社東芝 | 並列演算処理装置 |
JPH05233281A (ja) * | 1992-02-21 | 1993-09-10 | Toshiba Corp | 電子計算機 |
US5371864A (en) * | 1992-04-09 | 1994-12-06 | International Business Machines Corporation | Apparatus for concurrent multiple instruction decode in variable length instruction set computer |
US5617549A (en) * | 1992-10-06 | 1997-04-01 | Hewlett-Packard Co | System and method for selecting and buffering even and odd instructions for simultaneous execution in a computer |
US6002880A (en) * | 1992-12-29 | 1999-12-14 | Philips Electronics North America Corporation | VLIW processor with less instruction issue slots than functional units |
US5485629A (en) * | 1993-01-22 | 1996-01-16 | Intel Corporation | Method and apparatus for executing control flow instructions in a control flow pipeline in parallel with arithmetic instructions being executed in arithmetic pipelines |
US5384722A (en) * | 1993-03-10 | 1995-01-24 | Intel Corporation | Apparatus and method for determining the Manhattan distance between two points |
JP2636136B2 (ja) | 1993-04-27 | 1997-07-30 | 工業技術院長 | 演算処理装置及び演算処理方法 |
EP0950946B1 (en) | 1993-11-05 | 2001-08-16 | Intergraph Corporation | Software scheduled superscaler computer architecture |
JP3199205B2 (ja) * | 1993-11-19 | 2001-08-13 | 株式会社日立製作所 | 並列演算装置 |
US6334219B1 (en) * | 1994-09-26 | 2001-12-25 | Adc Telecommunications Inc. | Channel selection for a hybrid fiber coax network |
ZA9510127B (en) * | 1994-12-01 | 1996-06-06 | Intel Corp | Novel processor having shift operations |
JP3547139B2 (ja) * | 1995-03-17 | 2004-07-28 | 株式会社 日立製作所 | プロセッサ |
US5669001A (en) * | 1995-03-23 | 1997-09-16 | International Business Machines Corporation | Object code compatible representation of very long instruction word programs |
US5774726A (en) * | 1995-04-24 | 1998-06-30 | Sun Microsystems, Inc. | System for controlled generation of assembly language instructions using assembly language data types including instruction types in a computer language as input to compiler |
JP2931890B2 (ja) * | 1995-07-12 | 1999-08-09 | 三菱電機株式会社 | データ処理装置 |
US5848288A (en) | 1995-09-20 | 1998-12-08 | Intel Corporation | Method and apparatus for accommodating different issue width implementations of VLIW architectures |
US5884323A (en) * | 1995-10-13 | 1999-03-16 | 3Com Corporation | Extendible method and apparatus for synchronizing files on two different computer systems |
US5774737A (en) * | 1995-10-13 | 1998-06-30 | Matsushita Electric Industrial Co., Ltd. | Variable word length very long instruction word instruction processor with word length register or instruction number register |
US5822606A (en) * | 1996-01-11 | 1998-10-13 | Morton; Steven G. | DSP having a plurality of like processors controlled in parallel by an instruction word, and a control processor also controlled by the instruction word |
US5826054A (en) | 1996-05-15 | 1998-10-20 | Philips Electronics North America Corporation | Compressed Instruction format for use in a VLIW processor |
US5852741A (en) | 1996-05-15 | 1998-12-22 | Philips Electronics North America Corporation | VLIW processor which processes compressed instruction format |
US5787302A (en) | 1996-05-15 | 1998-07-28 | Philips Electronic North America Corporation | Software for producing instructions in a compressed format for a VLIW processor |
US5748936A (en) * | 1996-05-30 | 1998-05-05 | Hewlett-Packard Company | Method and system for supporting speculative execution using a speculative look-aside table |
JP3442225B2 (ja) | 1996-07-11 | 2003-09-02 | 株式会社日立製作所 | 演算処理装置 |
JP3745039B2 (ja) * | 1996-08-01 | 2006-02-15 | 株式会社ルネサステクノロジ | 遅延命令を有するマイクロプロセッサ |
JPH10232779A (ja) | 1997-01-24 | 1998-09-02 | Texas Instr Inc <Ti> | 命令並列処理方法及び装置 |
US5805850A (en) * | 1997-01-30 | 1998-09-08 | International Business Machines Corporation | Very long instruction word (VLIW) computer having efficient instruction code format |
JP3578883B2 (ja) * | 1997-01-31 | 2004-10-20 | 三菱電機株式会社 | データ処理装置 |
US5881307A (en) * | 1997-02-24 | 1999-03-09 | Samsung Electronics Co., Ltd. | Deferred store data read with simple anti-dependency pipeline inter-lock control in superscalar processor |
JP3790607B2 (ja) * | 1997-06-16 | 2006-06-28 | 松下電器産業株式会社 | Vliwプロセッサ |
US6219779B1 (en) * | 1997-06-16 | 2001-04-17 | Matsushita Electric Industrial Co., Ltd. | Constant reconstructing processor which supports reductions in code size |
US6256709B1 (en) * | 1997-06-26 | 2001-07-03 | Sun Microsystems, Inc. | Method for storing data in two-way set associative odd and even banks of a cache memory |
JP3412462B2 (ja) * | 1997-07-30 | 2003-06-03 | 松下電器産業株式会社 | プロセッサ |
JP3414209B2 (ja) * | 1997-07-30 | 2003-06-09 | 松下電器産業株式会社 | プロセッサ |
JP3892118B2 (ja) * | 1997-07-31 | 2007-03-14 | 高砂香料工業株式会社 | 2,2’−ビス(ジアリールホスフィノ)−6,6’−ビス(トリフルオロメチル)−1,1’−ビフェニル、これを配位子とする遷移金属錯体および光学活性な3−ヒドロキシ酪酸エステル誘導体あるいはβ−ブチロラクトンの製造方法 |
US6170051B1 (en) * | 1997-08-01 | 2001-01-02 | Micron Technology, Inc. | Apparatus and method for program level parallelism in a VLIW processor |
US5922065A (en) | 1997-10-13 | 1999-07-13 | Institute For The Development Of Emerging Architectures, L.L.C. | Processor utilizing a template field for encoding instruction sequences in a wide-word format |
US6173389B1 (en) * | 1997-12-04 | 2001-01-09 | Billions Of Operations Per Second, Inc. | Methods and apparatus for dynamic very long instruction word sub-instruction selection for execution time parallelism in an indirect very long instruction word processor |
US6076154A (en) * | 1998-01-16 | 2000-06-13 | U.S. Philips Corporation | VLIW processor has different functional units operating on commands of different widths |
US5881260A (en) * | 1998-02-09 | 1999-03-09 | Hewlett-Packard Company | Method and apparatus for sequencing and decoding variable length instructions with an instruction boundary marker within each instruction |
US6446190B1 (en) * | 1998-03-12 | 2002-09-03 | Bops, Inc. | Register file indexing methods and apparatus for providing indirect control of register addressing in a VLIW processor |
JP3541669B2 (ja) | 1998-03-30 | 2004-07-14 | 松下電器産業株式会社 | 演算処理装置 |
US6275927B2 (en) * | 1998-09-21 | 2001-08-14 | Advanced Micro Devices. | Compressing variable-length instruction prefix bytes |
US6058306A (en) * | 1998-11-02 | 2000-05-02 | Hughes Electronics Corporation | Compensation of dynamic doppler frequency of large range in satellite communication systems |
US6314509B1 (en) * | 1998-12-03 | 2001-11-06 | Sun Microsystems, Inc. | Efficient method for fetching instructions having a non-power of two size |
JP3841967B2 (ja) * | 1999-01-19 | 2006-11-08 | 株式会社ルネサステクノロジ | マイクロプロセッサ |
WO2000043580A1 (en) * | 1999-01-25 | 2000-07-27 | E.I. Du Pont De Nemours And Company | Polysaccharide fibers |
US6116806A (en) * | 1999-02-17 | 2000-09-12 | Chang; Chin Pao | Connection tightness and swing angle adjustable pivot |
US6405301B1 (en) * | 1999-06-15 | 2002-06-11 | U.S. Philips Corporation | Parallel data processing |
US6415376B1 (en) * | 2000-06-16 | 2002-07-02 | Conexant Sytems, Inc. | Apparatus and method for issue grouping of instructions in a VLIW processor |
JP4502532B2 (ja) * | 2001-02-23 | 2010-07-14 | 株式会社ルネサステクノロジ | データ処理装置 |
-
1997
- 1997-06-16 JP JP15904897A patent/JP3790607B2/ja not_active Expired - Lifetime
-
1998
- 1998-06-12 US US09/096,715 patent/US6085306A/en not_active Expired - Lifetime
- 1998-06-15 EP EP09172121A patent/EP2138932B1/en not_active Expired - Lifetime
- 1998-06-15 EP EP09172123A patent/EP2138933A1/en not_active Withdrawn
- 1998-06-15 EP EP06076804.1A patent/EP1734440B1/en not_active Expired - Lifetime
- 1998-06-15 EP EP98304690A patent/EP0886210B1/en not_active Expired - Lifetime
- 1998-06-15 TW TW087109487A patent/TW490636B/zh not_active IP Right Cessation
- 1998-06-15 IL IL12490498A patent/IL124904A/en not_active IP Right Cessation
- 1998-06-15 DE DE69838966T patent/DE69838966T2/de not_active Expired - Lifetime
- 1998-06-16 SG SG9801438A patent/SG91248A1/en unknown
- 1998-06-16 KR KR1019980022512A patent/KR100534967B1/ko not_active IP Right Cessation
- 1998-06-16 CN CNB200410006873XA patent/CN100339824C/zh not_active Expired - Lifetime
- 1998-06-16 SG SG200203000A patent/SG111062A1/en unknown
- 1998-06-16 MY MYPI20032352A patent/MY135426A/en unknown
- 1998-06-16 MY MYPI98002693A patent/MY116751A/en unknown
- 1998-06-16 CN CNB981029868A patent/CN1178145C/zh not_active Expired - Lifetime
- 1998-06-16 SG SG200202999A patent/SG111061A1/en unknown
-
2000
- 2000-06-20 US US09/598,397 patent/US6397319B1/en not_active Expired - Lifetime
-
2002
- 2002-05-22 US US10/097,759 patent/US7533243B2/en not_active Expired - Fee Related
- 2002-05-24 US US10/155,672 patent/US6834336B2/en not_active Expired - Lifetime
-
2009
- 2009-04-06 US US12/418,965 patent/US8019971B2/en not_active Expired - Fee Related
-
2010
- 2010-02-12 US US12/705,300 patent/US8250340B2/en not_active Expired - Fee Related
-
2012
- 2012-07-06 US US13/543,437 patent/US20120272044A1/en not_active Abandoned
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR930016896A (ko) * | 1992-01-06 | 1993-08-30 | 가나이 쯔도무 | 병렬연산기능을 가지는 계산기 |
EP0689129A1 (en) * | 1994-06-21 | 1995-12-27 | STMicroelectronics Limited | Processing of computer instructions with a reduced number of bits for operand specifiers |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100534967B1 (ko) | 코드효율이높은초장명령어를실행하는프로세서 | |
USRE40498E1 (en) | Variable address length compiler and processor improved in address management | |
EP1063586B1 (en) | Apparatus and method for processing data with a plurality of flag groups | |
US6195740B1 (en) | Constant reconstructing processor that execute an instruction using an operand divided between instructions | |
USRE32493E (en) | Data processing unit with pipelined operands | |
KR100618247B1 (ko) | 코드크기의축소화를지원하는정수복원형프로세서 | |
CN111406286A (zh) | 具有数据元素提升的查找表 | |
US20230043776A1 (en) | Look-up table read | |
JP3412462B2 (ja) | プロセッサ | |
JP3670801B2 (ja) | プロセッサ | |
JP2004005733A (ja) | Vliwプロセッサ | |
JPH1185514A (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20121119 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20131119 Year of fee payment: 9 |
|
FPAY | Annual fee payment |
Payment date: 20141117 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20151118 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20161122 Year of fee payment: 12 |
|
FPAY | Annual fee payment |
Payment date: 20171124 Year of fee payment: 13 |
|
EXPY | Expiration of term |