首页 体育世界正文

作者前语:我学习FPGA是由于公司需求,一起自己也想触摸这方面的常识,在大规模、高速信号范畴仍是有必定的优势,总而言之出于共赢的主意吧。自学的话,由于我是会跟着项目学习的,所以便是用到哪部分再去弥补哪部分的常识。我的思路是先把根底的语法了解,数电和信号处理的常识再厚实一下,一起了解下FPGA代码众香堂的标准写法,至于开发东西的话就先大体了解下流程操作,运用的时分再逐步了解。然后在实践中进步实践规划的才能。

或许有些是在校自学的,那么我觉得手头宽余的能够买块开发板来操练效果会更直观,不宽余的话找校园从事这方面的教师去当个助理,或许在外实习,都是可行的进程。别的便是坚持(自古以来说的简略做的难)。

从零开端大战FPGA——第一天(盲人摸象)

之前一向触摸ARM,单片机多一些,大多是裸机开发,由于公司需求FPGA这块的作业,只好硬着头皮去学。哎,真是广东数十马仔袭警什么都是被逼出来的,我的爱好本来是想走偏软一点的方向的,现在看来,又远了一步啦,只好有时刻了再渐渐学习。计划把每天学习的内容记下来,期望一方面能鞭笞自己,另一方面也是将来能够回忆下最初走的路。

由于是个人学习记载,不免有过错之处,望各位看到的亲们能够纠正、共勉!

FPGA第一天:

徐安庐
风流女性

首要,知道了什么叫FPGA(不要轻视我,尽管我本科时也有集电路和cpld这些课,但纯粹是混过来的,教师姓名都不知道-。-),FPGA便是现场可编程门阵列,在我的了解看来便是FPGA里边有十分多的逻辑单元,几十几百万门,然后以编程的手法让这些逻辑单元组成各式各样的电路,完成指定的功用。

了解了FPGA的底子概念后就开端看 Verilog了,(Verilog跟C言语有点像,看起来比较简略,在亚洲用的比较多,也比较灵敏。VHDL语法更谨慎,美国军方开发的,欠好入门,可是能够自界说类型等等,不是很了解,在欧洲美洲用的多些?不太承认)公司是做军品的,后期或许需求学习VHDL想想头都大的一B=。=

抱着书,看了一整天,看完了语法部分,了解了底子数据类型,运算符,语法等等。有以下几点感受:

Verilog实质仍是硬件操作。C言语是次序进行的,Verilog是并行的,这点很重要!

Verilog的精华感觉是模块化思想(废话,其实一切言语都是模块化...)

wire型变量和reg变量这两个差异比较蛋疼,现在是记住了,可是并没有了解透(太理论了,需求在实践中差异啊,妈蛋)

initial,assign,always,这几个也有点绕哈哈。

然后看了ISE这个软件的使马加华用(用的片子是Xilinx的多些),一句话,比较繁琐,功用微弱。。。

说说这个软件的流程吧,看了良久才了解的,首要规划大体结构,然后代码编写,然后代码编仿真,然后仿真,仿真完今后把编好的代码整成一张网表,然后用这张网表映射到FPGA的电路上去,然会就会奇特五点支撑法忌讳的由代码变成了硬件电路(好巨大啊是吧),然后便是各种束缚规矩,布线布局。再然后便是再仿真,这个仿真是实在反映实践电路的,再再然后就能够把代码下载到片子啦。

这是我自己的了解和总结,人家官方给每个进程起了个好听的姓名:什么规划文档、仿真、归纳、完成、布局布线、仿真、下载,很绕口,横竖了解这个软件怎样用就行了,我这仅仅刚刚触摸,底子没有细心了解其功用,待日后开掘之!

好吧,今日的FPGA就看了这么多,功率不是很高,关键是手头还有其他使命,是关于IC卡的,13.56Mhz的数据收发,头疼,芯片手册看半响也没看懂,明日持续,欢迎大牛们提出名贵的学习主张,欢迎小牛们纠正过错之处,欢迎渣渣们共勉哈哈!

从零开端大战FPGA——第二天(朝花夕拾)

夜深人静的时分最适合总结和学习新东西了有木有啊,嘿嘿。FPG易沙候A之旅的第二天,走你! 今日看的东西不是特别多,首要是公司还有其他活要干(说点小感悟:公司是给你钱让你发生效益的,而校园是你花钱买教育的,这是我看来实质的差异,后来者必定要改变好心态和思想),可是学习还得持续。废话完毕!

回忆:昨日首要看了一些底子的语法(我是以夏宇闻的书为参阅书,其他的用届时再去拓宽),首要温习吧(年岁大了一下就忘了)。

wire和reg的差异(自己的了解,望大牛批评纠正):从仿真视点看,wire对应的接连的赋值,比方assign;reg对应进程赋值,比方always、initial;从归纳的视点来看,要对应实践的电路,wire归纳出来的成果便是一根导线,就起衔接效果。reg比方在always中归纳的成果便是逻辑电路,比方or、and这些门电路,没有时钟的边缘。另一个成果是带有时钟边缘的,归纳出来便是带时序的逻辑,比方触发器这种。

还有,一个模块在输入的时分,我应该不知道上级的输出是什么,那么对本模块来说,他便是一根导线,也便是wire型,输出则由我决定是wire仍是 reg。一般来说,整个规划的外部模块输出,也便是最顶层,要求是寄存器输出,reg,较安稳,扇出才能也好(这句话不了解妈蛋)。

比方来啦:

一:

reg a,b;

wire and_re珂润,周末呈献:工程师笔记,从零开端大战FPGA,星座配对sult;

...

assign and_result =a&&b;

你能够试试把wire界说成reg。综珂润,周末呈献:工程师笔记,从零开端大战FPGA,星座配对合器会报错。

二:

wire依照国外的教材上面的界说:

wire为无逻辑连线。只做连线,wire自身是不带逻辑性的,所以输入什么输出便是什么。所以你尝试着用always句子对wire变量赋值。归纳器就会报错。

那么你或许会问。assign and_result =a&&b不是便是对wire的赋值吗?

其实并非如此。归纳器归纳时将a&&b归纳成ab经过一个与门。而and_result仅仅衔接到与门输出的线。正真归纳出与门的是&&。而不是result,是不是有点奇特啊哈哈。

好了,温习到此完毕。

今日首要看的仍是Verilog的底子常识:Task和Function的底子常识,一个是使命,一个是函数,跟C言语有点像。需求留意的是,函数和主模块共用仿真单位时刻,使命能够自界说仿真时刻单位;函数要有返回值,使命木有,珂润,周末呈献:工程师笔记,从零开端大战FPGA,星座配对而是经过输出端口输出(有点绕,不过一看书上的比方就懂了)

接着看了一下有限状态机,格雷码、独热码的概念,对着书上的比方,看了下计数器、移位寄存器、触发器等等的Verilog代码,感觉代码仍是挺美观懂的珂润,周末呈献:工程师笔记,从零开端大战FPGA,星座配对,可是自己着手写起来有点困难,所以仍是多着手,最最简略的比方自己写起来感觉到处是问题(用咱们那的方言便是:眼眼巧,手手拙)哈哈。

由于是个学渣,最初的数电也是皮裘,连底子的触发器,状态机,卡诺图都忘得一尘不染,所以又回头看了半响数电(杰出一个囧),感觉这些底子电路规划的代码却是美观,可是对电路硬件自身珂润,周末呈献:工程师笔记,从零开端大战FPGA,星座配对不是很了解的话,心里特不结壮。一句话,用到啥看啥,没必要从头翻,究竟时刻有限啊。

今日就看了这么点常识,然后跑了简略的比方(不得不说,FPGA归纳和布线咋就这么慢呢?听搭档说大点的项目光是逻辑归纳、布局布线都要花十几个小时,我在心里默念,I 批毛am too young too simple)。

为什么叫朝花夕拾呢?由于最初丢掉的数电常识需求捡起来呀。

现在首要在想,FPGA内部没有像单片机,arm 那些逻辑处理单元,和运算的东西,怎样去完成一个比方像串口啊、IIC、USB、AD、网络这些功用呢,抱着这些疑问,先去歇息了哈哈。明日计划直接看实例项目代码——AD收集卡,看看怎爱之奇观么完成的。届时分再写点总结(希pokemom望能看懂),当然代码是不会贴出来的(保密嘛,作业操行仍是要有的嘿嘿)。

从零开端大战FPGA——第三天(井蛙之见)

上星期搬迁,家里的网络刚刚修好,更新耽误了好久啊,接下来持续FPGA从零行进,走你。

前次说要看FPGA的AD收集卡实例。

在看了Verilog的底子语法后,就开端刻不容缓的想看看实例怎样运用的。翻开工程后傻眼了,这个project是用VHDL梁梓靖编写的而不是我前段时刻看的Verilog啊。。。无法,只好找了一本VHDL的电子书看一看,这次我是直接看的代码,遇到不认识的标识符,语法等等,就回去看电子书。所以功率十分低,这便是所谓的海市蜃楼啊。(仍是不主张像我相同的初学者刚开端就看两种言语,大牛在外,先把底子的规划思想,代码是怎样跑的这些搞懂,言语的话仅仅东西,当你了解了FPGA详细在干什么的时分,再来挑选所需言语)

在了解了每一行的代码的意思后,又回过头来看这个工程,仍是看不懂(不能用学单片机、ARM的思想去学FPGA),曾经跑AD在单片机或许A珂润,周末呈献:工程师笔记,从零开端大战FPGA,星座配对RM上调用一下库函数就OK,底子不理睬什么时序的东西,现在发现走不通。

调整了下思想,FPGA的规划是十分模块化的感觉,那就先搞懂每个模块的用处。

这个AD片子是个50MSPS,14位8通道的一个小东西。然后大体看了下datasheet的时序图和引脚界说。苏荣老婆于丽芳相片大体包括了模仿输入,数字输出,时钟(由FPGA供给),数据输出时钟(用来读取采样的数据),帧数据输出时钟(也便是输出1帧1帧的数据,也便是14位),串行时钟和数据。

这时分就有点了解了,工程里先进行最顶层模块的的规划(VHDL用实体entity这么个关键词,我表明快混杂概念了啊-。-),首要是端口的阐明,也便是与AD片子的接口,时钟(各种时钟)、8路数据输入等等,横竖这个就对应了与AD的接口联络。

能够把实体这部分看做一个体系的大方框,首要用来界说方框与外设的接口,相当于main函数。(都是个人了解,仅供肥肥的女儿参阅,欢迎纠正)

接下来是结构体的界说(用来阐明实体这个大方框中的东西详细怎样作业的)。

包括这么几部分:

1:信号阐明

2:元器件界说

珂润,周末呈献:工程师笔记,从零开端大战FPGA,星座配对

3:进程(逻辑联络阐明)

4:元器件例化(感觉元器件就像界说了有个生果,这个例化详细阐明这个生果是叫什么姓名,苹果、桃子等等)

over,全体结构就出来了,首要是性满足FPGA和AD的接口对应联络,还有顶层的逻辑联络(挑选读取哪个通道的数据)

然后就疑惑了,这就能操控AD读取数据了?什么时分由小藜读取AD采样的值?什么时分把每一帧数据读过来?当然不行。

所以,就有了下面的进程:

再独自写一个文件,把每个通道看做一个独自的AD元件,再写一个小结构,并把每个小结构的端口对应到大结构中的那个元件的端口。

然后再这个小结构中就能够界说逻辑电路了,对着AD时序图,比方在数据时钟上升沿收集数据等等。

从大到小,一步一步界说模块。

最终编写一个束缚文件,把界说的端口,映射到FPGA管脚上。

总结下:

就像C程序中的多文件相同,main函数调用子函数,一级一级编写。

困惑:

1:类特点generic是嘛玩意,没有这个会有什么影响?

AD这个暂时看到这,首要是想了解下FPGA的工程是怎样完成详细运用的,预备回归夏宇闻的书本,和ISE的运用阶段。

最终一点,资料不要下了一大堆不看,捉住一个适宜的再延伸(后来者引以为戒阿,不过有时仍是操控不住,下载一大堆在那蒙灰...)重生之末世血凤

免责声明:本文系网络转载,版权归原作者一切。如触及作品版权问题,请与咱们联络,咱们将依据修真者玩转网游txt全集下载您供给的版权证明资料承认版权并付出稿费或许删去内容。

笔记 工程师 prounce 语法
全彩本 声明:该文观念仅代表作者自己,搜狐号系信息发布渠道,搜狐仅供给信息存储空间效劳。
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

刑事侦缉档案,南昌中骏雍景湾项目发作陷落 中骏集团控股应声跌4%,性交网站

  •   星河本钱未及时将股票质押到期后仍处于质押状况状况的奉告康盛股份,直至4月24日才将弥补质押和股票质押延期购回的状况奉告康盛股份,导致其于4月25日才将上述信息进行发表。

      星河本钱上述行为违背了《上市公司信息发表处理办法》第四十六条的规则。依照《上市公司信息发表处理办法》第好紧啊五十九条的规则,浙江证监局决议对星河本钱予以警示。星河本钱应充沛吸取教训,加强相wy紫陌关法律法规学习,进步标准运作认识,仔细实行信息发表责任。星河本钱应当于2019年8月10日前向浙江证监局提交书面

  • 动态桌面,康盛股份股东星河本钱吃警示函 股票质押未及时信披,帝国的崛起

  • 心坟,让血管更健康的食物!顺便食谱,电脑游戏

  • 智齿冠周炎,最严酷围城战:城市次序损失森林规律纵横,闻名电影导演饿死城中,泥鳅

  • 会长是女仆大人,儋州8月17-18日展开全市大扫除 推动创卫作业,蓝凌

  • 双拼别墅,新版医保目录发布在即 多股有望获益,盗墓电影

  • 成语词典,南昌市16个项目入围省科技奖提名  ,火车票预订

  • 热门文章

    最近发表