学了好长一段时间FPGA一直不知道学什么,看看时序,看看状态机。看到一篇文章说学习FPGA说学习FPGA开始时联系像串口的模块、流水灯,接着要研究有深度的状态机像sdram,然后是更深的了解FPGA的内部结构像编写DDR,最后再就是学习一下USB或者是网口。我以前看过sdram感觉太深奥就一直拖着没哟深入,但自从听到高手这么说,我也就有信心了,我相信我不必一般人差。
首先我看别人写fpga的经验博客,大家都说关于SDRAM的原理推荐一篇“高手进阶 终极内存技术指南”(百度文库内有)的文章,我就花了两天时间看了前一半讲关于SDRAM的,后一般DDR的内容以后再看。最后从图书馆借了一本特权的《深入浅出玩转FPGA》上面有一点关于sdram的verilog的程序,花了两天看程序。第一次看这么长的程序吧,发现自己对以前的知识又有了了解,什么两端状态机。最后在纸上画时序图,就是发现特权同学的例程读时序好像有问题感觉多延时了几个时钟,把他的程序改了改下到我的板子上,串口发的都不对。
感觉有点灰心,自己从新写吧,又听说有什么时序约束。时序约束也不是太懂,又是查资料看看别人的经验博客,最后好像是懂了。最后参考特权的例程从新写吧,写了一个最简答的就是突发写一个读一个验证师傅正确。各种仿真调试一通,最终仿真无误下载ok.
我用的sdram芯片是k4s561632n-lc75, 通过这个SDRAM的例程,学到很多:附件中包含整个工程,可以进行modelsim仿真(注意modolsim的路径要更改),
1,状态机要有规范,一般写成两段式或者三段式。方便编程也方便调试。
2,以前很少用?:这个条件命令发现我应该多用他,简单;
3,`define的预处理命令挺好,常量parameter,和引用头文件`include
用户432057 2014-6-24 16:28
用户428511 2014-4-23 22:13
用户1512277 2014-3-19 12:41