EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 duhe3hfu 于 2022-1-26 15:14 编辑
. |( r; m7 j) @% ~; ~% o7 |5 f! K% Z% M& {' \# {
我自己做了一个小模块,来实现检测输入信号的上升沿的功能。VCS和Vivado synthesis post timing仿真运行都符合预期,但是生成的bit文件下载到FPGA则不对。fpga平台是avnet的ultra96,使用的是zynq ultrascale芯片。veriloG代码如下:
' j9 W f! h2 |+ b8 imodule find_risedge(input data, output data_r); reg data_r = 1'b0; always @(posedge data or posedge data_r) begin if(data_r) data_r <= #32 0; else if (data) data_r <= 1; end endmodule 调用module的代码如下:
% D: x6 n& @* S. t8 a4 R% M f) n1 p4 e5 F0 }8 [: h7 n* y% W" n, d% e
find_risedge uut_clk_risedge(clk_13p56m, clk_13p56m_re);
3 W ^% Y7 |, F4 }/ M; i$ {find_risedge uut_data_risedge(data_rx_change, data_rx_change_re); k& S2 A' I2 ]2 O0 E% d
vivado synthesis post timing仿真结果:
2 l# `3 ~+ Q3 S6 C- c" F$ I& z/ N. D6 i6 v) Q3 q# E
下载到FPGA运行后的结果:- @- u6 s9 K8 Z$ {+ {+ n
0 U/ ]6 M, o- r: v L `. e |