您的位置 首页 模拟

FPGA研制之道(5)从零开始调试FPGA

“合抱之木,生于毫末;九层之台,起于垒土;千里之行,始于足下。” 老子《道德经》对于新手来说,如何上手调试FPGA是关键的一步。对于每一个新设计的FPGA板卡,也需要从零开始调试。

  “合抱之木,生于毫末;九层之台,起于垒土;千里之行,始于足下。” 老子《道德经》

  关于新手来说,怎么上手调试FPGA是要害的一步。

  关于每一个新规划的FPGA板卡,也需求从零开端调试。

  那么怎么开端调试?

  下面介绍一种简易的调试办法。

  (1) 至少设定一个输入时钟 input sys_clk;

  (2) 设定输出 output [N-1:0] led;

  (3)设定32位计数器 reg [31:0] led_cnt;

  (4) 时钟驱动计数器开端作业

  always@(posedge sys_clk)

  led_cnt <= led_cnt + 1

  (5)输出led信号。

  assign led = led_cnt[M:N];

  程序完结。

  (6)设定管束束缚

  假如为XILINX FPGA ,在UCF文件中 NET “sys_clk” LOC = 管脚称号

  假如为ALTERA FPGA ,在QSF文件中,增加 set_location_assignment 管脚称号 -to sys_clk

  其他管脚,可顺次类推。

  (7)编译,布局、布线,生成配置文件。

  XILINX 生成BIT文件。

  ALTERA 生成SOF文件

  (8)衔接JTAG,下载相应的配置文件。

  (9)调查是否闪灯(肉眼可见)。

  关于闪灯的解说如下:

  assign led = led_cnt[M:N]; led_cnt 为32bit的信号,需求几个闪灯,则依据输入时钟的频率和肉眼能够分辩的时刻(100ms)。如输出时钟为25Mhz。则闪灯看见的方位能够分批到10hz。需分频2.5M= 32‘h2625A0,因而,则需求输出至少为led_cnt[21]位,才干看到闪灯。

  尽管程序简略,可是,经过调试能够承认:

  (1)首要可确认JTAG下载器的正确衔接,能够正常下载下载文件。如不能,常见问题包含

  (一)检查是否装置驱动。

  (二)下载器是否由红灯变成黄灯/绿灯。如红灯亮一般情况下,JTAG的与电路板VCC没有供电。

  (三)检查JTAG衔接的线序。

  (四)检查JTAG电路,检查原理图上TMS,TDI,TDO的上拉和下拉电阻是否与datasheet中共同。

  经过以上四种办法,可扫除绝大部分JTAG下载的过错。

  (2)能够判别晶振是否起振,下载后无灯闪。

  (一)首要,示波器检查晶振频率,调查晶振的输出,如无输出,检查晶振的电源和地信号,如电源正常,而晶振无反响,则替换晶振。

  (二)如无示波器,也有代替的办法,经过嵌入式逻辑分析仪抓信号(恣意信号)。如逻辑分析仪点击采样后无反响,则无时钟输入。

  这是由于逻辑分析仪也需求时钟进行逻辑值的存储。

  (3)如正常下载后闪灯,证明该FPGA板卡硬件规划上能够到达最低极限的FPGA调试状况。

  最终,阐明一下,为什么是闪灯而不是亮灯的程序,这是由于,首要闪灯能够判别外部晶振作业正常,而且由于LED等一般为上拉,也就是说逻辑值0表明灯亮,而也不扫除某硬件工程师非要下拉。逻辑1表明亮。因而选用闪灯愈加便利。

  问题:为什么LED灯值为什么要上拉?

  这是由于:LED上拉后,需求灯亮时电流由外部电源供给,而下拉,灯亮时电流由芯片的CMOS电路驱动。这种在规划中应防止。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/zhishi/moni/117764.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部