配色: 字号:
FPGA设计进阶技巧(一)-FPGA帧率采样计算
2018-09-13 | 阅:  转:  |  分享 
  
FPGA网络培训班/FPGA项目
QQ:1465177751王工
5.从CMOS_FPS_DATA<=fps_data>>1中可以看出是通过<=
fps_data>>1右移一位,也就是说除以2得到这个值的;
6.为什么要fps_data除以2来得到这个值?于是反推到
if(delay_2s==0)这个条件。
现在作者的意图就非常清晰了。满足帧数率的情况下不断+1,到
2秒时间时根据统计结果除以2,由此得到1秒时间的帧数。到此为
止,我们已经可以非常容易的看懂这个代码了。
通过反推法我们也能比较容易的去看代码是否有错误。首先我们
去知道代码需要实现的功能,通过反推法得知是通过什么方法实现
的,进而仿真时定位其目标,去看该代码是否完成了功能。如果没有
完成功能,那么代码就有误。
对于学习者来说,反推法的意义还不仅在此。在本例中,这个设
计思路完全满足功能要求。展这时,我们应该扩思考,本例是通过2
秒来实现功能,为什么要用2秒?是否可以直接通过1秒,或是3秒,
或是其他方案来实现呢?各种方法的优缺点在哪里?通过反推法得
知作者实现项目的方法并思考,这种方法正确还是错误?如果是错误
或者这种方法不太好,那么我们如何避免?如果是优秀的代码,我们
如何借鉴并能举一反三地运用到其他项目中去?本例只是选取项目
中的一个小的节点,对于看整个项目的代码来说可以运用反推法吗?
敬请关注下一节。
献花(0)
+1
(本文系mdykj33首藏)