依據von Neumann架構,計算機中記憶體和控制單元是分離的,這也是目前計算機及相關的半導體零件製造的指導方針。但是在目前海量資料的處理與儲存上,這樣的架構對資料的「讀取—處理—儲存」循環在資料傳送速度、功耗上形成重大挑戰。特別是記憶體本身因寫入速度、保留時間等的特性差異,從cache、DRAM、NAND等形成複雜層層相轉的記憶體體制(memory hierarchy),讓資料的處理循環變得更長、更耗能。
當網路的頻寬變大、人工智慧(AI)應用對於大數據處理的需求日益提高,上述的問題益發嚴重。這個問題的解決有多個面向,也分短、中、長期的戰術與戰略。
短的來說,新興記憶體在整合記憶體體制已初露曙光,基本上是朝向統一記憶體(united memories)的方向走,但都還有些距離。PCM容量密度現在比較大,速度雖然比NAND快很多,但還是不如DRAM,記憶體體制問題還殘留,功耗也還是問題。RRAM的容量密度還沒提上來,短期內只可能從NOR的替代切入。MRAM的速度較快,趕上DRAM了,但速度仍不足以直接與CPU匹配,容量密度與NAND相去更遠,這兩個問題分別要靠SOT MRAM與3D MRAM來解決。
中期的方案是CPU與記憶體單晶堆疊(monolithic stacking)的異質整合(heterogeneous integration),這方案將二者以晶片製造、異質封裝的方法同時提升資料傳遞速度、減少功耗。在二者的異質整合中,誰取得整合主導權就取得技術和商業的發言權,這也難怪現在晶圓代工廠和記憶體廠都開始建立自有封裝能力,整合封裝部分入自己的加值鍊。
長遠的對策是個顛覆von Neumann架構的做法——記憶體本身就可以做運算,記憶體和控制單元合為一體。如此一來,資料自然不必在記憶體與處理器間反覆搬運、遞送,能耗自然低,速度也快。
記憶體運算(in-memory computing)要能完全實現有2個先決條件。一是速度要快,要接近目前邏輯閘的速度。二是記憶體單元要多,目前功能複雜的元件閘數極多。傳統記憶體在這兩者間往往難以兼顧,是以目前記憶體運算開始以新興記憶體為實施主體。
新興記憶體都是以電阻大小做為0與1態的分別。但是對於有些新興記憶體,位元之間的電導(電阻的倒數)變異很大,如果用新興記憶體,如PCM,做為邏輯閘會因電導變異而在感應(sensing)邏輯閘運算結果的時候產生誤差,目前的努力方向之一就是在克服由電導變異產生運算誤差的問題。
MRAM的電導變異不大,目前的努力方向之一在於如何利用既存記憶體線路結構形成邏輯閘。方案之一很簡單,利用記憶體的週邊線路行解碼器(column decoder)的感測器組合,便可選取一個單元當記憶體,或者選取2個單元、配合感測器電壓的設定形成各式的邏輯閘。這樣設計的MRAM對於整體線路的面積負荷增加並不大,不至於惡化目前MRAM容量密度不高的事實。至於速度不夠快的問題,腦筋已動到SOT MRAM頭上,運算速度的確可以再提升。
短期間內大概沒法子將完整的複雜邏輯線路大幅搬移到記憶體中,現在新興記憶體的容量密度不足,也不夠快。但是可以想到的是將一些特殊應用、反覆使用的簡單運算先搬到記憶體中,比如AI晶片中常用的運算像純量內積(scalar product)、矩陣,向量相乘(matrix-vector multiplication)等運算先在記憶體中處理,後續的運算再傳遞至主處理器進行,這樣就可以大幅減少巨量資訊的搬動。
一個重要的題外話,如果記憶體運算真的是半導體的遠程未來,那麼是以邏輯為主的公司、還是記憶體為主的公司會在未來的競爭中勝出?這個問題值得想一想!
現為DIGITIMES顧問,1988年獲物理學博士學位,任教於中央大學,後轉往科技產業發展。曾任茂德科技董事及副總、普天茂德科技總經理、康帝科技總經理等職位。曾於 Taiwan Semicon 任諮詢委員,主持黃光論壇。2001~2002 獲選為台灣半導體產業協會監事、監事長。