Global Sources
電子工程專輯
 
電子工程專輯 > EDA/IP
 
 
EDA/IP  

當SoC設計遇上「大塞車」 你會怎麼做?

上網時間: 2007年02月12日     打印版  Bookmark and Share  字型大小:  

關鍵字:消費性電子  多媒體晶片  嵌入式處理器  SoC設計  內部匯流排 

在最近的美國國際消費電子展(CES)上,我和很多晶片及軟體供應商交談過,那些在CES上展出的、功能豐富的行動多媒體和嵌入式設備大多是採用了他們的設計。他們的看法讓我會想起Steve Martin主演的美國電影《洛城故事(LA Story)》中的一幕。

Martin在電影裡扮演一個美國洛杉磯的電視氣象預報員;一天早上他開車去上班,為了避開塞車而沒有走高速公路,而是走了一條捷徑──先穿過鄰居的院子,經過一條小巷,穿越一片空地,經過一家洗車店,然後九彎十八拐地駛過一個停車場…。

電影中的高速公路都是50年前設計的,根本無法容納今天的交通流量。那一幕場景看起來很搞笑,因為它準確地反映出了現實世界的情況,而且Martin的捷徑方案也並不能算很誇張,因為現實生活中洛杉磯的司機們有時也會遇到這樣的情況。

嵌入式SoC裡的“塞車”情況

在很多行動設備和可攜式電子產品的嵌入式應用中,晶片開發者和建構者們也面臨著同樣的問題。消費者對於多媒體內容在高頻寬有線和無線網際網路上傳播速度的要求越來越高,而MP3播放器、視訊錄影機和行動電視設備,以及具備視訊功能的全功能手機的建構者們,則不得不盡力去滿足這種需求。但是他們那過時的共享匯流排(shared bus)結構就成了大問題,因為它們根本無法承載如此高的資料流通量。

在這些設計中使用多核心CPU只能偶爾奏效,其它時候甚至會帶來更大的麻煩,因為晶片中用來運輸資料的“高速公路”已經陳舊不堪,無法適應目前和未來的需求。

當然,也有新的高速系統,比如networks-on-chip和on-chip點對點封包型(point-to-point, packet-based)串列交換光纖連結,這些在概念上有點類似於板對板(board-to-board)和系統到系統(system to system)級的Infiniband、PCI Express和RapidIO。在Giovanni De Micheli和Luca Benini二人合著的《Networks On Chips》一書中,就對這些晶片級替代方案及其產生的問題有不少的著墨。

使用這些多媒體最佳化型SoC至少有兩個問題:第一,它們的種類太多了。這麼多SoC,你該如何選擇?你如何判斷它們是否能和現有的“高速公路”設計相容?第二,軟體開發方面的問題太多了。《Networks On Chips》一書也反覆提到了這些問題。

讀完這本關於各種複雜軟體問題的書之後,我得出了一個結論:即便我們能夠在晶片內部資料流量上,達成一個通用的下一代高速系統,軟體問題也能在很多年的時間?讓這種系統遲遲無法被廣泛採用。再看看軟體開發的通用標準吧,製作這樣的通用標準的呼聲在業界已經響了很多年了,可是到現在為止,大家都是光說不練。

迂迴戰術

這樣的挑戰並不足為奇,不僅是ARM、MIPS、Power和PowerPC的處理器,而是有很多產品都會遇到這樣的問題。他們把希望寄託在現有的技術,在恰當的時候使用現有的共享匯流排方法,在可以的時候進行更換,或者在解決不了時,找一些能夠跳過這些問題的迂迴戰術和捷徑。

例如最近Atmel專為具有影像、音訊和視訊的人機介面應用而設計的ARM926EJ-S微控制器,就把迂迴戰術發揮到了極致,該產品消除了ARM架構中傳統AMBA匯流排中常有的資料流通的瓶頸,將晶片內部傳輸速率提高到了41.6Gbps。

另一個同樣採用創新型迂迴戰術的公司是Digi,在該公司為蜂巢式網路閘道器、WiFi設備伺服器和無線視訊設備而設計的幾種專用I/O設備中,它所使用的Netsilicon NS9360也採用了這樣的方法。

和Atmel所採用的方法類似,Digi也是依靠現有的AMBA AHB共享匯流排技術,但是對週邊DMA結構作出了較大的改進。另外它還採用了一種特別的方法,讓開發者可以更改某個特定的暫存器,不管分配了多少頻寬,可直接在軟體中進行控制。

這樣的例子還有很多。智原科技(Faraday Technology)選用了一個QoS-aware型非阻塞交叉開關以獲得所需的晶片內資料流量頻寬,以及一個自己設計的智慧DMA引擎。PortalPlayer也採用了一個自己設計的交叉開關來代替AMBA,而(恩智浦半導體NXP)則對匯流排架構進行了改進,並保留AMBA用於可靠控制並處理各種任務,同時還添加了一個自行研發的用於提供各種多媒體功能的數據流匯流排。

其它的公司則選擇了和Cirrus Logic一樣的方法。這種方法既直接又簡單,僅僅是在同一顆晶片上放置了兩個AMBA匯流排,並將資料流分開,以使得每個處理單元都能獲得盡可能多的頻寬。

其它的例子如德州儀器(TI)的OMAP、NXP的Nexperia和東芝(Toshiba)的Cell結構,則是採用了一個共享記憶體的方法,在最頂部添加了多種消息傳遞機制,盡可能多地依靠現有的標準,例如Open MPI。

儘管業界在向這種新的架構轉變,我心中還是有很多疑問。這些迂迴戰術的作用能持續多久時間?各種新的NoC匯流排方案之間有沒有開發者可以尋求的共同點,以便至少能將從現有的共享匯流排方法轉向新方法的成本降至最低?

又是否有任何新型NoC方法能夠降低這一轉變的難度?這些被我們考慮用來解決各種現有同類對稱多核心環境中編程和除錯問題的軟體方案,是否能夠在NoC所代表的更為複雜的不同類非對稱多核心環境中也能起作用?

你的看法如何?你現在採取的是哪些方法?將來呢?最好的轉變方法是什麼?要知道,電影情節裡的那種方法並非是長久之計。

(參考原文:Mobile devices, multimedia NoCs, and Steve Martin's "LA Story")

(作者Bernard Cole為高科技業界的獨立編輯顧問,並擔任Embedded.com的駐站記者)




投票數:   加入我的最愛
我來評論 - 當SoC設計遇上「大塞車」 你會怎麼做...
評論:  
*  您還能輸入[0]個字
*驗證碼:
 
論壇熱門主題 熱門下載
 •   將邁入40歲的你...存款多少了  •  深入電容觸控技術就從這個問題開始
 •  我有一個數位電源的專利...  •  磷酸鋰鐵電池一問
 •   關於設備商公司的工程師(廠商)薪資前景  •  計算諧振轉換器的同步整流MOSFET功耗損失
 •   Touch sensor & MEMS controller  •  針對智慧電表PLC通訊應用的線路驅動器
 •   下週 深圳 llC 2012 關於PCB免費工具的研討會  •  邏輯閘的應用


EE人生人氣排行
 
返回頁首