HP 64000
Система разработки логики HP 64000 , представленная 17 сентября 1979 года, представляет собой инструмент для разработки аппаратного и программного обеспечения для продуктов на базе коммерческих микропроцессоров различных производителей. Системы помогали в разработке программного обеспечения с помощью ассемблеров и компиляторов для Паскаля и Си, предоставляли аппаратное обеспечение для внутрисхемной эмуляции процессоров и памяти, имели инструменты отладки, включая аппаратное обеспечение логического анализа , а также программатор микросхем программируемой постоянной памяти (PROM). Доступен широкий выбор дополнительных карт и программного обеспечения, адаптированных к конкретным микропроцессорам. На момент появления HP 64000 имел две отличительные характеристики. Во-первых, в отличие от большинства систем разработки микропроцессоров того времени, таких как Intel Intellec и Motorola EXORsiser , она не была предназначена для микропроцессоров конкретного производителя, а во-вторых, она была спроектирована таким образом, что через HP-IB можно было подключить до шести рабочих станций. ( IEEE-488 ) инструментальная шина к общему жесткому диску и принтеру для формирования тесно интегрированной сети.
Модели
[ редактировать ]- 64100A , представленная в 1979 году, представляла собой настольную рабочую станцию с десятью слотами расширения для различных дополнительных карт. Первоначальное предложение этой рабочей станции требовало внешнего жесткого диска для хранения всей дисковой памяти, хотя диск мог использоваться совместно шестью рабочими станциями через инструментальную шину HP-IB ( IEEE-488 ). [1] Позже была добавлена опция с двумя дисководами, чтобы рабочую станцию можно было использовать без общего жесткого диска. этой рабочей станции Центральным процессором был BPC, тот же специальный 16-разрядный микропроцессор HP, который использовался в рабочей станции HP 9845C . Предлагалось программно-аппаратное обеспечение для разработки 8-битных и 16-битных микропроцессоров.
- 64110A , более портативная рабочая станция («переносная») с пятью слотами для карт, была представлена в 1983 году. [2] Его процессором был тот же микропроцессор HP, что и у 64100A.
- Каркас для карт 64120A представлен в 1986 году. [3] Он подходил к тем же дополнительным картам, что и 64100A и 64110A, и подключался через шину IEEE-488 к стандартной рабочей станции HP 9000 Series 300, работающей под управлением операционной системы HP-UX, а не к использованию специально разработанной рабочей станции, такой как 64100A и 64110A. В этих системах использовалось название «Среда разработки микропроцессоров HP 64000-UX». Было внедрено программное и аппаратное обеспечение для разработки 32-битных микропроцессоров.
- Клетка для карт 64700A была представлена в 1988 году. [4] Она продавалась как более дешевая система разработки (по сравнению с 64120A), которая могла работать с IBM PC-совместимым персональным компьютером, а не с рабочей станцией. [5] Карты для этой системы имели номера 647xx и не были совместимы с другими системами.
Описание
[ редактировать ]Терминология
[ редактировать ]Как показано на блок-схеме справа, система 64000 состояла из ряда компонентов, имена которых имели конкретные определения:
- Мэйнфрейм — это физическая рабочая станция или каркас для плат, в котором хранятся дополнительные карты.
- Хост — это процессор, который управляет мейнфреймом. В моделях 64100A и 64110A хост-шина представляет собой шины адреса, данных, ввода-вывода и управления процессора рабочей станции, которые также подключаются к картам в отсеке для карт.
- Пользовательская система – это разрабатываемая микропроцессорная система. Термины «пользовательский процессор» и «пользовательская память» описывают эти компоненты разрабатываемой системы.
- Эмуляция или «Эмулятор» относится к дополнительным картам и другому оборудованию, которые подключаются к мэйнфрейму через сменные карты и могут заменять процессор и/или память в пользовательской системе. Карты эмуляции и анализа соединены между собой шиной эмуляции , которая полностью отделена от главной шины.
Разработка программного обеспечения
[ редактировать ]64000 имел файловую систему и текстовый редактор для написания программного обеспечения. Существовал универсальный ассемблер / компоновщик ( ручные Bitsavers ), компилятор Pascal ( ручные Bitsavers ) и компилятор C ( ручные Bitsavers ), которые дополнялись дополнительными кросс-ассемблерами и кросс-компиляторами для каждого конкретного микропроцессора. Их список по номеру продукта:
Микропроцессор | Номер продукта ассемблера | Руководство по ассемблеру | Номер продукта компилятора Паскаля | Руководство по компилятору Паскаля | Номер продукта компилятора C | Руководство по компилятору C |
---|---|---|---|---|---|---|
Моторола 6800/1/2/3/8 | 64841А | Битсейверы | 64811А | Битсейверы | 64821А | |
Моторола 6809 | 64844А | Битсейверы | 64813A (образ диска в HPCM ) | Битсейверы | 64822A (образ диска в HPCM ) | Битсейверы |
Моторола 68000/08/10 | 64845A (Образ диска в HPCM *) | Битсейверы | 64815A (образ диска в HPCM ) | Битсейверы | 64819А | Битсейверы |
Интел 8048 | 64846A (образ диска в HPCM ) | Битсейверы | никто | никто | ||
Интел 8051 | 64855A (образ диска в HPCM ) | никто | никто | |||
Интел 8080/8085 | 64840А | 64810А | Битсейверы | 64826А | ||
Интел 8086/87/88/186/188 | 64853A (образ диска в HPCM ) | 64814A (образ диска в HPCM ) | 64818A (образ диска в HPCM ) | |||
Зилог Z80 | 64842A (образ диска в HPCM ) | Битсейверы | 64823A (образ диска в HPCM ) | 64824A (образ диска в HPCM ) | ||
Зилог Z8 | 64850А | никто | никто | |||
Зилог Z8000 | 64854А | никто | никто | |||
РКА 1802 | 64848А | никто | никто | |||
МОП-технология 6501/6505 | 64843А | никто | никто | |||
Техасские инструменты TMS9900 | 64847А | никто | никто | |||
Техасские инструменты TMS320 | 64858А | никто | никто | |||
Фэйрчайлд F8 | 64849А | никто | никто | |||
МИЛ-СТД-1750А | 64857А | никто | никто |
* HPCM — это Компьютерный музей Hewlett Packard.
Кроме того, существовал Pascal «Host Compiler», руководство по продукту 64817A на Bitsavers , образ диска на HPCM , который можно было использовать для написания программ для выполнения на хост-процессоре рабочей станции.
Внутрисхемная эмуляция
[ редактировать ]Система 64000, благодаря использованию дополнительных карт и программного обеспечения, могла выполнять внутрисхемную эмуляцию различных микропроцессоров и их памяти. [1] [2] Полная система эмуляции обычно состояла из:
- Плата контроллера эмулятора микропроцессора, специфичная для каждого микропроцессора.
- Эмуляционный «модуль» или «зонд», который содержал интерфейсную электронику и был внешним модулем мэйнфрейма. Процессор в пользовательской системе был извлечен из разъема, а на его место был подключен кабель от модуля эмуляции. Модуль эмуляции содержал копию пользовательского процессора, который запускал программный код так же, как и пользовательский процессор, и воспринимался пользовательской системой как обычный процессор.
- Карта контроллера памяти эмуляции и одна или несколько карт памяти эмуляции. Память эмуляции может использоваться для замены памяти в пользовательской системе, так что, например, код пользовательской программы может быть помещен в память эмуляции и выполнен без необходимости программирования микросхем ПЗУ.
- «Внутренняя» плата-анализатор, представлявшая собой логический анализатор , следивший за работой эмулируемого процессора и памяти.
- Программное обеспечение-эмулятор, которое позволяло оператору запускать и останавливать эмулируемый процессор, проверять содержимое памяти и местоположения регистров, измерять время сигнала, наблюдать за ходом выполнения программы и т. д.
На фотографии справа показана рабочая станция 64100A, эмулирующая процессор пользовательской системы через модуль эмулятора. На фотографии также показан блок сбора данных для «внешней» карты логического анализатора в 64100A, который измерял дополнительные цифровые сигналы в пользовательской системе.
Микропроцессор | Плата контроллера эмулятора № продукта | Руководство | Номер продукта модуля эмуляции | Руководство | Программное обеспечение для эмуляции, номер продукта | Руководство |
---|---|---|---|---|---|---|
Моторола 6800 | 64211А | Битсейверы | 64212А | Битсейверы | 64210А | Битсейверы |
Моторола 6801/6803 | 64256А | 64255А | 64256А | |||
Моторола 6802/6808 | 64211А | Битсейверы | 64213А | Битсейверы | 64210А | Битсейверы |
Моторола 6805 | 64191А | Битсейверы | 64192А/64193А | Битсейверы | 64192A (Образ диска на Bitsavers ) | |
Моторола 6809 | 64214А | Битсейверы | 64215А/64216А | Битсейверы | 64215A (Образ диска на Bitsavers ) | Битсейверы |
Моторола 68000/68008 | 64243А/64244А | 64243А/64244А | 64243A (образ диска в HPCM ) | Битсейверы | ||
Моторола 68010 | 64271А | 64249А | 64249А | |||
Интел 8048 | 64261А | 64262А | 64262A (образ диска в HPCM ) | |||
Интел 8051 | 64263А | 64264А | 64264А | |||
Интел 8080 | 64201А | 64202А | 64202А | |||
Интел 8085 | 64201А | 64203А | 64203А | |||
Интел 8086 | 64271А | 64222А | 64222A (образ диска в HPCM ) | |||
Интел 8088 | 64271А | 64226А | 64226А | |||
Интел 80186 | 64223А | 64224А | Битсейверы | 64224А | ||
Интел 80188 | 64223А | 64225А | 64225А | |||
Зилог Z80 | 64251А | 64252А | 64252A (образ диска в HPCM ) | |||
Зилог Z8001/8002 | 64271А | 64232А/64233А | 64232А/64233А |
* HPCM — это Компьютерный музей Hewlett Packard.
Платы управления эмулятором подключены как к шине хоста (мейнфрейма), так и к шине эмуляции. Они служили для передачи управляющих сигналов и данных между хостом и эмулируемыми системами. В зависимости от модели плата управления может также содержать аппаратное обеспечение для сигнализации незаконных кодов операций или доступа к памяти или действовать в качестве внутреннего логического анализатора.
Эмуляция памяти позволяет ОЗУ и/или ПЗУ заменять в пользовательской системе памятью в системе 64000. Предлагались две платы контроллера эмуляции памяти:
- Контроллер эмуляции памяти 64151A (руководство на сайте Bitsavers ), который имел 16 адресных строк и мог адресовать 64 КБ памяти, и
- Контроллер широкоадресной памяти 64155A (руководство на сайте Bitsavers ), который имел 24 адресные строки и мог адресовать 16 МБ памяти.
Карты памяти для пользовательской системы могут быть указаны с точки зрения ОЗУ, ПЗУ и защищенной памяти. Попытки записи в ПЗУ или доступа к защищенной памяти были обнаружены контроллером памяти и могли вызвать такие действия, как точки останова программы.
карты памяти различной емкости статической оперативной памяти Предлагались . Карты 64152B, 53B и 54B обеспечивали 32, 16 и 8 КБ соответственно, а карты 64161A, 62A и 63A — 128, 64 и 32 КБ соответственно. [6] Каждый из них может быть настроен на работу с 8-битными или 16-битными шинами данных. Карты памяти подключались между собой и к контроллеру памяти через шину эмуляции памяти. Доступ к памяти эмуляции со стороны хоста или пользовательских систем осуществлялся через карту контроллера.
Как только эмулируемый процессор и память заняли место процессора и памяти в пользовательской системе, разработчик мог написать и скомпилировать программный код, загрузить его в эмулируемую память и запустить пользовательскую систему, запустив программу в эмулируемом процессоре.
Анализ
[ редактировать ]Система 64000 может действовать как логический анализатор для измерения цифровых сигналов в пользовательской системе. Было предложено два типа карт логического анализа: «внутренние» анализаторы, которые измеряли сигналы непосредственно с шины эмуляции внутри мэйнфрейма, и «внешние» анализаторы, которые использовали отдельные датчики для физического подключения к элементам пользовательской системы. Подобно продуктам эмуляции процессора и памяти, функции анализа часто делились на карты контроллера и карты сбора данных. Некоторые платы контроллера процессора эмуляции предлагали функции внутреннего анализа без отдельного оборудования.
Аппаратное обеспечение логического анализа также было разделено на состояний анализаторы и анализаторы времени . Первые измеряли сигналы синхронно с системными часами и могли, например, записывать состояния шин адреса, данных и управления в пользовательской системе на каждом цикле ЦП. Эти данные обычно представлялись в виде трассировки , показывающей значение на каждой шине для каждого цикла ЦП. Для многих микропроцессоров был доступен «обратный ассемблер», который преобразовывал значения, измеренные на шине данных, в коды операций для пользовательского процессора.
Второй формой логического анализа был временной анализ. Анализатор синхронизации или асинхронной логики измеряет цифровые сигналы через заданные интервалы времени, не обязательно синхронизированные с часами пользовательской системы. Такой анализ можно использовать для обнаружения сбоев или проверки правильности синхронизации цифровых сигналов.
В дополнение к этим функциям логического анализатора были доступны опции «программного анализа». Эти инструменты действовали как то, что сейчас обычно называют отладчиками и профилировщиками .
Список продуктов анализа:
Номер продукта | Описание | Руководство |
---|---|---|
64300А | Внутренний логический анализатор | |
64302А | Внутренний широкий логический анализатор | Битсейверы |
64310А | Анализатор производительности программного обеспечения | Битсейверы |
64331А | Анализатор программного обеспечения высокого уровня 68000 | |
64601А | Контроллер временного/аппаратного анализатора | Битсейверы |
64602А | 8-канальный сбор данных по времени | Битсейверы |
64604А | 8-канальный датчик синхронизации | Битсейверы |
64621А | Контроллер анализатора состояния/программного обеспечения | Битсейверы |
64622А | 40 Канал Госзакупок | Битсейверы |
64623А | 20 Канал Госзакупок | Битсейверы |
64635А | 20-канальный зонд данных о состоянии | |
64636А | 8-канальный пробник синхронизации состояния |
Подобно тому, как оборудование эмуляции использовало «модули» с интерфейсным оборудованием, адаптированным к каждому микропроцессору, оборудование анализа использовало препроцессоры в качестве интерфейса к микропроцессору. Помимо препроцессора шины эмуляции 64304A (руководство на сайте Bitsavers ), каждый из интерфейсов препроцессора, специфичных для ЦП, представлял собой печатную плату, которая помещалась в модуль препроцессора общего назначения 64650A (руководство на сайте Bitsavers ). Тот, в свою очередь, подключен к плате логического анализатора кабелями.
Номер продукта | Описание |
---|---|
64304А | Препроцессор эмуляции шины |
64653А | Интерфейс препроцессора 8086/8088 |
64655А | 8085 Интерфейс препроцессора |
64657А | 80286 Интерфейс препроцессора |
64658А | 80186/80188 Интерфейс препроцессора |
64670А | 68000 Интерфейс препроцессора |
64671А | 6809 Интерфейс препроцессора |
64672А | Интерфейс препроцессора 6800/6802 |
64673А | 68008 Интерфейс препроцессора |
64674А | 68000/68010 Интерфейс препроцессора |
64680А | Интерфейс препроцессора Z8001 |
64681А | Интерфейс препроцессора Z8002 |
64683А | Интерфейс препроцессора Z80 |
64690А | Интерфейс препроцессора NSC800 |
Программы ПРОМ
[ редактировать ]В 64100A справа от клавиатуры имеется место, куда можно установить модуль программатора PROM. обычная плата управления программатором PROM, 64500A (руководство на сайте Bitsavers В каркас для карт была установлена ). По меньшей мере 11 модулей программатора под номерами от 64502A до 64520A были доступны для различных микросхем ППЗУ и программируемых микроконтроллеров разных производителей.
Эмулятор MAME
[ редактировать ]Эмуляция рабочей станции 64100A является частью системы MAME (Multiple Arcade Machine Emulator) от производителя HP и под названием «HP 64000». Эмулятор имеет открытый исходный код , исходный код доступен .
Ссылки
[ редактировать ]- ^ Перейти обратно: а б Сапонас, Томас А.; Керр, Брайан В. (октябрь 1980 г.). «Система разработки логики ускоряет проектирование микрокомпьютерных систем» (PDF) . Журнал Hewlett-Packard . 31 (10): 3–12. Архивировано из оригинала 7 июня 2011 года . Проверено 22 ноября 2023 г.
{{cite journal}}
: CS1 maint: bot: исходный статус URL неизвестен ( ссылка ) - ^ Перейти обратно: а б Дэвис, Майкл В.; Шаррер, Джон А.; Уиклифф, Роберт Г. (март 1983 г.). «Обширные возможности разработки и поддержки логики в одной удобной системе» (PDF) . Журнал Hewlett-Packard . 34 (3): 3–5 . Проверено 14 июля 2018 г.
- ^ Запись в Компьютерном музее HP для 64120A.
- ^ Запись в Компьютерном музее HP для 64700A.
- ^ Каталог Hewlett Packard (PDF) . Архив Hewlett Packard. 1989. стр. 625–626 . Проверено 14 июля 2018 г.
- ^ Битсейверы