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