arquitetura e organização de computadores
DESCRIPTION
Arquitetura e organização de computadores. Microarquitetura – controle Aula 20 Prof. Diovani Milhorim. Microarquitetura - controle. Introdução O projeto do nível de microarquitetura depende: da arquitetura do conjunto das instruções a serem implementadas - PowerPoint PPT PresentationTRANSCRIPT
Arquitetura e organização de computadores
Microarquitetura – controle
Aula 20
Prof. Diovani Milhorim
Microarquitetura - controle
Introdução
O projeto do nível de microarquitetura depende: da arquitetura do conjunto das instruções a serem implementadas dos objetivos de custo e performance do computador que estiver sendo
projetado A maioria das ISAs modernas, em particular os projetos RISC, tem
instruções simples que podem ser executadas em um único ciclo de clock
As ISAs mais complexas, como a do Pentium, precisam de mais ciclos para executar uma única instrução. Neste caso faz-se necessário metodologias de sequenciamento de instruções mais otimizados para melhorar a performance da máquina em termos de tempo.
Microarquitetura - controle
Temporização do caminho de dados
O primeiro ciclo (explicito, do caminho de dados, apresentado na figura), pode ser visto como um conjunto de subciclos implícitos
O início do primeiro subciclo é marcado pela transição negativa do clock.
Microarquitetura - controle
Temporização do caminho de dados
As atividades, junto com sua duração (entre parênteses), que ocorrem durante os subciclos são: Os sinais de controle são ativados (dw - leia delta w) O barramento B é carregado a partir dos registradores (dx) A UAL e o deslocador operam (dy) O resultado da operação da UAL e do deslocador se propaga através
do barramento C em direção aos registradores (dz)
O resultado é armazenado nos registradores na transição positiva do próximo clock
Microarquitetura - controle
Temporização do caminho de dados
É de responsabilidade dos engenheiros de projeto assegurar que essa transição positiva ocorra somente após passado o tempo dw+dx+dy+dz. Caso contrário a carga dos registradores não é realizada
Microarquitetura - controle
Microinstruções
Para controlar um caminho de dados, precisamos de um conjunto de sinais de controle que atuam sobre os componentes do nível da lógica digital.
Os valores desses sinais de controle especificam as operações a serem executadas em um ciclo do caminho de dados.
A figura abaixo mostra um possível formato para agrupar os bits de controle da nossa arquitetura em 6 grupos, e 36 sinais, assim divididos:
Microarquitetura - controle
Microinstruções
Microarquitetura - controle
Microinstruções Endereço - contém o endereço da próxima instrução a ser
potencialmente ativada Desvio - determina como a próxima instrução será selecionada UAL - especifica as funções da UAL e do deslocador Barramento C - seleciona qual ou quais registradores serão
carregados com o valor que estiver no barramento C Memória - especifica as funções da memória (escrita, leitura ou
busca) Barramento B - seleciona a entrada do barramento B. Os 4 bits são
suficientes para selecionar um dos 9 registradores que disponibilizará seus dados no barramento B.
Microarquitetura - controle
Controle Microprogramado: o Mic-1 Para decidir quais dos sinais de controle devem ser habilitados
em cada ciclo faz-se necessário a inclusão de um sequenciador em nossa arquitetura.
O sequenciador:
é responsável pela execução de todos os passos necessários a execução de 1 única instrução do nível ISA.
produz dois tipos de informações a cada ciclo: 1. O estado de cada sinal de controle do sistema 2. O endereço da microinstrução que será executada em seguida
Microarquitetura - controle
A figura mostra o diagrama de blocos detalhado da microarquitetura Mic.
O diagrama de blocos tem 2 partes: O caminho de dados, à esquerda e a seção de controle, à direita.
Microarquitetura - controle
A memória de controle:
É o ítem maior e mais importante da parte de controle da máquina Não deve ser confundida com a memória principal (RAM), acessível via
MBR e MDR Não precisa de sinais de leitura/escrita pois é uma memória ROM (só de
leitura)
Guarda microinstruções, ao invés de instruções do nível ISA Tem 512 palavras, cada palavra contendo uma instrução de 36 bits. As microinstruções não são executadas sequencialmente, como as
instruções da memória principal. Cada microinstrução especifica explicitamente sua sucessora.
Microarquitetura - controle
A memória de controle:
O endereço da próxima microinstrução é guardado no registrador MPC (Microprogram Counter)
O registrador de dados da memória de controle é chamado MIR (MicroInstruction Register). Sua função é armazenar a microinstrução corrente cujos bits alimentam os sinais de controle que operam o caminho de dados.
Microarquitetura - controle
Microarquitetura - controle
Operação do esquema mostrado na figura;
No início de cada ciclo (na descida do clock da fig 4.3) o MIR é carregado com o conteúdo do endereço armazenado no MPC. O tempo de carga do MIR é dw (leia delta w)
Os sinais do MIR se propagam pelo caminho de dados, causando, no tempo dx: o carregamento de 1 dos registradores no barramento B o carregamento do registrador H a determinação da função a ser executada pela UAL estabilização dos dados de entrada da UAL
Microarquitetura - controle
Operação do esquema mostrado na figura 4.6
A UAL e o deslocador operam os dados de entrada, durante o tempo dy:
As saídas da UAL e do deslocador são propagadas, durante o tempo dz, e
a saída do deslocador torna-se disponível e estável no barramento C os valores de N e Z são salvos em 1 par de flip-flops de 1 bit
Microarquitetura - controle
Operação do esquema mostrado na figura 4.6
Na transição positiva do sinal de clock, da figura 4.3. os registradores são carregados com o conteúdo do barramento C os flip-flops N e Z são carregados pela UAL os registradores MBR e MDR recebem resultados da memória
O valor de MPC é atualizado (veja detalhes abaixo) no tempo de nível alto do clock.
Volta ao passo 1 e o ciclo se repete até que alguem desligue a máquina.
Microarquitetura - controle