Выполнение команды можно проследить по схеме:
Общая схема компьютера
Как пpавило, этот процесс разбивается на следующие этапы:
-из ячейки памяти, адрес которой хранится в счетчике команд, выбирается очередная
команда; содержимое счетчика команд при этом увеличивается на длину команды;
-выбранная команда передается в устройство управления на регистр команд;
-устройство управления расшифровывает адресное поле команды;
-по сигналам УУ операнды считываются из памяти и записываются в АЛУ на
специальные регистры операндов;
-УУ расшифровывает код операции и выдает в АЛУ сигнал выполнить соответствующую
операцию над данными;
-результат операции либо остается в процессоре, либо отправляется в память, если в
команде был указан адрес результата;
-все предыдущие этапы повторяются до достижения команды "стоп".
2.6. Что такое архитектура и структура компьютера?
При рассмотрении компьютерных устройств принято различать их архитектуру и
структуру.
Архитектурой компьютера называется его описание на некотором общем уровне,
включающее описание пользовательских возможностей программирования, системы
команд, системы адресации, организации памяти и т.д. Архитектура определяет принципы
действия, информационные связи и взаимное соединение основных логических узлов
компьютера: процессора, оперативного ЗУ, внешних ЗУ и периферийных устройств.
Общность архитектуры разных компьютеров обеспечивает их совместимость с точки
зрения пользователя.
Структура компьютера - это совокупность его функциональных элементов и связей
между ними. Элементами могут быть самые различные устройства - от основных
логических узлов компьютера до простейших схем. Структура компьютера графически
представляется в виде структурных схем, с помощью которых можно дать описание
компьютера на любом уровне детализации.
Наиболее распространены следующие архитектурные решения.
· Классическая архитектура (архитектура фон Неймана) - одно арифметико-логическое
устройство (АЛУ), через которое проходит поток данных, и одно устройство управления
(УУ), через которое проходит поток команд - программа (рис. 2.1). Это
однопроцессорный компьютер.
К этому типу архитектуры относится и архитектура персонального компьютера с общей
шиной, подробно рассмотренная в разделе 2.18 (рис. 2.26). Все функциональные блоки
здесь связаны между собой общей шиной, называемой также системной магистралью.
Физически магистраль представляет собой многопроводную линию с гнездами для
подключения электронных схем. Совокупность проводов магистрали разделяется на
отдельные группы: шину адреса, шину данных и шину управления.
Периферийные устройства (принтер и др.) подключаются к аппаратуре компьютера через
специальные контроллеры - устройства управления периферийными устройствами.
Контроллер - устройство, которое связывает периферийное оборудование или каналы
связи с центральным процессором, освобождая процессор от непосредственного
управления функционированием данного оборудования.
· Многопроцессорная архитектура. Наличие в компьютере нескольких процессоров
означает, что параллельно может быть организовано много потоков данных и много
потоков команд. Таким образом, параллельно могут выполняться несколько фрагментов
одной задачи. Структура такой машины, имеющей общую оперативную память и
несколько процессоров, представлена на рис. 2.3.
· Многомашинная вычислительная система. Здесь несколько процессоров, входящих в
вычислительную систему, не имеют общей оперативной памяти, а имеют каждый свою
(локальную). Каждый компьютер в многомашинной системе имеет классическую
архитектуру, и такая система применяется достаточно широко.
Однако эффект от применения такой вычислительной системы может быть получен
только при решении задач, имеющих очень специальную структуру: она должна
разбиваться на столько слабо связанных подзадач, сколько компьютеров в системе.
Преимущество в быстродействии многопроцессорных и многомашинных вычислительных
систем перед однопроцессорными очевидно.
· Архитектура с параллельными процессорами. Здесь несколько АЛУ работают под
управлением одного УУ. Это означает, что множество данных может обрабатываться по
одной программе - то есть по одному потоку команд.
Высокое быстродействие такой архитектуры можно получить только на задачах, в
которых одинаковые вычислительные операции выполняются одновременно на
различных однотипных наборах данных.В современных машинах часто присутствуют элементы различных типов архитектурных
решений. Существуют и такие архитектурные решения, которые радикально отличаются
от рассмотренных мною.