Motorola 6809 - Motorola 6809
Общая информация | |
---|---|
Запущен | 1978 |
Общий производитель (и) | |
Спектакль | |
Ширина данных | 8 |
Ширина адреса | 16 |
Архитектура и классификация | |
Набор инструкций | 6809 |
инструкции | 59 |
Физические характеристики | |
Транзисторы |
|
Пакет (ы) |
|
В Motorola 6809 ("шестьдесят восемь девять") является 8 бит микропроцессор ЦПУ с некоторыми 16 бит особенности из Motorola. Он был разработан Терри Риттером и Джоэлем Бони и представлен в 1978 году. Это значительный прогресс по сравнению с его предшественником, Motorola 6800 и связанные Технология MOS 6502, он нашел применение в Цветной компьютер TRS-80 и Дракон 32/64 домашние компьютеры, Vectrex игровая система и аркадные автоматы начала 1980-х, включая Звездные войны, Защитник, Роботрон: 2084, Рыцарский турнир, и Гирусс. II серия Fairlight CMI цифровая звуковая рабочая станция и Konami Пилот времени '84 аркадная игра использует два процессора 6809.[1]
В отличие от других 8-битных процессоров, 6809 допускает полностью позиционно-независимый код и реентерабельный код простым способом. Это был один из первых[нечеткий ] микропроцессоры с инструкцией аппаратного умножения, и она включает в себя полную 16-битную арифметику и быструю прерывать система.
Описание
Эта секция нужны дополнительные цитаты для проверка.Август 2019 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
6809 использует два 8-битных аккумуляторы (A и B), которые можно объединить в один 16 бит регистр (D), два 16-битных индексные регистры (X и Y) и два 16-битных указатели стека. Регистры индекса и стека позволяют расширенные режимы адресации. Счетчик команд относительная адресация позволяет позиционно-независимый код, а указатель стека пользователя (U) облегчает повторно въезжающий код.
6809 - ассемблер исходный код с 6800, хотя 6800 имеет 78 инструкций по сравнению с 59 6809. Некоторые инструкции были заменены более общими, которые ассемблер переводится в эквивалентные операции, а некоторые даже были заменены на режимы адресации. В Набор инструкций и регистрационный комплект очень ортогональный, что делает 6809 проще в программировании, чем его современники. Как и 6800, 6809 включает недокументированную инструкцию по тестированию адресной шины, получившую прозвище Остановись и загорелся (HCF).[2]
Внутренний дизайн 6809 ближе к более простому, не-микрокодированный Проекты ЦП. Как и большинство 8-битных микропроцессоров, реализация 6809 представляет собой уровень регистрации-передачи машина, используя центральный PLA для реализации большей части декодирования инструкций, а также частей последовательности.
6809 использует двухфазные часы к воротам защелки. Этот двухфазный тактовый цикл используется в этих процессорах как полный машинный цикл. Простые инструкции могут выполняться всего за два или три таких цикла.
Для сравнения, конечный автомат с более высоким разрешением Зилог Z80 позволяет увеличить тактовые частоты в 3–5 раз при той же скорости микросхем памяти, что часто было ограничивающим фактором. Это потому, что Z80 объединяет два полных (но коротких) тактовых цикла в один относительно длительный период доступа к памяти по сравнению с часами, в то время как более асинхронный 6809 вместо этого имеет относительно короткое время доступа к памяти. В зависимости от версии и класса скорости для доступа к памяти в 6800, 6502 или 6809 обычно доступно примерно 40–60% одного тактового цикла.
6809 имеет внутренний двухфазный тактовый генератор (требуется только внешний кристалл), тогда как 6809E требует внешнего тактового генератора. Существуют варианты, такие как 68A09 (E) и 68B09 (E); внутренняя буква указывает на номинальную тактовую частоту процессора.
История
Ключевым аспектом конструкции 6809 является возможность позиционно-независимый код. Команда разработчиков считала, что будущие системные интеграторы будут обращать внимание на готовый код в ПЗУ для решения общих задач. Библиотеки общих процедур, например плавающая точка арифметика, графические примитивы, сжатие Lempel-Ziv и т. д. будут доступны для лицензирования, объединения вместе с пользовательским кодом и записи в ПЗУ.[а] Более крупный пример можно найти в руководстве по программированию Motorola 6809,[3] который содержит полный список Assist09, так называемый монитор, миниатюрная операционная система, предназначенная для записи в ПЗУ.
В такого рода среде программирования «выбирай и помещай» не было способа предсказать, где в ПЗУ окажется код. Любые инструкции, относящиеся к другим местам в памяти, обычно должны быть изменены, чтобы отразить эти изменения в макете. Напротив, 6809 позволяет размещать код в любом месте памяти без изменений. Дизайн 6809 также ориентирован на поддержку повторно въезжающий code, код, который может вызываться из разных программ одновременно, не заботясь о координации между ними, или который может вызывать сам себя рекурсивно.
Рынок предварительно свернутых модулей ПЗУ так и не появился: единственным выпущенным примером компании Motorola было ПЗУ с плавающей запятой MC6839. Индустрия в целом решила проблему интеграции модулей кода из отдельных источников с помощью автоматического перемещения компоновщиков и загрузчиков, что по-прежнему используется сегодня. Однако решения, принятые командой разработчиков, сделали возможным создание многопользовательских, многозадачных операционных систем, таких как ОС-9 и UniFlex.
Версии
Motorola 6809 изначально производился в 1МГц, Номинальная частота 1,5 МГц (68A09) и 2 МГц (68B09). Более быстрые версии были выпущены позже Hitachi. Без особых улучшений, 6809 знаменует собой конец эволюции 8-битных процессоров Motorola; Motorola предполагала, что будущие 8-битные продукты будут основаны на 8-битной версии шины данных 68000 ( 68008 ). Версия микроконтроллера с немного измененным набором инструкций, 6811, было прекращено уже во втором десятилетии 21 века.
В Hitachi 6309 представляет собой улучшенную версию 6809 с дополнительными регистрами и дополнительными инструкциями, включая перемещение блока, дополнительные инструкции умножения и деление.
Использовать
6809 используется в двухъядерном процессоре Commodore. SuperPET компьютер, а в его воплощении 68A09, в уникальной векторной графике на основе Vectrex дома игровая приставка со встроенным экранным дисплеем и в системе Milton Bradley Expansion (MBX) (аркадная консоль для использования с домашним компьютером Texas Instruments TI-99 / 4A). 6809E - это процессор в Цветной компьютер TRS-80, то Система Желудь 2, 3 и 4 компьютера (в качестве дополнительной альтернативы их стандартным 6502 ), Fujitsu FM-7, Canon CX-1, валлийский -сделали Дракон 32/64 домашние компьютеры и SWTPC, Gimix, Smoke Signal Broadcasting и т. Д. Автобус СС-50 автобусных систем, в дополнение к нескольким собственным EXORmacs и системы разработки EXORset. Во Франции, Микроинформатика Thomson выпустила серию микрокомпьютеров на базе 6809Е (TO7, ТО7 / 70, ТО8, ТО8D, ТО9, ТО9Plus, MO5, MO6, MO5E и MO5NR).
Помимо домашних компьютеров и игровых консолей, 6809 также используется в ряде аркадных игр, выпущенных в период с начала до середины 1980-х годов. Williams Electronics был активным пользователем процессора, который был развернут в Защитник, Звездные врата, Рыцарский турнир, Роботрон: 2084, Sinistar, и другие игры. Процессор 6809 составляет основу успешного Контроллер пинбола Williams. KONAMI-1 - это модифицированный 6809, используемый Konami в Roc'n Rope, Гирусс, и Симпсоны.[4]
Процессор 6809 также использовался в сигнал светофора контроллеры, произведенные в 1980-х годах несколькими разными производителями.[5]
Компания по разработке программного обеспечения Микроволновая печь разработал оригинальный ОС-9 операционная система (не путать с более поздней Mac OS 9 ) для 6809, позже портировав его на микропроцессоры серий 68000 и i386. Спустя несколько лет энтузиасты разработали операционную систему NitrOS9 на основе оригинальной Microware OS9.
II серия Fairlight CMI (компьютерный музыкальный инструмент) использовал два процессора 6809 и OS9, а также один процессор 6809 на каждую голосовую карту. 6809 часто использовался в музыкальных синтезаторах других производителей, таких как Oberheim (Xpander, Matrix 6/12/1000), PPG (Wave 2 / 2.2 / 2.3, Waveterm A) и Ensoniq (сэмплер Mirage, SDP-1, ESQ1, SQ80). Последние использовали 6809E в качестве основного процессора. Версия (E) использовалась для синхронизации часов микропроцессора со звуковым чипом (Ensoniq 5503 DOC) в этих машинах; в ESQ1 и SQ80 использовался 68B09E, требующий специальной логической схемы арбитра для обеспечения синхронизации шины 1 МГц при доступе к микросхеме DOC.
Hitachi произвела свои собственные машины на базе 6809, MB6890, а затем S1. Они предназначались в первую очередь для японского рынка, но некоторые экспортировались и продавались в Австралия. Там MB6890 был назван «Персик», вероятно, в иронической связи с популярностью этой модели. Яблоко II. S1 отличался тем, что содержал пейджинг аппаратное обеспечение, расширяющее 64-разрядную версию 6809 килобайт (64×210 байт ) диапазон адресации до 1 мебибайт (1×220 байт) на страницах по 4 КБ. В этом он был похож на машины производства SWTPC, Gimix и ряд других поставщиков. TSC создала Unix-подобную операционную систему uniFlex который работал только на таких машинах. ОС-9 Уровень II также воспользовался такими возможностями управления памятью. Большинство других компьютеров того времени с адресацией памяти более 64 КБ были ограничены переключение банка где много, если не все 64 КБ были просто заменены на другой раздел памяти, хотя в случае с 6809 Motorola предложила собственный MC6829 MMU мэппинг дизайна 2 мебибайта (2 × 220 байт ) на страницах 2 КБ.[6]
Самый первый прототип Macintosh, проволочный к Баррелл Смит, содержал 6809.[7]
6809 использовался с середины 1980-х до начала 2000-х годов в магистральных центральных контроллерах Motorola SMARTNET и SMARTZONE (так называемый «контроллер 6809»). Эти контроллеры использовались в качестве центральных процессоров во многих транкинговых системах двусторонней радиосвязи Motorola.[нужна цитата ]
Наследие
Motorola выделила свое подразделение микропроцессоров в 2004 году. Это подразделение изменило свое название на Freescale и впоследствии было приобретено NXP.
Ни Motorola, ни Hitachi больше не производят процессоров 6809 или их производных. 6809 ядер доступно в VHDL и может быть запрограммирован в FPGA и используется как встроенный процессор с номинальной частотой до 40 МГц.[нужна цитата ] Некоторые коды операций 6809 также живут в Freescale встроенные процессоры. В 2015 году Freescale разрешила Рочестер Электроникс чтобы снова начать производство MC6809 в качестве прямой замены и копии оригинального устройства NMOS. Freescale предоставила Рочестеру оригинал GDSII база данных физического проектирования. В конце 2016 года Rochester MC6809 (включая MC68A09 и MC68B09) полностью квалифицирован и доступен в производстве.
Австралийский разработчик Джон Кент синтезировал CPU Motorola 6809 на языке описания оборудования (HDL).[8] Это сделало возможным использование ядра 6809 на гораздо более высоких тактовых частотах, чем было доступно с исходным 6809. CoCo3FPGA Гэри Беккера работает с ядром Kent 6809 на 25 МГц.[9] Matchbox CoCo Роджера Тейлора работает на частоте 7,16 МГц. CoCoDEV Дэйва Филипсена работает на частоте 25 МГц.[10]
Примечания
- ^ Другими примерами являются матричная арифметика, кодирование / декодирование Хаффмана, статистические функции, поиск по строкам (например, Алгоритм Бойера-Мура ) и управление древовидной структурой.
Рекомендации
- ^ «Оборудование на базе Konami Dual 6809». Система 16.
- ^ Джон Байко. «Великие микропроцессоры настоящего и прошлого». Архивировано из оригинал на 2013-07-01. Получено 2013-07-01.
- ^ https://archive.org/details/bitsavers_motorola68_13419254
- ^ Никола Салмория и команда MAME. «Konami: портативный эмулятор процессора Konami». Архивировано из оригинал на 2012-10-04. Получено 2012-10-21.
- ^ Роберт Дж. Симпсон; Равендран Парамесран (1998). Усовершенствованный 8-битный микропроцессор MC6809: его программное обеспечение, оборудование, архитектура и методы взаимодействия. Springer. ISBN 978-981-3083-09-7.
- ^ "Руководство по микропроцессорам Motorola 1981 г.". archive.org. 1981 г.. Получено 2 апреля 2018.
- ^ Герцфельд, Энди (октябрь 1980 г.). "Добрая Земля". Folklore.org. Получено 2009-12-29.
- ^ "Домашняя страница Джона Кента".
- ^ http://www.davebiz.com/wiki/CoCo3FPGA
- ^ http://www.davebiz.com/wiki/CoCoDEV
дальнейшее чтение
- Даташиты и руководства
- MC6809 Лист данных; Motorola; 36 страниц; 1983 г.
- MC6809E Лист данных; Motorola; 34 страницы.
- Справочник по 8-битным микропроцессорам Motorola; Motorola; 1182 страницы; 1981 г.
- MC6809-MC6809E Руководство по программированию микропроцессоров; Motorola; 220 страниц; 1981 г.
- Книги
- 6809 Программирование на языке ассемблера; 1-е изд; Лэнс Левенталь; 579 страниц; 1981; ISBN 0-931988-35-7. (архив)
- Поваренная книга MC6809; 1-е изд; Карл Уоррен; 180 страниц; 1980; ISBN 0-8306-9683-0. (архив)
- Усовершенствованный 8-битный микропроцессор: MC6809: его программное обеспечение, оборудование, архитектура и методы взаимодействия; 1-е изд; Роберт Симпсон; 274 страницы; 1998; ISBN 978-9813083097
- Журналы
- Микропроцессор революции: модель 6809; Терри Риттер и Джоэл Бони (соавторы 6809); Журнал BYTE; Январь-февраль 1979 г. (архив)
- Микропроцессор MC6809; Ян Пауэрс; Микропроцессоры, Том 2, Выпуск 3; Июль 1978 г .; стр. 162; ISSN 0308-5953, Дои:10.1016/0308-5953(78)90010-7.
- Справочные карты
- Справочная карта MC6809; Motorola; 16 страниц; 1981 г. (архив)
- 6809/6309 Справочная карта; Крис Ломонт; 10 страниц; 2007 г. (архив)
внешняя ссылка
- Симуляторы / Эмуляторы
- 6809 Страница эмуляции - сборник из 6809 инструкций, эмуляторов, инструментов, отладчиков, дизассемблеров, ассемблеров
- 6809 Эмулятор на базе системы SWTPC 6809
- Доски
- FPGA
- System09 6809 CPU core - исходный код VHDL - OpenCores - сайт проекта