集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
楼主: fpgaw

至芯科技【夏宇闻教授专栏】与你一起搞定FPGA设计!

[复制链接]
夏宇闻 该用户已被删除
夏宇闻 发表于 2011-10-31 17:10:44 | 显示全部楼层
本帖最后由 夏宇闻 于 2011-10-31 17:59 编辑
夏老师你好,这是我的一个电子钟程序,当我下载到板子上仿真的时候出现了没有定义的数码管亮了,定义的数码 ...
qiyanan12 发表于 2011-10-31 16:04

您需要认真看一下开发板上数码显示是如何扫描的。我在你的程序中虽然看到如何将 分、秒分配到不同的数码管上,但没有找到每隔几个毫秒扫描一次显示。您的数码管显示扫描信号是怎样产生?每秒能重复几次? 如果想让四个数码管都比较亮,每秒应多扫描几次。如果您把第二个always块改为用快时钟沿触发,里面用非阻塞赋值,生成时序逻辑,问题可能就解决了。我的意见仅供参考。一切以实际运行效果为准。另外您的代码写得不够规范,用了多个时钟沿做触发,而且时序逻辑表示中用阻塞赋值。这些写法在规范代码中是不允许的。请您认真读一遍我编写的书,写一个测试,做一下RTL仿真以及布局布线后的时序仿真后再下载到开发板试验,可省不少时间。另外规范的代码表示您受过严格训练。而您的代码风格能说明您无师自通,但存在明显的隐患。
风中的承诺 发表于 2011-10-31 20:00:45 | 显示全部楼层
延时与仿真精度的差别越大,仿真速度越慢,是不是仿真的准确率就越大啊,因为在一个延时单位内扫描的次数多 就越能检测出错误呢
chenfzg 发表于 2011-10-31 20:15:22 | 显示全部楼层
夏老师,您好!我对FPGA很感兴趣,但我们学校用VHDL语言教~~~看了两个多月的书,上机也只是抄程序进去运行!总感觉一直在门外徘徊,想问下老师我打算先学VHDL,再深入学verilog ,不知道这样行不!如果学VHDL,该怎开始学?
夏宇闻 该用户已被删除
夏宇闻 发表于 2011-10-31 23:13:58 | 显示全部楼层
本帖最后由 夏宇闻 于 2011-11-1 08:27 编辑
延时与仿真精度的差别越大,仿真速度越慢,是不是仿真的准确率就越大啊,因为在一个延时单位内扫描的次数多 ...
风中的承诺 发表于 2011-10-31 20:00



    布局布线后的仿真精度是由组件库仿真模型决定的,通常为:  1ps/1ps。而在测试激励模块中时间单位和精度通常是1ns/1ns。用组件库仿真通常比RTL仿真慢很多。
夏宇闻 该用户已被删除
夏宇闻 发表于 2011-10-31 23:20:11 | 显示全部楼层
本帖最后由 夏宇闻 于 2011-11-1 08:25 编辑
夏老师,您好!我对FPGA很感兴趣,但我们学校用VHDL语言教~~~看了两个多月的书,上机也只是抄程序进去运行! ...
chenfzg 发表于 2011-10-31 20:15

学哪一种语言都无所谓。只是学了就要用,不断练习,从小项目做到大项目,才能有真功夫。世界上所有的学习都很类似,入门容易,真正精通就不容易了。
风中的承诺 发表于 2011-11-1 09:43:32 | 显示全部楼层
回复 134# 夏宇闻


    夏老师,FPGA时钟引脚,CLKn与CLKp做全局时钟有啥区别
yuexinwei 发表于 2011-11-1 11:21:41 | 显示全部楼层
夏老师:您好! 我学习FPGA有好几个月了,买了您的veilog教程看了两三遍了,基本语法已经掌握,能看懂和编写简单的代码,但是像有限状态机那块还不能独立编写代码,没有接触过具体的项目,不知道具体项目中怎么做。最近我们老师给买了一个赛灵思公司的spartan-6的开板,我下一步该怎么学习进步会比较大??希望夏老师给指一下!! 在这谢谢夏老师了
夏宇闻 该用户已被删除
夏宇闻 发表于 2011-11-1 20:16:14 | 显示全部楼层
本帖最后由 夏宇闻 于 2011-11-1 20:20 编辑
回复  夏宇闻


    夏老师,FPGA时钟引脚,CLKn与CLKp做全局时钟有啥区别
风中的承诺 发表于 2011-11-1 09:43



    不同类型的FPGA对于时钟信号的定义是不同的,所以必须针对具体芯片认真阅读说明书才能准确地利用时钟信号和其他信号。但从信号名看可能是正沿和负沿的差别,换言之相位差为180 度。
夏宇闻 该用户已被删除
夏宇闻 发表于 2011-11-1 20:29:39 | 显示全部楼层
本帖最后由 夏宇闻 于 2011-11-1 20:32 编辑
夏老师:您好! 我学习FPGA有好几个月了,买了您的veilog教程看了两三遍了,基本语法已经掌握,能看懂和编写 ...
yuexinwei 发表于 2011-11-1 11:21

语法学习必须与仿真工具的学习和使用同步进行。另外与FPGA的综合布局布线工具的学习和使用也必须同步进行。您必须学会Modelsim仿真器的使用,也要学会lSE,即Xilinx综合布局布线工具的使用。还要熟采这块开发板的使用,了解它的硬件和外围的资源,设计逻辑并利用FPGA固有的这些资源组成有价值的数字系统。
jahero 发表于 2011-11-1 23:03:09 | 显示全部楼层
夏老师好
1 为什么组合电路推荐用阻塞赋值,不用的话会产生什么害处么?
2 always@(*)
   begin
      a=b;
    c=d;
    e=f;(顺序执行)
    end
以上always块在后仿真的时候岂不是比以下always块延迟要大,组合逻辑电路延迟大了,岂不是很难满足高速时钟的建立时间?
always@(*)
   begin
      a<=b;
    c<=d;
    e<=f;(并行执行)
    end
望解惑
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2024-11-16 01:47 , Processed in 0.072015 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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