Архитектура ЭВМ. Курс лекций Томск 2013 2 Оглавление
Скачать 1.9 Mb.
|
Шифратор. Это устройство преобразует управляющий сигнал в двоичный код (рис. 11.). … X n-1 Y n-1 полный сумматор линия переполнения С S 3 X 1 Y 1 полный сумматор С S 1 X n-2 Y n-2 полный сумматор С S 2 X 0 Y 0 C линия циклического переноса С S 0 полный сумматор X Y И НЕ C И S ИЛИ C И НЕ И ИЛИ ИЛИ 24 Рис. 11. Структура двоичного шифратора Логическая 1 на любой из вертикальных шин преобразуется в параллельный двоичный код. Например, 1 на линии Х 9 преобразуется в двоичный код 1001= (ИЛИ 1 +ИЛИ 4 )=2 3 +2 0 =9. Дешифратор. Комбинационная схема, имеющая n-входов и 2 n выходов. Реализует функцию, обратную шифрованию. При любой комбинации входных сигналов Х сигнал 1 наблюдается только на одном из выходов Y, причем комбинация значений входных сигналов рассматривается как двоичное число, определяющее номер выходного сигнала Y, который требуется установить в 1. Значения остальных выходных сигналов должны быть установлены в 0. На рис.12. изображена схема простейшего трехразрядного двоичного дешифратора. На схеме вход Х 0 соответствует 2 0 , вход X 1 - 2 1 и Х 2 - 2 2 . Эта схема может рассматриваться как преобразователь двоичного натурального кода в код "1 из n". Дешиф- раторы широко используются в схемах управления памятью. На вход дешифратора подается адрес (целое двоичное число), определяющий номер ячейки памяти, к которой требуется обращение. Это число и представляет набор значений входных переменных дешифратора. В результате на выходе дешифратора возбуждается только одна выходная линия, по которой в свою очередь инициируется работа схем управления запрошенной ячейки. № X2 X1 X0 Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y7 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 0 0 0 0 2 0 1 0 0 0 1 0 0 0 0 0 3 0 1 1 0 0 0 1 0 0 0 0 4 1 0 0 0 0 0 0 1 0 0 0 5 1 0 1 0 0 0 0 0 1 0 0 6 1 1 0 0 0 0 0 0 0 1 0 7 1 1 1 0 0 0 0 0 0 0 1 (а) Таблица состояний X 0 X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 9 ИЛИ 1 ИЛИ 3 ИЛИ 4 ИЛИ 2 2 3 2 2 2 1 2 0 25 (б) Структура и принцип подключения к регистру Рис. 12. Структура простейшего дешифратора Мультиплексор. Устройство сведения информации в одну шину. Имеет 2 n сигнальных входов X и n селектирующих (управляющих) входов S и только один выход Y. Единственный выход мультиплексора принимает значение той входной сигнальной переменной, номер которой указан набором селектирующих сигналов. Таким образом, если набор, поступающий по селективным линиям, представляет двоичное число k, то на единственном выходе появится значение входной переменной Y=Х k Демультиплексор. Устройство, производящее разделение информации по адресам назначения. Схема имеет один вход X, n селектирующих входов S и 2 n выходов Y. Действие демультиплексора прямо противоположно действию мультиплексора. Сигнал X направляется на тот выход, номер которого указан в селектирующем наборе переменных. Реализовать как мультиплексор, так и демультиплексор можно, используя дешифратор. На рис. 13. поясняется принцип действия схем. Предполагается, что исходные состояния счетчиков одинаковы, импульсы управления строго синхронны. Синхронно на выходе обоих счетчиков последовательно под влиянием входных импульсов формируются целые двухзначные двоичные числа, соответствующие десятичным числам 0, 1, 2, 3. Под воздействием комбинаций селективных сигналов S0 и S1 на выход мультиплексора последовательно будут поданы значения входных переменных Х 0 , X 1 , Х 2 и Х З . Очевидно, что на выходе дешифратора через четыре такта будет построен код, совпадающий с входным кодом мультиплексора. Интегральная схема (микросхема). Комбинационная или последовательная схема, реализованная на одном срезе кристалла кремния на основе сложного и высокоточного технологического процесса. Этот процесс включает в себя создание логически активных элементов путем внедрения в соответствующие точки кремниевой пластинки окислов редкоземельных элементов и напыления металлических площадок. Таким путем в едином технологическом процессе удается создать на поверхности кристалла диоды, транзисторы и проводники, связывающие отдельные вентили в единое целое. Т Т Т Х 2 Х 1 Х 0 Х 2 Х 1 Х 0 И И И И И И И И Y 7 =X 2 X 1 X 0 Y 6 =X 2 X 1 X 0 Y 5 =X 2 X 1 X 0 Y 4 =X 2 X 1 X 0 Y 3 =X 2 X 1 X 0 Y 2 =X 2 X 1 X 0 Y 1 =X 2 X 1 X 0 Y 0 =X 2 X 1 X 0 Регистр Дешифратор 26 Рис. 13. Мультиплексор-демультиплексор 4. ОБЩАЯ ОРГАНИЗАЦИЯ ЭВМ 4.1. Понятие архитектуры ЭВМ В широком смысле архитектурой ЭВМ называют совокупность ее свойств и характеристик, рассматриваемую с точки зрения пользователя. Под вычислительной системой (ВС) будем понимать устройство, воспринимающее информацию в виде данных, представленных в цифровой (дискретной) форме, обеспечивающее хранение данных, их переработку с большой скоростью, пересылающее данные внутри системы по линиям связи и выдающее результат этих действий как информацию, то есть в требуемой для пользователя форме. Заметим, что в отличие от цифровых, в аналоговых системах (системах непрерывного действия) данные представляются физически непрерывными величинами - чаще всего величиной электрического напряжения. Вычислительные системы, объединяющие в своем составе как цифровые, так и аналоговые устройства, называются гибридными. Пользователя вычислительной системы в первую очередь интересует ее производительность на классе задач, для решения которых вычислительная система приобретается; эта производительность, в свою очередь, во многом зависит от системы программирования (применяемого инструментария - алгоритмического языка - для записи алгоритма), операционной системы (системного программного обеспечения), состава внешних (периферийных) устройств и способов обращения к ним. Архитектурное описание вычислительной системы включает описание ее структуры и характеристик всех ресурсов (аппаратных и программных), доступных пользователю. В свою очередь структура вычислительной системы определяется описанием состава ее Дешифратор Мультиплексна я линия Демультиплексированные сигналы И И И И X 0 X 1 X 2 X 3 Демультиплексор S 0 S 1 Счетчик Генератор импульсов ИЛИ Передаваемый параллельный код X 0 X 1 X 2 X 3 Мультиплексор Генератор импульсов S 0 S 1 Счетчик Синхронные импульсы управления Дешифратор И И И И 27 функциональных устройств, связей и принципов взаимодействия блоков. В данном пособии обсуждается только аппаратный уровень вычислительной системы - структура ЭВМ и характеристики аппаратных ресурсов. 4.2 Обобщенная структурно-функциональная схема ЭВМ Решение задач на ЭВМ (вычислительный процесс) проводится по определенным правилам. Кроме исходных данных, вводимых в ЭВМ, для решения задачи необходим алгоритм , то есть совокупность точных предписаний (правил), определяющих вычислительный процесс, например, алгоритм расчета по алгебраической формуле должен указывать на правильный порядок выполнения в формуле арифметических операций. Для выполнения на ЭВМ алгоритм решения задачи должен быть представлен в виде программы - описания алгоритма на каком-либо понятном ВС формализованном языке. Эта программа определяет действия машины и последовательность их выполнения при обработке исходных данных и промежуточных результатов. Для выполнения процесса вычислений в состав ЭВМ входит ряд устройств, каждое из которых выполняет вполне определенные законченные функции, то есть является функционально-законченной частью технических средств ЭВМ. Базовая структура современных серийных ЭВМ, по существу, аналогичны структуре и основам функционирования своих предков - вычислительных машин первых поколений, сформулированных фон-Нейманом . На рис. 14. представлена обобщенная схема типичной ЭВМ. Основой ЭВМ является процессор, непосредственно осуществляющий обработку данных и управление этим процессом; в состав процессора входят: • устройство управления выборкой команд из памяти и их выполнением; • арифметико-логическое устройство, производящее операции над данными; • регистры, осуществляющие временное хранение данных и состояний процессора; • схемы для управления и связи с подсистемами памяти и ввода-вывода. Следует заметить, что наряду с процессором, осуществляющим общее управление функционированием вычислительной системы и выполнением программ (центральным процессором), в состав современных ЭВМ могут входить специализированные процессоры (например, графический процессор). Термин процессор в данном пособии обозначает только центральный процессор Оперативная память обеспечивает хранение данных и программ, обрабатываемых процессором, и подробно рассматривается в п.6.2.1 . Здесь для простоты будем считать, что процессор обрабатывает информацию (команды и данные), располагающиеся только в оперативной и ни в каких других видах памяти (например, внешней). 28 Рис. 14. Обобщенная структурная схема ЭВМ Устройства ввода обеспечивают считывание информации (программы решения задачи и исходных данных) с определенных носителей информации (клавиатур, датчиков состояний управляемых объектов и т.п.) и ее представление в форме электрических сигналов, воспринимаемых другими устройствами ЭВМ (процессором или основной памятью). Устройства вывода представляют результаты обработки информации в форме, удобной для визуального восприятия (экран дисплея, печатающие устройства, графопостроители, и т.п.). При необходимости они обеспечивают запоминание результатов на носителях, с которых эти результаты могут быть снова введены в ЭВМ для дальнейшей обработки (например, флеш-карты), или передачу результатов на исполнительные органы управления, например, робота. Внешняя память обеспечивает возможность накопления библиотек программ и данных. Внешнюю память ЭВМ образуют устройства, способные обеспечить размещение и длительное хранение большого объема информации с достаточно быстрым доступом к ней (магнитные диски, магнитные ленты, и т.п.). Замечание. Всю совокупность (парк) устройств ввода, вывода и внешней памяти называют внешними устройствами (ВУ). Устройство управления предназначено для автоматического выполнения программ в ЭВМ. Центральное устройство управления (устройство управления центрального процессора или в дальнейшем просто устройство управления) вырабатывает управляющие сигналы, необходимые для выполнения всех операций, предусмотренных системой команд, а также координирует работу всех узлов и блоков ЭВМ. В целом устройство управления реализует следующие основные функции: • производит выборку очередной команды программы; • вырабатывает последовательность управляющих сигналов для выполнения операции, заданной в команде; • определяет адрес следующей команды программы, которую необходимо выбрать и выполнить на очередном шаге работы ЭВМ. Внешняя память Устройства ввода Устройства вывода . . . Оперативная память Процессор Устройство управления Арифметико- логическое устройство Регистры … 29 Перечисленные функции определяют самый низкий уровень управления процессами в вычислительной системе. На более высоких уровнях блоки управления осуществляют взаимодействие между различными подсистемами ЭВМ и синхронизацию их работы. Стрелки и на этой схеме указывают на возможные типы операций обмена (перемещения данных между устройствами), выполняемых процессором. Возможны два типа таких операций – ввод (или чтение) и вывод (или запись). Важно различать пары взаимодействующих устройств: 1. Процессор – основная память: • чтение – перенесение (выборка) информации из памяти в процессор; • запись – перенесение данных из процессора в память. 2. Основная память – устройства ввода-вывода: • чтение – перенесение (выборка) данных из УВВ в основную память; • запись – перенесение данных из основной памяти в УВВ. 5. ПРОЦЕССОР 5.1. Команда ЭВМ Формат машинной команды – это одна из основных характеристик архитектуры центрального процессора ЭВМ. В общем виде структура команда включает два поля: Код операции Поле операндов 1. Код операции (КОП) указывает операцию, которую должна выполнить ЭВМ (сложение, вычитание, сравнение, переход и т.п.). 2. В поле операндов хранятся указатели на местоположение операндов (адреса памяти или номера (адреса) регистров); в частном случае в качестве операндов могут указываться и непосредственные значения констант. Заметим, что в простейшем случае поле операндов может отсутствовать (например, команда ОСТАНОВ); такие команды носят название безадресных. Ниже приводятся возможные форматы адресных команд (с непустым полем операндов). Замечание. В состав системы команд процессора входят команды, операндами которых не являются адреса. Принципы функционирования таких команд здесь не рассматриваются. Одноадресная команда. Структура поля операндов Схема выполнения: 1. выполняется операция, первым операндом которой является содержимое внутреннего хранилища (регистра) процессора - аккумулятора (часто называемого сумматором), вторым - содержимое ячейки памяти по адресу А; 2. результат заносится в аккумулятор. Очевидно, что, если одноадресная команда является командой перехода, адрес указывает на команду, которая изменяет последовательный ход выполнения программы. Двухадресная команда. Структура поля операндов R1 О2 R1 – адрес (номер) регистра процессора, 30 О2 – адрес регистра процессора (R2) или ячейки памяти (A2). Схема выполнения: 1. выполняется операция над операндами по адресам R1 и О2; 2. результат заносится по адресу R1 (уничтожая значение первого операнда). Замечание. В современных универсальных ЭВМ двухадресный формат является основным. Трехадресная команда. Структура поля операндов О1 О2 ОЗ Схема выполнения: 1. выполняется операция над операндами по адресам О1 и О2; 2. результат заносится по адресу ОЗ. Четырехадресная команда. Структура поля операндов О1 О2 ОЗ А4 Схема выполнения: 1. выполняется операция над операндами по адресам О1 и О2; 2. результат заносится по адресу ОЗ; 3. следующей выполняется команда, расположенная в памяти по адресу А4. 5.2. Общая структура процессора Основной состав современного процессора включает: • арифметико -логическое устройство - АЛУ, производящее операции и вырабатывающее ряд признаков (результат меньше нуля, равен нулю или больше нуля и т.п.); • регистр команд, служащий для размещения исполняемой (текущей) команды; • счетчик команд, указывающий на адрес следующей команды, которая должна быть выполнена после завершения выполнения текущей команды; содержимое счетчика команд увеличивается в момент выборки из памяти текущей исполняемой команды на ее длину или, если выбрана команда перехода, может быть заменено на адрес, указанный в адресной части команды перехода; • регистр адреса, содержащий адрес ячейки памяти, из которой будет считана команда (или операнд) или в которую требуется записать результат выполнения команды; • сумматор , используемый для размещения результата выполнения операции; • регистр флагов, хранящий признаки результата (флаги) выполнения последней операции, его вырабатывающей; эти признаки используются для организации работы команд переходов; • совокупность регистров общего назначения (РОНы) – внутренняя (локальная) память процессора. Замечание. В приведенном выше формате двухадресной команды первый (R1) и второй (R2) операнды – это номера РОНов. В простейшем случае для решения задачи на ЭВМ необходимо: 1. через устройство ввода информации загрузить (перенести) в оперативную память программу решения задачи и исходные данные; 31 2. "сообщить" процессору адрес ячейки памяти, в которой размещена первая команда программы; подобное "сообщение" реализуется занесением искомого адреса в счетчик команд; 3. инициировать процедуру передачи в подсистему памяти адреса первой команды программы и пересылки ее содержимого из памяти в регистр команд; с этого момента процессор начинает выполнять последовательность указанных в программе операций. Алгоритм выполнения команд простого процессора может быть представлен схемой на рис. 16. Как видно из схемы алгоритма, два первых действия (блоки 1 и 2) выполняются для каждой команды. Эти действия, а также действия по определению типа команды - блоки 3, 6 и 9, обычно называют "Выборкой команды". Последующие действия алгоритма ("Исполнение команды") полностью зависят от того, какая это команда. Замечание. В блоке 9 определяется два типа команд – пересылка из регистра в память (запись в память, выгрузка) или пересылка из памяти в регистр (чтение, выгрузка). Упрощенная схема взаимодействия компонентов процессора при выполнении двухадресной команды представлена на рис.17. На схеме приняты следующие условные обозначения. |