Las rooms son un metodo para almacenar espacios reservados de bits a los cuales se puede acceder y leer lo que alli esta almacenado mas no se pueden modificar, "Read Only Memory" en español memoria de solo lectura, para crear una memoria de solo lectura del modo que lo haremos hoy debemos dar un nombre a la ROM, asi tambien debemos decirle, de cuantos bits sera, y cuantos arreglos tendra disponible. cantidad de bits: la cantidad de bits no es mas que la cantidad de numeros posibles que tendra cada reservacion de room, se representa de la siguiente manera: Mostrar código Verilog

Ejemplo


 reg [6:0]room_1 ---resto de la declaracion---
    

esto especifica que podemos tener reservado un espacio de rom de 7 bits.

Amplitud de la ROM: La amplitud de la rom hace referencia a los espacios reservados que podemos tener en la room esto va desde 0 -> N, siendo N la cantidad de espacios que queremos, por ejemplo, si contaremos del 0 -> 9 tendremos 10 espacios, esto se escribe incluyendo lo anterior "reg [6:0]room_1", y especificando los 10 espacios necesarios de la siguiente manera: Mostrar código Verilog

Ejemplo


reg [6:0]room_1 [9:0];  ---resto del codigo---
    
de esta manera simplemente debemos especificar el valor de cada room desde la Room 0 hasta la Room 9 de la siguiente manera: Mostrar código Verilog

codigo verilog


reg [6:0]room_1 [9:0];
initial begin      // inicializamos cada reservacion a su valor de 7 bits.

    rom_1[0]  = ~7'b1111110; // 0
    rom_1[1]  = ~7'b0110000; // 1
    rom_1[2]  = ~7'b1101101; // 2
    rom_1[3]  = ~7'b1111001; // 3
    rom_1[4]  = ~7'b0110011; // 4
    rom_1[5]  = ~7'b1011011; // 5
    rom_1[6]  = ~7'b1011111; // 6
    rom_1[7]  = ~7'b1110000; // 7
    rom_1[8]  = ~7'b1111111; // 8
    rom_1[9]  = ~7'b1110011; // 9

end

esto seria todo espero les haya gustado.