|
。
简单的回答是:如果团队有明确的分工,你只负责数字电路设计,而在FPGA上deploy有别人负责,那么的确不一定需要有实体板子来开始学习,只需要学好数电,知道什么样的Verilog语言对应什么样的RTL逻辑,Verilog和System Verilog中什么样的语句是可以被综合的,什么样的是不能被综合但适合用在testbench里的,什么样的是能不用就不用的,什么样的逻辑会造成更长的path delay,这样再外加一个好的模拟器,就够了。不过实话说,这样学出来的最多只是一个合格的RTL设计工程师,而不是一个FPGA工程师,但的确还是能在FPGA开发过程中对团队起到很大的作用如果是要负责到能在板子上跑起来的话,那送题主一句硬件行业的常见吐槽: "Assume hardware does not work, unless proven otherwise" (在证明硬件能正常工作之前,一律假设是不能工作的)。从可以被成功模拟的HDL到能在FPGA上跑起来的Verilog之间还隔了很多很基本但很重要的问题,以下只是随意列举一些,不分先后1. 各式FPGA上的内存控制器带来的问题2. 高速IO端口的使用和多板互联带来的通讯问题。3. 设计可靠性的分析4. 设计开销的分析:怎么样才能把某个设计挤到一个LUT数量很有限的FPGA里5. 异步信号什么时候需要buffer, 需要buffer多少才够6. 同样的Verilog是否会因为参数不同而被综合成不同的硬件形式(比如同样是readmemh写出来的ROM,大小不同的时候都会被综合成啥)7. 工具的综合时的优化可能会带来哪些功能上的问题8. ChipScope和DebugCore的使用和其对性能造成的可能影响。 9. Xilinx其他各式IP core的使用和隐藏问题 (超级大坑,比如一个GTX transceiver光文档就将近500页) |
|