FPGA学习verilog代码的经验总结

学习FPGA其实也不算久,开始的时候参考别人的代码并不多,大多是自己写的,那时候做时序逻辑多一些。参加了中嵌的培训班,一个多月的时间在熟悉ISE软件的使用以及     verilog   语法方面下了苦功,也参考了不少书,算是为自己打下了比较好的基础。因为那时候培训的方向是软件无线电方面的,所以做了很多有关的模块程序,之前的日志里也发表了很多,关键是一个兴趣,感觉仿真后看到自己的一个个算法思想得到实现真有成就感。后来停了一段时间,因为实在没有比较有意思的活干了。

直到前段时间开始使用SP306的开发板,然后会参考它们的代码,受益匪浅吧。现在组长已经给正活干了,跟的大项目我是基本都有所熟悉了,然后那个里面做总控的FPGA的代码开始进行总攻了,要把前辈们的代码都消化了,然后更好的为下一代升级版的产品服务。这个看verilog程序估计是大家都比较头疼的事,小的模块都没问题,大模块大项目,有时候就比较难以入手了,因为HDL的设计是不同于软件编程的,软件其实无非一个大while或者再有一些中断,大多是顺序执行的,慢慢一步一步往下走总会弄明白。HDL的并行性很强,要是你按照软件的思路来那肯定行不通,那么该怎么办呢?我就班门弄斧说点自己的一点快速进阶的小窍门吧。

既然HDL设计是并行的,那么就只能各个击破了。我的习惯是先抓几个重要端口,比如     时钟   (CLK)、复位(RESET)等出现频率比较高的端口,把它先弄清楚,比如时钟是什么频率的?复位是高有效还是低有效?

 FPGA学习verilog代码的经验总结_设计制作_MEMS/传感技术



然后呢,最好是对照原理图来理解程序。这就需要你有一定功底的硬件常识了,一些常用器件的操作时序什么的一定要做到心中有数,至少要知其一二吧,这样在读程序时才会达到事半功倍的效果。比例说你要先读懂FPGA与AD芯片的程序,那么你先把AD的各个端口(如片选,读写,转换,转换完成中断等端口)在verilog程序中出现的地方多做一下分析,比如我找CS信号,看看什么时候它拉低有效,那么你可以在Find in file窗口中输入CS,然后EN     TE   R,这样ISE就会在底层的信息窗口中罗列出所有使用了CS信号的语句方便你的查找分析,你把每个出现CS的地方分析到了,那么你就明白verilog在硬件上是如何操作CS信号的。所有信号多分析完以后,我想你就明白了这个AD与FPGA的接口了。
读懂verilog有时比较累,因为程序是别人写的,你要让别人牵着鼻子走也是难免的。关键是要有耐心,多分析,有条件可以问问高手(最好是代码的作者)。



43
83
0
7

相关资讯

  1. 1、搜狗AI录音笔S1/E1正式发布录音笔行业迎来新“声态”1194
  2. 2、在业务中使用人工智能的四种最佳应用领域4169
  3. 3、敏捷项目经理的两个条件及其四个责任领域5014
  4. 4、《晴雅集》总票房4.51亿!郭敬明其实根本就没亏3424
  5. 5、哈弗11月整体销量突破10万辆!个个顶流H6热度爆表1556
  6. 6、区块链如何改善AI2848
  7. 7、软件需求分析的方法有哪些?1334
  8. 8、什么是产品设计心理模型?应用哪些领域?2301
  9. 9、大数据产业发展趋势如何?大数据产业发展前景怎么样?2701
  10. 10、学会Python究竟能做什么?943
全部评论(0)
我也有话说
0
收藏
点赞
顶部