- •Общие сведения о эвм
- •Этапы развития эвм
- •1.2 Характеристики эвм
- •1.3 Классификация средств эвт
- •1.4 Структуры эвм
- •1.4.1 Обобщенная структура эвм
- •1.4.2 Структура эвм на основе общей шины
- •Структура эвм на основе множества шин
- •1.5 Контрольные вопросы
- •Архитектура классической эвм
- •Принцип программного управления
- •Принцип хранимой в памяти программы
- •Обобщенный формат команд
- •Способы адресации команд
- •Процессоры с принудительным порядком выполнения команд
- •Процессоры с естественной адресацией команд Упрощенная структура процессора с естественной адресацией команд приведена на рисунке 2.2.
- •2.5 Способы адресации операндов
- •Прямая адресация
- •2.5.2 Регистровая адресация
- •Косвенная адресация
- •Непосредственная адресация
- •Неявная адресация
- •Относительная (базовая) адресация
- •Индексная (автоинкрементная или автодекрементная) адресация
- •2.6 Контрольные вопросы
- •3. Запоминающие устройства эвм
- •3.1 Основные понятия
- •Классификация зу
- •3.3 Озу с произвольным доступом
- •3.4 Организация микросхем sram
- •3.5 Организация динамической памяти
- •3.6 Особенности микросхем синхронной динамической памяти
- •Основные характеристики зу
- •3.8 Озу магазинного типа (стековая память)
- •Ассоциативные зу
- •3.10 Контрольные вопросы
- •4.1 Обобщенные структуры процессоров с непосредственными и магистральными связями
- •4.2 Декомпозиция процессора на уа и оу
- •4.3 Арифметико- логические устройства
- •4.3.1 Классификация арифметико-логических устройств
- •4.3.2 Алу для сложения и вычитания чисел с фиксированной запятой
- •4.3.3 Алу для умножения двоичных чисел
- •4.3.4 Методы ускорения умножения
- •4.3.5 Особенности операций десятичной арифметики
- •4.3.6 Операции над числами с плавающей запятой
- •4.4 Устройства управления
- •4.4.1 Классификация уу
- •4.4.2 Аппаратные уу
- •4.4.3 Микропрограммные уу
- •4.5. Структурно - функциональная организация классического процессора
- •4.6 Рабочий цикл процессора
- •4.7 Понятие о слове состояния процессора
- •4.8 Процедура выполнения команд перехода (условного и безусловного)
- •4.9 Процедура выполнения команд вызова подпрограмм
- •4.10 Контрольные вопросы
- •Системы прерывания программ
- •5.1 Общие сведения
- •5.2 Характеристики систем прерываний
- •5.3 Схема выполнения процедуры прерывания
- •5.4 Способы реализации систем прерываний
- •5.4.1 Схема прерывания с опросом по вектору
- •5.4.2 Прерывания с программно - управляемым приоритетом
- •5.5 Контрольные вопросы
- •6. Организация ввода-вывода
- •6.1 Общие сведения о вводе-выводе в эвм
- •6.2 Основные способы ввода-вывода
- •6.2.1 Программно - управляемый ввод - вывод
- •6.2.2 Ввод - вывод с прерыванием программы
- •6.2.3 Ввод - вывод в режиме пдп
- •6.3 Интерфейсы
- •6.3.1 Характеристики интерфейсов
- •6.3.2 Шины интерфейсов ввода-вывода
- •6.3.2.1 Синхронные шины
- •6.3.2.2 Асинхронные шины
- •6.4 Контрольные вопросы
- •7. Организация памяти эвм с магистральной архитектурой
- •7.1 Организация адресного пространства памяти и ввода-вывода. Изолированная и совмещенная адресные пространства
- •7.1.1 Изолированное адресное пространство памяти и ввода- вывода
- •7.1.2. Совмещенное адресное пространство памяти и ввода- вывода
- •7.2 Организация пзу. Проектирование памяти эвм
- •7.3 Построение оперативной памяти на микросхемах статического типа
- •7.4 Построение оперативной памяти на микросхемах dram
- •7.5 Память с чередованием адресов
- •7.6 Регенерация динамической памяти
- •Кэш прямого отображения
- •7.7.2 Наборно- ассоциативный кэш
- •Контрольные вопросы
- •8 Организация пк
- •8.1 Структурная схема системной платы эвм ibm pc/at 286
- •8.1.1 Система шин системной платы эвм ibm pc/at 286
- •8.1.2 Состав и назначение основных устройств системной платы эвм ibm pc/at 286
- •8.1.2.1 Назначение и характеристики процессора и сопроцессора
- •8.1.2.2 Назначение и характеристики генераторов тактовых сигналов
- •8.1.2.3 Назначение шинных формирователей
- •8.1.2.4 Формирование управляющих сигналов и работа подсистемы памяти
- •8.1.2.5 Назначение и характеристики периферийных устройств системной платы
- •8.1.2.6 Назначение пзу bios
- •8.1.3 Шина isa
- •8.1.3.1 Особенности шины isa
- •8.1.3.2 Основные сигналы шины isa
- •8.1.3.3 Шинные циклы магистрали isa
- •8.1.3.4 Электрические и конструктивные характеристики шины isa
- •8.1.3.5 Конвейеризация шины
- •8.2 Структурная схема системной платы эвм ibm pc/at Pentium
- •8.2.1 Локальные шины ввода -вывода
- •8.2.2 Состав и назначение основных устройств системной платы эвм ibm pc/at Pentium
- •8.3 Основные сигналы шинного интерфейса процессора Pentium
- •8.4 Организация шины pci
- •8.4.1 Общая характеристика шины pci
- •8.4.2 Основные сигналы шины
- •8.4.3 Протокол шины pci
- •8.5 Контрольные вопросы
- •Библиографический список
Архитектура классической эвм
Принцип программного управления
Принцип программного управления заключается в том, что алгоритм вычислений (например, вычисление некоторого выражения) представляется в виде упорядоченной последовательности команд, преобразующих исходные данные (операнды) в результат. Таким образом, действия предписанные алгоритмами, закладываются в команды (например, такие действия как сложение, вычитание, умножение, логические операции и т.д. представляются в виде соответствующих машинных команд). Последовательность команд называется программой. Программа управляет ходом вычислительного процесса.
Пусть, например, необходимо вычислить выражение: .
Возможная программа его вычисления содержит следующие команды:
1-я команда: умножить операнд a на b;
2-я команда: сохранить результат умножения (a*b) в памяти;
3-я команда: сложить операнды a и b ;
4-я команда: умножить результат сложения (a+b) на c;
5-я команда: считать из памяти (a*b);
6-я команда: разделить результат (a*b) на (a+b)* c.
Если операнды и действия над ними представлены в двоичной системе счисления, то для реализации программы можно ввести следующую систему команд:
-
КОП
1-й операнд
2-й операнд
где КОП - код операции – поле, в котором заданы операции, выполняемые процессором, закодированные в двоичной системе счисления.
Подобная система команд применялась в самых первых ЭВМ, где для ввода программ и данных использовались перфоленточные устройства, в которых отсутствовала возможность возврата к ранее выполненным участкам программ. Это обстоятельство приводило к очень длинным (в буквальном смысле) программам. Пусть, например, необходимо вычислить выражение:
.
Программа вычислений будет следующей:
1-я команда: умножить a0 на b0;
2-я команда: умножить a1 на b1;
3-я команда: сложить результат 1-й команды с результатом 2-й команды;
4-я команда: умножить a2 на b2;
5-я команда: сложить результат 3-й команды с результатом 4-й команды:
6-я команда: умножить a3 на b3;
7-я команда: сложить результат 5-й команды с результатом 6-й команды и т.д.
При использовании предложенной структуры команд программа будет состоять приблизительно из n - команд умножения и n - команд сложения, т.е. всего из 2n команд. Большая длина программы обусловлена невозможностью оперативного возврата к тем ее частям, которые могли бы выполняться многократно.
Принцип хранимой в памяти программы
Принцип хранимой в памяти программы был предложен Дж. фон Нейманом в 1945 году. Этот принцип стал основой современных машин. В соответствии с этим принципом команды хранятся в памяти, также как и данные. При этом под программу отводится одна отдельная область памяти, под данные - другая область. В командах указываются не операнды, а их адреса, то есть номера ячеек памяти ОП, где они размещаются. Для вызова команд также надо указывать их адреса в ОП. При такой организации можно многократно вызывать из памяти одну и ту же команду или последовательность из нескольких команд и одни и те же данные. Кроме этого, над командами и над данными можно производить операции, так как они с точки зрения обработки становятся равноценными. Структура команды для ЭВМ, организованной в соответствии с принципом фон-Неймана (фон- неймановской машины), будет следующей:
КОП |
Адрес операнда |
Такой тип команды оказался намного более универсальным и наряду с ранее приведенным он широко используется в современной вычислительной технике.
Программа вычисления выражения: при использовании команд последнего типа намного сокращается.
1-я команда: i:= 0;
2-я команда: Yi := 0:
3-я команда: умножение ai*bi:= Xi;
4-я команда: сложение Yi+Xi:= Yi;
5-я команда: i:=i+1;
6-я команда: i>n? Если нет, то переход на 3-ю команду;
7-я команда: Конец.
Длина полученной программы, использующей введенный тип команды, не зависит от числа n слагаемых. Сокращение длины программы достигается благодаря возможности многократного вызова из памяти последовательности с 3-ей по 6-ю команд.