找回密码
 注册
关于网站域名变更的通知
查看: 203|回复: 1
打印 上一主题 下一主题

Xilinx CORE Generator心得

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2019-5-23 10:16 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

EDA365欢迎您登录!

您需要 登录 才可以下载或查看,没有帐号?注册

x
Xilinx CORE Generator心得

* y3 K( H1 s! ^5 f, `' Y! W7 ?6 }. g2 \9 J4 G1 C# J
--VHDL Black Box
) D8 h* p, ]4 U  D3 y7 bcomponent myadder8
0 |' v, l3 @' k# P9 E/ z; xport ( ( ?' T1 b0 C0 P- |6 Y: {- c  `1 {: x
    A: IN std_logic_VECTOR(7 downto 0);
4 f9 R, K! D/ p# a/ p, O    B: IN std_logic_VECTOR(7 downto 0);
7 n) k/ E7 v" i; _( u& S7 r    C_IN: IN std_logic;
# K5 l- o3 }% O; f' `* B( [% V    Q: OUT std_logic_VECTOR(8 downto 0);
. D9 D: i5 r' v$ x' t2 T# c9 ]2 x    CLK: IN std_logic 6 r7 h' Z9 j9 Y/ |' j4 P3 {0 U
    ); ( Z, A1 J6 I" B4 v% E9 t! g
end component; / B* q) K9 I/ H8 d
-- Synplicity black box declaration
: N4 T; \9 N" _/ ~8 R* a; P# aattribute black_box : boolean;
+ p, A  n# X$ E) Tattribute black_box of myadder8: component is true;   b6 r9 e( n9 v4 i" \% w' \5 m  C
    将attribute语句拷入我的工程,还有warning.根据提示,将black_box改成syn_black_box,问题才得以解决,此时,不会再有上述warning存在了。
# t3 D/ p" h  y2 C5 Q& X' N8 F2 l8 t9 jattribute syn_black_box : boolean;
" @# j' z4 W$ sattribute syn_black_box of myadder8: component is true; . L' q; k0 Q# V6 u+ q+ }
    后来,在Xilinx ISE 5.x 使用详解》中翻到如下内容:P71
5 X. \/ o* |: X' h* j    书上有云: 9 x$ l, W6 B) ?& @$ u7 `! T
    “IP核在综合时一般被认为是黑盒子(Black Box),综合器不对黑盒子做任何编译。将IP核加入工程有两种方法,一为在工程中新建Coregen IP类型资源,另一种是针对第三方综合工具而言,同时避免了在新工程中需要重新加入IP核资源的麻烦。也就是将IP核声明成黑盒子,具体操作时可以利用IP核生成时生成的仿真文件和IP核实例化文件(.veo,.vho),将仿真文件中的IP核的相关部分原封不动地拷贝到顶层文件中去,声明IP核模块,然后将实例化文件内容粘贴到模块的实例化部分。
7 O+ ]" ?+ R  E4 H    然面,使用Synplify Pro等综合工具综合IP核等Xilinx硬件原语时,需要调用相应Xilinx器件的硬件原语声明文件。位于Synpliy\lib\Xilinx”子目录中的virtex.v/vhd,virtexe.v/vhd,virtex2.v/vhd,virtex2p.v/vhd等文件就是硬件原语声明文件。调用时用"include"命令。
- d! Y! g7 k* P! _2 @1 R$ B& N) _% ?3 v& r
综合工具
Verilog语法声明
VHDL语法声明
synplify
// synthesis black_box
attribute syn_black_box : Boolean;
attribute syn_black_box of core_name : component is true;
synopsys
// synopsys translate_off
// synopsys translate_on
attribute FPGA_dont_touch : string;
attribute fpga_dont_touch of core_name : component is “true”;
XST
// box_type “black_box”
attribute box_type : string;
attribute box_type of core_name : component is “black_box”;
+ i% n( A5 n- x- i. ^
, a+ j- N/ j2 z9 L3 m- l
  Q2 D" k! G4 t" A- ]. Y5 D

该用户从未签到

2#
发表于 2019-5-23 16:41 | 只看该作者
最近正在找这方面的资料 谢谢楼主分享
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

推荐内容上一条 /1 下一条

EDA365公众号

关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

GMT+8, 2025-8-3 15:06 , Processed in 0.125000 second(s), 23 queries , Gzip On.

深圳市墨知创新科技有限公司

地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

快速回复 返回顶部 返回列表