Arquitetura e organização de computadores Aula 19 Microarquitetura Microarquitetura Sumário • Unidades lógicas • Microarquitetura • MIC • Parte Operativa e Parte de Controle • MIC – Parte Operativa • Leitura e Escrita em Registradores Microarquitetura Uma Microarquitetura é dividida em uma Parte Operativa e uma Parte de Controle • Parte Operativa (ou Caminho de Dados) – Constituída de todos os componentes responsáveis pela execução das operações elementares sobre os dados (transformações nos dados) • Parte de Controle – Constituída de circuitos sequenciais e/ou memória de programa que gera o controle ciclo-a-ciclo da parte operativa Microarquitetura MIC Microarquitetura MIC Microarquitetura MIC Microarquitetura MIC Microarquitetura MIC Microarquitetura MIC: Parte Operativa • Uma microarquitetura executa instruções que são armazenadas na memória • Recupera e armazena dados em memória LEITURA E ESCRITA NA MEMÓRIA • Necessita de registradores de endereço e dados • Necessidade de barramentos de endereços e dados Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa Instruções de um programas são executados segundo uma ordem precisa • Uma microarquitetura necessita saber, sempre, qual a próxima instrução a ser executada APONTADOR DE PROGRAMA • Necessidade de um registrador apontador de programa (PC) • Necessidade de realização de operações sobre o conteúdo do PC, para atualização a cada instrução Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa A Instrução lida da memória é armazenada para decodificação e uso futuro. REGISTRADOR DE INSTRUÇÕES • Necessidade armazenamento dos dados vindos da memória • Necessidade de um registrador de instrução Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa O processo de escrita de dados na memória também utiliza os registradores e barramentos de dados e endereços CAMINHO PARA A SAÍDA DE DADOS • Necessidade de recursos específicos para saída de dados. Microarquitetura MIC: Parte Operativa Saída de dados Microarquitetura MIC: Parte Operativa Para realização de instruções aritméticas a existência de registrado internos aceleram a busca de dados REGISTRADORES DE USO GERAL • Necessidade de uma banco de registradores de propósito geral • Necessidade de uma ULA com um conjunto de operadores adequados Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa Instruções podem usar um, dois ou três endereços – A = NOT A –A=A+B –A=B+C • O uso de mais endereços requer mais bits no formato da instrução REGISTRADOR ACUMULADOR • Necessidade do uso de um registrador Acumulador (AC) Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa A Capacidade de empilhar e desempilhar dados em uma região reservada da memória é um recurso importante em muitas arquitetura APONTADOR DE PILHA • Necessidade de um registrador apontador de pilha (PS) Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa MASCARAS DE BIT • AMASK = 0x0FFF – Recupera o endereço em instruções no formato 1 • BMASK = 0X00FF – Recupera o endereço em instruções no formato 2 Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa Algoritmos de multiplicação e divisão usam deslocamentos • Deslocamentos podem ser usados em decodificação e outras operações importantes DESLOCADOR • Necessidade de um deslocador • Deslocamento pode ser feito na ULA, mas também pode ser interessante fora dela Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa Muitas unidades da parte operativa de um processador necessitam de controle explicito • Estes controles são gerados pela Parte de controle e enviados Ciclo-a-Ciclo à Parte de Controle SINAIS DE CONTROLE Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa Interface PO/C – AMUX: Controla a entrada do multiplexador – ALU: Define a operação da ULA – SH: Define se há deslocamento e a direção – MBR: Habilita escrita no MBR a partir do deslocador – MAR: Habilita escrita no MAR a partir do latch B – RD: Requisita leitura da memória – WR: Requisita escrita na memória – ENC: Controla armazenamento nos registradores – A, B e C : Endereços de leitura (A e B) e escrita (C) nos registradores Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa Microarquitetura MIC: Parte Operativa A microarquitetura é uma solução de compromisso entre as necessidades e o custo do projeto