- •Организация эвм и систем
- •Глава 6 Организация памяти
- •Глава 1. Структура современного компьютера
- •1.1 Основные понятия
- •1.2 Принцип действия компьютера
- •Цикл работы компьютера
- •1.3 Программное обеспечение компьютера
- •1.4 Надежность, производительность и показатели быстродействия
- •Производительность компьютера
- •Технико-эксплуатационные характеристики
- •1.5 Вычислительные системы и сети
- •Вопросы для самопроверки
- •Глава 2 представление информации в компьютере
- •5.2 Система команд. Форматы команд и способы адресации
- •5.3 Система прерываний и приостановок, состояние процессора
- •Характеристики системы прерываний
- •Организация перехода к прерывающей программе
- •5.4 Режимы работы процессора: однопрограммный, пакетный, разделения времени, реального времени
- •5.5 CisCиRisCкомпьютеры
- •Процессоры персональных компьютеров
- •5.6 Устройства управления
- •Устройства управления с хранимой в памяти логикой
- •5.7 Методы и средства повышения производительности процессоров персональных компьютеров
- •Суперскалярная обработка
- •Переименование регистров
- •Динамическое прогнозирование условных переходов
- •Контроллер памяти Контроллер pci
- •Вопросы для самопроверки
- •Глава 6. Организация памяти
- •6.1 Адресное пространство
- •6.2 Виды памяти
- •6.3 Оперативная память
- •Статическая и динамическая память
- •6.5 Внешняя память
- •6.6 Организация виртуальной памяти
- •Страничное, сегментное и странично-сегментное распределение
- •Свопинг
- •6.7 Защита памяти
- •Вопросы для самопроверки
- •Глава 7. Интерфейсы
- •7.1 Понятие интерфейса и его характеристики
- •7.1 Состав линий системной шины
- •Передача данных по проводным линиям связи По линиям связи современных интерфейсов преимущественно передаются низкочастотные дискретные одно - и биполярные сигналы (рисунок 7.Х).
- •Адрес верный
- •7.2 Подключение устройств
- •7.4 Интерфейсы внешней памяти
- •7.5 Малые интерфейсы (usb,ide,rs-232c,scsi)
- •Вопросы для самопроверки
- •Глава 8. Периферийные устройства компьютеров
- •8.1 Организация систем ввода-вывода. Каналы, контроллеры
- •Основные функции свв
- •Программный ввод-вывод
- •Прямой доступ в память
- •8.2 Клавиатура и мышь
- •8.3 Дисплеи
- •8.4 Принтеры
- •8.5 Накопители на магнитных дисках
- •Структура накопителя на жестких дисках
- •Структура и особенности накопителя на гмд
- •8.6 Накопители на компакт-дисках (cd-rom, cd-r, cd-rw, dvd)
- •8.7 Другие виды периферийных устройств
- •Вопросы для самопроверки
- •Какие особенности пу делают возможным организацию параллельной обработки и ввода-вывода?
- •Закон Амдала
- •Совместно используемая и распределенная память
- •Когерентность кэш-памяти
- •Наибольшее распространение получили следующие аппаратные механизмы, реализующие протокол когерентности кэш-памяти: это протоколы наблюдения и на основе справочника.
- •9.2 Конвейерные системы
- •Векторные регистры
- •9.3 Симметричные системы
- •9.4 Вычислительные системы со сверхдлинным командным словом
- •9.5 Другие виды мультипроцессорных систем
- •Машины с массовым параллелизмом
- •Нейрокомпьютеры
- •9.6 Проблемно-ориентированные системы
- •Вопросы для самопроверки
- •Глава 10. Организация вычислительного процесса
- •12.2 Системы автоматического контроля и диагностики
- •Контроль передач информации
- •Контроль арифметических операций
- •12.3 Защита памяти. Raid-массивы
- •12.4 Построение «безотказных» систем питания Вопросы для самопроверки
- •Список литературы
Устройства управления с хранимой в памяти логикой
Второй тип управляющего автомата – это автомат с хранимой в памяти логикой. Управление каждой операцией, входящей в систему команд компьютера, осуществляется с помощью хранимых в памяти слов. Эти управляющие слова, или микрокомандысодержат информацию о микрооперациях, выполняемых в течение одного машинного такта и осуществляющих элементарное преобразование над данными, и указание, где находится следующая микрокоманда. Такое управление получило названиемикропрограммного.
Одна машинная команда CISC-компьютера обычно выполняется в течение нескольких тактов, а управление осуществляется последовательностью микрокоманд, составляющих микропрограмму. Микропрограммы для каждой команды компьютера можно разместить в специальнойпамяти микропрограмм. Таким образом, процесс командного управления становится двухступенчатым: во-первых, нужно извлечь из основной памяти компьютера команду, а затем для ее выполнения извлечь из памяти микропрограмм последовательность микрокоманд.
Для реализации такого двухступенчатого процесса требуется быстрая постоянная память довольно большого объема, которая появилась в середине 60-х годов прошлого столетия. Начиная с этого времени, устройства управления с хранимой в памяти логикой стали применяться в большинстве процессоров общего назначения малой и средней производительности, а также в управляющих процессорах, некоторых микропроцессорах и в различных контроллерах периферийных устройств.
Типичная структура устройства управления с хранимой в памяти логикой приведена на рисунке 5.х. Основное место в ней занимает память микропрограмм (ПМ), в которой находятся все выполняемые микрокоманды.
Память микропрограмм – это постоянная память; адрес очередной микрокоманды (РгАМ) определяется кодом текущей операции (КОп из регистра команд преобразуется шифратором Ш), флагами Ф, полученными при выполнении предыдущей операции (из регистра флагов), и адресной частью предыдущей микрокоманды (А).
Очередная микрокоманда считывается из памяти и заносится в регистр (РгМК), откуда сигналы управления (МО) поступают в операционный блок.Все действия в микропрограммном блоке синхронизируются управляющими синхросигналами, не показанными на рисунке. Управляющие сигналы в микрокомандах, хранящихся в ПМ, могут быть представлены различными способами: горизонтальным, вертикальным и смешанным. Способ кодирования микроопераций определяет сложность и параметры быстродействия блока управления.
При горизонтальном способе каждый управляющий сигнал кодируется одним разрядом в микрооперационной части МО микрокоманды. Этим достигается максимальный параллелизм формирования сигналов управления, а, следовательно, и выполняемых действий. Однако при горизонтальном способе длина микрооперационной части может достигать сотен бит, причем большинство из них содержат нули.
КОп
Ш
РгАМ
ПМ
МОА
Операционный блок
Ф
Рисунок 5.х Структура устройства управления с хранимой в памяти логикой
При вертикальном способе каждой микрооперации соответствует некоторый код, который и хранится в МО части микрокоманды. Тогда микрокоманда имеет минимальную длину. Но теперь для формирования сигнала управления нужен дешифратор микрокоманд и, кроме того, в каждой микрокоманде можно «закодировать» лишь один сигнал управления. Таким образом, увеличиваются длина микропрограммы и время ее выполнения.
При смешанном кодировании все микрооперации разбиваются на группы. В каждую группу можно включить сигналы управления, которые никогда не встречаются вместе (это так называемый горизонтально-вертикальный способ). При этом способе используемые в одном такте сигналы формируются в разных группах. Сигналы управления внутри группы кодируются вертикальным способом, а сами группы – горизонтальным. Поскольку сигналы, входящие в одну группу, никогда не возникают одновременно, то для их формирования используют дешифраторы.
При вертикально-горизонтальном способе все микрооперации делят на несколько групп. В одну группу включают те микрооперации, которые часто встречаются вместе в одном такте. Эти микрооперации кодируются горизонтально. В каждой микрокоманде предусматривают поле, указывающее на принадлежность микрооперации к определенной группе, формирующее управляющие сигналы на демультиплесоры. Сигналы управления формируются демультиплексорами и подаются на различные схемы процессора.
Для уменьшения объемов управляющей памяти в некоторых компьютерах можно использовать двухуровневое кодирование микроопераций – вначале вертикальным способом кодируется микрокоманда (она находится в памяти микрокоманд), содержащая адрес памяти нанокоманд, где находится горизонтальная нанокоманда. Сигналы управления формируются содержимым полей нанокоманды. Однако из-за невысокого быстродействия (для формирования одного сигнала управления нужно два обращения в микрокомандную и нанокомандную память) использование такого двухуровневого кодирования микроопераций ограничено компьютерами сравнительно невысокого быстродействия.
Последовательность выполнения микрокоманд
Текущая выполняемая микрокоманда зависит как от предыдущей микрокоманды, так и от осведомительных сигналов, поэтому микропрограмма не может быть сугубо последовательной. В ней обязательно присутствуют безусловные и условные переходы.
Каждой команде компьютера соответствует своя микропрограмма, а, следовательно, ее адрес в микропрограммной памяти должен определяться кодом операции. Преобразование кода операции КОп в адрес микропрограммы выполняется шифратором Ш (рисунок 5.х), который обычно выполняют в виде специальной постоянной памяти. Как следует из этого рисунка, дальнейшая очередность выборки микрокоманд определяется принудительным заданием адреса следующей микрокоманды или автоматическим увеличением текущего адреса на единицу (естественная адресация).
Принудительная адресация состоит в том, что в определенном поле каждой микрокоманды содержится информация, определяющая адрес следующей микрокоманды. Этот адрес может быть окончательным, независящим от значений осведомительных сигналов, или определяться по условию, определяемому в зависимости от таких осведомительных сигналов. Для учета таких условий в микрокоманде предусматривают поле условия перехода (УП). Оно формирует номер осведомительного сигнала, значение которого анализируется при формировании исполнительного адреса следующей микрокоманды. [Обычно, если это поле содержит нуль, то условия не проверяются и адрес следующей микрокоманды определяется только адресной частью текущей микрокоманды. Если это поле содержит единицу, то выполняется условный переход к микрокоманде с адресом AМК = A + Xi, где Xi – указывает на наличие или отсутствие соответствующего осведомительного сигнала.]
Принудительную адресацию микрокоманд отличает высокое быстродействие и универсальность, но она требует значительной емкости микропрограммной памяти, так как каждая микрокоманда содержит адресную часть.
При естественной адресации адрес следующей микрокоманды всегда на единицу больше адреса текущей микрокоманды. При последовательном характере микропрограммы отпадает необходимость в наличии адресной части в микрокоманде. И при естественном порядке следования микрокоманд для вызова очередной микрокоманды из памяти нужен простой счетчик. Но для организации переходов в микропрограмму должны быть добавлены специальные микрокоманды условного и безусловного переходов.
В последнее время в качестве устройств микропрограммной памяти все чаще используют флэш-память, допускающую запись новой и изменение хранящейся в ней информации. Этим достигается возможность «настройки» параметров. Загружаемая микропрограммная память позволяет расширять или изменять систему команд, что необходимо при изготовлении проблемно-ориентированных или специализированных компьютеров.