原创 浅谈FPGA学习之思想与状态机的碰撞(上)

2016-3-29 09:30 1058 5 6 分类: FPGA/CPLD

      FPGA设计不是简单的语言描述,更应关心它的底层逻辑实现。状态机不仅仅是一种时序电路的设计方式,更是一种思维模式,能够让人理顺思路,攻克设计中的难点。希望把这些点滴记录下来,以便强化FPGA设计思想,将自己的不足呈现出来,供大家批评

我在FPGA的板子上做了8051的简单功能的实现,目的在于熟悉Quartus环境与语法的使用。我发现FPGA的学习只是刚刚开始,毕竟我还是太年轻。

在学习中,抛开书本,自己独立尝试新的设计,很是吃力。我知道我遇到麻烦了,很多东西知道涵义,但表达出来却是十分苦难。我意识到我的知识还不成架构,没有一个清晰的体统条理。我为什么要写这样的语言,是因为我看了他人的模块,学习书本上的方法。但学以致用,知识迁移还存在很大问题。而最大的问题是,我知道问题,可我无法解决。

我承认学习是一个效仿的过程,但设计的思想是自己养成的。早期的可编程设计是根据原理图输入,工程师知道自己要设计什么,于是对应的电路图有了。于是后来才在原理图的基础上将语言代替逻辑设计,简化了设计的复杂度,渐渐语言描述流行起来,语言描述分析综合,在RTl网表中呈现逻辑电路。我发现我的设计是已知语言再去拼凑我的设计现实,结果只是差强人意吧,没有从根本上解决问题。

在数码管动态显示设计中,原理很简单,控制显示时间,控制发光管的电平输出实现效果。但我设计中,总会疏忽一些考虑,在仿真验证中错误不断。我开始怀疑是仿真软件的问题。于是开始板级验证,可想而知,结果是注定失败的。也许我会检查到错误,但结果没有意思,因为我的设计思维就是一个问题。没有清晰地条理,浪费的时间可想可知。无意间 ,在网上博客中找到一篇以原理图设计为主,还原语言实现的设计思想吸引了我,思路清晰,值得我学习。数码管动态显示呈现原理设计:分频器—显示时间控制;移位寄存器—位选选择;多路选择器、查找表—位选对应的0-F段选显示。依照原理图对应语言描述就清晰了不少,具体实现不加赘述。

不是因写代码而拼凑设计,而是根据设计需要选择合适的语言描述。这是我体会最深的一点。为写而写,是学不好的。没有扎实的数电知识,没有原理图与语句之间的丰富联想,没有熟练的逻辑设计思维,想要利用FPGA从事优秀的设计开发,可能还需要天赋吧。然而我还没有这份自信。

备注:我会在智慧科技(优先)、EDN、电子产品世界更新内容,信息不涉及商业用途

PARTNER CONTENT

文章评论1条评论)

登录后参与讨论

houzelong_108081826 2016-3-31 14:55

的确是需要先设计时序,语言描述只是实现的方法而已。
相关推荐阅读
用户1826666 2016-04-17 20:44
自平衡小车从入门到放弃
文章风格不同与以往,带着随意写下我不擅长的所谓自平衡,在意者慎入。我不知道该如何写这篇文章,因为一提到制作自平衡小车的时候,我是拒绝的,其中缘由不谈也罢。我很少接触控制类的项目,也就略显羞涩了许多。跟...
用户1826666 2016-03-23 21:57
浅谈FPGA学习之奇葩分频体验
前几天在一家做逻辑设计的公司里做了一道笔试题,有些心塞。用Verilog HDL描述三分频的实现。说实话,一开始我是拒绝的。我之前做过分频实验,几百毫秒的LED闪烁,控制蜂鸣器发出不同音频段的声音,都...
用户1826666 2016-03-21 10:06
浅谈FPGA学习之逻辑初体验
        校招未至,社招先行。网投了几家公司,基本都有回复,算是多一些机会吧。几天忙在笔试与面试中,说实话,社招公司对项目经历更看重,相应能力要求就更高。但面试输不在气场,人总要尝试,只要能...
用户1826666 2016-03-06 12:25
浅谈GSM远程图像传输及拓展
一、硬件平台        主控芯片选用STC12系列单片机(双通道232),GSM通信模标准(SIM300),VC0706串口摄像头。 二、功能实现        用户发送拍照的短息...
用户1826666 2016-02-21 03:26
夜寂寥、生活、随笔
行走中的反思     离上次写随笔有一年光阴了,写在冬天可能它给人的冷静更多些吧。感到欣慰的是今年陪伴外婆的时间比以往长许多,也会主动去关心他们的身体状况。可能是外婆得病后我更能体会这份情谊的...
EE直播间
更多
我要评论
1
5
关闭 站长推荐上一条 /3 下一条