PCDVD數位科技討論區

PCDVD數位科技討論區 (https://www.pcdvd.com.tw/index.php)
-   效能極限 (https://www.pcdvd.com.tw/forumdisplay.php?f=18)
-   -   為什麼cpu流水線深度增加能有助提高頻率? (https://www.pcdvd.com.tw/showthread.php?t=289711)

taikinip 2004-01-10 02:40 PM

為什麼cpu流水線深度增加能有助提高頻率?
 
一個技術上的問題:
為什麼cpu流水線深度增加能有助提高頻率?煩請各位高手幫忙解答一下.

superscalar 2004-01-10 03:14 PM

減少每時脈要過的邏輯Gate

netfriend 2004-01-11 01:46 AM

把CPU的pipeline想像成一條工廠的生產線
(當然實際的pipeline還有很多其他東西要考慮Ex:brench)
上面有10個女工分別負責一段組裝(pipeline stage)
全部的女工聽工頭(clock)的口令,一個口令作一次組裝

當工頭的口令愈來愈快(clock rate提高)
就會出現有女工手上的工作不能在口令間隔內完成
生產線就會錯誤(hazard)

如果把女工增加(提高pipeline stage depth)
每個女工負責的工作就少了
所以口令可以下的比較快
女工也不會忙不過來

所以增加女工數目,可以提高工作頻率

nzcym 2004-01-11 04:16 PM

"cpu流水線深度增加能有助提高頻率? " 前提是不要遇到 JMP 指令, 遇到 JMP 之類的跳躍指令就要清空 pipeline, 而且階數愈高的 pipeline, 處罰代價 (延遲時間) 愈大. 當然這問題也不是完全無解, 例如加入分支預測電路, 在 compiler 裡埋下暗樁 (命令 CPU "decode unit 1" 把沒跳的指令都抓進來解碼, 再讓 "decode unit 2" 把 JMP 跳到的指令都抓進來), 用多條流水線來執行, 再把最後的計算結果合併起來 .... 這問題有著幾乎是無限多的解決方案.

"However, the only limitation is your imagination. " 解決方案只受限於思考者的想像力. 考試分數的高低決定於老師對答案的鑑賞力, 只是古典, 廣為人知的答案大概都能夠獲得一定的高分, 但是不保證能夠申請電路設計專利. 這就是單純 教學, 考試, 和靠研究工作混飯吃不同之處.

realshame 2004-01-12 07:59 AM

好讚喔!!
在pcdvd又上了一課~~
而且對我來說相當重要的一課!!感謝~~

萊茵哈特 2004-01-16 02:01 AM

引用:
Originally posted by netfriend
把CPU的pipeline想像成一條工廠的生產線
(當然實際的pipeline還有很多其他東西要考慮Ex:brench)
上面有10個女工分別負責一段組裝(pipeline stage)
全部的女工聽工頭(clock)的口令,一個口令作一次組裝

當工頭的口令愈來愈快(clock rate提高)
就會出現有女工手上的工作不能在口令間隔內完成
生產線就會錯誤(hazard)

如果把女工增加(提高pipeline stage depth)
每個女工負責的工作就少了
所以口令可以下的比較快
女工也不會忙不過來

所以增加女工數目,可以提高工作頻率


解釋的真好 淺顯易懂

Twinsen 2004-01-16 03:38 AM

引用:
Originally posted by netfriend
把CPU的pipeline想像成一條工廠的生產線
(當然實際的pipeline還有很多其他東西要考慮Ex:brench)
上面有10個女工分別負責一段組裝(pipeline stage)
全部的女工聽工頭(clock)的口令,一個口令作一次組裝

當工頭的口令愈來愈快(clock rate提高)
就會出現有女工手上的工作不能在口令間隔內完成
生產線就會錯誤(hazard)

如果把女工增加(提高pipeline stage depth)
每個女工負責的工作就少了
所以口令可以下的比較快
女工也不會忙不過來

所以增加女工數目,可以提高工作頻率





所以女工人數(管線)增加,例如負責的產品(指令)出現問題的話必須整個產品(指令)都要從生產線上下架換新的產品(指令)上來,所以效能就降低了。

xiemark 2004-01-16 11:14 AM

光切PIPELINE,是一種最差勁的設計。
CLOCK可以增加,但是latency增長。
因此必須重新更改設計的架構才行。
由此可以知道Intel在製程勝過AMD,但是設計功力遠遜AMD。

forum 2004-01-16 12:07 PM

引用:
Originally posted by nzcym
"cpu流水線深度增加能有助提高頻率? " 前提是不要遇到 JMP 指令, 遇到 JMP 之類的跳躍指令就要清空 pipeline, 而且階數愈高的 pipeline, 處罰代價 (延遲時間) 愈大. 當然這問題也不是完全無解, 例如加入分支預測電路, 在 compiler 裡埋下暗樁 (命令 CPU "decode unit 1" 把沒跳的指令都抓進來解碼, 再讓 "decode unit 2" 把 JMP 跳到的指令都抓進來), 用多條流水線來執行, 再把最後的計算結果合併起來 .... 這問題有著幾乎是無限多的解決方案.

"However, the only limitation is your imagination. " 解決方案只受限於思考者的想像力. 考試分數的高低決定於老師對答案的鑑賞力, 只是古典, 廣為人知的答案大概都能夠獲得一定的高分, 但是不保證能夠申請電路設計專利. 這就是單純 教學, 考試, 和靠研究工作混飯吃不同之處.


時脈和效能是兩回事
Branch 類指令常讓你pipeline flush
跟能不能提高時脈是兩回事


然後你真的認為大部分的老師對答案的鑑賞力都那麼低嗎?
還是是你自己的認知發生了基本上的錯誤 ????

rolfy 2004-01-16 01:17 PM

引用:
Originally posted by xiemark
光切PIPELINE,是一種最差勁的設計。
CLOCK可以增加,但是latency增長。
因此必須重新更改設計的架構才行。
由此可以知道Intel在製程勝過AMD,但是設計功力遠遜AMD。
~~


這話會不會說得太武斷一些 :)
AMD 在 K7 未推出前還不是被 intel 打得很慘?
(我不太確定的是, 若 Dirk Mayer 未加入AMD, 帶入 DEC ALPHA 的技術
AMD 自立研發, 有辦法推出 K7-like 的產品嗎?)
難道 P4 只是把 P3 的 microarchitecture 重切 pileline 嗎?
光憑半導體先進製程就可以撐起爛架構?


所有的時間均為GMT +8。 現在的時間是01:17 PM.

vBulletin Version 3.0.1
powered_by_vbulletin 2025。