Buscar

Avaliacao2_2018_1_TA_gabarito

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 6 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 6 páginas

Prévia do material em texto

1 
 
Escola de Engenharia da UFMG 
Departamento de Engenharia Eletrônica 
 
Sistemas Processadores e Periféricos 
2a Prova – 35 pontos – 28/05/2018 
 
Nome: GABARITO 
 
NÃO DESTAQUE AS FOLHAS DA PROVA. 
 
QUESTÃO 1: Assunto: Procedimentos e subprogramas no MIPS 
Em um dado procedimento é necessário salvar os registradores $s0, $s1, $s6 e $s7. Quantos bytes são 
necessários alocar na região da pilha para salvar o contexto? 
a) 4 bytes 
b) 8 bytes 
c) 12 bytes 
d) 16 bytes 
 
QUESTÃO 2: Assunto: Procedimentos e subprogramas no MIPS 
A chamada de procedimentos no MIPS é realizada única e exclusivamente com a instrução jal. Quais os passos 
exclusivos que a instrução jal demanda do processador para ser executada? 
a) Busca de instruções e decodificação 
b) Registrar o conteúdo de PC+4 no registrador de destino e atualizar o PC com o endereço da primeira 
instrução do procedimento. 
c) Busca de instruções e atualização do PC. 
d) Leitura do banco de registradores e atualização do PC. 
 
QUESTÃO 3: Assunto: Instruções de Multiplicação e Divisão em Ponto Fixo no MIPS. 
As instruções mult $s1, $s2 e multu $s1, $s2 são instruções de multiplicação em ponto fixo do MIPS. A primeira é 
usada para multiplicação de números inteiros e a segunda para multiplicação de números naturais. É correto 
afirmar que: 
a) Ambas podem gerar exceções. 
b) Somente a segunda instrução pode gerar exceção. 
c) Somente a primeira instrução pode gerar exceção. 
d) Nenhuma delas pode gerar exceções. 
 
2 
 
QUESTÃO 4: Assunto: Operações e Hardware de Multiplicação e Divisão em Ponto Fixo do MIPS. 
 
Figura 1 – Divisor em Ponto Fixo no MIPS. 
Supondo que em um divisor em ponto fixo (mostrado na figura 1), tenhamos o conteúdo do dividendo igual a 1010 
e no registrador que acumula o divisor o valor 410. Qual o valor do registrador A ao final da primeira iteração do 
processo de divisão? 
a) 11001010 
b) 11101010 
c) 11111010 
d) 10001010 
 
QUESTÃO 5: Assunto: Representação de números em Ponto Flutuante IEEE-754. 
O valor em binário da representação do expoente deslocado do número 22,75 na notação em ponto flutuante 
IEEE-754 de precisão simples é igual a: 
a) 10000001 
b) 10000010 
c) 10000011 
d) 10000100 
 
QUESTÃO 6: Assunto: Faixa de representação e Precisão em Ponto Flutuante. 
O menor número negativo, não normalizado, capaz de ser representado na notação ponto flutuante de precisão 
simples? 
a) - (2 - 2-23) × 2127 
b) - (2 - 2-23) × 2128 
c) - (2 - 2-22) × 2127 
d) - (2 - 2-22) × 2128 
 
QUESTÃO 7: Assunto: Instruções de Ponto Flutuante no MIPS 
A instrução mul.d $f4, $f6, $f8 é uma instrução de multiplicação em ponto flutuante de dupla precisão da 
arquitetura MIPS. Em quais registradores essa instrução armazena o resultado? 
a) HI e LO 
b) $f4 e $f6 
c) $f6 e $f8 
d) $f4 e $f5 
 
3 
 
QUESTÃO 8: Assunto: Somador em Ponto Flutuante do MIPS. 
Dentre as alternativas abaixo, qual a única alternativa que contém somente operações realizadas pelo somador 
em ponto flutuante do MIPS. 
a) Subtração dos expoentes e comparação da parte fracionária. 
b) Comparação dos expoentes e adição da parte fracionária. 
c) Adição dos expoentes e comparação da parte fracionária. 
d) Comparação dos expoentes e deslocamento para esquerda da parte fracionária do número menor. 
 
A Figura 2 apresenta uma implementação completa da microarquitetura do MIPS ciclo único. 
SignImm
CLK
A RD
Instruction
Memory
+
4
A1
A3
WD3
RD2
RD1
WE3
A2
CLK
Sign Extend
Register
File
0
1
0
1
A RD
Data
Memory
WD
WE
0
1
PC0
1
PC' Instr
25:21
20:16
15:0
5:0
SrcB
20:16
15:11
<<2 +
ALUResult ReadData
WriteData
SrcA
PCPlus4
PCBranch
WriteReg
4:0
Result
31:26
RegDst
Branch
MemWrite
MemtoReg
ALUSrc
RegWrite
Op
Funct
Control
Unit
Zero
PCSrc
CLK
ALUControl
2:0
ALU
 
Figura 2 - Microarquitetura MIPS ciclo único 
 
QUESTÃO 9: Assunto: Implementação do Processador MIPS no modo Ciclo Único. 
O caminho de dados da microarquitetura Ciclo único mostrado na figura 2 não está preparado para executar a 
instrução lb $s0, 3($s1). Qual das alternativas abaixo demanda a menor modificação no caminho de dados da 
Figura 2 para que o mesmo execute a instrução lb? 
a) Incluir mais um multiplexador 2x1 com entradas de 32 bits antes da entrada WD3 do Register File. 
b) Incluir mais um multiplexador 4x1 com entradas de 32 bits antes da entrada WD3 do Register File. 
c) Incluir mais um multiplexador 2x1 com entradas de 8 bits antes da entrada WD3 do Register File. 
d) Incluir mais um multiplexador 4x1 com entradas de 8 bits antes da entrada WD3 do Register File. 
 
QUESTÃO 10: Assunto: Implementação do Processador MIPS no modo Ciclo Único. 
Qual a alternativa correta que representa a configuração dos sinais de controle necessária para executar 
corretamente a instrução OR no caminho de dados da microarquitetura mostrada na Figura 2? 
a) RegWrite = ALUSrc = MemtoReg = RegDst = 1 
b) RegWrite = ALUSrc = MemtoReg = RegDst = 0 
c) RegWrite = 1 e ALUSrc = MemtoReg = RegDst = 0 
d) RegWrite = 0 e ALUSrc = MemtoREg = RegDst = 1 
 
 
User
Note
Questão 9nullnullJustificativa da resposta:nullnullA menor modificação no caminho de dados da Figura 2 é realizada com a inclusão de um MUX 4:1 com entradas de 32 bits (e por consequência uma única saída de 32 bits) antes da entrada WD3 do BR.nullnullnullnullA alternativa da letra D demandaria um complemento com outro MUX, pois a entrada WD3 é de 32 bits para todas as outras instruções e não de 8 bits.
User
Note
Questão 10nullnullJustificativa da resposta:nullnullRegwrite = 1 (pois escreve no BR).nullnullALUSrc = 0 (pois é uma instrução do tipo R)nullnullMemtoReg = 0 (pois o resultado do OR vem da ALU diretamente, não passa pela Data Memory)nullnullRegDst = 1 (pois Rd vem do campo de bits 15:11 da instrução decodificada)nullnullnullnullNão existe alternativa correta, portanto está ANULADA.nullnull
4 
 
 
ImmExt
CLK
A
RD
Instr / Data
Memory
A1
A3
WD3
RD2
RD1
WE3
A2
CLK
Sign Extend
Register
File
0
1
0
1PC
0
1
PC' Instr
25:21
20:16
15:0
SrcB20:16
15:11
<<2
ALUResult
SrcA
ALUOut
Zero
CLK
ALU
WD
WE
CLK
Adr
0
1
Data
CLK
CLK
A
B
00
01
10
11
4
CLK
ENEN
00
01
10
<<2
25:0 (Addr)
31:28
27:0
PCJump
5:0
31:26
Branch
MemWrite
ALUSrcA
RegWrite
Op
Funct
Control
Unit
PCSrc
CLK
ALUControl
2:0
ALUSrcB
1:0IRWrite
IorD
PCWrite
PCEn
RegDst
MemtoReg
 
Figura 3 - Microarquitetura MIPS multiciclo 
IorD = 0
AluSrcA = 0
ALUSrcB = 01
ALUOp = 00
PCSrc = 00
IRWrite
PCWrite
ALUSrcA = 0
ALUSrcB = 11
ALUOp = 00
ALUSrcA = 1
ALUSrcB = 10
ALUOp = 00
IorD = 1
RegDst = 1
MemtoReg = 0
RegWrite
IorD = 1
MemWrite
ALUSrcA = 1
ALUSrcB = 00
ALUOp = 10
ALUSrcA = 1
ALUSrcB = 00
ALUOp = 01
PCSrc = 01
Branch
Reset
S0: Fetch
S2: MemAdr
S1: Decode
S3: MemRead
S5: MemWrite
S6: Execute
S7: ALU
Writeback
S8: Branch
Op = LW
or
Op = SW
Op = R-type
Op = BEQ
Op = LW
Op = SW
RegDst = 0
MemtoReg = 1
RegWrite
S4: Mem
Writeback
ALUSrcA = 1
ALUSrcB = 10
ALUOp = 00
RegDst = 0
MemtoReg = 0
RegWrite
Op = ADDI
S9: ADDI
Execute
S10: ADDI
Writeback
PCSrc = 10
PCWrite
Op = J
S11: Jump
 
Figura 4 – FSM da Unidade de Controle do MIPS multiciclo 
 
 S0 
FETCH 
 S1 
DECODE 
 S11 
 JUMP 
 S2 
 ENDER 
 S6 
EXEC_R 
 S8 
BRANCHS9 
EXEC_I 
 S3 
MEMR 
 S7 
 WB_R 
 S5 
MEMW 
 S10 
 WB_I 
 S4 
 WB 
5 
 
A tabela 1 apresenta a configuração do sinal ALUControl para cada tipo de situação que a microarquitetura dada é 
capaz de executar. 
Tabela 1 – Configuração de ALUControl 
ALUControl Significado 
010 Add 
110 Subtract 
000 And 
001 Or 
111 Slt 
 
QUESTÃO 11: Assunto: Implementação do Processador MIPS Multiciclo. 
O caminho de dados da microarquitetura Multiciclo mostrado na figura 3 é capaz de executar qual subconjunto 
de instruções do MIPS? 
a) slt, sll, addi, lw, sw 
b) slt, j, add, lw, beq 
c) addi, slt, beq, lw, and 
d) addi, sll, sw, lw, or 
 
QUESTÃO 12: Assunto: Implementação do Processador MIPS Multiciclo. 
Quais os sinais de controle que deverão estar ativados em nível lógico 1 no estado S10? 
a) RegWrite e MemtoReg 
b) Somente RegWrite 
c) Somente MemtoReg 
d) RegWrite, MemtoReg e RegDst 
 
QUESTÃO 13: Assunto: Implementação do Processador MIPS no modo Pipeline. 
Dada a Figura 5, é correto afirmar que: 
a) Saltos incondicionais não gerarão stalls. 
b) Saltos condicionais não gerarão stalls. 
c) O caminho de dados da microarquitetura possuí previsão de desvio. 
d) O sinal de controle forwardAE pode ser usado para evitar conflitos de dados. 
 
QUESTÃO 14: Assunto: Controle do Processador MIPS no modo Pipeline. 
Qual a melhor alternativa que representa o sinal de controle flushE? 
a) flushE = ((rsD==rtE) OR (rtD==rtE)) AND MemtoRegE 
b) flushE = ((rsE==rtD) OR (rtE==rtD)) AND MemtoRegE 
c) flushE = ((rsE==rtD) OR (rtE==rtD)) AND not(MemtoRegE) 
d) flushE = ((rsD==rtE) OR (rtD==rtE)) OR MemtoRegE 
User
Note
Questão 11nullnullJustificativa:nullnullLetra (a) e letra (d) estão incorretas, pois não fazem a instrução SLL. Observem que o caminho de dados Figura 3 não faz SLL !!nullnullnullnullLetra (b) e Letra (c) estão corretas.nullnullnullnullAtribuirei os 2 pontos da questão quem marcou (b) ou (c).nullnull
6 
 
QUESTÃO 15: Assunto: Exceções no MIPS. 
Uma instrução não definida no conjunto de instruções do MIPS foi buscada na memória de programa. Na fase de 
decodificação da instrução, o processador gerou uma exceção do tipo “instrução indefinida”. Quantos estados, no 
mínimo, você deveria introduzir na máquina de estados finitos da unidade de controle da Figura 4, para tratar 
unicamente essa exceção? 
a) 1 estado 
b) 2 estados 
c) 3 estados 
d) 4 estados 
 
QUESTÃO 16: Assunto: Microarquiteturas Superescalar. 
É correto afirmar sobre microarquiteturas superescalares que: 
a) Proporcionam CPI menores que 1 
b) Proporcionam CPI iguais a 1 
c) Proporcionam CPI maiores que 1 
d) Nada se pode afirmar 
 
QUESTÃO 17: Assunto: Microarquiteturas Multithreading. 
É correto afirmar que: 
a) SFGM (Multithreading estática de granularidade fina) só funciona em microarquiteturas superescalares. 
b) DFGM (Multithreading dinâmica de granularidade fina) só funciona em microarquiteturas superescalares. 
c) CGM (Multithreading de granularidade grossa) só funciona em microarquiteturas superescalares. 
d) SMT (Multithreading simultânea) só funciona em microarquiteturas superescalares. 
 
QUESTÃO 18: Assunto: Multiprocessadores. (1 ponto) 
É correto afirmar que: 
a) Clusters são compostos por núcleos de processamento com memória individual. 
b) Clusters são compostos por núcleos de processamento com memória compartilhada. 
c) Processadores com múltiplos núcleos de processamento com memória compartilhada são chamados de 
multiprocessadores heterogêneos. 
d) Os processadores encontrados em smartphones modernos, podem ser classificados de 
multiprocessadores homogêneos. 
 
 
User
Note
Veja o slide 114 do conjunto de slides do capítulo 7.nullnullnullnullAceitarei quem respondeu 1 estado ou 2 estados. Já que quem respondeu 2 estados alegou que o processador precisaria de um estado a mais para recuperar o endereço de retorno armazenado em EPC de volta para o PC. O que é correto.

Continue navegando