Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика 1(ВМ)+.doc
Скачиваний:
42
Добавлен:
10.06.2015
Размер:
108.54 Кб
Скачать

Принципы организации и архитектура вычислительных машин

Исследования Организации Объединенных Наций по вопросам образования, науки и культуры (UNESСO, United Nations Educational, Scientific and Cultural Organization) свидетельствуют о том, что сейчас в информационной сфере занято больше половины населения развитых стран. Основу современных информационных технологий, их базис, составляют аппаратные средства вычислительной техники. Современные вычислительные машины и системы являются одним из самых значительных достижений научной и инженерной мысли, влияние которого на прогресс во всех областях человеческой деятельности трудно переоценить. В связи с этим, понимание фундаментальных основ построения, структуры аппаратных средств вычислительной машины, ее программной модели является важнейшей задачей дисциплины «Информатика».

Понятие архитектуры вычислительной машины. Современная интерпретация принципов Неймана

Рассмотрение общих принципов построения и функционирования вычислительных машин (ВМ) предварим определением термина архитектура. Архитектура вычислительной машины – это ее абстрактное представление, которое отображает ее структурную, схемотехническую и логическую организацию. Понятие архитектуры является комплексными и включает в себя следующие составляющие:

• структурную схему – состав компонентов вычислительной машины и связей между ними;

• средства и способы доступа к элементам структурной схемы – совокупность элементов, предназначенных для организации взаимодействия между компонентами ВМ и ее внешним аппаратным окружением и получивших обобщенное название интерфейсов;

• организация и разрядность интерфейсов – состав аппаратных средств интерфейсов, принципы их функционирования, алгоритмы и протоколы передачи сообщений между компонентами ВМ;

• организацию и способы адресации памяти – методы схемотехнического построения и принципы функционирования совокупности отдельных элементов хранения данных и способ программного логического доступа к этим элементам;

• способы представления и форматы данных – методы интерпретация последовательности двоичных состояний, хранимых в элементах памяти ВМ, как элементов данных различных видов (целые числа, действительные числа, строки символов), над которыми выполняется последовательность арифметико-логических и других операций;

• набор и формат машинных команд – совокупность двоичных кодов, интерпретируемых вычислителем (микропроцессором) в качестве операций, которым соответствуют некоторые вычислительные действия;

• средства инициализации – аппаратная подсистема предназначенная выполнения действий по приведению всех компонентов ВМ в начальное непротиворечивое состояние.

Все современные вычислительные машины обладают как общими, так и индивидуальными свойствами архитектуры. Наличие общих архитектурных свойств обусловлено тем, что большинство типов существующих ВМ принадлежат к 5-му или 6-му поколениям машин, в которых реализуется называемая фон-неймановской архитектуры.

Основополагающей концепцией построения ВМ этой архитектуры является концепция машины с хранимой в памяти программой. Согласно этой концепции код программы и её данные находятся в едином адресном пространстве основной (оперативной) памяти (memory). Фундаментальная идея создания вычислительной машины с подобной архитектурной принадлежит создателям вычислителя ENIAC (Electronic Numerical Integrator and Calculator) Джону Пресперту Эккерту, Джону Уильяму Мочли, а также ученому математику Яношу (Джону) фон Нейману. Главной особенностью этого проекта стало техническое решение при котором коды и данные программы хранятся в единой памяти ВМ. Эта идея на долгие годы определила базовые принципы построения последующих поколений ВМ. Поскольку в законченном виде идея впервые была сформулирована в 1946 году фон Нейманом, поэтому именно фон Нейман известен как праотец современной архитектуры.

В основе архитектуры современных ВМ также лежит понятие алгоритма решения задачи в виде программы – последовательных вычислений, когда инструкции, воплощающие некоторые вычислительные действия выбираются на исполнение устройством управления последовательно, а естественный порядок исполнения может изменяться специальными инструкциями программы.

Сущность фон-неймановской концепции ВМ можно свести к нескольким принципам:

• принцип двоичного кодирования – согласно этому принципу, вся информация, как данные так и команды, кодируется двоичными цифрами 0 и 1. Аналогично десятичной системе счисления двоичная принадлежит к классу позиционных систем. Каждый символ из алфавита двоичной системы счисления в записи числа имеет свой вес в соответствии с его позицией. Наибольший вес имеет символ записанный слева (старший разряд), наименьший вес – символ справа (младший разряд). Например, двоичному числу 101110 соответствует десятичное число 1011102 = 1·25 + 0·24 + 1·23 + 1·22 + 1·21 + 0·20 = 4610. В соответствии с принципом построения позиционных систем счисления полученное десятичное число может быть записано через основание этой системы в следующем виде: 4610 = 4·101 + 6·100. Причиной, по которой в фон-неймановских машинах реализован принцип двоичного кодирования является то, что для физического представления информации используются электронные ключи, способные находится в двух устойчивых состояниях, каждое из которых соответствует одному из символов алфавита двоичной системы. Такие ключи в машинах первого поколения были реализованы на базе ферромагнитных сердечников, в машинах второго поколения на основе вакуумных триодов, третьего поколения – полупроводниковых дискретных транзисторах, а в более старших поколениях с использованием интегральных полупроводниковых элементов.

Несмотря на физическую неразличимость последовательностей двоичных разрядов информация представляемая ими по-разному интерпретируется ВМ. Каждый тип информации имеет свой формат. Это могут быть данные, над которыми ВМ производит вычислительные действия или коды команд, представляющие эти действия.

Вообще, последовательность битов, имеющая определенный смысл для ВМ называется полем. В числовой информации обычно выделяют поле знака и поле значащих цифр. В формате команды, как правило, выделяются два поля: поле кода операции (КОП) и поле операндов. Код операции непосредственно представляет собой указание на то, какая операция должна быть выполнена, и задается с помощью r-разрядной двоичной комбинации. Поле операнда указывает на те данные, над которыми будет вычислительное действие, соответствующее полю кода операции, и может содержать непосредственные данные или адрес некоторой другой ячейки, которая хранит эти данные. Поле операндов зависит от типа команды (вычислительная команда, команда изменяющая порядок вычислений, команда ввода/вывода). Поле операндов также представляется двоичной последовательностью, длина которой р.

• принцип микропрограммирования этот принцип сводится к тому, что машинный язык, т.е. двоичные последовательности команд, не является конечной субстанцией, которая физически приводит в действие процессы в машине. В состав процессора входит блок микропрограммного управления, основная функция которого состоит в приведении в соответствие кода операции и набора действий-сигналов необходимых для физического выполнения требуемой операции. Коды команд, совокупность которых составляют некоторую программу вычислительных действий ВМ, только лишь представляют эти действия в числовой виде, по другому говоря, кодируя их, тогда как физические действия вычислителя сводятся к формированию большой совокупности электрических сигналов, которыми обмениваются компоненты вычислительной машины для реализации этих вычислительных действий.

• принцип программного управления – все вычисления, предусмотренные алгоритмом решения задачи, должны быть представлены в виде программы, состоящей из последовательности управляющий слов – команд. Каждая команда предписывает некоторую операцию из набора операций, реализуемых вычислительной машиной. Такой набор допустимых ВМ команд называется ее системой команд. Команды программы хранятся в последовательных ячейках памяти ВМ и выполняются в естественной последовательности, т.е. в порядке их расположения в программе. При необходимости с помощью специализированных команд (команд передачи управления) естественный порядок может быть изменен. Решение об изменении порядка выполнения команд программы принимается либо на основании анализа результатов предшествующих операций, либо безусловно.

• принцип однородности памяти – память представляет собой совокупность одинаковых и неотличимых ячеек памяти, которым присваивается линейная последовательность номеров или адресов (addresses).

Одна ячейка представляет собой набор из 8 устойчивых состояний, каждое из которых принято называть битом (bit) информации. Информационный объем одной ячейки памяти равный 8 битам получил название байта (byte). Для представления данных и команд большего размера могут использоваться последовательности из 2 байтов, называемые двоичным словом (word). Для представления больших объемов информации используются такие единицы измерения как 1килобайт равный 1024 (210) байтам, 1 мегабайт равный 1024 килобайтам (220 байт) и наконец 1 гигабайт равный 1024 мегабайтам (230 байт).

Команды и данные хранятся в одной и той же памяти, внешне неразличимы и распознать их можно только по способу использования. Это позволяет производить над командами те же операции, что и над числами, и открывает ряд дополнительных возможностей для машин фон-неймановской архитектуры, в частности самомодификацию программного кода для реализации полиморфного поведения программы. Наиболее полезной возможностью является, то что в результате принципа однородности команды одной программы могут быть получены как результат исполнения другой программы. Эта возможность лежит в основе трансляции (translation)– перевода текста программы с языка высокого уровня на язык конкретной ВМ cо специфичной аппаратно-зависимой системой команд.

• принцип адресности – структурно основная память состоит из пронумерованных ячеек, причем процессору в произвольный момент доступна любая ячейка. Такая память также называется памятью произвольного доступа (random access memoryRAM), которую отличает от памяти с последовательным или индексно-последовательным доступом, что содержимое любой ячейки доступно без предварительно обращения к предыдущей ячейки. Напротив, в памяти последовательного типа, примером которой является память на магнитной ленте (стример) для обращения к некоторой ячейке, должны быть просмотрены все предыдущие. Тогда как в индексно-последовательной (магниторезистивные накопители, «жесткие» диски) требуют предварительного доступа к специальной структуре, хранящей указатели на физическое расположение той или иной ячейки.

Адрес выбираемой для операции чтения или записи ячейки памяти произвольного доступа формируется в виде логических состояний сигналов на специальной группе выводов ВМ, которую условно называют адресной шиной (address bus). В простейшем случае число проводников этой шины определяет число доступных ячеек или другими словами объем адресуемой памяти.

• принцип логического разделения данных и команд – поскольку физической точки зрения нет принципиальной разницы между данными и командами, поэтому в фон-неймановских машинах должны быть реализованы специальные адресные механизмы позволяющие четко разделить пространство данных и команд. Фундаментальным логическим адресным механизмом, который реализован в большинстве современных ВМ данной архитектуры является сегментация (segmentation). В результате действия этого механизма код программы и его данные размещаются в отдельных изолированных адресных пространствах логических (не физических) адресов, которые называются сегментами.