云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > xilinx ZC706 PL单独模块 流水灯实验

xilinx ZC706 PL单独模块 流水灯实验

  • 62 次阅读
  • 3 次下载
  • 2025/12/11 3:18:46

xilinx ZC706 PL单独模块 流水灯实验

对于xilinx的ZC706开发板单独使用PL做流水等试验的网上例程几乎是空白,大多数是PS+PL实验。如果是刚开始接触ZC706板,想写一个单独的PL程序时,你肯定以为很快就可以上手。但是如果你开始详细了解ZC706的核心芯片XC7Z045会发现一个关键性问题,就是时钟的使用。XC7Z045所使用PL时钟输入是以差分对的形式输入的,那在程序当中怎么搞嘞???疑惑???不解了吧?下面请看实例:

对于正常是时钟输入来说程序应该是这样的: module led(

input sys_rst_n, input sys_clk, output [3:0] LD );

reg [3:0] LD_reg; reg [31:0] cnt;

assign LD = LD_reg;

always@(posedge sys_clk or negedge sys_rst_n) begin

if(sys_reset_n == 1'b1)begin LD_reg <= 4 'b1000; cnt <= 32'b0; end

else begin

if (cnt == 32'd25000000)begin cnt <= 32'b0;

LD_reg <=(LD_reg>>1)|(LD_reg<<3); end

else begin

cnt <= cnt + 32'b1; end end end

endmodule

按照上面的程序去编译,如果是单信号时钟的芯片没有任何问题。但是这里我们的XC7Z045用的是差分对时钟输入,编译肯定是通不过的,一堆error是跑不了的。那问题来了,我们程序中的时钟是sys_clk但信号呀!?总不用两根时钟吧!况且又是差分对。那在想一想,将差分对时钟变成单信号时钟。如果你能这样想,那就是赞了。我们要做的就是这个。在讲这个之前我们得先要了解一下,xilinx对于差分信号所使用的相关原语。(所谓原语就是xilinx给你做的例化)。我这里提及主要两个例化:IBUFGDS,IBUFDS(关于他们的使用,请自行百度)。IBUFGDS是我们例程中所需要用到的原语,具体形式

IBUFGDS refclk_ibuf ( .I(sys_clk_p), .IB(sys_clk_n),.O(sys_clk));

sys_clk_p,sys_clk_p是差分对输入,sys_clk为程序中定义的wire通过这个例化后我们就可以将差分对时钟转变成但信号时钟使用。具体范例如下: module led(

input sys_rst_n, input sys_clk_p, input sys_clk_n, output [3:0] LD );

wire sys_clk; wire sys_reset_n;

reg [3:0] LD_reg; reg [31:0] cnt;

IBUFGDS refclk_ibuf ( .I(sys_clk_p), .IB(sys_clk_n),.O(sys_clk)); IBUF sys_reset_n_ibuf (.O(sys_reset_n), .I(sys_rst_n));

assign LD = LD_reg;

always@(posedge sys_clk or negedge sys_reset_n) begin

if(sys_reset_n == 1'b1)begin LD_reg <= 4 'b1000; cnt <= 32'b0; end

else begin

if (cnt == 32'd25000000)begin cnt <= 32'b0;

LD_reg <=(LD_reg>>1)|(LD_reg<<3); end

else begin

cnt <= cnt + 32'b1; end end end

endmodule

写到这里当然还没有完,我们还要做I/O的constraint,对于led管脚的分配不多说跟以前一样。差分对时钟的例化,我们要稍加注意要加上这句原语:

create_clock -period 10.000 -name sys_clk [get_ports sys_clk_p] (周期为10ns) set_property PACKAGE_PIN H9 [get_ports sys_clk_p] 差分时钟只要写一个clk_P就行clk_n软件会自动链接。

到此各项工作就算大体完成,编译吧!!!

看完请点赞! 也是对本人的支持!!需要工程文件的到CSDN网站,搜素“xilinx PL单独模块流水灯实验”,上传者为本人账号名:“xunaiqun”;

搜索更多关于: xilinx ZC706 PL单独模块 流水灯实验 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

xilinx ZC706 PL单独模块 流水灯实验 对于xilinx的ZC706开发板单独使用PL做流水等试验的网上例程几乎是空白,大多数是PS+PL实验。如果是刚开始接触ZC706板,想写一个单独的PL程序时,你肯定以为很快就可以上手。但是如果你开始详细了解ZC706的核心芯片XC7Z045会发现一个关键性问题,就是时钟的使用。XC7Z045所使用PL时钟输入是以差分对的形式输入的,那在程序当中怎么搞嘞???疑惑???不解了吧?下面请看实例: 对于正常是时钟输入来说程序应该是这样的: module led( input sys_rst_n, input sys_clk, output [3:0] LD ); reg [3:0] LD_reg; reg [31:0]

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com