/* ************************************************************ */
declare RAM_SRAM {
input AD_i[2] ; // Address (in)
input DB_i[8] ; // Write Data (in)
output DB_o[8] ; // Read Data (out)
input CS_i ; // Chip select (in)
input WEN_i ; // Write enable (in)
input REN_i ; // Read enable (in)
}
/* ************************************************************ */
// Declare module
module RAM_SRAM {
/* ************************************************************ */
// Internal operation signals
mem mem_array [4][8] ;
/* ************************************************************ */
// Equation
{
if ( CS_i & WEN_i ) {
mem_array[AD_i] := DB_i ;
}
if ( CS_i & REN_i ) {
DB_o = mem_array[AD_i] ;
} else {
DB_o = 8'h00 ;
}
}
/* ************************************************************ */
}