Jump to content

РКА 1802

(Перенаправлено с CDP 1802 )
КОСМАК
РКА CDP 1802
Общая информация
Запущен 1974
Физические характеристики
Упаковка
  • 40-контактный DIP , 44-контактный PLCC
История
Преемник CDP1804, CDP1805, CDP1806
Штамп RCA CDP1802

COSMAC представленное (компьютер с монолитным массивом комплементарной симметрии) — семейство 8-битных микропроцессоров, компанией RCA . Исторически он известен как первый микропроцессор CMOS . [1] Первой серийной моделью стали двухчиповые CDP1801R и CDP1801U , которые позже были объединены в одночиповый CDP1802 . [2] Модель 1802 представляла собой большую часть продукции COSMAC, и сегодня вся линейка известна просто как RCA 1802 .

История процессора восходит к экспериментальному домашнему компьютеру, разработанному Джозефом Вайсбекером в начале 1970-х годов и построенному у него дома с использованием TTL- компонентов. RCA начала разработку версии процессора с КМОП-схемой в 1973 году, а в 1974 году опробовала ее, планируя немедленно перейти к однокристальной реализации. Джерри Херцог руководил разработкой однокристальной версии, образцы которой были выпущены в 1975 году и запущены в производство в 1976 году. [3] [4]

В отличие от большинства проектов той эпохи, которые были изготовлены с использованием процесса NMOS , COSMAC был реализован в форме CMOS и использовал статическую логику . Это позволило ему работать на более низких настройках мощности и даже полностью остановиться; кроме того, он будет работать холоднее и не будет выделять столько тепла, как чипы NMOS. RCA также выпустила радиационно-стойкие версии, которые нашли применение в аэрокосмической области. [5] Они остаются в производстве по состоянию на 2022 год. [5] и по состоянию на 2008 год продолжал производиться Renesas (ранее Intersil ). [6] [7]

Преемниками 1802 являются CDP1804, CDP1805 и CDP1806, которые имеют расширенный набор команд, другие расширенные функции (такие как встроенное ОЗУ и ПЗУ, а также встроенный таймер), причем некоторые версии работают на более высоких тактовых частотах, хотя и не значительная разница в скорости. Некоторые функции также потеряны, например, DMA функция автоматической загрузки . Есть также некоторые незначительные изменения в функциях выводов, но линия по-прежнему производится в исходном формате 40-контактного двухрядного корпуса (DIP). [ когда? ]

Джозеф Вайсбекер уже давно восхищался потенциалом домашних компьютеров: еще в 1955 году он заявил, что ожидает, что однажды они будут встроены практически в каждое устройство. Технологии той эпохи сделали невозможными создание небольших встроенных компьютеров, но появление интегральных схем (ИС) в 1960-х годах кардинально изменило ситуацию. В 1974 году он описал эти возможности в статье IEEE Computer:

За 20 лет компьютерное оборудование становилось все более сложным, языки — более изощренными, а операционные системы — менее эффективными. Теперь микрокомпьютеры дают некоторым из нас возможность вернуться к более простым системам. Недорого… микрокомпьютеры могут открыть огромные новые рынки. [8]

Начиная с 1970 года, [а] Вайсбекер начал разработку небольшой машины, используя микросхемы транзисторно-транзисторной логики RCA (TTL) для построения процессора. Другие детали, выключатели, лампы и тому подобное, ему приходилось покупать в Radio Shack , намеренно распределяя свои покупки по четырем магазинам, чтобы никто не спросил его, почему он покупает так много деталей. [9] Проект работал в октябре 1971 года и содержал 100 чипов. [1] распределены по нескольким печатным платам . [1]

Результат, который он назвал FRED, якобы для гибкого развлекательного образовательного устройства, был упакован в коробку, которая мало чем отличалась от Altair 8800 , выпущенного несколькими годами позже, с тумблерами на передней панели для ввода, лампами для вывода, а позже добавлением клавиатура шестигранная . [9] Weisbecker постоянно добавлял новые функции, и к 1972 году у него появился генератор символов и возможность загружать и сохранять программы на кассеты . [1]

Дочь Вайсбекера, Джойс Вайсбекер , сразу же увлеклась системой и начала писать для нее программы. Сюда входило несколько игр, которые были портированы на более поздние машины на базе COSMAC. RCA вошла в бизнес игровых консолей Когда в конце 1970-х годов , эти игры были записаны на картриджи ПЗУ , и Джойс стала первой известной женщиной-разработчиком коммерческих видеоигр. [9]

Выпускать

[ редактировать ]

Вайсбекер все это время демонстрировал машину руководству RCA, но поначалу интереса к ней было мало. Это произошло вскоре после того, как Дэвид Сарнофф ушел на пенсию и передал роль генерального директора своему сыну Роберту Сарноффу . Роберт был больше заинтересован в создании медиа-стороны компании, одновременно встречаясь со звездами звукозаписи, игнорируя RCA Laboratories, несмотря на ряд ведущих в отрасли событий, происходящих там. Некоторый скептицизм, проявленный руководством, возможно, был связан с недавней продажей компанией по производству своего бизнеса Sperry Rand мейнфреймов с огромным списанием . [9]

В конце концов компания заинтересовалась системой и начала адаптировать ее к своей недавно представленной системе производства COS/MOS. Отчет лаборатории 1973 года [б] относится к «прототипу», выпущенному в 1972 году, но, вероятно, имеется в виду исходная реализация TTL. Далее отмечается, что была предпринята попытка сократить процессор до двухчиповой реализации с поставками в COS/MOS в 1974 году. Именно здесь процессор впервые упоминается как COSMAC, что означает компьютер с комплементарной симметрией и монолитной матрицей. Далее говорится, что другая лаборатория будет производить систему в формате 8-чипового кремния на сапфире , хотя дата просто «вскоре после» версий CMOS, и что планы по выпуску однокристальной версии уже разрабатываются. запланировано. [10] [с]

устройства КОСМАК

[ редактировать ]

Хотя RCA начала разработку COSMAC в начале 1970-х годов, прошло некоторое время, прежде чем они представили свои собственные продукты на его основе. прототипом аркадного игрового автомата со сменными ПЗУ, но в конечном итоге от него отказались. В 1975 году для монетного бизнеса экспериментировали с [9]

Тем временем Вайсбекер адаптировал оригинальную FRED, известную в RCA к тому времени как System 00, используя новый набор микросхем для создания значительно упрощенной одноплатной системы, известной тогда как COSMAC ELF . Инструкции по сборке были описаны в статье в журнале Popular Electronics в 1976 году, а расширенная версия с различными обновлениями - во второй статье в 1977 году. Уникальной особенностью ELF является то, что для запуска ему не требовалось постоянное запоминающее устройство (ПЗУ). (DMA) процессора для считывания переключателей на передней панели непосредственно в память. прямого доступа к памяти вместо этого использовалась система [9]

RCA обсуждала, стоит ли выводить на рынок готовые версии ELF. Пока они спорили, дальнейшее развитие привело к созданию упрощенной машины, сочетающей ELF с новым драйвера дисплея чипом CDP1861 для производства игровой консоли . За это время RCA наняла Джойса для написания нескольких видеоигр для платформы, в том числе образовательного продукта в стиле викторины в партнерстве с Random House , одной из многих компаний, которые были подхвачены покупательской активностью RCA. [9]

После года обсуждений компания в конечном итоге решила выпустить два продукта для массового рынка на базе этой платформы: комплектный компьютер, известный как COSMAC VIP , и игровую консоль, известную как RCA Studio II . Машины были доступны с 1975 года, но о Studio II было объявлено только в январе 1977 года, через пару месяцев после того, как Fairchild Channel F стала первой машиной с картриджами на рынке. Оба вскоре были затмены и в значительной степени забыты из-за выпуска Atari 2600 позже в том же году. RCA закрыла Studio II в феврале 1978 года. [9]

RCA также выпустила серию модульных компьютерных систем, основанных на форм-факторе RCA Microboard , начиная с первого выпуска 1802 года и вплоть до распада самой RCA. В основном они были нацелены на разработку промышленных приложений и систем и имели широкие возможности настройки. [12]

Встроенное использование

[ редактировать ]

COSMAC был уникальным среди первых 8-битных процессоров, поскольку он был специально разработан для использования в микрокомпьютерах; другие разработки той эпохи неизменно были нацелены на пространство встроенных процессоров , а те, что были разработаны для использования в компьютерах, как правило, представляли собой более сложные системы, часто 16-битные. Хотя COSMAC был разработан для использования на компьютере, медленный выход RCA на рынок и недостаточно поддерживаемые попытки выйти на этот рынок в конечном итоге потерпели неудачу, и другие процессоры, такие как MOS 6502 и Zilog Z80, стали доминировать на этом рынке. По иронии судьбы, COSMAC в конечном итоге добился большого успеха на рынке встраиваемых систем, поскольку его конструкция CMOS позволяла ему работать при меньшем энергопотреблении. К концу 1970-х годов он широко использовался во многих отраслях промышленности, особенно в аэрокосмической отрасли. Несколько процессоров 1802 использовались в качестве вспомогательных процессоров ввода-вывода в зонде Галилео к Юпитеру в 1989 году, и они продолжают использоваться в аналогичных целях и по сей день. [9]

Приложения

[ редактировать ]

Микрокомпьютерные системы

[ редактировать ]

Ряд ранних микрокомпьютеров был основан на 1802, в том числе COSMAC ELF (1976), Netronics ELF II , Quest SuperELF , COSMAC VIP , Comx-35 , финский Telmac 1800 , Telmac TMC-600 и Oscom Nano , югославский Pecom 32 и 64. и системы CyberVision 2001, проданные через Montgomery Ward в конце 1970-х годов, [13] а также RCA Studio II игровая консоль (одна из первых консолей, использующих растровую графику). тренажерная система Edukit Одноплатная компьютерная , похожая на расширенную систему COSMAC Elf , была предложена компанией Modus Systems Ltd. в Великобритании в начале 1980-х годов. [14] В конце 1970-х годов компания Infinite Incorporated произвела расширяемый консольный компьютерный тренажер на базе 1802 года под названием UC1800, доступный в собранном виде или в виде комплекта. [15] [16]

В рамках работы любителей ретрокомпьютеров 1802 года позже (после 2000 года) были построены и другие компьютеры, в том числе комплект микрокомпьютера Membership Card , который помещается в банку Altoids. [17] и вещицы для свободного времени Elf ​​2000 (Elf 2K), [18] среди других. См. § Эмуляторы и симуляторы для других систем.

Интеграция продукта

[ редактировать ]

Модель 1802 также использовалась в научных приборах и коммерческой продукции. [19] [20]

Автомобили Chrysler, выпущенные после 1980 года, и связанные с ними модели используют 1802 в своей электронной системе сжигания обедненной смеси второго поколения с электронным контролем искры, одной из первых бортовых систем управления на базе компьютера. [21] [22]

Модель 1802 использовалась при производстве многих автоматов для игры в пинбол и игровых автоматов в Испании. [23]

Радиационная закалка

[ редактировать ]

Высокоскоростная версия 1802 была изготовлена ​​по полупроводниковой технологии «кремний на сапфире » (SOS), что придает ей определенную устойчивость к радиации и электростатическим разрядам (ESD). [24] Другая радиационно-стойкая версия 1802 года, разработанная совместно RCA и Sandia National Laboratories , была построена на массивном кремнии с использованием C. 2 Технология L (закрытая логика COS/MOS). [25] [26] Наряду с чрезвычайно низким энергопотреблением, это делает чип хорошо подходящим для космических и военных приложений. [25] (Кроме того, в то время, когда был представлен 1802, на рынке было очень мало других радиационно-стойких микропроцессоров, если они вообще были доступны).

Космические технологии и наука

[ редактировать ]

1802 использовался во многих космических кораблях и программах космической науки, экспериментах, проектах и ​​модулях, таких как космический корабль Галилео , [27] Магеллан , [28] прибор «Анализатор плазменных волн» на космическом корабле ЕКА «Улисс», различных спутниках на околоземной орбите. [29] и спутники, передающие любительскую радиосвязь. [30]

Согласно исходной документации НАСА, модель 1802 использовалась в космическом телескопе Хаббл . [31]

Военное использование

[ редактировать ]

Ряд британских военных предметов 1980-х и 1990-х годов использовали модель 1802, в том числе:

Языки программирования

[ редактировать ]

Первым языком высокого уровня, доступным для 1802, был Forth , предоставленный Forth, Inc. и известный как MicroFORTH в 1976 году (см. архив Forth Inc.). Другими доступными языками программирования, как интерпретаторами, так и компиляторами, являются CHIP-8 (он также был изобретен Джозефом Вайсбекером ) (и варианты), 8-й (версия Форта, созданная Ли Хартом), [33] Тома Питтмана Tiny BASIC , [34] C, различные ассемблеры и кросс-ассемблеры и другие. Другие специальные языки использовались федеральными агентствами, такими как НАСА и его учреждениями, включая Космический центр Джонсона, AMES, Годдарда, Лэнгли, Маршалла и Лабораторию реактивного движения (JPL), которая включала кросс-компилятор HAL/S, [35] СТОИК , язык, подобный Форту, [36] и другие.

Interpreter for Process Structures (IPS), язык программирования и среда разработки, был специально написан и использовался для управления спутниками AMSAT в реальном времени .

Эмуляторы и симуляторы

[ редактировать ]

Чип 1802 и компьютеры, использующие микропроцессор, эмулировались и моделировались с помощью аппаратного и/или программного обеспечения любителями. существует три конструкции VHDL FPGA В . [37] [38] [39] Полноскоростной клон COSMAC Elf с точностью до шины был создан без микропроцессора CDP1802 или видеочипа CDP1861 с использованием PIC микроконтроллеров . [40] Онлайн-симулятор COSMAC Elf (расширенный), написанный на JavaScript, запускается в браузере пользователя без необходимости загрузки. [41]

Описание

[ редактировать ]

Введение

[ редактировать ]
DIP-чипа процессора RCA CDP1802 COSMAC Распиновка

RCA 1802 имеет статическое ядро ​​CMOS без минимальной тактовой частоты , поэтому его можно использовать на очень низких скоростях и малом энергопотреблении, включая нулевую тактовую частоту для приостановки работы микропроцессора, не влияя на его работу.

Он имеет две отдельные 8-контактные шины: 8-битную двунаправленную шину данных с временным мультиплексированием и шину адреса , причем к старшим и младшим 8 битам 16-битного адреса осуществляется доступ в чередующихся тактовых циклах. Это контрастирует с большинством разработок той эпохи, такими как MOS 6502 и Intel 8080 , которые использовали 16-битную адресную шину.

1802 имеет одноразрядный , программируемый и тестируемый выходной порт (Q) и четыре входных контакта, которые напрямую проверяются инструкциями ветвления (EF1-EF4). Эти контакты позволяют ввода/вывода выполнять простые задачи (I/O) напрямую и легко программировать.

Поскольку выполнение инструкций занимало 16 или 24 такта, 1802 не был особенно быстрым. Для сравнения: 6502 выполняет большую часть инструкций за 2–4 такта, причем самая длинная (официальная инструкция) [42] прошло 7 циклов. [43]

Обозначения суффиксов номера детали

[ редактировать ]

Различные суффиксы к номеру детали CDP1802 обозначают технические характеристики, включая (A, B и C), рабочую скорость (от 3,2 до 6,4 МГц), температуру (от -40 °C до +85 °C, от -55 °C до +125 °). C), а также диапазоны напряжения (от 4 В до 10,5 В), тип корпуса (D, E, Q) и степень сгорания (X). Они были в некоторой степени стандартизированы между различными поставщиками источников, включая RCA, Intersil, Harris, Hughes Aircraft и Solid State Scientific (SSS). Hughes использовал префикс HCMP, а SSS использовал префикс SCP (и, возможно, BCP) вместо CDP и имел дополнительные суффиксы, которые еще не были задокументированы. (примеры: CDP1802A, CDP1802ACE, CDP1802BCD, HCMP1802AP, SCP1802D) [44]

Суффикс Тип упаковки
И PDIP = пластиковый двойной линейный корпус
Д SBDIP = керамический двойной рядный корпус с боковой пайкой
вопрос PLCC = Пластиковый держатель чипа с выводами
Х Выгорание

Регистры и ввод-вывод

[ редактировать ]
Зарегистрировать модель

1802 — это 8-битная машина с минимальной поддержкой 16-битных операций, за исключением манипуляций с 2 ​​байтами. Первичным аккумулятором является 8-битный регистр D (регистр данных). Однобитовый флаг переноса — DF (флаг данных). Большинство операций используют регистр D, включая арифметические и логические функции, а также инструкции загрузки и сохранения памяти. Большинство 16-битных операций должны работать с младшим байтом, а затем со старшим байтом через D, используя DF в качестве переноса и заимствования по мере необходимости.

Важной особенностью 1802 является набор из шестнадцати регистров по 16 бит каждый, используемых в основном для адресации. Используя инструкцию SEP, вы можете выбрать любой из 16 регистров в качестве счетчика программы ; используя инструкцию SEX, вы можете выбрать любой из 16-битных регистров в качестве индексного регистра . [45] Регистр R0 предназначен для хранения адреса памяти встроенного контроллера DMA . Регистр R1 имеет особое назначение: он является программным счетчиком для обработчика прерываний. [46]

Существуют инструкции, которые позволяют устанавливать и читать значения в этих регистрах через D, раздельно обрабатывая верхние и нижние 8 бит одновременно. Существуют также инструкции для увеличения и уменьшения всего 16-битного значения, а несколько инструкций выполняют автоматическое увеличение и уменьшение, например LDA (увеличение загрузки) и STXD (сохранение через X и уменьшение). Для сравнения 16-битных регистров и значений также потребуется использовать регистр D в качестве посредника, используя несколько инструкций для выполнения операций.

Процессор имеет пять специальных линий ввода-вывода . Имеется один выход Q, который можно установить с помощью инструкции SEQ и сбросить с помощью инструкции REQ. Имеется четыре внешних входа однобитовых флагов: EF1, EF2, EF3 и EF4, а также восемь специальных инструкций ветвления для условного перехода в зависимости от состояния этих входных линий. Существует семь инструкций порта ввода и семь инструкций порта вывода, которые используют регистр RX и аккумулятор D.

Линии EF и Q обычно использовались для нескольких интерфейсов на компьютерах для любителей на базе 1802 из-за удобного и простого обращения с линиями. Для линии Q было типично управлять светодиодным индикатором состояния , кассетным интерфейсом, интерфейсом RS-232 и динамиком. Это означало, что пользователь действительно мог слышать передаваемые данные RS-232 и кассеты (если не был реализован регулятор громкости). Традиционно линия EF4 подключается к кнопке мгновенного действия INPUT на COSMAC Elf. Другие системы могут использовать одну из других линий.

Есть и другие регистры и флаги специального назначения, некоторые внутренние, а некоторые можно использовать программно: 4-битные N, P, X и I; 8-битный Т; и 1-битный IE. В Интернете существует множество вариантов Таблицы Инструкций 1802 года, вот одна ссылка: https://www.atarimagazines.com/computeii/issue3/page52.php В области файлов есть несколько таблиц для вошедших в систему членов онлайн-клуба 1802 для форума по адресу https://groups.io/g/cosmacelf/files . Каждая инструкция представляет собой один байт из 8 бит. 4 бита слева, иногда называемые шестнадцатеричными цифрами старшего порядка, относятся к фактическому характеру инструкции, и эти 4 бита связаны с I-регистром. 4 бита справа, иногда называемые младшими шестнадцатеричными цифрами, относятся к рабочему регистру, из которого данные извлекаются или помещаются в него, и эти 4 бита связаны с регистром N. Когда программа выполняется, различные этапы работы и процессы временно сохраняются в регистре, на который указывает регистр N, подобно тому, что происходит, когда на листе бумаги выполняется длинное умножение или длинное деление. Конечно, иногда данные перемещаются в раздел оперативной памяти и обратно, и создаются разные ветки программы. по мере необходимости, в течении времени.

Ветвление

[ редактировать ]

В 1802 есть три типа безусловного и условного ветвления: короткое и длинное и пропуски.

Короткие ветки представляют собой 2-байтовые инструкции и используют диапазон 256 байт, однобайтовый адрес, абсолютную адресацию страницы в диапазоне от 0 до 255 (шестнадцатеричный FF). Относительного ветвления нет. Короткая ветвь всегда переходит на страницу, содержащую адресный байт. [46]

Длинные ветви используют полную 16-битную адресацию для поддержки адресного пространства памяти 64 КБ и являются единственными 3-байтовыми инструкциями.

Инструкции по пропуску увеличивают ПК на единицу для безусловного короткого пропуска или на два для длинного пропуска. Только длинный пропуск имеет условное ветвление.

Вызовы подпрограмм

[ редактировать ]

В процессоре нет стандартного адреса подпрограммы CALL и инструкций RET, хотя их можно смоделировать. 16-регистровая конструкция делает возможным использование некоторых интересных механизмов вызова и возврата подпрограмм, хотя они лучше подходят для небольших программ, чем для кодирования общего назначения.

Некоторые часто используемые подпрограммы можно вызвать быстро, сохранив их адрес в одном из 16 регистров; однако вызываемая подпрограмма должна знать (жестко запрограммировать), что такое регистр вызывающего ПК, чтобы выполнить инструкцию «возврата». Инструкция SEP используется для вызова подпрограммы, на которую указывает один из 16-битных регистров, и другого SEP для возврата к вызывающей стороне (SEP означает Set Program Counter и выбирает, какой из 16 регистров будет использоваться в качестве программы). счетчик с этого момента). Прежде чем подпрограмма возвращается, она переходит в позицию, непосредственно предшествующую ее точке входа, так что после того, как инструкция возврата SEP возвращает управление вызывающей стороне, регистр будет указывать на правильное значение для следующего использования. (процессор всегда увеличивает количество ПК после обращения и использования (получения следующей инструкции для выполнения), поэтому этот метод работает, как указано)

Интересным вариантом этой схемы является размещение в кольце двух или более подпрограмм, чтобы они вызывались в циклическом порядке. На первых компьютерах-любителях подобные приемы и методы обычно использовались в прерывании горизонтального обновления, чтобы перепрограммировать адрес строки сканирования для повторения каждой строки сканирования четыре раза для видеоконтроллера.

Одна хорошо известная и часто используемая процедура известна как SCRT (стандартная техника CALL и RETURN), которая позволяет выполнять вызов и возврат подпрограммы общего назначения, включая передачу параметров «в строке» и вложенные подпрограммы с использованием стека. Хотя для этого метода можно использовать любой из доступных регистров, по желанию программиста, многие используют процедуру, предоставленную RCA в руководстве пользователя CDP1802, где предлагаемое использование регистра: R2 = указатель стека, R3 = общий счетчик программ (ПК), R4 = вызов, R5 = возврат, R6 = указатель переданных аргументов (неразрушающий). Несмотря на то, что эти вспомогательные процедуры невелики, их использование приводит к увеличению скорости выполнения. (в отличие от того, что было бы, если бы фактические инструкции CALL и RET были частью конструкции микропроцессора). Эта настройка позволяет использовать R0 для DMA и R1 для прерываний, если это необходимо, позволяя R7 через RF (шестнадцатеричный) для общего использование программы.

Режимы адресации

[ редактировать ]

Из-за 16-битной адресной шины и 8-битной шины данных ширина шестнадцати регистров общего назначения составляет 16 бит, а ширина D-регистра аккумулятора составляет всего 8 бит. Таким образом, аккумулятор становится узким местом. Передача содержимого одного регистра в другой включает четыре инструкции (одну Get и одну Put для HI-байта регистра и аналогичную пару для LO-байта: GHI R1; PHI R2; GLO R1; PLO R2). Аналогично, загрузка новой константы в регистр (например, нового адреса для перехода к подпрограмме или адреса переменной данных) также включает в себя четыре инструкции (две инструкции немедленной загрузки, LDI, по одной для каждой половины константы, каждая за одной следует инструкция помещения в регистр, PHI и PLO).

Два режима адресации : «Непрямой регистр» и «Непрямой регистр с автоинкрементом» достаточно эффективны для выполнения 8-битных операций с данными в аккумуляторе. Однако других режимов адресации нет. Таким образом, режим прямой адресации необходимо эмулировать с помощью четырех инструкций, упомянутых ранее, для загрузки адреса в запасной регистр; за которым следует инструкция выбора этого регистра в качестве индексного регистра; за которым, наконец, следует предполагаемая операция над переменной данных, на которую указывает этот адрес.

DMA и режим загрузки

[ редактировать ]

CDP1802 имеет простой встроенный контроллер DMA с двумя линиями запроса DMA для ввода и вывода DMA. ЦП обращается к памяти только во время определенных циклов многошагового машинного цикла, для которых требуется от 8 до 16 тактов. Внешнее оборудование могло считывать или записывать данные в течение этих периодов, не прерывая работу процессора. Эта общая концепция известна как « кража цикла» .

R0 используется как указатель адреса DMA. Начальный адрес данных DMA будет помещен в R0, а затем будет установлен низкий уровень соответствующего вывода чтения или записи на ЦП. ЦП ответил на запрос DMA, увеличив значение R0, так что следующий запрос автоматически сохранялся в следующей ячейке памяти. Таким образом, просто многократно активируя контакты DMA, система будет проходить через всю память.

Контроллер DMA также предоставляет специальный «режим загрузки», который позволяет загружать память, пока активны входы CLEAR и WAIT процессора. Это позволяет загружать программу без необходимости использования загрузчика на основе ПЗУ. Он использовался микрокомпьютером COSMAC Elf и его преемниками для загрузки программы с тумблеров или шестнадцатеричной клавиатуры без необходимого программного обеспечения и минимального оборудования. Пользователь мог просто установить переключатели на следующее значение, переключить чтение и затем двигаться дальше. Не было необходимости менять адреса, это было сделано автоматически степпингом DMA.

Время обучения

[ редактировать ]

Эффективность тактового цикла низкая по сравнению с большинством 8-битных микропроцессоров. Восемь тактов составляют один машинный цикл. Для выполнения большинства инструкций требуется два машинных цикла (16 тактов); остальные инструкции занимают три машинных цикла (24 такта). Для сравнения, MOS Technology 6502 требует от двух до семи тактовых циклов для выполнения инструкции, а Intel 8080 — от четырех до 18 тактовых циклов.

Инструкции RCA CDP 1802 в шестнадцатеричном порядке
Код операции Инструкция Мнемоника Машинные циклы
00 Он простаивает, выполняет циклы выборки (я думаю) МВУ 2
Загрузить D с адреса в RN ЛДН Н 2
Увеличьте 16-битное число в RN. ИНК Н 2
Уменьшите 16-битное число в RN. ДЕКАБРЬ Н. 2
30 мм Переход R(P) безоговорочно к MM БР 2
31 мм Ветвь R(P) в MM, если Q равен 1 БК 2
32 мм Переход от R(P) к MM, если D равно 00. БЖ 2
33 мм Переход от R(P) к MM, если DF равен 1. БДФ 2
34 мм Перейти R(P), если внешний флаг EF1 равен 1. Б1 2
35 мм Перейти R(P), если внешний флаг EF2 равен 1. Б2 2
36 мм Перейти R(P), если внешний флаг EF3 равен 1. Б3 2
37 мм Перейти R(P), если внешний флаг EF4 равен 1. Б4 2
38 Пропустить R(P) на 1 адресованный байт памяти. ВВП 2
39 мм Переход от R(P) к MM, если Q равен 0 БНК 2
3А ММ Переходите от R(P) к MM, если D НЕ равно 00. БНЗ 2
3Б ММ Переход от R(P) к MM, если DF равен 0. БНФ 2
3С ММ Перейти R(P), если внешний флаг EF1 равен 0. БН1 2
3Д ММ Перейти R(P), если внешний флаг EF2 равен 0. БН2 2
3Е ММ Перейти R(P), если внешний флаг EF3 равен 0. БН3 2
3F ММ Перейти R(P), если внешний флаг EF4 равен 0. БН4 2
Загрузите D по адресу в регистре RN и увеличьте RN на 1. ЛДА Н 2
Сохраните D в память, на которую указывает регистр RN. СТР Н 2
60 Увеличьте 16-битное число в R(X) ИРКС 2
61 Вывод из байта памяти в R(X) в состояние BUS ВЫХОД 1 2
62 Вывод из байта памяти в R(X) в состояние BUS ВЫХОД 2 2
63 Вывод из байта памяти в R(X) в состояние BUS ВЫХОД 3 2
64 Вывод из байта памяти в R(X) в состояние BUS ВЫХОД 4 2
65 Вывод из байта памяти в R(X) в состояние BUS ВЫХОД 5 2
66 Вывод из байта памяти в R(X) в состояние BUS ВЫХОД 6 2
67 Вывод из байта памяти в R(X) в состояние BUS ВЫХОД 7 2
68 (Не определено для RCA 1802)
69 Ввод состояния BUS в байт памяти в R(X), а также в регистр D. ИЯФ 1 2
Ввод состояния BUS в байт памяти в R(X), а также в регистр D. ИЯФ 2 2
Ввод состояния BUS в байт памяти в R(X), а также в регистр D. ИЯФ 3 2
Ввод состояния BUS в байт памяти в R(X), а также в регистр D. ИЯФ 4 2
Ввод состояния BUS в байт памяти в R(X), а также в регистр D. ИЯФ 5 2
Ввод состояния BUS в байт памяти в R(X), а также в регистр D. ИЯФ 6 2
6F Ввод состояния BUS в байт памяти в R(X), а также в регистр D. ИЯФ 7 2
70 Байт памяти по адресу в R(x) возвращается в байт памяти по адресу в R(P) после прерывания, а IE регистра разрешения прерывания включается установкой значения 1, R(X) увеличивается. ВЕРНО 2
71 Байт памяти по адресу в R(P) перемещается в байт памяти по адресу в R(X), регистр разрешения прерываний IE отключается установкой его в 0, R(X) увеличивается. ДИС 2
72 Загрузите байт памяти по адресу R(X) в регистр D, увеличьте R(X) ЛДХА 2
73 Сохраните регистр D в байте памяти по адресу R(X) и уменьшите R(X). СТХД 2
74 Добавьте байт памяти по адресу R(X) в регистр D и регистр переноса DF, и ответ переместится в регистр D и регистр переноса DF. АЦП 2
75 Вычтите регистр D и регистр переноса DF из байта памяти в R(X) и переместите ответ в регистр D и регистр переноса DF. СКБ 2
76 Сдвиньте регистр D вправо и регистр переноса DF. SHRC 2
77 Вычтите байт памяти по адресу R(X) из регистра D и регистра переноса и переместите ответ в регистр D и регистр переноса DF. СМБ 2
78 Сохраните байт из регистра T в байт памяти по адресу R(x). САВ 2
79 Сохраните 4-битный полубайт в регистре X и 4-битный полубайт в регистре P в байт в регистре T, байт из регистра T перемещается в байт в регистре R(2), полубайт из X перемещается в полубайт P , R(2) уменьшается ОТМЕТКА 2
Сброс выхода Q на 0 ЗАПРОС 2
Установите выход Q на 1 ПОСЛЕДОВАТЕЛЬНОСТЬ 2
7С КК Добавьте байт КК в регистр D с регистром переноса DF, немедленно переместите ответ в регистр D и регистр переноса DF. ADCI 2
7Д КК Вычтите байт в регистре D и регистре переноса DF из байта КК и переместите ответ в регистр D и регистр переноса DF, немедленное 2. SBDI 2
Сдвиньте регистр D влево и регистр переноса DF. SHLC 2
7Ф КК Вычтите байт KK из регистра D и регистра переноса DF, немедленно переместите ответ в регистр D и регистр переноса DF. СМБИ 2
Переместите младший байт регистра RN в регистр D. ВЕРИТЬ Н 2
Переместить старший байт регистра RN в регистр D. ЗАПИСЬ Н 2
АН Поместите байт регистра D в младший байт регистра RN. ПЛО Н 2
БН Поместите байт регистра D в старший байт регистра RN. ФИ Н 2
C0 ММММ Длинная ветвь R(P) к MMMM безоговорочно ЛБР 3
C1 ММММ Длинная ветвь R(P) к MMMM, если Q равен 1 ЛБК 3
C2 ММММ Длинная ветвь от R(P) до MMMM, если D равно 00. ЛБЗ 3
C3 ММММ Длинная ветвь R(P) к MMMM, если DF равен 1 ЛБДФ 3
С4 Нет операции НЕТ 3
С5 Длинный пропуск R(P) на 2 адресуемых байта памяти, если Q равен 0 ЛСНК 3
С6 Длинный пропуск R(P) на 2 адресуемых байта памяти, если D НЕ равен 00 ЛСНЗ 3
С7 Длинный пропуск R(P) на 2 адресуемых байта памяти, если DF равен 0 ЛСНФ 3
С8 Длинный пропуск R(P) на 2 адресованных байта памяти ЛСКП 3
C9 ММММ Длинная ветвь R(P) к MMMM, если Q равен 0 ЛБНК 3
Калифорния ММММ Длинная ветвь R(P) к MMMM, если D НЕ равно 00. ЛБНЗ 3
КБ ММММ Длинная ветвь R(P) к MMMM, если DF равен 0 ЛБНФ 3
СС Длинный пропуск R(P) на 2 адресуемых байта памяти, если IE разрешения прерываний равен 1 ЛСИЭ 3
компакт-диск Длинный пропуск R(P) на 2 адресуемых байта памяти, если Q равен 1 ЛСК 3
ЭТОТ Длинный пропуск R(P) на 2 адресуемых байта памяти, если D равен 00 ЛСЗ 3
CF Длинный пропуск R(P) на 2 адресуемых байта памяти, если DF равен 1 ЛСДФ 3
DN Установите полубайт в регистре P так, чтобы он указывал на регистр RN. СЕНТЯБРЬ Н. 2
В Установите полубайт в регистре X, чтобы он указывал на регистр RN. СЕКС Н 2
Ф0 Загрузите байт в регистр D с байтом памяти по адресу R(X). ЛДКС 2
Ф1 Логическое ИЛИ байт в регистре D с байтом памяти в R(X), переместите результат в регистр D. ИЛИ 2
Ф2 Логическое И байт в регистре D с байтом памяти в R(X), переместите результат в регистр D. И 2
F3 Исключающее ИЛИ байт в регистре D с байтом памяти в R(X), переместите результат в регистр D. БЕСПЛАТНО 2
F4 Добавьте байт в регистре D к байту памяти в R(X), переместите результат в регистр D. 2
F5 Вычтите байт в регистре D из байта памяти в R(X), переместите результат в регистр D. СД 2
F6 Сдвиг регистра D вправо 2 ШР 2
F7 Вычтите байт памяти по адресу R(X) из регистра D, переместите результат в регистр D. СМ 2
F8 КК Загрузить KK в регистр D ЛДИ 2
F9 КК ИЛИ байт в регистре D с помощью КК, переместите ответ в регистр D ИЛИ 2
ФА КК И байт в регистре D с КК, переместим ответ в регистр D ГОДЫ 2
ФБ КК Исключающее ИЛИ байт в регистре D с помощью КК, переместим ответ в регистр D XRI 2
ФК КК Добавьте байт в регистр D с помощью KK, переместите ответ в регистр D и регистр переноса DF. ИМЯ 2
ФД КК Вычтите из КК байт в регистре D, переместите ответ в регистр D СОИ 2
ИП Сдвиг регистра D влево ШЛ 2
FF KK Вычтите байт КК из регистра D, переместите ответ в регистр D и регистр переноса DF. SMI byte 2
Расшифровка символов в таблице инструкций
RN/RX 16-битный регистр общего назначения (16 из них обозначены R0 TO RF)
РН.0 Младший регистровый номер
РН.1 РЕГИСТРАЛЬНЫЙ НОМЕР ВЫСШЕГО ПОРЯДКА
МН/МХ МЕСТО БАЙТОВ ПАМЯТИ, АДРЕСИРОВАННОЕ СОДЕРЖАНИЕМ RN/RX
П 4-БИТНЫЙ РЕГИСТР ПРОГРАММНОГО СЧЕТЧИКА
Х 4-битный номер регистра X
Д 8-битный регистр временного хранения
ДФ 1-БИТНЫЙ РЕГИСТР ПЕРЕПОЛНЕНИЯ
ИЕ 1-битный регистр разрешения прерываний
вопрос 1-битный выходной регистр
Т 8-битный специальный регистр

Поддержка чипов

[ редактировать ]

В микрокомпьютерах начала 1802 года встроенный графический контроллера видеодисплея чип RCA CDP1861 (для NTSC видеоформата , вариант CDP1864 для PAL ) использовал встроенный контроллер DMA для отображения черно-белой растровой графики на стандартных экранах телевизоров с высокой скоростью. до 64 пикселей по горизонтали и 128 пикселей по вертикали. Модель 1861 была также известна как графическая система Pixie.

Хотя более быстрые версии 1802 могли работать на частоте 4–5 МГц (при 5 В; они были быстрее (6,4 МГц) при 10 В), обычно они работали на частоте 3,58 МГц, разделенной на 2 (1,79 МГц), чтобы удовлетворить требованиям чип 1861, который обеспечивал скорость чуть более 100 000 инструкций в секунду, хотя некоторые работали на других скоростях, таких как ~ 2,8 МГц у Comx или 5 МГц у Pecom . COSMAC VIP , который объединял видеочип с процессором как единый специализированный компьютер (а не как дополнение к комплекту для любителей), заметно работал с 1802 намного медленнее, синхронизируя его точно с 1861 - при этом -стандартная частота 1,76064 МГц, как рекомендовано в спецификации Pixie. [д]

Микросхема генератора цвета CDP1862, сопутствующая микросхема 1861 года, могла использоваться для генерации цветной графики. Некоторые компьютерные системы, такие как Pecom 64 или Telmac TMC-600 , использовали VIS (систему видеоинтерфейса), состоящую из сопутствующих микросхем CDP1869 и CDP1870, для цветной графики с гораздо более высоким разрешением, сравнимой с другими 8-битными системами 1980-х годов. .

Примеры кода

[ редактировать ]

В этом небольшом примере кода тестируются контакты флага события (EF). Чтобы проверить контакты с первого по четвертый, измените B4 на B2, чтобы проверить контакт EF2.

LOOP

B4 EFbranch; because EF pins pins are active low this makes it behave as a not gate

REQ

BR LOOP

EFbranch
SEQ
BR LOOP

Этот пример фрагмента кода представляет собой диагностическую процедуру, проверяющую операции АЛУ (арифметико-логического устройства). [47]

..  TEST ALU OPS
0000 90         GHI 0     .. SET UP R6
0001 B6         PHI 6
0002 F829       LDI DOIT  .. FOR INPUT OF OPCODE
0004 A6         PLO 6
0005 E0         SEX 0     .. (X=0 ALREADY)
0006 6400       OUT 4,00  .. ANNOUNCE US READY
0008 E6         SEX 6     .. NOW X=6
0009 3F09       BN4 *     .. WAIT FOR IT
000B 6C         INP 4     .. OK, GET IT
000C 64         OUT 4     .. AND ECHO TO DISPLAY
000D 370D       B4 *      .. WAIT FOR RELEASE
000F F860       LDI #60   .. NOW GET READY FOR
0011 A6         PLO 6     .. FIRST OPERAND
0012 E0         SEX 0     .. SAY SO
0013 6401       OUT 4,01
0015 3F15       BN4 *
0017 E6         SEX 6     .. TAKE IT IN AND ECHO
0018 6C         INP 4     .. (TO 0060)
0019 64         OUT 4     .. (ALSO INCREMENT R6)
001A 371A       B4 *
001C E0         SEX 0     .. DITTO SECOND OPERAND
001D 6402       OUT 4,02
001F E6         SEX 6
0020 3F20 LOOP: BN4 *     .. WAIT FOR IT
0022 6C         INP 4     .. GET IT (NOTE: X=6)
0023 64         OUT 4     .. ECHO IT
0024 3724       B4 *      .. WAIT FOR RELEASE
0026 26         DEC 6     .. BACK UP R6 TO 0060
0027 26         DEC 6
0028 46         LDA 6     .. GET 1ST OPERAND TO D
0029 C4   DOIT: NOP       .. DO OPERATION
002A C4         NOP       .. (SPARE)
002B 26         DEC 6     .. BACK TO 0060
002C 56         STR 6     .. OUTPUT RESULT
002D 64         OUT 4     .. (X=6 STILL)
002E 7A         REQ       .. TURN OFF Q
002F CA0020     LBNZ LOOP .. THEN IF ZERO,
0032 7B         SEQ       .. TURN IT ON AGAIN
0033 3020       BR LOOP   .. REPEAT IN ANY CASE

Примечание. Вышеуказанная процедура предполагает, что микропроцессор CDP1802 находится в состоянии начального сброса (или что он был установлен как таковое до выполнения этого кода). Таким образом, счетчик программ (PC) и «указатель» косвенного регистра X устанавливаются в 16-битный регистр R0. Вот почему вы можете вывести немедленное значение, как в примере «OUT 4,00», поскольку PC и X указывают на R0. PC увеличивается после того, как байт инструкции кода операции извлекается из памяти, поэтому он указывает на следующий адрес при выполнении OUT 4. Поэтому он выводит в память значение, на которое указывает RX = R0, которое является следующим непосредственным байтом. Команда OUT также увеличивает регистр X, то есть R0, который также является PC, поэтому он выводит немедленное значение после OUT и продолжает выполнение программы по следующему адресу инструкции после непосредственного значения. Вот почему вы видите набор подпрограмм X (SEX) для регистрации R6 и R0 по мере необходимости. Также обратите внимание, что хотя код операции OUT увеличивает регистр RX, чтобы легко вывести раздел памяти («буфер»), INP этого не делает. Он сохраняет значение по адресу, указанному RX, и в 8-битном аккумуляторе байтов данных D, но RX не изменяется.

Процедура также предполагает, что OUT 4 будет отображать значение на 8-битном светодиодном или 2-значном шестнадцатеричном дисплее системы ЦП, а IN 4 получает значение от восьми тумблеров (или, возможно, с шестнадцатеричной клавиатуры). Код операции BN4 (цикл; * = «этот адрес»), «переход, если однобитовая входная линия EF4 равна lo», используется для проверки того, нажата ли мгновенная кнопка «Вход». Цикл кода операции B4 («если привет») ожидает отпускания кнопки. SEQ и REQ включают и выключают одну линию Q, которая обычно подключается к светодиоду.

1802 представляет собой «байтовую машину», но имеет 16 16-битных регистров R0-RF (иногда называемый 0-F без префикса «R»). Чтобы работать с 16-битными данными регистров, программист должен получить и поместить значения Hi или Lo регистров, используя аккумулятор D в качестве посредника. Эти старшие и младшие байты регистров иногда обозначаются как Rn.0 (lo) и Rn.1 (hi). Короткие ветки представляют собой 2-байтовые коды операций с абсолютной адресацией страницы и границей адреса в 256 байт. Длинные ветки — это 3-байтовые коды операций с полным 16-битным ветвлением адреса.

Эта информация должна сделать процедуру более понятной любому программисту, который достаточно хорошо осведомлен, чтобы читать «псевдокод», и минимально знаком с программированием на ассемблере и машинном языке.

Примечания

[ редактировать ]
  1. ^ Точная дата варьируется в зависимости от ссылки, как и в случае большинства дат, связанных с COSMAC. Эдвардс выразил это в 1969 году: [9] в то время как большинство других говорят, что здесь используется дата 1970 года.
  2. Это ежегодный обзор деятельности 1973 года, опубликованный где-то в 1974 году. [10]
  3. ^ Точные даты отбора проб и общего выпуска различных устройств COSMAC остаются неточными. Херб Джонсон подготовил обширный список отчетов RCA, которые легли в основу дат в этой статье. [11]
  4. ^ Однако, учитывая возраст машины, это может быть связано с тем, что более высокие скоростные классы еще не были разработаны, а это означает, что процессор был рассчитан максимум на 3,2 или, возможно, даже на 2,5 МГц. Хотя это крайний случай, не только машина будет работать на частоте процессора значительно ниже его номинальной, чтобы сэкономить средства и упростить систему синхронизации, а простая работа на частоте 3,52 МГц представляла бы рискованные 10%, или даже недопустимо экстремальный разгон в 41% .
  1. ^ Jump up to: а б с д Касс 2018 .
  2. ^ «RCA COSMAC 1802» . Страница коллекционера антикварных фишек . AntiqueTech.com. 21 апреля 2009 г. Архивировано из оригинала 2 января 2013 г. Проверено 27 декабря 2010 г.
  3. ^ «Йозеф Вайсбекер» . Винтаж-Компьютер.com. 08 февраля 2010 г. Проверено 27 декабря 2010 г.
  4. ^ «Джозеф А. Вайсбекер (1932–1990)» . CosmacElf.com . Проверено 27 декабря 2010 г.
  5. ^ Jump up to: а б Касс, Стивен. «Зал славы чипов: RCA CDP 1802 — IEEE Spectrum» . ИИЭЭ . ИИЭЭ . Проверено 19 июля 2023 г.
  6. ^ «CDP1802A» . Архивировано из оригинала 9 марта 2012 г. Проверено 23 августа 2010 г.
  7. ^ «Высоконадежный 8-битный CMOS-микропроцессор CDP1802AC/3» . ООО «Интерсил Америкас». 17 октября 2008 г.
  8. ^ Вайсбекер 1974 , с. 41.
  9. ^ Jump up to: а б с д и ж г час я дж Эдвардс 2017 .
  10. ^ Jump up to: а б Лаборатория 1973 , с. 152.
  11. ^ Джонсон, Херб (11 декабря 2018 г.). "COSMAC 1801, 1802 "даты" " .
  12. ^ «RCA MCDS, Система разработки микроплат» . RetroTechnology.com. 28.10.2020 . Проверено 8 мая 2022 г.
  13. ^ Раске, Дэйв. «Кибервидение 2001, 3001 и 4001» . КОСМАК Эльф . COSMACELF.COM . Проверено 30 июня 2016 г.
  14. ^ «Реклама журнала Wireless World на странице 22» (PDF) . История американского радио . Май 1981 года . Проверено 21 января 2017 г.
  15. ^ «Отчет об оборудовании — микрокомпьютер Infinite UC1800» (PDF) . ClassicCmp.org — Классические вычисления . Журнал «Радиоэлектроника». Август 1977 года . Проверено 22 января 2017 г.
  16. ^ Хаберхерн, Уильям (февраль 1977 г.). "Статья журнала Kilobaud, стр. 90" . Архив.орг . Уэйн Грин . Проверено 22 января 2017 г.
  17. ^ Харт, Ли. «Компьютер с членскими карточками 1802 года» . Домашняя страница Ли Харта . Ли Харт . Проверено 22 мая 2016 г.
  18. ^ «Вещицы свободного времени Эльф 2000 (Эльф 2К)» .
  19. ^ «Пять поколений измерителей влажности Sinar» . Проверено 22 мая 2016 г.
  20. ^ «Инфорсел» . Проверено 22 мая 2016 г.
  21. ^ Джонсон, Герберт Р. (22 июня 2016 г.). «RCA/Weisbecker «Система 00», также известная как «ФРЕД» » . Ретротехнологии . Проверено 23 июня 2016 г.
  22. ^ «Система управления двигателем Chrysler Lean Burn» . Вся информация о Mopar Chrysler . AllPar.com . Проверено 23 июня 2016 г.
  23. ^ Доннелли, Уильям (7 июля 2016 г.). «MDCCCCII (1802) | Интеграция продуктов: коммерческие и научные приложения» . ЦП COSMAC 1802. Феерия ретро-вычислений . Уильям Доннелли . Проверено 7 июля 2016 г.
  24. ^ Бриггс, Греция; Коннор, С.Дж.; Синнигер, Дж.О.; Стюарт, Р.Г. (август 1978 г.). «Микропроцессор КМОП-на-сапфире, 40 МГц» . Транзакции IEEE на электронных устройствах . 25 (8): 952–959. дои : 10.1109/T-ED.1978.19207 .
  25. ^ Jump up to: а б Дингуолл, А.; Стрикер, Р.; Синнигер, Дж. (октябрь 1977 г.). «Высокоскоростной объемный CMOS-микропроцессор C2L». Журнал IEEE твердотельных схем . 12 (5). ИИЭР: 457–462. дои : 10.1109/ISSCC.1977.1155726 .
  26. ^ «Семейство радиационно-стойких объемных КМОП-микропроцессоров с Si-затвором» (PDF) . МАГАТЭ.орг . Проверено 4 июня 2016 г. >
  27. ^ Томайко, Джеймс (апрель 1987 г.). «Компьютеры в космических полетах: опыт НАСА» . НАСА . Проверено 6 февраля 2010 г.
  28. ^ http://www2.jpl.nasa.gov/magellan/guide4.html#4.11 Руководство исследователя Венеры Магеллан, Глава 4 - Космический корабль Магеллан - Вычисления и программное обеспечение
  29. ^ «РКА КОСМАК ВИП» . Веб-сайт устаревших технологий . Проверено 31 января 2010 г.
  30. ^ http://www.amsat.org/amsat-new/AboutAmsat/amsat_history.php История AMSAT
  31. ^ Афшари, А. (январь 1993 г.). «Широкоугольная/планетарная камера космического телескопа Хаббл» (PDF) . Шаттербаг . Архивировано из оригинала (PDF) 6 октября 2016 г.
  32. ^ Разбор устройства установки взрывателя Royal Ordnance L1A1 , извлечено 16 октября 2022 г.
  33. ^ «Программное обеспечение для членских карт» .
  34. ^ «Itty Bitty Computers и TinyBasic» .
  35. ^ «Текущее состояние компилятора HAL/S на компьютере Modcomp Classic 7870» (PDF) .
  36. ^ MASCOT (Астрономический спектрометр/Камера MIT для оптических телескопов) . Январь 1980 года.
  37. ^ Бейкер, Скотт (2016). «ЦП 1802, закодированный на VHDL» . Скотт Л. Бейкер Github . Скотт Бейкер . Проверено 24 июля 2016 г.
  38. ^ Смит, Эрик (2009). «cosmac — функциональное эквивалентное ядро ​​ЦП RCA COSMAC CDP1802 в VHDL» . Эрик Смит на Github . Эрик Смит . Проверено 9 июля 2019 г.
  39. ^ Тил, Стив (2016). «Ядро VHDL 1802 с TinyBASIC для платы Lattice MachXO2 Pico» . Стив Тил Github . Стив Тил . Проверено 9 июля 2019 г.
  40. ^ Россин, Тед (2011). «Эльфийский клон» . Домашняя страница Теда Росса . Тед Росс . Проверено 24 июля 2016 г.
  41. ^ Доннелли, Уильям (2011). «Эльфийский симулятор COSMAC CDP1802 на JavaScript» . Домашняя страница Donnelly-House . Уильям Доннелли . Проверено 24 июля 2016 г.
  42. ^ Ландштейнер, масса:верк, Норберт (5 июня 2021 г.). «(Теперь давай!) 6502 «Незаконных» кодов операций раскрыты» . Теперь давай, взрывай! — масса:werk/Блог . Проверено 2 февраля 2024 г. {{cite web}}: CS1 maint: несколько имен: список авторов ( ссылка )
  43. ^ «Набор инструкций 6502» . масса: верк .
  44. ^ Швец, Геннадий (2 октября 2016 г.). «Семейство микропроцессоров RCA 1802 (CDP1802)» . CPU-Мир . Геннадий Швец . Проверено 17 октября 2016 г.
  45. ^ «Что значит СЕКС?» . Проверено 26 декабря 2013 г.
  46. ^ Jump up to: а б Руководство пользователя микропроцессора COSMAC CDP1802
  47. ^ Питтман, Том (1980). «Краткий курс программирования» . cosmacelf.com . Проверено 20 мая 2017 г.

Библиография

[ редактировать ]
[ редактировать ]

Незначительные части этой статьи изначально были основаны на материалах из Free On-line Dictionary of Computing , который лицензией распространяется под GFDL .

Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 55c31b5e242b215cf9eb052a6af77bd9__1722390420
URL1:https://arc.ask3.ru/arc/aa/55/d9/55c31b5e242b215cf9eb052a6af77bd9.html
Заголовок, (Title) документа по адресу, URL1:
RCA 1802 - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)