Práctica 4 · Memoria RAM y entrega
viernes 16 de octubre · 16:00–17:40 · en 55 días
GUÍA 16-10-26 Laboratorio de Arquitecturas Computacionales
LA116 · viernes 16/10/2026 · 16:00-17:40 · Sesión 10
Práctica 4 · Memoria RAM y entrega
OBJETIVO
Implementar la memoria de datos con lectura y escritura, y completar la Práctica 4.
RAM SÍNCRONA BÁSICA
- always @(posedge clk) if (we) ram[dir] <= dato_in;
- assign dato_out = ram[dir]; para lectura asíncrona.
La escritura siempre es síncrona; la lectura puede ser de cualquiera de las dos formas, y esa elección determina si la herramienta puede usar los bloques de RAM dedicados.
ACCESOS DE DISTINTO TAMAÑO
RV32I tiene lw, lh, lb y sus versiones sin signo, más sw, sh y sb. La memoria se organiza por palabras de 32 bits, así que los accesos parciales requieren lógica adicional.
- Para leer: seleccionar el byte o media palabra según los dos bits bajos de la dirección, y extender el signo o rellenar con ceros según la instrucción.
- Para escribir: habilitación por byte, con una señal de escritura por cada uno de los cuatro bytes de la palabra.
EXTENSIÓN DE SIGNO
lb extiende el signo del byte a 32 bits; lbu rellena con ceros. Confundirlas produce errores que solo aparecen con datos negativos, y por eso pasan desapercibidos en las pruebas superficiales.
ALINEACIÓN
Hay que decidir y documentar qué hace el diseño ante un acceso no alineado: generar una excepción o permitirlo. RISC-V base exige alineación para media palabra y palabra.
MEMORIA DE DOBLE PUERTO
Los bloques de RAM de las FPGA suelen tener dos puertos independientes. Es lo que permite leer instrucción y dato en el mismo ciclo con una sola memoria física, que es precisamente la Harvard modificada de la clase de teoría.
VERIFICACIÓN
- Escribir un patrón conocido y leerlo de vuelta.
- Probar los accesos de byte y media palabra en las cuatro posiciones dentro de la palabra.
- Verificar la extensión de signo con valores negativos.
ENTREGA DE LA PRÁCTICA 4
Reporte con el mapa de memoria, la lógica de accesos parciales, los esquemáticos y las pruebas de lectura y escritura.
Nada anotado en esta sesión todavía.