2013-04-08 74 views
6

我正在經歷一個MIPS procesor架構。什麼是MIPS首字母縮略詞中的「互鎖管道」?

按照本教程中指出:微處理器無內部互鎖流水階段 http://en.wikipedia.org/wiki/MIPS_architecture

一個主要障礙流水線是,一些指令,像師,需要較長時間才能完成,因此CPU 必須等待前將下一條指令傳入管道。
這個問題的一個解決方案是 使用一系列的聯鎖,允許階段表明他們很忙,暫停上游的其他階段。
軒尼詩的團隊將這些聯鎖視爲主要的性能障礙,因爲他們必須與CPU中的所有 模塊進行通信,這需要花費時間,並且似乎限制了時鐘速度。
MIPS設計 的一個主要方面是將所有指令的每個子階段(包括高速緩存訪​​問)整合到一個週期中,從而消除任何互鎖需求並允許單個週期的吞吐量。

此鏈接說:--- https://www.cs.tcd.ie/Jeremy.Jones/vivio/dlx/dlxtutorial.htm

issue a "stall" instruction instead of a nop instruction upon a stall 

到底是什麼聯鎖管道劣勢?
爲什麼路由器喜歡使用MIPS架構的處理器?

+0

有趣的帖子。一個我自己的好奇心的問題是:聯鎖就像拖延處理器一樣(或者在一個流水線階段添加一個氣泡)? – mercury0114 2016-04-10 17:29:49

回答

8

MIPS設計的一個主要方面是將所有指令的每個子階段(包括緩存訪問)整合到一個週期中,從而消除了任何互鎖需求並允許單週期吞吐量。

但在以後的MIPS的版本,http://cs.nyu.edu/courses/spring02/V22.0480-002/vliw.pdf幻燈片9,環環相扣再引入構建築:

  • 畢竟MIPS最初代表類似 微處理器沒有互鎖流水線階段
  • 由於新實現(具有不同的內存延遲)將需要多個插槽,我們不喜歡代碼的正確性取決於實現的版本。
  • 因爲其他指令需要互鎖反正(如浮點)
  • 因爲它不是痛苦做連鎖

因此,考慮你的問題:

到底是什麼聯鎖管道的劣勢?

聯鎖需要更復雜的硬件(CPU的控制單元),在手繪晶體管和數百個數千個晶體管的CPU時代,設計和測試並不那麼容易。他們選擇了沒有互鎖的CPU核心設計的目標,但失敗了。沒有聯鎖,他們無法生產兼容的商業芯片系列。

爲什麼路由器喜歡使用MIPS架構的處理器?

歷史他們在第一網絡設備和流行在可能是由於慣性和下一個設備的投資被用來在基於MIPS的設備(無論是從網絡設備製造商和從MIPS芯片製造商)。

檢查這本書「看MIPS運行」多米尼克·斯威特曼,15,16,22 http://books.google.com/books?id=kk8G2gK4Tw8C&pg=PR15

有20世紀90年代,R4600,RM5200和RM7000的中間幾經易訪問的MIPS芯片的頁面。思科使用的是1993年的R4600,接下來的型號有64位總線和大型片上二級高速緩存。他們有足夠的性能來驅動當時的路由器。

在2010年代,我認爲,ARM上有路由器(現在有很多SoCs with network and ARM)。這是因爲ARM是獲得最廣泛許可的體系結構(在授權核心數方面,78% in 2011);第二種架構是ARC,帶有10%(檢查PC或筆記本電腦上的英特爾®博銳™貼紙 - 如果您有貼紙,則芯片組中有ARC核心;它們也用於許多SSD控制器中)。 MIPS在這個評級中只佔第三位,市場上總共只有100億核心中的6%。

相關問題