MOS Technology 6502

Материал из Национальной библиотеки им. Н. Э. Баумана
Последнее изменение этой страницы: 00:00, 25 июня 2018.
MOS Technology 6502
MOS 6502AD 4585 top.jpg
Процессор 6502
в пластмассовом корпусе DIP
Дизайнер MOS Technology
Биты 8-бит
Представлен 1975
Дизайн CISC
Тип Регистр-Память
Кодирование 1..3 байта
Разветвление Флаги условий
Размер страницы 6

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

История

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 зарубежного производства [Источник 2]

Особенности архитектуры процессора 6502

DIP)
MOS 6502 registers
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 (bit position)
Регистр процессора|Main registers
  A Accumulator
Индексный регистр|Index registers
  X X index
  Y Y index
0  0  0  0  0  0  0  1 SP Stack Pointer
Счётчик команд|Program counter
PC Program Counter
Регистр флагов|Status register
  Sign flag|N Флаг переполнения|V - Точка останова|B Двоично-десятичный код|D Interrupt flag|I Zero flag|Z Флаг переноса|C P Processor flags

6502 — 8 бит (компьютерная архитектура)8-разрядный процессор с 16-разрядной шина адреса|шиной адреса, позволяющей адресовать до 64 килобайтов оперативной памяти.

Его отличительными чертами являются:

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

Таким образом, архитектура процессора 6502 имеет ряд свойств, приближающих её к RISC. При одинаковой тактовой частоте 6502 выполняет управляющие команды в несколько раз быстрее, чем 8-разрядные процессоры большинства других архитектур.

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

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

Системы, использующие 6502

  • Игровые приставки — Atari 2600, Nintendo Entertainment System (в России более известная как «Dendy»)
  • Компьютеры — Atari 400/800/XL/XE|8-разрядные Atari, Apple II, Правец (компьютер) Правец 8, Агат (компьютер) Агат, Commodore 64 (MOS Technology 6510 MOS6510— модифицированная версия MOS6502)

6502 в художественных произведениях

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

Ссылки

Источники

  1. MOS Technology 6502 // Википедия. [2018—2018]. Дата обновления: 07.01.2018. URL: https://ru.wikipedia.org/?oldid=90118727 (дата обращения: 07.01.2018).
  2. MOS Technology 6502 // Wikipedia. [2018—2018]. Дата обновления: 17.05.2018 г. // URL:https://en.wikipedia.org/wiki/MOS_Technology_6502. (дата обращения: 09.06.2018).
  3. spectrum.ieee.org. [2009—2018]. Дата обновления: 01.05.2009 // URL:https://spectrum.ieee.org/tech-history/cyberspace/the-truth-about-benders-brain. (дата обращения: 09.06.2018).