Logo pt.removalsclassifieds.com

Diferença entre microprogramação horizontal e microprogramação vertical (com tabela)

Índice:

Anonim

Microprogramação é um método de implementação de uma unidade de controle de computador sistematicamente. Em suma, é o processo de criação de um microcódigo para um microprocessador. Microcódigo é um código subsidiário que dita como um microprocessador deve agir ao executar instruções em linguagem de máquina, e Microcódigo às vezes é referido como Microprograma quando é usado em uma operação específica. Uma unidade de controle microprogramada, por outro lado, salva os valores de controle binários como palavras na memória.

Microprogramação horizontal vs microprogramação vertical

A diferença entre microprogramação horizontal e microprogramação vertical é que seu suporte, grau de paralelismo usa de microprogramação e flexibilidade. Ambos são diferentes entre si quando se trata de codificação com bits. Eles também diferem em seu design e processamento, o que lhes permite descobrir os dados.

Os sinais de controle em uma unidade de controle microprogramada horizontal são representados em formato binário decodificado. Cada bit na microprogramação horizontal está relacionado a um único ponto de controle, manifestando que a microoperação aplicável deve ser executada. Como cada microinstrução pode comandar vários recursos ao mesmo tempo, ela tem o potencial de melhorar o uso do hardware e, ao mesmo tempo, reduzir o número de microinstruções necessárias por microprograma.

Os sinais de controle em uma unidade de controle microprogramada vertical são codificados em formato binário. Cada microoperação tem seu código, que é traduzido em sinais de controle distintos pelo decodificador. Os campos de microinstrução são totalmente utilizados porque apenas a microoperação a ser realizada é definida. Além disso, microprogramas verticais são simples de escrever do que microprogramas horizontais.

Tabela de comparação entre microprogramação horizontal e vertical

Parâmetros de comparação

Microprogramação horizontal

Microprogramação vertical

Grau de paralelismo um alto grau de paralelismo baixo grau de paralelismo
Flexível É menos flexível É mais flexível
Codificação Faz menos uso de codificação ROM do que a microprogramação vertical Faz mais uso da codificação ROM
Hardware adicional Nenhum hardware adicional é necessário Hardware adicional está na forma de decodificadores
Seqüência Ele usa microinstrução horizontal Ele usa microinstrução vertical

O que é microprogramação horizontal?

Na unidade de controle micro programada horizontal, os sinais de controle são mostrados no formato binário decodificado, ou seja, 1, mas / CS, 'n' sinais de controle precisam de n, mas codificação.

Cada bit na microprogramação horizontal está relacionado a um ponto de controle singular, demonstrando que a microoperação relevante deve ser realizada. Como cada microinstrução pode gerenciar muitos resorts ao mesmo tempo, ela tem o potencial de melhorar o uso de hardware, ao mesmo tempo que requer menos microinstruções por microprograma. Os microprogramas horizontais, por outro lado, normalmente representam um conjunto de microoperações realizadas simultaneamente.

Ele permite mais paralelismo enquanto utiliza menos codificação e separa os campos de controle. Por outro lado, desenvolver microprogramas que utilizem os recursos de forma otimizada ou eficiente é um desafio difícil. Como cada bit de controle é independente dos outros, a microprogramação horizontal oferece muita liberdade. Por ser mais longo do que as microinstruções verticais, geralmente fornece mais informações.

A microprogramação horizontal, como a linguagem de máquina tradicional, usa uma maneira sequencial para expressar as próximas especificações no software racional. Cada bit está vinculado a um único posto de comando, indicando que corresponde ao ponto de controle relevante. Uma microoperação será realizada. Ramificações que são condicionais e incondicionais. A sequência deve então ser quebrada usando recursos de controle.

O que é microprogramação vertical?

Os sinais de controle são definidos no formato binário codificado em unidades de controle microprogramadas verticais, e os sinais de controle 'n' requerem codificação de bit log2n. A microprogramação vertical, em oposição à microprogramação horizontal, usa um formato flexível e um alto grau de codificação. Isso não apenas reduz o comprimento da microinstrução, mas também evita que o comprimento da microinstrução seja diretamente afetado pelo aumento da capacidade de memória. Na maioria dos casos, cada microinstrução vertical representa uma única microoperação.

Os microprogramas verticais têm uma densidade de código maior, o que beneficia o tamanho da loja de controle. A microinstrução vertical é semelhante ao estilo de linguagem de máquina tradicional, que consiste em apenas uma operação e alguns operandos. Escrever microprogramas verticais é mais fácil do que escrever microprogramas horizontais. A microinstrução vertical se assemelha à linguagem de máquina clássica, que possui apenas uma ação e alguns operandos. Como resultado, a microprogramação é simples de implementar. Normalmente consiste em quatro a seis campos, cada um exigindo de 16 a 32 bits por instrução.

Os microprogramas verticais possuem uma saturação de código maior, o que beneficia a capacidade da loja de controle. A microinstrução vertical é semelhante ao estilo de linguagem de máquina tradicional, que consiste em apenas uma função e alguns elementos de processamento. Cada microinstrução vertical define uma microoperação específica, com operandos indicando a fonte de dados e o sumidouro.

Principal diferença entre microprogramação horizontal e microprogramação vertical

  1. A microprogramação horizontal permite um maior grau de paralelismo; se o grau for n, então n sinais de controle são habilitados ao mesmo tempo. Por outro lado, a microprogramação horizontal permite um baixo grau de paralelismo; se o grau for 0 ou 1, apenas um sinal de controle será habilitado por vez.
  2. A microprogramação horizontal é menos flexível do que a unidade de controle de microprogramação vertical.
  3. A microprogramação horizontal usa menos a codificação RaoM, enquanto a microprogramação vertical usa mais a codificação ROM para reduzir o comprimento da palavra de controle.
  4. Nem hardware adicional é necessário para a microprogramação horizontal, mas na microprogramação vertical o hardware adicional está na forma de decodificadores que são necessários para gerar sinais de controle.
  5. A microprogramação horizontal emprega microinstrução horizontal, na qual cada bit no campo de controle está associado a uma linha de controle. Por outro lado, a microprogramação vertical emprega microinstrução vertical, em que cada ação recebe um código, que é então traduzido em sinais de controle individuais por decodificadores.

Conclusão

A microprogramação foi uma solução extremamente eficaz para o desafio de construir controladores sistematicamente e foi utilizada na grande maioria dos processadores (com pequenas alterações) de meados dos anos 1960 até o final dos anos 1980.

Microinstruções verticais, ao contrário de microinstruções horizontais, representam micro-operações únicas. Os microprogramas verticais codificam os bits de controle, mas os microprogramas horizontais permitem um alto grau de paralelismo com baixa codificação e campos de controle separados. A microprogramação horizontal é mais rápida do que a unidade de controle microprogramada vertical.

A microprogramação horizontal oferece suporte a palavras de controle mais longas, enquanto a microprogramação vertical oferece suporte a palavras de controle mais curtas. A decisão entre as duas formas deve ser feita com consideração. Na prática, entretanto, os designers combinam tipos de microinstrução horizontal e vertical para criar uma estrutura compacta e eficiente.

Referências

Diferença entre microprogramação horizontal e microprogramação vertical (com tabela)