Mips multiciclo fluxo de dados e controle
This presentation is the property of its rightful owner.
Sponsored Links
1 / 18

MIPS MULTICICLO Fluxo de Dados e Controle PowerPoint PPT Presentation


  • 68 Views
  • Uploaded on
  • Presentation posted in: General

MIPS MULTICICLO Fluxo de Dados e Controle. Usa máquina de estado finito para controle. Máquinas de estado finito: Um conjunto de estados e Função próximo estado (determinado pelo estado atual e entrada)

Download Presentation

MIPS MULTICICLO Fluxo de Dados e Controle

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Mips multiciclo fluxo de dados e controle

MIPS MULTICICLOFluxo de Dados e Controle


Usa m quina de estado finito para controle

Usa máquina de estado finito para controle

  • Máquinas de estado finito:

    • Um conjunto de estados e

    • Função próximo estado (determinado pelo estado atual e entrada)

    • Função de saída (determinada pelo estado atual e possivelmente entrada)Usaremos uma máquina Moore (saída baseada somente no estado atual)


T cnica multiciclo

Técnica multiciclo

  • Quebrar as instruções em passos, cada passo leva um ciclo

    • Balancear a quantidade de trabalhos a realizar

    • Restringir cada ciclo para usar somente uma unidade funcional

  • No fim de um ciclo

    • Armazenar valores para serem usados nos ciclos posteriores

    • introduzir registradores internos adicionais


Cinco passos de execu o

Cinco passos de Execução

  • Busca da instrução (Instruction Fetch)

  • Decodificação da instrução e busca do registrador

  • Execução, Computação do endereço de memória, ou conclusão de uma instrução de branch

  • Acesso à memória ou conclusão de uma instrução R-type

  • Passo de Write-backINSTRUÇÕES LEVEM DE 3 - 5 CICLOS!


Passo 1 busca da instru o instruction fetch

Passo 1: Busca da instrução (Instruction Fetch)

  • Usar o PC para a leitura da instrução e carga da mesma no registrador de instrução (Instruction Register).

  • Incrementar o valor do PC por 4 e carregar o resultado no PC.

  • Pode ser descrito sucintamente usando RTL "Register-Transfer Language"IR = Memory[PC];PC = PC + 4;Podemos obter os valores dos sinais de controle?Quais as vantagens de atualizar o PC neste passo?


Passo 2 decod da instru o e busca de registradores

Passo 2: Decod. da Instrução e Busca de Registradores

  • Leitura dos registradores rs e rt

  • Computar o endereço de branch no caso da instrução de branch

  • RTL:A = Reg[IR[25-21]];B = Reg[IR[20-16]];ALUOut = PC + (sign-extend(IR[15-0]) << 2);

  • Estamos acionando as linhas de controle baseadas no tipo de instrução (a instrução está sendo "decodificada" na lógica de controle)


Passo 3 dependente da instru o

Passo 3 (dependente da instrução)

  • ALU está realizando uma das três funções, baseadas no tipo de instrução

  • Referência à memória:ALUOut = A + sign-extend(IR[15-0]);

  • R-type:ALUOut = A op B;

  • Branch:if (A==B) PC = ALUOut;


Passo 4 r type ou acesso mem ria

Passo 4 (R-type ou acesso à memória)

  • Acesso à memória através de loads e stores MDR = Memory[ALUOut];orMemory[ALUOut] = B;

  • Fim das instruções R-type Reg[IR[15-11]] = ALUOut;A escrita é realizada no fim do ciclo, na borda


Passo write back

Passo Write-back

  • Reg[IR[20-16]]= MDR;

    E as outras instruções?


Resumo

Resumo:


Implementando o controle

Implementando o Controle

  • Para os dois primeiros passos, os sinais de controle são iguais para todas as instruções.

  • A partir do passo 3, os sinais de controle são dependentes de:

    • Que instrução está sendo executada

    • Que passo está sendo realizada

  • Usar as informações acumuladas para especificar uma máquina de estado finito

    • Especificar uma máquina de estado finito:

      1) para os dois primeiros passos correspondem dois estados da máquina

      2) a partir do passo 3, cada combinação de instrução e passo resulta num estado diferente.


Especifica o da fsm

Especificação da FSM

  • Quantos bits de estado são necessários?


M quina de estado finito para controle controle hardwired controle fixo

Máquina de estado finito para controle (controle hardwired, controle fixo)

  • Implementação:


Implementa o em pla da l gica de controle

Implementação em PLA da lógica de controle


Controle microprogramado uso de mem ria de microprograma microc digo

Controle microprogramado – uso de memória de microprograma (microcódigo)

  • O que são “microinstruções” ?


Microprograma o

Microprogramação

  • Uma metodologia de especificação

    • Apropriado se centenas de opcodes, modos, ciclos, etc.

    • sinais especificados simbolicamente usando microinstruções

  • Duas implementações da mesma arquitetura tem o mesmo microcódigo?

  • O que faria um microassembler?


Compara o controle fixo e microprogramado

Comparação: Controle fixo e Microprogramado

  • Controle fixo:

    - complexidade do circuito cresce linearmente com o número

    de instruções.

    - após a construção é difícil a alteração do conjunto de

    instruções implementado

    - apresenta melhor desempenho

  • Controle Microprogramado:

    • a complexidade do circuito não muda enquanto usar a mesma memória de microcódigo

    • é fácil mudar o conteúdo da memória de microprograma e portanto alterar o conjunto de instruções implementado

    • o desempenho é menor em relação ao controle fixo.


Compara o controle fixo e microprogramado1

Comparação: Controle fixo e Microprogramado


  • Login