Декабрь 19, 2019 Просмотры 86 просмотров

История мирового процессоростроения от 4004 до Nehalem. Часть II: Восьмибитовые войны.

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

i8080



Первый представитель второго поколения микропроцессоров был произведен в начале 1974 года компанией Intel. Изначально планировалось просто версия i8008 по более продвинутой n-МОП технологии, что позволило бы несколько улучшить рабочие характеристики микропроцессора. Но, как выяснилось, имеющаяся в активе Intel технология не позволяла использовать готовые маски, их нужно было разрабатывать заново. Это, в конечном счете, повлекло за собой кардинальное изменение всей схемы процессора. В результате получился чип, работающий на порядок (!) быстрее предшественника, за счет преимуществ новой технологии, а также усовершенствованной архитектуры.

Новорожденного назвали i8080, и 1 апреля 1974 г он был официально представлен публике.

Процессор удался: будучи 8-разрядным, он мог обрабатывать и 16-разрядные числа, а 16-разрядная адресная шина позволяла адресовать аж 64 Кбайт памяти. Кроме того, в новом процессоре, в отличие от i8008, использовался стек внешней памяти, система команд была расширена до 80 инструкций, а также был весьма улучшен механизм обработки прерываний.

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

Физически процессор был построен по n-МОП технологии с проектными нормами 6 мкм, содержал 6000 транзисторов, упаковывался в 40-контактный DIP-корпус и требовал три источника питания: +5В, -5В и +12В. Использование 40-выводного корпуса позволило развести шины адреса и данных, как следствие отпала необходимость в применении дополнительных внешних дешифраторов для их разделения. Количество микросхем, требовавшихся для построения системы, сократилось в несколько раз – с 20 до 6.

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

8216 - приёмопередатчик,
8224 - генератор синхронизации,
8228/8238 - системные контроллеры,
8231 - арифметический сопроцессор,
8232 - процессор 32- и 64-битных чисел с плавающей точкой,
8251 - последовательный интерфейс,
8256 - многофункциональный периферийный адаптер,
8253 - 3-канальный таймер/счётчик,
8255 - микросхема интерфейса с периферией (без ПЗУ),
8271 - контроллер НГМД,
8275 - контроллер монитора,
8355 - микросхема интерфейса с периферией (с 16 Кбайт ПЗУ).

Кстати, именно для i8080 впервые появились вспомогательные микросхемы других производителей, например, Texas Instruments.

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

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

Несмотря на сей досадный факт, успех процессора i8080 сделал его на несколько лет промышленным стандартом де-факто.

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

Клоны i8080 сторонних производителей

С 1975 года в секторе процессоров появилась и компания AMD со своим процессором Am9080. Фактически это был клон процессора i8080, разработанный при помощи реверс инжиниринга. После получения лицензии от Intel процессор был переименован в AMD 8080A.

Кроме AMD, еще несколько фирм производили официальные или неофициальные клоны i8080, среди них можно упомянуть National Semiconductor, NEC, Siemens и Mitsubishi.

Инженеры Советского Союза также неплохо владели реверс инжинирингом. С его помощью был создан микропроцессор КР580ВМ80А.

Конкуренты Intel

Выпустив процессор i8080, Intel вернула себе лидирующие позиции в секторе производства чипов. Но продукция конкурентов не заставила себя долго ждать. Один за другим появлялись все новые и новые чипы второго поколения, некоторым из которых удалось составить серьезную конкуренцию продукции Intel. Уже спустя год-полтора великолепная «кремниевая троица» в составе Motorola, MOS Technology и Zilog сумела отхватить у Intel изрядную долю молодого и перспективного рынка процессоров.

Motorola MС6800/6809



Известный производитель полупроводниковых приборов, компания Motorola, спустя несколько месяцев после выхода i8080, выпустила свой 8-разрядный микропроцессор MC6800. Он ничем не уступал процессору i8080, более того, в некоторых отношениях MC6800 даже выигрывал у творения Intel.

Его набор инструкций, состоявший из 72 команд, был спроектирован очень удачно, позволяя разработчику писать быстрый и эффективный код. Это даже несмотря на то, что у MC6800 отсутствовали команды работы с портами ввода-вывода, и поэтому работа с портами отображалась на память. Недостаток компенсировался набором специальных укороченных команд для работы с ячейками первых 256 байт памяти.

Несмотря на то, что у MC6800 было всего 3 рабочих регистра (два 8-битных регистра данных и 16-битный индексный регистр), наличие двух аккумуляторов позволяло уменьшить количество операций с внешней памятью, а аппаратное сохранение содержимого всех регистров на стеке при обработке прерывания с последующим автоматическим восстановлением было намного удобнее, чем у других процессоров. Так, программисту, разрабатывающему программу для i8080, приходилось использовать несколько пар медленных команд push/pop для сохранения содержимого регистров процессора, что, разумеется, отрицательно сказывалось на быстродействии. Все же нехватка регистров была основной проблемой 6800. Устранено это было в 1976 году в процессоре MC6809, который дополнительно содержал второй индексный регистр и второй указатель стека (один стек использовался процессором, а другой – программой).

Конструктивно микропроцессор 6800 был более совершенным, чем продукт Intel: для его работы требовался только один номинал питания (процессору i8080 было необходимо три). MC6800 содержал 4000 транзисторов и выпускался в 40-контактном DIP-корпусе. Процессор мог обрабатывать два вида прерываний – маскируемые и немаскируемые.

С семейством процессоров MC68xx компанией Motorola выпускались вспомогательные микросхемы собственного производства:

MC6820/6821 - связь процессора с периферией
MC6850/MC6852 - последовательные интерфейсы.
MC8507 - контроллер приоритетных прерываний
MC6870, MC6871/6871A и MC6875 - генераторы синхронизации
MC6845 - контроллер ЭЛТ
MC6830 - ПЗУ
MC6810 – ЗУПВ

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

Позже на базе архитектуры, использованной в 6800, были созданы такие модели, как Motorola 6809, микроконтроллеры 6801/6803, 6805 (процессор с сокращенным набором инструкций), а также микроконтроллеры Freescale 68HC08 / 68HC11 / 68HC12.

Компания Hitachi также производила процессоры от Motorola, кроме того, она выпустила и собственные усовершенствованные процессоры Hitachi 6301/6303, которые имели большее количество регистров, при этом будучи совместимыми сверху вниз с оригинальными Motorola 68xx.

Семейство процессоров от Motorola сразу же привлекло к себе пристальное внимание проектировщиков микропроцессорных систем. Так, они широко использовались в микрокомпьютерах 70-х годов, таких как SWTPC 6800, MEK6800D2, MITS Altair 680 (версия Altair 8800 для процессора 6800) и многих других.

В течение некоторого времени микропроцессоры Intel и Motorola были лидерами на рынке 8-разрядных систем и делили его примерно поровну.

MOS MCS6501/MCS6502



В 1974 году часть команды, работавшей над созданием MC6800, в том числе Билл Менш (Bill Mensch) и Чак Педл (Chuck Peddle) уходят из Motorola, и создают свою фирму MOS Technology. Вскоре компания выпустила свой первый процессор MCS6501, представляющий собой усовершенствованный вариант процессора Motorola 6800.

По архитектуре MCS6501 был очень похож на MC6800 (вплоть до расположения контактов процессора) и его можно было применять в тех же системах вместо последнего. MCS6501 даже мог использовать некоторые вспомогательные микросхемы Motorola. Как и у 6800, у него также отсутствовала возможность работы напрямую с портами ввода-вывода, которые отображались на память.

Система команд 6501 состояла из 57 команд, аналогичных набору команд процессора MC6800, даже их мнемоники были весьма похожи. Тем не менее, совместимость по машинному коду между этими процессорами отсутствовала.

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

Разумеется, Motorola не приветствовала такое положение дел и сразу после выпуска MCS6501 подала на MOS в суд и выиграла процесс. MOS пришлось заплатить 200 тысяч долларов откупных.

В сентябре 1975 года MOS, дабы избежать дальнейших судебных баталий, выпустила процессор MCS6502, отличавшийся от 6501 только распиновкой выводов. 8-разрядный процессор имел 16-разрядную адресную шину и, несмотря на частоту всего 1 МГц, работал быстрее тех же Motorola 6800 или Intel 8080. Это достигалось за счет конвейерной обработки данных, кроме того, процессор в процессе работы выдавал небольшую задержку в работе с шиной, что позволяло видеоадаптеру использовать эту паузу для работы с дисплеем, не растрачивая при этом процессорное время.

MCS6502 содержал 4300 транзисторов и так же, как процессор от Motorola, использовал только один номинал питания (+5В). Его производительность составляла около миллиона операций в секунду. Процессор имел два входа запросов прерываний – маскируемого и немаскируемого, но флажок переполнения мог быть установлен внешним импульсом, что позволяло использовать это в качестве третьего типа прерывания.

Компанией MOS Technology в последующие годы было выпущено несколько вариаций процессора MCS6502, получивших обозначения MCS6503, MCS6504, MCS6505, MCS6506, MCS6507, MCS6512, MCS6513, MCS6514 и MCS6515. Все они были полностью совместимы друг с другом и отличались лишь числом линий данных и числом контактов корпуса (28 или 40).

Все процессоры семейства MCS65xx имели внутренний генератор синхронизации. Их набор регистров состоял из 8-битного регистра аккумулятора, 8-битного регистра состояния (флагового), двух 8-битных индексных регистров, 16-битного программного счётчика и 8-битного указателя стека. По количеству доступных для программиста регистров процессоры семейства 65xx уступали процессорам i8080, и, особенно, Zilog Z-80, о котором речь пойдет ниже. Недостаток регистров несколько компенсировался тем, что у этих процессоров было больше режимов адресации данных.

Все адресное пространство MCS65xx разделялось на страницы памяти объемом по 256 байт, расположенные по адресам, кратным 256. При этом процессоры семейства адресовали разное количество страниц (16, 32 или 256).

Для поддержки микропроцессоров семейства MCS65xx фирмой MOS Technology производились микросхемы интерфейса с периферией MCS6520/6521 и MCS6522, а фирмой Synertec – микросхемы последовательного интерфейса SY6551, способные работать также и с процессорами MC68xx фирмы Motorola. Кроме того, компании Synertec и Rockwell International производили процессоры MSC65xx по лицензии.

Самый известный и распространенный процессор семейства - MCS6502 - быстро завоевал популярность. В первую очередь это было обусловлено его ультранизкой стоимостью – он был выпущен на рынок по цене всего лишь 25 долларов. Поначалу это вызвало некоторую настороженность потребителей, но когда Intel и Motorola вдруг сбросили цену на свои процессоры в несколько раз (!!!) (со $179 до $69), продажи 6502 сразу же пошли в гору.



Популярности MCS6502 весьма поспособствовало то, что Джобс и Возняк, соблазнившись низкой стоимостью процессора, решили выбрать именно его в качестве основы для своих первых компьютеров Apple-I и особенно Apple-II. Да и другие производители ПК и игровых консолей с удовольствием применяли его в своих разработках, в том числе такие гранды, как Commodore, Atari и Nintendo. Более того, в 1976 г. фирма MOS Technology вошла в качестве подразделения в состав Commodore.

Zilog Z-80



В 1975 году корпорация Intel попала практически в ту же ситуацию, что и Motorola годом раньше. Несколько инженеров во главе с Федерико Фэггином, одним из создателей i8080, ушли из компании и организовали собственную фирму Zilog.

Их первый процессор был задуман как «очень продвинутый i8080». Проект был успешно завершен в 1976 году. Процессор Z80 получился очень удачным – он обладал весьма интересными нововведениями, будучи свободным от ряда недостатков предшественника, При этом Z80 сохранил совместимость по машинному коду с процессором i8080. Как и его прототип, Z80 использовал 8-pазpядную шину данных и 16-pазpядную адресную шину.

Его основные отличия от i8080:
- дополнительный набор регистров общего назначения (РОН). Благодаря нему значительно упрощалась работа с подпрограммами или процедурами обслуживания прерываний, поскольку содержимое регистров не нужно было запоминать на стеке, достаточно было задействовать альтернативный набор регистров;
- добавление двух индексных регистров IX и IY;
- расширенная система команд, включающая в себя все инструкции i8080, а также 80 дополнительных (специальные инструкции для манипулирования отдельными битами, работа с дополнительным набором регистров, работа с индексными регистрами, команды блочной обработки данных). Но наиболее интересным расширением системы команд i8080 была именно блочная обработка данных. К примеру, процессор одной командой мог перенести блок данных из одного участка памяти в другой;

«Пересев» с «Вектор-08М» (i8080) на ZX-Spectrum (Z80), я с немалой радостью убедился, что все мои программы на ассемблере i8080 прекрасно шли на Z80, более того, используя специфические команды Z80 временами код удавалось сократить, а быстродействие повысить в несколько раз (!).

- один номинал питания (+5В), который потихоньку становился промышленным стандартом;
- аппаратная поддержка регенерации ОЗУ. Эта «фича» весьма способствовала популярности Z80 – процессор сам генерировал сигналы регенерации оперативной памяти, что позволяло уменьшить число вспомогательных микросхем и снизить стоимость системы;
- перемещаемые векторные прерывания двух типов;
- повышенная тактовая частота. Первые Z80 работали на частоте 2.5 MHz, позднее частота была увеличена до 8 MHz.

Z80 широко использовался во многих микрокомпьютерах. Самым известным ПК на его основе был Sinclair ZX-Spectrum. Кроме того, он широко применяется до сих пор (!!!) в промышленном, торговом и бытовом оборудовании как дешевая и мощная альтернатива микроконтроллерам.



Микропроцессоры Z80 выпускались не только компанией Zilog - в 1984 году компания Hitachi на основе Z80 выпустила микроконтроллер 64180. В 1984 году появился процессор NSC800 от компании National Semiconductor, полностью совместимый с Z80. В Советском Союзе в разное время выпускалось несколько аналогов этого процессора - T34B, KP1858BM1 и KM1582BM2-0100.

Z80, MC6800 и MSC6502 были самыми сильными, но не единственными конкурентами процессора i8080. Помимо них, за этот период было выпущено великое множество микропроцессоров I и II-го поколений, таких, к примеру, как Signetics 2650, Fairchild F8, General Instrument LP8000, Electronic Arrays EA9002, MMI 6700, секционные Intel i300x и AMD Am290x, несколько процессоров от National Semiconductor (IPC-16, MM57xx, ISP-8A). Даже Western Digital, известный производитель жестких дисков, также в то время отметился универсальным микропроцессором MP1600. Но отдельного упоминания достоен один из них - RCA 1802.

RCA (CDP) 1802 (RCA COSMAC, COSMAC 1802)



Процессор, о котором обязательно стоит упомянуть – это RCA 1802, также называемый COSMAC. Его архитектура весьма отличается от других процессоров II поколения. Именно этот чип считается родоначальником так называемых RISC-процессоров.

Процессор был разработан компанией Intersil на основе технологии КМОП «кремний на сапфире», которая имеет немало преимуществ перед n-МОП технологией. Это, прежде всего, низкое энергопотребление, а также высокая устойчивость к радиации, электромагнитным помехам и перепадам температур.

RISC-процессоры


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

Насчет энергопотребления необходимо сказать несколько слов. Если сравнивать i8080 и RCA 1802, то первый потреблял 1,24 Вт максимально и около 0,4 Вт в режиме ожидания. Показатели RCA 1802 были соответственно 0,01 Вт (макс.)/ ~0 Вт (в режиме ожидания). Как жаль, что КМОП-технология не стала преобладающей в процессоростроении!

Итак, RCA 1802 появился в начале 1976 года. Этот 8-битный процессор работал на частоте 1.6 MHz (позднее были выпущены версии с частотой до 6.4 MHz) и имел 8-битную двунаправленную шину данных и мультиплексированную шину адреса, (позволяющую работать с 16-битным адресом через 8-битную шину). Его напряжение питания варьировалось в широких пределах – от 3 до 12 В.

Набор регистров RCA 1802 состоял из 16 16-битных регистров, каждый из которых мог выступать в роли индексного регистра или даже программного счетчика. Один из регистров (R0) использовался особенно – он хранил в себе адрес ячейки памяти для встроенного DMA-контроллера.

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



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

Также чип использовался в некоторых микрокомпьютерах второй половины 70-х годов, таких как Comx-35, COSMAC ELF, COSMAC VIP, ELF II, SuperELF и Yugoslav Pecom 32 и 64, а также в игровой консоли RCA Studio II.

С чипом поставлялось множество вспомогательных микросхем, в том числе чип видеоконтроллера CDP1861 (для NTSC) / 1864 (для PAL) – один из первых видеоконтроллеров для вывода растровой графики.

i8085



Появление такого множества конкурентов требовало от Intel незамедлительной реакции, и в марте 1976 года компания выпустила усовершенствованную версию i8080 - микропроцессор i8085, которому требовался всего один источник питания (+5B). Кстати, «пятерка» в названии чипа означает именно это.

Его отличия от предшественника сводились к повышенной тактовой частоте (от 5 МГц до 10 МГц, что, впрочем, почти не сказалось на производительности), улучшенному техпроцессу (3-микронная технология вместо 6-микронной), наличию встроенных генератора синхронизации и контроллера приоритетных прерываний и вынужденному мультиплексированию линий адреса и данных (из-за того, что i8085 как и i8080 выпускался в 40-контактном корпусе, а количество входов у него было увеличено, создателям пришлось объединить 8 линий данных и 8 младших линий 16-разрядной шины адреса). Кроме того, небольшие отличия между i8080 и i8085 были в наборе инструкций - i8085 содержал две дополнительные команды управления процессором.

В остальном, он был практически полным аналогом i8080, также имея 16-битную адресную и 8-битную шину данных и адресуя 64 Кбайт памяти.

I8085 не требовалась микросхема поддержки 8228 – процессор обладал аналогичными встроенными средствами, но зато для его работы со старыми микросхемами памяти, совместимыми с процессором 8080 (из-за мультиплексирования) требовалась специальная микросхема – демультиплексор 8212.

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

После написанной в 1974 году специально для i8080 Г. Килдолом операционной системы CP/M-80 и MP/M-80 (многопользовательская версия CP/M-80), для i8080/i8085 одна за другой появляются однопользовательская ОС ISIS и ОС реального времени iRMX-80. Конкуренты не сумели отреагировать на это так же мощно и быстро. Именно наличие большого количества мощного системного ПО сыграло решающую роль в восхождении Intel на «чипмейкерский престол».

Итак, Intel все же выиграла 8-битовую битву, но вкушать плоды победы не было времени. Процессоры непрерывно совершенствовались, рынок был перенасыщен восьмибитовыми решениями. Компания Intel решила сделать довольно рискованный шаг. Но об этом - в следующий раз…


Просмотры 86 просмотров

Статистика просмотров страницы:

  • за текущий месяц (Апрель 2024) - 1;
  • за прошлый месяц (Март 2024) - 4;
  • за последние 3 месяца (Январь 2024 - Март 2024) - 11;
  • за последний год (Апрель 2023 - Март 2024) - 28;

Отзывы

Админ
Отлично!
Март 28 Админ

Статьи и обзоры Все статьи

Будущее маркетинговых исследований в контексте быстро развивающихся технологий.
Как тайные покупатели помогают компаниям оценить качество обслуживания, выявить проблемные ...
GT & Industrial Systems, LP, действующая в Узбекистане через зарегистрированное ...
В начале 2000-х мир киберспорта переживал свою золотую эпоху, а ...