KR100251992B1 - 분기 예측 장치 - Google Patents

분기 예측 장치 Download PDF

Info

Publication number
KR100251992B1
KR100251992B1 KR1019970020472A KR19970020472A KR100251992B1 KR 100251992 B1 KR100251992 B1 KR 100251992B1 KR 1019970020472 A KR1019970020472 A KR 1019970020472A KR 19970020472 A KR19970020472 A KR 19970020472A KR 100251992 B1 KR100251992 B1 KR 100251992B1
Authority
KR
South Korea
Prior art keywords
branch
stage
bit
shifter
address
Prior art date
Application number
KR1019970020472A
Other languages
English (en)
Other versions
KR19980084634A (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 김영환
Priority to KR1019970020472A priority Critical patent/KR100251992B1/ko
Publication of KR19980084634A publication Critical patent/KR19980084634A/ko
Application granted granted Critical
Publication of KR100251992B1 publication Critical patent/KR100251992B1/ko

Links

Images

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 or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3889Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
    • 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/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야
마이크로프로세서.
2. 발명이 해결하고자 하는 기술적 과제
듀얼 파이프라인 구조와 분기 내용이 저장되어 분기 예측의 근거로 이용되는 BTB를 갖는 마이크로프로세서에서, 분기 예측에 따라 프로그램을 수행할 때에 분기 예측과 분기 검증을 수행하기 위한 분기 예측 장치를 제공하고자 함.
3. 발명의 해결 방법의 요지
분기 검증을 위해서 스테이지별로 분기 정보를 저장하여 파이프라인 진행과 함께 억세스한 내용을 계속 유지할 수 있는 분기 쉬프터를 포함하는 분기 예측 장치를 제공하고자 함.
4. 발명의 중요한 용도
분기 예측 장치를 가진 모든 마이크로프로세서 칩 설계에 이용됨.

Description

분기 예측 장치
본 발명은 마이크로프로세서 내 분기 예측 구조(Branch Prediction Scheme)에서의 효과적인 분기 검증을 포함한 분기 예측 장치에 관한 것으로서 분기 예측 구조를 갖는 모든 마이크로프로세서에서 적용될 수 있다.
프로그램 수행 중 분기 명령이 나올 경우 저장되어져 있는 이전까지의 프로그램 수행 기록에 따라서 분기 다음에 수행될 명령어를 예측하여 미리 가져와서 수행하는 분기 예측 동작에서 예측되어진 분기 명령의 검증을 수행하는데 종래에는 듀얼 파이프 구조에서 X 파이프는 EX 스테이지에서, Y 파이프는 WB 스테이지에서 각기 따로 검증을 진행하였기 때문에 분기 예측 회로가 복잡해지고,복잡한 제어회로가 소요되는 문제점이 있다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 듀얼 파이프라인 구조와 분기 내용이 저장되어 분기 예측의 근거로 이용되는 BTB를 갖는 마이크로프로세서에서, 분기 예측에 따라 프로그램을 수행할 때에 상기 분기의 검증을 위한 분기 예측 장치를 제공하는데 그 목적이 있다.
도1은 본 발명의 파이프라인된 분기 예측 구조 블록도,
도2는 본 발명의 분기 쉬프터 구조,
도3은 본 발명 분기 쉬프터의 스테이지와 분기 명령어와의 관계.
상기 목적을 달성하기 위한 본 발명은 제1 파이프 및 제2 파이프의 듀얼 파이프라인 구조로 수행할 명령어를 미리 캐쉬에서 가져오는 제1스테이지, 페치한 명령어의 길이를 계산하는 제2스테이지,명령어를 디코딩하는 제3스테이지, 데이터 캐쉬에서 가져올 데이터의 주소를 계산하는 제4스테이지, 명령어를 수행하는 제5스테이지, 수행한 결과를 메모리나 레지스터에 쓰는 제6스테이지들을 갖는 듀얼 파이프라인 구조와 분기 내용이 저장되어 분기 예측의 근거로 이용되는 브렌치타겟버퍼(BTB)를 갖는 마이크로프로세서에서, 분기 예측에 따라 프로그램을 수행할 때에 상기 분기의 검증을 위하여, 상기 파이프라인의 진행에 대응하여 상기 스테이지별 분기 예측 정보를 저장, 쉬프트 시키기 위한 다수의 쉬프터 수단을 포함하며, 상기 분기 검증을 두 개의 파이프 모두 제6스테이지에서 처리하도록 이루어진 분기 예측 장치를 포함하는 것을 특징으로 한다.
이하, 첨부된 도면을 참조하여 본 발명을 상세히 살펴본다.
프로그램 수행 중 분기 명령이 나올 경우 이 분기를 수행한 후에야 다음에 수행될 명령을 알 수 있어 그 동안 명령어의 가져오기가 중단되는 데 분기 예측(Branch Prediction)은 이러한 성능 저하를 막기 위해 명령어를 가지고 올 때에 이전까지의 프로그램 수행 기록에 따라 분기 명령 다음에 수행될 명령어를 예측하여 미리 가져와서 수행하는 동작을 말한다. 분기단(Branch Unit)을 두어 이 역할을 수행하는데 이 분기단은 BTB(Branch Target Buffer)가 구비되며,프리페치(Prefetch),명령어 페치와 밀접하게 연관되어 동작한다.
이때, 분기 예측에 따라 프로그램을 수행할 때에는 분기 명령 다음에 수행될 명령어를 예측하여 미리 가져와서 수행하는 동작이 맞았는지 틀렸는지를 확인해야 하는데, 이 과정을 분기 검증이라 한다. 본 발명은 이러한 분기 예측과 분기 검증을 수행하기 위한 장치를 제공하는 것으로 도1은 본 발명에 따른 실시예로 파이프라인된 분기 예측 구조의 블록도를 보여준다. 도1은 프리페치 스테이지에서 분기 명령을 가져오고,IA 스테이지에서 X 파이프의 주소와 타겟 명령어의 주소, BTB 조회 내용 등을 저장하는 제1 분기 쉬프터(10), 제1 분기 쉬프터의 내용이 한 사이클동안 지연되어 그대로 저장되는 제2 분기 쉬프터(20), 제2 분기 쉬프터의 내용과 함께 ID 스테이지에서 나온 분기 정보가 저장되는 제3 분기 쉬프터(30), 제3 분기 쉬프터의 내용과 함께 AG 스테이지에서 나온 분기 정보가 저장되는 제4 분기 쉬프터(40), 제4 분기 쉬프터의 내용과 함께 EX 스테이지에서 나온 분기 정보가 저장되는 제5 분기 쉬프터(50), 제5 분기 쉬프터 내용 중 분기 검증에 필요한 일부와 WB 스테이지에서 나온 분기 정보가 저장되는 제6 분기 쉬프터(60)로 구성되며, 상기 제6 분기 쉬프터의 내용으로 BTB 변경을 하고(70) 분기 예측을 잘못한 경우 보정 주소로 다시 프리페치를 하도록(80) 구성되어진다.
이 분기 검증을 X,Y 파이프에 관계없이 WB 스테이지에서 수행하는데, 분기 검증은 첫째,BTB 히트/미스 여부, 둘째,분기 명령 여부 확인, 셋째,분기 타겟이 맞는가 확인, 넷째,분기 예측 여부(Taken/not-taken) 확인 등의 내용을 검증한다. 먼저,BTB 히트/미스 여부는 분기 검증의 가장 기본으로 이 분기가 예상되어 졌는가를 확인하는 것이다. 히트가 났다는 것은 이 분기 명령 이전에 분기 명령으로 취해져 수행된 적이 있다는 것이다. 두 번째 검증 내용인 분기 명령 여부 확인은 IA 스테이지에서 분기 예측을 위해 BTB를 억세스하여 BTB 히트가 났다면 그 다음 X 파이프 혹은 Y 파이프에 오는 명령어에는 분기 명령이 있어야 한다. BTB 히트임에도 다음에 분기 명령이 오지 않으면 해당 BTB 내용을 무효화시켜야 한다. BTB 미스의 경우는 기본으로 분기를 하지 않는 걸로 가정하여 프로그램을 수행하고 분기 검증 시 분기가 취해 졌을 경우에만 BTB 엔트리를 할당하게 된다. 세 번째 검증 내용은 BTB 히트 시 BTB에 저장되어 있는 타겟 주소 값으로 내부의 프로그램 카운터를 바꾸어 놓고 프리페치를 다시 하게 되고, 분기 명령의 AG 스테이지에서 실제 타겟 주소를 구하여 예측되었던 타겟 주소와 비교해 분기 타겟이 맞았는 지를 확인하는 것이다. 비교한 타겟 주소가 서로 다를 경우에는 BTB의 타겟 주소 필드의 내용을 수정하여야 한다. 마지막 네 번째 검증 내용인 분기 예측 여부(Taken/not-taken) 확인은 예측된 분기 예측 여부와 실제를 비교하여 그 결과에 따라 프로그램을 다시 수행할 것인지를 결정하는 것이다.
분기 검증을 WB 스테이지에서 할 때 같은 사이클에 분기 다음 명령이 EX 스테이지에서 수행된다. 만약 검증 결과 진행의 보정이 필요하다고 판단되면 이 실행은 수행되어서는 안되는 것이 된다. 특히 이 명령이 메모리 라이트(memory write)같은 명령이면 복구할 수 없으므로 빨리 수행하여 그 다음의 실행을 즉시 중지시킬 수 있어야 한다.
사실 분기가 X 파이프에서 수행될 때는 EX 스테이지에서 예측의 히트/미스 여부를 알 수 있지만 설계의 일관성과 간단한 회로 구성을 위해 WB 스테이지에서 같이 검증을 한다.
이를 위해서 초기에 BTB에서 억세스한 내용을 검증 시점인 WB 스테이지까지 계속 유지해 검증하는 데 사용한다. 이것은 파이프라인의 진행과 함께 분기 예측 내용을 쉬프트시켜 그 내용을 저장하는 분기 쉬프터의 내용을 참조하여 이루어진다. 분기 쉬프터의 내용을 참조하여 프리페치 로직에서 캐쉬를 억세스하여 분기 타겟 명령어를 가져오고 또 IA 스테이지에서 프리페치 큐(Prefetch Queue)로부터 명령어를 가져오게 된다. 또 예측을 잘못해서 보정 명령어를 프리페치하는 경우도 이 분기 쉬프터의 내용을 참조하게 된다.
도2는 본 발명에 따른 분기 쉬프터의 구조로서, 스테이지별로 분기 정보를 저장하여 파이프라인 진행과 함께 억세스한 내용을 계속 유지할 수 있게 구성된다. 최초의 분기 쉬프터 할당은 분기 전 사이클의 X 파이프에서 수행되는 명령어의 주소로 BTB를 조회하면서 이루어진다. 이때 BTB 히트가 되면, 분기 쉬프터에는 상위 26비트는 BTB 태그 비교에, 하위 6비트는 BTB 인덱스로 사용되는 32비트의 X 파이프 명령어의 주소 32비트(1)와 BTB 히트/미스를 표시하는 1비트(2),BTB 웨이 선택신호 2비트(3),히스토리 2비트(4), LRU(Least Recently Used) 3비트(5),타겟 주소 32비트(6)가 할당되어진다. 상기 내용들은 분기 쉬프터의 스테이지와 분기 명령어와의 관계를 나타낸 도3에서 보여지듯이 분기 명령의 전 사이클에서 유효하며 분기명령의 IA 스테이지 시작 때에 분기 쉬프터에 로딩된다.
상기 래치된 내용은 분기의 ID 스테이지까지 유지된다. 분기의 ID 스테이지에서 분기 명령어 여부(7)와 분기 명령일 경우에는 분기 조건(9)과 보정 주소(8)를 알 수 있다. 이것이 분기 명령의 AG 스테이지로 넘어갈 때 쉬프터의 세 번째 스테이지에 할당된다. 분기 명령어 여부를 표시 하는 2비트는 "0"의 값을 가질 때 분기가 일어나지 않는 것을 표시하고, "1"의 경우는 X 파이프의 조건부 분기를, "10"의 경우는 X 파이프의 분기를, "11"의 경우는 Y 파이프의 무조건 분기를 표시한다.
분기 명령의 AG 스테이지에서는 타겟 주소가 맞았는지를 미리 확인 할 수 있다. 이 타겟 주소 확인 여부 비트 (10), 이것은 분기 명령의 EX 스테이지로 넘어갈 때 쉬프터의 네 번째 스테이지에 할당된다.
분기 명령의 EX 스테이지에서는 이전 명령에서 결정된 분기 조건 비트(9)를 가지고 조건을 체크하여 분기 예측이 맞았는지를 알 수 있다. 분기의 예측 여부(11)를 분기 쉬프터의 다섯 번째 스테이지에 기록한다.
X 파이프에 분기 명령이 왔을 경우에 분기 검증은 전 스테이지의 분기 예측 여부 비트(11)를 보면 분기 명령의 WB 스테이지 시작과 함께 즉시 파이프라인의 비움이나 보정(Flush & Recover) 및 BTB 변경 여부를 알 수 있다. 또한 파이프라인의 비움이 필요할 때는 MMU(Memory Management Unit)에 즉시 메모리 라이트 사이클 중지 신호를 보낸다. Y 파이프에 조건부 분기 명령이 올 경우에는 EX 스테이지에서 예측이 맞았는지 여부를 알 수 없고, WB 스테이지 초기에 분기 수행을 해보아야 알 수 있다. 따라서 일단 EX 스테이지의 분기 예측 여부 비트는 영향을 주지 않는다. 이때 X 파이프의 분기에서처럼 분기 조건 비트(9)를 가지고 분기 검증을 하게 되면 시간이 늦으므로 특별한 하드웨어를 두어 미리 분기 쉬프터에 써 놓았던 분기 조건(9)으로 빠르게 분기 예측 여부를 알아낸다. Y 파이프에 올 수 있는 분기 명령은 16가지 조건부 점프뿐이므로 빠르게 구할 수 있다. WB 스테이지에서 X 파이프 분기의 경우는 분기 쉬프터의 다섯 번째 스테이지의 내용으로, Y 파이프 조건부 분기의 경우는 특별한 하드웨어를 가지고, 파이프라인 비움과 보정을 위한 프리페치,BTB 엔트리 변경 여부를 결정한다. 이러한 동작이 필요할 때는 분기의 WB 스테이지 다음 사이클에서 수행되므로 위의 동작신호와 함께 이에 필요한 정보들이 계속 유지되어야 한다. 이를 위해서 분기 쉬프터가 분기의 WB 스테이지 이후에 한 번 더 쉬프트될 수 있는 구조가 편리하다. BTB 변경 표시 1비트(13), F & R(Flush and Recover)비트(14),BTB 무효 표시 1비트(12)를 분기 쉬프터의 여섯 번째 스테이지에 할당한다. 여기서 F & R 비트는 파이프라인을 비우고,처리과정을 보정 하는가를 표시하는 비트이다. 참고로 도2에서 나타나는 숫자는 각 영역의 비트 크기를 나타내는 것이다.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.
상기와 같이 이루어지는 본 발명은 분기 검증을 위해 초기에 BTB에서 억세스한 내용을 검증 시점인 WB 스테이지까지 계속 유지하기 위해 쉬프트 레지스터를 스테이지 별로 따로 두어 파이프라인 진행과 함께 분기 내용을 저장, 쉬프트시켜 WB 스테이지에서 분기 검증을 효율적으로 진행할 수 있고, X 파이프와 Y 파이프를 같이 WB 스테이지에서 검증하는 분기 예측 장치로서 일관성 있는 설계가 가능해지고, 제어회로가 간단해져 종래 방식에 비해 더 나은 성능 향상을 가져오는 효과가 있다.

Claims (12)

  1. 제1 파이프 및 제2 파이프의 듀얼 파이프라인 구조로 수행할 명령어를 미리 캐쉬에서 가져오는 제1스테이지, 페치한 명령어의 길이를 계산하는 제2스테이지,명령어를 디코딩하는 제3스테이지, 데이터 캐쉬에서 가져올 데이터의 주소를 계산하는 제4스테이지, 명령어를 수행하는 제5스테이지, 수행한 결과를 메모리나 레지스터에 쓰는 제6스테이지들을 갖는 듀얼 파이프라인 구조와 분기 내용이 저장되어 분기 예측의 근거로 이용되는 브렌치타겟버퍼(BTB)를 갖는 마이크로프로세서에 있어서, 분기 예측에 따라 프로그램을 수행할 때에 분기 예측과 분기 검증을 수행하기 위하여 상기 파이프라인의 진행에 대응하여 상기 스테이지별 분기 예측 정보를 저장, 쉬프트 시키기 위한 다수의 쉬프터 수단을 포함하여 이루어진 분기 예측 장치.
  2. 제 1 항에 있어서,
    상기 분기 쉬프터의 1번째 스테이지에서 분기 전 사이클의 제1 파이프에서 수행되는 명령어의 주소로 브렌치타겟버퍼를 조회해 브렌치타겟버퍼 히트가 되면, 상위 26비트는 브렌치타겟버퍼 태그 비교에, 하위 6비트는 브렌치타겟버퍼 인덱스로 사용되는 32비트의 제1 파이프 명령어의 주소 32비트와 브렌치타겟버퍼 히트/미스를 표시하는 1비트,브렌치타겟버퍼 웨이 선택신호 2비트, 히스토리 2비트, 최근최소사용(LRU) 3비트, 타겟 주소 32비트를 저장하는 분기 쉬프터를 포함하는 것을 특징으로 하는 분기 예측 장치.
  3. 제 2 항에 있어서,
    상기 저장되는 비트들을 분기 명령의 제2스테이지 시작 때에 저장하는 분기 쉬프터를 포함하는 것을 특징으로 하는 분기 예측 장치.
  4. 제 1 항 또는 제 2 항에 있어서,
    상기 분기 쉬프터의 2번째 스테이지에서 상기 1번째 스테이지의 내용을 그대로 한 스테이지 쉬프트하여 저장하는 분기 쉬프터를 포함하는 것을 특징으로 하는 분기 예측 장치.
  5. 제 2 항에 있어서,
    상기 분기 쉬프터의 3번째 스테이지에서 상기 2번째 스테이지에서 쉬프트되어진 제1 파이프 명령어 주소 비트, 브렌치타겟버퍼 히트/미스 비트,브렌치타겟버퍼 웨이 선택신호 비트, 히스토리 비트,최근최소사용 비트,타겟 주소 비트와 3번째 스테이지에서 분기 명령어 여부 비트, 분기 명령일 경우에는 분기 조건 비트와 보정 주소 비트를 더 저장하는 분기 쉬프터를 포함하는 것을 특징으로 하는 분기 예측 장치.
  6. 제 5 항에 있어서,
    상기 저장되는 비트들을 분기 명령의 제4스테이지 시작 때에 저장하는 분기 쉬프터를 포함하는 것을 특징으로 하는 분기 예측 장치.
  7. 제 5 항에 있어서,
    상기 분기 쉬프터의 4번째 스테이지에서 상기 3번째 스테이지에서 쉬프트되어진 제1 파이프 명령어 주소 비트, 브렌치타겟버퍼 히트/미스 비트, 브렌치타겟버퍼 웨이 선택신호 비트, 히스토리 비트,최근최소사용 비트,타겟 주소 비트, 분기 명령어 여부 비트, 분기 조건 비트와 보정 주소 비트와 상기 4번째 스테이지에서 타겟 주소가 맞았는지를 나타내는 타겟 주소 확인 여부 비트를 더 저장하는 분기 쉬프터를 포함하는 것을 특징으로 하는 분기 예측 장치.
  8. 제 7 항에 있어서,
    상기 저장되는 비트들을 분기 명령의 제6스테이지 시작 때에 저장하는 분기 쉬프터를 포함하는 것을 특징으로 하는 분기 예측 장치.
  9. 제 7 항에 있어서,
    상기 분기 쉬프터의 5번째 스테이지에서 상기 4번째 스테이지에서 쉬프트되어진 제1 파이프 명령어 주소 비트, 브렌치타겟버퍼 히트/미스 비트,브렌치타겟버퍼 웨이 선택신호 비트, 히스토리 비트,최근최소사용 비트,타겟 주소 비트, 분기 명령어 여부 비트, 분기 조건 비트와 보정 주소 비트, 타겟 주소 확인 여부 비트와 5번째 스테이지에서 분기 명령의 이전 명령에서 결정된 상기 분기 조건 비트를 가지고 조건을 체크하여 분기 예측이 맞았는지를 나타내는 분기 예측 여부 비트를 더 저장하는 분기 쉬프터를 포함하는 것을 특징으로 하는 분기 예측 장치.
  10. 제 9 항에 있어서,
    상기 저장되는 비트들을 분기 명령의 제6스테이지 시작 때에 저장하는 분기 쉬프터를 포함하는 것을 특징으로 하는 분기 예측 장치.
  11. 제 9 항에 있어서,
    제6스테이지에서 제1 파이프 분기의 경우는 분기 쉬프터의 상기 다섯 번째 스테이지의 내용으로, 제2 파이프 조건부 분기의 경우는 특별한 하드웨어를 가지고, 파이프라인 비움과 보정을 위한 프리페치,브렌치타겟버퍼 엔트리 변경 여부를 결정하는 동작이 분기의 제6스테이지 다음 사이클에서 수행되므로 필요한 정보들이 계속 유지되기 위하여 분기의 제6스테이지 이후에 한 번 더 쉬프트되어 분기 쉬프터의 여섯 번째 스테이지를 구성함을 특징으로 하는 분기 예측 장치.
  12. 제 11 항에 있어서,
    상기 분기 쉬프터의 6번째 스테이지에서 상기 5번째 스테이지에서 쉬프트되어진 제1 파이프 명령어 주소 비트, 브렌치타겟버퍼 히트/미스 비트,브렌치타겟버퍼 웨이 선택신호 비트,히스토리 비트,최근최소사용 비트, 타겟 주소 비트, 보정 주소 비트와 6번째 스테이지에서 브렌치타겟버퍼 변경 표시 비트, 비움이냐 보정이냐를 나타내는 비트,브렌치타겟버퍼 무효 표시 비트를 더 저장하는 분기 쉬프터를 포함하는 것을 특징으로 하는 분기 예측 장치.
KR1019970020472A 1997-05-23 1997-05-23 분기 예측 장치 KR100251992B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019970020472A KR100251992B1 (ko) 1997-05-23 1997-05-23 분기 예측 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970020472A KR100251992B1 (ko) 1997-05-23 1997-05-23 분기 예측 장치

Publications (2)

Publication Number Publication Date
KR19980084634A KR19980084634A (ko) 1998-12-05
KR100251992B1 true KR100251992B1 (ko) 2000-04-15

Family

ID=19506977

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970020472A KR100251992B1 (ko) 1997-05-23 1997-05-23 분기 예측 장치

Country Status (1)

Country Link
KR (1) KR100251992B1 (ko)

Also Published As

Publication number Publication date
KR19980084634A (ko) 1998-12-05

Similar Documents

Publication Publication Date Title
US5640526A (en) Superscaler instruction pipeline having boundary indentification logic for variable length instructions
JP3542020B2 (ja) 複数予測分岐命令にわたる命令フェッチの位置合わせ命令キャッシュ処理を実行するプロセッサ装置およびプロセッサ制御方法
US6339822B1 (en) Using padded instructions in a block-oriented cache
JP3494736B2 (ja) 分岐先バッファを用いた分岐予測システム
KR100333470B1 (ko) 세트 예측을 사용하여 세트 연상 캐시에서 대기 시간을감소시키기 위한 방법 및 장치
US5918245A (en) Microprocessor having a cache memory system using multi-level cache set prediction
US6185675B1 (en) Basic block oriented trace cache utilizing a basic block sequence buffer to indicate program order of cached basic blocks
US7203824B2 (en) Apparatus and method for handling BTAC branches that wrap across instruction cache lines
US5790823A (en) Operand prefetch table
US7234045B2 (en) Apparatus and method for handling BTAC branches that wrap across instruction cache lines
US10067875B2 (en) Processor with instruction cache that performs zero clock retires
EP2024820B1 (en) Sliding-window, block-based branch target address cache
US6647490B2 (en) Training line predictor for branch targets
WO2007019001A1 (en) Call return stack way prediction repair
US7844807B2 (en) Branch target address cache storing direct predictions
CA2659310C (en) Methods and apparatus for reducing lookups in a branch target address cache
JP3486690B2 (ja) パイプライン方式プロセッサ
US5794027A (en) Method and apparatus for managing the execution of instructons with proximate successive branches in a cache-based data processing system
US20030204705A1 (en) Prediction of branch instructions in a data processing apparatus
US20040168043A1 (en) Line predictor which caches alignment information
US10922082B2 (en) Branch predictor
US5819080A (en) Microprocessor using an instruction field to specify condition flags for use with branch instructions and a computer system employing the microprocessor
EP4127917B1 (en) Fetch stage handling of indirect jumps in a processor pipeline
KR100251992B1 (ko) 분기 예측 장치
US6636959B1 (en) Predictor miss decoder updating line predictor storing instruction fetch address and alignment information upon instruction decode termination condition

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20041230

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee