
1、工欲善其事,必先利其器。
计算机必不可少。目前 FPGA 应用较多的是 Altera 和 xilinx 这两个公司,可以选择安装 quartusII 或者 ISE 软件。这是必备的软件环境。
硬件环境还需要下载器、目标板。虽然有人说没有下载器和目标板也可学习 fpga ,但那 总是纸上谈兵。这就像谈女朋友,总是嘴上说说,通个电话,连个手都没牵,能说人家是你 朋友?虽说搭建硬件环境需要花费,但想想,硬件环境至多几百元钱,你要真的掌握 FPGA 的设计,起薪比别人都不止高出这么多。这点花费算什么?
2、熟悉 verilog 语言或者 vhdl 语言 ,熟练使用 quartusII 或者 ISE 软件。
VHDL和 verilog 各有优点,选择一个,建议选择 verilog 。熟练使用设计软件,知道怎样 编译、仿真、下载等过程。
起步阶段不希望报一些培训班,除非你有钱,或者运气好,碰到一个水平高、又想把自 己的经验和别人共享的培训老师, 不然的话, 培训完后总会感觉自己是一个冤大头。 入门阶 段可以在利用网络资源完成。
3、设计一个小代码,下载到目标板看看结果
此时可以设计一个最简答的程序,譬如点灯。如果灯在闪烁了,表示基本入门了。如果 此时能够下载到 fpga 外挂的 flash , fpga 程序能够从 flash 启动 , 表明 fpga 的最简单设计你已 经成功,可以到下一步。
4、设计稍微复杂的代码,下载到目标板看看结果。
可以设计一个 UART 程序,网上有参考,你要懂 RS232协议和 fpga 内置的逻辑分析仪。 网上下载一个串口调试助手,调试一番,如果通信成功了, 恭喜,水平有提高。进入下一 步。
5、设计复杂的代码,下载到目标板看看结果。
譬如 sdram 的程序,网上也有参考,这个设计难度有点大。可用串口来调试 sdram ,把 串口的数据存储到 sdram ,然后读回,如果成功,那你就比较熟悉 fpga 的设计饿了
6、设计高速接口,譬如 ddr2或者高速串行接口
这要对 fpga 的物理特性非常了解,而且要懂得是时序约束等设计方法,要看大量的原
厂文档,这部分成功了,那就对 fpga 的物理接口掌握很深,你就是设计高手了
7、设计一个复杂的协议
譬如 USB 、 PCIexpress 、图像编解码等,锻炼对系统的整体把握和逻辑划分。完成这 些,你就是一个一流的高手、
8、学习再学习
学习什么,我也不知道,我只知道 “ 学无止境,山外有山 ” 。
以上步骤仅供参考。
