A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

1998 Morgan Kaufmann Publishers Ch5B-1 O Processador: Via de Dados e Controle (Parte C: microprogramação)

Apresentações semelhantes


Apresentação em tema: "1998 Morgan Kaufmann Publishers Ch5B-1 O Processador: Via de Dados e Controle (Parte C: microprogramação)"— Transcrição da apresentação:

1 1998 Morgan Kaufmann Publishers Ch5B-1 O Processador: Via de Dados e Controle (Parte C: microprogramação)

2 1998 Morgan Kaufmann Publishers Ch5B-2 Possibilidades para o projeto de UCs Initial representation Finite state diagram Microprogram Sequencing control Explicit next state function Microprogram counter + dispatch ROMS Logic representation Logic equations Truth tables Implementation technique Programmable logic array Read only memory Ler Historical perspective and further reading RISC x CISC Controle hardwired microprogramado (firmware)

3 1998 Morgan Kaufmann Publishers Ch5B-3 Valores dos sinais de controle dependem de: –Qual instrução está sendo executada –Que passo está sendo processado Especificar a máquina de estados finitos graficamente, ou Usar microprogramação Implementação pode ser derivada da especificação Implementando o controle

4 1998 Morgan Kaufmann Publishers Ch5B-4 Quantos bits de estado serão necessários? Especificação gráfica da MEF PCWrite PCSource = 10 ALUSrcA = 1 ALUSrcB = 00 ALUOp = 01 PCWriteCond PCSource = 01 ALUSrcA =1 ALUSrcB = 00 ALUOp= 10 RegDst = 1 RegWrite MemtoReg = 0 MemWrite IorD = 1 MemRead IorD = 1 ALUSrcA = 1 ALUSrcB = 10 ALUOp = 00 RegDst=0 RegWrite MemtoReg=1 ALUSrcA = 0 ALUSrcB = 11 ALUOp = 00 MemRead ALUSrcA = 0 IorD = 0 IRWrite ALUSrcB = 01 ALUOp = 00 PCWrite PCSource = 00 Instruction fetch Instruction decode/ register fetch Jump completion Branch completionExecution Memory address computation Memory access Memory access R-type completion Write-back step ( O p = ' L W ' ) o r ( O p = ' S W ' ) ( O p = R - t y p e ) ( O p = ' B E Q ' ) ( O p = ' J ' ) ( O p = ' S W ' ) ( O p = ' L W ' ) 4 0 1 9862 753 Start

5 1998 Morgan Kaufmann Publishers Ch5B-5 MEF para controle PCWrite PCWriteCond IorD MemtoReg PCSource ALUOp ALUSrcB ALUSrcA RegWrite RegDst NS3 NS2 NS1 NS0 O p 5 O p 4 O p 3 O p 2 O p 1 O p 0 S 3 S 2 S 1 S 0 State register IRWrite MemRead MemWrite Instruction register opcode field Outputs Control logic Inputs

6 1998 Morgan Kaufmann Publishers Ch5B-6 Implementação via PLA

7 1998 Morgan Kaufmann Publishers Ch5B-7 ROM = "Read Only Memory" Uma ROM pode ser usada para implementar uma tabela-verdade –Se o endereço possui m-bits, pode-se endereçar 2 m entradas na ROM. –A saída são os bits de dados que o endereço aponta m é a altura, e n é a largura Implementação via ROM mn 0 0 0 0 0 1 1 0 0 1 1 1 0 0 0 1 0 1 1 0 0 0 1 1 1 0 0 0 1 0 0 0 0 0 0 1 0 1 0 0 0 1 1 1 0 0 1 1 0 1 1 1 0 1 1 1

8 1998 Morgan Kaufmann Publishers Ch5B-8 Quantas entradas? 6 bits para opcode, 4 bits para estado = 10 bits de endereço (i.e., 2 10 = 1024 endereços diferentes) Quantas saídas? 16 saídas para controle da via de dados, 4 bits de estado= 20 bits de saída ROM é 2 10 x 20 = 1K x 20 bits Ocupa muita área! Implementação via ROM

9 1998 Morgan Kaufmann Publishers Ch5B-9 Divisão da tabela em duas partes 4 bits de estado indicam 16 saídas, 2 4 x 16 bits da ROM 10 bits tell you the 4 next state bits, 2 10 x 4 bits da ROM Total: 4.3K bits de ROM PLA é muito menor Pode compartilhar termos de produtos Necessita apenas de entradas que produzem uma saída ativa Pode levar em conta sinais do tipo don't care Tamanho é (#inputs #product-terms) + (#outputs #product-terms) Para o nosso exemplo = (10x17)+(20x17) = 460 células de PLA ROM vs PLA

10 1998 Morgan Kaufmann Publishers Ch5B-10 Instruções complexas: o próximo estado é o estado atual + 1 Outro estilo de implementação AddrCtl Outputs PLA or ROM State Address select logic O p [ 5 – 0 ] Adder Instruction register opcode field 1 Control unit Input PCWrite PCWriteCond IorD MemtoReg PCSource ALUOp ALUSrcB ALUSrcA RegWrite RegDst IRWrite MemRead MemWrite BWrite

11 1998 Morgan Kaufmann Publishers Ch5B-11 Visão geral Memória de MicroControle PC INCR CC (tabelas) IR OP End Dados seq Unidade de controle programado IR

12 1998 Morgan Kaufmann Publishers Ch5B-12 controle

13 1998 Morgan Kaufmann Publishers Ch5B-13 Microprogramação O que são as microinstruções?

14 1998 Morgan Kaufmann Publishers Ch5B-14 Diagrama de transição de estados PCWrite PCSource = 10 ALUSrcA = 1 ALUSrcB = 00 ALUOp = 01 PCWriteCond PCSource = 01 ALUSrcA =1 ALUSrcB = 00 ALUOp= 10 RegDst = 1 RegWrite MemtoReg = 0 MemWrite IorD = 1 MemRead IorD = 1 ALUSrcA = 1 ALUSrcB = 10 ALUOp = 00 RegDst=0 RegWrite MemtoReg=1 ALUSrcA = 0 ALUSrcB = 11 ALUOp = 00 MemRead ALUSrcA = 0 IorD = 0 IRWrite ALUSrcB = 01 ALUOp = 00 PCWrite PCSource = 00 Instruction fetch Instruction decode/ register fetch Jump completion Branch completionExecution Memory address computation Memory access Memory access R-type completion Write-back step ( O p = ' L W ' ) o r ( O p = ' S W ' ) ( O p = R - t y p e ) ( O p = ' B E Q ' ) ( O p = ' J ' ) ( O p = ' S W ' ) ( O p = ' L W ' ) 4 0 1 9862 753 Start

15 1998 Morgan Kaufmann Publishers Ch5B-15 Um microprograma horizontal

16 1998 Morgan Kaufmann Publishers Ch5B-16 Uma metodologia de especificação –Apropriada se centenas de opcodes, modos, ciclos, etc. –Sinais especificados simbolicamente usando microinstruções Duas implementações da mesma arquitetura possuem o mesmo microcódigo? Microprogramação

17 Formato das microinstruções

18 1998 Morgan Kaufmann Publishers Ch5B-18 Não codificado –1 bit para cada operação da via de dados –Mais rápido, requer mais memória (lógica) –Usado pelo Vax 780 incríveis 400K de memória! Codificado –Enviar microinstruções e obter sinais de controle –Usa menos memória mas é mais lento Contexto histórico de CISC: –Muita lógica de controle para colocar em um único chip –Utilizar uma ROM (ou mesmo uma RAM) para manter o microcódigo –A adição de novas instruções é mais simples Codificação x Não codificação

19 1998 Morgan Kaufmann Publishers Ch5B-19 Microcódigo A distinção entre especificação e implementação é, algumas vezes, difícil de encontrar Vantagens da especificação: –Fácil de projetar e escrever –Projetar arquitetura e microcódigo em paralelo Vantagens da implementação (ROM) –Fácil de modificar uma vez que os valores estão em uma memória –Pode emular outras arquiteturas –Pode fazer uso de registradores internos Desvantagens da implementação : –Controle é implementado no mesmo chip como o processador –ROM não é mais rápida que uma RAM


Carregar ppt "1998 Morgan Kaufmann Publishers Ch5B-1 O Processador: Via de Dados e Controle (Parte C: microprogramação)"

Apresentações semelhantes


Anúncios Google