Corte de bits - Bit slicing

O fatiamento de bits é uma técnica para construir um processador a partir de módulos de processadores de largura de bits menor, com o objetivo de aumentar o comprimento da palavra; em teoria, para fazer uma CPU arbitrária de n bits. Cada um desses módulos componentes processa um campo de bits ou "fatia" de um operando . Os componentes de processamento agrupados teriam então a capacidade de processar o comprimento de palavra completo escolhido de um design de software específico.

O corte de bits mais ou menos morreu devido ao advento do microprocessador . Recentemente, tem sido usado em ALUs para computadores quânticos e tem sido usado como uma técnica de software (por exemplo, em CPUs x86 , para criptografia ).

Detalhes operacionais

Os processadores de bit-slice geralmente incluem uma unidade lógica aritmética (ALU) de 1 , 2 , 4 , 8 ou 16  bits e linhas de controle (incluindo sinais de transporte ou de estouro que são internos ao processador em projetos de CPU não-bits ).

Por exemplo, dois chips ALU de 4 bits podem ser dispostos lado a lado, com linhas de controle entre eles, para formar uma ALU de 8 bits (o resultado não precisa ser a potência de dois, por exemplo, três ALU de 1 bit podem fazer uma ALU de 3 bits , portanto, CPU de 3 bits (ou n bits), enquanto a CPU de 3 bits, ou qualquer CPU com um número ímpar de bits maior, não foi fabricada e vendida em volume). Quatro chips ALU de 4 bits podem ser usados ​​para construir uma ALU de 16 bits. Seriam necessários oito chips para construir uma ALU com palavras de 32 bits. O designer pode adicionar quantas fatias forem necessárias para manipular palavras mais longas.

Um microsequencer ou ROM de controle seria usado para executar a lógica para fornecer dados e sinais de controle para regular a função das ALUs componentes.

Microprocessadores bit-slice conhecidos:

  • Fatia de 4 bits:
    • Família IMP nacional , consistindo principalmente no IMP-00A / 520 RALU (também conhecido como MM5750) e vários microcódigo ROM mascarado e chips de controle (CROMs, também conhecido como MM5751)
      • National GPC / P / IMP-4 (1973), fornecido por Rockwell
      • National IMP-8 , um processador de 8 bits baseado no chipset IMP, usando dois chips RALU e um chip CROM
      • National IMP-16 , um processador de 16 bits baseado no chipset IMP, por exemplo, quatro chips RALU com um cada chips CROM IMP16A / 521D e IMP16A / 522D (chips CROM opcionais adicionais podem fornecer conjunto de instruções adicional)
    • Família AMD Am2900 (1975), por exemplo, AM2901, AM2901A, AM2903
    • Família de memórias monolíticas 5700/6700 (1974), por exemplo, MMI 5701 / MMI 6701, segunda fonte da ITT Semiconductors
    • Texas Instruments SBP0400 (1975) e SBP0401, em cascata até 16 bits
    • Texas Instruments SN74181 (1970)
    • Texas Instruments SN74S281 com SN74S282
    • Texas Instruments SN74S481 com SN74S482 (1976)
    • Fairchild 33705
    • Fairchild 9400 (MACROLOGIC), 4700
    • Família Motorola M10800 (1979), por exemplo, MC10800
    • Raytheon RP-16, um processador de 16 bits que consiste em sete circuitos integrados, usando quatro chips RALU e três chips CROM.

Necessidade histórica

O fatiamento de bits, embora não fosse chamado assim na época, também era usado em computadores antes dos circuitos integrados de grande escala (LSI, o predecessor do VLSI atual , ou circuitos de integração de muito grande escala). A primeira máquina fatiada foi a EDSAC 2 , construída no Laboratório de Matemática da Universidade de Cambridge em 1956–1958.

Antes de meados da década de 1970 e do final da década de 1980, havia algum debate sobre quanta largura de barramento era necessária em um determinado sistema de computador para fazê-lo funcionar. A tecnologia e as peças do chip de silício eram muito mais caras do que hoje. Usar ALUs múltiplas, mais simples e, portanto, menos caras foi visto como uma forma de aumentar o poder de computação de uma maneira econômica. Enquanto microprocessadores de arquitetura de 32 bits estavam sendo discutidos na época, poucos estavam em produção.

Os mainframes da série UNIVAC 1100 (uma das séries mais antigas, originada na década de 1950) tem uma arquitetura de 36 bits e o 1100/60 introduzido em 1979 usava nove chips ALU Motorola MC10800 de 4 bits para implementar a largura de palavra necessária ao usar o integrado moderno circuitos.

Na época, os processadores de 16 bits eram comuns, mas caros, e os processadores de 8 bits, como o Z80 , eram amplamente usados ​​no nascente mercado de computadores domésticos.

Combinar componentes para produzir produtos bit-slice permitiu que engenheiros e alunos criassem computadores mais poderosos e complexos a um custo mais razoável, usando componentes prontos para uso que podiam ser configurados de forma personalizada. As complexidades de criar uma nova arquitetura de computador foram bastante reduzidas quando os detalhes da ALU já foram especificados (e depurados ).

A principal vantagem é que o fatiamento de bits tornou economicamente possível em processadores menores usar transistores bipolares , que alternam muito mais rápido do que os transistores NMOS ou CMOS . Isso permitiu taxas de clock muito mais altas, onde a velocidade era necessária; por exemplo, funções DSP ou transformação de matriz , ou como no Xerox Alto , a combinação de flexibilidade e velocidade, antes que CPUs discretas fossem capazes de fornecer isso.

Uso moderno

Uso de software em hardware não bit slice

Em tempos mais recentes, o termo divisão de bits foi cunhado por Matthew Kwan para se referir à técnica de usar uma CPU de propósito geral para implementar várias máquinas virtuais simples paralelas usando instruções de lógica geral para executar operações de dados múltiplos de instrução única (SIMD). Essa técnica também é conhecida como SIMD Within A Register (SWAR).

Isso foi inicialmente em referência ao artigo de Eli Biham de 1997, A Fast New DES Implementation in Software , que obteve ganhos significativos no desempenho do DES com o uso desse método.

Computadores quânticos fatiados

Para simplificar a estrutura do circuito e reduzir o custo de hardware de computadores quânticos (propostos para executar o conjunto de instruções MIPS32 ) uma unidade lógica aritmética de fatia de 4 bits supercondutora de 50 GHz (ALU) para microprocessadores quânticos de fluxo único rápido de 32 bits foi demonstrado. "

Veja também

Referências

links externos