Билеты (Graur) (1114774), страница 5
Текст из файла (страница 5)
В регистре счетчика команднаходится адрес первой команды программы.1.по содержимому счетчика команд выбирается машинное слово, вкотором находится очередная команда.2.счетчик команд увеличиваем на 1.3.анализируем код операции команды. Если код операции командынекорректный, то происходит прерывание.4.Если код операции корректный, то происходит анализ типа этойоперации.5.Вычисление адресов операндов.6.Выбираются значения операндов, которые помещаются варифметико-логическое устройство.7.Выполнение команды.
Если выполняемая команда есть командапередачи управления, то она передается в устройство управления и,если условия выполняются, то вычисляется исполнительный адрес(адрес перехода), который заносится в счетчик команд.Переход наначало, к шагу 1.Билет №7 Основы архитектуры компьютера.Оперативное запоминающее устройство. Расслоениепамяти.ОЗУ - устройство, предназначенное для хранения оперативной информации.(ОЗУ– хранение программы, выполняющейся в компьютере) В ОЗУ размещаетсяисполняемая в данный момент программа и используемые ею данные. ОЗУ состоитиз ячеек памяти, содержащей поле машинного слова и поле служебнойинформации.01Служ.инф.Машинное словоN-1Машинное слово – поле программно изменяемой информации, в машинном словемогут располагаться машинные команды (или части машинных команд) илиданные, с которыми может оперировать программа.
Машинное слово имеетфиксированный для данной ЭВМ размер (обычно размер машинного слова – этоколичество двоичных разрядов, размещаемых в машинном слове).Служебная информация (иногда ТЭГ) – поле ячейки памяти, в котором схемамиконтроля процессора и ОЗУ автоматически размещается информация, необходимаядля осуществления контроля за целостностью и корректностью использованияданных, размещаемых в машинном слове.В поле служебной информации могут размещаться: разряды контроля четности машинного слова (при записи машинного словаподсчет числа единиц в коде машинного слова и дополнение до четного илинечетного в контрольном разряде), при чтении контроль соответствия; разряды контроля данные-команда (обеспечение блокировки передачиуправления на область данных программы или несанкционированной записив область команд); машинный тип данных – осуществление контроля за соответствиеммашинной команды и типа ее операндов;Конкретная структура, а также наличие поля служебной информации зависит отконкретной ЭВМ.В ОЗУ все ячейки памяти имеют уникальные имена, имя - адрес ячейки памяти.Обычно адрес – это порядковый номер ячейки памяти (нумерация ячеек памятивозможна как подряд идущими номерами, так и номерами, кратными некоторомузначению).
Доступ к содержимому машинного слова осуществляется посредствомиспользования адреса. Обычно скорость доступа к данным ОЗУ существенно нижескорости обработки информации в ЦП.Необходимо, чтобы итоговая скорость выполнения команды процессоромкак можно меньше зависела от скорости доступа к коду команды и к используемымв ней операндам из памяти. Это составляет проблему, которая системным образомрешается на уровне архитектуры ЭВМ.1. Расслоение ОЗУ – один из аппаратных путей решения проблемы дисбалансав скорости доступа к данным, размещенным в ОЗУ и производительностьюЦП.
Суть расслоения ОЗУ состоит в следующем. Все ОЗУ состоит из kблоков, каждый из которых может работать независимо. Ячейки памятираспределены между блоками таким образом, что у любой ячейки ее соседиразмещаются в соседних блоках. Контроль за целостностью данных.2. Контроль доступа к командам/данными.Контроль осуществляется при помощи тегов. Если команда захочет рассмотретьданные в качестве команда то будет прерывание. Происходит проверка насемантическую правильность.3. Контроль доступа к машинным типам данных.Тип данных – определенный формат данных, с конкретным набором операций,известных для этого формата. Наличие и формат тега зависит от реализации.Доступ к содержимому машинного слова может быть прямым или косвенным.Производительность оперативной памяти - скорость доступа процессора кданным, размещенным в ОЗУ:•время доступа (access time- taccess) - время между запросом на чтение слова изоперативной памяти и получением содержимого этого слова.•длительность цикла памяти (cycle time - tcycle) - минимальное время междуначалом текущего и последующего обращения к памяти.(tcycle>taccess)Расслоение памятиРасслоение ОЗУ - один из путей аппаратного решения проблемы дисбаланса междускоростью доступа к данным, находящимся в ОП, и производительностьюпроцесса.
Так же используются контроллеры.Использование расслоения памяти. Физически ОЗУ представимо в видеобъединения k устройств, способных хранить одинаковое количество информациии способных взаимодействовать с процессором независимо друг от друга. При этомадресное пространство ВС организовано таким образом, что подряд идущие адреса,или ячейки памяти, находятся в соседних устройствах (блоках) оперативнойпамяти. Программа состоит (в большей степени) из линейных участков.
Еслииспользовать этот параллелизм, то можно организовать в процессоре еще одинбуфер, который организован так же, но в котором размещаются машинныекоманды. За счет того, что есть параллельно работающиеустройства, то этот буфер автоматически заполняется вперед. Т.е.
заодно обращение можно прочесть k машинных слов и разместить их в этомбуфере. Далее, действия с буфером команд похожи на действия сбуфером чтения/записи. Когда нужна очередная команда (ее адреснаходится в счетчике команд), происходит ее поиск (по адресу) вбуфере, и если такая команда есть, то она считывается. Если такойкоманды нет, то опять-таки работает внутренний алгоритм выталкиваниястроки, новая строка считывается из памяти и копируется в буферкоманд. Расслоение памяти в идеале увеличивает скорость доступа в kраз, плюс буфер команд позволяет сократить обращения к ОЗУ.Билет №8 Основы архитектуры компьютера. Основныекомпоненты и характеристики. Кэширование ОЗУВернемся к проблеме дисбаланса скорости доступа к ОЗУ и скорости обработкиинформации ЦП.Первое решение – использовать программные средства.
Программист можетразместить наиболее часто используемые операнды в РОН, тем самым сокращаетсяколичество «медленных» обращений в ОЗУ. Результат решения во многом зависитот качества программирования.Второе решение – использование в архитектуре ЭВМ специальных регистровыхбуферов или КЭШ памяти.Регистровые буфера или КЭШ память предназначены для разрешения проблемынесоответствия скоростей работы ОЗУ и ЦП, на аппаратном уровне, т.е.
эта формаоптимизации в системе организована аппаратно и работает всегда, вне зависимостиот исполняемой программы. Следует отметить, что результат этой оптимизации, вобщем случае зависит от характеристик программы (об этом несколько позднее).Традиционно, в развитых ЭВМ используется аппаратная буферизация доступа коперандам команд, а также к самим командам.Буферизация работы с операндамиБуфер операндов – аппаратная таблица, логически являющаяся компонентом ЦП(физически это может быть и отдельное от ЦП устройство), призванная аппаратноминимизировать количество обращений к «медленному» ОЗУ при записи и чтенииоперандов.Таблица состоит из фиксированного числа строк. Каждая строка имеет следующиеполя:АдресЗначениеПризнак измененияКод стирания адрес – физический адрес машинного слова в ОЗУ; значение – значение машинного слова, соответствующего адресу; признак изменения – код, характеризующий факт изменения поля значения(в соответствующей ячейке ОЗУ значение отличается от значения втаблице); код старения – код, характеризующий интенсивность обращений к даннойстроке.
По значению поля определяются наиболее «популярные» строки.Конкретный алгоритм изменения данного поля зависит от ЭВМ.Примерные алгоритмы использования буфера операндовАлгоритм для чтения данных из ОЗУПусть имеется команды чтения данных из машинного слова по физическомуадресу Aисп.1.
Поиск по таблице строки, содержащей адрес, совпадающий с Aисп. Еслитакой строки нет, то на п. 3.2. Происходит обновление кода старения. Результатом команды чтенияявляется содержимое поля «Значение».3. По значениям поля «Код старения» осуществляется поиск строки,используемой наименее интенсивно.4. Анализируется код изменения. Если значение изменялось в таблице, топроисходит запись значения по адресу в ОЗУ.5. Считывается машинное слово из ОЗУ по адресу Aисп и заполняется даннаястрока.6. Считанное значение является результатом выполнения команды чтения.Алгоритм для записи данных в ОЗУПусть имеется команда записи значения в машинное слово по физическому адресуAисп.1.
Поиск по таблице строки, содержащей адрес, совпадающий с Aисп. Еслитакой строки нет, то на п. 3.2. Значение записывается в поле «Значение». Происходит обновление полей«Признак изменения», «Код старения». Выполнения команды записизавершено.3. По значению поля «Код старения» осуществляется поиск строки,используемое наименее интенсивно.4. Анализируется код изменения. Если значение изменялось в таблице, топроисходит запись значения по адресу в ОЗУ.5. Происходит обновление содержимого полей строки в соответствии скомандой записи. Выполнение команды завершено.Буферизация выборки командБуфер команд – минимизация обращений в ОЗУ за машинными командами.АдресЗначениеКод старенияИнтерпретация одноименных полей аналогична буферу операндов.Примерный алгоритм использованияЦентральному процессору требуется для выполнения машинная команда,размещенная по физическому адресу ОЗУ Aисп.1. Поиск по таблице строки, содержащей Aисп.