Interested Article - Motorola 680x0

MC680x0/680x0/0x0/m68k/68k/68K — семейство CISC - микропроцессоров компании Motorola , основной конкурент процессоров семейства Intel x86 в персональных компьютерах 1980-х и первой половине 90-х. Перестав использоваться как основа персональных компьютеров в начале 2000-х, семейство продолжает использоваться в секторе встраиваемых решений (хотя это семейство морально устарело и для этого сектора, ибо многими фирмами производятся более доступные и производительные процессоры/контроллеры: ARM (в частности, STM32 ), AVR32 , PIC32 (он же MIPS ) и прочие на основе RISC-архитектур ). Характерно то, что наиболее современная серия микроконтроллеров DragonBall MX (позже переименованная в i.MX, а также известная как MC9328MX) предназначена для тех же применений, что и ранние серии DragonBall , но основана на процессорном ядре ARM9 или ARM11 вместо Motorola 68000.

Предсерийная микросхема XC68000, произведённая в 1979 г.

Область применения

Линейка процессоров m68k использовалась на различных системах, от калькуляторов Texas Instruments ( TI-89 Titanium , TI-92, Voyage 200), военных терминалов связи ВМФ США AN/USQ-83, до критичных систем управления Спейс Шаттла .

На базе процессоров m68k было построено множество платформ персональных компьютеров , самыми известными из которых являются: Apple Macintosh , Commodore Amiga и Atari ST . Надо отметить, что популярный КПК Palm также изначально использовал процессоры Motorola .

На 2020 год на базе старших моделей этой популярной процессорной линейки (чаще всего используются Freescale ColdFire v5x и DragonBall ) проектируются в основном embedded -решения. Архитектура m68k поддерживается операционными системами Debian Linux , NetBSD (архитектуры amiga, atari, cesfic, hp300, luna68k, mac68k, mvme68k, news68k, next68k, sun3, x68k) и OpenBSD (архитектуры amiga и mac68k ), также, энтузиастами иногда создаются и обновляются дистрибутивы Linux . Проприетарные ОС AmigaOS 4 и MorphOS поддерживают архитектуру m68k на уровне JIT -эмуляции. Также обновляется классическая AmigaOS для m68k: 1 октября 2018 компания Hyperion Entertainment выпустила AmigaOS 3.1.4, а 30 июня 2019 года выпустила обновлённую AmigaOS 3.1.4.1, которая на 2020 год продаётся через дилерскую сеть . В 2020 году началась разработка AmigaOS 3.2 для архитектуры классической Amiga m68k .

Архитектура

Язык ассемблера M68k схож с ассемблером PDP-11 и VAX . Несмотря на исключение в виде разделения регистров общего назначения на специализированные регистры адресов и регистры данных, архитектура 68000 во многом — 32-битная версия PDP-11. Несмотря на то, что система команд с самого начала описывает 32-битную машину, первое поколение процессоров (до 68020) имело 16-битное АЛУ, из-за чего иногда процессор описывается как имеющий смешанную битность 16/32. При этом 32-битные команды с данными выполнялись в несколько действий с 16-битным АЛУ, но блок адресации сразу был 32-битным, поэтому индексация памяти и вычисления адресов не страдали по быстродействию с самого начала. Когда в 68020 АЛУ сделали 32-битным, то ничего не надо было делать с уже существующим кодом, чтобы он начал работать «на полной скорости 32 бит».

Набор инструкций значительно более «ортогонален», чем у многих процессоров, появившихся ранее (как i8080 ). На практике это означает, что возможно свободно комбинировать операции и операнды, со всем богатством режимов адресации, не задумываясь об ограничениях совместимости конкретной операции и набора операндов. Эта особенность существенно облегчает программирование на ассемблере 68k, в определённой степени приближая его к языкам высокого уровня, а также существенно облегчает создание кода компиляторами.

Инструкции 68k можно разделить на несколько крупных групп:

  • Операции с памятью (Load&store — Move.B, Move.W, Move.L);
  • Арифметика (Add, Sub, Mul, Div);
  • Побитное смещение (влево и вправо, логическое и арифметическое);
  • Циклические битовые сдвиги (ROR, ROL, ROXL, ROXR);
  • Логические операции (And, Or, Not, EOr);
  • Конверсия типов ( байт в слово и наоборот);
  • Условное и безусловное ветвление (Bra, BCS, BEq, BNE, BHI, BLO, BMI, BPL, etc.);
  • Вызов подпрограмм и возврат из них (BSR, RTS);
  • Управление стеком (push, pop);
  • Вызов и обработка прерываний;
  • Обработка ошибок и исключений.

Процессоры семейства Motorola 68k

  • Первое поколение
    • Motorola 68000 — 32-разрядная архитектура, но 16-разрядное АЛУ; 68000 транзисторов; 16-битная шина данных/24-битная шина адресов; частота 8-16 МГц; 64 или 68 контактов.
      • DIP версии
        • Motorola 68000L
        • Motorola 68000L8
        • Motorola 68HC000P8
        • Motorola 68000P8
        • Motorola 68000P12
        • Motorola 68000P12F
        • Motorola 68HC000P12F
      • PGA версии
        • Motorola 68HC000RC10
        • Motorola 68000R12
      • PLCC версии
        • Motorola 68000FN8
        • Motorola 68HC000FN8
        • Motorola 68000FN10
        • Motorola 68HC000FN12
        • Motorola 68HC000FN12F
        • Motorola 68EC000FN16
        • Motorola 68HC000FN16
    • Motorola 68008 — 32-разрядная архитектура, но 16-разрядное АЛУ; 70000 транзисторов; 8-битная шина данных/20-битная шина адресов; частота 8-10 МГц; 48 контактов.
    • Motorola 68010 — 32-разрядная архитектура, но 16-разрядное АЛУ; усовершенствование MC68000; 84000 транзисторов; 16-битная шина данных/24-битная шина адресов; частота 8-12 МГц; 64 или 68 контактов.
    • Motorola 68012
  • Второе поколение (полностью 32-разрядное ядро)
Motorola 68020
    • Motorola 68020
    • Motorola 68EC020
    • Motorola 68030
    • Motorola 68EC030
  • Третье поколение ( конвейерные )
Motorola 68040
Motorola MC68EC060

Компьютеры, основанные на этих процессорах

Amiga

  • Компьютеры на базе чипсета OCS
  • Компьютеры на базе чипсета ECS
  • Компьютеры на базе чипсета AGA
  • Открытое аппаратное обеспечение Minimig и др. подобные проекты

Apple

Atari

Sharp

Sinclair Research

SUN

Советские компьютеры

Игровые системы (телевизионные приставки и автоматы), основанные на этих процессорах

Sega

SNK

Capcom

  • CPS (Capcom play system) (68000)
  • CPSC (Capcom power system changer) (68000)

  • (68000)

Эмуляторы

Существуют программные эмуляторы как процессоров семейства MC68k, так и конкретных систем, построенных на их основе:

  • ide68k

Примечания

  1. Jane’s Military Communications. (англ.) / Edited by R. J. Raggett. — 8th ed. — L.: Jane’s Information Group , 1987. — P.477 — 894 p. — ISBN 0-7106-0839-X .
  2. . Дата обращения: 3 декабря 2020. 2 декабря 2021 года.
  3. . Дата обращения: 3 декабря 2020. 26 декабря 2020 года.
  4. . Дата обращения: 3 декабря 2020. 23 января 2021 года.
  5. . Дата обращения: 3 декабря 2020. 28 апреля 2019 года.
  6. . Дата обращения: 3 декабря 2020. 27 февраля 2021 года.
  7. . Дата обращения: 3 декабря 2020. 22 декабря 2020 года.
  8. . Дата обращения: 3 декабря 2020. 22 декабря 2020 года.
  9. . Дата обращения: 3 декабря 2020. 25 апреля 2021 года.
  10. Дата обращения: 3 декабря 2020. 10 декабря 2020 года.
  11. . Дата обращения: 3 декабря 2020. 7 ноября 2020 года.
  12. . Дата обращения: 3 декабря 2020. 9 июня 2019 года.
  13. . Дата обращения: 3 декабря 2020. 30 октября 2020 года.
  14. . Дата обращения: 3 декабря 2020. 24 января 2020 года.
Источник —

Same as Motorola 680x0