Журналов:     Статей:        

Вопросы радиоэлектроники. 2018; : 49-55

РЕАЛИЗАЦИЯ СХЕМ ПРЕДСКАЗАНИЯ ПРОГРАММНЫХ ПЕРЕХОДОВ ДЛЯ МИКРОПРОЦЕССОРА С АРХИТЕКТУРОЙ RISC-V

Абрамов Е. М.

https://doi.org/10.21778/2218-5453-2018-8-49-55

Аннотация

Одним из факторов, ограничивающих производительность вычислительного конвейера процессора, является конвейеризация команд программного управления. В данной статье рассматриваются проблемы повышения эффективности конвейера при выполнении программных переходов на примере микроархитектуры, реализующей набор команд открытой архитектуры RISC-V. Описываются различные методы борьбы с конфликтами по управлению. Представлены реализации различных схем статического и динамического предсказания программных переходов, а также схемы вычисления адреса перехода. Для динамических схем оценивается зависимость точности предсказания от размера таблиц истории выполнения переходов. Дается сравнительный анализ реализованных схем на основе их влияния на производительность конвейера. Кроме того, приводятся результаты синтеза, позволяющие оценить аппаратные затраты на реализацию данных схем. Показано, что наличие в вычислительном конвейере блока динамического предсказания программных переходов позволяет повысить эффективность конвейерной обработки.
Список литературы

1. About the RISC–V Foundation. Available at: https://riscv.org/risc-v-foundation/ (accessed 27.03.2018)

2. The RISC–V Instruction Set Manual. Volume I: User-Level ISA. Document Version 2.2. Available at: https://content.riscv.org/wp-content/uploads/2017/05/riscv-spec-v2.2.pdf (accessed 28.03.2018)

3. Lee J. K. F., Smith A. J. Branch Prediction Strategies and Branch Target Buffer Design. Available at: https://dl.acm.org/citation.cfm?id=1318826 (accessed 29.03.2018)

4. Орлов С. А., Цилькер Б. Я. Организация ЭВМ и систем: учебник для вузов. 2-е изд. СПб.: Питер, 2011. 688 с.

5. Lee H. H. S. Advanced Computer Architecture. Lecture 5 Branch Prediction. Available at: http://gauss.ececs.uc.edu/Courses/c4029/extra/branch.prediction.pdf (accessed 29.03.2018)

6. Cheng C. C. The Schemes and Performances of Dynamic Branch predictors. Available at: http://bwrcs.eecs.berkeley.edu/Classes/CS252/Projects/Reports/terry_chen.pdf (accessed 28.03.2018)

Issues of radio electronics. 2018; : 49-55

IMPLEMENTATION OF THE BRANCH PREDICTION SCHEMES FOR THE MICROPROCESSOR OF RISC-V ARCHITECTURE

Abramov E. M.

https://doi.org/10.21778/2218-5453-2018-8-49-55

Abstract

One of the limiting factors for increasing the performance of CPU computation pipeline is the pipelining of control transfer instructions. This article provides a review of the problems of raising the instruction pipeline efficiency while executing the branch instructions, by the example of microarchitecture with the implementation of open RISC-V ISA. It gives a description of the various methods of resolving the control hazards. Implementations of the various static and dynamic branch prediction methods, as well as the scheme of calculating a jump address, has been provided. For the dynamic schemes this article gives an estimate of the dependency of prediction accuracy from the size of the branch history tables. Also, it contains the results of synthesis, which allow to estimate the hardware cost of the implementation of given schemes. It has been discovered that the presence of dynamic branch prediction module at the computation pipeline is helping to raise the efficiency of pipeline processing.
References

1. About the RISC–V Foundation. Available at: https://riscv.org/risc-v-foundation/ (accessed 27.03.2018)

2. The RISC–V Instruction Set Manual. Volume I: User-Level ISA. Document Version 2.2. Available at: https://content.riscv.org/wp-content/uploads/2017/05/riscv-spec-v2.2.pdf (accessed 28.03.2018)

3. Lee J. K. F., Smith A. J. Branch Prediction Strategies and Branch Target Buffer Design. Available at: https://dl.acm.org/citation.cfm?id=1318826 (accessed 29.03.2018)

4. Orlov S. A., Tsil'ker B. Ya. Organizatsiya EVM i sistem: uchebnik dlya vuzov. 2-e izd. SPb.: Piter, 2011. 688 s.

5. Lee H. H. S. Advanced Computer Architecture. Lecture 5 Branch Prediction. Available at: http://gauss.ececs.uc.edu/Courses/c4029/extra/branch.prediction.pdf (accessed 29.03.2018)

6. Cheng C. C. The Schemes and Performances of Dynamic Branch predictors. Available at: http://bwrcs.eecs.berkeley.edu/Classes/CS252/Projects/Reports/terry_chen.pdf (accessed 28.03.2018)