談到設(shè)計存儲器時,沒有哪種規(guī)格適合所有人,。而且,,考慮到大量的內(nèi)存類型和使用場景,,系統(tǒng)架構(gòu)師必須非常清楚他們的應用的系統(tǒng)需求。
首先需要決定的是,是將存儲器置于邏輯芯片上,,作為SoC的一部分,,還是將其作為片外存儲器。
eSilicon公司業(yè)務(wù)和企業(yè)發(fā)展副總裁Patrick Soheili表示:“延遲和吞吐量的折中至關(guān)重要,,而且功耗成本巨大,。每次你從一個平面移動到另一個平面時,它的系數(shù)是100X,。這也適用于片上存儲器vs片外存儲器,。如果你能挨個芯片地把它連在一起,那就最好了,?!?/p>
出于上述原因和其他原因,芯片制造商的第一選擇是在邏輯芯片上放置大量的RAM或flash,。但在大多數(shù)情況下,,這還不夠。即使是過去被定義為帶有片上存儲器的處理單元的微控制器,,也已經(jīng)開始為高端應用添加片外輔助存儲器,。
Cadence公司DDR、HBM,、flash/storage和MIPI IP的產(chǎn)品營銷總監(jiān)Marc Greenberg表示:“如果邏輯芯片上的存儲器大小超過了可以較低價格生產(chǎn)的界限,,使用片外存儲器顯然會是更好的選擇。多個制造商都有基于SPI(串行外設(shè)接口)總線的一系列低成本,、低功耗的存儲器,,包括汽車速度等級的存儲器。SPI總線正在提高速度并增加寬度,?!?/p>
事實上,Cadence看到了很多對200MHz的Octal-SPI IP接口的需求——包括控制器和PHY芯片,。
為了更好地理解人們?nèi)绾慰创嚮蚱渌麘弥写鎯ζ鞯墓脑O(shè)計,,我們不妨后退一步,試著去了解存儲器的速度和功耗同整體帶寬的關(guān)系,。Synopsys公司DesignWare Analog和MSIP解決方案事業(yè)部高級市場總監(jiān)Navraj Nandra表示:“在應用需求方面,,當人們在提升微處理器/CPU性能時需要同步提升存儲器容量和存儲器帶寬。但即使這是應用所要求的,,你也很難二者同時兼得,。”
存儲器中需要在帶寬,、延遲,、功耗,、容量和成本之間找到平衡點。Nandra表示,,工程師有時會忘記成本部分,,但是它推動了很多決策點。
必須考慮存儲器的容量和速度,,每種存儲器都有不同的折中,。如果應用是由速度或吉比特每秒的帶寬驅(qū)動的,,那么HBM可能是一種方法,,因為它比DDR存儲器的帶寬要高得多。如果應用以容量問題為主,,例如存儲器接口可容納多少GB的存儲空間,,那么DDR可能是更好的選擇。
Nandra表示:“DDR提供容量,,HBM提供帶寬,。如果問題是關(guān)于功耗的問題,那么低功耗DDR比HBM或GDDR更好,。使用GDDR或HBM可以獲得更高的性能,。使用DDR和LPDDR可以省電?!?/p>
嵌入式存儲器
如果存儲器作為SoC的一部分,,那么則需要在架構(gòu)上多加考慮。
ARM公司的研究員Rob Aitken表示:“如果你考慮泄漏功耗,,例如,,SRAM的泄漏主要是位單元。外圍也有所貢獻,,但你可以在設(shè)計過程中忽略它,。如果你有一定數(shù)量的位單元,就會有一定的泄漏,,所以你必須從那一點開始并解決它,。有一些電路設(shè)計技巧可以讓你擺脫其中的一些問題,這通常是以犧牲性能為代價的,,而這往往這取決于你有多大的決心,,。其中一些包括對各種描述進行有效的偏置或功率控制,,以及上述方法組合使用,,以此來減少泄漏功耗?!?/p>
在這一點上,,很重要的一點是要理解,如果需要一定數(shù)量的位,并且存在這么大的泄漏,,系統(tǒng)架構(gòu)師必須找出哪些配置最適合他們的各種存儲器,。Aitken表示:“考慮的因素包括位線長度等。一般來說,,位線越短,,存儲器越快。這是因為SRAM讀取的工作方式,,本質(zhì)上,,單個位單元必須釋放位線,當它釋放的電荷足夠時,,讀出放大器會觸發(fā),,并說,‘哦,,這里有一個信號,。’因此,,需要釋放的位線越多,,所需要的轉(zhuǎn)換時間就越長?!?/p>
幸運的是,,對于任何給定的內(nèi)存配置,我們可以在一系列可能性中做出選擇,。
Aitken解釋說:“我可以擁有很多短位線或少量較長位線的存儲器,,而這些字數(shù)和位數(shù)仍然完全相同。這就是這些列在存儲器中的排列方式,。所以這個架構(gòu)層次可以實現(xiàn),,存儲器生成器器可以讓你做到這一點。你可以邊玩邊說,,‘我希望使用8列多路復用器’,,即8位線到每個輸出位,因為它提供了速度和功耗的良好平衡,?;蛘吣憧梢哉f,這實際上比你需要的速度快,,所以你可以使用4列多路復用器,,因為它提供了更好的功耗和良好的速度。作為一名SoC架構(gòu)師,,你會經(jīng)歷這種實驗,,看看最佳實現(xiàn)方式是什么,,而且它們也會以不同的形式融入到平面布置圖中,因為其中一些更偏向正方形,,有些更偏向矩形,。”
成本很重要
雖然功耗在一段時間內(nèi)主導了許多設(shè)計決策,,但成本是這個等式中的另一個關(guān)鍵因素,。
Aitken表示:“從存儲器的角度看,你在考慮是否想要更多的面積,,這相當于更高的成本,。有一些二階折中方案對于大容量存儲器很重要,比如位單元面積與外圍面積的比例,。一旦你選擇了一個比值,,位單元區(qū)域就基本上固定了,。但是它的周邊區(qū)域可以變得更大或更小,,這通常會使它更快或功耗更低。當你這樣做的時候,,是否會給SoC增加成本,,取決于你有多少個給定的對象。通常,,當你觀察SoC時,,有幾個非常大的對象支配該區(qū)域,因此周邊區(qū)域或性能的小改動會對這些對象產(chǎn)生巨大的影響,。有很多對象并不重要,,即使它們的大小翻倍,也沒有人會注意到,。其次,,還有另一類型通常是體系結(jié)構(gòu)中的較小但很重要對象,這些對象具有某種最終性能要求,、或超低電壓,、或芯片的某些重要方面。在這些情況下,,面積和成本通常不那么重要,,更重要的是它需要符合速度標準、或泄漏功耗標準,、或任何其他主導標準,。”
汽車市場的優(yōu)先考慮因素
這在汽車市場尤其重要,,因為成本是決定使用哪些組件的關(guān)鍵因素,。
Rambus公司產(chǎn)品管理高級總監(jiān)Frank Ferro表示:“功耗很重要,,但在其他一些市場上,它并沒有成為一個超級關(guān)鍵因素,。功耗對每個人來說都很重要,,但汽車系統(tǒng)實際上是成本與帶寬之間的折中。如果我必須對它們進行排名,,我會說性能和價格不分上下,,而功耗則遠不及前兩者重要?!?/p>
汽車是當今芯片設(shè)計的熱門市場之一,。對于自動駕駛汽車而言,正在汽車中部署的傳感器的數(shù)量正在迅速增加,,而對于一輛汽車來說,,要做到不同程度的駕駛員輔助功能,需要把多個傳感器獲得的數(shù)據(jù)輸入到復雜的邏輯電路中加以處理,。由于需要處理的數(shù)據(jù)量很大,,因此在使用視覺和雷達的情況下,這些數(shù)據(jù)將通過傳感器網(wǎng)絡(luò)進行傳輸,。
Ferro表示:“芯片制造商正在研究能夠處理高于100 Gbps或更高帶寬的存儲器系統(tǒng),,這樣可以適用于不同級別的駕駛輔助汽車,并最終實現(xiàn)自動駕駛汽車,。為了做到這一點,,存儲器選擇的數(shù)量開始縮減,以便為你提供必要的帶寬來處理所有即將進入的數(shù)據(jù),?!?/p>
Ferro表示:“早期的ADAS系統(tǒng)設(shè)計包括DDR4和LPDDR4,因為這些是當時可用的,。兩者都有優(yōu)點和缺點,。DDR4顯然是最便宜的選擇,而且應用在產(chǎn)量最高的產(chǎn)品中,。它們當然非常劃算,,而且工程師非常熟悉它們。在DDR4上進行錯誤校正更簡單,,也更容易理解,。當然LPDDR4也是一個可以使用的選項?!?/p>
展望未來,,F(xiàn)erro希望各種類型的存儲器能夠共存于不同的系統(tǒng)中?!叭绻麄兤爻杀緦?,那么他們將會關(guān)注DDR,,甚至是LPDDR4。但如果他們偏重帶寬導向,,那么他們將會關(guān)注像HBM或GDDR之類的東西,。這實際上是你在架構(gòu)設(shè)計階段中所做的事情。有不同的ADAS級別以及系統(tǒng)和時間表所需的級別,,因為出貨時間很重要,。如果你今年有一個系統(tǒng)出貨,它的解決方案將會不同于明年或后年開發(fā)的系統(tǒng),。這些就是我們在上市時間和成本上所需要考慮的事情,。”
其次,,在高性能方面,,從系統(tǒng)設(shè)計的角度來看,帶寬與功率的折中是關(guān)鍵挑戰(zhàn),。Ferro表示:“如何以合理的功耗和面積預算獲得更大的帶寬,?例如,如果你擁有HBM,,從功耗和面積的角度來看,,它非常高效,,因為它使用3D堆疊技術(shù),,所以從功率效率的角度來看,HBM非常棒,。從面積的角度看,,HBM堆疊占用了相對較小的空間,因此從功耗性能角度來看,,這是一個非常好的解決方案,。你可以獲得很高的密度,你可以在一個小面積內(nèi)獲得強大的性能,,而且功耗很低,。”
其他人對此表示同意,。三星公司HBM產(chǎn)品營銷經(jīng)理Tien Shiah表示:“GDDR在GPU上比DRAM快,,但HBM沒有比較過。HBM是使用微孔柵格陣列的最快存儲器形式,。您可以擁有4個或8個高堆疊,,它可以提供1024個I/O,超過8個通道,,每個通道128位,。這是標準顯卡的I/O總線寬度的四倍,。每個引腳可以達到2Gbps,在1.2V時可達到2.4Gbps,?!?/p>
圖1:三星的HBM2 DRAM 5 (來源:三星)
外部存儲器的吞吐量非常高。但在這里,,主要需要權(quán)衡各種開銷,。
Ferro表示:“你將為HBM付出更多的錢,所以如果你能承擔高成本,,這是一個很好的解決方案,。如果你無法承受高成本,那么其他公司正在考慮的是,,他們能在一塊電路上擠進多少DDR或LPDDR,,并將它們并排放置,試圖用更傳統(tǒng)的解決方案來逼近某些HBM的性能,?!?/p>
看懂存儲器
由于存儲器市場服務(wù)有許多不同的應用,所以在設(shè)計中清楚地了解如何合理的使用存儲器是很困難的,。了解各種可選方案將對此有所幫助,。
西門子公司Mentor事業(yè)部的IP部門的董事總經(jīng)理Farzad Zarrinfar表示:“基本上,你可以觀察自己的芯片,,然后設(shè)想它可以用于幾個關(guān)鍵的垂直市場,。一些垂直市場可能是智能手機、高性能計算,、汽車,、物聯(lián)網(wǎng)、虛擬現(xiàn)實,、混合現(xiàn)實等等,。你會發(fā)現(xiàn)芯片技術(shù)是不同的。沒有一種芯片技術(shù)能解決所有問題,。例如,,物聯(lián)網(wǎng)對功耗和成本敏感,人們可以利用超低功耗的40nm或28nm的工藝,,如ULP或HPC+,。這對于物聯(lián)網(wǎng)來說非常合適。而在汽車行業(yè),,使用28nm及以下工藝生產(chǎn)的芯片需求量很大,。”
內(nèi)存綜合器(Memory Compiler)的選擇是另一個難題,,大多數(shù)存儲器提供商都為它們的存儲器產(chǎn)品提供綜合器,。Zarrinfar表示:“智能綜合器可以幫助提供解決方案,,因為它可以根據(jù)不同的需求進行優(yōu)化。例如,,某些應用可能需要超低動態(tài)功耗,,而汽車則有自己的要求,而且我們在這里唯一的不變就是變化,。行業(yè)正在發(fā)展,。對于安全性,溫度等級以及其他一些考慮事項,,有著非常明確的要求,。”
所有這些需求都會影響存儲器設(shè)計,,而這正是工程團隊需要考慮的,。
Zarrinfar表示:“當我們設(shè)計存儲器的時候,我們有特定的目標,,可能是+125℃或+150℃的環(huán)境,,這可以轉(zhuǎn)化為結(jié)溫。我們有基于目標市場的市場需求文檔,。然后我們知道我們需要什么樣的設(shè)計,。然后你需要有來自半導體代工的模型,規(guī)定我們擁有的模型的范圍,。汽車溫度迫使半導體代工廠增加傳統(tǒng)的工作溫度范圍,。雖然不是每個流程節(jié)點和類型都支持每種模型的每個替換,但必須進行充分的驗證,,以確保各種組合能夠達到預期的結(jié)果,。”
最后,,預計對存儲器更大帶寬、更少延遲,、更低功耗和更低成本下的更大容量的需求的將會不斷增加,。面對著今天各種可用的存儲器類型,無論是獨立的存儲器芯片的還是嵌入式存儲器,,系統(tǒng)架構(gòu)師必須隨時改進理想存儲器方案的選項,,以適應特定的應用場景。
致謝:本文由電子科技大學低功耗集成電路與系統(tǒng)研究所黃樂天老師和陳家豪同學協(xié)助校對,。特此感謝,!
原文鏈接:https://semiengineering.com/how-to-choose-the-right-memory/