Слайд 1Лекция
Базовые компоненты компьютера
Слайд 2КОМПОНЕНТЫ КОМПЬЮТЕРА
На верхнем уровне компьютер состоит из центрального процессора (CPU),
памяти и устройств ввода - вывода, с одним или более
модулями каждого типа
Эти компоненты связаны некоторым способом, чтобы реализовать основную функцию компьютера - выполнить программы
Слайд 3Концепция фон Неймана
Практически все современные компьютеры следуют концепции, выработанной
фон Нейманом. Эта концепция включает три основных момента:
-
данные и команды хранятся совместно в единой подсистеме памяти, способной выполнять операции чтения и записи;
Слайд 4Концепция фон Неймана
- к отдельным элементам данных, хранящимся
в памяти, можно обращаться по адресу, характеризующему её положение в
общем массиве, независимо от смысла затребованных данных, т.е. независимо от того, являются ли эти данные командой или операндами;
- заданный алгоритм решения задачи реализуется последовательным выполнением элементарных команд в порядке их расположения в памяти, если только иное не будет указано явно.
Слайд 5Базовые компоненты компьютера
Существует небольшой набор базовых логических элементов, комбинируя которые
разными способами, можно создавать средства хранения данных и их логической
обработки, в том числе и выполнения арифметических операций
Слайд 7Центральный процессор
ЦП должен обмениваться с памятью данными и извлекать
из нее команды программы
Для этого в составе ЦП имеются два
регистра (внутренних элемента памяти)
- РгАП регистр адреса памяти (MAR), в котором формируется адрес очередной ячейки памяти для выполнения записи или чтения
Слайд 8Центральный процессор
- БРгП буферный регистр памяти (MBR), который служит
для временного хранения данных, записываемых в память или считанных из
памяти
ПСч программный счетчик (PC) хранит адрес очередной команды
РгК регистр команд (IR) служит для временного хранения выполняемой команды
Слайд 9Центральный процессор
РгА В/В регистр адреса внешнего устройства (I/O AR) служит
для хранения адреса устройства ввода-вывода
БРг В/В регистр данных
внешнего устройства (I/O BR) — для хранения данных, передаваемых в устройство ввода-вывода или получаемых из него
Слайд 10Устройство оперативной памяти
Содержит множество ячеек
Каждая ячейка имеет свой числовой
идентификатор - адрес
В каждой ячейке хранится слово, которое может
быть интерпретировано или как элемент данных, либо как команда
Слайд 11Модуль ввода-вывода
Передает данные от внешнего устройства в ЦП или
в память и обратно
В состав модуля ввода-вывода входят внутренние буферы
для временного хранения передаваемых данных
Слайд 12Выполнение программы
Выполнение последовательности элементарных шагов
Каждый шаг - это выполнение арифметической,
логической операции или операции обмена данными
Для каждой операции требуется индивидуальный
набор управляющих сигналов
Слайд 13Выполнение программы
Каждая команда имеет уникальный код
например Add, Move и
т.д.
Аппаратный сегмент принимает код и формирует сигналы управления
Процесс обработки отдельной
команды принято называть циклом обработки команды
Слайд 14Командный цикл
Два цикла:
- Загрузка
- Выполнение
Схема основного цикла обработки
команды
Слайд 15Цикл загрузки
Программный счетчик (PC) содержит адрес следующей команды
Процессор загружает команду
из памяти по адресу, указанному в программном счетчике
Инкремент программного счетчика,
если не указан адрес перехода
Команда загружается в регистр команд (РгК) процессора
Слайд 16Цикл выполнения
Процессор распознает команду и выполняет необходимые действия
Часть битов кода
команды представляет собой код операции, определяющий, какая именно операция должна
быть выполнена процессором
Выполняя заданную операцию, процессор будет производить элементарные действия, которые можно разделить на четыре категории
Слайд 17Цикл выполнения
Процессор - память
Данные перемещаются между ЦП и
памятью
Процессор – модуль ввода/вывода
Данные перемещаются между ЦП и модулем
в/в
Слайд 18Цикл выполнения
Обработка данных
Процессор выполняет заданную арифметическую или логическую
операцию над данными
Управление
Изменение естественной последовательности команд программы
Например, условный или безусловный переход
Слайд 19Постановка задачи
Выполнить пошаговое сложение кодов двух чисел 3 и 2,
расположенных в ячейках 940 и 941 оперативной памяти. Результат разместить
в ячейке 941. Набор команд следует разместить в последовательности ячеек памяти, начиная с адреса 300
Слайд 21Форматы команд и данных
Как команды, так и данные представлены 16-разрядными
словами
Формат команды позволяет представить множество 24 = 16 различных
кодов инструкций и 212 = 4096 (4K) слов памяти при прямой адресации
Слайд 22Набор регистров ЦП
Счетчик команд PC, в котором формируется адрес очередной
команды
Регистр команды IR, в который считывается и в котором хранится
в процессе выполнения очередная команда
Аккумулятор АС - рабочий регистр для временного хранения данных
Слайд 23Набор команд
0001 - загрузка АС из памяти (1)h;
0010 - сохранение
содержимого АС в памяти (2)h;
0101 - добавление к содержимому АС
числа, считанного из памяти (5)h.
Слайд 27Пошаговое выполнение команд
1 В счетчике команд PC содержится число 300
— адрес первой команды фрагмента
Эта команда на фазе извлечения считывается
в регистр команд IR
При считывании команды одновременно выполняется приращение адреса в PC
Слайд 28Пошаговое выполнение команд
2 Первые 4 разряда в IR — код
операции — указывают ЦП, что нужно выполнить чтение ячейки памяти
по адресу, заданному в остальной части команды (940), и результат записать в аккумулятор АС
3 Следующая команда извлекается из ячейки памяти, заданной содержимым PC, а само содержимое PC увеличивается
Слайд 29Пошаговое выполнение команд
4 Первые 4 разряда новой команды задают сложение
содержимого АС с числом, считанным из ячейки памяти, адрес которой
указан в адресной части команды. Вычисленная сумма остается в АС.
5 Извлекается следующая команда.
6 Содержимое АС записывается в память по адресу, указанному в адресной части команды — в ячейку 941.
Слайд 30Цикл команды -
диаграмма состояний
Слайд 31Этапы диаграммы состояний
Вычисление адреса команды
При естественном порядке
выполнения команд программы адрес следующей команды образуется в результате прибавления
константы к адресу текущей команды
Если, например, длина команды 16 разрядов, и такую же разрядность имеют слова в памяти, то адрес каждой очередной команды отличается от адреса предыдущей на 1.
Слайд 32Вычисления адреса команды
Если же оперативная память организована таким образом, что
адресуемой единицей данных является 8-разрядный байт, то следует адрес в
PC увеличивать на 2.
Слайд 33Этапы диаграммы состояний
Загрузка команды
Считывание команды из ячейки памяти
по адресу, заданному в PC, в регистр процессора
Дешифрация кода операции
Анализ кода операции и выяснение типа затребованной операции, количества и типов участвующих в ней операндов (или операнда)
Слайд 34Этапы диаграммы состояний
Вычисление адреса операнда
Если в операции
используются операнды, хранящиеся в памяти или передаваемые через подсистему ввода-вывода,
то на этой фазе определяются их "физические" адреса
Загрузка операнда
Считывание операнда из заданной ячейки памяти или из модуля ввода-вывода
Слайд 35Этапы диаграммы состояний
Обработка данных
Выполнение операции, предусмотренной
кодом операции
Запись результата
Запись результата операции в
заданную ячейку памяти или передача в модуль ввода-вывода