社区导航

 
楼主: EEWORLD社区

你问我答,【夏宇闻老师专栏】与你一起探讨FPGA设计!

  [复制链接]

117

TA的帖子

0

TA的资源

一粒金砂(初级)

Rank: 1

发表于 2010-11-30 10:02:44 | 显示全部楼层
支持一下!!!!!!!!


回复

使用道具 举报

8886

TA的帖子

0

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

发表于 2010-11-30 10:20:01 | 显示全部楼层

感谢夏老师的回复,你说的这种可能经过排查,是不存在的。关键这个问题是,我在有问题的代码另外加一个D触发器进行二分频,最后运行过程中,这个二分频代码也停止翻转了!

一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!


回复

使用道具 举报

8886

TA的帖子

0

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

发表于 2010-11-30 10:26:34 | 显示全部楼层
夏老师,我提个问题,怎样提高串口通信程序的可靠性。我个人设计一个串口接收的代码,工作在2M的波特率,总是实际接收的环境中受到干扰,出现某个数据丢失的情况。如果这个这个串口接收代码在FPGA内部环回测试,一点问题都没有哦,请夏老师出招!!!!!!!!!!!!!!!,附件是我设计的串口程序代码,实际系统CLK 是20MHZ,RST是高电平,请夏老师提意见,提出改进措施, 外部条件没法改了 uart-gen.rar (6.13 KB, 下载次数: 158)
一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!


回复

使用道具 举报

207

TA的帖子

0

TA的资源

五彩晶圆(初级)

Rank: 7Rank: 7Rank: 7

发表于 2010-11-30 10:52:50 | 显示全部楼层
留个脚印,不带走一片云彩!
到底是学习ARM7还是学习STM32,纠结中,求指导。


回复

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2010-11-30 11:18:30 | 显示全部楼层

你的设计是否经过Modelsim 的RTL仿真,并且经过FPGA编译器和布局布线后的网表仿真?

如果没有,最好用仿真观察一下电路的工作状况。



回复

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2010-11-30 11:23:40 | 显示全部楼层
到FPGA 外部去,或者从外部到FPGA的信号,时钟频率不能太高,否则数据信号的接收或者发送不稳定是很正常的,稳定是不可能的。如果想要稳定接收,必须考虑时钟的同步,降低外部电路的时钟频率,增加必要的缓冲区和握手信号。


回复

使用道具 举报

8886

TA的帖子

0

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

发表于 2010-11-30 11:55:33 | 显示全部楼层

回复关于夏老师仿真问题,所有的设计符合时序设计要求,没有任务问题,经过仿真推敲了的,就是D触发器设计的二分频电路也是仿真过的。所有程序系统时钟工作在20MHZ,使用CYCLONE II  EP2C35 。

一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!


回复

使用道具 举报

8886

TA的帖子

0

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

发表于 2010-11-30 11:57:45 | 显示全部楼层
回复夏老师的第二个问题,关于串口问题,串口程序在FPGA内部能正确接收到数据的每一个包,在实际环境中就是由偶尔出错的问题。关于夏老师提出的增加RAM,缓冲,还有握手信号都我试过,还是不能解决问题。

点评

内部使用的是同一个时钟,外部的话是两个时钟,偏差大会导致误码率升高,可以提高时钟精度或降低波特率试试  详情 回复 发表于 2013-11-1 11:14
一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!


回复

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2010-11-30 12:03:31 | 显示全部楼层

感谢大家捧场

许多年轻人愿意学习FPGA设计,令我十分欣慰。但是学习FPGA设计很辛苦,需要费不少时间和精力才能学会Verilog和EDA仿真和综合工具。从只有基础知识开始,循序渐进,才能学会。一般情况下,3个月到半年的时间做练习是必须的,而且需要有整段的时间,一边看书,一边观察波形的变化,开动脑筋,才能理解语法和电路行为与结构之间的关系。

点评

谢谢 老师 以前我就是在这卡住了 代码写出来 不知道 时序怎么走的,或者给出一个波形,不知道怎么写代码。 只有每天不放弃的写代码,看波形,再写再看,知道熟练为止半年时间一点都不过分,从0基础一路走来,这是我  详情 回复 发表于 2012-8-31 17:47

评分

4

查看全部评分



回复

使用道具 举报

8886

TA的帖子

0

TA的资源

五彩晶圆(高级)

Rank: 9Rank: 9Rank: 9

发表于 2010-11-30 13:32:23 | 显示全部楼层

夏老师,有没有经典的你设计的接口模块供我们瞻仰、学习一下。比如PCI 接口模块,串行通信接口模块等等,

一个为理想不懈前进的人,一个永不言败人!
http://shop57496282.taobao.com/
欢迎光临网上店铺!


回复

使用道具 举报

269

TA的帖子

0

TA的资源

一粒金砂(高级)

Rank: 3Rank: 3

发表于 2010-11-30 13:41:10 | 显示全部楼层
正在苦啃I2C总线呢
努力就有不清不楚的收获。


回复

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2010-11-30 16:00:14 | 显示全部楼层
原帖由 eeleader 于 2010-11-30 10:20 发表 感谢夏老师的回复,你说的这种可能经过排查,是不存在的。关键这个问题是,我在有问题的代码另外加一个D触发器进行二分频,最后运行过程中,这个二分频代码也停止翻转了!

 

 

你的设计是否经过Modelsim 的RTL仿真,并且经过FPGA编译器和布局布线后的网表仿真?如果没有,最好用仿真观察一下电路的工作状况,是否存在不可靠的临界情况或者条件。



回复

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2010-11-30 16:02:29 | 显示全部楼层

原帖由 wall_e 于 2010-11-30 13:41 发表 正在苦啃I2C总线呢

 

我书上的例子非常重要,必须彻底读懂,自己才能独立编写出有实际意义的程序来,否则做真的设计很难坚持。



回复

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2010-11-30 16:03:47 | 显示全部楼层

原帖由 eeleader 于 2010-11-30 10:26 发表 夏老师,我提个问题,怎样提高串口通信程序的可靠性。我个人设计一个串口接收的代码,工作在2M的波特率,总是实际接收的环境中受到干扰,出现某个数据丢失的情况。如果这个这个串口接收代码在FPGA内部环回测试,一点 ...

 

到FPGA 外部去,或者从外部到FPGA的信号,时钟频率不能太高,否则数据信号的接收或者发送不稳定是很正常的,稳定是不可能的。如果想要稳定接收,必须考虑时钟的同步,降低外部电路的时钟频率,增加必要的缓冲区和握手信号。


回复

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2010-11-30 16:11:37 | 显示全部楼层

原帖由 eeleader 于 2010-11-30 11:57 发表 回复夏老师的第二个问题,关于串口问题,串口程序在FPGA内部能正确接收到数据的每一个包,在实际环境中就是由偶尔出错的问题。关于夏老师提出的增加RAM,缓冲,还有握手信号都我试过,还是不能解决问题。

 

只要在器件的技术指标范围内,具体问题一定能够得到解决。如果数据量十分大,又有异步时钟,偶然的个别位的错误不可能避免,只能通过检错或自动纠错编码解决。



回复

使用道具 举报

699

TA的帖子

0

TA的资源

五彩晶圆(中级)

Rank: 8Rank: 8

发表于 2010-11-30 16:19:13 | 显示全部楼层

原帖由 eeleader 于 2010-11-30 13:32 发表 夏老师,有没有经典的你设计的接口模块供我们瞻仰、学习一下。比如PCI 接口模块,串行通信接口模块等等,

 

我这里有一些适合作为工程师教材的原始程序,例如我书上的i2c程序和risc_cpu程序,都是正确的。您如果抄书上的程序调试不通,可能因为书稿经过word 系统转方正排版系统后,出了一些错误,编辑没有发现。读者逐行调试,通过错误报告其实不难发现。



回复

使用道具 举报

271

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2010-11-30 19:47:32 | 显示全部楼层
俺就是买的夏老师的书……
支持一下。


回复

使用道具 举报

1039

TA的帖子

1

TA的资源

纯净的硅(高级)

Rank: 6Rank: 6

发表于 2010-12-1 09:44:22 | 显示全部楼层
希望夏老多传授一些学习的方法和思维的方法


回复

使用道具 举报

6039

TA的帖子

13

TA的资源

裸片初长成(初级)

Rank: 10Rank: 10Rank: 10

荣誉会员勋章

发表于 2010-12-1 10:36:33 | 显示全部楼层

夏老师亲临

给力啊


回复

使用道具 举报

23

TA的帖子

0

TA的资源

一粒金砂(中级)

Rank: 2

发表于 2010-12-1 16:23:58 | 显示全部楼层

夏老师好!

最近,我刚下载quartus 9.0和买了硬件!大学里入过门,现在想重新学习一下,以前学过VHDL语言,我想先温习一下,再学软件quartus!


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

  • 论坛活动 E手掌握

    扫码关注
    EEWORLD 官方微信

  • EE福利  唾手可得

    扫码关注
    EE福利 唾手可得

Archiver|手机版|小黑屋|电子工程世界 ( 京ICP证 060456 )

GMT+8, 2018-12-12 19:52 , Processed in 0.502208 second(s), 16 queries , Gzip On, MemCache On.

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