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

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

Aula 2 – Sumário Transferências entre registos

Apresentações semelhantes


Apresentação em tema: "Aula 2 – Sumário Transferências entre registos"— Transcrição da apresentação:

1 Aula 2 – Sumário Transferências entre registos
Notação utilizada Utilização de multiplexers, saídas tri-state e descodificadores Arquitectura básica de um processador A máquina de von Neumann Datapath Palavras de controlo

2 Transferências entre registos

3 Registos Registo Operações típicas
Inicializar o registo a ‘0’s – Clear (ou Reset) Carregar o registo com novos dados – Load Deslocar os bits dentro do registo – Shift Registo Conjunto de flip-flops e portas lógicas que permite o armazenamento e a manipulação de informação

4 Registos Exemplo de um circuito Variáveis de controlo:
L1 – Carregamento de R1 C1 – Clear de R1 (activo a low) L2 – Carregamento de R2 S – Selecção da operação: 0 – soma 1 – subtrai Linhas grossas são barramentos ou Bus

5 Registos Exemplos de operações C1 L1 L2 S Operação x R1  0 1
x R1  0 1 NOP (não faz nada) R2  Din R1  R1 + R2 R1  R1 – R2 R1  R1 + R2, R2  Din R1  R1 – R2, R2  Din

6 Conteúdo do endereço indicado pelo registo R1
Notação utilizada Designação Significado Exemplos Letras e números Registos R0; AC; PC; IR Carregamento R3  R2 + R1; R0  4 Vírgula Operações em simultâneo R1  R0, R2 R3+R1 M[x] Conteúdo da posição de memória x R0  M[1023]; R2  M[R1] Conteúdo do endereço 1023 Conteúdo do endereço indicado pelo registo R1 Operação Significado ~ Negação (bit-a-bit) + Adição & AND (bit-a-bit) Subtracção | OR (bit-a-bit) Multiplicação XOR (bit-a-bit) << Deslocamento para a esquerda

7 Utilização de multiplexers
Selecção da origem de dados Variáveis de controlo C2 C1 Função x --- 1 R0  R1 R0  R2

8 Utilização de multiplexers
Exemplos de operações Operação C1 C0 L2 L1 L0 R0  R1 1 R0  R1, R2  R1 R1  Din R0  R1, R2  R0 Impossível Bus de dados externos (exemplo: vindos da memória)

9 Utilização de multiplexers
Selecção das operações L0 S0 Função x --- 1 R0  ~R2 R0  R1 + R2

10 Utilização de saídas tri-state
Princípio de funcionamento Y fica isolado de A (alta impedância) Enable A Y x --- 1 Y fica ligado a A

11 Utilização de saídas tri-state
Registos bidireccionais Registo bidireccional com saídas tri-state Esquema Nota: existe uma saída tri-state por cada linha de dados

12 Utilização de saídas tri-state
EN – Enable da saída Load – Carregamento Exemplos Operação E2 E1 E0 L2 L1 L0 R0  R1 1 R0  R1, R2  R1 R1  Din R0  R1, R2  R0 Impossível

13 Utilização de descodificadores
Selecção do registo destino Selecção do registo fonte

14 Exemplo Fonte para o Bus B Destino Fonte para o Bus A
De ou para a memória Fonte para o Bus A

15 Arquitectura básica de um CPU

16 Processador CPU (Central Processing Unit)
É o principal responsável pela actividade de um computador Executa sequências de instruções definidas em programas Comunica com os restantes elementos do sistema através dos seus pinos, ligados a barramentos externos

17 A máquina de von Neumann
John von Neumann ( ) Propôs uma arquitectura de computadores conhecida posteriormente como Máquina de von Neumann CPU composto por 3 unidades principais Banco de registos Unidade funcional Unidade de controlo O CPU executa instruções carregadas em memória – o programa

18 Estrutura básica de um CPU
Gera os sinais que seleccionam a fonte e o destino dos dados, assim como a operação a realizar Guardam vários tipos de dados Operações aritméticas Operações lógicas Operações de deslocamento

19 Estrutura básica de um CPU
Datapath

20 Datapath Com mais pormenor… Unidade funcional Banco de registos

21 Datapath Em blocos:

22 Datapath Contudo, o esquema ainda não está operacional
Falta-lhe a possibilidade de comunicar com o exterior Com uma memória RAM, por exemplo E a possibilidade de carregar constantes Como resolver? Uma hipótese será: Acrescentar mais multiplexers e mais sinais de controlo Os barramentos A, B e C passam a ter funcionalidades adicionais: Bus A – para endereçar a memória Bus B – para constantes e dados a escrever na memória Bus C – para dados lidos da memória Nota: Existem outras possibilidades para introduzir estas novas funcionalidades.

23 Comunicação Datapath-Memória
Selecção de constantes Selecção de dados vindos da memória Controlo de escrita/leitura na memória

24 Palavras de controlo Palavra de controlo ou Micro-instrução
Combinação binária correspondente ao conjunto de todos os sinais de controlo Possível estrutura de uma palavra de controlo (para o esquema anterior):

25 Execução de uma instrução
Palavra de controlo Palavra de controlo Palavra de controlo Estado Estado Estado Endereço de instrução Instrução


Carregar ppt "Aula 2 – Sumário Transferências entre registos"

Apresentações semelhantes


Anúncios Google