Questão de Arquitetura de Computadores — Arquitetura de processadores: RISC, CISC, WISC e Microprocessadores. — FCC 2017
Arquitetura de Computadores›Arquitetura de processadores: RISC, CISC, WISC e Microprocessadores.
Código
fc036691
Banca
FCC
Órgão
DPE-RS
Ano
2017
Nível
Superior
Cargo
Analista - Infraestrutura e Redes
Em arquitetura de processadores, o Pipeline possibilita que a execução das instruções possa ser realizada mais rapidamente. Entretanto, esse aumento da velocidade de execução pode ocasionar o problema de conflito de acesso simultâneo à memória para buscar as instruções e realizar a escrita/leitura de operandos (dados). Uma das formas de solucionar esse problema é utilizar a
Aarquitetura Harward.
BRedundância do estágio de execução do Pipeline.
CMemória Cache L2.
DDuplicação do estágio de decodificação do Pipeline.
EMemória Cache L3.
Revelar gabarito e comentário▾
GabaritoA — arquitetura Harward.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Pipeline e conflito de acesso à memória: arquitetura Harvard
Gabarito: letra A. O pipeline permite executar múltiplas instruções em estágios sobrepostos, mas pode gerar conflito quando uma instrução busca outra instrução na memória enquanto outra acessa dados no mesmo ciclo. A arquitetura Harvard soluciona esse problema ao utilizar barramentos e memórias fisicamente separados para instruções e dados, permitindo acessos simultâneos sem colisão.
A banca cobra o conhecimento de que o conflito descrito é um conflito estrutural típico da arquitetura von Neumann (memória única). A separação Harvard é a abordagem clássica para evitá-lo.
Característica
Arquitetura Harvard (Gabarito)
Redundância do estágio de execução
Memória Cache L2
Duplicação do estágio de decodificação
Memória Cache L3
Solução para conflito de acesso simultâneo à memória (instrução vs. dados)
✅ Sim, separa fisicamente os barramentos e memórias de instrução e dados.
❌ Não, replica apenas a ULA, não resolve a disputa pelo barramento.
❌ Não, é um cache unificado que não separa os fluxos de instrução e dados.
❌ Não, aumenta a decodificação, mas não elimina o conflito no acesso à memória.
❌ Não, é um cache unificado de nível superior, não separa os fluxos.
Mecanismo de ação
Dois barramentos e duas memórias/caches independentes (instrução e dados).
Replicação do hardware de execução (ULA).
Cache único e mais rápido, mas compartilhado.
Replicação do hardware de decodificação.
Cache único e mais rápido, mas compartilhado.
Efeito sobre o gargalo de von Neumann
Elimina o gargalo ao permitir acessos simultâneos.
Não altera o gargalo de acesso à memória.
Reduz a latência, mas não elimina o conflito estrutural.
Não altera o gargalo de acesso à memória.
Reduz a latência, mas não elimina o conflito estrutural.
Conflito estrutural no pipeline: Causa: acesso simultâneo à memória (Busca de instrução, Leitura/escrita de dados); Arquitetura von Neumann (Memória única, Barramento único); Solução: arquitetura Harvard (Memórias separadas, Barramentos independentes, Acessos simultâneos)
Alternativa A — ✅ Correta ⟵ GABARITO
A arquitetura Harvard emprega dois barramentos e duas memórias independentes (ou caches separadas): uma para instruções, outra para dados. Isso permite que a busca de instrução e a leitura/escrita de dados ocorram simultaneamente, resolvendo o conflito de acesso descrito.
Conceito:Arquitetura Harvard – separação dos caminhos de instrução e dados, eliminando gargalos de acesso simultâneo no pipeline.
Alternativa B — ❌ Incorreta
Redundância do estágio de execução do pipeline apenas replica o hardware responsável pela execução (ULA, etc.), mas não resolve o conflito de acesso à memória. O problema está na disputa pelo barramento/memória entre busca de instrução e acesso a dados; replicar o estágio de execução não separa esses acessos.
Alternativa C — ❌ Incorreta
A Memória Cache L2 é um nível de cache unificado (geralmente compartilhado entre instruções e dados) que acelera o acesso, mas não separa os dois fluxos. Em uma arquitetura von Neumann com cache L2 unificada, o conflito de barramento persiste (embora reduzido pela maior velocidade). A solução estrutural exige caches separadas (L1 instruções / L1 dados), típica da Harvard, e não apenas L2.
Alternativa D — ❌ Incorreta
Duplicação do estágio de decodificação do pipeline aumenta a capacidade de decodificar múltiplas instruções, mas não elimina o conflito de acesso à memória. A origem do problema é a disputa pelo recurso memória/barramento entre os estágios de busca (fetch) e acesso a dados (memory), não a decodificação.
Alternativa E — ❌ Incorreta
A Memória Cache L3 é, em geral, unificada (compartilhada entre todos os núcleos) e ainda mais distante da separação instrução/dado. Assim como a L2, não resolve o conflito estrutural; apenas melhora a latência, mas sem separar os acessos simultâneos.
PEGA ESSA DICA!
Para questões de pipeline e conflitos, lembre-se: conflito de acesso à memória entre instrução e dado é resolvido com separação física dos caminhos – arquitetura Harvard. As demais alternativas tratam de melhorias de desempenho, mas não atacam a causa raiz.