- •Федеральное агентство по образованию
- •1.3. Исходные данные для курсового проектирования
- •1.4. Средства реализации модели
- •1.5. Результаты проектирования
- •2. Разработка архитектуры цп
- •2.1. Уточнение структуры системы
- •2.2. Архитектура внешних выводов
- •2.3. Выбор форматов данных
- •2.4. Определение модели памяти и структуры регистровой памяти
- •2.5. Выбор форматов команд
- •2.6. Разработка системы команд
- •2.7.Внутренняя организация
- •2.8. Основные алгоритмы функционирования
- •2.9. Алгоритмы выполнения отдельных операций.
- •2.10. Алгоритмы выполнения операций на шине.
- •3. Программный симулятор процессора
- •3.1. Руководство оператора
2.7.Внутренняя организация
Общая структура представлена ниже и соответствует двухступенчатому конвееру.
Для него выделяются фаза выборки команды и фаза выполнения команды. Параллельно и асинхронно могут работать два процессора: процессор памяти и исполнительный процессор. Процессор памяти обеспечивает работу с памятью команд и памятью данных, а также с кэш-памятью. На исполнительный процессор возлагаются функции, связанные с дешифрацией и выполнением команд.
В процессоре предусмотрен одноуровневый кэш данных и кэш команд прямого отображения.
Структура кэш-памяти данных:
Размер памяти команд – 64 кб, т.е. 2^16 байт. Адрес команды – 16-разрядный. Был выбран размер страницы 2^11 (2048) байт, т.е. разделение памяти команд на 2^5 (32) страницы. Таким образом, тег состоит из пяти разрядов. Пусть размер строки кэша равен 32 байта. Для адресации по строке потребуется еще 5 бит. Таким образом, получаем количество бит под адрес строки кэша команд, равное 16 – 5 – 5 = 6. То есть, в кэше команд содержится 2^6 = 64 строки по 32 байта, и объем кэша равен 64*32 = 2048 байт.
Формат адреса принимает вид:
5 бит – тег;
6 бит – строка;
5 бит – байт.
Для памяти данных, размер которой равен 48 кб, создадим такой же кэш, однако количество страниц в нем будет меньше на (16 * 2^10 / 2^11), т.е. на 8. В кэше команд их было 2^5 = 32 (5 – разрядность поля тега), тогда в кэше данных будет 24 страницы. Формат адреса будет точно такой же. Разница лишь в том, что не все теги будут использоваться (не будут использоваться теги, начиная с 24, т.к. этих страниц не существует).
Структурно-функциональная схема процессора представлена на рисунке ниже.
Структурно-функциональная
схема процессора:
На данной схеме присутствуют все регистры из раздела «структура регистровой памяти», а также АЛУ, дешифратор команд, кэш-память, устройства управления испольнительным процессором и процессором памяти, а также вспомогательные устройства – КУ (коммутирующее устройство) и схема сравнения адресов команд. Краткие пояснения связей даны на схеме; необходимо пояснить отдельные моменты.
Устройство управления исполнительным процессором координирует работу всех устройств исполнительной части процессора, выставляя необходимые управляющие сигналы на входы устройств.
Устройство управления процессором памяти управляет процессами записи в память и чтения из нее, содержит схемы для работы с кэш-памятью, выставляет разрешающие и запрещающие сигналы для записи адреса, данных и команд в соответствующие регистры.
Коммутирующие устройства (КУ) принимают на входе значения регистров общего назначения и значения поля операнда в команде. В зависимости от кода операции, поступающего на их управляющие входы, они подают на выход либо значение из РОН, либо значение из поля операндов при непосредственной адресации.
В процессоре реализован двухступенчатый конвейер из двух операций: выборка команды и выполнение. Команды хранятся в очереди из двух мест. Параллельно с выполнением текущей команды происходит чтение команды из кэш-памяти и сохранение ее в последнем месте очереди. По выполнении команды очередь сдвигается и процесс повторяется.