FPGA常见的基本设计要点

描述

     FPGA的用处比我们平时想象的用处更广泛,原因在于其中集成的模块种类更多,而不仅仅是原来的简单逻辑单元(LE)。  仿真1)尽可能采用单一时钟;  2)如果有多个时钟域,一定要仔细划分,千万小心,同时设置时序约束;  仿真  3)跨时钟域的信号一定要做同步处理;  对于控制信号的异步处理是寄存器打两拍缓存;  仿真  对于数据信号的异步处理是异步fifo缓存,同时注意FIFO两侧的数据流的速率问题;  仿真  4)尽可能将FPGA内部的PLL、DLL利用起来,这会给你的设计带来大量的好处;  5)对于高速的IO接口,需对高速IO设置的delay约束。  仿真       FSM:有限状态机,FPGA最基本的程序设计之一。FSM分为moore型和merly型,moore型的状态迁移和变量无关,merly型则有关。  仿真  实际使用中大部分都采用merly型。  状态机的编码:二进制编码(Binary),格雷码编码(Gray-code),独热码(One-hot)。  仿真  状态机FSM一段式FPGA编码参考。  仿真  状态机FSM二段式FPGA编码参考。  仿真  状态机FSM三段式FPGA编码参考。  仿真  仿真  1)在组合逻辑always块中,if语句一定要有else。  2)在组合逻辑always块中,case语句的default一定不能少。  3)组合逻辑进程敏感变量不能少也不能多。  仿真  仿真1)模块仿真:针对每一个最小基本模块的仿真;           单元仿真要求代码行覆盖率、条件分支覆盖率、表达式覆盖率必须达到100%,这三种覆盖率都可以通过modelsim来查看,不过需要在编译该模块时要在Compile option中设置好。  仿真  2)集成仿真:将多个大模块合在一起进行仿真,覆盖率要求尽量高;  3)系统仿真:将整个硬件系统合在一起进行仿真。  此时整个仿真平台包含了逻辑周边芯片接口的仿真模型,以及BFM、Testbench等。系统仿真需要根据被仿真逻辑的功能、性能需求仔细设计仿真测试例和仿真测试平台。 审核编辑 :李倩

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分