- •АРХИТЕКТУРА КОМПЬЮТЕРНЫХ СИСТЕМ
- •Основная и дополнительная литература:
- •Понятие архитектуры вычислительной системы
- •Структурная организация компьютерной системы -
- ••Характеристики архитектуры: набор машинных команд, формат разрядной сетки для представления данных разных типов,
- •Общая структура и функции компьютера
- •Базовые функции компьютера
- •Базовые функции компьютерной системы
- •Основные типы операций в компьютере
- •Машина фон Неймана
- •Основная идея фон Неймана
- •В состав УУ и АЛУ входят специальные ячейки памяти, называемые регистрами
- •Центральный процессор
- •Начало
- •Для увеличения быстродействия в настоящее время используются следующие решения
Основная идея фон Неймана
•Так как устройство в первую очередь является вычислителем, то чаще всего ему придется выполнять элементарные арифметические операции ( сложение, вычитание , умножение и деление), следовательно в состав
необходимо включить специальный блок , который будет выполнять эти операции - центральный арифметический блок (CA).
•Логическое управление устройством, т.е. организация нужной последовательности выполнения операций , может быть эффективно реализовано центральным органом управления. Последовательность команд должна каким то образом хранится , а орган управления должен быть представлен вторым специальным компонентом устройства, центральным блоком управления, - СС.
•Любое устройство, предназначенное для выполнения длинной и сложной последовательности операций , должно обладать значительной памятью. Последовательность команд, которая должна обеспечивать решение определенной сложной задачи, может представлять собой соответствующий код, который нужно сохранять, поэтому третьим компонентом системы должен быть блок памяти -М.
•Компоненты СА и СС (вместе С) и М - должны обладать способностью общаться с внешним миром, т.е. устройствами ввода-вывода -R.
•Устройство должно иметь в своем составе органы передачи информации от R в свои компоненты С и М. Эти органы образуют специальный компонент I .
•Устройство должно располагать органами передачи информации от специальных компонентов C и М к R - образуют компонент вывода, - О.
|
|
Знаковый разряд |
|
|
Значение числа |
|
|
|
|
|
|
|
|
|||
|
|
Числа |
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
0 |
|
1 |
|
|
|
|
|
|
|
39 |
|
|
|
|||
|
|
|
|
А) Слово числа |
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
Левая команда |
|
|
|
|
Правая команда |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Код |
|
адрес |
|
Код |
|
|
адрес |
|
|
|||
|
|
|
|
операции |
|
|
|
|
операции |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
0 |
8 |
19 |
|
20 |
28 |
39 |
|
|
В) Слово команды
Рисунок 1.5. Формат представления информации в памяти компьютера IAS.
В состав УУ и АЛУ входят специальные ячейки памяти, называемые регистрами
Регистр данных памяти MBR (memory buffer register) хранит слово, которое должно быть записано в память или которое только что извлечено из памяти.
•Регистр адреса MAR (memory address register) хранит адрес ячейки памяти, к которой производится обращение для считывания слова или записи.
•Регистр команды IR (instruction register) хранит код операции текущей команды длиной в 8 бит в процессе ее выполнения.
•Буферный регистр команды IBR (instruction buffer register) служит для временного хранения правой команды, извлеченной при чтении очередного слова команды из памяти.
•Счетчик команд PC (program counter) хранит адрес следующего слова команды, которое должно быть извлечено из памяти после завершения выполнения пары команд из текущего слова.
•Аккумулятор AC и регистр множимого/частного MQ (multiplier quotient) используются для временного хранения операндов и результатов в АЛУ. Например, в результате умножения двух 40- разрядных сомножителей формируется 80-разрядное произведение, старшие 40 разрядов которого хранятся в АС , а младшие 40 разрядов - в MQ.
Центральный процессор |
|
||
Арифметическое и логическое |
|
||
устройство |
|
|
|
AC |
|
MQ |
Оборудование |
|
|
|
|
|
|
|
Ввода-вывода |
Арифметические и |
|
||
логические схемы |
|
|
|
|
MBR |
|
Команды и |
|
|
|
|
|
|
|
данные |
IBR |
|
PC |
|
IR |
|
MAR |
Оперативная память |
|
|
||
Cхемы |
Управляющие |
|
|
управления |
|
||
сигналы |
|
||
|
|
||
Устройство управления |
|
адреса |
|
выполнением программы |
|
Рисунок 1.6. Укрупненная блок-схема компьютера IAS.
Начало
да |
В IBR есть |
нет |
|
|
|
|
следующая |
|
|
команда? |
|
Не требуется обращение к памяти
|
|
|
|
|
|
|
|
|
|
нет |
|
|
IR IBR(0:7) |
|
IR MBR (20:27) |
||||||
|
|
|
|
|
||||||
Фаз а изв леч ени я из |
|
MAR IBR (8:19) |
|
MAR MBR (28:39) |
|
|
||||
пам яти |
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
PC PC+1
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Расшифровка команды в IR |
||
|
|
|
|
|
|
|
|
|
|||
|
AC M(X) |
|
Переход к |
|
|
Если AC 0, то перейти к |
|||||
|
|
|
|
||||||||
|
|
|
|
||||||||
|
|
|
|
M(X,0:19) |
|
|
M(X,0:19) |
||||
|
|
|
|
|
|
|
|
|
|
|
да |
Фаз а вып олн ени |
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
||
яMBR M(MAR) |
|
|
|
|
|
|
|
||||
|
PC MAR |
|
|||||||||
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
AC MBR |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
MAR PC
MBR M(MAR)
да
Требуется команда в левой части слова?
IBR MBR (20:39)
IR MBR (0:7)
MAR MBR (8:19)
AC AC+ M(X)
AC 0? |
MBR M(MAR) |
|
|
нет
AC AC+MBR
Для увеличения быстродействия в настоящее время используются следующие решения
•Прогнозирование ветвления. Процессор просматривает команды выполняемого фрагмента программы и прогнозирует, как пойдет вычислительный процесс после очередной команды условного перехода( команды ветвления0. Процессор может заранее подготовиться к
выполнению этого фрагмента, в частности извлечь соответствующие команды из ОП и записать их в совой буфер. Процессор не простаивает, дожидаясь формирования условия. Существует еще более сложной вариант - который предполагает предварительный просмотр н только ближайшей команды условного перехода, но и последующих в выбранной ветви. Что позволяет если не предотвратить простои процессора, то хотя бы их уменьшить.
•Анализ потока данных. Процессор анализирует выполнение каких команд в текущем фрагменте программы зависит от результатов предшествующих команд, и формирует оптимизированный план выполнения. Этот план обеспечивает сокращение ненужных простоев в ожидании формирования промежуточных результатов.
•Предпочтительное выполнение. Процессор не только извлекает команды прогнозируемой ветви программы, но и организует их выполнение, сохраняя результаты в отдельном массиве ячеек памяти. Если затем окажется , что выбранная ветвь не отвечает сформированным условиям перехода, результат предпочтительно выполнения аннулируется, но если в среднем прогноз оправдывается, то простои процессора сокращаются.