使用Synopsys(设计编译器或FPGA编译器)和MAX +PLUS®II软件时,如何控制VHDL设计中的逻辑单元插入?
您可能需要插入逻辑单元以用于布线或减少信号的扇出。流程是:
- 在硬件描述语言(HDL)源代码中实现逻辑单元组件。
- 在逻辑单元实例名称上添加Synopsys指令
set_dont_touch
。 - 在此逻辑单元上添加MAX + PLUS II软件逻辑分配
STYLE=WYSIWYG
。
以下示例( ilf.vhd和ilc.scr )描述了如何在XOR
门和触发器之间插入逻辑单元。 Synopsys综合器(设计编译器或FPGA编译器)处理ilc.vhd和ilc.scr以生成MAX + PLUS II EDIF文件。该EDIF文件包含LCELL实例和STYLE=WYSIWYG
逻辑分配。
-------------------------------------------------- -------- --- ---插入LCELL --- --- ilc.vhd --- LIBRARY ieee; 使用ieee.std_logic_1164.ALL; ENTITY ilc IS PORT(dina,dinb,clk:IN STD_LOGIC; dout:OUT STD_LOGIC); END ilc; 建筑的一部分 signal foo_in,foo_out:std_logic; COMPONENT LCELL PORT(a_in:IN STD_LOGIC; a_out:OUT STD_LOGIC); 结束组成部分; 开始 U0:LCELL端口映射(foo_in,foo_out); foo_in <= dina XOR dinb; flip_flop:PROCESS(clk) 开始 如果clk'event和(clk ='1') 然后dout <= foo_out; 万一 ; 结束过程; 结束a; --- --- -------------------------------------------------- ----- / ******************* ********* / / * ilc.scr * / / *用于设计编译器或FPGA编译器的Synopsys脚本* / / * * / 读-f vhdl ilc.vhd set_dont_touch find(cell,{U0})为true set_attribute find(cell,{“U0”})“LOGIC_OPTION”-type string“STYLE = WYSIWYG” 编 写-f edif -hier -o ilc.edf