- •1. Техническое задание
- •1.1. Предмет проектирования
- •1.2. Общие требования
- •1.3. Исходные данные
- •2. Разработка архитектуры цп
- •2.1. Уточнение структуры системы
- •2.2. Архитектура внешних выводов
- •2.3. Выбор форматов данных
- •2.4. Выбор формата команд
- •2.5. Определение модели памяти
- •2.6. Разработка системы команд
- •2.7. Внутренняя организация
- •2.8 Структура кэш-памяти
- •Кэш команд
- •Кэш данных
- •2.9 Структурно-функциональная схема процессора
2.7. Внутренняя организация
Общая структура представлена ниже и соответствует двухступенчатому конвейеру.
Рисунок XXX
Для него выделяются фаза выборки команды и фаза выполнения команды. Параллельно и асинхронно могут работать два процессора: процессор памяти и исполнительный процессор. Процессор памяти обеспечивает работу с памятью команд и памятью данных, а также с кэш-памятью. На исполнительный процессор возлагаются функции, связанные с дешифрацией и выполнением команд.
2.8 Структура кэш-памяти
В процессоре предусмотрен одноуровневый кэш данных и кэш команд прямого отображения. Для КЭШа команд, как и КЭШа данных используется метод прямого отображения.
Кэш команд
Согласно условию память команд – 64 Кб (216байт), адрес команды – 16-разрядный. Был выбран размер страницы 1 Кб (210байт), т.е. разделение памяти команд на 64 страницы. Размер строки кэша равен 32 байтам, количество строчек - 32. Условная структура кэша обозначена на рисунке ниже.
Память команд
Рисунок XXX
Таким образом, размер кэша 32*32 + 32 = 1056 байт.
Формат адреса представлен на рисунке ниже:
Рисунок XXX
Формат адреса принимает вид:
6 бит – страница;
5 бит – строка;
4 бита – слово;
1 бит может быть использован для адресации байта.
Кэш данных
Для памяти данных, размер которой равен 48 КБ, используется аналогичный кэш, с тем отличием, что в кэше данных будет 48 страниц. Формат адреса будет точно таким же.
2.9 Структурно-функциональная схема процессора
Схема представлена на рисунке ниже.
Рисунок XXX
Условные обозначения:
АЛУ– арифметико-логическое устройство;
КЭШ– общий кэш памяти данных и команд;
К/Д– сигнал кэша: команды или данные;
О– непосредственный операнд;
ПД– память данных;
ПК– память команд;
ПП– процессор памяти;
РОН– регистры общего назначения;
УРС– устройство управлением сопроцессора;
ШК 16– 16-битная шина команд;
AD 32– 32-битная совмещённая шина адрес-данные;
DC– дешифратор команд;
Регистры:
CS– адрес начала загруженной программы;
CI– текущая команда;
CIA– адрес текущей команды;
F– регистр флажков;
FI– регистр для сохранения значенияFпри прерывании;
MD– буфер данных;
MR– буфер адреса;
NI– следующая команда;
NIA– адрес следующей команды;
P– программный счётчик
PI– регистр для сохранения значенияPпри прерывании;