Организация ЭВМ и систем 1. Развитие архитектуры вычислительных систем 1.1. Принципы фон Неймана В 1946 году Нейман на основе критического анализа конструкции ENIAC предложил ряд новых идей организации ЭВМ, в том числе концепцию хранимой программы, он предложил записывать и хранить в памяти алгоритм вычислений вместе с данными. Принципы Дж.фон Неймана показались вначале простыми и очевидными и лишь в дальнейшем они приобрели статус фундаментальных положений, надолго определивших направление развития вычислительной техники. В результате реализации идей фон Неймана была создана архитектура ЭВМ, во многих чертах сохранившаяся до настоящего времени. В отчете "Предварительное обсуждение логического конструирования электронного вычислительного устройства" Дж. фон Нейман опубликовал основные принципы, которые заключались в следующем: 1. Компьютеры на электронных элементах должны работать не в десятичной, а в двоичной системе счисления. 2. Компьютер управляется программой, составленной из отдельных шагов - команд. Программа должна размещаться в одном из блоков компьютера - в запоминающем устройстве, обладающем достаточной емкостью и скоростью выборки команд. 3. Команды, так же как и числа, с которыми оперирует компьютер, записываются в двоичном коде. Это обстоятельство приводит к следующим важным последствиям: а) промежуточные результаты вычислений, константы и другие числа могут размещаться в том же запоминающем устройстве, что и программа; б) числовая форма записи программы позволяет производить операции над величинами, которыми закодированы команды программы; в) появляется возможность перехода в процессе вычислений на тот или иной участок программы в зависимости от результатов вычислений, условных переходов. 4. Трудности физической реализации запоминающего устройства, быстродействие которого соответствует скорости работы логических схем требует иерархической организации памяти. 5. Арифметическое устройство конструируется на основе схем, выполняющих операцию сложения - создание специальных устройств для выполнения других операций нецелесообразно. 6. Необходимо использовать параллельный принцип организации вычислительного процесса (операции над словами производятся одновременно во всех разрядах слова) Принцип использования двоичной системы счисления расширил набор физических приборов и явлений, которые можно использовать для представления информации в операционных и запоминающих устройствах компьютера. Две цифры для отображения "1" и "0" могут отображаться состоянием любой двухстабильной системы. Например, открытое и закрытое состояние электронного ключа (ламповой схемы), два состояния триггера, намагниченным или не намагниченным состоянием ферромагнитной поверхности. Ну, а в настоящее время набор электронных приборов и физических явлений, позволяющих получить два состояния для записи и обработки информации стал намного шире, но об этом поговорим позже. В двоичной системе счисления возможно построение логических схем и реализация функций алгебры логики или Булевой алгебры. Принцип хранимой в памяти программы, представленной в двоичном коде, позволяет производить не только вычисления, направляя команду в устройство управления, а данные в арифметическое устройство, но и преобразовывать сами команды, например в зависимости от результатов вычислений, используя для преобразования коды команд и оперируя с ними, как с данными. Принцип реализации условных переходов позволяет осуществлять программы с циклическими вычислениями с автоматическим выходом из цикла. Благодаря принципу условного перехода сокращается число команд, в программе, так как не требуется повторять одинаковые участки программы. Принцип иерархической организации памяти был сформулирован в связи с тем, что с самого первого компьютера с сохраняемой программой существовало несоответствие между быстродействием арифметического устройства и оперативной памяти. Противоречия бы не существовало, если выполнить память на тех же элементах, что и арифметическое устройство, но такая память получалась слишком дорогой, кроме того, непомерно увеличивалось количество радиоламп, что заметно снижало надежность компьютера. Иерархическое построение оперативного запоминающего устройства позволяет иметь быстродействующую память небольшого объема только для данных и команд, подготовленных к выполнению. Все остальное хранится в запоминающем устройстве более низкого уровня, для этого стали использоваться появившиеся вскоре магнитные носители информации. Параллельный принцип организации вычислений позволяет значительно увеличить скорость вычислений, хотя это и приводит к более значительным затратам оборудования. 1.2. Архитектуры компьютеров разных поколений Архитектура компьютеров первого поколения Архитектура компьютеров первого поколения - это типичная фонНеймановская архитектура. Команды и данные представляются в двоичном коде. Выполняемая программа и оперативные данные выполняемой программы хранятся в оперативной памяти (ОЗУ). Постояное запоминающее устройство (ПЗУ) используется для хранения постоянных данных и программ. Так, например, в ПЗУ хранятся служебные программы, обеспечивающие взаимодействие оператора (пользователя) с компьютером при помощи устройств ввода-вывода ( УВВ) и устройства управления (УУ). При вводе и выводе данных в компьютерах первого поколения процессор простаивает. Среди устройств ввода-вывода важное место занимает пульт управления, предназначенный для оператора. Оператор может прервать выполнение программы, внести необходимые изменения, и вновь выполнить программу или перейти к решению другой задачи. Пульт управления связан с процессором при помощи устройства управления, формирующего необходимые управляющие сигналы. Условно структура компьютера первого поколения представлена на рисунке 1.1. Рис.1.1. Архитектура компьютера первого поколения. Архитектура компьютеров второго поколения Второе поколение ЭВМ создавалось в период с 1955 по 1964гг. Успехи полупроводниковой технологии и связанные с этим возможности совершенствования структуры ЭВМ, расширения выполняемых функций и усложнения решаемых задач привели к смене элементной базы. Запоминающие устройства на магнитных сердечниках , магнитных барабанах и магнитных лентах вытеснили полностью запоминающие устройства на электронно-лучевых трубках и ртутных ультразвуковых линиях задержки, применяемых в ЭВМ первого поколения. Быстродействие и надежность машин повысилась в несколько раз, транзисторная ЭВМ IBM7090 позволила решать задачи в 5 раз быстрее, чем ее ламповый аналог IBM709. Переход к полупроводниковой технологии позволил значительно уменьшить габариты и потребляемую ЭВМ мощность. В структуру ЭВМ второго поколения был введен специализированный процессор, управляющий обменом данных между устройствами ввода/вывода и основной памятью. Это управление осуществляется программой ввода/вывода, которая считывается из основной памяти и выполняется процессором ввода/вывода автономно. Для обеспечения возможности совместной работы процессора ввода/вывода и центрального процессора были введены прерывания работы центрального процессора по сигналу от процессора ввода/вывода об окончании операции. В командах можно было указывать адрес операнда непосредственно или использовать команды, формирующие адрес при помощи индексного регистра. Подведем итог. В архитектуре ЭВМ второго поколения можно отметить следующие особенности: применение специальных устройств преобразования адресов; использование индексного регистра; применение иерархической структуры памяти; обособленное управление вводом / выводом; использование системы прерываний для работы с устройствами ввода/вывода; использование принципов микропрограммного управления; Рис 1.2. Архитектура компьютеров второго поколения. Процессор пересылает данные в определенную область памяти и передает управление контроллеру канала ввода /вывода (КВВ), при этом он продолжает вычисления. После обработки устройством ввода вывода принятых данных или после передачи данных устройством ввода/вывода (УВВ), контроллер канала ввода/вывода ( КВВ) формирует сигнал прерывания, при этом возможно прерывание работы процессора и обслуживание запроса устройства ввода/вывода. Сущность микропрограммного управления состоит в том, что любая машинная операция выполняется как последовательность микроопераций, вместо аппаратного формирования управляющих сигналов используется микропрограмма. Сигналы управления последовательно читаются из памяти микропрограмм и устанавливаются на соответствующих линиях управления. Для передачи сигналов управления используется специальная шина шина управления. Среди ЭВМ второго поколения появились и первые суперкомпьютеры, предназначенные для решения сложных задач, требовавших высокой скорости вычислений, в них были применены методы параллельной обработки, увеличивающие число операций, выполняемых в единицу времени - конвейеризация команд, во время выполнения одной команды вторая считывается из памяти и готовится к выполнению и параллельная обработка нескольких программ. ЭВМ, выполняющие параллельно несколько программ при помощи нескольких микропроцессоров, получили название мультипроцессорных систем. Архитектура компьютеров 3-го поколения Третье поколение ЭВМ разрабатывалось с 1964 по 1974год на новой элементной базе, осуществился переход к интегральной технологии. Совершенствование технологии позволило усложнить микросхемы, появились микросхемы средней интеграции (СИС). Затем из всего многообразия микросхем были выделены функционально - полные комплекты интегральных схем, предназначенные для построения контроллеров и вычислительных машин. Для вычислительной техники характерно использование большого количества однотипных логических элементов, особенно в устройствах памяти. Технология изготовления интегральных схем памяти проще, отличается повторяемостью соединений, поэтому первыми большими интегральными схемами стали БИС памяти. БИС содержали от нескольких тысяч до нескольких десятков тысяч элементов на кристалле. Благодаря интегральным схемам удалось значительно улучшить технические и эксплуатационные характеристики ЭВМ. В ЭВМ третьего поколения появился расширенный набор внешних устройств. Были разработаны устройства внешней памяти с увеличенной емкостью и скоростью передачи данных. Первые устройства внешней памяти на магнитных дисках появились в начале 60-х годов, после того как в 1956г. фирма IBMразработала плавающие магнитные головки на магнитной подушке. Емкость магнитных дисков была на порядок больше, чем емкость магнитных барабанов, применявшихся ранее. Появились устройства ввода графической информации с чертежа, оптические читающие устройства, графопостроители, устройства для чтения перфокарт или перфолент. Для повышения быстродействия в супер-ЭВМ использовались методы конвейерной и параллельной обработки при помощи процессора сложной структуры, состоящего из матрицы процессоров обработки данных и специального управляющего процессора, который распределяет задачи и управляет потоком данных в системе. В начале 70-х годов были выпущены первые машины класса мини-ЭВМ, предназначенные для управления технологическими процессами, семейства PDP11, объединенные единой архитектурой , отличающиеся не очень высокой производительностью и, соответственно, ценой. Эта архитектура стала образцовой в классе мини-ЭВМ. Подведем итог и обсудим особенности архитектуры компьютеров 3-го поколения: Это, прежде всего введение системы совместимых ЭВМ, реализация программной совместимости и аппаратной совместимости. Основные изменения в архитектуре: многофункциональность центрального процессора; усложнение структуры иерархии памяти; введение мультиплексных и селекторных каналов; развитие устройств ввода/вывода (периферии). Многофункциональность центрального процессора - центральный процессор включает в себя несколько сопроцессоров ( для вычислений с удвоенной точностью, для работы с символьной информацией). В таком процессоре возможна оптимизация вычислительного процесса за счет совмещения операций, выполняемых в разных устройствах. В устройстве управления центрального процессора появляется устройство формирования адресов для обеспечения многопользовательского режима работы. Усложнение структуры иерархии памяти - вводится дополнительная память между внешним запоминающим устройством и оперативной памятью, что обеспечивает организацию обращений к единой памяти (виртуальной памяти, появляется возможность распределять виртуальные ресурсы между пользователями, организовать работу в многопользовательском режиме, когда каждый пользователь имеет в распоряжении свою виртуальную машину) Введение мультиплексных и селекторных каналов. Мультиплексный канал обеспечивает обмен с однородными устройствами (терминалами). Обслуживается несколько медленных устройств одновременно. Селекторный канал служит для скоростного обмена между основной памятью и быстродействующими внешними устройствами. Особенно важно организовать быстрый обмен с видеосистемой компьютера при обработке графической информации. Селекторный канал работает в монопольном режиме и обслуживает только одно устройство. Развитие системы устройств ввода/вывода. Разработаны устройства внешней памяти с увеличенной скоростью и емкостью, введены стандарты на связь с внешними устройствами (интерфейсы), широкое применение получили терминальные устройства, обеспечившие доступ к компьютеру широкого числа пользователей. Основная концепция: совместное использование ресурсов и введение принципов виртуального распределения ресурсов, ресурсы предоставляются пользователю по его потребностям. Рис. 1.3. Архитектура компьютера 3-го поколения Режимы использования ресурсов: однопрограммный (вычислительная система обслуживает одного пользователя и решает только одну задачу); многопрограммный (несколько программ одновременно выполняются в системе,при этом выполнение любой программы может быть на некоторое время прервано для выполнения другой). В многопрограммном режиме (мультипрограммном) должны быть четко определены правила перехода от одной программе к другой. Используются два режима работы: Режим разделения времени- вычислительная система работает с различными пользователями. На каждое устройство (каждому пользователю) выделено определенное время работы процессора С Т. С учетом инерции человека - пользователя время ответа системы равно времени ответа при индивидуальной работе. Возрастает эффективность использования вычислительной системы; Режим реального времени - применяется в информационнопоисковых системах. При этом вычислительная система выполняет фоновую задачу. К системе имеет доступ несколько удаленных терминалов. При обращении пользователя фоновая задача прерывается, система переходит к обработке программы прерывания (к обслуживанию данного пользователя ) и по окончании возвращается в фоновый режим. Архитектура компьютеров 4-го поколения Четвертое поколение компьютеров создавалось на БИС (большая интегральная схема) и СБИС (сверхбольшая интегральная схема). Быстрыми темпами развивалась технология производства больших интегральных схем. В 1971 году фирма Intel выпустила первый 4-разрядный микропроцессор, выполненный на одном кристалле и способный выполнять набор из 45 команд, в то время его называли микропрограммным компьютером на одном кристалле. Высокая степень интеграции БИС, повышенное быстродействие, высокая степень надежности, снижение стоимости, все это позволило значительно уменьшить размеры компьютеров, достигнуть быстродействия порядка сотен миллионов операций в секунду, объем основной памяти достиг десятков Мбайт. Появился новый класс машин микро-ЭВМ. Впервые была применена концепция открытой архитектуры, которая позволила пользователям добавлять новые компоненты к их компьютерам без замены всего устройства. В 1983 году фирма IBM выпустила компьютер PC/XT, он был укомплектован жестким диском на10 Мбайт, с памятью до 640 Кбайт и операционной системой MS-DOS. Начиная с XT произошел взрыв в индустрии персональных компьютеров. Появились такие компьютеры, как графические станции, домашние компьютеры,Desktop- компьютеры (доска объявлений), Laptop компьютеры (наколенники), блокнотные персональные компьютеры (Notebook), Palmtop компьютеры (наладонники). Две тенденции - распределение вычислительных ресурсов , оснащение персональными компьютерами рабочих мест и необходимость объединения вычислительных ресурсов для решения общих задач большого объема - привели к сетевому буму. Для объединения рабочих групп (вычислительных станций, в качестве которых чаще всего используют персональные компьютеры) в вычислительные сети необходимы специализированные машины - серверы. В архитектуре серверов и суперсерверов используется несколько процессоров, высокоскоростная система шин. Технология заказных СБИС позволила перейти к ЭВМ на специализированных процессорах, процессорах ассоциативного типа, основной операцией которых является операция сравнения. Итог: Компьютеры 4-го поколения строятся на СБИС, с дальнейшим увеличением интеграции без изменения технической базы; расширется многофункциональность процессора (используются принципы конвейерной обработки данных и команд); для согласования скорости работы процессора и памяти вводится буферная память (кэш 1-го уровня) между регистровой памятью процессора (СОЗУ) и оперативной памятью (ОЗУ); используются устройства логического предсказания последующих переходов; используются специальные устройства формирования адресов для работы с кэш памятью 1-го уровня; используется модульный принцип построения вычислительных систем, позволяющий наращивать их мощность; для реализации режимов реального времени и разделения времени используются сети ЭВМ ; используется режим мультипрограммирования, многозадачности, реализованный аппаратно и программно; разрабатываются новые архитектуры многомашинных и многопроцессорных систем. Можно сказать, что процесс развития вычислительных систем четвертого поколения продолжается, и намечается переход к вычислительным системам пятого поколения. ЭВМ 5-го поколения имеют развитую периферийную систему, различают звуковую, зрительную, сенсорную информацию и обрабатывают ее по законам деятельности человеческого мозга. Для перехода к таким ЭВМ было определено требование к новой технологической базе. Фактически перехода к новой технологической базе не произошло.