CPU 能否和內存集成在一起?


目前排名第一的 @林燦斌 答案講了:實際上這個目前是不存在任何技術問題的,有的只是基於成本等因素的考量。

遺憾的是回答只提了一個擦邊球PoP,也並沒有解釋清楚基於成本是怎麼考量的所以我們放棄不這麼做。單純從封裝(Packaging)層面並不能真正解釋集成(Integration)的本質。因為將電路做在一個package里才算是集成,而PoP顯然是兩個Package再透過電路連在一起。


現在好一點的CPU都已經PoP(package on package)了,屬於2.5D的範疇

在主流高端CPU都已經實現了,就放一張示意圖

好吧,這樣也算是封裝在一片晶元里。這沒問題,成本上也沒問題。但可能並不是真正做在一片上。

僅就封裝而言我也說不了什麼更多的了。但這個問題從半導體工藝出發應該顯得更加妥當。

然後解釋一下為什麼現在只能將logic電路跟memory分開,而根本無法(不會)集成到一片晶片上,我想這才是重點

原因當然很簡單,原理不一樣導致工藝線不一樣(Processor最小單元是一個HKMG,而memory如果是DRAM的話個能需要一晶體管配上一電容,而NAND的話要SONOS……反正工藝都不一樣)。這也就是為什麼台積電不太做得好memory的原因。

邏輯電路和內存的製造工序不一樣,說通俗了就是:

比如做一個披薩,要一半是海鮮的一半是燒肉的,可有個限制就是要麼不加料要麼整個餅都加同一種料(這是平面工藝的精髓)

因此呢,胡亂來做可能會得到一塊五味雜呈沒辦法吃的(當然你覺得很美味我也沒辦法╮(╯▽╰)╭)
如果披薩還能吃的話,那晶元上的晶體管和電容這麼來可完全是沒辦法用的。

厲害的大廚當然有,相信你也想得到,非要做的話,就先在半邊加個可以跟麵餅分開蓋子,然後可以開始撒料啊烘烤啊,做完之後把那半邊的蓋子連著上面撒的料移開;然後再把蓋子蓋在之前加工好的部分,然後撒料烘烤另外之前被蓋子擋住的麵餅。勉強還是能做。

不過要承擔的風險是一個餅被烤兩次,先做完的口味要被烤第二次,口味自然不好,料也浪費一倍,就是浪費時間也不節約成本。

在這個一切以成本看齊的半導體製造業,連麵餅都只能是Si沒得選的情況下,不會那麼奢侈。

把他們做在一起的產品當然有很多啦,google一下embedded memory就好了。這樣我們就可以花稍微貴一點點的錢嘗到兩個味道而不用買兩塊pizza~


這不是早有了嗎?實際上這個目前是不存在任何技術問題的,有的只是基於成本等因素的考量。
高通MSM8960等手機上的內存和SoC就是PoP(元件堆疊裝配技術)。
手機上有很多款產品都採用了這種技術,除了高通還有德州儀器、MTK等等,歷史非常悠久了。

像我們熟悉的小米手機2,熟悉電腦裝機的朋友一看「爾必達」就知道這玩意是個內存顆粒了,那麼CPU呢?你把整塊主板翻個遍都找不到APQ8064,因為它和內存顆粒

像我們熟悉的小米手機2,熟悉電腦裝機的朋友一看「爾必達」就知道這玩意是個內存顆粒了,那麼CPU呢?你把整塊主板翻個遍都找不到APQ8064,因為它和內存顆粒結♂合到了一起。

零距離連接,要拆下來可以用熱風槍使勁吹(中間是錫),然後用鑷子鉗下來。

零距離連接,要拆下來可以用熱風槍使勁吹(中間是錫),然後用鑷子鉗下來。

這就是所謂的Package on Package,又稱Missionary Position

其實下面這個才是[ 上層儲存(RAM or ROM),下層邏輯 ]

其實下面這個才是[ 上層儲存(RAM or ROM),下層邏輯 ]

至於PC平台不採用,顯然是

至於PC平台不採用,顯然是散熱問題,另外帶來的性能提升也不明顯,反而會讓後期升級非常不便相對成本來說也不划算。只有手機這樣低功耗、寸土寸金的設備才會用這種傳教士式堆疊技術,啊不對,是元件堆疊裝配技術。
這可以集成相對大容量的內存,例如小米2的單片2GiB的內存。而其他集成方法,還有像電子類的工科大學生們所熟知的「51單片機」之類的。


有的有的,前面有人說了PoP形式的,現在大多數手機平板的SoC都是這種形式。在同一die上的,比如XBox One的SoC,集成32MB SRAM:

上一代XBox 360 是10MB DRAM,不過是兩個die:

上一代XBox 360 是10MB DRAM,不過是兩個die:


一票微控制器都有集成內存,不僅集成內存連 flash 都有——就是說連硬碟都集成了
這是 Arduino Uno 的圖,只有一個大晶元,裡面什麼都集成


你的意思是L3大到能當內存用?大王你造嗎,世界上絕大多數工程問題的根源,就是甲方不給錢


負責任的講,FPGA行業已經開始把它們弄一起了了。(業內人士都知道我說的是誰)
ARM+FPGA+RAM+FLASH
剩下的用軟體。


HBM算不算
目前還是2.5D堆棧,進一步3D堆棧之後就是集成在一起了


單片機?


去年AMD發過一個PPT,截幾個圖吧。 有興趣可以去看看這個PPT,AMD和海力士開發HBM。http://img.videocardz.com/1/2014/05/HBM.pdf

比上面那些高大上太多。


問題:CPU 能否和內存集成在一起?
回答:從技術上來說一定是可以集成的,看到很多人回答了手機的,現在我從計算機方面說下:
首先內存的供電,散熱都不大,這個就為集成到CPU上提供了先決條件;
其次內存的單顆粒存儲空間越來越大,按照波爾定律,早晚內存會發展到輕鬆的集成到CPU中;
再次CPU從2010年就開始使勁繼承,吃了南橋吃北橋,現在主板的生產商都馬上沒大晶元往主板上安裝了。。。最大的大概就只能是IO或電源IC了。。,所以從CPU上來說吃掉內存太正常了。
最後就是現在CPU的L3已經不小了,放到20~30年前秒殺大多數單獨內存了好不。。所以一定是可以集成的。
參考下圖:

CPU有運算器,控制器,寄存器組,以及控制匯流排這些組成,現在的寄存器組裡存的還都是指令寄存器,程序計數器,地址寄存器,指令解碼器,在這些寄存下加個大容量的RAM就可以當內存用了。。

CPU有運算器,控制器,寄存器組,以及控制匯流排這些組成,現在的寄存器組裡存的還都是指令寄存器,程序計數器,地址寄存器,指令解碼器,在這些寄存下加個大容量的RAM就可以當內存用了。。
總結:CPU絕對能集成內存,現在計算機硬體廠商上來說集成一定是未來的發展大方向,最後能留下來的都是掌握核心的企業了。。例如CPU的廠商,存儲的廠商,顯示設備的廠商,其他的主板顯卡這樣的早晚全部死光。。。

PS.展望下。。 以後的電腦里。。2個晶元,3條線連接CPU和存儲和顯示設備。。 木有板木有卡。。 然後下載Chrome 大力推廣他的OS,以後說不定連存儲都被雲服務吞了,以後的電腦趨勢就是CPU集成在顯示設備上。。
好了,這些扯淡居多,但是可能性很大很大,個人親歷了06年到現在硬體市場的發展。。小板卡廠家退出市場,中等的找代工,撤銷生產線。。 CPU高歌前進,整天換針腳~


1、不管是CPU還是Memory都是由Transistor構成的(不考慮DRAM的充放電,那個更慢),每個Transistor有0和1兩種狀態。在這兩種狀態之間切換是需要時間的。
2、CPU內部的寄存器/ALU的運行是被一個個時鐘cycle推動的,頻率越高cycle越小。電信號在傳遞的過程中也是需要時間的。

如果把內存直接集成到CPU上,因為面積過大,離CPU最遠的內存單元需要更長的時間來傳遞電信號,沒法與CPU同步。直白點說,如果CPU在這個cycle上要往遠處的內存上寫個數據,然後下一個cycle就要讀(假設沒有pipeline),讀的時候這個數據還沒被寫到內存上呢。怎麼辦?只能是讓CPU把數據往靠得近的內存上寫,然後寫不下了就把裡面內存的數據放到外面,讀數據的時候也是就近讀,讀不到了再查離得遠的,這不就是cache么。。。

最後,cache用的是速度快的SRAM,memory用的是速度慢但是便宜的DRAM,成本上也不一樣。多級緩存能夠滿足performance的情況下,沒必要用大塊的SRAM來集成在CPU上當內存。


是可以啊,就看你買不買得起了。很多架構的問題之所以這樣是因為你沒那麼多錢可以花。這個世界上還有顯卡集群呢,但是我相信你不會用來實現一個網站的對吧。


完全可以呀 這種東西叫做單片機


題主所說的內存一般指 DRAM 吧。下面的說法主要針對一般的計算機。

宏觀來看,CPU 和 DRAM 已經「集成」在了一起。看下圖:

可以看到,北橋連接了 CPU、DRAM 等一些高速設備,南橋連接了一些低速的 I/O 設備,南橋和北橋通由匯流排連接。即使 CPU、DRAM 都被定義為高速設備,但 CPU 內部 SRAM 和 DRAM 本身比起來,速度上還是有很大的差距的。下圖是計算機的存儲架構。

可以看到,北橋連接了 CPU、DRAM 等一些高速設備,南橋連接了一些低速的 I/O 設備,南橋和北橋通由匯流排連接。即使 CPU、DRAM 都被定義為高速設備,但 CPU 內部 SRAM 和 DRAM 本身比起來,速度上還是有很大的差距的。下圖是計算機的存儲架構。

其實 CPU 和 內存 是理論上可以集成在一起的。但是,我們知道,CPU 的主要功能是計算,而內存主要負責存儲,兩者功能不同,而且都非常具備專業性,這容易催生兩個不同的領域/公司。隨著需求和製作工藝的提升,CPU 越來越昂貴,內存越來越廉價,自然而然,兩者到最後必然會分開,因為不可能因為內存的損害而去更換一整個 CPU 的。

其實 CPU 和 內存 是理論上可以集成在一起的。但是,我們知道,CPU 的主要功能是計算,而內存主要負責存儲,兩者功能不同,而且都非常具備專業性,這容易催生兩個不同的領域/公司。隨著需求和製作工藝的提升,CPU 越來越昂貴,內存越來越廉價,自然而然,兩者到最後必然會分開,因為不可能因為內存的損害而去更換一整個 CPU 的。

CPU 選擇與 SRAM 集合在一起,因為人家夠省電發熱量更少,雖然貴了點,但也爭取了速度。所以首先,CPU 不是不能和 DRAM 集成在一起,只是有所取捨。

另一個原因是降低耦合,計算模塊和存儲模塊分開是個很好的做法。最後,計算機今天的模樣,成本和效率起了很大的作用。


現在有很多這樣的技術了,很多手機裡面也用用到,就像上面幾位大神提到的那樣。但大家一定要把SRAM和DRAM區分開!!!兩者都算是memory,但實際不一樣的!!!像台式機處理器裡面集成的L1 L2 L3高速緩存,那和我們平常說得電腦內存還有手機內存不一樣的!

台式機處理器裡面集成的高速緩存是SRAM,每個存儲單元一般都是由4到6個晶體管組成,結構複雜,集成度低(單位面積存儲單元個數少,也就意味著容量很難做得很大),成本高。但它的速度非常快,是普通電腦內存還有我們常說的手機內存所不能及的(我們常說的電腦和手機內存是DRAM,不是SRAM)。這也是為什麼CPU裡面集成的高速緩存可能只有幾十MB,而不是像電腦內存那樣好幾GB。

DRAM每個存儲單元結構很簡單,就是一個電容+一個MOS晶體管,結構簡單,製造成本低,集成度高(容量很容易做得很大),不過速度比SRAM要慢。樓主問的應該是將CPU和DRAM結合在一起,大家別理解錯了!


目前計算機的性能瓶頸,並不在CPU和內存.
在這上面使勁,不符合好鋼用在刀刃上的宗旨.


單片機



內存晶元面積較大,有幾層引線,而cpu多達十幾層引線,所以一起生產對於晶元工藝來說是一種浪費!


就舉一個例子。
07年的HTC Touch Diamond,CPU是Qualcomm的MSM7200,裡面就直接集成的192M的RAM。


現在的實力,已經完全能實現了,比如2011年還是什麼時候的片上概念,將北橋集成到CPU,目前已經實現,對於集成一點SDRAM來說更不是問題,最大的問題就是故障,現在的計算機使用模塊化的原因也是如此,如果這樣出現故障,甚至要直接報廢一片晶元?


推薦閱讀:

你碰到過的最難調試的 Bug 是什麼樣的?
電腦取隨機數是什麼原理,是真正的隨機數嗎?

TAG:中央處理器 (CPU) | 計算機 | 內存 (RAM) | 晶元(集成電路) | SoC |