一、开发中注意事项1.在C仿真中建议勾选Clean Build这个选项不管是launch debug还是其他模式都建议勾选Clean Build用于将上次仿真设计的一些文件清理防止上次仿真文件的干扰。2.尽可能使用assert对边界进行约束设计3.C/RTL协同仿真是必须要做的可以检查Timing时序死锁stream空满挂死4.C仿真和rtl仿真是两码事C仿真过了只能说代码的逻辑结构没有问题不等于硬件逻辑设计没有问题RTL仿真通过才是安全的。二、编程需要的事项1.尽量不要追求通用性通用性的代价就是性能和资源的双重受限。FPGA本来就是为了定制而生你非要做通用设计那么在对性能和资源要求高的场合那是并不合适的。2.数据类型的转换必须显式表示ap_fixed,float不要直接做比较不要直接做赋值不要直接做运算必须要强制转换。三、II和latency至关重要1.II1永远要追求所以函数规模不能太大否则II难控制LUT会爆掉所以循环规模不能太大否则II难控制LUT会爆掉如果设计II达不到那么建议拆分函数然后使用stream dataflow串联四、最难排查的就是deadlock挂死问题死锁FIFO 深度不足、速率不匹配、Stream 空 / 满。五、设计模式的推荐1.大函数推荐拆分为小函数然后stream串流再加dataflow/task实现并行big_function multi_little_function stream dataflow优化设计2.设计先宏观架构和时序流程图然后再coding