Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
2.1. Arquitectura Geral do Micro Z80 2.2. Descrio Fsica do Micro Z80
2.3. Dispositivos de Entrada e Sada
Bibliografia principal: 1. Zilog - Z80 Family CPU User Manual - UM008005-0205, 2004, San Jose 2. Zilog Z80 PIO User Manual 3. Bradley, John - Introduction to Microprocessors Micamaster 980 & 960, Feedback, England
(P)(C) A.B.Cuinhane 2 UEM - Digital
Electrnica Digital II
Eng. Albino B Cuinhane
(P)(C) A.B.Cuinhane
1 UEM - Digital
Captulo 2
2.1. Arquitectura Geral
Microprocessador Z80
(P)(C) A.B.Cuinhane 3 UEM - Digital
NOTA: O estudante deve ler a informao adicional no livro 1 da bibliografia recomendada, Pginas 1 6
(P)(C) A.B.Cuinhane
4 UEM - Digital
Para comearmos a entender o Z80 convm iniciar pela arquitectura geral mostrada no diagrama funcional a seguir.
Sinais de controle do sistema
A Unidade Central de Processamento, ou CPU, tem disponvel 208bits de memria de escrita e leitura (R/W) que so agrupados para formarem 18 registadores de 8 bits e 4 de 16 e so de uso geral para o utente. So feitos base de memrias estticas RAM.
REGISTOS PRINCIPAIS REGISTOS ALTERNATIVOS D E H L Acumulador FLAGs A' F' B' C' D' E' H' L' Acumulador FLAGs A F B C
Decodificador De Instrues
Controle da CPU
Fig.A10.1
Registo de instrues Sinais de controle
REGISTO I REGISTO INDEXADO (IX) STACK POINTER (SP) REGISTOS ESPECIAIS REGISTO R REGISTO INDEXADO (IY) PROGRAM COUNTER (PC)
Fig.A10.2
ALU
Registadores da CPU
Controle de endereos
barramento de endereos
(P)(C) A.B.Cuinhane
5 UEM - Digital
Este grupo de registos inclui 6 de uso geral que podem ser usados individualmente como registos de 8 bits ou emparelhados formando os pares BC, DE e HL de 16 bits.
(P)(C) A.B.Cuinhane
6 UEM - Digital
Electrnica Digital II
Comparao AND OR XNOR Shift right, shift left Rotaes Reset bit(zerar um bit)
(P)(C) A.B.Cuinhane
7 UEM - Digital
(P)(C) A.B.Cuinhane
8 UEM - Digital
(P)(C) A.B.Cuinhane
11 UEM - Digital
(P)(C) A.B.Cuinhane
12 UEM - Digital
Electrnica Digital II
BUSRQ
(P)(C) A.B.Cuinhane
13 UEM - Digital
14 UEM - Digital
_____ MREQ (SADA-T) MEMORY REQUEST: Indica que a via de endereos possui um endereo para efectuar leitura ou gravao na memria _____ RFSH (SADA) REFRESH: Indica que os 7 bits menos significativos do barramento de endereo contem a posio da memria a ser restaurada ___ WR (SADA-T) MEMORY WRITE: Indica que o barramento de dados contem dados a enviar para a memria ou dispositivo de I/O ___ RD(SADA-T) MEMORY READ: Indica que a UCP vai ler dados na memria ou num dispositivo de I/O
(P)(C) A.B.Cuinhane
15 UEM - Digital
_____ HALT (SADA) HALT STATE: Indica que a UCP est parado por instruo de software aguardando uma interrupo ____ NMI (ENTRADA) NON MASKABLE INTERRUPT: Este sinal tem prioridade superior ao INT e faz com que o CP v para o endereo 0066 H. O contedo do CP armazenado na pilha por forma a poder retornar-se ao programa original no ponto onde NMI foi gerado ______ RESET (ENTRADA) RESET: Este sinal carrega o CP com o endereo 0000H que inicializa a UCP. Durante este sinal, todos os sinais ficam inactivos e os dois barramentos ficam em alta impedncia
(P)(C) A.B.Cuinhane 17 UEM - Digital
(P)(C) A.B.Cuinhane
18 UEM - Digital
Electrnica Digital II
(P)(C) A.B.Cuinhane
(P)(C) A.B.Cuinhane
A PIO programvel pela UCP para ser interfacear um grande nmero de perifricoas com impressoras, teclado, mostradores, etc. A entrada/sada de dados feita atravs do circuito PIO Perallel Input Output que comporta duas portas de 8 bits cada. Como a PIO funciona no modo paralelo, todos os 8 bits so recebido/entregues ao mesmo tempo Uma das caracteristicas de destaque da PIO o circuito de controle de interrupes que permite uma interao eficaz entre a UCP e os perifricos sem necessidade de circuitos externos adicionais. Alm disso, depedendo da preprogramao, a PIO pode interromper a UCP se condies especiais pr-fixadas ocorrem no dispositivo perifrico (por exemplo uma tecla premida, pode levar a UCP a atender o teclado)
(P)(C) A.B.Cuinhane 21 UEM - Digital
Linhas de controle
Controle interno
Controle de interrupo
Porto A
Linhas de dados/ controle Linhas de handshake
Porto B
Linhas de dados/ controle
(P)(C) A.B.Cuinhane
23 UEM - Digital
(P)(C) A.B.Cuinhane
24 UEM - Digital
Electrnica Digital II
Registador de Mscara
Controle handshake
Strob
Ready
(P)(C) A.B.Cuinhane
25 UEM - Digital
(P)(C) A.B.Cuinhane
26 UEM - Digital
Registo de Controle de Modo: programada pela UCP de modo a seleccionar um dos 4 modos de funcionamento da PIO
(P)(C) A.B.Cuinhane 28 UEM - Digital
(P)(C) A.B.Cuinhane
29 UEM - Digital
Electrnica Digital II
End=23 Fig.6.5
Dois Passos para configurar uma porta 1. Escrever o endereo do Registo Direcional (23 ou 2B) no Registo de Controle (03). Isto faz com que Registo de Controle aponte para o Registo Direcional desejado (23 ou 2B). 2. O valor que se deseja escrever no Registo Direcional (23 ou 2B) escrito no Registo de Controle (03) o que na verdade coloca os dados no Registo Direcional (23 ou 2B) e programa os pinos.
A programao dos pinos bidirecionais funciona de acordo com o seguinte critrio: Sada: Bit correspondente no Registo de Controle = 0 Entrada: Bit correspondente no Registo de Controle = 1
(P)(C) A.B.Cuinhane 32 UEM - Digital
End=01
(P)(C) A.B.Cuinhane
End=2B
31 UEM - Digital
Exemplo: Programar o porto A como sada nos 4 bMs e entradas nos 4 bms (ou seja 0000 1111) Instruo Comentrio LD A,23 Carrega o Acumulador com um dado (23) que corresponde ao endereo do registo direcional do porto A (RDA) Envia para o Registo de Controle (03) o nmero 23. isto aponta para o RDA Carrega o Acumulador com um dado (0F) Envia para o Registo de Controle (03) o numero que est no acumulador (0F)
Lembrar que no projecto do Registo universal temos o selector de direco. Pois ento o Registo Direcional actua nos bits selectores de direco. 33
(P)(C) A.B.Cuinhane UEM - Digital
Electrnica Digital II