# Intel i960

O Intel i960 (ou 80960) foi um projeto de microprocessador baseado na tecnologia RISC que se tornou popular durante o início da década de 1990 como um microcontrolador embutido, tornando-se uma CPU mais vendida neste campo, juntamente com a concorrente AMD 29000. Apesar de seu sucesso, I960 no final dos anos 90 como um efeito colateral de um acordo com a DEC em que a Intel recebeu os direitos para produzir a CPU StrongARM. O processador continua a ser utilizado em algumas aplicações militares.

## Origem

O projeto i960 foi iniciado como uma resposta ao fracasso do projeto Intel iAPX 432 do início dos anos 80. O iAPX 432 foi concebido para suportar directamente linguagens de alto nível que suportam a memória marcada, protegida e recolhida de lixo - tal como Ada e Lisp - no hardware. Devido à sua complexidade de conjunto de instruções, sua implementação de multi-chip e falhas de projeto, o iAPX 432 era muito lento em comparação com outros processadores de seu tempo.
Em 1984, a Intel e a Siemens iniciaram um projeto conjunto, chamado BiiN, para criar um sistema de computador orientado a objetos tolerante a falhas de alta qualidade programado inteiramente em Ada. Muitos dos membros da equipe original i432 se juntou a este projeto, embora um novo arquiteto, Glenford Myers, foi trazido da IBM. O mercado pretendido para os sistemas BiiN eram usuários de computadores de alta confiabilidade, como bancos, sistemas industriais e usinas nucleares.
A principal contribuição da Intel para o sistema BiiN foi um novo design de processador, influenciado pelos conceitos de memória protegida do i432. O novo design incluiu uma série de recursos para melhorar o desempenho e evitar problemas que levaram à queda do i432, que resultou no projeto i960. Os primeiros 960 processadores entraram nos estágios finais do projeto, conhecido como taping-out, em outubro de 1985 e foram enviados para a fabricação nesse mês, com os primeiros chips de trabalho chegando no final de 1985 e início de 1986.
O esforço BiiN eventualmente falhou, devido às forças do mercado, e o 960MX foi deixado sem um uso. Myers tentou salvar o projeto, destacando vários subconjuntos da arquitetura de capacidade total criada para o sistema BiiN. Ele tentou convencer a administração da Intel a comercializar o i960 (então conhecido como o "P7") como um processador de uso geral, tanto no lugar do Intel 80286 como do i386 (que foi gravado no mesmo mês do primeiro i960), bem como o emergente mercado RISC para sistemas Unix, incluindo um passo para Steve Jobs para uso no sistema NeXT. A concorrência dentro e fora da Intel veio não só do campo i386, mas também do processador i860, ainda outro design de processador RISC emergentes na Intel na época. Myers não conseguiu convencer a administração da Intel de suportar o i960 como um processador Unix ou de uso geral, mas o chip encontrou um mercado pronto em sistemas incorporados de 32 bits de alto desempenho.
O arquiteto principal de i960 era o especialista em superescalaridade Fred Pollack, que também era o engenheiro líder da Intel iAPX 432 e o arquiteto principal do Pentium Pro i686.

## Arquitetura

Para evitar os problemas de desempenho que afligiam o i432, a arquitetura do conjunto de instruções i960 central era um projeto RISC, implementado apenas no i960MX e o subsistema de memória foi feito com 33 bits de largura — para uma palavra de 32 bits e uma "Tag" para indicar memória protegida. De muitas outras formas, o i960 seguiu o design original do Berkeley RISC, especialmente no uso de janelas de registro, um número específico de cache para os registros por sub-rotina, permitindo chamadas rápidas de rotina. O design concorrente da Universidade de Stanford, comercializado como MIPS, não utilizou esse sistema, contando com o compilador para gerar uma chamada de sub-rotina e um código de retorno ótimos. Em comum com a maioria dos designs de 32 bits, o i960 possui um espaço de memória plano de 32 bits, sem segmentação de memória. A arquitetura i960 também antecipou uma implementação superescalar, com instruções sendo enviadas simultaneamente para mais de uma unidade dentro do processador.

## Variantes do i960

O i960MX finalizado nunca foi lançado para o mercado não-militar, mas o idêntico i960MC foi usado em aplicativos embutidos high-end. O i960MC incluiu todos os recursos do sistema BiiN original, mas estes simplesmente não foram mencionados na literatura, levando muitos a se perguntar por que o i960MC era tão grande e tinha tantos pinos rotulados como "sem conexão".

### 80960Kx

Uma versão do núcleo RISC sem gerenciamento de memória ou uma FPU tornou-se o i960KA, eo núcleo RISC com a FPU tornou-se o i960KB. As versões eram, no entanto, todas idênticas internamente - apenas a rotulagem era diferente. Isso significava que os CPUs eram muito maiores do que o necessário para os conjuntos de recursos "realmente suportados" e, como resultado, mais caros de fabricar do que precisavam ser.
O i960KA tornou-se bem sucedido como um processador de baixo custo de 32 bits para o mercado de impressoras laser, bem como para os primeiros terminais gráficos e outras aplicações incorporadas. Seu sucesso pagou para as gerações futuras, o que removeu o complexo sub-sistema de memória.

### 80960Cx

O i960CA, anunciado pela primeira vez em julho de 1989, foi a primeira implementação RISC pura da arquitetura i960. Ele apresentava um núcleo superscalar RISC recém-projetado e adicionado um cache de chip on-chip incomum, mas não possuía uma FPU e MMU, pois era destinado a aplicações embutidas de alto desempenho. O i960CA é amplamente considerado como tendo sido a primeira implementação superscalar RISC de um único chip. A série C só incluiu uma ALU, mas poderia despachar e executar uma instrução aritmética, uma referência de memória e uma instrução de ramificação ao mesmo tempo, e sustentar duas instruções por ciclo em determinadas circunstâncias. As primeiras versões lançadas correram a 33 MHz, ea Intel promoveu o chip como capaz de 66 MIPS. A microarquitetura i960CA foi projetada em 1987-1988 e anunciada formalmente em 12 de setembro de 1989. Mais tarde, em maio de 1992, o i960CF incluiu maior cache de instruções (4 KB em vez de 1 KB) e adicionou 1 KB de cache de dados, mas continuou a omitir Qualquer MMU ou FPU.

### 80960Jx

O 80960Jx é um processador para aplicações incorporadas. Possui barramento de endereço / dados multiplexados de 32 bits, cache de instruções e dados, memória RAM on-chip de 1K, controlador de interrupção e dois temporizadores independentes de 32 bits. Os recursos de testabilidade do 80960Jx incluíam o modo ONCE (emulação de circuito) e a varredura de limites (JTAG).

### 80960VH

Anunciado em outubro de 1998, o processador i960VH Embedded-PCI incluiu barramento PCI de 33-MHz de 32 bits e núcleo de processador i960JT de 100 MHz. O núcleo também apresentava 16 KB de cache de instruções, 4 KB de cache de dados e 1 KB de RAM incorporada. Outras características principais incluíram dois temporizadores de 32 bits, controlador de interrupção programável, interface I²C e um controlador DMA de dois canais.

## Cessão

A Intel tentou reforçar o i960 no mercado de controladores de dispositivos de E / S com o padrão I2O, mas isso teve pouco sucesso e o trabalho de design eventualmente acabou. Em meados da década de 1990, sua relação preço / desempenho havia ficado atrás de chips concorrentes de design mais recente e a Intel nunca produziu uma versão de consumo de energia reduzida que pudesse ser usada em sistemas a bateria.
Em 1990 a equipe i960 foi redirecionada para ser a "segunda equipe" trabalhando em paralelo em futuras implementações i386 - especificamente o processador P6, que mais tarde se tornou o Pentium Pro. O projeto i960 foi enviado para outra equipe de desenvolvimento menor, assegurando essencialmente sua morte definitiva.

## Status atual

Devido ao seu alto desempenho no cálculo de valores XOR, a família de processadores Intel 960 é freqüentemente usada para controlar placas de adaptador de host de matriz de disco SCSI com capacidade superior RAID, bem como o SCSI e DSSI high-end da Digital Equipment / Compaq / HP e eventualmente Fibre Channel série HSx autônomo controladores RAID
Um chip i960RS também controla o controlador AAR-2400A da Adaptec, que usa quatro unidades ATA paralelas de commodities para construir um sistema de armazenamento tolerante a falhas RAID-5 acessível para servidores e estações de trabalho de pequeno porte.
O Intel 960 também foi usado em alguns switches Brocade Fibre Channel para rodar o Fabric OS.
A arquitetura Intel 960 também é usada em máquinas caça-níqueis. Atualmente eles são encontrados na família Stepper S2000 da IGT e na família de vídeo i960. Foi usado também como o processador central principal da série modelo 2 de placas da arcada de Sega.
O indiano HAL Tejas luz avião de combate MMR (radar multi-modo) é dito para usar o i960. A adoção total do HAL Tejas para o serviço da Força Aérea Indiana só pode ocorrer em torno de 2010.
A Organização de Pesquisa Espacial indiana (ISRO) é dito para usar o chip em seus computadores de bordo em seus veículos de lançamento.
O processador Intel 960 também é usado em placas de interface Radar Plotting Aid (ARPA) de radar da Kelvin Hughes.
Ele também foi usado em alguns HP X-Terminals.
Alguns controladores SATA RAID utilizam o Intel 80303 IOP (Intelligent I / O Processor) que integra PCI-to-PCI bridge, controlador de memória e núcleo da CPU 80960JT-100.