- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数字电路设计入门 fpga asic 转
一、首先要知道自己在干什么?
数字电路(fpga/asic)设计就是逻辑电路的实现,这样子说太窄了,因为asic还有不少是模拟的,呵呵。我们这里只讨论数字电路设计。实际上就是如何把我们从课堂上学到的逻辑电路使用原理图(很少有人用这个拉),或者硬件描述语言(Verilog/VHDL)来实现,或许你觉得这太简单了,其实再复杂的设计也就是用逻辑门电路搭起来的。你学习逻辑电路的时候或许会为卡拉图,触发器状态推倒公式而感到迷惑,但是其实有一点可以放心的是,实际设计中只要求你懂得接口时序和功能就可以了,用不着那么复杂得推倒公式,只要你能够用语言把逻辑关系表述清楚就可以了,具体这个逻辑关系采用什么门电路搭的,可以不关心,综合工具(synthesis tool)可以帮你处理。当然你要知道基本门电路的功能,比如D触发器,与门,非门,或门等的功能(不说多的,两输入的还是比较简单的)。-一句话,采用verilog或者VHDL描述设计对象的逻辑功能,这就是数字电路设计的任务!
说到这里入门必须要两个基本功:逻辑电路基础,硬件描述语言。有了这两个基本功,就算你其他都不会也能找到工作,呵呵,或许你会说,现在面试要问fpga,要问时序分析,有那么简单么?其实这些东西在你有了这两个基本功之后,其他的都可以慢慢学习。注意硬件描述语言和逻辑电路的学习可以同步学习,而且要牢记,学习硬件描述语言进步取决于你对电路的理解和你对仿真器的使用。为什么这样子说呢?因为硬件描述语言RTL(寄存器传输级)主要是用来给综合工具综合成电路的,所以要满足特定的coding style,这些coding style将对应这特定的逻辑,比如时序电路应该怎么写,组合电路怎么写,这是有一定约束的,为此若你对逻辑电路比较熟悉,你就知道自己写代码大体综合后会采用什么门电路来组成;另外,写代码就要仿真,这是不可以避免的-不仿真,你怎么知道自己写的代码符合设计的要求呢?能够熟练使用仿真器,你就有了调试代码的基本能力,否则,写再多的代码也没有用。这也是今天我感到兴奋的一个因素,目前正在使用vera验证语言,采用类C++的风格,对于习惯verilog的我开始还不习惯高级语言的调试环境,定位一个问题得花上一天;但是一旦你能够熟练使用编译仿真工具之后,你就会发现其实自己的很多想法可以很快的写成代码,并通过调试来提高自己对语言的理解。-学习的进步在于,把自己的想法用语言来实现,并调试验证是否正确。
二、如何入门学习硬件描述语言和数字逻辑电路
学习数字逻辑电路,我推荐的一本书就是-《数字设计-原理与实践》(其他的深入点可以看看《完整数字设计》;而对于硬件描述语言呢?有两个原则,一个是买书的原则,一个是看书的原则。首先,你必须买两类书,一类是语法书,平常使用的时候可以查一查某些语法;一类是,对语言的使用的讲解和使用的方法(如何书写RTL,如何设计电路,如何调试代码,使用仿真器等);我用过一年的VHDL和两年的Verilog;作为过来人,我想介绍一些比较好的书给入门者,避免大家走弯路。
VHDL语法书可以买希望出版社出版的《集成电路设计VHDL教程》,对于设计使用方面的书籍我要介绍的有三本:第一本边计年翻译的《数字逻辑与VHDL设计》,第二本是藩松教授出版的VHDL语言设计(现在有新版的),第三本就是铁道出版社出版的《VHDL与FPGA设计》胡振华;作为入门者,我建议使用Verilog入门,因为Verilog使用的比较简单,对电路的描述比较直接;VHDL是一门强类型的语言,语法比较严紧,但是其架构描述的方法相对于Verilog,在某些方面描述的层次稍微高了一点,比如用到包,函数重载,这些都是比较高级的东西,对于RTL级的硬件描述来说Verilog已经足够拉,当然,在验证和行为描述上,肯定是越高级效率越高。注意我们应该用最简单的语言来描述硬件功能。
Verilog语法书可以买西安电子科大出版的《VERILOG HDL数字系统设计及其应用》,俺的第一本Verilog入门书就是他拉,^_^粗略看了一遍,后来就当语法书用了。对于设计使用方面的书籍我要推荐的是:夏宇闻老师的VERILOG数字系统设计教程;当然《VERILOG HDL硬件描述语言》J.Bhasker也是一本非常好的语法书,另外想深入了解Verilog,做验证的应该看看Donald E.ThomasPhilip R.Moorby《硬件描述语言VERILOG》(第四版),对于Verilog设计方面的东西我也没有其他可以好介绍的,俺的第一个Verilog设计就是TD-SCDMA手机终端基带芯片的Viterbi译码器,其中涉及到Pipeline,Resource Share,Pingpong buffer,Circle Buf
文档评论(0)