KR930005769B1 - 분기 제어회로 - Google Patents

분기 제어회로 Download PDF

Info

Publication number
KR930005769B1
KR930005769B1 KR1019900016351A KR900016351A KR930005769B1 KR 930005769 B1 KR930005769 B1 KR 930005769B1 KR 1019900016351 A KR1019900016351 A KR 1019900016351A KR 900016351 A KR900016351 A KR 900016351A KR 930005769 B1 KR930005769 B1 KR 930005769B1
Authority
KR
South Korea
Prior art keywords
branch
instruction
circuit
decoder circuit
address
Prior art date
Application number
KR1019900016351A
Other languages
English (en)
Other versions
KR910008565A (ko
Inventor
다까시 미야모리
Original Assignee
가부시끼가이샤 도시바
아오이 죠이찌
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가부시끼가이샤 도시바, 아오이 죠이찌 filed Critical 가부시끼가이샤 도시바
Publication of KR910008565A publication Critical patent/KR910008565A/ko
Application granted granted Critical
Publication of KR930005769B1 publication Critical patent/KR930005769B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/32Address formation of the next instruction, e.g. by incrementing the instruction counter
    • G06F9/322Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address
    • G06F9/324Address formation of the next instruction, e.g. by incrementing the instruction counter for non-sequential address using program counter relative addressing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3804Instruction prefetching for branches, e.g. hedging, branch folding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline, look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3842Speculative instruction execution
    • G06F9/3844Speculative instruction execution using dynamic branch prediction, e.g. using branch history tables

Abstract

내용 없음.

Description

분기 제어회로
제1도는 이 발명의 분기 제어 회로의 기본 구성도.
제2도는 이 발명의 분기 제어 회로에 쓰이는 명령 포맷도.
제3도는 이 발명의 회로에 쓰이는 각형의 상대 분기 명령 포맷도.
제4도는 제1도의 부디코더 회로의 상세도.
제5도는 제4도의 각 분기 예측 정보, 폐치의 각 비트 상태와 선택기 출력의 관계를 도시한 도면.
제7도는 제1도의 주디코더 회로의 상세도.
제8도는 SS부의 비트 상태와 선택기 출력의 관계도.
제9도는 주디코더에서의 분기 예측동작을 설명하는 파이프 라인 흐름도.
제10도는 종래 기술에 의한 분기 제어 방식에서의 분기 예측이 성공한 경우의 파이프 라인 흐름도.
제11도는 종래 기술에 의한 방식에서의 분기가 성공되지 않은 경우의 파이프 라인 흐름도.
* 도면의 주요부분에 대한 부호의 설명
101 : 명령 버퍼 102 : 부디코더 회로
103 : 주디코더 회로
이 발명은, 파이프 라인 방식 데이타 처리 장치의 분기 회로, 특히 분기에 의한 파이프 라인의 난조를 최소로 억제하는 분기 제어 회로에 관한 것이다.
파이프 라인 방식의 데이타 처리 장치에서는 명령의 실행 처리가 고속으로 될 수있으므로, 현재로서는 많은 데이타 처리 장치가 파이프 라인 방식을 채택하고 있다.
파이프 라인 방식의 구성의 한 예를 들면, 명령 페치단, 명령 디코더단, 실효 어드레스 계산단, 오퍼랜드 페치단, 명령 실행단의 5개의 파이프 라인단으로 구성되어 있고, 명령은 메모리에서 순차적응로 독출되고, 각 파이프 라인단(스테이지)을 차례로 흘러서 처리된다. 즉, 각 파이프 라인에서 상이한 명령이 처리되고, 파이프 라인의 흐르에 난조가 없는 처리 상태에서 최고의 성능을 얻을 수 있게 된다.
따라서, 비파이프 라인 방식의 데이타 처리에서는, 각 처리단마다 1머신 사이클을 요할 경우는 1 명령의 실행에 5머신 사이클을 요하는 것에 대하여, 파이프 라인 방식에서는 상기 난조가 없는 최고의 성능 상태에서는 1머신 사이클마다 명령이 실행되므로 5배의 성능을 얻을 수 있다.
그러나, 파이프 라인 방식에서는, 분기 명령에 의하여 분기될 때 명령의 흐름이 난조되어 버려, 이 분기 명령 이후의 명령으로 이미 파이프 라인 중에서 처리가 진행되고 있는 것이 무효로 되고, 분기선(分岐先) 명령에서 처리를 재개해야만 하도록 되어 버린다. 그 결과로, 성능의 저하를 초래하게 되어 있다.
상기의 문제에 대처하는 방식으로서, 분기 예측에 의한 처리방식이 제안되어 있다. 이 방식에서는 분기 명령마다의 분기 에측 정보에 의하여 분기의 성공 여부를 예측하고, 성공한다고 예측한 경우는 그 분기 명령 실행전에 분기선 명령을 먼저 실행함으로써 파이프 라인의 난조를 감소시키고 있다.
그러나, 상기의 방식에서는 분기선의 어드레스를 어떤 수단으로서든지 할 필요가 있다.
분기선의 어드레스를 구하는 방식으로서 명령 페치단으로 대응표를 긋는 방식이 있다.
제10도는, 종래의 기술에 의한 분기 제어에서 대응표를 긋는 방식이다.
동 도면에 도시되듯이, 분기 명령 BI의 어드레스와 분기선 명령 TI의 분기선 어드레스의 대응표를 대기시키고, 명령 페치단 혹은 명령 디코드단에서 대응표를 긋고, 분기선의어드레스를 얻고 있다. 그리고, 분기 명령 BI의 분기가 성공한다고 예측된 경우는 대응표에서 얻은 분기선 어드레스에서 명령 페치를 개시하도록 되어 있다. 따라서, 확실히, 종래 방식에서도 제10도 같이 분기 에측이 성공(히트)한 경우에는 분기에 수반되는 난조는 최소한으로 억제된다.
그러나, 상기 종래 기술에 의한 방식에서는, 대응표를 사용하므로 대응에 상당하는 하드웨어량이 커지므로, 대응표의 엔트리수를 많게 할 수 없는 문제가 있었다.
한편, 대응표에 대한 에트리수를 작게 하려고 하면 제11도와 같이, 대응표에 엑세스한 경우에 성공하지 못하는(미스히트) 비율도 높아진다. 즉, 미스히트되는 비율이 높아진다는 것은 분기 명령 BI의 분기 예측이 불가능해짐을 의미하고 있다.
이와 같이, 종래의 파이프라인 방식에 의한 명령의 실행 처리에서는, 분기 예측을 히트시키려고 하면 하드웨어량도 커지고, 한편 대응표에 대한 엔트리수를 적게 하면 분기 예측이 미스히트되어 버리고, 파이프 라인의 난조를 초래한다는 이율 배반의 문제가 있었다.
이 발명은 상기의 문제점을 위해 이루언진 것으로, 그 목적은 적은 하드웨어의 구성으로, 분기 명령에 의하 파이프 라이의 난조를 최소로 억제할 수 있는 분기 제어 회로를 제공함에 있다.
그래서 이 발명에서는, 통상의 주디코더 회로 외에 부디코더 회로를 마련하고, 출현 빈도가 높은 단축형의 상대 분기 명령만을 상기 부디코더 회로에서 분기 예측하도록 구성하고 있다.
따라서, 분기선 어드레스를 기억해 두는 메모리를 요하지 않는 동시에 분기 명령의 어드레스와 이 명령중의 변위(displacement)를 가산함으로써 분기선 어드레스를 얻을 수있다. 따라서, 선택기와 가산을 쓰는 것만으로 분기 제어 회로를 구성할 수 있다.
제1도는 이 발명에 의한 분기 제어 회로의 한 실시예이다.
도시된 분기 제어 명령은 명령 페치단에서의 명령을 유지하는 명령 버퍼(101), 단축형의 상대 분기 명령만을 디코더하는 부디코더 회로(102), 및 일반형의 상대 분기 명령을 디코더하는 주디코더 회로(103)으로 구성되어 있다.
동작은 부디코더 회로(102)에서 단축형의 상대 분기 명령만을 디코더하여 분기 예측을 실시하고, 주디코더 회로(103)은 명령 버퍼의 선두에 격납되어 있는 명령을 신호선(106)을 통하여 입력하고, 그것을 디코더하여 이후의 처리에 적합한 내부 명령으로 변환하고, 신호선(109)로 출력하고, 일반형의 상대 분기 명령의 분기를 예측하고, 분기선 어드레스를 신호선(111)로, 그 어드레스가 유효함을 분기선 어드레스 유효 신호선(110)으로 출력한다.
제2도는, 이 발명에 쓰이는 명령의 포멧을 도시하고 있다. 도시되는 바오 같이, 이 명령 포맷은 1반단어(HW)를 기본 단위로 하고, 가변이 가능한 기장으로 되어 있다. 1HW의 명령은 분기 정보를 표시하는 BI부와 명령 기능 및 오퍼랜드 정보를 표시하는 INST부로 구성된다. BI부는 이 실시예에서는 1비트이고, BI부에 이어지는 INST부가 분기 명령의 선두이고, 또 그 분기 명령의 분기가 성공된다고 예측될 대, "1"이고, 그 이외는 "0"이고, INST부는 16비트로 되어 있다. 명령 버퍼에로는 후술하는 바와 같이 4HW단위로 얼라인먼트(alignment)가 취해진 4HW의 명령이 한번에 명령 페치부에서 부여된다. 또, 버퍼(101)은 격납되어 있는 명령의 선두 3HW분을 제1도의 신호선(106)을 통하여 주디코더 회로(103)으로 출력한다.
제3도는, 이 발명에 의한 예측 제어 회로에서 쓰이는 단축형 및 일반형의 상대 분기 명령 포맷을 표시한다. 이 분기 명령은 어드레스와 명령 중에 포함된 변위를 가한 값을 분기선 어드레스로서 이용한다. 즉, 단축형의 상대 분기 명령은 명령 기장이 1HW이고, INST부의 0-7비트가 상대 분기 명령임을 표시하는 연산 코드(OP)부이고, 8-15비트가 8비트의 변위(#dS)을 표시한다. 일반형의 상대 분기 명령은, 변위의 크기로 8비트, 16비트, 32비트를 선택할 수 있다. 변위가 8비트일시는 상대 분기 명령중의 SS 필드는 00이다. 이때, 명령은 2HW이고, 제1HW가 분기 명령의 기능을, 제2HW가 변위를 표시하고, 변위의 하위 8비트 유효하다. 변위가 16비트일시는 상대 분기 명령중의 SS필드는 01이다. 이 때, 명령은 2HW이고, 제1HW가 분기 명령의 기능을, 제2HW가 변위를 표시한다. 변위가 32비트일시는 상대 분기 명령중의 SS필드는 10이다. 이때 명령은 3HW이고, 제1HW가 분기 명령의 기능을, 제2HW가 변위의 상위 16비트, 제3HW가 변위의 하위 16비트를 표시한다. 부디코더 회로(102)가 분기 예측하는 명령은 단축형의 상대 분기 명령에 한정된다. 제4도는 제1도의 부디코더 회로(102)의 상세한 구성을 도시하고 있다.
동 도며에 있는 부디코더 회로(102)는, 명령 래치(401), 페치 PC(402), 선택기(403), 분기 명령 디코더회로(404), 및 가산기(405)로 구성되어 있다.
동작은, 명령 페치부에서 선(104)를 통하여 독출된 4HW의 명령은 명령 래치(401)에 격납되고, 선(105)를 통하여 독출된 명령의 선두 어드레스가 페치(402)로 격납된다. 페치 PC의 비트 31은 최소 명령 단위가 HW이므로 항상 0이다. 명령은 4HW 단위로 얼라인먼트가 취해지고, 페치 PC(402)의 어드레스의 29, 30비트가 "00"의 명령이 INST의 0-15비트, "01"의 명령이 INST의 16-31비트, "10"의 명령이 INST의 32-47비트, "11"의 명령이 INST의 48-63비트로 격납된다. 명령이 순차적으로 페치되어 있을 때는 페치 PC의 비트 위치 29, 30은 00이고, 명령 래치의 4HW 모두가 유효하다. 분기선의 명령이 페치된 경우는 페치PC의 29, 30은 분기선의 어드레스가 되고, 명령 래치는 그 어드레스 이후가 유효하다. 예로써, 페치 PC의 29, 30이 10일때 명령 래치의 INST의 32-63비트, BI의 2-3비트가 유효하다. 선택기(403)은 명령 래치의 BI 0-3과 페치 PC의 29,30비트에서 명령 래치의 4HW중, 1HW를 선택하고, 분기 명령 디코더 회로(404)와 가산기(405)로 출력한다.
제5도는 페치 PC(402)의 29, 30비트 상태 및 분기 정보 BI 10-13까지의 비트 상태에 의하여 선택기(403)의 출력 선택 동작을 표시한다. 예로써, 페치 PC의 상기 비트 위치가(1,0)이고 BI(0)=0, BI(1)=0, BI=(2)=1이면, INST(32-47)비트 출력이 선택된다.
선택기(403)은, 명령 래치(401)내에 분기가 성공한다고 예측되는 명령이 있는 경우, 그 명령이 HW가 분기 명령 디코더 회로(404)와 가산기(405)로 출력한다. 분기가 성공한다고 예측되는 명령이 없는 경우는 모두 1이 출력된다. 분기 명령 디코더 회로(404)에서는 선택기(403)의 출력 중 상위의 1바이크를 입력한다. 이 바이크의 값이 단축형인 상대 분기 명령의 연산 코드부와 일치하는 경우는, 분기선 어드레스 유효 신호(109)를 출력한다. 모두 1비트 패턴은 단축형인 상대 분기 명령의 연산 코드부 OP와 일치하지 않는다. 가산기(405)는, 선택기 출력의 하위 1바이트를 1비트 좌시프트한 것과 페치 PC의 값을 가산하고, 그 결과를 신호선(108)로 출력한다.
제6도는 부디코더 회로(102)에서 분기 예측을 한 경우의 파이프 라인의 흐름을 표시한다.
동 도면에 도시하듯이 이 발명에서는, 제1도의 회로에서 부디코더 회로(102)는 명령 버퍼(101)에 개로 입력되는 명령을 디코더하고, 주디코더 회로(103)은 명령 버퍼의 선두의 명령을 디코더하므로, 제6도의 사이클1에서는 부디코더 회로(102)와 주디코더 회로(103)은 동시에 상이한 명령을 디코더하고 있다. 따라서 이 경우에, 분기 예측이 성공하면 분기에 의한 파이프 라인의 난조는 없어진다.
제7도는, 제1도의 주디코더 회로(103)의 상세한 구성이다. 동 도면에 도시된 주디코더 회로(103)은, 명령 래치(701), 디코더 PC(702), 선택기(703), 디코더 회로(704), 제1가산기(750)및 제2가산기(706)으로 구성되어 있다. 이 주디코더 회로(103)의 명령 버퍼(101)에서 부여되는 명령은 3HW이고, 명령 래치(701)에 격납된다. 명령 래치(701)의 제1HW(BI[0]과 INST[0-15])는 디코더 회로(704)로 입력된다. 디코더 회로(704)에서는 부여된 명령을 내부 명령으로 변화하고, 그것을 신호선(109)를 통하여 실효 어드레스 계산부로 출력한다. 또, 디코더한 명령 기장을 제2가산기(706)으로 출력한다. 상기 제2가산기(706)은 명령 래치의 제1HW의 어드레스를 제시하는 디코더 PC(702)와 디코더 회로가 출력하는 디코더한 명령 기장으로 가산한다. 다음 명령의 제1도의 명령 버퍼(101)에서 입력되었을 때 제2가산기(706)의 출력값은 디코더(702)에 격납된다. 분기가 성공했을 때는 명령 페치부에서 신호선(105)를 통하여 부여되는 명령 페치 어드레스가 디코더 PC(702)에 격납된다. 디코더 회로는 BI[0]이 1이며, 또한 INST[0-15]가 일반형인 상대 분기 명령의 비트 패턴과 일치할 때 분기 어드레스 유효 신호(110)을 출력한다. 이때, 분기선 어드레스는 선택기(703)과 제1가산기(705)에서 계산되어 있다. 선택기(703)은, 일반형인 상대 분기 명령의 변위의 크기는 명령 중의 SS 필드(INST[6-7])로 표시된다.
제8도는 제1HW중의 SS 필드로 지정되는 비트 상태와 선택기(703)의 선택 출려과의 관계르 도시하고 있다.
즉, 제7도에서, 제1가산기(705)는 디코더 PC(702)의 값과 선택기(703)으로 선택된 출력인 상대 분기 명령의 변위값(제8도중의 각 INST의 비트값)들을 가산하여 분기선 어드레스를 구하여 신호선(111)을 통하여 출력한다.
제9도는, 제7도의 주디코더 회로(103)으로 분기 예측을 한 경우와 파이프 라인의 흐름을 표시한다. 즉, 상기 주디코더 회로(103)에서 사이클 1에서 분기가 성공한다고 예측된 분기 명령 BI가 디코더되고, 사이클2에서 분기 명령 TI가 페치되며, 사이클 3에서 페치된 상기 명령이 주디코더 회로(103)에서 재차 디코더되므로, 분기 명령 BI와 분기선 명령 TI와의 사이의 파이프 라인의 난조는 1사이클이 된다.
이상에서 설명한 바, 이 발명의 실시예에서는 분기 예측 정보를 표시하는 BI는 1HW당 1비트의 경우에, 분기 예측이 성공하면(히트) "1", 성공하지 못하면(미스히트) "0"이 됨으로써각 분기마다 예측이 된다는 점을 설명했다.
그러나, BI부를 1비트보다 많게 하여, 과거 복수회의 방향의 이력(履歷)을 BI부에 포함되도록 하여 이로써 분기 예측을 하도록 해도 무방하다.
또 주디코더 회로(103)을 개량하여 단축형의 상대 분기 명령중 무조건 분기 명령으로, BI부가 "0"으로서 부디코더 회로(102)에서 분기되지 않는 주디코더 회로(103)에서 분기 예측되도록 해도 무방하다.
이 발명의 분기 제어 회로의 실시예에서는 주디코더외에 부디코더 회로를 마련하는 동시에, 출현 빈도가 높은 단축형인 상대 분기 명령만을 부디코더 회로에서 분기 예측하도록 하고, 또, 분기선 어드레스를 구함을 분기 명령의 어드레스 분기 명령 중의 변위를 가산함으로써 얻고 있으므로, 선택기와 가산기의 조합이 적은 하드웨어로 구성할 수 있다. 또, 이 발명에서는 분기선 어드레스를 기억해 둘 필요가 없으므로, 분기선 어드레스 기억용 메모리가 불필요한 동시에, 분기 예측이 성공했을시의 파이프 라인의 난조를 최소로 억제할 수 있다.

Claims (1)

  1. 파이프 라인 방식에 의하여 분기 명령을 포함하는 명령을 처리하는 데이타 처리 장치에 있어서, 명령 페치단에서 명령 버퍼(101)로 입려되는 명령군 중 단축형인 상대 분기 명령을 처리하는 동시에, 상기 명령내에 포함된 분기 정보에서 분기가 성공된다고 예측된 경우에, 그 분기선 어드레스를 성공하는 부디코더 회로(102), 및 상기 명령군 중 일반형인 상대 분기 명령을 처리하는 동시에 상기 명령 내에 포함되어 있는 분기 정보에서 분기가 성공한다고 예측된 경우에, 그 분기선 어드레스를 생성하는 주디코더 회로(103)을 구비하는 것을 특징으로 하는 분기 제어 회로.
KR1019900016351A 1989-10-16 1990-10-15 분기 제어회로 KR930005769B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP1266158A JPH0650465B2 (ja) 1989-10-16 1989-10-16 分岐制御回路
JP1-266158 1989-10-16

Publications (2)

Publication Number Publication Date
KR910008565A KR910008565A (ko) 1991-05-31
KR930005769B1 true KR930005769B1 (ko) 1993-06-24

Family

ID=17427093

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019900016351A KR930005769B1 (ko) 1989-10-16 1990-10-15 분기 제어회로

Country Status (5)

Country Link
US (1) US5295248A (ko)
EP (1) EP0423726B1 (ko)
JP (1) JPH0650465B2 (ko)
KR (1) KR930005769B1 (ko)
DE (1) DE69032463T2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100310581B1 (ko) * 1993-05-14 2001-12-17 피터 엔. 데트킨 분기목표버퍼의추측기록메카니즘

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2761688B2 (ja) * 1992-02-07 1998-06-04 三菱電機株式会社 データ処理装置
JP3345787B2 (ja) * 1993-04-13 2002-11-18 三菱電機株式会社 データ処理装置
US5724565A (en) * 1995-02-03 1998-03-03 International Business Machines Corporation Method and system for processing first and second sets of instructions by first and second types of processing systems
CN1153133C (zh) * 1996-12-09 2004-06-09 松下电器产业株式会社 采用小规模硬件作高命中率分支预测的信息处理装置
US5974538A (en) * 1997-02-21 1999-10-26 Wilmot, Ii; Richard Byron Method and apparatus for annotating operands in a computer system with source instruction identifiers
US6167506A (en) 1997-11-17 2000-12-26 Advanced Micro Devices, Inc. Replacing displacement in control transfer instruction with encoding indicative of target address, including offset and target cache line location
US6134649A (en) * 1997-11-17 2000-10-17 Advanced Micro Devices, Inc. Control transfer indication in predecode which identifies control transfer instruction and an alternate feature of an instruction
US6061786A (en) * 1998-04-23 2000-05-09 Advanced Micro Devices, Inc. Processor configured to select a next fetch address by partially decoding a byte of a control transfer instruction
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
US6237087B1 (en) * 1998-09-30 2001-05-22 Intel Corporation Method and apparatus for speeding sequential access of a set-associative cache
JP2001273138A (ja) * 2000-03-24 2001-10-05 Fujitsu Ltd プログラム変換装置および方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3764988A (en) * 1971-03-01 1973-10-09 Hitachi Ltd Instruction processing device using advanced control system
JPS5848144A (ja) * 1981-09-16 1983-03-22 Nec Corp デ−タ処理装置の分岐命令制御方式
US4991080A (en) * 1986-03-13 1991-02-05 International Business Machines Corporation Pipeline processing apparatus for executing instructions in three streams, including branch stream pre-execution processor for pre-executing conditional branch instructions
GB8728493D0 (en) * 1987-12-05 1988-01-13 Int Computers Ltd Jump prediction
JPH02287626A (ja) * 1989-04-28 1990-11-27 Toshiba Corp パイプライン方式の分岐命令制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100310581B1 (ko) * 1993-05-14 2001-12-17 피터 엔. 데트킨 분기목표버퍼의추측기록메카니즘

Also Published As

Publication number Publication date
EP0423726A3 (en) 1992-09-16
DE69032463T2 (de) 1998-12-17
US5295248A (en) 1994-03-15
EP0423726A2 (en) 1991-04-24
KR910008565A (ko) 1991-05-31
DE69032463D1 (de) 1998-08-13
JPH0650465B2 (ja) 1994-06-29
JPH03129432A (ja) 1991-06-03
EP0423726B1 (en) 1998-07-08

Similar Documents

Publication Publication Date Title
US5283873A (en) Next line prediction apparatus for a pipelined computed system
US5586276A (en) End bit markers for indicating the end of a variable length instruction to facilitate parallel processing of sequential instructions
US4827402A (en) Branch advanced control apparatus for advanced control of a branch instruction in a data processing system
US6269439B1 (en) Signal processor having pipeline processing that supresses the deterioration of processing efficiency and method of the same
US5168557A (en) Instruction prefetching device having a history table for memorizing page last real instruction addresses and page-over all real instruction addresses providing for quicker page-over processing time
US5005118A (en) Method and apparatus for modifying micro-instructions using a macro-instruction pipeline
US5131086A (en) Method and system for executing pipelined three operand construct
JPH0477925A (ja) マイクロプロセッサ
KR100266424B1 (ko) 롬(rom)용량을 저감한 데이타 프로세서
KR930005769B1 (ko) 분기 제어회로
JPH06110683A (ja) マイクロプロセッサの拡張ブランチターゲット方法及びその装置
US6631459B1 (en) Extended instruction word folding apparatus
JP3486690B2 (ja) パイプライン方式プロセッサ
US5088030A (en) Branch address calculating system for branch instructions
EP0394711A2 (en) Branch instruction control unit based on a pipeline method
JP3725547B2 (ja) 限定ラン分岐予測
US5185870A (en) System to determine if modification of first macroinstruction to execute in fewer clock cycles
US5142630A (en) System for calculating branch destination address based upon address mode bit in operand before executing an instruction which changes the address mode and branching
US6237087B1 (en) Method and apparatus for speeding sequential access of a set-associative cache
US20050027921A1 (en) Information processing apparatus capable of prefetching instructions
US5121474A (en) Bit string data processor using dynamically addressable bit locations in memory so overlapping strings do not destroy data in memory
US7134000B2 (en) Methods and apparatus for instruction alignment including current instruction pointer logic responsive to instruction length information
US5361338A (en) Pipelined system for decomposing instruction into two decoding parts and either concurrently generating two operands addresses of merging decomposing decoding codes based upon the second operand
JP3493110B2 (ja) 高速分岐処理装置
US7711926B2 (en) Mapping system and method for instruction set processing

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: 11

LAPS Lapse due to unpaid annual fee