¿Si tuvieras que guardar en una FPGA una gran cantidad de bits como lo harías?

#1
Hola,

Estoy utilizando una FPGA XC3S200, la cuál "programo" mediante código VHDL y a través del software de Xilinx. En la aplicación necesito almacenar una gran cantidad de bits en la FPGA (250 coeficientes, y cada coeficiente tendrá unos 16 bits). Al principio utilicé una señal para almacenar todos estos bits, seria así:

type vector is array (0 to 249) of std_logic_vector(15 downto 0);
signal csg:vector:=( "0000101001001111","0001010011100011", .......................)

en este array estarian los 250 coeficientes.
Me aconsejaron que en lugar de utilizar esta arquitectura utilizara la SRAM que incorpora la FPGA, ya que así no utilizaria tantos biestables.
He creado el codigo de la SRAM y me funciona, de modo que utilizo un conector externo de la placa Spartan 3 por el cual puedo meter los datos de entrada manualmente. Estos datos de entrada los guardo en la SRAM. Pero al terminar me ha surgido una duda. En caso de que quiera meter los datos en la SRAM NO MANUALMENTE, tendré que utilizar otra vez un "array" como el anterior y me encontraré con el mismo problema de que estoy utilizando demasiados biestables.

Necesito algun consejo. Gracias.
 
Última edición por un moderador:
#2
declara tu arreglo como constant.....y ve si hay diferencia en la utilización de recursos del FPGA.
 
Arriba