巨大的全球DDR(SDRAM)存儲器市場在總產值為3500億美元的全球半導體市場中占據了超過500億美元的份額,使其成為政府為促進國內半導體產業發展而推出的推動措施中,最重要的產品類別之一。就中國而言,國務院於2014年6月頒布了《國家集成電路產業發展推進綱要》,要實現其中集成電路行業產值從2015年3500億人民幣以年均20%的增速達到2020年約8700億人民幣這一目標,DRAM產業的增長顯得至關重要。
然而,DRAM市場已經十分成熟,且由三星(Samsung)、海力士(SK Hynix)和美光(Micron)三家企業共同占有超過90%的市場份額。現有DRAM的最關鍵技術是電容存儲單元,它不僅帶來了特有的製造挑戰,還被大量專利所保護。為了進入DRAM市場,後發的中國廠商必須利用創新的替代方案,以推動競爭升級,爭取實現差異化。VLT技術則代表了這樣的一種可能性。
垂直分層閘流體(Vertical Layered Thyristor;VLT),是Kilopass研發出的新型內存單元,能夠顯著降低動態隨機存取內存(DRAM)的成本和複雜性。這是一種靜態的內存單元,無需刷新操作;兼容於現有晶圓廠的製造設備,也無需任何新的材料或工藝。
相較於一般的DRAM,VLT內存數組能節約高達45%的成本;這是因為它具有更小的VLT內存單元,以及驅動更長行與列的能力,使其得以大幅提升內存數組效率。然而,想要發揮VLT的優勢,就必須在依據產業標準發展的成熟DRAM市場展開設計與製造,才能確保兼容於不同供應商的內存產品。
目前,基於VLT技術的內存已經具備與現有「第四代低功耗雙倍數據速率」(LPDDR4)規格完全兼容的能力。VLT內存組(bank)可以模擬傳統DRAM的bank,併兼容於其頻率;在設計VLT電路時,設計者可以選擇連接標準DDR控制器,或是成本較低的簡化版控制器。如果使用標準控制器,由於不需要刷新,VLT內存將會忽略刷新序列。系統的其他部份則會將VLT DRAM視為通用DRAM,因而無需任何改變。
傳統DRAM內存單元
為了顯示如何使用VLT內存單元構造LPDDR4內存,首先回顧一下傳統DRAM以及LPDDR4的工作方式。熟悉DRAM者或許對其有所了解,但實際運用上還是有些微差異,在此先定義一些準則與術語以便於理解。
DRAM作業的許多方面取決於其電容儲存單元。首先,電容的漏電特性導致了刷新的必要性;其次,儲存單元的基本作業方式之一是讀取,它會影響如何組織內存的其他方面。
圖1:傳統電容式DRAM內存單元的電荷分配原理 (圖中綠色箭頭所示為電流,與負電荷流動的方向相反)
圖1顯示電容儲存單元的原理圖,左右圖分別代表了讀取1和讀取0時。電路透過「電荷分配」(charge sharing)偵測內存位值。位線(bitline)首先被預充電到一個在0和1之間的電壓值,然後透過打開讀數電晶體來選擇一個內存單元,使電荷可以在位線與內存單元間流動。如果位線電壓高於內存單元,那麼負電荷就會從內存單元流出到位在線;而如果位線的電壓低於內存,那麼負電荷就會從位線流進內存單元。
這種電荷轉移改變了位在線的電壓,透過感測與鎖存得到最終讀取數值。然而,在儲存電容中失去或取得的電荷,改變了節點上原有的電荷,這意味著讀取的過程是破壞性的。因此,在每一次讀取之後,都必須透過回寫操作恢復內存單元中的電荷。
LPDDR4
LPDDR4標準是第四代雙倍數據速率(DDR) DRAM的低功耗版本標準,透過整體架構定義了個別內存晶片的高層級結構,以及如何安排雙列直插式內存模塊(DIMM)。
分析DRAM的方式一般有兩種:理論上,剖析其實體細節;實際上,則著眼於其晶片數組特性。本文首先探討第一種邏輯觀點,因為所有的實體布局都必須分解為相同的邏輯結構,因而能夠從中了解傳統DRAM和LVT途徑如何實現邏輯功能。
LPDDR4內存晶片擁有8Gb的儲存容量,通常由兩個4Gb的獨立通道共同組成。每信道擁有8個內存組,每一內存組包括32K儲存頁(page),每頁有16K位,而使內存組的總容量達到512Mb。
圖2:典型的DRAM架構和層級
一個完整的LPDDR4內存晶片包括兩個高層級單元:內存數組和DDR接口。有些部份的操作會影響到內存數組;另一部份則會影響接口。DDR接口可以同時與內存數組以及外部系統進行通訊。
圖3:LPDDR4的邏輯組織架構,圖中將儲存數組和DDR接口分開。箭頭代表一次讀取操作以及回寫
圖3說明了這種關係,即DDR緩存器作為外部系統和內存數組之間的主接口。而在讀取數據時,數組數據會先被加載DDR緩存器中;進行寫入作業時,所需的數據會先從外部寫入緩存器中。
由於讀取傳統DRAM數組內容可能破壞原有數據,每一次讀取後都必須進行回寫作業,以恢復原有值。在進行讀取後,DDR緩存器的內容被複製到「隱藏緩存器」(Shadow Register)中。當外部系統讀取DDR緩存器中的數據時,隱藏緩存器負責將數據回寫到所選頁,以恢復原有數值。同樣地,當寫入數據時,DDR緩存器的數據會被傳輸到隱藏緩存器中等待寫入;而在執行寫入作業時,DDR緩存器就可以加載新的數據。
讀取內存分頁數據涉及一連串的活動,類似於兩個巢式的軟體DO迴路(Do loop)。每一分頁內存被分成由許多256位元組成、成批(burst)讀取的內存群組,因此,一組16K位分頁就有64個burst內存群組,依序讀取完整的內存頁,這類似於外部DO迴路。
圖4:內存分頁由分批依序讀取的內存群組構成;每一批burst群組均依據16個連續的16位傳送到I/O
每個突發傳輸組被加載256位的DDR緩存器中,該緩存器被分為16個16位字,並依序讀取其內容,為每一個頻率邊緣提供每一個16位字。這種操作方式則如同內部DO迴路。
每一行的地址(RAS)負責選擇分頁。同時,每一列的地址(CAS)選擇突發傳輸組,並設置從DDR緩存器中開始讀取的字符,因而不必從DDR緩存器的左側開始讀取。
值得注意的是,在隱藏緩存器執行回寫、讀取或寫入DDR緩存器中原先加載數據的同時,DDR緩存器已經開始從儲存數組中讀取數據或從外部加載所寫數據了。
LPDDR的運作
LPDDR4功能本質上包含四項基本操作:啟動、讀取、寫入和預充電。這些操作的其他變異形式,如突發讀取/寫入和自動預充電等,可能構成一個更長的指令列表,但並不至於帶來新的技術挑戰。此外,它還添加了刷新、訓練和模式緩存器作業等維護性指令,以因應複雜的操作命令。
這些基本的操作簡要介紹如下: 啟動: 在內存數組中選擇特定字符線(wordline),即可「開啟」一個分頁。該分頁上的內容將會被感測到並進行鎖存,然後保持開啟以用於在讀取作業時進行回寫,或在「讀取-修改-寫入」作業時被再次寫入。 讀取: 開啟讀取數據序列,每個burst內存群組的數據會從感測放大鎖存中被加載到DDR緩存器中。緊接著DDR緩存器開始依序讀取,每次讀取一個16bit字。同時,晶片透過隱藏緩存器在仍保持開啟狀態的分頁上進行回寫。 寫入: 數據被加載DDR緩存器,每次一個16位字。數據隨後被轉移到隱藏緩存器中,待分頁開啟時寫入數據。當進行寫入時,DDR緩存器可依需要同時加載新的256位數據,等待下一次寫入。 預充電: 在最後一個burst內存群組被讀取或寫入後,內存數組必須為下一次操作做好準備。在寫入情況下,必須等待一個寫入恢復延遲,以確保最後的burst群組可在繼續其他操作前被成功寫入。這時,開啟的分頁已被關閉,使位線能夠自由浮動,並重新充電回到先前提到的VDD/2電位。
值得注意的是,只有啟動操作才涉及內存數組感測;讀取操作只涉及在鎖存感測數據與DDR緩存器之間傳輸數據,以及讀取DDR緩存器的數值。
根據所需的操作序列不同,有些DDR的時序可能極其複雜。但如果相鄰讀取操作發生在不同內存組的數據之間,則可大幅簡化時序。因為在從下一個內存組中讀取數據之前,不必在原有的內存組中等待回寫和預充電。時序控制最困難的是來自同一內存組的連續讀寫。
實現內存數組:MAT
理論上,儘管一個內存組的邏輯容量可能達到32K行與16K列,但以現有技術而言,現實上並不可能製造出這樣的內存數組。這是因為:
• 驅動器在選擇分頁時的驅動能力有限;在性能符合規格要求的前提下,只有一定數量的選定電晶體可以被驅動。
• 感測放大只能支持有限數量的儲存單元。如果儲存單元的數量太多,由於電荷分配造成電壓變化減小,而被噪聲淹沒。
因此,為了確保內存晶片可靠且易於製造,每一種內存應用都存在不同程度的實體尺寸限制。達到這種上限的內存數組被稱作「內存數組片」(memory array tile;MAT)。每個MAT都是功能齊全的數組,本身包含字符線和位線的解碼以及感測放大器。
以一種採用2x-nm工藝節點的一般DRAM MAT為例,其位線和字符線的規模分別達到1,024條和620條。字符線的數量並不是2的整數次方,這帶來了一些解碼方面的挑戰。該晶片或許只用了最後的幾個MAT,但這是一個可以忽略的晶片建置細節。
透過打造一個16×53大小的MAT數組,可為具有這一尺寸的內存組實現總共848個MAT。一個完整分頁整合一行MAT的內存單元:當開啟一個分頁時,同時啟動同一行有MAT內存單元上相應的字符線。
圖5:傳統DRAM的實體布局
在了解了這些背景知識後,接下來將討論全新的Kilopass內存單元,以及它如何打造與此相同的儲存組。
VLT內存單元
Kilopasss的全新內存單元基於一種垂直分布的閘流體(也被稱為半導體控制整流器,或SCR)。這種採取pnpn結構的堆棧建構於一個p-阱上,可帶走來自底部n型層的任何空洞。
圖6:VLT內存單元:帶有寫入輔助的PMOS電晶體的閘流體
在淺溝槽隔離(STI)結構中植入一個埋入式字符線,使底部的n層連接到一個字符。埋入式字符線與外部銅金屬M1層字符線透過具有較大電阻的金屬鎢實現連接,因而可以製造比傳統DRAM更長的字符線。
由於感測機制並非採用電荷分配,使感測放大器可承受更長的位線。因此,這種技術可以支持高達2Kbit寬、4Kbit深或總共8M位的MAT——遠大於傳統的DRAM MAT。採用更少片較大型MAT拼接成的內存晶片較採用多片小尺寸MAT的花費更低,因而可使VLT內存的數組效率達到77%,相形之下,同樣採用2x-nm節點的傳統DRAM效率只有64%。
以VLT內存單元打造LPDDR4內存
MAT容量增大後,LPDDR4內存組就可以用更少的MAT組成。單純按照位數計算,基於VLT技術的內存組將包含64個MAT,相形之下,傳統DRAM的內存組需要配置848個更小的MAT。不過,接下來的問題就是如何最有效配置這些MAT。
一種配置方式是每個MAT都帶有512個支持4K位線的感測放大器,這意味著每個感測放大器都有多任務器用於在8條位線中進行選擇。其中,多任務器的選擇基於CAS地址;進一步針對圖3的內存數組進行修改後,新的原理圖如下:
圖7:為VLT內存添加位線多任務器
因此,對於每個被選定的分頁,每個MAT中只有八分之一的位線會被選擇,這與普通DRAM實現方式中所有位線都被選中的情況不同。但在傳統DRAM中並不可能實現這種更高效率的感測放大器使用方式,因為所有的位線都必須被讀取,以實現回寫的目的。由於VLT讀取並不是破壞性的,因而無需回寫操作,且多個內存單元可共享感測放大器。
另一個問題是如何在一個MAT實體數組中配置這些MAT。基於VLT MAT的靈活性,實體上配置這些MAT可以不必與邏輯上的配置完全吻合。只要妥善安排各總線的路徑,任何形式的配置都是可能的。舉例來說,一個內存組可被配置為4×16個MAT數組,同時傳輸理論上與傳統LPDDR4相同的數據。
圖8:內存分頁選擇,其中被選定的MAT是紅色的。傳統DRAM透過行來選擇分頁,而VLT DRAM則以單元區塊選擇分頁
圖8說明傳統DRAM和VLT技術在內存分頁選擇上有什麼不同:傳統DRAM選擇一行中的所有MAT,而VLT則從中選擇了一個4×8的MAT區塊。
由VLT製造的LPDDR4,在外部操作上與傳統LPDDR4完全相同。內部操作可能有所差異,例如不必再回寫和預充電,但這並不會影響DDR控制器;如果滿足了VLT的時序要求,其內存的邏輯組織方式與傳統DDR完全一致。
免除刷新
VLT內存單元最明顯的優點之一就是不需要刷新。不過,刷新已經成為DRAM作業的一部份了;無論內存處於閒置狀態或是被接通,都必須進行刷新操作,以避免數據丟失。
完整的DDR控制器狀態機說明了刷新對於運作的影響,如圖9所示,所有紅色的狀態都與刷新或者基於刷新的分支相關;而使用了VLT技術,這些狀態都是冗餘的,而且能夠被消除。
圖9:傳統DRAM建置的LPDDR4狀態原理圖,與刷新有關的狀態以及與基於刷新的有關分支狀態都被標註為紅色,標註為灰色的狀態則與接口相關
圖10則是一種簡化的狀態機,其中與刷新有關的狀態都已經移除了。在設計基於VLT的內存時,設計者可以選擇現有的DDR控制器,因應那些不需要的狀態加以調整;也可以設計優化的DDR控制器,省去所有與刷新相關的電路——這種方法將占用更小的晶片面積,以及降低功耗。無論選擇哪一種控制器,都不會影響其他系統與內存晶片的互動。
圖10:移除與刷新相關狀態後的LPDDR4狀態原理圖
總結
VLT內存單元可以打造一種比普通DRAM內存單元成本更少、功耗更低的內存,目前VLT內存晶片已能與現有的LPDDR4內存完全兼容了。透過適當設計架構、命令以及時序,VLT內存晶片就能與傳統內存晶片無差別地應用在實際系統上。
基於VLT的內存數組採用一個可在內部作業處理差異的接口,使其得以與標準的LPDDR4控制器配合使用。換句話說,設計一款免刷新的LPDDR4控制器,使其仍具備完整的控制器功能以支持外部接口,並確保現有驅動器都能繼續正常作業,而只是在內部忽略與刷新有關的操作,將有助於大幅節省成本,以及降低功耗。
晶閘管是一種結構複雜的電子器件,在電學上等效於一對交叉耦合的雙極型電晶體。由於鎖存的形成,這種結構非常適合存儲器;與當前基於電容的DRAM相比,晶閘管內存不需要刷新。晶閘管於20世紀50年代被發明,之前人們曾屢次嘗試將其應用於SRAM市場,但都未能成功。
2016-2021年中國內存行業市場需求與投資諮詢報告顯示,VLT存儲單元已在2015年通過驗證,目前一款新的完整存儲器測試晶片正處於早期測試階段。