Инструкции Обзоры  Новости

Принципы джона фон нейман. поколения эвм

Джон фон Нейман уже в восьмилетнем возрасте владел основами высшей математики и несколькими иностранными и классическими языками. Закончив в 1926 году Будапештский университет, фон Нейман преподавал в Германии, а в 1930 году эмигрировал в США и стал сотрудником Принстонского института перспективных исследований.

В 1944 году фон Нейман и экономист О. Моргенштерн написали книгу «Теория игр и экономическое поведение». Эта книга содержит не только математическую теорию игр, но ее применения к экономическим, военным и другим наукам. Джон фон Нейман был направлен в группу разработчиков ENIAC консультантом по математическим вопросам, с которыми встретилась эта группа.

В 1946 году вместе с Г. Гольдстейном и А. Берксом он написал и выпустил отчет «Предварительное обсуждение логической конструкции электронной вычислительной машины». Поскольку имя фон Неймана как выдающегося физика и математика было уже хорошо известно в широких научных кругах, все высказанные положения в отчете приписывались ему. Более того, архитектура первых двух поколений ЭВМ с последовательным выполнением команд в программе получила название «фон Неймановской архитектуры ЭВМ».

1. Принцип программного управления

Этот принцип обеспечивает автоматизацию процессов вычислений на ЭВМ.

Программа состоит из набора команд, которые выполняются процессором автоматически друг за другом в определенной последовательности. Выборка программы из памяти осуществляется с помощью счетчика команд. Этот регистр процессора последовательно увеличивает хранимый в нем адрес очередной команды на длину команды. Так как команды программы расположены в памяти друг за другом, то тем самым организуется выборка цепочки команд из последовательно расположенных ячеек памяти. Если же нужно после выполнения команды перейти не к следующей, а к какой-то другой, используются команды условного или безусловного переходов, которые заносят в счетчик команд номер ячейки памяти, содержащей следующую команду. Выборка команд из памяти прекращается после достижения и выполнения команды “стоп”. Таким образом, процессор исполняет программу автоматически, без вмешательства человека


2. Принцип однородности памяти

Отсутствие принципиальной разницы между программой и данными дало возможность ЭВМ самой формировать для себя программу в соответствии с результатом вычислений.

Программы и данные хранятся в одной и той же памяти. Поэтому компьютер не различает, что хранится в данной ячейке памяти - число, текст или команда. Над командами можно выполнять такие же действия, как и над данными. Это открывает целый ряд возможностей. Например, программа в процессе своего выполнения также может подвергаться переработке, что позволяет задавать в самой программе правила получения некоторых ее частей (так в программе организуется выполнение циклов и подпрограмм). Более того, команды одной программы могут быть получены как результаты исполнения другой программы. На этом принципе основаны методы трансляции - перевода текста программы с языка программирования высокого уровня на язык конкретной машины.

3. Принцип адресности

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

Фон Нейман описал, каким должен быть компьютер, чтобы он был универсальным и удобным средством для обработки информации . Он прежде всего должен иметь следующие устройства:

    Арифметическо-логическое устройство, которое выполняет арифметические и логические операции Устройство управления, которое организует процесс выполнения программ Запоминающее устройство для хранения программ и данных Внешние устройства для ввода-вывода информации.

Компьютеры, построенные на этих принципах, относят к типу фон-неймановских.

На сегодняшний день это подавляющие большинство компьютеров, в том числе и IBM PC – совместимые. Но есть и компьютерные системы с иной архитектурой – например системы для параллельных вычислений.

Магистрально-модульный принцип построения ЭВМ

Под архитектурой компьютера понимается его логическая организация, структура, ресурсы, т. е. средства вычислительной системы. Архитектура современных ПК основана на магистрально-модульном принципе.

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

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

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


Разрядность шины данных задается разрядностью процессора, т. е. количеством двоичных разрядов, которые процессор обрабатывает за один такт.

Данные по шине данных могут передаваться как от процессора к какому-либо устройству, так и в обратную сторону, т. е. шина данных является двунаправленной. К основным режимам работы процессора с использованием шины передачи данных можно отнести следующие: запись/чтение данных из оперативной памяти и из внешних запоминающих устройств, чтение данных с устройств ввода, пересылка данных на устройства вывода.

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

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

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

Чтобы устройства, входящие в состав компьютера, могли взаимодействовать с центральным процессором, в IBM-совместимых компьютерах предусмотрена система прерываний (Interrupts). Система прерываний позволяет компьютеру приостановить текущее действие и переключиться на другие в ответ на поступивший запрос, например, на нажатие клавиши на клавиатуре. Ведь с одной стороны, желательно, чтобы компьютер был занят возложенной на него работой, а с другой - необходима его мгновенная реакция на любой требующий внимания запрос. Прерывания обеспечивают немедленную реакцию системы.

Прогресс компьютерных технологий идет семимильными шагами. Каждый год появляются новые процессоры, платы, накопители и прочие периферийные устройства. Рост потенциальных возможностей ПК и появление новых более производительных компонентов неизбежно вызывает желание модернизировать свой компьютер. Однако нельзя в полной мере оценить новые достижения компьютерной технологии без сравнения их с существующими стандартами.

Разработка нового в области ПК всегда базируется на старых стандартах и принципах. Поэтому знание их является основополагающим фактором для (или против) выбора новой системы.

В состав ЭВМ входят следующие компоненты :

    центральный процессор (CPU); оперативная память (memory);
    устройства хранения информации (storage devices);
    устройства ввода (input devices);
    устройства вывода (output devices);
    устройства связи (communication devices).

· использование двоичной системы для представления чисел. В работе фон Неймана продемонстрированы преимущества двоичной системы для технической реализации, удобство выполнения арифметических и логических операций. В дальнейшем стали обрабатывать нечисловые виды информации: текстовую, графическую, звуковую и т.д. Двоичное кодирование- основа современного компьютера.

· принципы «хранимой программы». Программа, записанная с помощью двоичных кодов, должна храниться в той же самой памяти, что и обрабатываемые данные.

· принцип адресности. Команды и данные перемещаются в ячейки памяти доступ к котором осуществляется по адресу. Адресом ячейки является ее ее номер, местонахождение информации в ОЗУ так же кодируется в виде двоичных систем.

В ЭВМ по принципу фон Неймана происходит последовательное считывание команд из памяти и их выполнение. Номер (адрес) очередной ячейки памяти из которой извлечена команда программы формируется и хранится в специальном устройстве счетчике команд.

В соответствии с принципами фон Неймана компьютер должен иметь в составе следующие устройства:

· Арифметико-логическое устройство (АЛУ) предназначено для обработки закодированной информации и может выполнять арифметические и логические операции:;

· Устройство управление (УУ) организует выполнение программ;

· Память или запоминающее устройство (ЗУ)- хранение программ и данных. Память компьютера состоит из некоторого количества пронумерованных ячеек. В каждой из них могут находиться обрабатываемы данные или инструкции программ;

· Внешние устройства для ввода и вывода информации, обеспечивают прямую и обратную связь.

Рассмотрим состав и назначение основных блоков ПК (рис. 2).

Рис. 2. Структурная схема персонального компьютера

Микропроцессор (МП). Это центральный блок ПК, предназначенный для управления работой всех блоков машины и для выполнения арифметических и логических операций над информацией.

В состав микропроцессора входят:

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

§ арифметико-логическое устройство (АЛУ) – предназначено для выполнения всех арифметических и логических операций над числовой и символьной информацией (в некоторых моделях ПК для ускорения выполнения операций к АЛУ подключается дополнительный математический сопроцессор);

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

§ интерфейсная система микропроцессора – реализует сопряжение и связь с другими устройствами ПК; включает в себя внутренний интерфейс МП, буферные запоминающие регистры и схемы управления портами ввода-вывода (ПВВ) и системной шиной. Интерфейс (interface) – совокупность средств сопряжения и связи устройств компьютера, обеспечивающая их эффективное взаимодействие. Порт ввода-вывода (I/O – Input/Output port) – аппаратура сопряжения, позволяющая подключить к микропроцессору другое устройство ПК.

Генератор тактовых импульсов. Он генерирует последовательность электрических импульсов; частота генерируемых импульсов определяет тактовую частоту машины.

Промежуток времени между соседними импульсами определяет время одного такта работы машины или просто такт работы машины.

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

Системная шина. Это основная интерфейсная система компьютера, обеспечивающая сопряжение и связь всех его устройств между собой.

Системная шина включает в себя:

§ кодовую шину данных (КШД), содержащую провода и схемы сопряжения для параллельной передачи всех разрядов числового кода (машинного слова) операнда;

§ кодовую шину адреса (КША), включающую провода и схемы сопряжения для параллельной передачи всех разрядов кода адреса ячейки основной памяти или порта ввода-вывода внешнего устройства;

§ кодовую шину инструкций (КШИ), содержащую провода и схемы сопряжения для передачи инструкций (управляющих сигналов, импульсов) во все блоки машины;

§ шину питания, имеющую провода и схемы сопряжения для подключения блоков ПК к системе энергопитания.

Системная шина обеспечивает три направления передачи информации:

1) между микропроцессором и основной памятью;

2) между микропроцессором и портами ввода-вывода внешних устройств;

3) между основной памятью и портами ввода-вывода внешних устройств (в режиме прямого доступа к памяти).

Все блоки, а точнее их порты ввода-вывода, через соответствующие унифицированные разъемы (стыки) подключаются к шине единообразно: непосредственно или через контроллеры (адаптеры). Управление системной шиной осуществляется микропроцессором либо непосредственно, либо, что чаще, через дополнительную микросхему – контроллер шины, формирующий основные сигналы управления. Обмен информацией между внешними устройствами и системной шиной выполняется с использованием ASCII-кодов.

Основная память (ОП). Она предназначена для хранения и оперативного обмена информацией с прочими блоками машины. ОП содержит два вида запоминающих устройств: постоянное запоминающее устройство (ПЗУ) и оперативное запоминающее устройство (ОЗУ).

ПЗУ служит для хранения неизменяемой (постоянной) программной и справочной информации, позволяет оперативно только считывать хранящуюся в нем информацию (изменить информацию в ПЗУ нельзя).

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

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

Назначение этих накопителей – хранение больших объемов информации, запись и выдача хранимой информации по запросу в оперативное запоминающее устройство. Различаются НЖМД и НГМД лишь конструктивно, объемами хранимой информации и временем поиска, записи и считывания информации.

В качестве устройств внешней памяти используются также запоминающие устройства на кассетной магнитной ленте (стриммеры), накопители на оптических дисках (CD-ROM – Compact Disk Read Only Memory – компакт-диск с памятью, только читаемой) и др. (см. подразд. 4.4).

Источник питания. Это блок, содержащий системы автономного и сетевого энергопитания ПК.

Таймер. Это внутримашинные электронные часы, обеспечивающие при необходимости автоматический съем текущего момента времени (год, месяц, часы, минуты, секунды и доли секунд). Таймер подключается к автономному источнику питания – аккумулятору и при отключении машины от сети продолжает работать.

Внешние устройства (ВУ). Это важнейшая составная часть любого вычислительного комплекса. Достаточно сказать, что по стоимости ВУ иногда составляют 50 - 80% всего ПК. От состава и характеристик ВУ во многом зависят возможность и эффективность применения ПК в системах управления и в народном хозяйстве в целом.

ВУ ПК обеспечивают взаимодействие машины с окружающей средой: пользователями, объектами управления и другими ЭВМ. ВУ весьма разнообразны и могут быть классифицированы по ряду признаков. Так, по назначению можно выделить следующие виды ВУ:

§ внешние запоминающие устройства (ВЗУ) или внешняя память ПК;

§ диалоговые средства пользователя;

§ устройства ввода информации;

§ устройства вывода информации;

§ средства связи и телекоммуникации.

Диалоговые средства пользователя включают в свой состав видеомониторы (дисплеи), реже пультовые пишущие машинки (принтеры с клавиатурой) и устройства речевого ввода-вывода информации.

Видеомонитор (дисплей) – устройство для отображения вводимой и выводимой из ПК информации (см. подразд. 4.5).

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

Устройства речевого вывода – это различные синтезаторы звука, выполняющие преобразование цифровых кодов в буквы и слова, воспроизводимые через громкоговорители (динамики) или звуковые колонки, подсоединенные к компьютеру.

К устройствам ввода информации относятся:

§ клавиатура – устройство для ручного ввода числовой, текстовой и управляющей информации в ПК (см. подразд. 4.5);

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

§ сканеры (читающие автоматы) – для автоматического считывания с бумажных носителей и ввода в ПК машинописных текстов, графиков, рисунков, чертежей; в устройстве кодирования сканера в текстовом режиме считанные символы после сравнения с эталонными контурами специальными программами преобразуются в коды ASCII, а в графическом режиме считанные графики и чертежи преобразуются в последовательности двухмерных координат (см. подразд. 4.5);

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

§ сенсорные экраны – для ввода отдельных элементов изображения, программ или команд с полиэкрана дисплея в ПК.

К устройствам вывода информации относятся:

§ принтеры – печатающие устройства для регистрации информации на бумажный носитель (см. подразд. 4.5);

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

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

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

Многие из названных выше устройств относятся к условно выделенной группе – средствам мультимедиа.

Средства мультимедиа (multimedia – многосредовость) – это комплекс аппаратных и программных средств, позволяющих человеку общаться с компьютером, используя самые разные, естественные для себя среды: звук, видео, графику, тексты, анимацию и др.

К средствам мультимедиа относятся устройства речевого ввода и вывода информации; широко распространенные уже сейчас сканеры (поскольку они позволяют автоматически вводить в компьютер печатные тексты и рисунки); высококачественные видео- (video-) и звуковые (sound-) платы, платы видеозахвата (videograbber), снимающие изображение с видеомагнитофона или видеокамеры и вводящие его в ПК; высококачественные акустические и видеовоспроизводящие системы с усилителями, звуковыми колонками, большими видеоэкранами. Но, пожалуй, еще с большим основанием к средствам мультимедиа относят внешние запоминающие устройства большой емкости на оптических дисках, часто используемые для записи звуковой и видеоинформации.

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

Таким образом, CD-ROM открывает доступ к огромным объемам разнообразной и по функциональному назначению, и по среде воспроизведения информации, записанной на компакт-дисках.

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

Математический сопроцессор широко используется для ускоренного выполнения операций над двоичными числами с плавающей запятой, над двоично-кодированными десятичными числами, для вычисления некоторых трансцендентных, в том числе тригонометрических, функций. Математический сопроцессор имеет свою систему команд и работает параллельно (совмещено во времени) с основным МП, но под управлением последнего. Ускорение операций происходит в десятки раз. Последние модели МП, начиная с МП 80486 DX, включают сопроцессор в свою структуру.

Контроллер прямого доступа к памяти освобождает МП от прямого управления накопителями на магнитных дисках, что существенно повышает эффективное быстродействие ПК. Без этого контроллера обмен данными между ВЗУ и ОЗУ осуществляется через регистр МП, а при его наличии данные непосредственно передаются между ВЗУ и ОЗУ, минуя МП.

Сопроцессор ввода-вывода за счет параллельной работы с МП значительно ускоряет выполнение процедур ввода-вывода при обслуживании нескольких внешних устройств (дисплей, принтер, НЖМД, НГМД и др.); освобождает МП от обработки процедур ввода-вывода, в том числе реализует и режим прямого доступа к памяти.

Важнейшую роль играет в ПК контроллер прерываний.

Прерывание – временный останов выполнения одной программы в целях оперативного выполнения другой, в данный момент более важной (приоритетной) программы

Прерывания возникают при работе компьютера постоянно . Достаточно сказать, что все процедуры ввода-вывода информации выполняются по прерываниям, например, прерывания от таймера возникают и обслуживаются контроллером прерываний 18 раз в секунду (естественно, пользователь их не замечает).

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

Государственное образовательное учреждение

высшего профессионального образования Тюменской области

ТЮМЕНСКАЯ ГОСУДАРСТВЕННАЯ АКАДЕМИЯ

МИРОВОЙ ЭКОНОМИКИ, УПРАВЛЕНИЯ И ПРАВА

Кафедра математики и информатики

по дисциплине

«ВЫЧИСЛИТЕЛЬНЫЕ СИСТЕМЫ, СЕТИ И ТЕЛЕКОМУНИКАЦИИ»

«ПРИНЦИПЫ ФОН НЕЙМАНА»

1. Введение………………………………………………………………....2

2. Основные принципы архитектуры Джона фон Неймана…………….3

3. Структура ЭВМ…………………………………………………………3

4. Как работает машина Джона фон Неймана…………………………...4

5. Заключение……………………………………………………………...6

Список литературы………………………………………………………...8


Введение

С середины 60-х годов очень сильно изменился подход к созданию вычислительных машин. Вместо разработки аппаратуры и средств математического обеспечения стала проектироваться система, состоящая из синтеза аппаратных (hardware) и программных (software) средств. При этом на главный план выдвинулась концепция взаимодействия. Так возникло новое понятие - архитектура ЭВМ.

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

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

Архитектуру вычислительного средства необходимо отличать от структуры, так как структура вычислительного средства определяет его текущий состав на определенном уровне детализации и описывает связи внутри средства. Архитектура же определяет основные правила взаимодействия составных элементов вычислительного средства, описание которых выполняется в той мере, в какой необходимо для формирования правил взаимодействия. Она устанавливает не все связи, а только наиболее необходимые, которые должны быть известны для более грамотного использования применяемого средства.

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

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

Основы учения об архитектуре вычислительных машин были заложены Джон фон Нейманом. Совокупность этих принципов породила классическую (фон-неймановскую) архитектуру ЭВМ.

Основные принципы архитектуры Джона фон Неймана

Джон фон Нейман (1903 – 1957) – американский математик, внесший большой вклад в создание первых ЭВМ и разработку методов их применения. Именно он заложил основы учения об архитектуре вычислительных машин, подключившись к созданию первой в мире ламповой ЭВМ ENIAC в 1944 году, когда ее конструкция была уже выбрана. В процессе работы, во время многочисленных дискуссий со своими коллегами Г.Голдстайном и А.Берксом, Джон фон Нейман высказал идею принципиально новой ЭВМ. В 1946 году ученые изложили свои принципы построения вычислительных машин в ставшей классической статье «Предварительное рассмотрение логической конструкции электронно-вычислительного устройства». С тех пор прошло более полувека, но выдвинутые в ней положения сохраняют свою актуальность и сегодня.

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

Еще одной революционной идеей, значение которой трудно переоценить, является предложенный Нейманом принцип «хранимой программы». Первоначально программа задавалась путем установки перемычек на специальной коммутационной панели. Это было весьма трудоемким занятием: например, для изменения программы машины ENIAC требовалось несколько дней, в то время как собственно расчет не мог продолжаться более нескольких минут – выходили из строя лампы, которых было огромное количество. Нейман первым догадался, что программа может также храниться в виде набора нулей и единиц, причем в той же самой памяти, что и обрабатываемые ею числа. Отсутствие принципиальной разницы между программой и данными дало возможность ЭВМ самой формировать для себя программу в соответствии с результатами вычислений.

Структура ЭВМ

Джон фон Нейман не только выдвинул основополагающие принципы логического устройства ЭВМ, но и предложил ее структуру, которая воспроизводилась в течение первых двух поколений ЭВМ. Основными блоками по Нейману являются устройство управления (УУ) и арифметико-логическое устройство (АЛУ), обычно объединяемые в центральный процессор, в который также входит набор регистров общего назначения (РОН) – для промежуточного хранения информации в процессе ее обработки; память, внешняя память, устройства ввода и вывода. Следует отметить, что внешняя память отличается от устройств ввода и вывода тем, что данные в нее заносятся в виде, удобном компьютеру, но недоступном для непосредственного восприятия человеком.

Архитектура ЭВМ, построенная на принципах Джон фон Неймана.

Сплошные линии со стрелками указывают направление потоков информации, пунктирные – управляющих сигналов.

Как работает машина Джона фон Неймана

Теперь более подробно поговорим о том, как же работает машина построенная на данной архитектуре. Машина фон Неймана состоит из запоминающего устройства (памяти) – ЗУ, арифметико-логического устройства – АЛУ, устройства управления – УУ, а также устройств ввода и вывода, что видно их схемы и о чем говорилось ранее.

Программы и данные вводятся в память из устройства ввода через арифметико-логическое устройство. Все команды программы записываются в соседние ячейки памяти, а данные для обработки могут содержаться в произвольных ячейках. У любой программы последняя команда должна быть командой завершения работы.

Команда состоит из указания, какую операцию следует выполнить и адресов ячеек памяти, где хранятся данные, над которыми следует выполнить указанную операцию, а также адреса ячейки, куда следует записать результат, если его требуется сохранить в ЗУ.

Арифметико-логическое устройство выполняет указанные командами операции над указанными данными. Из него результаты выводятся в память или устройство вывода.

Управляющее устройство (УУ) управляет всеми частями компьютера. От него на другие устройства поступают сигналы «что делать», а от других устройств УУ получает информацию об их состоянии. Оно содержит специальный регистр (ячейку), который называется «счетчик команд». После загрузки программы и данных в память в счетчик команд записывается адрес первой команды программы, а УУ считывает из памяти содержимое ячейки памяти, адрес которой находится в счетчике команд, и помещает его в специальное устройство - «Регистр команд». УУ определяет операцию команды, «отмечает» в памяти данные, адреса которых указаны в команде, и контролирует выполнение команды.

АЛУ – обеспечивает арифметическую и логическую обработку двух переменных, в результате которых формируется выходная переменная. Функции АЛУ обычно сводятся к простым арифметическим и логическим операциям и операциям сдвига. Также формирует ряд признаков результата (флагов), характеризующих полученный результат и события, произошедшие в результате его получения (равенство нулю, знак, четность, переполнение). Флаги могут анализироваться УУ с целью принятия решения о дальнейшей последовательности выполнения команд.

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


Заключение

Итак, выделим ещё раз основные принципы, предложенные фон Нейманом:

· Принцип двоичного кодирования. Для представления данных и команд используется двоичная система счисления.

· Принцип однородности памяти. Как программы (команды), так и данные хранятся в одной и той же памяти (и кодируются в одной и той же системе счисления - чаще всего двоичной). Над командами можно выполнять такие же действия, как и над данными.

· Принцип адресуемости памяти. Структурно основная память состоит из пронумерованных ячеек; процессору в произвольный момент времени доступна любая ячейка.

ОРГАНИЗАЦИЯ ЭВМ

Конспект лекций

Челябинск

ПРИНЦИПЫ ДЖОНА ФОН НЕЙМАН. ПОКОЛЕНИЯ ЭВМ

Принципы Джона фон Нейман

В основу построения подавляющего большинства ЭВМ положены следующие общие принципы, сформулированные в 1945 году американским ученым венгерского происхождения ДЖОНОМ фон НЕЙМАНОМ.

1) Принцип двоичного кодирования.

Согласно этому принципу, вся информация, поступающая в ЭВМ, кодируется с помощью двоичных сигналов.

2) Принцип программного управления .

Программа состоит из набора команд, которые выполняются процессором автоматически друг за другом в определенной последовательности.

3) Принцип однородности памяти.

Программы и данные хранятся в одной и той же памяти. Поэтому ЭВМ не различает, что хранится в данной ячейке памяти – число, текст или команда. Над командами можно выполнять такие же действия, как и над данными.

4) Принцип адресности.

Структурно основная память состоит из пронумерованных ячеек, причем процессору в произвольный момент времени доступна любая ячейка.

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

Согласно фон Нейману, ЭВМ состоит из следующих основных блоков:

– устройства ввода/вывода информации;

– память компьютера;

– процессор, состоящий из устройства управления (УУ) и арифметико-логического устройства (АЛУ).

Машины, построенные на этих принципах, называются ФОН-НЕЙМАНОВСКИМИ

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

К функциям памяти относятся:

– приём информации из других устройств;

– запоминание информации;

– выдача информации по запросу в другие устройства машины.

Функции процессора:

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

– программное управление работой устройств компьютера.

Та часть процессора, которая выполняет команды, называется арифметико-логическим устройством (АЛУ), а другая его часть, выполняющая функции управления устройствами, называется устройством управления (УУ). Обычно эти два устройства выделяются условно, конструктивно они не разделены.

В составе процессора имеется ряд специализированных дополнительных ячеек памяти, называемых регистрами.

Регистр выполняет функцию кратковременного хранения числа или команды. Над содержимым некоторых регистров специальные электронные схемы могут выполнять некоторые манипуляции. Например, вырезать отдельные части команды для последующего их использования или выполнять определенные арифметические операции над числами.

Основным элементом регистра является электронная схема, называемая триггером, которая способна хранить одну двоичную цифру (разряд).

Регистр представляет собой совокупность триггеров, связанных друг с другом определённым образом общей системой управления.

Существует несколько типов регистров (рис. 1.1), отличающихся видом выполняемых операций:.

– сумматор – регистр АЛУ, участвующий в выполнении каждой операции;

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

– регистр команд – регистр УУ для хранения кода команды на период времени, необходимый для ее выполнения. Часть его разрядов используется для хранения кода операции, остальные – для хранения кодов адресов операндов.

Рисунок 1.1

Схема сопряжения регистров процессора

АРХИТЕКТУРА ТЕХНИЧЕСКИХ СРЕДСТВ

Рассмотрим физическую организацию персонального компьютера фирмы IBM, его периферию и принципы сопряжения отдельных компонентов.

Микропроцессор

Является центральным узлом персонального компьютера. Процессор обладает способностью выполнять команды, составляющие компьютерную программу. Персональные компьютеры строятся на базе микропроцессоров, выполняемых в настоящее время на одном кристалле или «чипе».

Микропроцессор, использованный в IBM/PC, был разработан и создан фирмой «Интел». Принципиальное отличие IBM/PC от персональных компьютеров предыдущего поколения заключается в использовании 16-разрядного микропроцессора. До появления IBM/PC наиболее популярные персональные компьютеры строились на базе 8-разрядных микропроцессоров.

Различия между 8- и 16-разрядными микропроцессорами состоит в том, что 8-разрядные процессоры могут манипулировать данными, состоящими из 8 бит, а 16-разрядные процессоры могут работать и 16-разрядными данными. Основное преимущество 16-разрядных процессоров перед 8-разрядными заключается в значительном повышении их быстродействия, мощности и удобства их набора команд. Кроме того, существенно увеличивается объем адресуемой памяти. Большинство 8-разрядных процессоров может использовать не более 64К памяти, что значительно уменьшает возможности эффективного использования персональных компьютеров. Процессоры 8088 и 8086, используемые в IBM/PC, позволяют адресовать 1024К.

Функциональное назначение

Сигналы синхронизации работы системы обеспечиваются генератором 8284А. Эти сигналы используются всеми элементами компьютера и задают длительность операций. С тактовым генератором связан таймер 8255А-5, использующийся для поддержки интерфейса накопителя на кассетной магнитной ленте и встроенного динамика.

Функционирование компьютерной системы основано на использовании прерываний. Для организации работы системы прерываний используется микросхема 8259А. Когда данные передаются внутри компьютерной системы, они проходят по общему каналу, к которому имеют доступ все компоненты системы. Этот путь получил название шины данных .

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

X-терминалы

X-терминалы представляют собой комбинацию бездисковых рабочих станций и стандартных терминалов. Бездисковые рабочие станции часто применялись в качестве дорогих дисплеев и в этом случае не полностью использовали локальную вычислительную мощь. Совсем недавно, как только стали доступными очень мощные графические рабочие станции, появилась тенденция применения «подчиненных» X-терминалов, которые используют рабочую станцию в качестве локального сервера.

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

Типовой X-терминал (рис.3.1) включает следующие элементы:

– экран высокого разрешения – обычно размером от 14 до 21 дюйма по диагонали;

– микропроцессор на базе Motorola 68xxx или RISC-процессор типа Intel i960, MIPS R3000 или AMD29000;

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

– базовые системные программы, на которых работает система X-Windows и выполняются сетевые протоколы;

– программное обеспечение сервера X11.

– переменный объем локальной памяти (от 2 до 8 Мбайт) для дисплея, сетевого интерфейса, поддерживающего сетевые протоколы передачи данных.

– порты для подключения клавиатуры и мыши.

Рисунок 3.1

Схема работы X-терминала

X-терминалы отличаются от ПК и рабочих станций не только тем, что не выполняет функции обычной локальной обработки. Работа X-терминалов зависит от главной (хост) системы, к которой они подключены посредством сети. Для того чтобы X-терминал мог работать, пользователи должны инсталлировать программное обеспечение многооконного сервера X11 на главном процессоре, выполняющем прикладную задачу (наиболее известная версия X11 Release 5).

Минимальный объем требуемой для работы памяти X-терминала составляет 1 Мбайт. В зависимости от функциональных возможностей изделия оперативная память может расширяться до 32 Мбайт и более.

Оснащенный стандартной системой X-Windows, X-терминал может отображать на одном и том же экране множество приложений одновременно. Каждое приложение может выполняться в своем окне, а пользователь может изменять размеры окон, их месторасположение и манипулировать ими в любом месте экрана.

Серверы

Прикладные многопользовательские системы используют технологию «клиент-сервер» и распределенную обработку данных. В случае «клиент-сервер» часть работы выполняет сервер, а часть пользовательский компьютер (в общем случае клиентская и пользовательская части могут работать и на одном компьютере). Существует несколько типов серверов, ориентированных на разные применения: файл-сервер, сервер базы данных, принт-сервер, вычислительный сервер, сервер приложений. Таким образом, тип сервера определяется видом ресурса, которым он владеет (файловая система, база данных, принтеры, процессоры или прикладные пакеты программ).

С другой стороны, существует классификация серверов, определяющаяся масштабом сети, в которой они используются: сервер рабочей группы, сервер отдела или сервер масштаба предприятия (корпоративный сервер). Эта классификация весьма условна. Например, размер группы может меняться в диапазоне от нескольких человек до нескольких сотен человек, а сервер отдела обслуживать от 20 до 150 пользователей. Очевидно в зависимости от числа пользователей и характера решаемых ими задач требования к составу оборудования и программного обеспечения сервера, к его надежности и производительности сильно варьируются.

Файловые серверы небольших рабочих групп (не более 20-30 человек) проще всего реализуются на платформе персональных компьютеров и программном обеспечении Novell NetWare. Файл-сервер, в данном случае, выполняет роль центрального хранилища данных. Серверы прикладных систем и высокопроизводительные машины для среды «клиент-сервер» значительно отличаются требованиями к аппаратным и программным средствам.

Скорость процессора для серверов с интенсивным вводом/выводом некритична. Они должны быть оснащены достаточно мощными блоками питания для возможности установки дополнительных плат расширения и дисковых накопителей. Желательно применение устройства бесперебойного питания. Оперативная память обычно имеет объем не менее 128 Мбайт, что позволит операционной системе использовать большие дисковые кэши и увеличить производительность сервера. При наличии одного сегмента сети и 10-20 рабочих станций пиковая пропускная способность сервера ограничивается максимальной пропускной способностью сети. В этом случае замена процессоров или дисковых подсистем более мощными не увеличивают производительность, так как узким местом является сама сеть. Поэтому важно использовать хорошую плату сетевого интерфейса.

Современные серверы характеризуются:

– наличием двух или более центральных процессоров;

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

– поддержкой технологии дисковых массивов RAID;

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

Мейнфреймы

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

Главным недостатком мейнфреймов в настоящее время остается относительно низкое соотношение производительность/стоимость.

Кластерные архитектуры

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

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

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

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

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

Компьютеры в кластере могут разделять доступ к общим ленточным и дисковым накопителям. Все компьютеры в кластере могут обращаться к отдельным файлам данных как к локальным.

Если происходит отказ одного из компьютеров, задания его пользователей автоматически могут быть перенесены на другой компьютер кластера. Если в системе имеется несколько контроллеров внешних накопителей и один из них отказывает, другие контроллеры автоматически подхватывают его работу (высокая готовность).

Высокая пропускная способность . Ряд прикладных систем могут пользоваться возможностью параллельного выполнения заданий на нескольких компьютерах кластера.

Удобство обслуживания системы . Общие базы данных могут обслуживаться с единственного места. Прикладные программы могут инсталлироваться только однажды на общих дисках кластера и разделяться между всеми компьютерами кластера.

Расширяемость. Увеличение вычислительной мощности кластера достигается подключением к нему дополнительных компьютеров. Дополнительные накопители на магнитных дисках и магнитных лентах становятся доступными для всех компьютеров, входящих в кластер.

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

1) Симметричная многопроцессорная архитектура с общей памятью (Shared Memory SMP Architecture). Эта архитектура (рис. 3.3.) поддерживает единую базу данных, работающую на многопроцессорном сервере под управлением одной операционной системы. Увеличение производительности таких систем обеспечивается наращиванием числа процессоров, устройств оперативной и внешней памяти.

Рисунок 3.3.

Симметричная многопроцессорная архитектура с общей памятью

2) Архитектура с общими (разделяемыми) дисками. Эта архитектура поддерживает единую базу данных при работе с несколькими компьютерами, объединенными в кластер (обычно такие компьютеры называются узлами кластера), каждый из которых работает под управлением своей копии операционной системы. В таких системах все узлы разделяют доступ к общим дискам, на которых собственно и располагается единая база данных. Производительность таких систем может увеличиваться как путем наращивания числа процессоров и объемов оперативной памяти в каждом узле кластера, так и посредством увеличения количества самих узлов.

3) Архитектура без разделения ресурсов. Как и в архитектуре с общими дисками, в этой архитектуре поддерживается единый образ базы данных при работе с несколькими компьютерами, работающими под управлением своих копий операционной системы. Однако в этой архитектуре каждый узел системы имеет собственную оперативную память и собственные диски, которые не разделяются между отдельными узлами системы. Практически в таких системах разделяется только общий коммуникационный канал между узлами системы. Производительность таких систем может увеличиваться путем добавления процессоров, объемов оперативной и внешней (дисковой) памяти в каждом узле, а также путем наращивания количества таких узлов.

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

Параллельные базы данных находят широкое применение в системах обработки транзакций в режиме on-line, системах поддержки принятия решений и часто используются при работе с критически важными для работы предприятий и организаций приложениями, которые эксплуатируются по 24 часа в сутки.

СИСТЕМА ПРЕРЫВАНИЙ

Общие сведения

Прерывание – это инициируемый определенным образом процесс, временно переключающий микропроцессор на выполнение другой программы с последующим возобновлением выполнения прерванной программы.

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

Прерывания могут быть внешними и внутренними .

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

Внутренние прерывания возникают внутри микропроцессора во время вычислительного процесса. К их возбуждению приводит одна из двух причин:

– ненормальное внутреннее состояние микропроцессора, возникшее при обработке некоторой команды программы;

– обработка машинной команды «int xx». Такой тип прерываний называется программным. Это – планируемые прерывания, так как с их помощью программист обращается в нужное для него время за обслуживанием своих запросов либо к операционной системе, либо к BIOS, либо к собственным программам обработки прерываний.

Обработка прерываний.

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

Рассмотрим обработку прерываний в реальном режиме.

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

К аппаратным средствам системы прерываний относятся

– выводы микропроцессора

INTR – вывод для входного сигнала внешнего прерывания. На этот вход поступает выходной сигнал от микросхемы контроллера прерываний 8259А;

INTA – вывод микропроцессора для выходного сигнала подтверждения получения сигнала прерывания микропроцессором. Этот выходной сигнал поступает на одноименный вход INTA микросхемы контроллера прерываний 8259А;

NMI – вывод микропроцессора для входного сигнала немаскируемого прерывания;

– микросхема программируемого контроллера прерываний 8259А. Она предназначена для фиксирования сигналов прерываний от восьми различных внешних устройств: таймера, клавиатуры, магнитных дисков и т. д. Обычно используют две последовательно соединенные микросхемы 8259A. В результате такого соединения количество возможных источников внешних прерываний возрастает до 15.

К программным средствам системы прерываний реального режима относятся:

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

– следующие флаги в регистре флагов flags\eflags:

IF (Interrupt Flag) – флаг прерывания. Предназначен для так называемого маскирования (запрещения) аппаратных прерываний, то есть прерываний по входу INTR. На обработку прерываний остальных типов флаг IF влияния не оказывает. Если IF=1, микропроцессор обрабатывает внешние прерывания, если IF = 0, микропроцессор игнорирует сигналы на входе INTR;

TF (Trace Flag) - флаг трассировки. Единичное состояние флага TF переводит микропроцессор в режим покомандной работы. В режиме покомандной работы после выполнения каждой машинной команды в микропроцессоре генерируется внутреннее прерывание с номером 1, и далее следуют действия в соответствии с алгоритмом обработки данного прерывания;

– машинные команды микропроцессора: int, into, iret, cli, sti ().

Микросхема контроллера прерываний выполняет следующие функции:

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

– формирование номера вектора прерывания и выдача его на шину данных;

– организация приоритетной обработки прерываний;

– запрещение (маскирование) прерываний с определенными номерами.

Важным свойством данного контроллера является возможность его программирования, что позволяет достаточно гибко изменять алгоритмы обработки аппаратных прерываний.

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

1) Режим вложенных прерываний. В этом режиме каждому входу (уровню) irq0...irq7 присваивается фиксированное значение приоритета, причем уровень irq0 имеет наивысший приоритет, а irq7 - наименьший. Приоритетность прерываний определяет их право на прерывание обработки менее приоритетного прерывания более приоритетным (при условии, конечно, что IF=1).

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

3) Режим адресуемых приоритетов. Программист или система самостоятельно могут назначить уровень прерывания с наивысшим приоритетом.

4) Режим опроса. Этот режим запрещает контроллеру автоматически прерывать работу микропроцессора при появлении прерывания от некоторого внешнего устройства. Для того чтобы микропроцессор смог узнать о наличии того или иного запроса на прерывание, он должен сам обратиться к контроллеру прерываний, проанализировать его и далее действовать по своему алгоритму. Согласно этому подходу, инициатором обработки прерывания становится не само прерывание, как при векторной дисциплине, а микропроцессор, причем в определяемые им (точнее, операционной системой, выполняемой на нем) моменты времени.

ИЕРАРХИЯ ПАМЯТИ

В основе реализации иерархии памяти современных компьютеров лежат два принципа: принцип локальности обращений и соотношение стоимость/производительность.

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

Иерархия памяти современных компьютеров строится на нескольких уровнях, причем более высокий уровень меньше по объему, быстрее и имеет большую стоимость в пересчете на байт, чем более низкий уровень. Уровни иерархии взаимосвязаны: все данные на одном уровне могут быть также найдены на более низком уровне, и все данные на этом более низком уровне могут быть найдены на следующем нижележащем уровне и так далее, пока мы не достигнем основания иерархии.

Иерархия памяти обычно состоит из многих уровней, но в каждый момент времени мы имеем дело только с двумя близлежащими уровнями. Минимальная единица информации, которая может либо присутствовать, либо отсутствовать в двухуровневой иерархии, называется блоком. Размер блока может быть либо фиксированным, либо переменным. Если этот размер зафиксирован, то объем памяти является кратным размеру блока.

Успешное или неуспешное обращение к более высокому уровню называются соответственно попаданием или промахом .

Попадание – есть обращение к объекту в памяти, который найден на более высоком уровне, в то время как промах означает, что он не найден на этом уровне.

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

Чтобы описать некоторый уровень иерархии памяти надо ответить на следующие четыре вопроса.

1) Где может размещаться блок на верхнем уровне иерархии? (размещение блока).

2) Как найти блок, когда он находится на верхнем уровне? (идентификация блока).

3) Какой блок должен быть замещен в случае промаха? (замещение блоков).

4) Что происходит во время записи? (стратегия записи).

Организация кэш-памяти

Cегодня кэш-память имеется практически в любом компьютере. Как правило, конструктивно современная кэш-память неотделима от процессора

Общие положения

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

Задержка памяти традиционно оценивается двумя параметрами: временем доступа (access time) и длительностью цикла памяти (cycle time).

Время доступа представляет собой промежуток времени между выдачей запроса на чтение и моментом поступления запрошенного слова из памяти.

Длительность цикла памяти определяется минимальным временем между двумя обращениями к памяти.

Полупроводниковая оперативная память в настоящее время делится на статическое ОЗУ (SRAM) и динамическое ОЗУ (DRAM). (Random Access Memory – запоминающее устройство с произвольной выборкой).

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

Триггером называют элемент на транзисторах, который может находиться в одном из двух устойчивых состояний (0 и 1), а по внешнему сигналу он способен менять состояние. Триггер может служить ячейкой памяти, хранящей один бит информации.

Память, основанная на триггерах, называется статической (SRAM).

Принцип устройства DRAM следующий: система металл-диэлектрик-полупроводник способна работать как конденсатор, т.е. способна некоторое время держать на себе электрический заряд. Обозначив заряженное состояние как 1 и незаряженное как 0, получим ячейку памяти емкостью 1 бит. Поскольку заряд на конденсаторе рассеивается через некоторый промежуток времени, то его необходимо периодически подзаряжать (регенерировать), считывая и вновь записывая в него данные. Из-за этого и возникло понятие «динамическая» для этого вида памяти.

Статическое ОЗУ – дорогой и неэкономичный вид ОЗУ, поэтому его используют в основном для кэш-памяти и в регистрах микропроцессорах.

Развитие оперативной памяти

Динамическое ОЗУ со времени своего появления прошло несколько стадий роста. Вначале микросхемы динамического ОЗУ производились в DIP-корпусах. Затем их сменили модули, состоящие из нескольких микросхем: SIPP, SIMM и, наконец, DIMM и RIMM. Рассмотрим эти разновидности поподробнее.

1) DIP- корпус – это самая древняя реализация DRAM. Обычно это маленький черный корпус из пластмассы, по обеим сторонам которого располагаются металлические контакты.

Микросхемы (по-другому, чипы) динамического ОЗУ устанавливались так называемыми банками. Банки бывают на 64, 256 Кбайт, 1 и 4 Мбайт. Каждый банк состоит из девяти отдельных одинаковых чипов. Из них восемь чипов предназначены для хранения информации, а девятый чип служит для проверки четности остальных восьми микросхем этого банка. Чипы памяти имели емкость 64 Кбит, 256 Кбит, 1 и 4 Мбит.

Памятью с DIP-корпусами комплектовались персональные компьютеры с микропроцессорами i8086/88, i80286 и, частично, i80386SX/DX. Установка и замена этого вида памяти была сложной задачей. Поэтому уже в компьютерах с процессором i80386DX эти микросхемы стали заменять памяти SIPP и SIMM.

2) SIPP-модули представляют собой маленькие платы с несколькими напаянными микросхемами DRAM.

SIPP является сокращением слов Single Inline Package. SIPP-модули соединяются с системной платой с помощью 30 контактных штырьков, которые вставляются в соответствующую панель системной платы. Модули SIPP имели определенные вырезы, которые не позволяли вставить их в разъемы неправильным образом.

3) SIMM-модули .

SIMM расшифровывается как Single Inline Memory Module (Модуль памяти с однорядным расположением выводов.) Модули SIMM могут иметь объем 256 Кбайт, 1, 2, 4, 8, 16 и 32 Мбайт. Соединение SIMM-модулей с системной платой осуществляется с помощью колодок. Модуль вставляется в пластмассовую колодку под углом 70 градусов, а потом зажимается пластмассовым держателем. При этом плата встает вертикально. Специальные вырезы на модуле памяти не позволяют поставить их неправильным образом.

Модули SIMM для соединения с системной платой имеют позолоченные полоски (пины).

SIMM-модули в своем развитии прошли два этапа. Первыми представителями SIMM-модулей были 30-пиновые SIMM. Их максимальная частота работы – 29 МГц. Стандартным же временем доступа к памяти считалось 70 нс. Эти модули уже с трудом работали на компьютерах с микропроцессорами i80486DX2, и были вытеснены сначала 72-пиновыми FPM (Fast Page Mode) DRAM, а затем EDO (Extended Data Output) RAM.

SIMM EDO RAM имеют только 72 пина и могут работать на частоте до 50 МГц. Этими модулями памяти оснащались компьютеры с процессорами Intel 80486DX2/DX4, Intel Pentium, Pentium Pro и Pentium MMX, а также AMD 80586 и K5.

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

Краткая биографическая справка

Янош Нейман родился в 1930 году в Будапеште, в очень состоятельной еврейской семье, которой впоследствии удалось получить дворянский титул. Он с детства отличался выдающимися способностями во всех областях. В 23 года Нейман уже защитил кандидатскую диссертацию в области экспериментальной физики и химии. В 1930-м молодого ученого пригласили на работу в США, в Одновременно с этим Нейман стал одним из первых сотрудников Института перспективных исследований, где проработал профессором до конца жизни. Научные интересы Неймана были довольно обширны. В частности, он является одним из создателей матаппарата квантовой механики и концепции клеточных автоматов.

Вклад в информатику

Прежде чем выяснить, какому принципу не соответствует архитектура фон Неймана, будет интересно узнать о том, как ученый пришел к идее создания вычислительной машины современного типа.

Будучи экспертом в области математики взрывов и ударных волн, в начале 1940-х фон Нейман являлся научным консультантом в одной из лабораторий Управления боеприпасов Армии Соединенных Штатов. Осенью 1943 года он прибыл в Лос-Аламос для участия в разработке Манхеттэнского проекта по личному приглашению его руководителя Перед ним была поставлена задача рассчитать силу имплозийного сжатия заряда атомной бомбы до критической массы. Для ее решения требовались большие вычисления, которые на первых порах осуществлялись на ручных калькуляторах, а позже на механических табуляторах фирмы IBM, с использованием перфокарт.

Познакомился с информацией о ходе создания электронно-механических и полностью электронных компьютеров. Вскоре его привлекли к разработке компьютеров EDVAC и ENIAC, в результате чего он начал писать работу «Первый проект отчета о EDVAC», оставшуюся неоконченной, в которой представил научному сообществу совершенно новую идею о том, какой должна быть компьютерная архитектура.

Принципы фон Неймана

Информатика как наука к 1945 году зашла в тупик, так как все хранили в своей памяти обрабатываемые числа в 10-м виде, а программы для совершения операций задавались посредством установки перемычек на коммутационной панели.

Это значительно ограничивало возможности компьютеров. Настоящим прорывом стали принципы фон Неймана. Кратко их можно выразить одним предложением: переход к двоичной системе счисления и принцип хранимой программы.

Анализ

Рассмотрим, на каких принципах основана классическая структура машины фон Неймана, более подробно:

1. Переход к двоичной системе от десятиричной

Этот принцип неймановской архитектуры позволяет использовать достаточно простые логические устройства.

2. Программное управление электронной вычислительной машиной

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

3. Данные и программы в памяти компьютера хранятся совместно

При этом и данные, и команды программы имеют одинаковый способ записи в двоичной системе счисления, поэтому в определенных ситуациях над ними возможно выполнение тех же действий, что и над данными.

Следствия

Кроме того, архитектура Фоннеймановской машины обладает следующими особенностями:

1. Ячейки памяти имеют адреса, которые пронумерованы последовательно

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

2. Возможность условного перехода в ходе выполнения программы

Как уже было сказано, команды в программах должны выполняться последовательно. Однако предусмотрена возможность совершить переход к любому участку кода.

Как работает машина фон Неймана

Такая математическая модель состоит из запоминающего (ЗУ), управляющего, а также устройств ввода и вывода. Все команды программы записываются в ячейках памяти, расположенных по соседству, а данные для их обработки — в произвольных ячейках.

Любая команда должна состоять из:

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

Указанные командами операции над конкретными исходными данными выполняются АЛУ, а результаты записываются в ячейках памяти, т. е. сохраняются в виде, удобном для последующей машинной обработки, либо передаются на устройство вывода (монитор, принтер и пр.) и становятся доступны человеку.

УУ управляет всеми частями ЭВМ. От него на остальные устройства поступают сигналы-приказы «что делать», а от других устройств оно получает информацию о то, в каком состоянии они находятся.

У управляющего устройства есть специальный регистр, называемый «счетчиком команд» СК. После загрузки исходных данных и программы в память, СК записывается адрес ее 1-й команды. УУ считывает из памяти ЭВМ содержимое ячейки, адрес которой находится в СК, и помещает его в «Регистр команд». Управляющее устройство определяет операцию, соответствующую конкретной команде, и «отмечает» в памяти компьютера данные, адреса которых в ней указаны. Далее АЛУ или ЭВМ приступают к выполнению операции, по завершении которой содержимое СК изменяется на единицу, т. е. указывает на следующую команду.

Критика

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

Поэтому в экзаменационных билетах по информатике нередко можно встретить вопрос "какому принципу не соответствует архитектура фон Неймана и какие недостатки у нее есть".

При ответе на его вторую часть обязательно следует указать:

  • на наличие семантического разрыва между языками программирования высокого уровня и системой команд;
  • на проблему согласования ОП и пропускной способности процессора;
  • на намечающийся кризис программного обеспечения, вызванный тем, что расходы на его создание являются намного ниже стоимости разработки аппаратных средств, и нет возможности полного тестирования программы;
  • отсутствие перспектив с точки зрения быстродействия, так как уже достигнут его теоретический предел.

Что касается того, какому принципу не соответствует архитектура фон Неймана, то речь идет о параллельности организации большого числа потоков данных и команд, свойственной многопроцессорной архитектуре.

Заключение

Теперь вам известно, какому принципу не соответствует архитектура фон Неймана. Очевидно, что наука и технологии не стоят на месте, и, возможно, очень скоро в каждом доме появятся компьютеры совершенно нового типа, благодаря которым человечество выйдет на новый уровень своего развития. Кстати, подготовиться к экзамену поможет программа-тренажер "Архитектура фон Неймана". Такие цифровые образовательные ресурсы облегчают усвоение материала и дают возможность оценить свои знания.