在VHDL全球定义

P

pastro

Guest
大家好,我工作的VHDL的固件是一个涉及FPGA的一堆项目。在FPGA的大多数都有类似的固件,与喜欢他们的变化从FPGA到FPGA的ID唯一的东西。我想创建一个配置数据,所有的常量具体列出到FPGA的VHDL文件,然后有一些“包括”语句排序,在每一个参考的VHDL模块中的常量。什么是正确的办法做到这一点?谢谢!
 
您可以放置在一个如“defs中”包中的所有常量和进口各自所有的设计是指它的实体。 [代码]包defs中是不变的MAJOR_VERSION:整数:= 0;常MINOR_VERSION:整数:= 16; - 完包defs中,在文件库的设计工作;使用work.defs.all; [/代码]的实际名称在defs中文件可以不同,你还可以实现层次的一般定义和目标的具体定义。
 
请注意,这将要求每个领导到每一个芯片独特的比特流芯片re-compile/synth/PAR。如果设备实际上,除少数参数相同,一个解决办法可能是允许的参数进行配置后和上电复位,但在实际工作的芯片是否有装*。 *装:一些上司CPU写每个接口芯片。或每个芯片的逻辑来拉出来一个配置的EEPROM配置。或一些其他方法。
 
[行情]如果设备实际上,除少数参数相同,一种解决方案可能是让这些参数后,要装入*配置和上电复位,但在芯片是否有真正的工作。[/报价]运行配置是一个当然的选择,在我看来,它不应该只限于加载参数“前的芯片是否有真正的工作”。但是,除了对配置寄存器的开销,它可能涉及相当高的逻辑元件和布线资源的需求。最重要的优势上面节省编译时间,简化了软件的变种是库存。
 
还有一个独立开发的软件的固件版本,它使用的寄存器来检查兼容性或看到哪些功能是提供案例。
 
低开销的东西可能是储存在'一堆'在与阵列(s)位文件所有可能的芯片的参数。然后用一些其他未使用的I /以静态代码O管脚“的芯片/功能/身份证我是谁?”然后,你的参数:= PARAM_ARRAY(to_unsigned(IdPins(5 downto 0));
 

Welcome to EDABoard.com

Sponsor

Back
Top