HP 64000

System HP64000 sfotografowany w 1987 roku.

HP 64000 Logic Development System , wprowadzony 17 września 1979 r., Jest narzędziem do opracowywania sprzętu i oprogramowania dla produktów opartych na komercyjnych mikroprocesorach różnych producentów. Systemy wspomagały tworzenie oprogramowania za pomocą asemblerów i kompilatorów dla Pascala i C, zapewniały sprzęt do procesorów i pamięci w obwodzie , miały narzędzia do debugowania, w tym sprzęt do analizy logicznej , oraz programowalną pamięć tylko do odczytu (PROM) programista chipów. Dostępna była szeroka gama opcjonalnych kart i oprogramowania dostosowanych do poszczególnych mikroprocesorów. Po wprowadzeniu HP 64000 miał dwie wyróżniające cechy. Po pierwsze, w przeciwieństwie do większości ówczesnych systemów rozwoju mikroprocesorów, takich jak Intel Intellec i Motorola EXORciser , nie był dedykowany mikroprocesorom konkretnego producenta, a po drugie, został zaprojektowany w taki sposób, aby za pośrednictwem HP-IB można było połączyć do sześciu stacji roboczych ( IEEE-488 ) do wspólnego dysku twardego i drukarki, tworząc ściśle zintegrowaną sieć.

modele

  • 64100A , wprowadzony w 1979 roku. Była to stacja robocza typu desktop, która zawierała dziesięć gniazd rozszerzeń na różne opcjonalne karty. Początkowa oferta tej stacji roboczej wymagała zewnętrznego dysku twardego do przechowywania wszystkich dysków, chociaż dysk mógł być współużytkowany przez maksymalnie sześć stacji roboczych za pośrednictwem magistrali oprzyrządowania HP-IB (IEEE-488 ) . Później dodano opcję podwójnego napędu dyskietek, dzięki czemu stacja robocza mogła być używana bez współdzielonego dysku twardego. Ta stacja robocza korzystała z tego samego niestandardowego 16-bitowego mikroprocesora HP, co w HP 9845C . Zaoferowano oprogramowanie i sprzęt do opracowania 8-bitowych i 16-bitowych mikroprocesorów.
  • 64110A , bardziej przenośna stacja robocza z pięcioma gniazdami na karty, została wprowadzona w 1983 roku. Używała tego samego procesora HP co 64100A.
  • 64120A wprowadzona w 1986 r. Pasuje do tych samych kart opcjonalnych, co 64100A i 64110A, i była połączona za pośrednictwem magistrali IEEE-488 ze standardową stacją roboczą HP 9000 Series 300 z systemem operacyjnym HP-UX zamiast specjalnie zaprojektowanej stacji roboczej takich jak 64100A i 64110A. W tych systemach używano nazwy „HP 64000-UX Microprocessor Development Environment”. Wprowadzono oprogramowanie i sprzęt do rozwoju 32-bitowych mikroprocesorów.
  • 64700A została wprowadzona na rynek w 1988 roku. Była sprzedawana jako tańszy system rozwojowy (w porównaniu z 64120A), który można było obsługiwać z komputerem osobistym kompatybilnym z IBM PC, a nie ze stacją roboczą. Karty dla tego systemu nosiły numery 647xx i nie były kompatybilne z innymi systemami.

Opis

Funkcjonalny schemat blokowy HP 64000

Terminologia

Jak pokazano na schemacie blokowym po prawej stronie, system 64000 składał się z wielu komponentów, których nazwy miały określone definicje:

  • Komputer główny to fizyczna stacja robocza lub klatka na karty zawierająca karty opcjonalne.
  • Host to procesor obsługujący komputer mainframe. W modelach 64100A i 64110A magistrala hosta to szyny adresowe, danych, wejścia/wyjścia i sterowania procesora stacji roboczej, które również łączą się z kartami w klatce na karty.
  • użytkownika to opracowywany system mikroprocesorowy. Terminy procesor użytkownika i pamięć użytkownika opisują te komponenty w opracowywanym systemie.
  • Emulacja lub emulator odnosi się do opcjonalnych kart i innego sprzętu, który jest podłączony do komputera głównego za pośrednictwem kart rozszerzeń i może zastąpić procesor i/lub pamięć w systemie użytkownika. Karty emulacji i analizy są połączone szyną emulacji , która jest całkowicie oddzielona od szyny hosta.

Rozwój oprogramowania

Model 64000 zapewniał system plików i edytor tekstu do pisania oprogramowania. Istniał ogólny asembler / linker ( ręczny Bitsavers ), kompilator Pascala ( ręczny Bitsavers ) i kompilator C ( ręczny Bitsavers ), które zostały uzupełnione dodatkowymi asemblerami krzyżowymi i kompilatorami krzyżowymi dla każdego konkretnego mikroprocesora. Ich lista według numeru produktu to:

mikroprocesor Nr produktu asemblera Podręcznik asemblera Nr produktu kompilatora Pascala Instrukcja kompilatora Pascala Numer produktu kompilatora C Podręcznik kompilatora C
Motorola 6800/1/2/3/8 64841A Oszczędzanie bitów 64811A Oszczędzanie bitów 64821A
Motoroli 6809 64844A Oszczędzanie bitów 64813A (obraz dysku w HPCM ) Oszczędzanie bitów 64822A (obraz dysku w HPCM ) Oszczędzanie bitów
Motorola 68000/08/10 64845A (obraz dysku w HPCM *) Oszczędzanie bitów 64815A (obraz dysku w HPCM ) Oszczędzanie bitów 64819A Oszczędzanie bitów
Intel 8048 64846A (obraz dysku w HPCM ) Oszczędzanie bitów nic nic
Intel 8051 64855A (obraz dysku w HPCM ) nic nic
Intel 8080/8085 _ 64840A 64810A Oszczędzanie bitów 64826A
Intel 8086/87/88/186/188 64853A (obraz dysku w HPCM ) 64814A (obraz dysku w HPCM ) 64818A (obraz dysku w HPCM )
Zilog Z80 64842A (obraz dysku w HPCM ) Oszczędzanie bitów 64823A (obraz dysku w HPCM ) 64824A (obraz dysku w HPCM )
Zilog Z8 64850A nic nic
Zilog Z8000 64854A nic nic
RCA 1802 64848A nic nic
Technologia MOS 6501/6505 64843A nic nic
Texas Instruments TMS9900 64847A nic nic
Texas Instruments TMS320 64858A nic nic
Fairchild F8 64849A nic nic
MIL-STD-1750A 64857A nic nic

* HPCM to Muzeum Komputerów Hewlett Packard

Ponadto istniał Pascal „Host Compiler”, numer produktu 64817A podręcznik w Bitsavers , obraz dysku w HPCM , którego można było użyć do napisania programów do wykonania na procesorze hosta stacji roboczej.

Emulacja w obwodzie

HP64100A Logic Development System emulujący mikroprocesor

System 64000, dzięki zastosowaniu opcjonalnych kart i oprogramowania, mógł wykonywać emulację w obwodzie różnych mikroprocesorów i ich pamięci. Kompletny system emulacji zazwyczaj składał się z:

  • Karta kontrolera emulatora mikroprocesora, specyficzna dla każdego mikroprocesora.
  • „Pod” lub „sonda” emulacji, która zawierała elektronikę interfejsu i była zewnętrznym modułem komputera głównego. Procesor w systemie użytkownika został wyjęty z gniazda, aw jego miejsce podłączono kabel z poda emulatora. Kapsuła emulacji zawierała kopię procesora użytkownika, który uruchamiał kod programu tak, jak robiłby to procesor użytkownika, i wydawał się systemowi użytkownika jako normalny procesor.
  • Karta kontrolera pamięci emulacji i jedna lub więcej kart pamięci emulacji. Pamięć emulacji może być wykorzystana do zastąpienia pamięci w systemie użytkownika, tak aby na przykład kod programu użytkownika mógł zostać umieszczony w pamięci emulacji i wykonany zamiast konieczności programowania układów ROM.
  • „Wewnętrzna” karta analizatora, która była analizatorem logicznym monitorującym działanie emulowanego procesora i pamięci.
  • Oprogramowanie emulatora, które umożliwiało operatorowi uruchamianie i zatrzymywanie emulowanego procesora, sprawdzanie zawartości pamięci i lokalizacji rejestrów, mierzenie taktowania sygnału, obserwowanie przebiegu programu i tak dalej.

Zdjęcie po prawej stronie przedstawia stację roboczą 64100A emulującą procesor systemu użytkownika za pośrednictwem modułu emulatora. Na zdjęciu również moduł akwizycji danych dla „zewnętrznej” karty analizatora stanów logicznych w 64100A, który mierzył dodatkowe sygnały cyfrowe w systemie użytkownika.

mikroprocesor Numer produktu karty kontrolera emulatora podręcznik Numer produktu pod emulacją podręcznik Numer produktu oprogramowania do emulacji podręcznik
Motorolę 6800 64211A Oszczędzanie bitów 64212A Oszczędzanie bitów 64210A Oszczędzanie bitów
Motorola 6801/6803 64256A 64255A 64256A
Motorola 6802/6808 64211A Oszczędzanie bitów 64213A Oszczędzanie bitów 64210A Oszczędzanie bitów
Motoroli 6805 64191A Oszczędzanie bitów 64192A/64193A Oszczędzanie bitów 64192A (obraz dysku w Bitsavers )
Motoroli 6809 64214A Oszczędzanie bitów 64215A/64216A Oszczędzanie bitów 64215A (obraz dysku w Bitsavers ) Oszczędzanie bitów
Motorola 68000/68008 64243A/64244A 64243A/64244A 64243A (obraz dysku w HPCM ) Oszczędzanie bitów
Motorolę 68010 64271A 64249A 64249A
Intel 8048 64261A 64262A 64262A (obraz dysku w HPCM )
Intel 8051 64263A 64264A 64264A
Intel 8080 64201A 64202A 64202A
Intel 8085 64201A 64203A 64203A
Intel 8086 64271A 64222A 64222A (obraz dysku w HPCM )
Intel 8088 64271A 64226A 64226A
Intel 80186 64223A 64224A Oszczędzanie bitów 64224A
Intel 80188 64223A 64225A 64225A
Zilog Z80 64251A 64252A 64252A (obraz dysku w HPCM )
Zilog Z8001/8002 64271A 64232A/64233A 64232A/64233A

* HPCM to Muzeum Komputerów Hewlett Packard

Płyty sterujące emulatora podłączone zarówno do magistrali hosta (komputera głównego), jak i do magistrali emulacji. Działały w celu przekazywania sygnałów sterujących i danych między hostem a systemami emulowanymi. W zależności od modelu płyta kontrolna może również zawierać sprzęt do oznaczania nielegalnych kodów operacji lub dostępu do pamięci lub do działania jako wewnętrzny analizator stanów logicznych.

Emulacja pamięci umożliwia zastąpienie pamięci RAM i/lub ROM w systemie użytkownika przez pamięć w systemie 64000. Oferowano dwie karty kontrolera pamięci emulacji:

  • 64151A Kontroler pamięci emulacji (instrukcja w Bitsavers ), który miał 16 linii adresowych , więc mógł zaadresować 64 KB pamięci i
  • 64155A Wide Address Memory Controller (instrukcja w Bitsavers ), który miał 24 linie adresowe, więc mógł zaadresować 16 MB pamięci.

Mapy pamięci dla systemu użytkownika można określić w kategoriach pamięci RAM, ROM i pamięci chronionej. Próby zapisu do pamięci ROM lub dostępu do chronionej pamięci zostały wykryte przez kontroler pamięci i mogły wywołać działania, takie jak punkty przerwania programu.

Oferowane były karty pamięci o różnych pojemnościach statycznej pamięci RAM . Karty 64152B, 53B i 54B zapewniały odpowiednio 32, 16 i 8 KB, a karty 64161A, 62A i 63A zapewniały odpowiednio 128, 64 i 32 KB. Każdy z nich może być skonfigurowany do 8-bitowej lub 16-bitowej magistrali danych. Karty pamięci zostały połączone ze sobą iz kontrolerem pamięci poprzez szynę pamięci emulacji. Dostęp do pamięci emulacji przez systemy hosta lub użytkownika odbywał się za pośrednictwem karty kontrolera.

Gdy emulowany procesor i pamięć zajęły miejsce procesora i pamięci w systemie użytkownika, projektant mógł napisać i skompilować kod programu, załadować go do pamięci emulacji i uruchomić system użytkownika, uruchamiając program w emulowanym procesorze.

Analiza

System 64000 może działać jako analizator stanów logicznych do pomiaru sygnałów cyfrowych w systemie użytkownika. Oferowano dwa rodzaje kart analizy logicznej, analizatory „wewnętrzne”, które mierzyły sygnały bezpośrednio z magistrali emulacji w komputerze głównym, oraz analizatory „zewnętrzne”, które wykorzystywały oddzielne sondy do fizycznego łączenia się z elementami systemu użytkownika. Podobnie jak w przypadku produktów do emulacji procesora i pamięci, funkcje analityczne były często dzielone na karty kontrolerów i karty akwizycji danych. Niektóre karty kontrolerów procesorów emulacji oferowały funkcje analizy wewnętrznej bez oddzielnego sprzętu.

Sprzęt do analizy logicznej został również podzielony na analizatory stanu i analizatory taktowania . Wcześniejsze mierzyły sygnały w synchronizacji z zegarem systemowym i mogły na przykład rejestrować stany szyn adresowych, danych i sterujących w systemie użytkownika w każdym cyklu procesora. Dane te były zwykle przedstawiane jako ślad , pokazujący wartość na każdej szynie dla każdego cyklu procesora. W przypadku wielu mikroprocesorów dostępny był „odwrotny asembler”, który konwertował wartości mierzone na szynie danych na kody operacyjne dla procesora użytkownika.

Drugą formą analizy logicznej była analiza czasowa. Analizator taktowania lub logiki asynchronicznej mierzył sygnały cyfrowe w określonych odstępach czasu, niekoniecznie zsynchronizowanych z zegarem systemowym użytkownika. Taka analiza może być wykorzystana do znalezienia zakłóceń lub sprawdzenia, czy sygnały cyfrowe mają właściwe czasy.

Oprócz tych funkcji analizatora logicznego dostępne były opcje „analizy oprogramowania”. Narzędzia te działały jak to, co obecnie powszechnie nazywa się debuggerami i profilerami .

Lista produktów do analizy to:

Numer produktu Opis podręcznik
64300A Wewnętrzny analizator stanów logicznych
64302A Wewnętrzny szeroki analizator stanów logicznych Oszczędzanie bitów
64310A Analizator wydajności oprogramowania Oszczędzanie bitów
64331A Analizator oprogramowania wysokiego poziomu 68000
64601A Kontroler analizatora czasu/sprzętu Oszczędzanie bitów
64602A Akwizycja taktowania 8 kanałów Oszczędzanie bitów
64604A 8-kanałowa sonda rozrządu Oszczędzanie bitów
64621A Kontroler analizatora stanu/oprogramowania Oszczędzanie bitów
64622A 40 Akwizycja stanu kanału Oszczędzanie bitów
64623A 20 Akwizycja stanu kanału Oszczędzanie bitów
64635A 20-kanałowa sonda danych stanu
64636A 8-kanałowa sonda zegara stanu

Podobnie jak sprzęt do emulacji wykorzystywał „strąki” ze sprzętem interfejsu dostosowanym do każdego mikroprocesora, sprzęt do analizy wykorzystywał preprocesory do działania jako interfejs do mikroprocesora. Oprócz preprocesora magistrali emulacji 64304A (instrukcja w Bitsavers ), każdy z interfejsów preprocesora specyficznych dla procesora był płytką drukowaną, która pasowała do modułu preprocesora ogólnego przeznaczenia 64650A (instrukcja w Bitsavers ). To z kolei podłączone do kabli karty analizatora stanów logicznych.

Numer produktu Opis
64304A Preprocesor magistrali emulacji
64653A Interfejs preprocesora 8086/8088
64655A Interfejs preprocesora 8085
64657A 80286 Interfejs preprocesora
64658A 80186/80188 Interfejs preprocesora
64670A Interfejs preprocesora 68000
64671A Interfejs preprocesora 6809
64672A Interfejs preprocesora 6800/6802
64673A 68008 Interfejs preprocesora
64674A Interfejs preprocesora 68000/68010
64680A Interfejs preprocesora Z8001
64681A Interfejs preprocesora Z8002
64683A Interfejs preprocesora Z80
64690A Interfejs preprocesora NSC800

Programista PROM

Model 64100A ma miejsce po prawej stronie klawiatury, w którym można umieścić moduł programatora PROM. Zwykła karta kontrolna programatora PROM, 64500A (instrukcja w Bitsavers ), została zainstalowana w klatce karty. Co najmniej 11 modułów programatora, ponumerowanych od 64502A do 64520A, było dostępnych dla różnych układów PROM i programowalnych mikrokontrolerów różnych producentów.

Emulator MAME

Emulacja stacji roboczej 64100A jest częścią systemu MAME (Multiple Arcade Machine Emulator), w ramach producenta HP i nosi tytuł „HP 64000”. Emulator jest open source i dostępny jest kod źródłowy .

  1. ^ a b Saponas, Thomas A.; Kerr, Brian W. (październik 1980). „System rozwoju logiki przyspiesza projektowanie systemów mikrokomputerowych” (PDF) . Dziennik Hewlett-Packard . 31 (10): 3–12 . Źródło 14 lipca 2018 r .
  2. ^ ab Davis, Michael W.; Scharrer, John A.; Wickliff, Robert G. (marzec 1983). „Rozległe możliwości rozwoju i obsługi logiki w jednym wygodnym systemie” (PDF) . Dziennik Hewlett-Packard . 34 (3): 3–5 . Źródło 14 lipca 2018 r .
  3. ^ Wpis do Muzeum Komputerów HP dla 64120A.
  4. ^ Wpis do Muzeum Komputerów HP dla 64700A.
  5. ^ Katalog Hewlett Packard (PDF) . Archiwum Hewlett Packard. 1989. s. 625–626 . Źródło 14 lipca 2018 r .
  6. ^ Oszczędzanie bitów

Linki zewnętrzne