描述
关键词:Spartan,4K,Verilog,VHDL,启动
紧迫性:标准
一般描述:
FPGA Express在优化之前从设计中删除启动原语。(这可能发生在VHDL和Verilog设计中。)
解决方案
一
VHDL:
如果在VHDL设计中发生这种情况,则在HDL代码的实例化中放置一个“DONTYTAUTION”属性,以防止启动原语被删除。这必须在代码内完成(与FPGA Express约束编辑器相反),因为在编辑器中应用属性之前,组件被移除。
例如:
…
组件启动端口
(GSR,GTS,CLK:在STDYLogic中;
Q1Q4,Q2,Q3:输出STDYLogic;
端部元件;
属性FPGA-DONTTHouTou:字符串;
U1的属性FPGA-DONTTHouTou:标签是“真”的;
开始
启动端口映射
(GSR=& Gt;复位,
三态,
时钟,
q1q4= & gt;
q2= & gt;
q3=& gt;
…
对于这种特殊的设计,不必使用启动块上的所有端口,而是只列出要使用的端口。
二
Verilog:
如果在Verilog设计中发生这种情况,则为正在删除的组件创建一个空模块声明。这将定义端口方向,并允许FPGA Express正确插入组件。
例如:
…
启动U1(.GSR(RESET),.GTS(三态)),CLK(时钟),Q1Q4(SIG1),Q2(SIG2),Q3(SIG3);
…
终端模块
模块启动(GSR,GTS,CLK,Q1Q4,Q2,Q3,DONEIN);
输入GSR、GTS、CLK;
输出Q1Q4、Q2、Q3、DONEIN;
终端模块
对于这种特殊的设计,不必使用启动块上的所有端口,而是只列出要使用的端口。
没有回复内容