Microprocessadores I. Aula 6 Arquitetura do Microprocessador Pinagem e Diagrama de Temporização

Documentos relacionados
Departamento de Engenharia Elétrica. ELE Microprocessadores II. Prof. Carlos Antonio Alves Sala 59 Fone

Departamento de Engenharia Elétrica. ELE Microprocessadores II. Prof. Carlos Antonio Alves Sala 59 Fone

ELE Microprocessadores I. AULA 12 Arquitetura do Microprocessador Interface com as memórias

UCP 8051 (parte 02) Professor Adão de Melo Neto

Departamento de Engenharia Elétrica. ELE Microprocessadores II. Prof. Carlos Antonio Alves Sala 59 Fone

Departamento de Engenharia Elétrica. ELE Microprocessadores II. Prof. Carlos Antonio Alves Sala 59 Fone

Organização Básica III

Departamento de Engenharia Elétrica. ELE Microprocessadores II. Prof. Carlos Antonio Alves Sala 59 Fone

Departamento de Engenharia Elétrica. ELE Microprocessadores II. Prof. Carlos Antonio Alves Sala 59 Fone

Prof. Adilson Gonzaga

Aula 4. Engenharia de Sistemas Embarcados. Prof. Abel Guilhermino Tópico: Arquitetura de um microcontrolador 8051

a) Obtenha a tabela verdade das operações com 01 bit

SEL-433 Aplicação de Microprocessadores I. Prof: Adilson Gonzaga

Microcontrolador 8051

SSC510 Arquitetura de Computadores 1ª AULA

LISTA 01 DE EXERCÍCIOS DO 4º BIMESTRE PARA ESTUDO NOME: NOME:

Memórias Parte 1. SEL-0415 Introdução à Organização de Computadores. Aula 4. Prof. Dr. Marcelo Andrade da Costa Vieira

9/3/2009. Aula 4. Engenharia de Sistemas Embarcados. Cenário: Sistema de Controle de LEDs

COMPUTADOR 2. Professor Adão de Melo Neto

Aula 10 Microcontrolador Intel 8051 Parte 1

Unidade de Controle. Sinais e temporização da busca de instrução. Prof. Eduardo Appel

Unidade Central de Processamento UCP (CPU)

Solução Lista de Exercícios Processadores

UNIVERSIDADE PAULISTA (UNIP) Curso de Engenharia Mecatrônica Disciplina: Microprocessadores e Microcontroladores (MM) LISTA III

SEL-614 MICROPROCESSADORES E APLICAÇÕES. Adilson Gonzaga

Projetos Digitais e Microprocessadores 1 o Semestre de 2005 Prof. Luis Allan Künzle Prova Final 05/07/2005 Prova sem consulta.

Aula 5: Introdução a Arquitetura do Microcontrolador 8051

Organização e Arquitetura de Computadores INTRODUÇÃO

Organização de Computadores Prof. Alex Vidigal Bastos

Microcontrolador 8051:

Estrutura Básica de um Computador

Microprocessadores CPU. Unidade de Controle. Prof. Henrique

PCS-2529 Introdução aos Processadores. Prof. Dr. Paulo Sérgio Cugnasca

Introdução à Computação: Arquitetura von Neumann

MICROPROCESSADORES E MICROCONTROLADORES PROVA 1

ELE Microprocessadores I

ESTRUTURA E FUNCIONAMENTO DO COMPUTADOR

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO 6: PROCESSADORES. Prof. Juliana Santiago Teixeira

14/3/2016. Prof. Evandro L. L. Rodrigues

FACULDADE LEÃO SAMPAIO

CPU. Funções: Componentes: Processamento; Controle. UC (Unidade de Controle); Registradores; ALU s, FPU s etc. Arquitetura de Computadores 3

SSC0112 Organização de Computadores Digitais I

Capítulo 14. Expandindo as portas de comunicação 8031 com a PPI Interface PPI 8255

Organização e Arquitetura de Computadores I

SEL-433 APLICAÇÕES DE MICROPROCESSADORES I

Célula, Palavra, Ciclo de Instruções e Lógica Temporizada

Barramento ISA. Placas ISA de 8 bits: usam apenas 62 pinos

Microprocessadores I ELE Aula 7 Conjunto de Instruções do Microprocessador 8085 Desvios

Organização e Arquitetura de Computadores I

Conjunto de Instruções e Modelos de Arquiteturas

CAPÍTULO VI DECODIFICAÇÃO DE I/O E MEMÓRIA

ARQUITETURA DE COMPUTADORES

LISTA 01 3B ORGANIZAÇÃO DE COMPUTADORES (REALIZADA EM AULA) NOME: NOME:

Aula 8 Microcontrolador 8051

Organização de Memórias

Disc.: Sistemas Microprocessados Curso Técnico em Eletrônica

ELETRÔNICA DIGITAL II. AUTOR: ENG. ANTONIO CARLOS LEMOS JÚNIOR

Aula 8 Microcontrolador 8051

CAPÍTULO VI DECODIFICAÇÃO DE I/O E MEMÓRIA

Introdução à Organização de Computadores. Aula 8

PSI3441 Arquitetura de Sistemas Embarcados

Aula 12: Memória: Barramentos e Registradores

INTRODUÇÃO: MICROCONTROLADORES

Lógica de Seleção e Mapeamento de Memória

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES MEMÓRIA E BARRAMENTOS DE SISTEMA. Prof. Dr. Daniel Caetano

Parte Operativa x Controle Aula 12. Prof. Jadir Eduardo Souza Lucas Universidade Federal do Espírito Santo Departamento de Informática

ULA. Combina uma variedade de operações lógicas e matemáticas dentro de uma única unidade.

4.3 - DMA & Chipset. CEFET-RS Curso de Eletrônica. Profs. Roberta Nobre & Sandro Silva. e

Instruções de Máquina

SEL-0415 Introdução à Organização de Computadores Aula 2 Prof. Dr. Marcelo Andrade da Costa Vieira

FUNCIONAMENTO DO COMPUTADOR. Adão de Melo Neto

Todo processador é constituído de circuitos capazes de realizar algumas operações primitivas:

8051 Estudo de Caso. Prof. Carlos E. Capovilla - CECS/UFABC 1

Circuitos Sequenciais

Barramento. Prof. Leonardo Barreto Campos 1

William Stallings Organização de computadores digitais. Capítulo 14 Operação da Unidade de Controle

Controlador de DMA. Gustavo G. Parma

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

High Performance Programmable DMA Controller 8237A, 82237

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES MEMÓRIA E BARRAMENTOS DE SISTEMA. Prof. Dr. Daniel Caetano

Processador. Processador

COMPUTADOR. Adão de Melo Neto

Introdução à Ciência da Computação

Microprocessadores. São máquinas elétricas onde podemos armazenar instruções lógicas, aritméticas e de tomada de decisão;

LISTA 02 CONJUNTO DE INSTRUÇÕES - GABARITO

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES BARRAMENTOS DE SISTEMA. Prof. Dr. Daniel Caetano

Entrada e saída do ARC Prof. Luís Caldas Aula 08 pág.125 a 126

ORGANIZAÇÃO DE COMPUTADORES

Algoritmos Computacionais

CPU DE 8 BITS primeiro microprocessador evolução rápida, com a consolidação dos processadores de 8 bits

ARQUITETURA E ORGANIZAÇÃO DE COMPUTADORES A UNIDADE LÓGICA ARITMÉTICA E AS INSTRUÇÕES EM LINGUAGEM DE MÁQUINA

Microcontroladores. Prof. Nivaldo T. Schiefler Jr. M.Eng Homepage:

Hardware: Componentes Básicos. Sistema de Computador Pessoal. Anatomia de um Teclado. Estrutura do Computador. Arquitetura e Organização

Sâmia Rodrigues Gorayeb. Arquitetura de Computadores Linguagem de Máquina

Disciplina de Organização de Computadores I

Arquitetura e Organização de Processadores. Aula 4. Pipelines

Elementos Físicos do SC e a Classificação de Arquiteturas

ORGANIZAÇÃO DE COMPUTADORES CAPÍTULO4: MEMÓRIAPRINCIPAL

Transcrição:

Microprocessadores I Aula 6 Arquitetura do Microprocessador 8085 - Pinagem e Diagrama de Temporização 1

O 8085 contém em seu CI circuitos para executar operações de cálculos e comunicação com periféricos. 8 vias (fios) do barramento são multiplexadas (compartilhado no tempo); O byte menos significativo (endereço baixo) do endereçamento de memória compartilha o mesmo barramento com o byte de dados. São necessárias técnicas para demultiplexar o barramento e gerar os sinais de controles necessários. Quais são os tempos (timing) dos sinais no barramento na execução de uma instrução? Tempos nos barramentos na busca de uma instrução na memória; Como demultiplexar o barramento AD7 AD0; Como são gerados os 4 sinais de controle (*MEMR, *MEMW, *IOR, *IOW); 2

2.1 - Diagrama de Bloco do Microprocessador 8085 3

6.2 Pinagem do 8085 Os sinais são classificados em 6 grupos: 1. Barramento de endereço; 2. Barramento de dados; 3. Sinais de controle e status; 4. Sinais de freqüência e alimentação; 5. Sinais externos de inicialização; 6. Portos seriais de I/O. 4

6.2 Pinagem do 8085 - Barramento de endereço - Barramento de endereço/dados - Sinais de Controle e Status 5

6.2 Pinagem do 8085 6

6.3 - Barramentos de Endereço e Dados - 16 linhas (pinos) de barramento de endereço. - 8 linhas de barramento de dados - Dividido em dois segmentos: A15 A8 (Byte mais significativo high order address) AD7 AD0 (Byte menos significativo low order address) - Bits A15-A8 são unidirecionais e utilizados somente como byte de endereçamento. - Bits AD7-AD0 é usado como byte de endereçamento e byte de dados. 7

6.3 - Barramentos de Endereço e Dados O bits AD7-AD0 é bidirecional e serve para dois propósitos. - Byte menos significativo do barramento de endereço; - Barramento de dados. Isto é conhecido como barramento multiplexado São necessários latch e sinais de controle e de status ALE ( Address Latch Enable) Sinal de controle gerado toda vez que 8085 inicia uma operação. Ele indica que os bits AD7-AD0 são bits de endereçamento. É usado para habilitar o latch do byte menos significativo do endereço do barramento multiplexado. Bits A7-A0 são armazenados, liberando o barramento para ser utilizado como barramento de dados. 8

6.4 - Sinais de Controle e de Status Esse grupo contém 6 sinais. Dois sinais de controle: *RD *WR Três sinais de Status: IO/*M S1 S0 9

6.4 - Sinais de Controle Leitura e Escrita *RD (Read) - É o sinal de controle de leitura; - Este sinal força o dispositivo selecionado (memória ou I/O) a colocar os dados no barramento de dados para ser lido pelo processador. *WR (Write) - É o sinal de controle de escrita; - Este sinal força o dispositivo selecionado ( memória ou I/O) a armazenar o dado presente no barramento que foi fornecido pelo processador. 10

6.4 - Sinais de Controle Leitura, Escrita e Status IO/*M - Este sinal de status é utilizado para diferenciar os dispositivos I/O ou memória nas operações de escrita e leitura Quando em nível ALTO indica operação em dispositivo de I/O Quando em nível BAIXO indica operação em memória Esse sinal é combinado com os sinais *RD e *WR para gerar sinais de controle de I/O e memória. *MEMR, *MEMW, *IOR, *IOW 11

6.4 - Sinais de Controle Leitura, Escrita e Status S1 e S0 - Esse sinal de status, similar ao IO/*M, pode identificar várias operações, porém são raramente utilizados em pequenos sistemas. 12

6.6 Diagramas de Temporização do 8085 Comunicação do 8085 com a memória e temporização nos barramentos - Processo de comunicação entre o microprocessador e memória e os tempos desses sinais em relação ao sinal de relógio. - Primeiro Passo: leitura em memória. (Busca de instrução Fetching an instruction) - Como o microprocessador busca o código de máquina na memória? - Exemplo: Instrução MOV C, A - Suponha que o código de máquina da instrução está armazenado no endereço 2005H da memória. O opcode é 4FH. 13

6.6.a Exemplo de Busca de Instrução - Busca do byte 4FH: CPU coloca o endereço 2005H no barramento e, posteriomente, habilitar o fluxo de dados da memória. ( Esta operação é chamada de Ciclo de Busca Fetch Cycle ) 14

6.6.a Exemplo de Busca de Instrução O Ciclo de busca (Opcode Fetch) é executado em 4 passos: Passo 1: CPU coloca os 16 bits do conteúdo do PC no barramento de endereço. O barramento A15-A8 recebe o byte 20H e o barramento AD7-AD0 recebe o byte 05H. 15

6.6.a Exemplo de Busca de Instrução Passo 2: A unidade de controle envia o sinal *RD = 0 para habilitar a leitura no chip de memória. Este sinal permanece habilitado durante dois ciclos de relógio. 16

6.6.a Exemplo de Busca de Instrução Passo 3: O byte da localização da memória especificada (2005H) é colocado no barramento de dados (AD7-AD0) e transferido para a CPU. A seguir, *RD = 1 e o barramento de dados fica em alta impedância. 17

6.6.a Exemplo de Busca de Instrução Passo 4: O byte é colocado no registrador de instruções (IR) e decodificado no decodificação de instruções. O código de máquina ( 4FH) é decodificado e o conteúdo do acumulador é copiado para o registrador C. 18

6.7 - Ciclo de Instrução / Ciclo de Máquina / Estados T Ciclo de Instrução: Tempo necessário para completar a execução de uma instrução. Para o 8085 o ciclo de instrução consiste de 1 a 6 ciclos de máquinas; Ciclo de Máquina: Tempo necessário para completar uma operação de acesso a memória, I/O ou reconhecer uma solicitação externa. Este ciclo pode consistir de 3 a 6 Estados T; Estados T: É a sub-divisão da operação executada em um período de clock. Essa sub-divisão são estados internos sincronizados com o sistema de clock e cada Estado T é igual a um período de clock. O termo Estado T e período de clock (relógio) são muitas vezes usados como sinônimos. T = 1/fclk; Se f = 5 MHz -> T = 200 ns 19

6.8 - Temporização do Ciclo de Leitura (MR, IOR) Dois ciclos de leitura: 3 Ciclos: T1, T2 e T3 4 Ciclos: T1, T2, Twait e T3 20

6.8 - Temporização do Ciclo de Leitura (MR, IOR) Sinais: CLK: sistema síncrono IO/*M: tipo de dispositivo acionado A8-A15: byte superior do barramento de endereços; AD7-AD0: byte inferior do barramento de endereços / dados 21

6.8 - Temporização do Ciclo de Leitura (MR, IOR) Sinais: ALE: demultiplexação endereços e dados; *RD: tipo de operação: leitura (pelo microprocessador); READY: inserção de estado de espera ( Twait); 22

6.8 - Temporização do Ciclo de Leitura (MR, IOR) Duração: 3 ciclos: Tt = 3 / Fclk; Se Fclk = 5 MHz, Tt = 600 ns 4 ciclos: Tt = 4 / Fclk... Tt = 800 ns Conclusão: tempo extra de 200 ns... 23

6.9 - Temporização do Ciclo de Escrita (MW, IOW): Sinais: CLK: sistema síncrono IO/*M: tipo de dispositivo acionado A8-A15: byte superior do barramento de endereços; AD7-AD0: byte inferior do barramento de endereços / dados 24

6.9 - Temporização do Ciclo de Escrita (MW, IOW): Sinais: ALE: demultiplexação endereços e dados; *WR: tipo de operação: escrita dados fornecido pela CPU; READY: inserção de estado de espera (Twait); 25

6.9 - Temporização do Ciclo de Escrita (MW, IOW): Sinais: ALE: demultiplexação endereços e dados; *WR: tipo de operação: escrita dados fornecido pela CPU; READY: inserção de estado de espera (Twait); 26

6.9 - Temporização do Ciclo de Escrita (MW, IOW): Duração: 3 ciclos: Tt = 3 / Fclk; Se Fclk = 5 MHz, Tt = 600 ns 4 ciclos: Tt = 4 / Fclk... Tt = 800 ns Conclusão: tempo extra de 200 ns... 27

6.10 Diagrama de Temporização - Exemplo - Leitura do byte 4F H armazenado no endereço 2005H; 28

Demultiplexação do barramento AD7-AD0 29

Demultiplexação do barramento AD7-AD0 O barramento AD7-AD0 recebeu os bytes menos significativos do endereçamento e também recebeu os bytes de dados armazenados em memória. O byte mais significativo do endereçamento (20H) permaneceu no barramento A15-A8 durante três períodos de clock, porém o byte menos significativo (05H) no barramento AD7-AD0 é perdido após o primeiro período de clock. O barramento AD7-AD0, que é usado para identificar o endereço da memória, é alterado para 4FH após o primeiro período de clock. Para reter o byte 05H presente no barramento AD7-AD0 durante o primeiro período de clock utiliza-se o CI 74LS373 (Latch) e o sinal ALE conectado no pino G (enable) do latch. Como o sinal ALE permanece Alto durante T1, o latch é transparente, ou seja qualquer sinal presente na entrada do latch é transferido para a saída. Quando o sinal ALE torna-se Baixo, no tempo T2, o byte 05H permanece no latch até o próximo sinal ALE Alto. Dessa forma a saída do latch armazena o byte menos significativo do endereçamento, ou seja, representa o byte A7-A0. 30

Demultiplexação do barramento AD7-AD0 31

Instrução STA 32

33

Gerando os sinais de Controle O Sinal *RD (Read) é utilizado como sinal para ler memória e ler dispositivos I/O. Dessa forma são necessários dois sinais *RD. - Um para memória; - Outro para entrada. Da mesma forma são necessários dois sinais *WR. - Um para memória; - Outro para saída. A combinação dos sinais *RD, *WR e IO/*M podem gerar os quatros sinais descrito. - *MEMR (Memory Read); - *MEMW (Memory Write); - *IOR (I/O Read); - *IOW (I/O Write) 34

Esquema para gerar os sinais de Controle Read/Write para Memória e I/O 35

A CPU necessita de um Latch e portas lógicas para gerar a interface para qualquer memória ou dispositivo de I/O e demultiplexar barramento AD7-AD0 36

A CPU necessita de um Latch e portas lógicas para gerar a interface para qualquer memória ou dispositivo de I/O e demultiplexar barramento AD7-AD0 37

Diagrama de Blocos Funcional do 8085 38

Qual o tempo necessário para executar a seguinte instrução: MVI A, 32H => Carregar o byte 32H no Acumulador. Suponha que o código de máquina 3EH (MVI A) e 32H estão armazenados nas posições 2000H e 2001H respectivamente. A freqüência de clock é de 2 MHz. 39

Qual o tempo necessário para executar a seguinte instrução: MVI A, 32H => Carregar o byte 32H no Acumulador. Suponha que o código de máquina 3EH (MVI A) e 32H estão armazenados nas posições 2000H e 2001H respectivamente. A freqüência de clock é de 2 MHz. Essa instrução consiste de dois bytes: Opcode e byte de dados. A CPU precisa ler esses dois bytes na memória necessitando de dois ciclos de máquinas. No primeiro ciclo de máquina é a busca do Opcode e no segundo ciclo de máquina e a Leitura do dado na Memória. 40

Qual o tempo necessário para executar a seguinte instrução: MVI A, 32H => Carregar o byte 32H no Acumulador. 41

Qual o tempo necessário para executar a seguinte instrução: MVI A, 32H => Carregar o byte 32H no Acumulador. A instrução requer 7 T para os dois Ciclos de Máquinas. - Freqüência de Clock = 2 MHz; - T-Estado = Período de Clock (1 / f) = 0,5 µs; - Tempo de execução para a busca do Opcode = 4 T * 0,5 = 2 µs; - Tempo de execução para leitura de memória = 3 T * 0,5 = 1,5 µs; - Tempo de execução para a instrução = 7 T * 0,5 = 3,5 µs. 42

Quantidade de Ciclos de Máquina e quantidade de T-Estados 43

Quantidade de Ciclos de Máquina e quantidade de T-Estados 44

Quantidade de Ciclos de Máquina e quantidade de T-Estados 45

Lógica do Circuito de Clock do 8085A cristal piezoelétrico: é um cristal de quartzo que, quando submetido a uma pressão, gera um campo elétrico que pode ser coletado como tensão. O cristal é utilizado em circuitos eletrônicos para se gerar o clock de Trigger Fcristal CLK = Fcristal / 2 46

Exercícios: 1. Qual a função dos sinais ALE e IO/*M do 8085? 2. Qual a necessidade de demultiplexar o barramento AD7-AD0? 3. Especifique a saída do latch 74LS373 quando o 8085 coloca o endereço 2005H quando o sinal ALE está em nível alto. 4. Escreva as instruções em assembly e em linguagem de máquina para executar as seguintes operações: A - Carregar o registrador B com 20H; B - Carregar o registrador D com o decimal 100; C - Mover o conteúdo do registrador D para o registrador H; D Carregar o número 44H nos registradores C e E, usando somente 3 bytes de códigos em linguagem de máquina. E Carregar o par de registrador D e E com a valor 3800H 47

Exercícios: 5. Determine o conteúdo dos registadores B e C após a execução dos seguintes programas: A LXI B, 24FFH INX B B - LXI B, 46FFH INR C C - LXI B, 4F88H DCR B D - MVI B, C7H MVI C, 00H DCX B 48

Exercícios: 6. O que executa o seguinte programa? Qual seu tempo de execução se o cristal do sistema é de 4.00 MHz? 2000 21 LXI H, 20B0H 2001 B0 2002 20 2003 56 MOV D, M 2004 21 LXI H, 20C0H 2005 C0 2006 20 2007 72 MOV M, D 7. Determine o conteúdo do Acumulador e (F) após executar o programa: LXI H, 20C0H MVI M, 20H MVI A, 2AH ADD M 49