1. 程式人生 > >執行一條指令需要多少個時鐘週期?

執行一條指令需要多少個時鐘週期?

所謂見微知著,我想對於CPU的時鐘週期來說就是這個道理。

考慮一道題:與CPU的CPI無關的因素是:   A時鐘頻率    B 系統結構   C 指令集    D計算機組織

答案是A。

與我理解中的完全不同。那麼我們平時是怎麼算CPI的?

對,有的時候由於指令裡面混合指令數不同,算平均CPI(此處說明指令集影響CPI.)。

不經意間發現了我還真沒怎麼算過CPI.解題中通常同時告訴了 CPU的時鐘頻率,和CPI。這是否就說明了兩者無關?

時鐘週期的定義:是CPU中的最小的時間單位,每個動作至少需要一個時鐘週期。

                              我覺得把它理解為晶振週期會更好,在自己腦袋裡想象出一個晶體,以非常非常快的速度在振盪,然後CPU就可以工作了。好吧,在此我又想到了心電圖.......

而一條指令的時鐘週期數實際上是很複雜的,採取了流水線結構以後,可以有效的並行指令,使在一個時鐘週期內就可以輸出一條指令。這屬於處理器體系結構設計的問題。

總結:系統結構,指令集,計算機組織都會影響到CPI。時鐘頻率不會影響到CPI,但可以加快指令執行的速度。若一條指令的執行需要10個時鐘週期,則執行這條指令時鐘頻率為1GHz的CPU比100MHz的CPU要快。

總是在寫寫寫的過程中,腦袋裡又蹦出新的問題 ,我想這就是總結對我的意義吧。

之前做過的一道真題:

這是一道非常詭異的題目。指令週期為一個時鐘週期。怎麼會這樣呢?

好吧,這道題還是沒有搞懂!!!!!期望大神給我解答啊。。。。