Arquiteturas de Computadores: Von Neumann, Harvard, RISC, CISC e DSP

Classificado em Computação

Escrito em em português com um tamanho de 4,85 KB.

Arquiteturas de Computadores

Características Ineficientes da Arquitetura de Von Neumann

1. Programas e dados são armazenados em uma única memória sequencial, o que pode criar um retardo na operação do sistema.

2. Não há distinção explícita na representação entre dados e instruções.

3. Ambientes de linguagem de programação de alto nível utilizam várias estruturas de dados, mas a memória possui apenas uma dimensão, logo tais estruturas devem ser linearizadas.

4. A representação dos dados não retém nenhuma informação quanto ao tipo de dado armazenado.

Melhorias:

1. Essa arquitetura fornece caminhos independentes para dados de endereços, dados, endereços de instruções e instruções. Isso permite à CPU acessar instruções e dados ao mesmo tempo.

2. Otimizações mais recentes concentram-se no aumento de velocidade da estrutura de hardware básico.

Comparação entre I2C e SPI

I2C:

  • Possui duas vias de comunicação: SDA (Dados) e SCL (Clock).
  • Todo dispositivo possui um endereço único no barramento, independente da sua natureza.
  • Qualquer dispositivo conectado pode operar como transmissor ou receptor.
  • Capacitância máxima de 400pF, gerando 8 dispositivos normalmente.

SPI:

  • Possui quatro sinais: MOSI (Master Out Slave In), MISO (Master In Slave Out), SCLK (Serial Clock) e SS (Slave Select).
  • Permite que um mestre se comunique com vários escravos.
  • Permite velocidade de comunicação mais alta que o I2C.
  • É um barramento full duplex.

Classificação e Explicação das Memórias quanto aos Métodos de Acesso

1. Sequencial: Começa no início e lê em ordem. Tempo de acesso depende da localização dos dados e da localização anterior.

2. Direto: Blocos individuais possuem endereço exclusivo. Acesso saltando para a vizinhança e busca sequencial. Tempo de acesso igual ao anterior.

3. Aleatório: Endereços individuais identificam localizações com exatidão. Tempo de acesso independe do local ou acesso anterior.

4. Associativo: Dados são localizados por uma comparação com o conteúdo de uma parte do armazenamento. Tempo de acesso independe do local ou acesso anterior.

Diferenças entre as Arquiteturas Von Neumann e Harvard

Von Neumann: Constituída pela ULA (Unidade Lógica e Aritmética), Unidade de Memória, Unidade de Controle e Unidade de Entradas e Saídas. Todos esses componentes são interconectados através de uma estrutura de vários barramentos onde os dados trafegam. Porém, este modelo requer um mapeamento excessivo por parte dos compiladores para gerar o código executável para um hardware quando o programa é escrito em linguagem de alto nível.

Harvard: Possui armazenamentos de dados e instruções separados. Atualmente, elas usam a mesma memória, porém possuem caminhos e armazenadores temporários diferentes para acessar dados e instruções simultaneamente.

Funcionamento da Memória Cache

Permite um acesso muito mais rápido. Início -> recebe endereço RA (Return Address) da CPU -> bloco contendo RA está na cache? Se sim -> Busca palavra RA e entrega à CPU -> Fim. Se não -> Acessa memória principal para bloco contendo RA -> Aloca linha da cache para bloco de memória principal -> Carrega bloco da memória principal na linha de cache e entrega a palavra RA à CPU -> Fim.

Quatro Diferenças entre RISC e CISC

CISC:

  • Poucas linhas de comando.
  • Mais rápida para compilar.
  • Conjunto de instruções muito grande.
  • As instruções complexas eram melhores porque podiam ser executadas em um hardware em paralelo.
  • O problema dessa arquitetura é a manutenção da compatibilidade.

RISC:

  • Conjunto de instruções pequeno.
  • Se precisar de instruções mais complexas, o programador deve escrever toda a rotina.
  • Principal motivação é iniciar as instruções a cada ciclo, o que leva à execução mais rápida do programa.

Características do DSP que o Tornam Mais Eficiente que GPP

São microprocessadores especializados em processamento digital de sinais. Têm a capacidade de repetir em extrema velocidade uma instrução complexa. Possuem hardware adicional como unidade de ponto flutuante. Os GPPs (Processadores de Propósito Geral) não têm unidade de ponto flutuante e não têm multiplicador de ponto flutuante, além de possuir baixo desempenho.

Entradas relacionadas: