Развитие компьютерной архитектуры

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

 

Таблица – Основные этапы развития компьютеров

 

  Год выпуска Название компьютера Создатель Примечания
  Аналитическая машина Бэббидж Первая попытка построить цифровой компьютер
  Z1   Зус Первая релейная вычислительная машина
  COLOSSUS Британское правительство Первый электронный компьютер
  Markl Айкен Первый американский многоцелевой компьютер
  EN I AC I Экерт/Моушли С этой машины начинается история современных компьютеров
  EDSAC Уилкс Первый компьютер с программами, хранящимися в памяти
  Whirlwind I МТИ Первый компьютер реального времени
  IAS Фон Нейман Этот проект используется в большинстве современных компьютеров
  PDP-1 DEC Первый мини-компьютер (продано 50 экземпляров)
  IBM Очень популярный маленький компьютер
  IBM Очень популярная небольшая вычислительная машина
  B5000 Burroughs Первая машина, разработанная для языка высокого уровня
  IBM Первое семейство компьютеров
  CDC Первый суперкомпьютер для научных расчетов
  PDP-8 DEC Первый мини-компьютер массового потребления (продано 50 000 экземпляров)
  PDP-11 DEC Эти мини-компьютеры доминировали на компьютерном рынке в 70-е годы
  Intel Первый универсальный 8-разрядный компьютер на микросхеме
  CRAY-1 Cray Первый векторный суперкомпьютер
  VAX DEC Первый 32-разрядный суперминикомпьютер
  IBM PC IBM Началась эра современных персональных компьютеров
  Osborne-1 Osborne Первый портативный компьютер
Lisa Apple Первый ПК с графическим пользовательским интерфейсом  
Intel Первый 32-разрядный предшественник линейки Pentium  
MIPS MIPS Первый компьютер RISC  
SPARC Sun Первая рабочая станция RISC на основе процессора SPARC  
RS6000 IBM Первый суперскалярный компьютер  
Alpha DEC Первый 64-разрядный ПК  
Newton Apple Первый карманный компьютер  
                 

 

Нулевое поколение – механические компьютеры (1642-1945)

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

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

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

Хотя его устройство работало довольно неплохо, Бэббиджу вскоре наскучила машина, выполнявшая только один алгоритм. Он потратил очень много времени, большую часть своего семейного состояния и еще 17 000 фунтов, выделенных пра­вительством, на разработку аналитической машины.У аналитической машины было 4 компонента: запоминающее устройство (память), вычислительное устрой­ство, устройство ввода (для считывания перфокарт), устройство вывода (перфо­ратор и печатающее устройство). Память состояла из 1000 слов по 50 десятичных разрядов; каждое из слов содержало переменные и результаты. Вычислительное устройство принимало операнды из памяти, затем выполняло операции сложения, вычитания, умножения или деления и возвращало полученный результат обратно в память. Как и разностная машина, это устройство было механическим.

Преимущество аналитической машины заключалось в том, что она могла вы­полнять разные задания. Она считывала команды с перфокарт и выполняла их. Некоторые команды приказывали машине взять 2 числа из памяти, перенести их в вычислительное устройство, выполнить над ними операцию (например, сло­жить) и отправить результат обратно в запоминающее устройство. Другие ко­манды проверяли число, а иногда совершали операцию перехода в зависимости от того, положительное оно или отрицательное. Если в считывающее устройство вводились перфокарты с другой программой, то машина выполняла другой на­бор операций. То есть в отличие от разностной, аналитическая машина могла вы­полнять несколько алгоритмов.

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

В конце 30-х годов немец Конрад Зус сконструировал несколь­ко автоматических счетных машин с использованием электромагнитных реле. Ему не удалось получить денежные средства от правительства на свои разработ­ки, потому что началась война. Зус ничего не знал о работе Бэббиджа, его маши­ны были уничтожены во время бомбежки Берлина в 1944 году, поэтому его рабо­та никак не повлияла на будущее развитие компьютерной техники. Однако он был одним из пионеров в этой области.

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

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

Первое поколение – электронные лампы (1945-1955)

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

В начале войны англичанам удалось приобрести ENIGMA. Однако, чтобы расшифровать закодиро­ванное послание, требовалось огромное количество вычислений, и их нужно было произвести сразу после перехвата радиограммы. Поэтому британское правитель­ство основало секретную лабораторию для создания электронного компьютера под названием COLOSSUS. В создании этой машины принимал участие знамени­тый британский математик Алан Тьюринг. COLOSSUS работал уже в 1943 году, но, так как британское правительство полностью контролировало этот проект и рассматривало его как военную тайну на протяжении 30 лет, COLOSSUS не стал базой для дальнейшего развития компьютеров.

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

Джон Моушли, который был знаком с работами Атанасова и Стибблитса, по­нимал, что армия заинтересована в счетных машинах. Он потребовал от армии финансирования работ по созданию электронного компьютера. Требование было удовлетворено в 1943 году, и Моушли со своим студентом Дж. Преспером Экертом начали конструировать электронный компьютер, который они назвали ENIAC. ENIAC состоял из 18 000 электровакуум­ных ламп и 1500 реле, весил 30 тонн и потреблял 140 киловатт электроэнергии. У машины было 20 регистров, каждый из которых мог содержать 10-разрядное десятичное число. В ENIAC было установлено 6000 многоканальных пе­реключателей и имелось множество кабелей, протянутых к разъемам. Работа над машиной была закончена в 1946 году, когда она уже была не нуж­ной – по крайней мере, для достижения первоначально поставленных целей.

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

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

В то время как Экерт и Моушли работали над машиной EDVAC, один из уча­стников проекта ENIAC, Джон Фон Нейман, поехал в Институт специальных исследований в Принстоне, чтобы сконструировать собственную версию EDVAC под названием IAS.

Фон Нейман вскоре осознал, что создание компьютеров с большим количест­вом переключателей и кабелей требует длительного времени и очень утомительно. Он пришел к мысли, что программа должна быть представлена в памяти компь­ютера в цифровой форме, вместе с данными. Он также отметил, что десятичная арифметика, используемая в машине ENIAC, где каждый разряд представлялся десятью электронными лампами (1 включена и 9 выключены), должна быть за­менена параллельной бинарной арифметикой.

Основной проект, который фон Нейман описал вначале, известен сейчас как фон-неймановская вычислительная машина.Он был использован в EDSAC, первой машине с программой в памяти, и даже сейчас, более чем полвека спустя, является основой большинства современных цифровых компьютеров. Сам замы­сел и машина IAS оказали очень большое влияние на дальнейшее развитие ком­пьютерной техники, поэтому стоит кратко описать проект фон Неймана. Стоит иметь в виду, что хоть проект и связан с именем Фон-Неймана, в его разработке приняли деятельное участие другие ученые – в частности, Голдстайн. Архитек­туру этой машины иллюстрирует рисунок 2.

Рисунок 2 – Схема Фон-Неймана.

 

Машина Фон-Неймана состояла из пяти основных частей: памяти, арифмети­ко-логического устройства, устройства управления, а также устройств ввода-вы­вода. Память включала 4096 слов размером по 40 бит, бит – это 0 или 1. Каждое слово содержало или 2 команды по 20 бит, или целое число со знаком на 40 бит. 8 бит указывали на тип команды, а остальные 12 бит определяли одно из 4096 слов. Арифметический блок и блок управления составляли «мозговой центр» компьютера. В современных машинах эти блоки сочетаются в одной мик­росхеме, называемой центральным процессором (ЦП).

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

Второе поколение – транзисторы (1955-1965)

Транзистор был изобретен сотрудниками лаборатории Веll в 1955 году. В течение десяти лет транзисторы совершили револю­цию в производстве компьютеров, и к концу 50-х годов компьютеры на вакуум­ных лампах уже безнадежно устарели. Первый компьютер на транзисторах был построен в лаборатории МТИ.

Через несколько лет компания DEC разработала модель PDP-8. Главное нововведение – единственная шина, показанная на рисунке. Шина –это набор параллельно соединенных проводов для связи компонентов компьютера. Такая струк­тура с тех пор стала использоваться во всех компьютерах.

Рисунок – Шина компьютера PDP-8

 

Третье поколение – интегральные схемы (1965-1980)

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

Четвертое поколение – сверхбольшие интегральные схемы (1980-?)

Появление сверхбольших интегральных схем (СБИС)в 80-х годах позволило помещать на одну плату сначала десятки тысяч, затем сотни тысяч и, наконец, миллионы транзисторов. Это привело к созданию компьютеров меньшего разме­ра и более быстродействующих. До появления РDР-1 компьютеры были на­столько велики и дороги, что компаниям и университетам приходилось иметь специальные отделы (вычислительные центры).К 80-м годам цены упали так сильно, что возможность пррюбретать компьютеры появилась не только у ор­ганизаций, но и у отдельных людей. Началась эра персональных компьюте­ров.

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

Первые персональные компьютеры продавались в виде комплектов. Каждый комплект содержал печатную плату, набор интегральных схем, обычно вклю­чающий схему Intel 8080, несколько кабелей, источник питания и иногда 8-дюй­мовый дисковод. Сложить из этих частей компьютер покупатель должен был сам. Программное обеспечение к компьютеру не прилагалось. Покупателю при­ходилось писать программное обеспечение самому.

Первая версия IВМ РС была оснащена операционной системой MS-DOS, ко­торую выпускала тогда еще крошечная корпорация Microsoft.

Типы компьютеров

Компьютерная промышленность двигается вперед как никакая другая. Главная движущая сила – способность производителей помещать с каждым годом все больше и больше транзисторов на микросхему. Чем больше транзисторов (кро­шечных электронных переключателей), тем больше объем памяти и мощнее про­цессоры. Гордон Мур, один из основателей и бывший предсе­датель совета директоров Intel, сформулировал закон технологического прогресса, известный теперь под именем закона Мура.Когда Гордон готовил доклад для одной из промыш­ленных групп, он заметил, что каждое новое поколение микросхем появляется через три года после предыдущего. Поскольку у каждого нового поколения ком­пьютеров было в 4 раза больше памяти, чем у предыдущего, стало понятно, что число транзисторов на микросхеме возрастает на постоянную величину и, таким образом, этот рост можно предсказать на годы вперед. Закон Мура гласит, что количество транзисторов на одной микросхеме удваивается каждые 18 месяцев, то есть увеличивается на 60 % каждый год. Размеры микросхем и даты их произ­водства подтверждают, что закон Мура действует до сих пор.

Спектр компьютеров

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

Таблица – Типы современных компьютеров. Указанные цены приблизительны

Тип Цена, доллары Сфера применения
«Одноразовые» 0,5 Поздравительные открытки
Встроенные (микроконтроллеры) Часы, машины, различные приборы
Игровые Домашние компьютерные игры
Персональные Настольные и портативные компьютеры
Серверы Сетевые серверы
Комплексы рабочих станций 50 000-500 000 Супермини-компьютеры
Мэйнфреймы 5 000 000 Пакетная обработка данных в банке

 

Одноразовые компьютеры.В самой верхней строчке таблицы находятся микросхемы, которые приклеи­ваются на внутреннюю сторону поздравительных открыток для проигрывания мелодий типа «С Днем Рождения!», или чего-нибудь подобного.

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

· бытовые приборы (будильники, стиральные машины, сушильные аппара­ты, микроволновые печи, охранные сигнализации);

· коммуникаторы (беспроводные и сотовые телефоны, факсимильные аппа­раты, пейджеры);

· периферийные устройства (принтеры, сканеры, модемы, приводы CD-ROM);

· развлекательные устройства (видеомагнитофоны, музы­кальные центры, МРЗ-плееры, телеприставки);

· формирователи изображений (телевизоры, цифровые фотокамеры, видео­камеры, объективы, фотокопировальные устройства);

· медицинское оборудование (рентгеноскопические аппараты, томографы, кардиомониторы, цифровые термометры);

· военные комплексы вооружений (крылатые ракеты, межконтинентальные баллистические ракеты, торпеды);

· торговое оборудование (торговые автоматы, кассовые аппараты);

· игрушки (говорящие куклы, приставки для видеоигр, радиоуправляемые машинки и лодки).

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

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

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

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

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

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

Серверы.Мощные персональные компьютеры и рабочие станции часто используются в качестве сетевых серверов – как в локальных сетях (обычно в пределах одной организации), так и в Интернете. Серверы, как правило, поставляются в одно­процессорной и мультипроцессорной конфигурациях. В системах из этой кате­гории обычно устанавливаются модули памяти общим объемом в несколько ги­габайтов, жесткие диски емкостью в сотни гигабайтов и высокоскоростные сетевые интерфейсы. Некоторые серверы способны обрабатывать тысячи тран­закций в секунду.

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

Комплексы рабочих станций.В связи с тем, что по соотношению «цена/производительность» позиции рабо­чих станций иперсональных компьютеров постоянно улучшаются, в последние годы появилась практика их объединения в рамках кластеров рабочих станций(Clusters Of Workstations, COW),которые иногда называют просто «кластерами». Они состоят из нескольких персональных компьютеров или рабочих станций, подключенных друг к другу по высокоскоростной сети и снабженных специаль­ным программным обеспечением, которое позволяет направлять их ресурсы на решение единых задач (как правило, научных и инженерных). В большинстве случаев компоненты кластера – это совершенно обычные коммерческие машины, которые можно приобрести по отдельности в любом компьютерном магазине. Вы­сокоскоростные сетевые соединения, как правило, тоже можно организовать при помощи стандартных сетевых плат. Кластеры отличаются удобством масштаби­рования – любой кластер можно расширить с десятка до нескольких тысяч ма­шин. Количество компонентов кластера обычно ограничивается лишь толщиной кошелька покупателя. Поскольку компоненты кластеров достаточно дешевы, их приобретение могут себе позволить не только организации, но и их отделы.

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

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

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

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

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



php"; ?>