存儲器主導著許多SoC,我們很少聽說某個設計包含太多的存儲器。然而,存儲器消耗了大部分的系統功耗,雖然這對于許多系統可能不是關鍵問題,但是對于物聯網(IoT)邊緣設備而言,總功耗是非常重要的。
幾乎所有系統的存儲需求都在變化。雖然新的存儲器和存儲器架構已經籌劃了很長時間,但仍未被廣泛采用。然而,許多業內人士認為臨界點已然將近。
過去50年中,SRAM和DRAM已經成為存儲器層次結構的主力,FLASH最近幾年也在加入了“戰場”。所有這些存儲結構在往較小的幾何結構縮放的過程中都存在問題,部分是因為它們都是平面結構。新的基于電阻開關的存儲技術是金屬層結構,消除了許多制造問題。因此,盡管我們今天可能不愿意采用它們,但它們可能是適合未來幾代產品的唯一的存儲技術。
引人注目的新存儲器包括:相變存儲器(PCM)、鐵電存儲器(FeRAM)、磁阻RAM(MRAM)、電阻RAM(RRAM或 ReRAM)、自旋轉移力矩RAM(STT-RAM)、導電橋RAM(CBRAM)、氧化物電阻存儲器(OxRAM)。
Rambus公司的杰出發明家和營銷方案副總裁Steven Woo說:“經典存儲架構中有一個需要填補的空白。這些新型存儲器中有一兩種會生存下來,可能是3D XPoint(英特爾和鎂光公司研發的PCM)、ReRAM、MRAM,也可能是其他的存儲器,我不知道。關鍵問題是哪種會脫穎而出。但這主要由在給定性能參數范圍內的數據輸入輸出確定。”
與性能直接相關的是功耗。 Adesto首席技術官Gideon Intrater說:“在給定功耗下的性能是一個非常重要的因素。在不同的應用中,存儲器的用途非常不同,而且需求也是變化的。沒有一個解決方案可以解決所有問題。”
那么,存儲器子系統消耗了多少能量? Sonics的首席技術官Drew Wingard說:“我們對于特定應用芯片的統計數據已經搜集完成,得到了計算系統的數據,即各個系統占功耗的百分比。這些數字往往包括內存子系統。當你一層層剝開其神秘面紗后,你會看到許多架構的存儲器功耗,存儲器功耗大約占總功耗的1/3至1/2。”
功耗和非易失性是FLASH存儲器吸引人的因素。Synopsys公司IP部門高級產品營銷經理Faisal Goriawalla說:“許多物聯網設備依賴能量采集器,所以客戶關注的是總功耗。設想一下,RFID標簽。這些無源標簽用于銷售終端,不是用電池供電,而是從讀取器的RF場獲取能量,因此功率約束非常嚴格。”
物聯網設備的另一個驅動力是成本。Cadence公司存儲器和存儲接口產品營銷部門總監Lou Ternullo表示:“如果把存儲器放在芯片上,就會刪除引腳,降低了系統的成本。另一方面是硅面積增加。這是典型的SRAM。但是,如果需要嵌入式Flash,則需要一個特殊過程,成本十分昂貴。如果把所有的存儲器都放在芯片裸片上,就會降低材料成本。如果需要放置比芯片裸片適合的更高的密度,那么就必須離開芯片。”
計算總能量
存儲器消耗的總能量有幾個部分,所有都要仔細考慮。它們是:
• 存儲單元維護功率;
• 讀、寫和擦除功率;
• 接口功率;
• 架構的優化。
不同的應用可以用不同的方式平衡這些因素以及其它特性,例如持久性和性能。
有一種能量成本與存儲單元自身相關。這可能包括漏電流、刷新電路、或維持狀態所需的有功電流。與許多存儲器相關的總能量也可能取決于它們的規模,因為增加位線的規模會增加驅動電路的功耗,或在每個周期必須刷新的數據量。
以DRAM為例。Ternullo說,“DRAM的成本競爭力雖然不理想,但它使用必須刷新的電容單元。當你增加密度,單元容量下降——多虧了物理學定律——你必須經常刷新。所以它們試圖變得更智能,包括諸如某些模式下的局部陣列自刷新技術,如果整個DRAM并不需要,那部分就不用自刷新。”
其他類型的存儲器,例如SRAM,擁有無源動力功率元件,這些元件只是為了維持它們的狀態。非易失性存儲器(NVM)可能有零保持電流,無法忘記周圍的邏輯。Goriawalla說,“漏電可能來自圍繞存儲核心的電路,NVM有一個使用傳統CMOS器件的模擬組件。這些是較大的器件,所以這些器件的柵漏相當小,但是也有數字組件會產生柵漏。”
接下來是讀、寫和擦除存儲單元所需要的能量。這些成本中的幾個將與存儲技術相關。Goriawalla繼續說:“對于許多類型的FLASH存儲器,寫入電流往往高于讀取電流。相比之下,多時間可編程(MTP)NVM具有相當高的能效。它們的程序電流低50倍,讀取電流低10倍。 其原因是存儲電荷的機制。在MTP存儲器中,利用Fowler Nordheim(FN)電子隧穿,比嵌入式閃存使用的熱載流子注入更節能。”
另一個考慮是訪問機制。例如,許多Flash技術需要串行訪問。CEA-LeTI的高級系統和集成電路架構師Michel Harrand表示:“利用一些新興的存儲技術,你可以隨機訪問它們,無需順序訪問。你需要一些能量來寫入一位,可能是10微安,這比DRAM略大,但DRAM是破壞性讀出。當你讀取一位時,你要讀取完整的字線,然后你必須重寫所有。新興的NVM可以節省一些能量,即便它們寫入一位需要更多的能量。它們不需要刷新。它會在你要寫入的位數之間進行權衡。所以很難有確切的數字,因為它取決于你寫入以及讀取的位數。”
進出存儲器的數據必須通過某種總線傳輸。Ternullo說:“存儲器的大部分功耗與接口本身相關。在某些情況下,你面對的是難以改變的物理學規律。如果遵循這些標準,則I/O電壓會發生變化,以幫助緩解這種情況。原來1.5V的DDR3已經變成了1.2V的DDR4和1.1V的LPDDR4。 從動態功率的角度來看,電壓是關鍵組件,當你降低電壓時可以降低動態功耗。”
降低接口成本的另一種方法是在芯片上集成,但是DRAM不能被嵌入,而且縮小Flash變得越來越困難。Goriawalla說:“系統功耗受到掩膜數量等因素的影響。與CMOS技術相比,嵌入式閃存需要12-14個額外的掩膜,并且可以增加25%的芯片裸片成本。”
還有其他因素會影響存儲器的總功率,如系統的體系結構。緩存的設計是通過在芯片上放置少量快速、高功耗的存儲器以減少訪問時間,并且當所需的信息不在緩存中時,僅需要訪問外部存儲器。這減少了與訪問外部存儲器相關的時間和能量。如果在高速緩存中可以存儲足夠的數據,則可以最小化接口功率。
但因為SRAM 是高功耗的,所以物聯網系統希望減少對其的依賴。然而,許多閃存器件,特別是在芯片外時,需要大量的SRAM。Intrater說:“無論何時,當處理器需要一個不在緩存中的程序時,處理器將從外部存儲器獲取必要的程序,然后繼續。我們希望大部分程序都在緩存中。 閃存變成了內存層次結構的一部分。”
但這正在改變。“有一個名為‘就地執行’(XIP)的特征,此處你使用穿行NOR flash就像片外存儲器。您可以讓處理器直接從串行NOR flash讀取數據,就像存儲器一樣。
另一個影響功耗的因素是讀寫的規模。當使用DDR時,單字節或字不會一次讀取,而是可能突然讀取512或1024。如果這是一個很好的能量使用,又如果不需要額外的字節讀取,那么它依賴于應用程序,因此代表了浪費。這是一個示例,其中性能已成為驅動問題,并且對于許多系統可能是昂貴的功耗權衡。
A similar type of problem exists with NAND-type flash memories that are unable to write to a single locaTIon, instead requiring that a block of memory is first erased and then rewritten. This means there is a power penalty associated with small writes. An SRAM cache, even though it consumes more power, defers writes and may finish up providing energy savings.
NAND FLASH存儲器也存在類似的問題——不能寫入單一位置的,需要先擦除并隨后重寫存儲器塊。這意味著存在與小寫入相關聯的功率代價。 SRAM緩存,即使它消耗更多的功率,延遲寫入,但是可能提供節能。
對于許多系統,現有的內存技術可能太耗電。Goriawalla說:“對于使用能量收集的系統。它們通常需要寫入電流小于5μA,讀取電流為幾μA/ MHz。這加上了VDD的最小值 0.7 ~ 0.9V。所以我們談論的是微小系統的功耗需求。 這些數字比大多數嵌入式閃存技術的數量級小。”
其他注意事項
同樣,成本有許多方面,其中一些已經討論過。功耗對成本有直接影響,但其他因素包括引腳數量、封裝、芯片內的成本,以及與板上集成相關的成本。
Intrater說:“小系統往往擁有位于同一芯片裸片的嵌入式閃存。但也有局限性。我們看到系統要遷移到28nm,但在流程節點沒有嵌入式閃存。閃存滯后于標準CMOS工藝。如果可以使用嵌入式閃存,那么這就是始終不變的最優解。但在許多情況下,這樣卻并不可行,原因在于成本,或者系統的其他部分需要更積極的過程節點。然后你需要恢復使用外部內存器,并開始遇到性能和功耗的問題。兩者之間的聯系需要具有正確的特性,以提供足夠的性能,并且消耗更多的功率。”
這一判決對于新的內存類型變得更容易。 Harrand說:“在同一芯片上與邏輯一起進行閃存處理是很困難的。新存儲器很友好,一切都在生產過程的后端。 這意味著在邏輯過程中可以有完全相同的晶體管,這使得它更容易嵌入邏輯或處理器。28nm使得嵌入式閃存過程變得很困難,所以我們有機會替換嵌入式閃存與這些新的記憶。”
許多互連架構針對現有存儲器類型進行了優化。Harrand說:“DDR接口不太適合NVM。使用DDR,首先要聲明你想要尋址的行或頁面,然后聲明你是要讀取或寫入。這對于新興的NVM是不利的,因為如果你想要讀取或寫入,你一開始就必須知道。”Harrand表示,有辦法克服這一限制,但它們會降低性能。
另一個障礙是接受新的權衡。Harrand繼續說,“今天,我們可以擁有具備足夠續航力的高度DRAM,但是無法擁有高密度,但是可以同時擁有速度和續航力。會有一些被優化接近DRAM,并具有完整的保留,或者有一些會有數日的保留,但并不是10年的保留,或者有一些會有優化保留,但他們沒有速度。”
目前尚不清楚何時以及哪些新的存儲器將首先打破障礙,但微控制器的出現將這些新的存儲器嵌入到其中。隨著數量的增加,成本將下降,這將加速它的應用。不久后,許多物聯網系統將別無選擇,尤其是如果它們想利用新的制造技術節點的話。