Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

_New / lections-docs / Лекция 01

.doc
Скачиваний:
13
Добавлен:
16.04.2013
Размер:
57.86 Кб
Скачать
  1. История создания ВМ.

В настоящее время трудно представить жизнь без электронно-вычислительных машин. Точкой отсчета существования вычислительных машин (ВМ) можно считать 1623 год, когда ученый Вильгельм Шикард (профессор библейских языков и астрономии) создал суммирующую машину с переносом цифр. Основоположником прародителей ЭВМ почему-то считают Блеза Паскаля (1623–1662), который в 1641 году разработал проект суммирующей машины. Машина была готова к 1645 году. Благодарные потомки увековечили его имя в названии одного из языков программирования. Но еще в 1640 году Иоганн Кирманс предложил производить вычисления с помощью железных шестеренок.

Наконец, в 1671–1674 гг. Готфрид Вильгельм Лейбниц удалось построить настоящий арифмометр – машину, способную выполнять четыре основных математических действия. Ему-то и нужно было присуждать пальму первенства в создании настоящих вычислительных машин. Затем следовали изобретения ученых по усовершенствованию арифмометров, доведя в начале 19 века Шарлем Ксавье Томá к их серийному производству в Париже.

В 1853 году Шойц реализовал машину, задуманную в 1823 году английским математиком Чарльзом Бэбиджем. Она была предназначена для вычисления полиномом и была установлена в обсерватории Дадли в Олбэни, США. Ее примечательной особенностью было то, что средством вывода результата служило устройство печати на негативной пластине, т.е. впервые возникла идея внешнего периферийного устройства, принтера. Следующая задумка Чарльза Бэбиджа о создании машины, высказанная им в 1834 году, была воплощением следующих идей:

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

  • программируемость (узор создаваемой ткани менялся в зависимости от сочетаний отверстий на бумажной ленте).

Машина имела арифметическое устройство и память и могла менять ход вычислений, в зависимости от промежуточных результатов. По словам самого Бэбиджа, он заставил машину «bite its own tail» (кусать себя за хвост).

В разработке этой машины принимала участие графиня Ада Августа Лавлейс, дочь поэта Байрона, которая считается первой в мире женщиной-программистом.

В начале тридцатых годов XX века появились первые электромагнитные реле, и Конрад Цузе впервые в вычислительной машине использует двоичный код, как естественное следствие двух состояний реле (якорь опущен и поднят). Хотя идею двоичного счисления описывал еще Лейбниц в 1679 году, но она осталась погребенной в течение 250 лет.

Первая выполненная на электронных лампах вычислительная машина ENIAC (1946 г.) американцев Эккерта и Мачули весила 30 тонн и занимала площадь 200 м2. Она не обладала универсальностью проекта К.Цузе. И только математик Джон фон Нейман, разработав в 1946-1948 гг. проект «Принстонской машины», положил начало универсальным вычислительным машинам. Новизна заключалась во введении модели вычислителя, представляющего собой пятиблочную структуру последовательной ЭВМ. Архитектура таких машин показана на рис.1.

Сокращения: ЗУ – запоминающее устройство

АЛУ – арифметико-логическое устройство

УУ – устройство управления

УВв – устройство ввода

УВыв – устройство вывода

ЦП – центральный процессор

Рис. 1. Вычислительная машина Дж. фон Неймана.

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

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

До середины 80-х годов процесс эволюции вычислительной техники принято делить на поколения. Вот краткие качественные характеристики этих поколений:

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

2-е поколение (1955 – 1964 гг.) – появление новой элементной базы. Вместо ламп – транзисторы, линии задержки как элементы оперативной памяти сменила память на магнитных сердечниках. В архитектуре ЭВМ появились индексные регистры, аппаратные средства для выполнения операций с плавающей точкой и процессоры ввода-вывода. Появились языки высокого уровня (Algol, FORTRAN, COBOL), создавшие предпосылки для появления переносимого программного обеспечения. Для эффективного управления ресурсами машины стали использоваться операционные системы.

3-е поколение (1965 – 1970 гг.) – появление новой элементной базы. Вместо транзисторов в различных узлах ЭВМ стали использоваться интегральные микросхемы. Это не только повысило производительность ЭВМ, но и снизило их габариты и стоимость. Активно стали разрабатываться теоретические основы методов программирования. Появилась тенденция к созданию семейств ЭВМ, т.е. машины становятся совместимы снизу вверх на аппаратном и программном уровне (IBM System 360 и ЕС ЭВМ).

4-е поколение (1970 – 1984 гг.) – создание БИС и СБИС дает возможность появиться новому направлению вычислительной техники – микропроцессоры и микро-ЭВМ. Разработан первый МП i4004 – четырехразрядное параллельное вычислительное устройство, которое поначалу использовалось только в карманных калькуляторах, а затем в различных системах управления (например, для управления светофорами). Затем появился восьмиразрядный i8080 с довольно развитой системой команд, для которого молодой Билл Гейтс написал один из своих первых интерпретаторов языка Бейсик. В 1976 разработан 16-разрядный i8086 с системной шиной адреса в 20 бит (адресуется 1Мб оперативной памяти). В 1982 создан i80286 с двумя режимами работы: реальным, когда формирование адреса осуществлялось по правилам i8086, и защищенным, который аппаратно реализовывал многозадачность и управление виртуальной памятью, а также имел шину адреса в 24 бита, что позволяло ему адресовать до 16 Мб оперативной памяти

5-е поколение (1984 по настоящее время) – развитие микропроцессорных технологий.

Помимо Intel-архитектуры, которая развивалась и в Советском Союзе в виде ЕС-1840 (БИС серии К1810), было второе направление архитектуры ЭВМ – DEC (PDP-11, VAX-11, советские аналоги на базе БИС серии К1801: ДВК-1, -2, «Электроника-100/25, -79, -82», СМ-3, -4). Но, к сожалению, первое направление оказалось наиболее жизнеустойчивым.

В 1985 году фирма Intel представила первый 32-разрядный микропроцессор i80386. Основные новшества, внесенные этим МП, следующие:

  • адресация до 4Гб оперативной памяти;

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

  • поддержка страничной организации памяти – позволяет адресовать до 4 Тб виртуальной памяти;

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

Вскоре появился i486, в котором была реализована идея пятиступенчатого конвейера. На кристалл была помещена кэш-память первого уровня. Кроме этого, появилась кэш-память второго уровня емкостью до 512 Кб.

К числу общих архитектурных свойств и принципов сложившейся фон-неймановской архитектуры ЭВМ 4 и 5 поколений можно отнести:

  • Принцип хранимой программы

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

  • Линейное пространство памяти – совокупность ячеек памяти, которым последовательно присваивают номера (адреса) 0, 1, 2 …

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

  • Единое пространство памяти для хранения команд и данных.

  • Безразличие к целевому назначению данных.

Несколько важных нововведений, которые появились на стадии разработки микропроцессоров Pentium:

  • суперскалярная архитектура;

  • раздельное кэширование кода и данных;

  • предсказание правильного адреса перехода;

  • динамический анализ потока данных;

  • интеллектуальное исполнение команд.

5

Соседние файлы в папке lections-docs