[請益] CPU時脈跟timer時脈的關係已刪文
想請問板友一個問題:
假設CPU的時脈是1000Hz: 每秒能處理1000個cycle
然後timer的時脈是100Hz: 每秒能測量100個cycle
今天我用timer量某個函數的效能是50Hz(每秒需要50個cycle)
那實際上這個函數所吃的CPU是: (1) 50Hz
or (2) 500Hz
我目前得到的結果論答案是(2), 就是用比例來算
也就是說, timer的50Hz佔其時脈50%, 所以就是佔CPU 50%, 所以就是吃CPU 500Hz
我不懂為什麼是這樣, 我也可以說timer的最大能力就是每秒測量100個
而今天他只測到50個, 所以就真的只是CPU的50Hz阿
我覺得是我不理解硬體實作timer的機制, 只是goolge CPU clock vs timer clock
沒找到什麼說法...
請幫忙解惑一下, 謝謝!
--------------------------------------------
我真實遇到的case是:
(a) 342MHz 的 DSP
(b) 24 MHz 的 DSP timer
(c) 44.1k 的 sampling rate
(d) 64 的 frame_size
然後對方提供timer量測cycle的函數, 我把start放在frame_process前, end放後面
end-start得出24337cycles, 然後對方就照下列這方式計算:
(24337/24M)/(64/44100))*342MHz = 238.9MHz
^^^^^^^^^^^^^^^^^^^^^^^
~69%
也就是說, timer量到的cycles數24337要等比例換算成DSP其實花了24337*(342M/24M)
我不懂為什麼是比例, 就跟一開始問的一樣
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.102.225.191 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/hardware/M.1690322563.A.EBF.html