ВУЗ:
Составители:
Рубрика:
Микропроцессорные системы и программное обеспечение в средствах связи
269
Также различают статическое и динамическое предсказание ветв-
ления в программе. При статическом предсказании направление
перехода задаётся разработчиком МПр, например все условные пере-
ходы «вперед» будут выполняться, а переходы «назад» – не будут. При
динамическом предсказании направление ветвления обусловлено
результатами предшествующего выполнения команд и может меняться
в процессе исполнения программы. Динамическое предсказание
более
точно и эффективно, хотя и достаточно сложно для реализации.
В динамике управление переходами осуществляется следующими
способами:
1. Самый простой способ состоит в том, чтобы остановить прием
команд на вход конвейера до тех пор, пока команда перехода не дос-
тигнет ступени исполнения и не будет вычислено реальное направле-
ние перехода. Этот
метод, упрощая управление, тем не менее приво-
дит к простою конвейера.
2. Наиболее сложный, второй способ, заключается в том, чтобы
при появлении команды перехода выбирать и условно выполнять обе
ветви возможных переходов. Условное выполнение обозначает, что до
момента определения адреса перехода запрещается запись результа-
тов вычислений в регистры или в кэш/
ОЗУ.
3. Третьим способом динамической обработки ветвлений являет-
ся предсказание. Самым простым способом предсказания является
выбор для выполнения той ветви, которая следует непосредственно за
командой перехода (короткий переход). Но в 50% случаев этот выбор
будет ошибочным.
Наиболее достоверные предсказания выдаются на основе исто-
рии процесса вычислений. Поэтому на рис. 5.7 присутствует устройство
прогнозирования
ветвлений. Оно содержит таблицу достаточно боль-
шого размера, например, на 256 строк. В каждой строке таблицы запи-
саны для выполнения части программы:
Микропроцессорные системы и программное обеспечение в средствах связи Также различают статическое и динамическое предсказание ветв- ления в программе. При статическом предсказании направление перехода задаётся разработчиком МПр, например все условные пере- ходы «вперед» будут выполняться, а переходы «назад» – не будут. При динамическом предсказании направление ветвления обусловлено результатами предшествующего выполнения команд и может меняться в процессе исполнения программы. Динамическое предсказание более точно и эффективно, хотя и достаточно сложно для реализации. В динамике управление переходами осуществляется следующими способами: 1. Самый простой способ состоит в том, чтобы остановить прием команд на вход конвейера до тех пор, пока команда перехода не дос- тигнет ступени исполнения и не будет вычислено реальное направле- ние перехода. Этот метод, упрощая управление, тем не менее приво- дит к простою конвейера. 2. Наиболее сложный, второй способ, заключается в том, чтобы при появлении команды перехода выбирать и условно выполнять обе ветви возможных переходов. Условное выполнение обозначает, что до момента определения адреса перехода запрещается запись результа- тов вычислений в регистры или в кэш/ОЗУ. 3. Третьим способом динамической обработки ветвлений являет- ся предсказание. Самым простым способом предсказания является выбор для выполнения той ветви, которая следует непосредственно за командой перехода (короткий переход). Но в 50% случаев этот выбор будет ошибочным. Наиболее достоверные предсказания выдаются на основе исто- рии процесса вычислений. Поэтому на рис. 5.7 присутствует устройство прогнозирования ветвлений. Оно содержит таблицу достаточно боль- шого размера, например, на 256 строк. В каждой строке таблицы запи- саны для выполнения части программы: 269
Страницы
- « первая
- ‹ предыдущая
- …
- 267
- 268
- 269
- 270
- 271
- …
- следующая ›
- последняя »