Todos los ejercicios
Difícil
Completa el hueco
5 pruebas
Multiplicador Booth — suma/resta condicional — completa el hueco
Un multiplicador Booth 4×4 está casi completo. El acumulador
acc, los bits de control q0 y q_minus1, y el multiplicando
extendido a 8 bits m_ext ya se actualizan al recibir start.
Al inicio de cada paso se calcula la variable
lsb_pair := q0 & q_minus1;.
Tu tarea es escribir la suma/resta condicional del paso
(cuando start = '0').
Especificación
- Mira el par de bits
lsb_pair = q0 & q_minus1:"01"→ suma el multiplicando:acc <= acc + m_ext;"10"→ resta el multiplicando:acc <= acc - m_ext;"00"o"11"→ no operación:acc <= acc;
- Usa
case lsb_pair is … end case;. - No toques
q0,q_minus1nim_ext— están fuera de los
marcadores.
Dónde escribir
Sólo las líneas entre -- BEGIN_EDIT y -- END_EDIT se evalúan.
Caso de prueba visible
Reset, start con a=0011 b=0001, observa la suma en acc
| Puerto | Tiempo | Valor |
|---|---|---|
reset |
0 ns | 1 |
reset |
25 ns | 0 |
start |
0 ns | 0 |
start |
100 ns | 1 |
start |
200 ns | 0 |
a |
0 ns | 0011 |
b |
0 ns | 0001 |
4 casos de prueba ocultos — resuélvelos para revelarlos.