[Перевод] Легендарные процессоры 8-битной эпохи
Целое поколение писало свои первые программы на 8-битных системах. Эти системы 1970-х и начала 1980-х годов впервые сделали компьютеры доступными практически всем. Это было время формирования людей, которые позже посвятили свою карьеру компьютерам, и многие из них сыграли ключевую роль в развитии компьютерных технологий.
Эта ностальгия во многом объясняет неувядающий энтузиазм в отношении 8-битных систем.
Однако я считаю, что наряду с обычной ностальгией существует и множество других причин такой любви к »8-битности». Современные системы гораздо более мощны и функциональны, но получив эту мощь, мы и кое-что потеряли. С точки зрения того, кого интересует работа компьютера на низком уровне и желающего программировать на этом уровне, эти системы имеют множество привлекательных сторон.
Простота
Немного попрактиковавшись, можно уместить в своей голове весь набор команд 8-битного процессора. Выполнение некоторых вещей, которые сегодня считаются чем-то само собой разумеющимся (например, арифметика с плавающей запятой) было сложным, но в целом низкоуровневая работа этих систем оставалась гораздо более доступной.
Документация
Один из побочных эффектов простоты заключается в том, что было возможным документирование каждого аспекта компьютера в едином читаемом документе. 8-битные системы часто поставлялись с подробной и читаемой документацией. Если вам хотелось большего, то, скорее всего, существовала исчерпывающая книга, в которой раскрывались подробности языка ассемблера выбранного процессора и которую можно было купить в ближайшем книжном магазине.
Близость к «голому железу»
Графика и звук не были скрыты за API. У систем могла иметься рудиментарная операционная система, но для оптимальной производительности чаще всего приходилось писать код, напрямую взаимодействующий с оборудованием.
Высокоуровневые языки часто были слишком медленными, поэтому для получения нужной производительности коммерческое ПО приходилось писать на языке ассемблера. А простота архитектуры процессора обычно позволяла относительно легко обдумывать производительность ассемблерного кода.
«Опенсорсность»
Я намеренно взял здесь «опенсорс» в кавычки. ПО той эпохи не было опенсорсным в современном смысле. Иногда оно было «с доступными исходниками» в том смысле, что разработчики ПО публиковали свой исходный код. У меня до сих пор хранится экземпляр книги «Sargon: A Computer Chess Program» с листингом шахматной программы, полностью написанной на языке ассемблера 8080.
А если разработчики ПО не публиковали собственные исходники, то иногда кто-то дизассемблировал его и распространял их.
Начало эпохи программного и аппаратного бизнеса
Однако, вероятно, самым важным было то, что эта эпоха стала свидетелем расцвета инноваций и бизнеса в сфере оборудования и ПО: в микропроцессорах, в других полупроводниковых продуктах, в компьютерах, где они устанавливались, и в ПО, запускавшемся на этих компьютерах.
В эту эру возникло или процветало множество знаменитых имён: Intel, Apple, Microsoft, Atari, Commodore, Nintendo и другие. Плюс куча менее известных имён, тем не менее оказавших огромное влияние: Mostek, MOS Technology, Zilog, Acorn и так далее. Не стоит забывать и об новаторском ПО наподобие VisiCalc.
И 8-битные процессоры никуда не ушли. Они стали основой миллиардов микроконтроллеров, спрятанных в домашних, офисных и промышленных устроствах.
Ностальгия овладела мной не полностью. 8-битное время было эпохой памяти на 64 КБ, гибких дисков, монохромных экранов и так далее. Я не хотел бы, чтобы всё это вернулось.
Однако »8-битность» всё равно обладает неослабевающей притягательностью благодаря своей простоте и доступности.
Ниже мы вкратце рассмотрим восемь легендарных процессоров 8-битной эры.
Intel 8008
Intel: 1972 год
Использовался в системе разработки Intel Intellec-8
Это первый 8-битный микропроцессор. Разработан и изготовлен Федерико Фаджином и его командой в компании Intel по заказу производителя терминалов Computer Terminal Corporation. Изначально чип предназначался для замены «дискретной» логики терминала Datapoint 2200, но так и не был применён по назначению.
Как это часто бывает, Кен Ширифф написал серию отличных постов с анализом кристалла 8008 и со множеством подробностей о его истории: первый пост, второй, третий и четвёртый.
Особенности: 16-контактный корпус, поэтому требовалось активное использование мультиплексирования. 14-битный счётчик программ.
Intel 8080
Апрель 1974 года
Использовался в Altair 8800
В 1974 году Intel вслед за 8008 выпустила совместимый с ним по системе команд 8080, тоже спроектированный под руководством Федерико Фаджина.
8080 «заполнил пробелы» в наборе команд 8008 и расширил адреса до 16 битов, обеспечив максимальный размер памяти в 64 КБ. Процессор перешёл на 40-контактный корпус с двухрядным расположением выводов, избавившись от необходимости мультиплексирования загрузки адресов и данных.
Примечательный факт: первый продукт Microsoft, Microsoft BASIC, был написан для Intel 8080.
Motorola MC 6800
1974 год
Используется во многих промышленных сферах.
Первым продуктом Motorola на рынке микропроцессоров стал MC 6800. В отличие от 8008 и 8080, его архитектура была спроектирована с нуля, хотя и копировала в чём-то миникомпьютер PDP-11. В процессоре был использовал подход отличающийся от способа разработки 8080: меньшее количество регистров и более «обычный» набор команд.
Особенности: архитектура поддерживала Direct Memory Access для периферийных устройств — доступ 6800 к адресной шине можно было отключать.
Fairchild F8
1974 год
Если Motorola была многообещающим новичком на рынке микропроцессоров, то Fairchild превратился в «заходящую звезду»: когда-то передовую компанию постепенно покидали лучшие специалисты. Большинство её ключевых сотрудников уже ушло, чтобы создать собственные полупроводниковые компании; разумеется, самими заметными из них были Роберт Нойс и Гордон Мур, основавшие Intel.
Можно спорить о том, действительно ли F8 был микропроцессором в истинном смысле, потому что для обеспечения функциональности, эквивалентной функциям микропроцессора наподобие Intel 8080 или Motorola 6800, ему были необходимы два чипа. Задача разработки одночиповой версии F8 под названием Mostek 3870 была передана «начинающей» компании Mostek.
MOS Technology 6502
1975 год
Использовался в Apple II, Commodore PET, BBC Micro, Commodore 64 и во многих других машинах (иногда это были производные от 6502).
После многообещающего выхода на рынок Motorola с процессором 6800 большая часть проектировавшей этот процессор команды перешла в MOS Technology, где создала 6502.
При создании 6502 команда воспользовалась опытом разработки 6800, но усовершенствовала свой подход, чтобы спроектировать более изящную и дешёвую в производстве архитектуру.
Для меня 6502 стало воплощением дизайна 8-битной эпохи. Это был изящный и экономичный процессор. Очень важно то, что низкая цена позволила новому поколению доступных компьютеров наподобие Apple II, Commodore PET и BBC Micro изменить мир.
Zilog Z80
Март 1976 года
Использовался в Tandy TRS-80, Sinclair ZX81, Sinclair ZX Spectrum, MSX и во множестве компьютеров 1970-х годов, совместимых с CP/M
Поссорившись с Энди Гроувом из Intel, Федерико Фаджин основал в 1975 году компанию Zilog, которая в первую очередь должна была заниматься созданием микропроцессоров. Z80 был обновлённой версией Intel 8080. Он был совместим с ним по системе команд, но имел больше регистров и режимов адресации.
Если Фаджин хотел показать, что с его уходом потеряла Intel, то Z80 с блеском это удалось сделать. Он превосходил Intel 8085 (обновлённый 8080) почти во всех аспектах: был быстрее, имел более универсальный набор команд и его было проще использовать в компьютерах проектировщикам систем.
Особенности: 8-битная арифметика Z80 была реализована при помощи 4-битной арифметики и логического блока.
National Semiconductor SC/MP
Апрель 1976 года
Использовался в одноплатном компьютере Science of Cambridge (позже Sinclair Research) MK14
SC/MP расшифровывается как «Simple Cost-effective Micro Processor» («простой и экономичный микропроцессор») и произносится как «SCAMP».
Особенности: счётчик программ был всего лишь 12-битным и для перехода из одной 4-килобайтной «страницы» в другую требовались специальные команды.
Motorola 6809
1978 год
Использовался в Tandy Color Computer, Dragon 32
6809 был последним из «классических» 8-битных микропроцессоров, он использовался в домашних и небольших бизнес-компьютерах в 1970-х и начале 1980-х. Он был обратно совместим с 6800, но имел дополнительные команды.
К 1978 году начали появляться первые 16-битные архитектуры наподобие 8086.»8-битная эпоха» подходила к своему концу.