Особенности архитектуры универсальных микропроцессоров. Механов В.Б. - 89 стр.

UptoLike

Составители: 

89
ходятся несколько команд. Одновременно выполняются опера-
ции, связанные с предвыборкой команд, дешифрированием ко-
манд, выполнением микрокода, а также целочисленные опера-
ции, операции с плавающей точкой, сегментации, страничного
преобразования, управления кэш-памятью и шинного интерфей-
са. На рис. 4.2 показан эффект параллелизма для одной коман-
ды. Каждый элемент в этом конвейере реализует свою функцию
за один такт синхронизации. Внутренняя конвейеризация позво-
ляет загрузить данные из кэш-памяти одной командой и исполь-
зовать следующей командой уже в очередном такте синхрониза-
ции. Это объясняется наличием первой ступени дешифрирова-
ния, которая инициирует обращение к памяти до собственно
выполнения. Так как в большинстве компиляторов и приклад-
ных программ после команды загрузки находятся команды, опе-
рирующие загруженными данными, подобный прием оптимизи-
рует выполнение имеющихся программ.
Рис. 4.2. Конвейеризация команд
Однако в этом методе пришлось пойти на компромисс: по-
следовательность команд, которая изменяет содержимое регист-
ра, а затем использует этот регистр для обращения к памяти,
длится три такта вместо двух. Но этот компромисс оказывается
незначительным недостатком, так как большинство команд с
обращением к памяти используют «устойчивое» содержимое
ходятся несколько команд. Одновременно выполняются опера-
ции, связанные с предвыборкой команд, дешифрированием ко-
манд, выполнением микрокода, а также целочисленные опера-
ции, операции с плавающей точкой, сегментации, страничного
преобразования, управления кэш-памятью и шинного интерфей-
са. На рис. 4.2 показан эффект параллелизма для одной коман-
ды. Каждый элемент в этом конвейере реализует свою функцию
за один такт синхронизации. Внутренняя конвейеризация позво-
ляет загрузить данные из кэш-памяти одной командой и исполь-
зовать следующей командой уже в очередном такте синхрониза-
ции. Это объясняется наличием первой ступени дешифрирова-
ния, которая инициирует обращение к памяти до собственно
выполнения. Так как в большинстве компиляторов и приклад-
ных программ после команды загрузки находятся команды, опе-
рирующие загруженными данными, подобный прием оптимизи-
рует выполнение имеющихся программ.




                Рис. 4.2. Конвейеризация команд

     Однако в этом методе пришлось пойти на компромисс: по-
следовательность команд, которая изменяет содержимое регист-
ра, а затем использует этот регистр для обращения к памяти,
длится три такта вместо двух. Но этот компромисс оказывается
незначительным недостатком, так как большинство команд с
обращением к памяти используют «устойчивое» содержимое

                              89