Departamento de Engenharia Electrotécnica e de Computadores
Instituto Superior Técnico - Universidade Técnica de Lisboa

M...
I – Arquitectura de Ciclo Único
Formatos das Instruções (16 bits):
Formato A
OpCode
DR
SA SB
Formato B
OpCode
DR
SA Const
...
Departamento de Engenharia Electrotécnica e de Computadores
Instituto Superior Técnico - Universidade Técnica de Lisboa

N...
3)

[2 Val] Considere que pretende implementar um descodificador de instruções com recurso a memória. Descreva a
dimensão ...
Departamento de Engenharia Electrotécnica e de Computadores
Instituto Superior Técnico - Universidade Técnica de Lisboa

N...
II – Arquitectura de Ciclo Múltiplo
Dimensão da Instrução: (32 bits)

Unidade de Armazenamento:
•
•

16 registos de uso ge...
Departamento de Engenharia Electrotécnica e de Computadores
Instituto Superior Técnico - Universidade Técnica de Lisboa

M...
Upcoming SlideShare
Loading in...5
×

1 testeac1112a

703

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
703
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
65
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

1 testeac1112a

  1. 1. Departamento de Engenharia Electrotécnica e de Computadores Instituto Superior Técnico - Universidade Técnica de Lisboa MEEC - Arquitectura de Computadores 2011/2012 Nome: Nº:____________ ARQUITECTURA DE COMPUTADORES 1º TESTE Ano Lectivo: 2011/2012 Data: 31 de Março de 2012 Duração: 1h30 INFORMAÇÕES GERAIS 1. Identifique todas as folhas do enunciado com nome e nº. 2. Mantenha na secretária apenas a sua identificação e uma caneta (azul ou preta), não são aceites testes ou exames realizados a lápis. 3. Responda no espaço delimitado a seguir a cada questão. 4. Utilize o verso da página, onde se encontra a pergunta, para rascunho ou para espaço adicional. 5. A não entrega do teste tem o mesmo significado da não comparência ao teste. 6. Justifique todas as respostas. 1 de 7
  2. 2. I – Arquitectura de Ciclo Único Formatos das Instruções (16 bits): Formato A OpCode DR SA SB Formato B OpCode DR SA Const Formato C OpCode Offset Flags F(V,N,Z,C) FW Registo de estado DATA Sel D DA Bits de estado S(V,N,Z,C) Unidade de Armazenamento PL Offset FSUA FSUA Sel A Controlo de Salto AA Sel B BA A B Endereço Registo PC Registos da UC: DATA_OUT Zero Fill MW Const. PC – Registo de 16 bits MA 0 1 MUX A A MB 0 1 MUX B B MM Flags: 0 1 MUX M Memória de Programa FSUF DATA_IN End. FSUF Memória Dados Unidade Funcional As flags (V,N,Z,C) são guardadas num registo da UF. FW – Enable de escrita das flags no registo de estado. Flags 0000 Não escreve, 0001 Escreve V, 0010 Escreve C, 0100 Escreve Z, 1000 Escreve N, Etc. DATA_ OUT Descodificador de Instruções DATA_IN SelA, SelB, SelD, FSUA, MA, MB, MM, FSUF, FW, MW, MD, PL 0 1 MUX D BUS de Dados MD Sinais de Controlo para a UC: Tabela I: Micro-operações na UF e UA DA, AA, BA Função Cod. R0 00 R1 01 R2 10 R3 11 FSUF Função Flags A N,Z,C,V A+B N,Z,C,V –A N,Z,C,V B–A N,Z,C,V AND (A,B) N,Z OR (A,B) N,Z LSL (B) N,Z,C LSR (B) N,Z,C Cod. 000 001 010 011 100 101 110 111 FSUA Função Não Escreve R[DA] = 0 R[DA] = DATA R[DA] = R[AA] Cod. 00 01 10 11 PL1 PL0 00 – Incrementa PC 01 – Salto Incondicional 10 – Salta se Z (Zero) 11 – Salta se N (Negative) Sinais de Controlo para a Memória de Dados: MW – (0- Não Escreve ou 1- Escreve) Escrita Síncrona e Leitura Assíncrona Unidade de Armazenamento: Contém 4 registos de 16 bits e implementa as micro-operações descritas por FSUA (Tabela I). Unidade Funcional: Tabela II: Instruções a Implementar OpCode 0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111 Operação MOV DR, SA MOVI DR, Const ADDI DR, Const SUBI DR, Const NEG DR, SA ADD DR, SA, SB SUB DR, SA, SB OR DR, SA, SB AND DR, SA, SB LD DR, SB ST SA, SB ST DR, Const NAND DR, SA, SB BR Offset BR.Z Offset BR.N Offset Descrição R[DR] ← R[SA] R[DR] ← Const R[DR] ← R[SA] + Const R[DR] ← R[SA] – Const R[DR] ← – R[SA] R[DR] ← R[SA] + R[SB] R[DR] ← R[SA] – R[SB] R[DR] ← R[SA] or R[SB] R[DR] ← R[SA] and R[SB] (DR) ← M[(SB)] M[(SB)] ← (SA) M[(DR)] ← Const (DR) ← (SA) NAND (SB) (PC) ← (PC) + Offset Z: (PC) ← (PC) + Offset N: (PC) ← (PC) + Offset Bits de Estado N, Z, C, V N, Z, C, V N, Z, C, V N, Z, C, V N, Z, C, V N, Z, C, V N, Z, C, V N, Z N, Z não são alterados não são alterados não são alterados Z não são alterados não são alterados não são alterados Implementa as micro-operações descritas por FSUF (Tabela I). Tempos de setup e propagação: Unidade ● UA ● MUX A/B/M/D ● UF ● Zero Fill ● Descodificador ● Controlo de salto ● Memórias ● Registos PC/Status Propagação Setup (escrita) 20ns 15ns 5ns - 250ns - 2ns - 15ns - 15ns - 200ns 150ns 2ns 1ns 2 de 7
  3. 3. Departamento de Engenharia Electrotécnica e de Computadores Instituto Superior Técnico - Universidade Técnica de Lisboa Nome: MEEC - Arquitectura de Computadores 2009/2010 Nº:____________ 1) [2 Val] Considere a Unidade de Armazenamento da Arquitectura de Ciclo Único. Determine o circuito lógico mínimo para selecção dos dados a escrever em cada registo (R0 a R3) de acordo com as operações controladas pelo sinal FSUA. Indique ainda a função booleana aplicada à entrada de controlo de cada registo (WE: 0 - não escreve, 1- escreve). 2) [3 Val] Considere a Unidade Funcional da Arquitectura de Ciclo Único. Admita que as operações aritméticas descritas na tabela e seleccionadas por FSUF são implentadas por uma Unidade Aritmética constituida por um somador completo de 16 bits e alguma lógica combinatória adicional para transformar os operandos A e B nas entradas do somador. Esboçe o esquema da unidade aritmética. Utilize o mínimo de lógica combinatória. 3 de 7
  4. 4. 3) [2 Val] Considere que pretende implementar um descodificador de instruções com recurso a memória. Descreva a dimensão da memória (número de endereços, dimensão das palavras, número de bits) e indique os sinais de controlo que deverá colocar dentro da memória. 4) [3 Val] Para cada uma das operações indicadas indique se é possível executá-las num único ciclo de relógio. Para os casos possíveis indique o valor dos sinais de controlo que a implementa, para os outros casos indique a limitação ao nível da arquitectura. Sinais de controlo: SelA 1) R1 FSUA MA MB FSUF FW MM MW MD PL R3 se S(Z)=1 3) R0 SelD LSR R2 2) PC SelB R1 - 2 4 de 7
  5. 5. Departamento de Engenharia Electrotécnica e de Computadores Instituto Superior Técnico - Universidade Técnica de Lisboa Nome: MEEC - Arquitectura de Computadores 2009/2010 Nº:____________ 5) [2 Val] Determine o periodo mínimo de relógio da unidade de processamento do processador de ciclo único apresentado. Despreze todas as unidades de controlo. 6) [2 Val] Determine a frequência máxima de relógio do processador de ciclo único. Considere quer a unidade de processamento quer a unidade de controlo. (Pode apresentar a sua resposta sob a forma de uma fracção). 5 de 7
  6. 6. II – Arquitectura de Ciclo Múltiplo Dimensão da Instrução: (32 bits) Unidade de Armazenamento: • • 16 registos de uso geral (32 bits) 3 registos auxiliaries (32 bits) para uso ao nível da microprogramação. PC – Registo de 32 bits IR – Registo de 32 bits 1 0 0 1 0 1 Extensão de sinal Registos de Controlo: 1 0 Status Register: 0 1 A escrita é controlada pelo sinal FW tal como no processador de ciclo único: 0000 Não escreve, 0001 Escreve V, 0010 Escreve C, 0100 Escreve Z, 1000 Escreve N, Etc. Sinais de controlo para a UC Program Counter (PC) PL Operação 0 NOP 1 LOAD PC Instruction Register (IR) IL Operação 0 NOP 1 LOAD IR Control Address Register (CAR) CL Operação 0 INC CAR 1 LOAD CAR Sinais de controlo para a UP Jump control (MUX S) MS Saída Operação 0XX0 0 CNT 0XX1 1 JMP 1000 S(Z) JMP.Z 1001 S(N) JMP.N 1010 not S(Z) JMP.NZ 1011 not S(N) JMP.NN 1100 F(Z) TJ.Z 1101 F(N) TJ.N 1110 not F(Z) TJ.NZ 1111 not F(N) TJ.NN Unidade de Armazenamento (UA) TA/TB Saída A Saída B 00 R[AA] R[BA] 01 AR0 AR0 10 AR1 AR1 11 SP SP Unidade de Armazenamento (UA) TD WE Registo de destino XX 0 00 1 R[DA] 01 1 AR0 10 1 AR0 11 1 SP Unidade Funcional (UF) FSUF Operação 0000 A 0001 A+1 0010 A+B 0011 A-B 0100 A-1 0101 -A 0110 not B 0111 A and B 1000 A or B 1001 A xor B 1010 lsl B 1011 lsr B 1100 asl B 1101 asr B 1110 rol B 1111 ror B Conteúdo da memória de micro-instruções Endereço 00h 01h 02h 03h 04h 05h ... 80h 81h ... PL 0 0 0 0 0 0 ... 0 1 ... IL 0 0 0 0 0 0 ... 1 0 ... MC 0 0 0 0 0 0 ... 1 1 ... MS 0001 0001 0001 0001 0001 0001 ... 0000 0001 ... NA 80h 80h 80h 80h 80h 80h ... 00h 00h ... TA 00 00 00 00 00 00 ... 11 11 ... TB 00 00 00 00 00 00 ... 11 11 ... TD 00 00 00 00 00 00 ... 01 01 ... WE 0 1 1 1 1 1 ... 1 0 ... MA 0 0 0 0 0 0 ... 1 1 ... MB 0 0 0 0 0 0 ... 0 0 ... FSUF 0000 0010 0011 0101 0001 0100 ... 0000 0001 ... FW 0000 1111 1111 1111 1111 1111 ... 0000 0000 ... MM 0 0 0 0 0 0 ... 1 1 ... MW 0 0 0 0 0 0 ... 0 0 ... MD 1 1 1 1 1 1 ... 1 1 ... 6 de 7
  7. 7. Departamento de Engenharia Electrotécnica e de Computadores Instituto Superior Técnico - Universidade Técnica de Lisboa MEEC - Arquitectura de Computadores 2009/2010 Nome: Nº:____________ 7) [3 Val] Complete o diagrama temporal apresentado indicando, em cada ciclo de relógio A-E, quais as operações efectuadas sobre todos os registos do processador. Excerto da memória de dados e instruções Endereço OPCODE DA AA BA KNS 13h 0000001 0010 1111 1110 0010001001111 14h 0000100 0001 0010 0000 0010001010001 15h 0000101 0010 0001 0011 0000001001111 16h 0000010 0011 0010 0100 0000010000010 8) [3 Val] Apresente um fluxograma ASM correspondente à implementação de uma instrução descrita por: ܶ‫ܴ ݁ݏ ܤܵ ,ܣܵ ,ܵܰܭ ܳܧ .ܤ‬ሾܵ‫ܣ‬ሿ = ܴሾܵ‫ܤ‬ሿ ‫ݐ‬ℎ݁݊ ܲ‫ܵܰܭ + ܥܲ ← ܥ‬ ‫ܴ ݁ݏ‬ሾܵ‫ܣ‬ሿ ≠ ܴሾܵ‫ܤ‬ሿ ‫ݐ‬ℎ݁݊ ܲ‫1 + ܥܲ ← ܥ‬ Descreva as operações efectuadas entre registos em cada uma das micro-instruções. 7 de 7

×