Это всего лишь макет, поэтому, пожалуйста, имейте в виду, что я его уберу
получить инструкцию 1,
получить инструкции 2, получить данные1
извлекать инструктаж3, извлекать данные2, обрабатывать данные1
извлекать инструктаж4, извлекать данные3, обрабатывать данные2, хранить1 данные1
извлекать инструкт5, извлекать данные4, обрабатывать данные3, хранить2 данные1
извлекать инструктаж6, извлекать данные5, обрабатывать данные4, хранить3 данные1
извлекать инструкции7, извлекать данные6, обрабатывать данные5, хранить4 данные1
извлекать инструкции8, извлекать данные7, обрабатывать данные6, хранить5 данных1
в основном это основные компоненты процессора
Часть 1
ALU: блок арифметической логики (здесь пригодится дрейнинг)
AN ALU имеет 2 входных порта и выходной порт. Включаются 2 входных порта, и результат выводится. Чтобы узнать, какую инструкцию ALU должен выполнить, существует порт управления.
В основном это имя команды. Таким образом, если порт управления имеет 4 бита, есть 16 возможных инструкций.
часть 2
REGISTER UNIT: это набор ячеек памяти (кеш-память). Содержимое этой памяти часто передается на входные порты АЛУ.
Part3
Блок управления: Это своего рода мастер оркестра процессора. Его работа заключается в
1 отправить данные на вход ALU
2Читайте, какие инструкции должны выполняться в регистрах команд, отправьте эти коды на управляющие порты ALU
Интерфейс. Так ОЗУ и другие периферийные устройства взаимодействуют с процессором
Каждый раз, когда интрукция выводит результат, он должен быть сохранен. Он может быть сохранен в ОЗУ, поэтому запись оперативной памяти должна быть готова, как только результат будет готов. В то же время может происходить чтение из ОЗУ входов следующей инструкции. И в то же время следующая следующая команда может быть извлечена из ОЗУ.
Генерация 1 инструкции обычно требует более 1 такта. Обработка в структуре аналогична промышленному производству. Итак, цепная работа завершена.
VLIW Программирование, которое мы пишем, является линейным, то есть инструкции выполняются одна за другой. Но современные процессоры (но не ARM) имеют несколько ALU, поэтому несколько инструкций обрабатываются одновременно.
Таким образом, у вас есть цепочка обработки, работающая с несколькими инструкциями одновременно (конвейер)
и у вас есть много этих единиц (суперскаляр)
Тогда возникает вопрос о том, что можно / нужно сделать, чтобы настроить вашу архитектуру процессора.