HP 2100 - HP 2100

Minicomputador HP 1000 E-Series com unidades duplas de "memória de disco flexível" 9895A de 8 polegadas.

O HP 2100 é uma série de minicomputadores de 16 bits produzidos pela Hewlett-Packard (HP) de meados dos anos 1960 até o início dos anos 1990. Dezenas de milhares de máquinas da série foram vendidas ao longo de sua vida útil de 25 anos, tornando a HP o quarto maior fornecedor de minicomputadores durante os anos 1970.

O projeto começou na Data Systems Inc (DSI) e era originalmente conhecido como DSI-1000. A HP comprou a empresa em 1964 e a fundiu em sua divisão Dymec. O modelo original, o 2116A construído usando circuitos integrados e memória de núcleo magnético , foi lançado em 1966. Nos quatro anos seguintes, os modelos A a C foram lançados com diferentes tipos de memória e expansão, bem como o 2115 e 2114 modelos. Todos esses modelos foram substituídos pela série HP 2100 em 1971 e, novamente, pela série 21MX em 1974, quando a memória de núcleo magnético foi substituída por memória semicondutora.

Todos esses modelos também foram embalados como HP série 2000 , combinando uma máquina da série 2100 com componentes opcionais para executar a linguagem de programação BASIC em um modo de compartilhamento de tempo multiusuário . HP Time-Shared BASIC era popular na década de 1970, e muitos programas BASIC iniciais foram escritos na ou para a plataforma, mais notavelmente o seminal Star Trek que foi popular durante o início da era do computador doméstico . A People's Computer Company publicou seus programas no formato HP 2000.

A introdução do HP 3000 em 1974 proporcionou competição de ponta para a série 2100; toda a linha foi renomeada como HP 1000 em 1977 e posicionada como computadores de tempo real . Uma versão totalmente reprojetada foi introduzida em 1979 como a série 1000 L , usando chips de integração de grande escala CMOS e introduzindo um modelo de gabinete torre do lado da mesa . Esta foi a primeira versão a quebrar a compatibilidade com as placas de expansão da série 2100 anteriores. A atualização final foi a série A , com novos processadores capazes de desempenho de mais de 1 MIPS , com o A990 final lançado em 1990.

História

Origens

A HP fundou a Dynac em 1956 para atuar como uma oficina de desenvolvimento para projetos que a empresa principal normalmente não realizaria. Seu logotipo original era simplesmente o logotipo da HP virado de cabeça para baixo, formando algo semelhante a "dy" e, portanto, inspirando o nome. Ao saber que a Westinghouse possuía uma marca registrada com esse nome, em 1958 eles o mudaram para Dymec. A empresa foi incorporada em 1959 para se tornar a Divisão Dymec, e em novembro de 1967 foi rebatizada de Divisão Palo Alto.

A Dymec originalmente fabricava uma variedade de produtos para a família HP, mas com o tempo tornou-se principalmente um integrador, construindo equipamentos de teste e sistemas semelhantes que eram usados ​​pela HP. Em 1964, Kay Magleby e Paul Stoft começaram a fazer experiências com o uso de computadores PDP-5 e PDP-8 para atuar como controladores para seus sistemas de teste complexos, mas eles sentiram que as máquinas precisariam de mudanças para realmente atender às suas necessidades. Na época, a Digital Equipment Corporation (DEC) ainda era uma empresa pequena e um alvo de aquisição. David Packard achou Ken Olsen muito difícil de lidar, e esses planos não levaram a lugar nenhum.

Procurando outro projeto que pudessem comprar, a Packard foi conduzida à Data Systems, Inc. (DSI) de Detroit, com cinco pessoas. A DSI era propriedade da Union Carbide e quando Packard perguntou como foi que a Union Carbide veio a ser dona de uma empresa de computadores, o gerente do HP Labs, Barney Oliver, respondeu: "Não exigimos uma resposta para essa pergunta." Bill Hewlett inicialmente recusou-se a considerar o desenvolvimento de um "minicomputador", mas quando Packard o reformulou como um "controlador de instrumento", o negócio foi aprovado.

A DSI foi adquirida em 1964 e inicialmente estabelecida na Dymec com quatro dos cinco funcionários originais da DSI e vários outros funcionários vindos das divisões de instrumentação da HP. O grupo de computadores mais tarde mudou-se para seus próprios escritórios em Cupertino, Califórnia , em um prédio comprado da Varian Associates , tornando-se a Divisão de Cupertino.

Primeiros modelos

Computador HP 2115A retratado sem fonte de alimentação.

Liderada por Magleby, a nova divisão completou o design como 2116A, que foi demonstrado de 7 a 10 de novembro de 1966 na Joint Computer Conference em San Francisco. Foi um dos primeiros minis de 16 bits a chegar ao mercado, mas na época era mais notável como "um novo computador de instrumentação incomum" com um design altamente expansível e suporte em tempo real . O sistema apresentava um gabinete superdimensionado que comportava até 16 placas de expansão ou poderia ser expandido para 48 placas com uma gaiola de expansão externa.

O sistema foi lançado com 20 cartões de instrumentação diferentes, incluindo "contadores, escaladores nucleares, termômetros eletrônicos , voltímetros digitais , conversores CA / ohms, amplificadores de dados e scanners de entrada." Um conjunto adicional adicionou dispositivos de entrada / saída como unidades de fita , impressoras, cartões perfurados e fita de papel e outros periféricos. O serviço em tempo real era fornecido com cada slot de placa atribuído a um vetor de interrupção fixo que chamava o driver de dispositivo apropriado .

Quando a máquina entrou no mercado, rapidamente ficou claro que ela estava vendendo muito mais rapidamente no mercado de processamento de dados corporativos do que o mercado de instrumentação originalmente visado. Isso levou à introdução do 2115A em 1967, que removeu muitos dos recursos de expansão para fazer uma oferta de custo mais baixo para usuários comerciais. Uma outra versão simplificada foi enviada como 2114A em 1968, que tinha apenas oito slots, deixando espaço para a fonte de alimentação ser incorporada ao chassi principal. O 2115 e o 2114 também não tinham o controle extensivo de DMA do 2116, removeu algumas das operações matemáticas e funcionou em velocidades ligeiramente mais lentas.

Estes são os modelos originais que usam memória central e uma CPU com fio.

  • 2116A, relógio de 10 MHz, tempo de ciclo de 1,6 microssegundos (µs). Normalmente fornecido com 4k palavras, expansível para 8k internamente ou 16k com um sistema de memória externa. O chassi inclui 16 slots de E / S, também expansíveis. Peso 230 libras (104 kg). Lançado em novembro de 1966. Ele marcou o primeiro uso de circuitos integrados pela HP.
  • 2116B, compatível com uma nova opção de expansão de memória de 32k. Peso como acima. Apresentado em setembro de 1968.
  • 2116C, usava um núcleo menor para que um 32k completo pudesse caber no chassi principal. Introduzido em outubro de 1970.
  • 2115A, versão de curta duração com custo reduzido que removeu o DMA e algumas funções matemáticas, tinha apenas 8 slots de E / S e funcionava a um clock de 8 MHz e um tempo de ciclo de 2,0 µs. Pesava 65 libras (29,5 kg), exigia uma fonte de alimentação externa volumosa - peso total: 160 libras (72,6 kg). Introduzido em novembro de 1967.
  • 2114A, simplificou ainda mais o 2115 com um novo painel frontal e fonte de alimentação interna. Interruptores de toque não mecânicos no painel frontal. Peso 95 libras (43,1 kg). Introduzido em outubro de 1968.
  • 2114B, 2114A com um único canal DMA e um novo painel frontal com botões iluminados. Introduzido em novembro de 1969.
  • 2114C, como 2114B com uma memória máxima de 16k. Introduzido em outubro de 1970.

HP 2000

Em novembro de 1968, a empresa lançou o 2000A Timeshare System, mais tarde conhecido como HP 2000 / Access. Ele foi baseado no 2116B (um 2116A com uma memória de núcleo expandida de 8k) executando o HP Time-Shared BASIC e usou um 2114 separado como um servidor de terminal . O TS BASIC permitia que várias contas de usuário fossem criadas com até 16 usuários conectados ao mesmo tempo.

Modelos posteriores do 2000, B a F, usaram versões mais recentes da CPU subjacente à medida que foram introduzidas. Alguns modelos usavam versões low-end da mesma CPU do servidor de terminal; o 2000F, por exemplo, usava um 2100S como CPU principal e controlador de armazenamento primário, enquanto um 2100A atuava como servidor de terminal. Os modelos B, C e F eram de processador duplo. Na última versão, o 2000F, uma CPU 2100S e 2100A foram usados, com o 2100A conectado a até 32 terminais seriais através de interfaces de multiplexadores seriais.

Apesar de seus custos relativamente altos - o 2000F custava US $ 105.000 em 1974, ou cerca de US $ 551.002 em 2020 - foi o primeiro minicomputador a oferecer BASIC compartilhado por tempo , o que o tornou muito popular no início da década de 1970.

2100

Computador HP 2100 (canto superior esquerdo), mostrado com duas unidades de fita 7970, disco rígido da série 7900, leitor de fita de papel 2748 e uma impressora de impacto 2767A. Os interruptores e luzes separados do painel frontal foram substituídos por botões de pressão, que tinham tendência a queimar.
Computador HP 2100A

Ao longo da década de 1970, a linha foi constantemente aprimorada com novos modelos que permaneceram compatíveis em software e expansão com o 2116 original.

No início de 1970, Fred Allard, ex- integrante da Divisão de Núcleo de Memória da Ampex , foi convidado a projetar um novo sistema de memória de núcleo magnético para os sistemas, em vez de continuar comprando-os da Ampex. Usando núcleos mais novos de 18  mil , abaixo de 22 mil, e usando uma única linha de detecção / inibição, eles foram capazes de encaixar uma memória de 8 kW em um único cartão de expansão. Isso foi usado a partir dos modelos 2116C.

Em 1971, o 2100A atualizado substituiu toda a linha 211x existente. O sistema geral era semelhante aos modelos anteriores e continuava baseado na memória central. Fisicamente, era mais parecido com o 2114, já que a fonte de alimentação era embutida e tinha expansão interna limitada. No entanto, a CPU foi reconstruída com um microcódigo que poderia ser programado pelo usuário, adicionado hardware, multiplicação e divisão, e adicionou um sistema de proteção de memória simples , que causava uma interrupção de alta prioridade quando acionado. Um controlador DMA de dois canais proporcionou maior rendimento. Uma unidade de ponto flutuante opcional também estava disponível. Os botões do painel frontal eram iluminados por pequenas lâmpadas incandescentes que queimavam com o uso. O uso de uma fonte de alimentação comutada permitiu que o chassi fosse significativamente menor do que os modelos anteriores.

Em 1972, a HP havia despachado 4.500 minis, tornando-se uma das maiores empresas do mercado. Naquele ano, eles fundiram a Divisão Mountain View, que fabricava unidades de fita magnética, com a Divisão Cupertino para criar a Divisão de Sistemas de Dados (DSD). Nessa época, o projeto HP 3000 estava com sérios problemas e, em fevereiro de 1973, Packard enviou Paul Ely para assumir a divisão. As vendas da série 2100 permaneceram fortes; o 6.000 foi enviado em agosto de 1973, o 8.000 em fevereiro de 1974 e o 10.000 em fevereiro de 1975. Eles foram declarados obsoletos em 1978.

  • 2100A, normalmente com 4 kW, mas expansível para 32 kW, 14 slots de E / S expansíveis para 45. Introduzido em 1971.
  • 2100S, um 2100A agrupado com a opção de ponto flutuante, um gerador de base de tempo para interface com hardware dependente do tempo e uma placa de interface de teleimpressora. Introduzido em 1973.

21MX

Em 1972, a divisão decidiu mudar para chips de memória SRAM de 4kbit no lugar do núcleo. Eles eram cerca de duas vezes mais rápidos do que os núcleos contemporâneos de baixo custo e muito menores, permitindo que máquinas de 32kword fossem construídas em um formato semelhante ao 2114. Na época em que tomaram essa decisão, SRAMs de 4kbit não estavam disponíveis, então máquinas experimentais usando o núcleo de uma série 2100 foram usadas inicialmente, substituídas por SRAM de 1kbit. A princípio parecia que as peças 4k não estariam disponíveis quando o resto da máquina fosse atualizado, então a empresa investigou vários fabricantes e descobriu que alguns estavam desenvolvendo agressivamente peças 4k. Em particular, Intel , Mostek , Motorola e Texas Instruments sugeriam que tais peças estariam disponíveis em quantidade no final de 1974.

Usar essas memórias em um chassi de expansão como os sistemas anteriores significava que havia espaço para muito mais memória, na faixa de megaword. No entanto, o uso de endereços de 15 bits pela CPU limitou o tamanho a 32kwords. Para atender ao desejo de sistemas maiores, a HP desenvolveu o "Sistema de Mapeamento Dinâmico" ou DMS. O DMS expandiu o formato do endereço de 15 para 20 bits, permitindo um máximo de 1.048.576 palavras, uma expansão dramática do sistema original.

Essas mudanças levaram à introdução em 1974 da primeira das máquinas da série 21MX. Isso significava o processador "21-M" e a memória "21-X", já que os sistemas de controle de memória foram separados da CPU para fornecer flexibilidade no caso de as peças 4k escolhidas serem trocadas durante a produção. Isso provou ser útil na prática, pois as máquinas eram enviadas com memórias usando peças Motorola ou Texas Instruments e podiam ser misturadas em uma única máquina, enquanto o sistema de densidade mais alta baseado em peças Mostek de 16 pinos poderia ser suportado pela substituição das 21 normais Controlador -X / 2 com o 21-X / 1.

Toda a série 2100 foi substituída em 1974 pela primeira dessas máquinas da série 21MX. Usando as peças de maior densidade, as novas máquinas podiam suportar até 1,2 MB nos modelos maiores. Quando o CPU foi atualizado em 1976, os novos modelos se tornaram o "21MX E-Series" e os modelos originais se tornaram retroativamente o "21MX M-Series". A principal diferença entre o M e E era que o E usava um tempo inteligente para melhorar a velocidade para cerca de duas vezes a do M. Uma ampla variedade de estilos de máquina foi lançada como parte da série 21MX, incluindo sistemas menores com quatro slots e maiores aqueles com 9 ou 14 slots.

A série 21MX apresentava uma unidade de gerenciamento de memória e memória de semicondutor expansível para 1.048.576 palavras (um megaword ). Os visores nos botões do painel frontal usavam pequenos diodos emissores de luz vermelha (LEDs), em vez das lâmpadas incandescentes com risco de queima usadas nas versões anteriores.

  • Série M - 2105A, 2108A, 2112A (linha azul no painel frontal)
  • Série E - 2109A, 2113A (linha amarela no painel frontal; E para estendido)
  • Série F - 2111F, 2117F (linha vermelha no painel frontal; F para processador de ponto flutuante em um chassi 2U separado)

O 21MX executava o sistema operacional (SO) HP RTE (Real Time). Eles começaram como sistemas de montagem em rack de 19 polegadas do tamanho de uma geladeira , com luzes e interruptores nos painéis frontais. Os últimos modelos usariam um processador de 1 chip e caberiam sob uma mesa usando um terminal de console em vez de um painel frontal.

Os novos modelos das séries L e A tinham capacidade de interface HP-IB , mas como com todos os sistemas HP da época, as luzes LED piscantes foram removidas do painel frontal. Apesar das demandas do cliente por uma capacidade em tempo real e dos esforços de P&D da HP usando um cartão em tempo real instalável, o sistema operacional RTE-A não era tão bom em operações em tempo real quanto o RTE em um 21MX. Esta foi uma razão importante para este computador ser difícil de matar. Muitas empresas usam operações em tempo real para fazer medições e controlar processos - ligar ou desligar uma bomba, aquecedor, uma válvula, acelerar ou desacelerar um motor, etc.

1000 series

Um terminal gráfico HP 2647A conectado a uma máquina HP 1000 E-Series.

No final de 1977, toda a linha foi renomeada como "HP 1000", passando a ser "HP 1000 M-Series" e "HP 1000 E-Series". No ano seguinte, o "HP 1000 F-Series" foi lançado, que era um E-Series com uma unidade de ponto flutuante adicionada. Em 1978, o sucesso da linha impulsionou a HP a se tornar o quarto maior fabricante no espaço de minicomputadores, atrás apenas da DEC, IBM e Data General .

Em 1980, o "HP 1000 L-Series" foi lançado. Isso usou um novo processador baseado no processo de integração de silício em safira em grande escala da HP . Além disso, as placas de expansão também foram equipadas com seus próprios processadores que lhes permitiam acessar a memória principal e conduzir entradas / saídas sem incomodar a CPU. Embora isso tenha tornado as placas de expansão incompatíveis com os modelos anteriores pela primeira vez, também melhorou muito o desempenho geral. Esses modelos não tinham a unidade de gerenciamento de memória.

O L-Series foi, por sua vez, substituído em 1982 pelo "HP 1000 A-Series", que incluiu um novo design de CPU "Lightning" que atingiu 1  MIPS , e o ainda mais rápido CPU "Magic" de 3 MIPS. Uma grande variedade de modelos diferentes foi produzida, incluindo torres de mesa e uma variedade de sistemas de montagem em rack de diferentes tamanhos. Um modelo A400 low-end foi introduzido em 1986, e o A990 high-end final lançado em 1990. Cada endereçável até 32 MB de RAM.

  • 1981:
    • A600 - baseado no processador Am2900 bit-slice , 1 MIPS, 53k FLOPS Codename: LIGHTNING
    • A600 + - baseado no processador Am2900 bit-slice, suporta código e separação de dados, memória ECC (correção de erros) opcional.
  • 1982 ??:
    • A700 - baseado no processador AMD AM2903 bit-slice, processador de ponto flutuante de hardware opcional, 1MIPS, 204kFLOPS, microprogramação, memória ECC opcional . Codename: PHOENIX
  • 1984:
    • A900 - Fornece caminho de dados em pipeline , 3MIPS, 500kFLOPS, memória ECC. Codename MAGIC
  • 1986:
    • A400 - primeira CPU de placa única incluindo 4 linhas seriais; CPU fabricada pela tecnologia VLSI com seu processo CMOS-40, 512kB de RAM a bordo. Codename Yellowstone
  • 1992:
MiniComputadores HP
Ano Máquina
Tamanho da micropalavra

Tamanho do microcódigo

Tipos de micropalavra

ALU
Carregar
gerador
Micro
Sequencer
1973 2100S 24 1K 3 4 × 74181 74182 Discreto
1974 1000 M-Series 24 4K 4 4 × 74181 74182 Discreto
1976 1000 E-Series 24 16K 4 4 × 74S181 74S182 Discreto
1978 1000 F-Series 24 16K 4 4 × 74S181 74S182 Discreto
19 ?? FPP Série F ? ? ? 4 × 74S181 74S182 Discreto
1980 1000 L-Series ? ? ? CMOS / SOS personalizados
1981 1000 A600 56 4K 5 4 × 2901B 74S182 2910 + 2904
1982 1000 A700 32 16K 11 4 × 2903 74S182 2911
1984 1000 A900 48 32K 4 4 × 74S381 74S182 Discreto
1986 1000 A400 32 16K 11 CMOS / SOS personalizados
1975 13037 Controlador 24 4K 7 4 × 74S181 74S182 Discreto
1980 13365 Controller 24 3K ? 2 × 2901 ?
1977 3000 Series I 32 4K 5 4 × 74181 74182 Discreto
1978 3000 Series III 32 64K 5 4 × 74S181 74S182 Discreto
1978 3000 Series 33 32 6K ? CMOS / SOS personalizados
198? 3000 Series 48 48 12K 2 4 × 74S181 74S182 Discreto
1982 3000 Series 64 64 8K ? 4 × 100181 100179 Discreto
1985 3000 Series 37 64 10K ? Matriz de portas CMOS personalizadas

Legado

A série HP 2000 foi lançada em 1969, vendida até junho de 1978 e teve suporte até 1985.

Versões de muitos jogos BASIC seminais foram escritas ou portadas para a plataforma. Notável entre eles foi Star Trek de Mike Mayfield de 1971. Sua popularidade tornou seu dialeto do BASIC uma língua franca e muitas listagens do BASIC eram normalmente fornecidas nesse formato; a People's Computer Company publicou seus programas no formato HP 2000. Os sistemas HP também foram usados ​​para ensinar estatística, análise de regressão e economia.

século 21

As designações de 2000 e 2100 foram reutilizadas:

  • HP 2000 se refere a um laptop
  • HP 2100 refere-se a uma impressora LaserJet

Arquitetura

Organização da memória

O HP 2100 foi projetado em uma era em que a RAM na forma de memória de núcleo magnético estava caindo de dólares para centavos por bit, enquanto a implementação de registros de processador usando transistores ou integração em pequena escala permanecia muito cara. Isso favoreceu projetos com poucos registros e mais armazenamento em RAM, o que por sua vez influenciou a arquitetura do conjunto de instruções (ISA) para usar um projeto de memória-memória ou de acumulador de memória . Esse conceito básico foi amplamente introduzido no seminal PDP-8 de 12 bits, que gerou muitos designs semelhantes, como o 2100.

Em 2100, os endereços tinham 15 bits, permitindo um total de 32k palavras de 16 bits de memória (64kB em termos modernos). A menor unidade de memória endereçável é uma palavra de 16 bits, não há instruções que busquem um único byte de 8 bits. O endereço é dividido em duas partes, os 5 bits mais significativos referem-se a uma das 32 "páginas", enquanto os 10 bits menos significativos são o "deslocamento" apontando para uma única palavra dentro da página de 1.024 palavras. Com o sistema DMS da série 21MX, os 5 bits superiores são usados ​​para selecionar um dos 32 registros, cada um contendo 12 bits. Os 10 bits menos significativos do registro são então colocados na frente do deslocamento original de 10 bits para produzir um endereço de 20 bits. Os dois bits mais significativos são usados ​​para implementar a proteção da memória .

A maior parte do processamento é feita nos dois registradores A e B, cada um com 16 bits de largura. Os registros também são acessíveis nas localizações de memória 0 e 1, respectivamente. Isso significa que pode-se carregar um valor em um acumulador usando a operação normal de salvamento de registro, por exemplo, LDA 1irá LoaD o valor do registro A na localização 1 da memória, copiando assim o valor de A para B.

Além dos registradores A e B, a CPU também inclui o registrador M, que contém o endereço de memória atual, e o registrador T, que contém o valor naquele endereço. O registrador P é usado como contador do programa e incrementado automaticamente com cada instrução, mas também é usado como endereço base para alguns acessos à memória (veja abaixo) que são calculados e colocados em M. Existem também dois registradores de um bit, Overflow e Extend, em termos modernos, esses bits seriam considerados o registrador de status . Além disso, há o registro S / D (Switch / Display) de 16 bits, que é usado para entrada e saída do painel frontal.

Certas áreas da memória são reservadas para fins especiais, como os locais 0 e 1 usados ​​pelos acumuladores. Palavras adicionais nas 64 localizações mais baixas da memória são usadas para acesso direto à memória (DMA) e interrupções vetorizadas (veja abaixo). Em modelos posteriores, as 64 palavras mais altas de memória disponível são reservadas para o carregador de boot .

Instruções

O conjunto de instruções original continha 68 ou 70 instruções.

  • Aritmética  - Adicionar, Incrementar, E, Ou, Exclusivo ou
  • Controle de programa  - pular, pular, pular para a sub - rotina
  • Deslocar e girar - Deslocamentos aritméticos e lógicos, rotações de 16 e 17 bits
  • Opcional - Multiplicar, dividir, carregar e armazenar 32 bits, deslocamentos de 32 bits

Todas as 68 instruções no conjunto de instruções padrão têm 16 bits de comprimento. A maioria executa em um ciclo de memória, ou 16 ciclos de clock, embora o endereçamento indireto e o ISZpossam usar até 36 ciclos. A ramificação condicional é feita com uma instrução de salto condicional, sendo essa uma instrução normalmente uma instrução de salto . Não há pilha para sub-rotinas; em vez disso, a primeira localização da memória da rotina é reservada e o endereço de retorno é escrito nessa localização pela JSBinstrução. Isso significa que não há suporte interno para código reentrante ; o suporte para isso deve ser adicionado por meio de uma pilha implementada pelo usuário.

Existem três estilos básicos de instruções no ISA; referências de memória, referências de registro e entrada / saída. Certos modelos estenderam o ISA com hardware complementar, adicionando, por exemplo, instruções de ponto flutuante ou instruções adicionais de matemática e memória inteiras, mas estas cairiam nas mesmas três categorias básicas.

As instruções de memória usam quatro bits para a instrução e mais dois para sinalizadores especiais, para um total de seis bits da palavra de 16 bits. Isso deixa espaço para um endereço de 10 bits na instrução, armazenado nos bits menos significativos (LSBs), 0 a 9. Se o bit 15 for definido, isso indica endereçamento "indireto" em vez de "direto". No modo Direto, o endereço na instrução é o endereço do operando, enquanto no modo Indireto, o endereço era um ponteiro para outro local da memória que continha o endereço do operando. Pode-se definir o bit 15 nesse local também, permitindo que a indireção tenha qualquer profundidade necessária, terminando quando um dos locais tem um 0 no bit 15.

Além do modo Direto / Indireto, o bit 10 da instrução controla o sinalizador Z / C. Quando definido como 0, isso significa que os cinco bits superiores do endereço eram zero, enquanto os 10 inferiores eram o valor da instrução. Isso permite acesso rápido à página Z (ero), as primeiras 1.024 palavras da memória. Quando definido como 1, o endereço é construído combinando os 10 bits na instrução com os 5 bits principais do registrador P, a página C (atual) da memória, permitindo que a memória seja acessada como 32 páginas de 1024 palavras. Assim, 2.048 palavras podem ser endereçadas a qualquer momento; 1.024 deles na página zero e outros 1.024 na mesma página da instrução que executa a referência.

As instruções de registro não requerem um endereço e, portanto, têm mais bits livres para trabalhar. Isso é usado para empacotar quatro ou oito instruções em uma única palavra de memória, que, usada corretamente, pode acelerar significativamente as operações. Um total de 39 operações de registro estão incluídas, que são divididas em instruções shift-and-rotate e as instruções alter-and-skip, indicadas pelo bit 10, enquanto o bit 11 indica se isso está sendo aplicado ao registro A ou B.

Existem duas classes gerais de instruções de registro, o grupo shift-and-rotate e alter-and-skip. O primeiro é usado para manipulação básica bit a bit dos valores em um registrador e pode ter até quatro instruções por palavra, embora as duas instruções no meio sejam sempre a CLE,SLA/B(limpe E, pule se A / B for zero). O segundo grupo tem oito instruções que executam incrementos nos registradores e, em seguida, um desvio condicional. Normalmente são usados ​​para implementar loops.

I / O e interrupções

As instruções de entrada / saída normalmente se comunicam por meio dos acumuladores. O formato da instrução começa com os bits "1000" nos bits mais significativos, seguido por um único bit indicando qual registro usar (A = 0, B = 1), seguido por um "1", o bit de sinalizador H / C, e, em seguida, três bits para a instrução e os seis bits restantes para o ID do dispositivo de E / S, ou canal, permitindo até 64 dispositivos. Alguns números de dispositivos são usados ​​pelo próprio sistema.

A E / S é iniciada apagando o bit Flag com STFe, em seguida, configurando o bit C usando STC. O hardware percebe esse padrão e começa sua operação. Quando a operação é concluída, o dispositivo define o bit Flag e, em seguida, o programa carrega os dados resultantes do cartão usando a LI*instrução ou os envia para o cartão com OT*.

A transferência de dados real normalmente é realizada usando o sistema de interrupção. As localizações de memória de 4 a 63 (decimal) mantêm os endereços de rotinas para onde saltar quando uma interrupção é disparada, fornecendo 60 níveis de interrupção. Os locais 4 a 7 são conectados a falhas de energia, erros de verificação de paridade e, em modelos posteriores, erros de proteção de memória. Os locais 8 e superiores são vetores de interrupção acessíveis ao usuário, mapeados para um canal de E / S e organizados em ordem de prioridade. Portanto, se o dispositivo de E / S 13 produziu uma interrupção, a CPU salta para o local no local da memória 13, mas apenas se não for mascarado por uma interrupção de prioridade mais alta, 1 a 12.

Outra característica importante da série 2100 é um controlador de acesso direto à memória separado que usa o roubo de ciclo para acessar a memória quando a CPU não a está usando, durante os momentos em que está realizando cálculos internos, por exemplo. Usando este recurso, processos de E / S demorados podem ser concluídos enquanto a CPU trabalha em outros problemas. O sistema é configurado enviando uma instrução ao controlador DMA usando os comandos de E / S; o controlador DMA é o canal 6 e é inicialmente enviada uma instrução contendo o número do dispositivo de E / S que deseja usar o DMA, seja uma entrada (gravar na memória do dispositivo) ou saída (ler da memória para o dispositivo), a localização inicial na memória para os dados e o número de palavras. Este código de configuração geralmente é instalado em um dos vetores de interrupção, automatizando o processo. O DMS tem tabelas separadas para o sistema CPU e DMA, então o DMA pode carregar dados em partes separadas da memória estendida.

Programação

A HP forneceu um montador de três passagens para a máquina, usando um formato delimitado por coluna. A primeira área, à esquerda da linha de código, é o rótulo, que deve começar na coluna 1, se houver. Em seguida, vem o mnemônico de instrução e, em seguida, os parâmetros. O resto da linha pode ser usado para um comentário. O assembler permite que expressões matemáticas básicas sejam escritas diretamente, em vez de usar mnemônicos, e também inclui uma série de pseudo-instruções, como ORGdefinir o endereço básico do programa.

Além do montador e do linker associado , as máquinas foram enviadas inicialmente com um compilador FORTRAN 66 , o sistema operacional e os drivers de E / S. Com o tempo, outros idiomas foram adicionados, incluindo BASIC, ALGOL , FORTRAN IV e FORTRAN 77 .

A HP portou implementações de AGL para a plataforma, que adicionou comandos ao BASIC para produzir gráficos em seus terminais gráficos e plotters . Uma expansão semelhante em seu FORTRAN foi chamada de GRAPHICS / 1000.

Sistemas operacionais

Os 2100s normalmente eram usados ​​com o sistema operacional "Real Time Executive", ou RTE, para abreviar. Diversas versões do RTE foram lançadas para as diferentes versões da máquina; RTE-II para o 2114-2116, RTE-III para o 2100s, RTE-IV para a série 21MX e RTE-A para a série "A".

O shell do sistema operacional, mesmo no final dos anos 1970, era muito primitivo, com um sistema de arquivos de nível único , File Manager ou FMGR. Por exemplo, o comando para executar um compilador FORTRAN seria o seguinte:

ru, f77, &test,'test,%test

ou seja, execute o programa f77, usando caracteres especiais para distinguir entre o arquivo de origem, o objeto e os arquivos executáveis.

O HP 1000 também era um dos poucos minicomputadores que restringia os nomes de arquivos a apenas cinco caracteres, em vez dos seis comuns na época, o que tornava a portabilidade e até mesmo a escrita de programas um desafio. O RTE-A posterior para HP 1000 forneceu estrutura de diretório convencional com 16.4 nomes de arquivo e tornou o comando ru opcional.

TODS (Test Oriented Disk System) foi desenvolvido por um técnico no centro de reparos de placas da HP para melhorar o tempo de resposta no centro. Foi usado para carregar diagnósticos de um repositório central em vez de carregar fitas de papel individuais. TODS também foi usado nas séries HP 2116 a 21MX-F para sistemas de teste de mísseis como Phoenix (9206B), Harpoon (9500D-354), Tomahawk e muitos outros. Os primeiros conjuntos de teste foram o 9500A, evoluindo para o 9500D, seguido pelo ATS (Automated Test System); sistemas de teste específicos da HP, como o conjunto de teste do componente de inicialização 9500D-A46 Minuteman e o conjunto de teste do componente de inicialização ATS-E35 Peacekeeper / Minuteman; o HP 8580/8542 Microwave ANA / ASA (Automatic Network Analyzer / Automated Spectrum Analyzer) foi executado no TODS; e o conjunto de teste de transponder de micro-ondas TDRSS usava TODS e era um sistema muito grande.

Havia também MTOS (sistema operacional de fita magnética) semelhante ao TODS.

Descendentes e variantes

Computador desktop HP modelo 9830A com impressora térmica modelo 9866 opcional.

Os desktops HP 9810, 9820 e 9830 usam uma versão TTL lenta e serializada da CPU 2116, embora não usem nenhum sistema operacional ou software de aplicativo, em vez disso, contam com intérpretes baseados em ROM de fácil utilização , como o BASIC , que funcionam quando ligados e teclados e monitores integrados, em vez de discos ou terminais padrão . Em 1975, a HP lançou o BPC, um dos primeiros microprocessadores de 16 bits do mundo , usando o processo NMOS- II da HP . O BPC era geralmente empacotado em um módulo híbrido de cerâmica com os chips EMC e IOC, que adicionavam instruções matemáticas e de E / S estendidas. O híbrido foi desenvolvido como o coração do novo computador desktop 9825. A estação de trabalho 9845 posterior adicionou um chip MMU . Esses foram os precursores dos computadores pessoais e das estações de trabalho técnicas.

As principais diferenças entre a arquitetura 2116 original e o microprocessador BPC são uma estrutura de E / S completamente redesenhada, a remoção de vários níveis de endereçamento indireto e o fornecimento de um registro de pilha para chamada e retorno de sub-rotina. A eliminação de múltiplos caminhos indiretos tornou um bit adicional disponível em uma palavra de memória contendo um endereço indireto, permitindo que a capacidade máxima de memória fosse aumentada de 32K palavras de 16 bits para 64K. O BPC também adicionou uma entrada permitindo que a "página atual" seja relativa ao local da instrução atual, em vez de uma página alinhada em potência de dois.

O BPC foi usado em uma ampla gama de computadores HP, periféricos e equipamentos de teste, até ser descontinuado no final dos anos 1980.

A Polônia fabricou um clone HP 2114B desde 1973. Os clones poloneses foram chamados de MKJ-28 (protótipo, 1973), SMC-3 (produção piloto, 17 máquinas, 1975-1977) e PRS-4 (produção em série com mais de 150 máquinas, 1978 -1987).

A Checoslováquia produziu seus próprios clones compatíveis com HP 1000, designados ADT4000 (4300, 4500, 4700, 4900). Mais de 1000 unidades foram entregues pelos fornecedores Aritma Praga (desenvolvimento), ZPA Čakovice e ZPA Trutnov entre 1973 e 1990. Esses computadores serviram em usinas de energia, incluindo nucleares, outras indústrias, militares, em universidades, etc., por sua alta confiabilidade e recursos em tempo real. Os sistemas operacionais eram DOS / ADT (várias versões) e Unix. O mais antigo ADT7000 híbrido (1974) era composto de partes digitais ADT4000 e analógicas ADT3000, mas apenas a parte digital era interessante para os clientes. ADT4316 (1976) tinha 16K palavras de memória de núcleo de ferrite, o ADT4500 (1978) até 4M palavras de RAM de semicondutor. O ADT 4900 foi projetado como um computador de placa única , mas sua produção em massa não começou. O Exército do Povo da Checoslováquia usou minicomputadores móveis MOMI 1 e MOMI 2 baseados em ADT, embutidos em um contêiner transportado pelo caminhão Tatra 148.

Notas

Referências

Citações

Bibliografia

links externos