本文是自己初步学习fpga的一个计划,由于这个月才开始接触的fpga所以可能有认识不足的地方 还请各位大侠指点
(ps本文涉及到的书籍大部分都能在网络上找到pdf档 利用好搜索引擎 和网盘搜索引擎即可 喜欢的话还是买纸质书比较好)
1,写在前面的话
为啥想学fpga?
其实上大学的时候就看到一些人在学习cpld,参加比赛,出cpld的开发板和书籍
当时对它的认识不以为然总觉得单片机和arm才是王道 (那个时候刚开始流行ARM7
毕业后也一直使用单片机和M3在做开发 没有涉及到大的和高速的系统
所以自己的知识勉强也够工作用 单片机 cortex-M3 双层pcb设计
因为公司是做安防的看到别人的视频处理和显示采用的fpga和dsp
另一方面自己也想提高下自己 所以也是在犹豫学fpga还是cortex-A8
这些天了解了下A8开发流程和fpga开发流程
后来决定学习fpga而不去学ARM LINUX原因有以下几点
1,ARM LINUX开发涉及到高速pcb设计,系统移植,驱动编写,应用程序设计等流程复杂,适合多人协同设计
自己学的话至少需要一年甚至更久才能实际开发做产品
2,fpga目前已经可定制的软核,CORTEX M系列硬核,CORTEX A9硬核,更有dsp块可供使
即可当逻辑用,也可作控制和应用用,一举三得,从这几点不难看出fpga的野心和前景之大
3,公司实际产品线情况未来可能要用到fpga开发
4,即便是将来要用arm开发我也只负责硬件设计即可 系统和软件可以交给计算机系的人来做 他们肯定比我更擅长
所以自己决定学习fpga另外在学习下高速pcb设计
从今年8月份开始到年底
学习方法:
开发板 书籍 视频 网络
核心内容
》》》verilog
》》》fpga设计思想,原则和技巧
》》》数字信号处理,音频,图像处理 |