초기 리턴 예측을 갖는 분기 타겟 버퍼

프로세서[100]는 복수의 엔트리들[111]을 갖는 분기 타겟 버퍼(BTB)[110]를 포함하며, 이에 의해 각 엔트리는 분기 인스트럭션으로 예측되는 연관 인스트럭션 포인터[101] 값에 대응한다. 각 BTB 엔트리는 분기 인스트럭션에 대한 예측 분기 타겟 어드레스를 저장하고, 예측 분기 타겟 어드레스와 연관된 인스트럭션 블록의 다음 분기가 리턴 인스트럭션으로 예측되는지 여부를 나타내는 정보를 더 저장한다. 다음 분기가 리턴 인스트럭션일 것으로 예측된다는 것을 나타내는 BTB에 응답하여, 프로세서는 예측 리턴 인스트럭션에 대한 리턴...

Full description

Saved in:
Bibliographic Details
Main Authors EVERS MARIUS, ANNAMALAI ARUNACHALAM, THYAGARAJAN APARNA
Format Patent
LanguageKorean
Published 09.03.2021
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:프로세서[100]는 복수의 엔트리들[111]을 갖는 분기 타겟 버퍼(BTB)[110]를 포함하며, 이에 의해 각 엔트리는 분기 인스트럭션으로 예측되는 연관 인스트럭션 포인터[101] 값에 대응한다. 각 BTB 엔트리는 분기 인스트럭션에 대한 예측 분기 타겟 어드레스를 저장하고, 예측 분기 타겟 어드레스와 연관된 인스트럭션 블록의 다음 분기가 리턴 인스트럭션으로 예측되는지 여부를 나타내는 정보를 더 저장한다. 다음 분기가 리턴 인스트럭션일 것으로 예측된다는 것을 나타내는 BTB에 응답하여, 프로세서는 예측 리턴 인스트럭션에 대한 리턴 어드레스를 저장하는 리턴 스택[115]에 대한 액세스를 시작한다. BTB에 저장된 리턴 예측에 응답하여 리턴 스택에 대한 액세스를 시작함으로써, 프로세서는 리턴 어드레스 식별 시 지연을 줄여 처리 효율성을 향상시킨다. A processor includes a branch target buffer (BTB) having a plurality of entries whereby each entry corresponds to an associated instruction pointer value that is predicted to be a branch instruction. Each BTB entry stores a predicted branch target address for the branch instruction, and further stores information indicating whether the next branch in the block of instructions associated with the predicted branch target address is predicted to be a return instruction. In response to the BTB indicating that the next branch is predicted to be a return instruction, the processor initiates an access to a return stack that stores the return address for the predicted return instruction. By initiating access to the return stack responsive to the return prediction stored at the BTB, the processor reduces the delay in identifying the return address, thereby improving processing efficiency.
Bibliography:Application Number: KR20217004753