Organização e Arqitetra de Comptadores Seqência 15 Parte Operativa do IPS - I Introdção I O desempenho de ma máqina pode ser determinado por três fatores: Número de instrções eectadas. Período do clock (o freqüência). Número de ciclos por instrção (CPI). O compilador e a ISA (Instrction Set Architectre) determinam a qantidade de instrções a serem eectadas por certo programa. Todavia, tanto o tempo de ciclo de clock qanto o número de ciclos por instrção são determinados pela implementação do processador. Seq.15 O Processador: Caminho de dados e controle 1 Seq.15 O Processador: Caminho de dados e controle 2 Introdção II Unidade Operativa Este capitlo aborda a implementação de m sbconjnto das instrções do IPS O inter relacionamento entre ISA e a implementação é eemplificado em dois projetos alternativos da parte operativa do processador: PO niciclo PO mlticiclo Também chamada Parte Operativa, Via de Dados o, em inglês, Datapath É constrída a partir dos segintes componentes: elementos de armazenamento (registradores, ffs) operadores lógico-aritméticos recrsos de interconeão (barramentos, m) Seq.15 O Processador: Caminho de dados e controle 3 Seq.15 O Processador: Caminho de dados e controle 4
Unidade Operativa IPS Será projetada para implementar o seginte sbconjnto de instrções do IPS: Instrções de referência a memória: load word(lw) e store word(sw) Instrções Aritméticas e lógicas: add, sb, and, or e slt Instrções de desvio de flo: eqal(beq), jmp(j) Tipos de Elementos do Datapath Elementos Combinacionais Valor das saídas depende somente da combinação dos valores das entradas Não armazenam informação. Eemplo: Unidade Lógica e Aritmética (ULA) Elementos de Estado Possem memória Valores das saídas dependem das entradas e do conteúdo da memória. Eemplos: Program Conter (PC) Registradores Seq.15 O Processador: Caminho de dados e controle 5 Seq.15 O Processador: Caminho de dados e controle 6 Componentes Combinacionais Componentes combinacionais definem o valor de sas saídas apenas em fnção dos valores presentes nas sas Entradas. Componentes Seqenciais Componentes seqenciais tem m estado, qe define se valor em m dado instante de tempo. Registrador: Um conjnto de flip-flops tipo D (Registrador) Com nbits de entrada e saída. Entrada de habilitação de escrita ( write enable) Habilitação de escrita ( write enable): falso (0): O dado de saída não mda verdade (1): o dado de entrada será carregado (saída = entrada) Seq.15 O Processador: Caminho de dados e controle 7 Seq.15 O Processador: Caminho de dados e controle 8
emória emória (idealizada) Um barramento de entrada: Data In Um barramento de saída: Data Ot Uma palavra é selecionada por: Um endereço seleciona a palavra para ser colocada na saída ( Data ot). Enable = 1: Permite qe a palavra selecionada seja escrita com a informação na entrada ( Data in). Entrada de Clock ( CLK) Sincroniza os processos de acesso à memória. Geralmente, os processos são sincronizados pela borda de sbida o de descida do clock / Clk Seq.15 O Processador: Caminho de dados e controle 9 Estratégia de Temporização I Uma metodologia de temporização define qando os sinais podem ser lidos e qando eles podem ser escritos. É necessário evitar sitações de conflito, por eemplo, qerer ler ma palavra e escreve-la simltaneamente. Será adotada ma metodologia de temporização sensível às transições do sinal do clock. Nesta metodologia, qalqer valor armazenado nos elementos de estado só pode ser atalizado drante a transição do sinal de relógio (clk). Seq.15 O Processador: Caminho de dados e controle 10 Estratégia de Temporização II Estratégia de Temporização III áqina monociclo Lógica combinacional salmente tem entradas e saídas conectadas a elementos de estado (seqenciais). O elemento de estado 2 só pode ser escrito depois dos dados estarem estáveis: atraso de propagação no elemento de estado 1 atraso da lógica combinacional tempo de pré-carga ( setp) no elemento de estado 2 Seq.15 O Processador: Caminho de dados e controle 11 áqina mlticiclo Seq.15 O Processador: Caminho de dados e controle 12
Bsca de Instrções Projeto da ULA 3 bits de controle indicam a operação a ser realizada. Seq.15 O Processador: Caminho de dados e controle 13 Seq.15 O Processador: Caminho de dados e controle 14 IPS - Uniciclo Instrções Lóg/Arit e lw/sw Foi desenvolvido, na verdade, três tipos de nidades operativas: ma para instrções no formato R (add, sb, etc.) ma para instrções de no formato I ( load e store) ma para instrções condicionais (formato I) Na fase de projeto as vezes precisamos replicar recrsos A via de dados mais simples deve-se propor eectar as instrções nm único período do clock. Isto qer dizer qe nenhm dos recrsos pode ser sado mais de ma vez por instrção. Seq.15 O Processador: Caminho de dados e controle 15 Seq.15 O Processador: Caminho de dados e controle 16
Combinando as Unidades Acrescentando a Bsca Seq.15 O Processador: Caminho de dados e controle 17 Seq.15 O Processador: Caminho de dados e controle 18 Circito Final/ Instr. Log.Arit./Ref. em./desvio Circito Final/Sinais de Controle PCSrc 4 Add Shift left 2 Add ALU reslt PC address Instrction Instrction memory register 1 register 2 register Registers 1 2 Reg 16 Sign 32 etend ALUSrc 3 ALU operation Zero ALU ALU reslt Address em em Data memory emtoreg Seq.15 O Processador: Caminho de dados e controle 19 Seq.15 O Processador: Caminho de dados e controle 20