A Combined BTB Architecture for effective branch prediction

효율적인 분기 예측을 위한 공유 구조의 BTB

  • 이용환 (금오공과대학교 전자공학부)
  • Published : 2005.11.01

Abstract

Branch instructions which make the sequential instruction flow changed cause pipeline stalls in microprocessor. The pipeline hazard due to branch instructions are the most serious problem that degrades the performance of microprocessors. Branch target buffer predicts whether a branch will be taken or not and supplies the address of the next instruction on the basis of that prediction. If the hanch target buffer predicts correctly, the instruction flow will not be stalled. This leads to the better performance of microprocessor. In this paper, the architecture of a ta8 memory that branch target buffer and TLB can share is presented. Because the two tag memories used for branch target buffer and TLB each is replaced by single combined tag memory, we can expect the smaller chip size and the faster prediction. This shared tag architecture is more advantageous for the microprocessors that uses more bits of address and exploits much more instruction level parallelism.

프로그램의 순차적인 실행 순서를 바꾸는 명령어를 분기 명령어라 하며, 분기는 마이크로프로세서의 파이프라인 정지를 일으켜 성능을 저하시키는 가장 큰 원인이 된다. 이에 따라 분기를 정확히 예측하여 다음 실행될 명령어를 제공한다면 마이크로프로세서의 자연스런 명령어의 실행 흐름은 끊어지지 않게 되고 이로써 논은 성능의 향상을 기대할 수 있게 된다. 분기 예측을 위해서는 분기 타겟 버퍼가 필수적이며, 분기 타겟 버퍼는 분기 예측 결과에 따라 다음에 실행할 명령어의 주소를 제공한다. 본 논문에서는 가상주소를 실제주소로 바꾸어 주는 TLB와 분기 타겟 버퍼가 각각 가지고 있는 태그 메모리를 함께 사용하는 구조를 제안한다. 이러한 공유 태그 구조의 이점은 2재의 태그 메모리를 하나로 공유함으로써 칩 면적의 감소를 꾀하고 더불어 분기 예측 속도를 향상시킬 수 있다는 점이다. 또한, 본 논문에서 제안된 구조는 주소로 사용되는 비트 수가 커지거나 여러 개의 명령어를 동시에 실행할 수 있는 구조에서 그 이점이 더욱 커지기 때문에 향후 개발되는 마이크로프로세서에서 유용하게 사용될 수 있을 것으로 기대된다.

Keywords

References

  1. K. Thangarajan, and W. Mahmoud, 'Survey of Branch Prediction Schemes for Pipelined Processors', IEEE Computer, Vol. 17, No. 3, 2002
  2. Steve Furber, ARM system-on-chip Architecture Second Edition, Addison- Wesley
  3. Intel, Intel XScale Microacrchitecture, 2001
  4. C. Lee, I. Chen, and T. Mudge, 'The bi-mode branch predictor', Proceedings of MICRO-30, Dec 1997
  5. J. Lee, and A. Smith, 'Branch Prediction Strategies and Branch Target Buffer Design', IEEE Computer, Vol. 6, No. 2, 1984
  6. Calder, Brad, Dirk and Emer, 'A System Level Perspective on Branch Prediction Architecture Performance', Proceedings of the 28 Intl. Symposium on Microarchitecture, pp. 199-206, 1995