статьиGNU Free Documentation License материалы взяты из Википедии Статья была изменена. Оригинал статьи.

Motorola 680x0

Материал из Энциклопедии в свободной энциклопедии
(перенаправлено с «68k»)
Перейти к: навигация, поиск

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

Предсерийный чип XC68000, произведённый в 1979 г..

Содержание

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

Линейка процессоров m68k использовалась на различных системах, от калькуляторов Texas Instruments, TI-89, до критичных систем управления Спейс Шаттла.

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

На сегодняшний день[когда?], на базе старших моделей этой популярной[источник не указан 270 дней] процессорной линейки (сегодня, чаще всего используются Freescale ColdFire и DragonBall) проектируются в основном embedded-решения и некоторые КПК. Архитектура m68k поддерживается операционными системами Debian Linux, NetBSD и OpenBSD, также, энтузиастами иногда обновляются и другие дистрибутивы Linux. Проприетарные ОС AmigaOS 4 и MorphOS поддерживают архитектуру m68k на уровне JIT-эмуляции).

[править] Архитектура

Программисты, знакомые с ассемблером PDP-11 и VAX, обычно чувствуют себя комфортно, программируя M68k. Несмотря на исключение в виде разделения регистров общего назначения на специализированные регистры адресов и регистры данных, архитектура 68000 во многом в 32-битная версия PDP-11.

Набор инструкций значительно более «ортогонален», чем у многих процессоров, появившихся как ранее (как i8080), так и после (как семейство x86). На практике это означает, что возможно свободно комбинировать операции и операнды, со всем богатством режимов адресации, не задумываясь о ограничениях совместимости конкретной операции и набора операндов. Эта особенность существенно облегчает программирование на ассемблере 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 MC68000FN8.jpg
Motorola 68020
Motorola 68040
Motorola MC68EC060

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

[править] Amiga

[править] Apple

[править] MC68000

[править] MC68020

[править] MC68030

[править] MC68040

[править] MC68HC000

[править] MC68LC040

[править] Atari

[править] Sharp

[править] Sinclair Research

[править] SUN

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

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

[править] Sega

[править] SNK

[править] Capcom

[править] Эмуляторы

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


Пространства имён

Варианты
Просмотры
Действия