| |
xilinx器件,开发代码中的变量初始值怎么确定的?
首先初始值,有两种,一是configuration初始值;一是reset初始值。前者是FPGA加载后的初始值;后者是复位后的初始值。
初始值如何定义。如果没有显性的定义,加载后的初始值,会根据代码中编写代码的复位初值用作configuration初值。如果需要显性的定义,有两种方式,1.显性的定义,则在定义变量时,在变量名后直接赋值,该值就是configuration的值。2.以vivado工具为例,在综合后的netlist窗口中的cells,找到所要初始化的变量,然后在其properties窗口中,找到INIT属性,该属性既是其configuration的值,可以在该窗口中手动修改,修改好后重新生成bin文件就设置成功。其中也能查看reset值,在netlist窗口的cells名后小括号中会先是FDPE/FPCE或FDSE/FDRE,前一组表示是异步设计的置位(1)与复位(0);后一组为同步设计的置位与复位。