22 lines
		
	
	
		
			451 B
		
	
	
	
		
			VHDL
		
	
	
	
	
	
			
		
		
	
	
			22 lines
		
	
	
		
			451 B
		
	
	
	
		
			VHDL
		
	
	
	
	
	
| ARCHITECTURE RTL OF scratchpad IS
 | |
| 
 | |
|   subtype memoryWordType is signed(dataOut'range);
 | |
|   type memoryArrayType is array (0 to 2**addr'length-1) of memoryWordType;
 | |
| 
 | |
|   signal memoryArray : memoryArrayType;
 | |
| 
 | |
| BEGIN
 | |
| 
 | |
|   process (clock)
 | |
|   begin
 | |
|     if rising_edge(clock) then
 | |
|       if write = '1' then
 | |
|         memoryArray(to_integer(addr)) <= dataIn;
 | |
|       end if;
 | |
|     end if;
 | |
|   end process;
 | |
| 
 | |
|   dataOut <= memoryArray(to_integer(addr));
 | |
| 
 | |
| END ARCHITECTURE RTL;
 |