Esta é uma pré-visualização de arquivo. Entre para ver o arquivo original
1 Microarquitetura SAP-1 (Parte 2) Professor: Alexandre Scaico alexandre.scaico@gmail.com Faculdade de Ciências Sociais Aplicadas Curso de Sistemas de Informações Organização e Arquitetura de Computadores 2 Temporização no SAP-1 A unidade de controle gera as palavras de controle que causam a BUSCA e EXECUÇÃO de cada instrução em 6 ESTADOS DE TEMPORIZAÇÃO (estados T) gerados por pulsos sucessivos do relógio Os 3 primeiros estados são comuns a todas as instruções e formam o ciclo de busca O 3 últimos estados dependem da instrução a ser executada e formam o ciclo de exeução 3 Temporização no SAP-1 Os estados T são gerados por um contador em anel, que gera os seguintes códigos T1 = 000001 T2 = 000010 T3 = 000100 T4 = 001000 T5 = 010000 T6 = 100000 4Arquitetura do SAP-1 5 Ciclo de Busca Composto pelos seguintes estados: Estado de Endereço Estado de Incremento Estado de Memória 6 Ciclo de Busca Estado de Endereço (T1) Endereço contido no PC é transferido pro REM Sinais ativo→ EP e LM Estado de Incremento (T2) O conteúdo do contador de programa (PC) é incrementado Sinal ativo→ CP 2 7 Ciclo de Busca Estado de Memória (T3) A instrução endereçada na memória é transferida da memória para o registrador de instrução (RI) Sinais ativo→ CE e LI 8 Ciclo de Busca Ciclo de busca – (a) Estado T1, (b) Estado T2 e (c) Estado T3 9 Ciclos de Execução Ocorre após o ciclo de busca e os sinais de controle gerados dependem da instrução a ser executada O controlador-sequencializador possui um circuito combinacional (matriz de controle) que gera suas saídas de acordo com o estado T e o código da operação presente no RI No ciclo de busca a saída do controlador depende apenas dos estados T 10 Ciclos de Execução Rotina LDA Em T4 os bits da instrução são enviados ao controlador-sequencializador e os bits de endereço do operando (dado) são enviados ao REM → sinais ativos: EI e LM Em T5 o dado da RAM (a partir do endereço no REM) é enviado ao registrador A → sinais ativos: CE e LA T6 é um estado sem operação (a palavra de controle gerada possui todos os sinais de controle desativos) 11 Ciclos de Execução Rotina LDA Ciclo de execução LDA – (a) Estado T4, (b) Estado T5 e (c) Estado T6 12Diagrama de temporização do ciclo completo da instrução LDA 3 13 Ciclos de Execução Rotina ADD Em T4 os bits da instrução são enviados ao controlador-sequencializador e os bits de endereço do operando (dado) são enviados ao REM → sinais ativos: EI e LM Em T5 o dado da RAM (a partir do endereço no REM) é enviado ao registrador B → sinais ativos: CE e LB Em T6 a soma é realizada e seu resultado é armazenado em Acc→ sinais ativos: EU e LA 14 Ciclos de Execução Rotina ADD Ciclo de execução ADD – (a) Estado T4, (b) Estado T5 e (c) Estado T6 15Diagrama de temporização do ciclo completo da instrução ADD 16 Ciclos de Execução Rotina SUB Tem praticamente o mesmo ciclo de execução do ADD, a exceção do sinal SU, que neste caso é ativo indicando a subtração Rotina OUT Possui apenas o ciclo T4, com T5 e T6 sendo estados sem operação Nesta instrução os 4 bits menos significativos da palavra que contém o código são irrelevantes Sinais ativos em T4→ EA e LO 17 Ciclos de Execução Rotina HLT Não possui rotina de execução O controlador ao receber o código de operação HLT (1111) interrompe o processamento gerando uma palavra de controle onde todos os sinais estão desativos, e interrompendo o contador em anel Sem o contador o sistema não tem mais como funcionar,a menos que se reinicie o sistema 18 Microprograma do SAP-1 Microinstruções São as palavras geradas pelo controlador a cada estado T do processamento Macroinstruções São instruções de mais alto nível, compostas por um certo número de microinstruções Cada macroinstrução do SAP-1 é formada por 3 microinstruções (não levamos em conta as microinstruções do ciclo de busca) 4 19 Microprograma do SAP-1 Macroinstrução LDA 20 Microprograma do SAP-1 21 Microprograma do SAP-1 Sinais ativos de acordo com o estado T e a instrução 22 Microprogramação do SAP-1 Com o aumento do número de instruções a contrução da matriz de contole (que gera os sinais de controle) se torna muito complexa Alternativa→ microprogramação Na microprogramação, as palavras de controle são previamente armazenadas em uma memória ROM, e são lidas ao longo da execução das instruções 23 Microprogramação do SAP-1 Estrutura de microprogramação do SAP-1 24 Microprogramação do SAP-1 Controle microprograma do SAP-1 ROM de endereços Contador pré-ajustável ROM de controle Etapas do controle microprogramado Endereçamento inicial da rotina da instrução Escalonamento através dos endereços da rotina Aplicação dos endereço à ROM de controle 5 25 Microprogramação do SAP-1 ROM de endereços Recebe o código da operação do RI e gera o endereço onde fica a rotina de cada instrução 26 Microprogramação do SAP-1 Contador pré-ajustável Inicia em 0000 (T1) e vai até 0010 (T3) Em T3 o valor da ROM de endereços é reconhecida pelo contador, mudando o seu valor de contagem em T4 De T4 a T6 o valor do contador irá iniciar com o valor proveniente da ROM de endereços e será incrementado, endereçando assim a ROM de controle 27 Microprogramação do SAP-1 Estrutura de microprogramação do SAP-1 28 Microprogramação do SAP-1 ROM de controle Armazena as microinstruções De T1 a T3 recebe o valor do contador (0000, 0001 e 0010) Em T3 o endereço da rotina da instrução é reconhecida pelo contador mudando o valor da contagem Com isso temos a correta execução dos estados T4, T5 e T6 para cada instrução 29 Microprogramação do SAP-1 ROM de controle Entrada→ saída do contador pré-ajustável - endereços do microprograma Saída → palavras de controle (microinstruções) que executam a operação correspondente à instrução 30Conteúdo da ROM de controle 6 31 Microprogramação do SAP-1 Vantagens Eliminação do decodificador de instruções e da matriz de controle→ circuitos que tendem a ficar bastante complicados com o aumento do número de instruções Fácil alteração do conjunto de instruções→ reprogramação da ROM de controle e da ROM de endereços 32 Ciclo Variável de Máquina Microinstrução 3E3 é um NOP Com isso temos um ciclo fixo de máquina Os NOPs introduzem atraso no processamento Solução → criação de um ciclo variável de máquina Eliminar os NOPs No SAP-1 isso é feito através de um circuito que reconhece o código do NOP e instantâneamente reinicia o contador pré-ajustável 33 Exercício Instrução: ADD Endereço da instrução: 4H Endereço do operando: EH Operando: #07H Registradores: Acc=08H, B=O=00H, REM=2H, RI=00H, PC = 4H Mostrar o valor dos registradores (PC, RI, REM, Acc, B e O) do SAP-1 durante a execução dessa instrução 34 Exercício - Solução