Problema 3 - Màquina Senzilla: unitat de procés,… · Estructura i tecnologia de computadors II UDG Juny

Tema: Màquina Senzilla: unitat de procés, unitat de control i noves instruccions · Del examen Juny

Enunciado

Problema 3.- Adreçament immediat a la Màquina Senzilla (MS1)

Es vol ampliar el repertori d'instruccions de la Màquina Senzilla bàsica (MS1) afegint-hi una instrucció que permeti escriure operands de forma immediata directament a una posició de memòria RAM. El valor immediat es troba codificat dins de la pròpia paraula d'instrucció.

La instrucció es defineix de la manera següent:

MOVIMM Imm, D: (D) ← 0^10 || Imm_5..0

Si (Imm == 0): FZ = 1

Altrament: FZ = 0 On Imm és un valor numèric sencer de 6 bits sense signe que es desa a l'adreça de memòria RAM indicada per D.

a)

Codifiqueu la nova instrucció garantint la compatibilitat amb les instruccions ja existents de la màquina (ADD, CMP, MOV, BEQ).

b)

Modifiqueu la unitat de procés de la màquina senzilla per incorporar els camins de dades necessaris per a MOVIMM.

c)

Dibuixeu el diagrama d'estats i especifiqueu els valors del vector de sortida (senyals de control) a cadascun dels estats per a aquesta instrucció.

Enunciado: Problema 3 - Màquina Senzilla: unitat de procés,… · Estructura i tecnologia de computadors II UDG Juny

Solución

Según los criterios oficiales de corrección

a. Codifiqueu la nova instrucció garantint la compatibilitat amb les instruccions ja existents de la màquina (ADD, CMP, MOV, BEQ).

Solución: Aprofitant el bit d'extensió (E) quan el codi d'operació base és 11: - ADD: CO1CO0=00CO_1 CO_0 = 00, Operands: F, D - CMP: CO1CO0=01CO_1 CO_0 = 01, Operands: F, D - MOV: CO1CO0=10CO_1 CO_0 = 10, Operands: F, D - BEQ: CO1CO0=11,E=0CO_1 CO_0 = 11, E = 0, Operand: D - MOVIMM: CO1CO0=11,E=1CO_1 CO_0 = 11, E = 1, Operands: Imm (6 bits), D

b. Modifiqueu la unitat de procés de la màquina senzilla per incorporar els camins de dades necessaris per a MOVIMM.

Solución: - S'afegeix un bloc combinacional MOVIMM connectat a les sortides del registre d'instrucció (IR) que extreu els bits Imm_5..0 i estén amb 10 zeros a l'esquerra fins a formar un bus de 16 bits: 010∥Imm0^{10} \parallel \text{Imm}. - S'incorpora un multiplexor de dues entrades davant del registre B controlat pel senyal MUXM: quan MUXM = 0 selecciona la sortida de la RAM com habitualment, i quan MUXM = 1 selecciona la sortida del bloc MOVIMM. - El camp d'adreça de destinació D de l'IR es commuta cap al bus d'adreces de la RAM per escriure-hi el valor de B. - El flag de zero (FZ) s'actualitza a partir de la detecció de zero del valor immediat.

c. Dibuixeu el diagrama d'estats i especifiqueu els valors del vector de sortida (senyals de control) a cadascun dels estats per a aquesta instrucció.

Solución: Estats: - Estat 0 (Fetch): IR←M[PC],PC←PC+1IR \leftarrow M[PC], PC \leftarrow PC + 1. - Estat 1 (Descodificació): Si CO1CO0E=111CO_1 CO_0 E = 111, passa a l'Estat 2. - Estat 2 (Cerca operand immediat): B←ImmB \leftarrow \text{Imm} mitjançant MUXM=1MUXM = 1 i activació de càrrega a B (BM=1BM = 1). - Estat 3 (Execució / Escriptura): M[D]←BM[D] \leftarrow B, actualització de FZ (FZZ=1,L/Eˉ=1FZ_Z = 1, L/\bar{E} = 1). Retorn a l'estat 0. Taula de vectors de control: - Estat S0: MX1=0,MX0=0,L/Eˉ=0,PC@+1=1,IR M=1,A M=0,B M=0,FZ Z=0,MUXM=XMX_1=0, MX_0=0, L/\bar{E}=0, PC@+1=1, IR\,M=1, A\,M=0, B\,M=0, FZ\,Z=0, MUXM=X. - Estat S1: MX1=X,MX0=X,L/Eˉ=0,PC@+1=0,IR M=0,A M=0,B M=0,FZ Z=0,MUXM=XMX_1=X, MX_0=X, L/\bar{E}=0, PC@+1=0, IR\,M=0, A\,M=0, B\,M=0, FZ\,Z=0, MUXM=X. - Estat S2: MX1=1,MX0=1,ALU=X,L/Eˉ=0,PC@+1=0,IR M=0,A M=0,B M=1,FZ Z=0,MUXM=1MX_1=1, MX_0=1, ALU=X, L/\bar{E}=0, PC@+1=0, IR\,M=0, A\,M=0, B\,M=1, FZ\,Z=0, MUXM=1. - Estat S3: MX1=1,MX0=1,ALU1=1,ALU0=1,L/Eˉ=1,PC@+1=0,IR M=0,A M=0,B M=0,FZ Z=1,MUXM=XMX_1=1, MX_0=1, ALU_1=1, ALU_0=1, L/\bar{E}=1, PC@+1=0, IR\,M=0, A\,M=0, B\,M=0, FZ\,Z=1, MUXM=X.

La explicación paso a paso, hecha con IA, es Premium. Premium

Resuélvelo aquí mismo: corrección automática, pistas y solución paso a paso.

‹ Pregunta 18 · Exemples · Pregunta 13 · Juny ›

Más ejercicios de Màquina Senzilla: unitat de procés, unitat de control i noves instruccions