Cтраница 1
Тракт данных может управляться задатчиком последовательности, который вызывает микрокоманды из управляющей памяти. Каждая микрокоманда содержит биты, управляющие трактом данных в течение одного цикла. Эти биты определяют, какие операнды нужно выбирать, какую операцию нужно выполнять и что нужно делать с результатами. Некоторые микрокоманды изменяют этот базовый адрес с помощью операции ИЛИ. [1]
Тракт данных - это часть центрального процессора, состоящая из АЛ У ( арифметико-логического устройства) и его входов и выходов. Тракт данных нашей микроархитектуры показан на рис. 4.1. Хотя этот тракт данных и был оптимизирован для интерпретации программ IJVM, он схож с трактами данных большинства компьютеров. [2]
Часть тракта данных ЦП содержит схемы, необходимые для выполнения основных операций, требующихся при выполнении макрокоманд. Структура модуля тракта данных зависит от архитектуры конкретной машины. [3]
После разбиения тракта данных на три части максимальная задержка прохождения сигнала уменьшается, и в результате тактовая частота может повыситься. Предположим, что если разбить цикл тракта данных на три примерно равных интервала, тактовая частота увеличится втрое. На самом деле это не так, поскольку мы добавили в тракт данных еще два регистра, но в качестве первого приближения это допустимо. [4]
![]() |
Схема устройства компьютера с одним центральным процессором и двумя устройствами ввода-вывода. [5] |
Внутреннее устройство тракта данных типичного фон-неймановского процессора показано на рис. 2.2. Тракт данных состоит из регистров ( обычно от 1 до 32), АЛУ ( арифметико-логического устройства) и нескольких соединяющих шин. Содержимое регистров поступает во входные регистры АЛУ, которые на рис. 2.2 обозначены буквами А и В. В них находятся входные данные АЛУ, пока АЛУ производит вычисления. Тракт данных - важная составная часть всех компьютеров, и мы обсудим его очень подробно. [6]
Для управления трактом данных, изображенным на рис. 4.1, нам нужно 29 сигналов. [7]
Рассмотрим машину с трактом данных, который изображен на рис. 2.2. Предположим, что загрузка регистров АЛУ занимает 5 не, работа АЛУ - 10 не, а помещение результата обратно в регистр - 5 не. Какое максимальное число миллионов команд в секунду способна выполнять эта машина при отсутствии конвейера. [8]
Предполагается, что используется 32-разрядный тракт данных. В построениях, приведенных на рис. 4.4, принято допущение, что кэш заблокирован, а опережающая выборка первой команды осуществляется по адресу нечетного слова. Обращение к памяти происходит с нулевым количеством состояний ожидания. [9]
![]() |
Компьютер с шестью уровнями. Способ поддержки каждого уровня указан под ним. В скобках указывается название поддерживающей программы. [10] |
На некоторых машинах работа тракта данных контролируется особой программой, которая называется микропрограммой. На других машинах тракт данных контролируется аппаратными средствами. [11]
![]() |
Формат микрокоманды для Mic-1. [12] |
Теперь мы можем управлять трактом данных с помощью 9 4 8 2 124 сигналов, следовательно, нам требуется 24 бита. Однако эти 24 бита управляют трактом данных только в течение одного цикла. Задача управления - определить, что нужно делать в следующем цикле. Чтобы включить это в разработку контроллера, мы создадим формат для описания операций, которые нужно выполнить, используя 24 бита управления и два дополнительных поля: поле NEXT ADDRESS ( следующий адрес) и поле JAM. Содержание каждого из этих полей мы обсудим позже. На рис. 4.4 изображен один из возможных форматов. [13]
Отметим, что в тракте данных происходят обычные операции даже во время выполнения микрокоманд, которые содержат goto. [14]
Основным компонентом любого компьютера является тракт данных. Он содержит несколько регистров, две или три шины, один или несколько функциональных блоков, например АЛУ, и схему сдвига. Основной цикл состоит из вызова нескольких операндов из регистров и их передачи по шинам к АЛУ и другому функциональному блоку. После выполнения операции результаты сохраняются опять в регистрах. [15]