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

基于verilog的FPGA编程经验总结(XILINX ISE工具)

[复制链接]
  • TA的每日心情
    开心
    2019-11-20 15:00
  • 签到天数: 2 天

    [LV.1]初来乍到

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

    EDA365欢迎您登录!

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

    x
    基于verilog的FPGA编程经验总结(XILINX ISE工具)

    3 x; R6 ~# ?1 R0 K
    7 P+ U# q: n  A. A5 @/ C
    1.用ISE仿真的时候.所用变量一定要初始化. ISE默认初始量为"XXXXX", 而Quarters是默认为"00000"的, 其实实际上, 下到FPGA里后也是默认为0的,只是可以说ISE严谨得令人DT吧.8 {& r9 ], @7 A1 p& ?' W( a( x
    比如说用一个累加器, result = A+B+result ,必须保证在某一刻A, B, result都为定值时, 之后的数据才不会一直为"XXXXX";
    ; T; s' K: n/ H; \- |- h6 `) g; E' U! G( B% {1 N: I% f0 c

    1 [* Z8 y4 [1 s+ J" P5 t2.所有的中间线(就是module间用来传递参数的信号)都要用wire定义一下. 这个ise一般会提醒的;
    & c8 |1 @2 i2 [
    / t6 n0 y& k( G1 L1 S% w$ ?' k5 J3 |4 u, Q+ Y9 H/ q* F
    3.任何一个warning都是有用的;
    + f1 D6 B" E+ c. d$ M5 c* K' `9 F' Z3 r7 l
    , Z3 {" a) n$ D- @" y/ `; Y5 s
    4.debug时要多把中间变量设成输出,然后查看仿真波形;( m% p4 g. h8 |
    8 e6 `1 h( C: Q/ W8 e
    $ f1 @; a, x8 {0 v2 l
    5.其实,新版本还是比较好用的.虽然取消了test bench wave 功能. 但是最好学会编测试文件,后期比test bench wave好用, 而且貌似一旦测试信号太多,test bench wave就不显示某些输出了;0 @; T3 P7 O  i% [, w6 s- L
    ; {* ?. s( P( G+ x& E
    * ?2 Y- m$ \. Y" |; }
    6. warning: Nod <....> is unconnected. 表明<...>所在的模块没用被执行,一般是参数没进来, 或者进来的参数不对("XXXX"之类)的原因引起的.) o+ J  B6 t5 I. u
    4 c1 L# h7 V6 @' x- K

    : ?/ v# }* Z+ E7.建立rom时候,Error: sinrom can't be resolved. 因为在把程序挪地方的时候,sinrom.ngc文件没有一同拷过来./ T# ]5 z" Z# Y. n* `1 B3 K
    & _* s) B& g) Z, T

    : T  S% f" y1 E: I0 J8.把"XXXXX"信号处理掉的一个方法可以是: 从信号中随意选出一位 if (data[0] == 0) ....; else if (data[0] == 1).... else data = 0; 就可以把"XXXX"信号给清成"0000"了. 可以很好的解决1中仿真的问题.
    - N1 J; o( L1 j$ L+ R# A" ]6 g& h  N) Z, P: e' V2 c/ y

    ) Y/ i- s: E& a8 y9.如果某一个不是时钟的信号被当作周期信号来用的话,就会出现 WARNING:Route:455 - CLK Net:trn_clk_OBUF may have excessive skew. because 0 CLK pins and 1 NON_CLK pins failed to route using a CLK template 不管也行.
    - {8 X4 z2 [0 B* t" C/ C# r
    + T' ]" `% _6 k3 Z' V; ]* a1 a$ c" M
    10. 一开始用FPGA时不要害怕,用ucf文件配好引脚,直接LOAD,先不用管什么区域约束,以后进阶了再学. .

    . u( t+ o! f; ]$ {# `% V0 D

    该用户从未签到

    2#
    发表于 2019-3-11 14:52 | 只看该作者
    非常棒的经验
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

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

    EDA365公众号

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

    GMT+8, 2025-7-28 09:13 , Processed in 0.125000 second(s), 23 queries , Gzip On.

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

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

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