MOS Technology 6502

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск
6502
Разработчик

MOS Technology

Разрядность

8-бит

Представлена

1975

Архитектура

CISC

Тип

Регистр-Память

Кодирование СК

1..3 байта

Переходы

Флаги условий

Расширения

65C02

Регистры
Общего назначения

4

Процессор 6502 в пластмассовом корпусе DIP-40

MOS Technology 6502, или просто 6502, — восьмиразрядный микропроцессор, разработанный компанией MOS Technology в 1975 году. В момент появления на рынке он был дешевле аналогичных изделий компаний-конкурентов (Motorola и Intel). Несмотря на это, а также низкую тактовую частоту, в среднем он показывал сходную с ними производительность за счёт продуманных способов адресации памяти, коротких циклов исполнения команд и некоторой конвейеризации. Появление таких процессоров, как 6502 и Zilog Z80, в конечном счёте предопределило появление домашних компьютеров в конце 1970-х годов. Архитектура 6502 была лицензирована компаниями Rockwell, Synertek и многими другими, и использована во многих разработках. Процессор 6502 и его модификации до сих пор применяются во встраиваемых системах.

История[править | править исходный текст]

6502 был первоначально разработан той же командой инженеров, которые разработали процессор Motorola 6800. После того, как команда целиком вышла из компании Motorola, они быстро разработали 6501, полностью новый процессор, который был совместим по выводам с 6800 (то есть, его можно было поместить на ту же материнскую плату, что и процессор Motorola, хотя их инструкции и отличались). Тут же последовал иск, после чего была создана модель 6502, уже не совместимая с платами, предназначенными для 6800.

Чтобы заинтересовать разработчиков, инженер Чак Педл разработал одноплатный компьютер KIM-1. К их великому удивлению, KIM-1 так же хорошо продавался любителям, как и разработчикам, для которых он первоначально и предназначался. Достаточно быстро появились похожие продукты: Rockwell AIM 65 и Synertek SYM-1.

6502 впервые был представлен в сентябре 1975 за цену в 25$, в то время как 6800 и Intel 8080 продавались за 179$. Первоначально люди не могли поверить, что это реально, а не обман или ошибка, но вскоре и Motorola и Intel опустили цену за свои процессоры до 79$. Чем добились противоположного: снижение цен оправдало 6502 и он стал продаваться сотнями.

Одним из известных использований 6502 был компьютер «Apple I», представленный в 1976 году. Он также использовался далее в линейке Apple II и Commodore PET. Позже 6502 использовался в семействе домашних компьютеров Atari, BBC Micro, а также в множестве других разработок, таких как Ohio Scientific, ныне потерянных в глубине истории. Даже когда появилась более новая модель 6510, прямой потомок 6502 с цифровым портом ввода-вывода и шиной с тремя состояниями, которая (модель 6510) использовалась как центральный процессор в домашнем компьютере Commodore 64, 6502 не ушел со сцены, а использовался как контроллер привода диска.

Другим важным применением семейства 65xx были видеоигры. Первой была приставка Atari 2600, которая использовала модель 6507 с меньшим количеством выводов и могла адресовать только 8 Кб памяти. Были проданы миллионы таких приставок. Другим значимым применением была японская приставка Nintendo Famicom, в США и Европе больше известная как Nintendo Entertainment System. Компанией Ricoh была разработана специальная однокристальная модель 6502 для NES, в которой отказались от поддержки BCD, зато добавили 22 отображаемых на память регистра для генерации звука, чтения состояния джойстика, и управления простым контроллером ПДП. Модель называлась 2A03 для NTSC-консолей и 2A07 для PAL-консолей и производилась только для Nintendo.

В Болгарии производился процессор CM630 — клон 6502. Использовался в компьютере Правец-8С.

Дальнейшим развитием 6502 стали сначала 8-разрядный процессор 65C02 с рядом небольших улучшений и реализованный на базе технологии CMOS, а затем программно совместимый с ним снизу-вверх 16-разрядный микропроцессор с 24-разрядной шиной адреса 65C816, использовавшийся в персональном компьютере Apple II GS. В связи с неуспехом Apple II GS на рынке и переходом компании Apple к стратегической поддержке семейства Macintosh, процессор 65C816 в компьютерах общего назначения распространения не получил, но используется во встроенных системах и, как и 65C02, выпускается фирмой Western Design Center (WDC) до сих пор.

Советская военная промышленность выпускала совместимый с 65C02 процессор 4К602ВМ1 (разработка НПО Физика) для использования во встроенных системах. Однако в советских персональных компьютерах Агат использовались процессоры 6502 зарубежного производства.

Особенности архитектуры процессора 6502[править | править исходный текст]

6502 — 8-разрядный процессор с 16-разрядной шиной адреса, позволяющей адресовать до 64 килобайт оперативной памяти. Его отличительными чертами являются очень короткое и точно определённое время выполнения инструкций в тактах (большинство часто используемых инструкций занимает от 2 до 4 тактов), малое количество регистров (один 8-разрядный аккумулятор A, два 8-разрядных индексных регистра X и Y, 8-разрядный указатель стека S, 8-разрядный регистр флажков P, 16-разрядный указатель команды PC) и большое количество режимов адресации и работы с памятью. В том числе, имеются такие экзотические режимы адресации, как, например, «пред-индексная косвенная адресация с индексацией по X» и «пост-индексная косвенная адресация с индексацией по Y». Первые 256 байт оперативной памяти (т. н. нулевая страница) могут адресоваться специальным образом и фактически могут использоваться в качестве 8-разрядных или 16-разрядных регистров. Таким образом, архитектура процессора 6502 имеет ряд свойств, приближающих её к RISC. При одинаковой тактовой частоте 6502 выполняет управляющие команды в несколько раз быстрее, чем 8-разрядные процессоры большинства других архитектур. В то же время, его слабым местом является наличие из всей арифметики только 8-разрядных целочисленных инструкций сложения и вычитания (в двоичном либо двоично-десятичном коде), уже 16-разрядные целочисленные сложение и вычитание требуют нескольких команд, а умножение и деление, даже целочисленные — написания специальных программ.

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

Системы, использующие 6502[править | править исходный текст]

6502 в художественных произведениях[править | править исходный текст]

  • Также, судя по всему, под управлением этого процессора работает главный злодей в фильме «Терминатор». Это заметно, когда показывается картинка «глазами робота»: при этом на экране, помимо прочей информации, отображается область с листингом ассемблерной программы, содержащим характерные для 6502 команды.
  • Под управлением 6502 работает робот Бендер — персонаж мультсериала Футурама[1].

Рекомендуемая литература[править | править исходный текст]

  • Морер У. Язык Ассемблера для персонального компьютера ЭПЛ. — М.: Мир, 1987. 430 с.
  • Хлебаров А. Й. Персонален компютър Правец-82. Програмиране на асемблер. — София: Державно издателство «Техника», 1988. 112 с. (болг.)
  • Ангелов А. М., Петров П. Ц. Микропроцесорът — сърцето на микрокомпютъра. — София: Державно издателство «Техника», 1986. 224 с. (болг.)

Примечания[править | править исходный текст]

Ссылки[править | править исходный текст]