EA078 - Micro e minicomputadores: Hardware
2o Semestre de 2000 – 2a Prova - Prova A - Duração: 14:00 às 15:40h - Sem consulta
Profs. Wu, Shin - Ting e Marco A. A. Henriques
Sua proposta deve conter (a) o mapa de memória, (b) o número de chips necessários de cada tipo, (c) a tabela de decodificação de endereços e (d) os circuitos lógicos para a geração do sinal Chip Select* (CS*) de cada chip utilizado na memória ou na entrada/saída. Use a decodificação completa (sem espelhamento).
Mapa de memória:
Número de chips:
Tabela de decodificação:
A23 | A22 | A21 | A20 | A19 | A18 | A17 | A16 | A15 | ... | A00 | |
par ROM 1 | 0 | 0 | 0 | 0 | X | X | X | X | X | ... | X |
par ROM 2 | 0 | 0 | 0 | 1 | X | X | X | X | X | ... | X |
par RAM 1 | 0 | 0 | 1 | 0 | 0 | X | X | X | X | ... | X |
par RAM 2 | 0 | 0 | 1 | 0 | 1 | X | X | X | X | ... | X |
par RAM 3 | 0 | 0 | 1 | 1 | 0 | X | X | X | X | ... | X |
par RAM 4 | 0 | 0 | 1 | 1 | 1 | X | X | X | X | ... | X |
par RAM 5 | 0 | 1 | 0 | 0 | 0 | X | X | X | X | ... | X |
par RAM 6 | 0 | 1 | 0 | 0 | 1 | X | X | X | X | ... | X |
conj. E/S | 1 | 1 | 1 | 1 | 1 | 1 | 1 | 1 | X | ... | X |
Circuitos lógicos:
Questão 2 (valor 1.0 pt)
Descreva o que são memórias EPROM e EEPROM e compare duas das seguintes características das mesmas:
EPROM: sigla de Erasable Programable Read Only Memory; trata-se de uma memória não volátil que, em uso normal, permite apenas a leitura de seus dados; entretanto, sob condições especiais ela pode ser apagada (uso de luz ultra-violeta) e regravada (aplicação de tensão mais alta que a tensão de alimentação convencional); cada transistor (célula de memória) possui uma floating gate (porta flutuante) que fica isolada eletricamente dos outros terminais e que serve para armazenar carga elétrica; a presença ou ausência de carga nesta porta é que determina se está armazenado um bit 0 ou 1.
EEPROM: sigla de Electrically Erasable Programable Read Only Memory; trata-se de uma memória não volátil que, em uso normal, permite apenas a leitura de seus dados; entretanto, com o uso de circuitos especiais ela pode ser apagada (eletricamente) e regravada (aplicação de tensão mais alta que a tensão de alimentação convencional); cada transistor (célula de memória) possui uma floating gate (porta flutuante) que fica isolada eletricamente dos outros terminais (mas bem mais próxima destes que no caso da EPROM) e que serve para armazenar carga elétrica; a presença ou ausência de carga nesta porta é que determina se está armazenado um bit 0 ou 1.
Quanto às comparações:
Questão 3 (valor 1.0 pt)
Descreva o ciclo básico de acesso de uma memória RAM dinâmica (DRAM), usando um diagrama de tempos com RAS*, CAS*, Endereços e Dados para ilustrar sua descrição.
O ciclo se inicia com a colocação do endereço de linha desejado no barramento de endereços da memória. Isto normalmente é feito por um multiplexador que seleciona alguns bits do barramento de endereços do processador. Em seguida, um sinal RAS* (Row Address Strobe), gerado por um circuito de controle a partir de AS*, DS*, R/W* e dos bits mais significativos do endereço, é ativado fazendo com que a DRAM leia o endereço de linha disponibilizado (instante A na figura). Após um período de tempo definido pelo circuito de controle, é colocado no mesmo barramento de end. da memória o end. da coluna desejada (também via multiplexador). Logo a seguir é preciso que o sinal CAS* (Column Address Strobe) seja ativado pelo circuito de controle para fazer com que a DRAM leia o end. de coluna (instante B). Feita a leitura deste end. de coluna, basta aguardar um certo tempo (determinado pelo fabricante da memória) até que o barramento de dados saia do estado de alta impedância e se possa ler com segurança os dados apresentados lá. Em seguida, os sinais CAS* e RAS* são negados (instantes C e D), o que força o barramento de dados da memória a entrar novamente no estado de alta impedância (instante E).
Questão 4 (valor 1.0 pts)
Temos as seguintes formas para regenerar (fazer refresh) de memórias DRAM (RAMs dinâmicas): RAS*-only, CAS*-before-RAS*, Hidden Refresh e Pin-1 Refresh. Explique detalhadamente uma destas formas, ilustrando sua explicação com um diagrama de tempos.
Questão 5 (valor 1.5 pts)
(1.0 pt) (a) Um sistema com memória cache tem basicamente a seguinte estrutura
Distinguem-se três formas de mapear uma linha da memória principal em uma linha da memória cache: mapeamento direto, mapeamento associativo e mapeamento em conjunto associativo. Descreva sucintamente UMA destas três formas.
(0.5 pt) (a) Considere que
Note que os NH acessos à memória cache e N(1-H) acessos à memória principal totalizam N acessos.
Questão 6 (2.0 pts)
Considere o seguinte circuito:
Número de Vetor | Endereço da Rotina |
![]() |
![]() |
8 (violação de privilégio) | $001000 |
9 (trace) | $002000 |
![]() |
![]() |
25 (int. auto-vetorizada nível 1) | $00A000 |
26 (int. auto-vetorizada nível 2) | $00B000 |
27 (int. auto-vetorizada nível 3) | $00C000 |
28 (int. auto-vetorizada nível 4) | $00D000 |
29 (int. auto-vetorizada nível 5) | $00E000 |
30 (int. auto-vetorizada nível 6) | $00F000 |
31 (int. auto-vetorizada nível 7) | $010000 |
![]() |
![]() |
64 (user interrupt vector) | $004000 |
![]() |
![]() |
200 (user interrupt vector) | $005000 |
![]() |
![]() |
(0.5 pt) (a) Quais são as funções do circuito A?
O circuito A codifica, no máximo, 7 linhas de requisição de interrupção em 7 níveis de prioridade representados por 3 bits -- formato de interrupção processável pelos processadores da família MC68000.
(0.5 pt) (b) Quais requisições geram interrupções auto-vetorizadas? Justifique.
No caso dos processadores da família MC68000, a distinção entre uma interrupção vetorizada e uma interrupção auto-vetorizada se dá pela ativação ou não do sinal VPA* durante o processamento de uma interrupção. No circuito em questão, somente a requisição do dispositivo HD gera uma interrupção auto-vetorizada, porque em resposta à ativaçào do sinal IACK*, o sinal VPA* é ativado (derivado do IACK1* e IRQ1*).
(0.5 pt) (c) Quais são os endereços das rotinas que tratam os quatro dispositivos? Justifique.
(0.5 pt) (d) São realizados ciclos de barramento (acessos à Memória) durante o processamento de uma exceção? Justifique.
No contexto da terminologia adotada pela Motorola, o processamento de exceção refere à forma como um processador responde a uma exceção (compreende o intervalo entre o instante de reconhecimento de uma exceção até carregar o endereço da rotina de serviço no PC), e o tratamento de exceção refere à ação tomada pela rotina de serviço (a partir do instante de desvio para o endereço da rotina de serviço).
Portanto, durante o processamento de uma exceção, são realizados os ciclos de barramento, uma vez que, no mínimo, o conteúdo do PC e do SR são salvos na pilha do sistema que fica localizada na Unidade de Memória.
Questão 7 (valor 1.5 pts)
(1.0 pt) (a) Cite duas vantagens em distinguir dois espaços de endereços e o uso de uma unidade de gerência de memória para mapeá-los.
A principal função de uma unidade de gerência de memória consiste em mapear endereços do espaço lógico gerados pelo processador em endereços do espaço físico definido na Unidade de Memória.
Entre as vantagens desta organização temos:
(0.5 pt) (b) Considere uma unidade de gerência de memória MC68451 com um descritor contendo as seguintes informações:
Qual é o tamanho do segmento definido por este descritor? Justifique.
LAM é uma máscara de 16 bits que indica o tamanho do segmento definido no descritor. Este tamanho está relacionado com o número de bits 0. No caso temos 10 bits 0 que, junto com os 8 bits menos significativos não mascaráveis, totaliza 18 bits. Isso corresponde a um tamanho de 218 = 256 Kbytes.
Last modified: Fri Nov 24 10:40:00 EDT 2000
Sugestões para ting@dca.fee.unicamp.br
Voltar para a página do curso.