FPGA经验谈

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

寒假学习经验谈

今年的寒假时间相比往年少了很多天,但是相比去年而言,今年显得尤为重要,自己很重视这次的留校,尽自己的努力学习。

寒假的学习分为两个阶段,第一个阶段:全面的对单片机做一个总结,用了将近十天的时间,单片机是以后学习的基础,要想走的远,基础要打好,单片机的外设模块一个一个的走了一遍,具体的就不多说了;

第二个阶段:对EDA的入门学习,选择学习EDA是经过我的深思熟虑才做出的决定,总的说来,EDA的学习有十三天左右,因为是入门阶段,学的东西比较基础,有些知识很容易理解但却很容易遗忘,同样有些知识就不能理解,模模糊糊的。初学EDA ,先要学习的是Verilog 语言,Verilog语言是对硬件的描述语言,在很多地方与C语言不同,存在着很大的差异性,例如在写代码的时候,要在开头定义所有的输入量和输出量,还应该定义位宽,在一个.V文件中只能有一个模板module—endmodule ;我自己感觉,在用V语言写代码的时候,应用比较多的还是always语句、case语句、if-else语句,说实话,也就这些个语句能够明白,其他的语句可能是用的比较少,知道其用法的像assign顺序执行语句、fork-join 并行块,task-endtask任务语句,不过在使用fork-join语句的时候一直出现错误,错误显示fork-join语句不可综合,但是资料上和听学长讲,fork-join语句是可以综合的。在V语言中,若使用数据类型的时候没有定义位宽,系统会有默认值,如INT数据在未定义时,位宽是32位,reg存储型数据位宽默认值也是32位,还有一点就是在使用assign语句的时候,若为定义,系统默认为连线型数据wire。

Verilog编写代码时出现的错误和警告:

Error (10112): Ignored design unit "bingxing" at bingxing.v(1) due to previous errors

:严重错误多是头文件的问题;

Error (10170): Verilog HDL syntax error at paobiao.v(26) near text "always"; expecting "@", or "end", or an identifier ("always" is a reserved keyword ), or a system task, or "{", or a sequential statement :错误原因:看起来无从下手,其实是在写代码的时候,begin end缺失或者是在结束处未加;等;

Warning (10034): Output port "cnt4" at Verilog1.v(3) has no driver :定义了cnt4,但是没有使用;

Warning (10230): Verilog HDL assignment warning at jishu.v(19): truncated value with size 32 to match size of target (4) :使用数据的时候没有定义位宽如:cnt<=cnt+1 (1’b1)

在写V代码的时候会遇到很多的警告,有些警告如共多少个管脚、未使用管脚没有接地、未配置管脚、未配置EPPROM等这些警告是可以忽略和消除的,还有一些警告如某管脚没有逻辑功能等就要重视了;

EDA的学习是一项长期的事情,不能够追求进度的快慢,要打好基础,一步一步的走。总结起来EDA的学习一定要坚持。

相关文档
最新文档