Понятие архитектуры вычислительной машины
Под организацией ВМ понимают состав ее программно – аппаратных средств, связи между ними и их функциональные характеристики. ВМ имеют многоуровневую иерархическую организацию со многими составными компонентами на каждом уровне. С нижним уровнем функционального описания ВМ связано понятие физической организации ВМ – ее принципиальная схема.
Логическая организация относится к более высоким уровням описания ВМ. Например, логическая организация на уровне аппаратуры – это состав, функциональные связи и характеристики взаимодействия аппаратных модулей в процессе решения различных задач. Логическая организация системы может описываться, например, структурной схемой.
Архитектура ВМ – это функциональные возможности аппаратных средств ВМ, используемых для представления программ и данных, а также для управления процессом вычислений /2,3,5/. Понятие архитектуры ВМ охватывает комплекс общих вопросов ее построения, существенных для пользователя, интересующегося возможностями системы. Понятие архитектуры ВМ отражает:
· характеристики и состав функциональных модулей базовой конфигурации и принципы организации их взаимодействия;
· организацию вычислительного процесса и взаимодействие ВМ с внешней средой (управляющие сигналы, система прерываний);
· структуры МП, устройств памяти и периферийных устройств (ПУ);
· систему команд, форматы данных и команд, способы адресации и т.п.
Рассмотрим основные типы архитектур /5,6/.В большинстве современных ВМ для хранения программ и данных используется одно пространство памяти. Такая организация получила название архитектуры Дж. фон Неймана – по имени специалиста по управлению, предложившего кодирование программ в формате, соответствующем формату данных. Программы и данные хранятся в едином пространстве, и нет никаких признаков, указывающих на тип информации в ячейке памяти. Содержимое ячейки интерпретируется оператором обработки, в качестве которого в простейшем случае выступает центральный процессор системы.
Однако почти все однокристальные ВМ, представляющие класс однокристальных программируемых микроконтроллеров, выполнены по другой схеме, известной как архитектура Гарвардской лаборатории, в которой память программ CSEG (Code Segment) и память данных DSEG (Data Segment) разделены и имеют свои собственные адресные пространства и способы доступа к ним /7/. Такое разделение, позволившее реализовать компактно кодируемый набор машинных команд и экономно использовать память программ, было применено при разработке однокристальных микроконтроллеров первых типов, имеющих всего лишь несколько Кбайт (К=210 байт) управляющей памяти, расположенной на кристалле.
Дальнейшее совершенствование архитектур обоих типов состояло в выделении специального пространства данных небольшого объема, которое сегодня известно как набор программно – доступных регистров RSEG (Register Segment). В отличие от CSEG или DSEG, регистры RSEG располагаются внутри ЦП в непосредственной близости от его арифметическо–логического устройства (АЛУ), что обеспечивает быстрый физический доступ к информации, хранящейся в них. В некоторые интервалы времени программа наиболее интенсивно работает лишь с небольшим объемом данных. Для временного хранения этих данных и предназначена регистровая область – набор программно – доступных регистров.
Область RSEG может быть как полностью изолирована от пространства данных DSEG, так и частично пересекаться с ним, что дает возможность рассматривать отдельные регистры МП как обычные ячейки памяти данных. Такая организация является целесообразной, если в ВМ поддерживается быстрый доступ ко всей или хотя бы некоторой части памяти данных DSEG.
Почти все современные ВМ имеют регистровые области независимо от того, к какому типу они принадлежат - неймановскому или гарвардскому. Внутренняя логическая организация RSEG очень разнообразна и играет определяющую роль в классификации архитектур. Пока отметим в ее составе лишь один регистр РС (Program Counter), который называется программным счетчиком. Данный регистр является неотъемлемой частью всех ВМ и связан с адресацией памяти программ. Именно он служит указателем следующего элемента программной последовательности, подлежащей выборке и исполнению.
Система ввода-вывода (ВВ) в простейшем случае представляет набор адресуемых буферных схем и регистров (портов), через которые осуществляется связь с внешними и внутренними аппаратными средствами ВМ. Система ВВ обычно использует единый механизм адресации портов, размещенных в специальном пространстве ВВ микросистемы IOSEG (Input/Output Segment), логически изолированном от других пространств данных, - изолированный ВВ. ВМ с изолированным ВВ имеют специальные наборы команд ВВ.
В некоторых вычислительных устройствах логически изолированное пространство ВВ может отсутствовать. В этом случае в пространстве памяти данных DSEG выделяются области, в которых и размещаются порты, - совмещенный ВВ. Организация доступа к портам в таких ВМ ничем не отличается от процесса записи – считывания данных в память.
На рис. 1.1. представлены четыре типовых набора областей для хранения программ и данных. Стрелкой указан процесс изоляции отдельных областей, приводящий к появлению нового типового набора. Все наборы существуют реально, на их основе созданы те или иные серии микропроцессорных БИС. Каждый тип организации имеет свои преимущества и недостатки, учет которых позволяет создавать высокоэффективные системы различного применения.
Рассмотрим организацию пространств памяти и ввода – вывода. В отличие от RSEG память программ CSEG и данных DSEG, а также область ВВ IOSEG организованы проще. В ряде случае память ВМ с точки зрения программиста представляет собой линейно упорядоченный набор n – разрядных ячеек с произвольным доступом – линейная память. Каждой ячейке набора соответствует число, называемое ее адресом. Все адреса занимают целочисленный диапазон от 0 до 2m – 1, который образует адресное пространство памяти. Разрядность адреса m обычно равна 16, 18, 20, 24, 32 или 36. В тех случаях, когда наименьшая адресуемая единица – байт (n = 8), память имеет байтовую организацию.
Одним из простейших примеров ВМ с памятью линейной организации байтового типа является 8 – разрядная система на базе первого МП i8080 (КР580ВМ80). Команды этого МП выполняют обращение к пространству памяти емкостью 216 = 64К байт. Нумерация отдельных разрядов в ячейке памяти производится справа налево начиная с нуля, при этом разряд с нулевым номером является младшим.
При необходимости хранящиеся в памяти программные объекты команды и операнды (данные к командам) могут располагаться в соседних ячейках пространства памяти. Адресом объекта обычно служит наименьший из адресов ячеек, занимаемых им. Операция обращения к памяти предполагает считывание или запись всего объекта как единого целого. Например, слова в памяти МС на базе МП i8080 (КР580ВМ80) хранятся в двух соседних байтах. Старшая часть слова занимает байт со старшим адресом, а младшая – байт с младшим адресом. При этом адрес младшего байта служит адресом слова.
Память большинства 16 – и 32 – разрядных ВМ также имеет байтовую организацию. Так, нижний уровень логического представления памяти МП i8086 (КР580ВМ86) емкостью 1 Мбайт (М = 220) аналогичен рассмотренному выше. Однако в данном МП существует более высокий уровень организации памяти –логический, на котором в основном и работает программист.
Дата добавления: 2016-06-13; просмотров: 1306;