天天看點

如何在FPGA中進行分頻

     在設計動态掃描8位7段數位管 時,由于同時要驅動8位數位管,為了能持續看見數位管上面的顯示内容,必須對數位管進行掃描,即依次并循環地點亮各個數位管。

     利用人眼的視覺暫停效應,在一定的掃描頻率下,人眼就會看見好幾個數位管一起點亮。每個數位管的功耗較大,如果所有的數位管一起點亮,其功耗較大。利用掃描的方式,每個時刻隻有數位管是亮的,可以大大的減少功耗。

  掃描頻率大小合适效果才好。太小,每個數位管開啟的時間大于人眼的視覺暫停時間,那麼會産生閃爍現象。掃描頻率太大,會造成數位管的頻繁開啟和關斷,大大增加數位管功耗(開啟和關斷的時刻功耗很大)。

這裡我們設計一個從系統時鐘得到1Khz的掃描時鐘為例:

     系統時鐘:50MHZ      T:20ns

     設計時鐘:1KHZ         T:1ms    進行2分頻:0.5ms=500000ns

     需要計數次數: 500000%20=25000次  即需要15位寬

即  reg [14:0]   divider_cnt;

如何在FPGA中進行分頻
如何在FPGA中進行分頻