然而,涉及晶片橋、中介層、侵蝕性幾何形狀(Aggressive Geometries)和微米級微凸點連接的新整合技術已經改變了演算法。戈登‧摩爾曾在1965年指出:「使用獨立封裝並彼此互聯的更小功能來構建的大型系統可能更為經濟。」
如今許多SoC在內核處理方面彼此相似,而特定的週邊功能卻有所不同。有的應用可能需要視覺處理;有的應用需要直接從天線獲取訊號;而有的應用需要SoC提供更多的記憶體。將這些功能分離可獲得一定的價值,比如混合搭配不同的功能,但另一個重要價值是每個功能,像是處理、類比、記憶體、數位訊號處理(DSP)等,可以在另一個不同於內核運算所用的流程上得到更好的優化。
鑒於這些功能是相互分離的(在小晶片或Tile上實施),因此我們面臨的挑戰是在保持與單晶片接近的性能和功耗的同時,將這些功能全部整合到單個封裝。透過將高級介面匯流排(AIB)與支援將多個晶片異構整合到單個封裝的封裝技術相結合,可以輕易解決這個問題(圖1)。最近發布的AIB互連方案為晶片和小晶片互連提供了一種快速、靈活且有助於輕鬆布局的方法。本白皮書介紹了AIB的高級特性和用途,並將展示各種AIB功能如何支援大規模設計和實現可靠的高速連接。

AIB目標
在過去25年中,設備到設備介面使用複雜電路透過幾根電纜實現高速傳輸;PCI Express就是其中一個例子。AIB使用全新高密度封裝技術所支援的超寬平行介面,並一舉扭轉了這一趨勢。透過以相對較低的速度運行介面的每條電纜,可以簡化每個發送器和接收器的電路,並占用很少的晶片區域。
AIB將資料從一個小晶片上的微凸塊移動到另一台相鄰設備上的微凸塊。全新高密度封裝微凸塊的間距很小,進而減少了介面所需的空間。與使用間距130或150微米的凸塊的標準倒裝晶片封裝相比,高密度封裝技術通常支援間距為55微米的微凸塊。
與只能合理使用幾百根線路的傳統介面(如採用標準技術的DDR記憶體)相比,這種小間距允許單個AIB介面支援數千個訊號。單個AIB資料線的時鐘頻率為GHz,並具有多個配置和速度選項,以確保AIB可以支援各種應用。
儘管AIB沒有指定最大時脈速率,並且最小速率非常低(50MHz),但AIB卻能夠在高頻寬下運行,每條資料線的典型資料速率為每秒2Gb。每個小晶片都記錄了其預期的時脈速率範圍,以便選擇不同設備的設計人員可以確保它們以相容的速度運行。通常,時鐘的工作頻率常在1GHz或以下,但只要介面的兩端都支援更高的速度,系統便可以支援。
AIB是一種實體層(PHY)規範(圖2);它占據了OSI參考模型中的最低級別。它的一側連接到單獨晶片或小晶片上的相應AIB介面;另一側連接到媒體存取控制器(MAC)。它僅用於從MAC中獲取資料並將其發送到連接的晶片,或者從連接的晶片接收訊號並將訊號傳遞給MAC。

焊墊(Footprint)被設計為在微凸塊間距的範圍內盡可能小。訊號被聚集在一起,以便更有效地利用晶片的邊緣(稱為海岸線),並提供快速且較短的低偏差訊號線。對於AIB Gen1,由於AIB介面中每條資料線的資料速率為2Gbps,因此避免了訓練和訊號調節(例如均衡和預加重),以保持較小的電路尺寸。業界常見的微凸塊間距為55微米,隨著技術的發展,未來的AIB支援低至10微米的微凸塊間距。
AIB配置
AIB有兩種基本配置。AIB Base適用於需要最少電路的羽量級實施。AIB Plus可以處理更高速度,並支援高速狀態下的可靠運行。
由於支援DDR功能,所以AIB Plus介面可以在2Gbps範圍內移動資料。但是,在此範圍內保持訊號偏差和收緊時序變得更加困難。延遲鎖相迴路(DLL)可幫助調整相位關係,而工作周期(Duty Cycle)校正(DCC)電路則有助於確保盡可能接近50%的時鐘工作週期。提供這些電路的初始化和校準以確保順利啟動和運行。
這兩種配置之間的最大差異與資料傳輸速率有關。AIB Base使用單倍數據速率(SDR)方案發出訊號;而除SDR外,AIB Plus還支援雙倍數據速率(DDR)訊令。借助DDR,資料可以在時鐘的上下邊緣傳輸,資料速率比SDR提高一倍(圖3)。

AIB架構
AIB介面包括I/O,這些I/O分組為本身可以堆疊成一列的通道。一列包含1、2、4、8、12、16或24個相同通道。55微米的微凸塊最多支持一個通道160個I/O;這個數字會隨著凸塊間距的減小而增加(圖4)。I/O塊如下所示,顯示了SDR和DDR(僅限AIB Plus)版本中的傳輸(TX)和接收(RX)塊(圖5)。


I/O方案旨在實現簡化,同時允許兩個主要安排。特定I/O將是TX或RX訊號;沒有雙向訊號。配置通道時,一個通道可以具有所有TX、所有RX或一半TX/一半RX(圖6)。

一方面,這種方案為處理可能正在接受輸入並將其傳遞給另一個晶片的小晶片提供了靈活性。另一方面,如果小晶片通過其接收輸入(例如記憶體)的同一介面返回結果,則可以使用平衡的TX/RX介面。
AIB有兩個介面:一個通過微凸塊連接到附近小晶片中的相應AIB介面,另一個連接到其自身小晶片中的MAC代碼。第一個介面由I/O、轉發時鐘以及初始化和校準過程中使用的控制訊號組成(圖7)。

MAC介面則由執行與外部介面相同功能的訊號組成,但這些訊號的詳細資訊和特定電子格式有所不同。舉例來說,從MAC接收一個時鐘訊號作為單端內部訊號,而相應的時鐘訊號將作為兩個SDR訊號,並通過外部介面發送到相鄰的小晶片(即雙端時鐘)(圖8)。

高資料速率功能
在GHz速率傳輸下,時序很緊湊。訊號到訊號的偏移很重要,同樣地,時鐘到訊號的偏移和抖動也很重要。當時鐘的兩個邊緣都用於資料傳輸(DDR)時,工作周期也很關鍵。因此,AIB塊中已包含一些功能,尤其是支援雙倍數據傳輸速率的AIB Plus配置。
轉發時鐘
為確保在接收AIB塊中成功接收資料,用於傳輸資料的時鐘被轉發到接收端,後者可用於捕捉資料。該時鐘將進入到MAC中,因此AIB中不一定有時鐘域變更,但MAC中可能有變更。AIB Base和AIB Plus配置均提供此功能(圖9)。

時鐘訊號以雙端時鐘的形式轉發,同時發送真實版本和反相版本,以將其重新轉換回接收端的單端時鐘。這樣可以保持時鐘訊號的品質,因為在重新組合雙端時鐘時,時鐘上的共模雜訊會消失。由於使用I/O單元發送時鐘的兩個版本以及資料,因此可確保邊緣對齊。
接收域時鐘
某些小晶片可能沒有自己的獨立時鐘源,而是傾向于利用與其相連的晶片或小晶片的時鐘。例如,記憶體可能只是在訪問該記憶體的CPU晶片的時鐘上運行。
還是以記憶體/CPU為例,當記憶體接收資料時,例如要獲取資料的位址,轉發時鐘將使記憶體與CPU晶片保持同步。但是,當記憶體發送回提取的資料時,它需要一個時鐘,並且轉發時鐘僅影響接收捕捉,而不影響傳輸。因此,可以將CPU晶片時鐘(在本例中為從記憶體中接收資料的時鐘)作為記憶體的傳輸時鐘。該時鐘被稱為接收域時鐘,僅在AIB Plus介面中可用。
在圖10中,可以看到使用接收域時鐘的TX單元。在本例中,該時鐘被發送到MAC。在MAC中,該時鐘將被返回並用於傳輸時鐘,然後將其轉發回接收端。在這種情況下,轉發時鐘實際上與原始接收時鐘相同,因此看上去效率很低。但該圖會讓人產生一些誤解,因為各種時鐘訊號都不完全相同,它們的相位不同。透過獲取接收域時鐘並將其轉發回接收端,可以確保該時鐘與正在傳輸的資料之間的邊緣對齊。請注意,儘管MAC接收了接收域時鐘,但並不需要使用它傳輸資料;它可能有一個單獨的時鐘域用來傳輸資料。以下僅是一種可能的配置。

工作周期校正
對於DDR資料交換,根據規範,用於時鐘的工作周期變化幅度不能超過3%,因為兩個邊緣均用於資料計時。在沒有說明的情況下,1Ghz(意味著2Gbps資料)是一個極為嚴格的規範。因此,AIB Plus指定工作周期校正(DCC)模組。從技術上來說,校正塊不是必須的,但是實際使用中極有可能需要它(圖11)。

前向時鐘相位調整
同樣,在DDR連接的接收端,前向時鐘可能在發送和接收小晶片之間增加額外的偏差。在這樣的速率下,微小的相移可能引發問題,因此需要為AIB Plus指定延遲鎖相迴路。這也是可選的,但是極有可能需要它來確保在系統在所有情況下都能平穩運行(圖12)。

重定時
在雙倍數據速率下,透過AIB介面輸出資料的ASIC或FPGA難以滿足資料路徑時序的要求。AIB Plus實施具有對I/O模組之前的模組進行重定時的選項。使用者可以靈活定義重定時的工作方式。可以簡單地使用一個或兩個寄存器分解資料路徑,以便更輕鬆在完整的電路上實現時序收斂;也可透過增加FIFO添加時鐘相位補償(圖13)。

例如英特爾的FPGA應用通常使用相位補償FIFO,即使晶片將相同的參考時鐘用於內核和I/O,這些時鐘的相位差也可能差異巨大或未知。相位補償FIFO確保正確的跨時鐘-相位域,一般來說,AIB並不指定重定時的具體方式,但很可能需要至少一個重定時觸發器。
AIB物理布局
AIB的設計簡化了與小晶片的連接,通道內的訊號在凸塊行中消除。凸塊行的數量保持最低,此外,必須滿足線路長度和路由的要求(圖14)。將AIB訊號分配給微凸塊影響了該平衡,凸塊分配也進行了調整,使凸塊之間的線路在長度上大致相等,最大限度減少中介層引發的訊號偏移。

所有訊號均並列,最大限度降低了介面對凸塊布局的影響。例如,其他任何非AIB訊號都不會將凸塊放置於AIB使用的任何區域內。這也規定了如何使用晶片或小晶片端AIB介面的最小海岸線。當然,產生的總海岸線將取決於每通道的訊號數量和一列中的通道數量(圖15)。

在正常AIB操作期間,介面兩端沒有差別。但是在啟動期間,兩端中的一端需要控制並跟蹤初始化和校準序列。只有在啟動階段,介面的一端做為主控埠,另一端做為從埠。無論介面是主控埠還是從埠,都將記錄在晶片或小晶片資料表中。主控埠必須連接從埠,從埠必須連接主控埠(圖16)。

在某些實例中,可能需要一定的靈活性,以便將介面的一端做為主控埠或從埠。這種介面被稱作雙模介面,如果連接主控埠,可以將其配置為從埠;如果連接從埠,可以將其配置為主控埠。
雖然每列的所有通道都是相同的,但為了方便起見,通道都進行了編號。這些編號對AIB來說沒有任何意義,而且所有通道都可以用於任何用途。不過在某些情況下,如果通道在OSI堆疊中以較高的級別連接,那麼對於特定應用來說,不同的通道之間有著順序和重要性之分。根據小晶片的排列方向,通道可以反向連接。
換句話說,如果有12條通道,那麼在某些情況下,一側的通道0可以連接另一側的通道0,而在另一些情況下,通道0可能連接通道11。大多數情況下,通道0和通道11是相同的,因此這種反向連接沒有任何問題。如果這有關係,那麼在通道順序非常重要的情況下,MAC中可能需要反向連接通道。
冗餘
AIB連接可能涉及多達3,840個I/O,在中介層中以軌跡的形式實現。相對於生產線故障的數量來說,中介層成品率可能很高,但線路眾多,也存在單個故障毀掉整個組裝的風險。99.9%的線路成品率仍然可能是0%的模組成品率。為提高模組成品率,AIB支援兩種類型的冗餘。
I/O參與的主動冗餘。如果發現連接錯誤,所有前往介面中心的訊號將轉移至相鄰微凸塊,利用中間的兩個空閒訊號。這種單線路故障可以按通道逐一排除,以提高成品率。
測試時可以啟動這種冗餘,在模組中保存轉移位置,系統上電時,正確的連接將出現在轉移後的位置。兩個訊號會在最早的上電階段—使用主動冗餘之前被使用。對於這兩個訊號,使用的是被動冗餘。這相當於每個訊號會使用兩個凸塊,如果其中一個連接失敗,另一個連接可保持完整。
AIB與SerDes延遲對比則如表1所示。AIB的延遲相比典型串列器/解串器(SerDes)大幅降低。JESD204C實施要求進行傳輸層映射、64B/66B編碼/解碼,以及串列/解串,因此數位延遲較長。SerDes模擬延遲較長,主要因為需要在單端和差分間轉換,以及進行時鐘資料恢復。
AIB未來發展趨勢
直接射頻類比數位轉換器(ADC)/數位轉換器等超高頻寬應用將繼續推動AIB提高頻寬、減少占用空間和降低能耗。借助精心的I/O設計,資料速率將實現翻倍,達到4Gbps。
隨著高密度封裝技術的不斷改進,產業標準的微間距將大幅縮小,目前是55微米,未來可能縮小至1微米。為了將每位能耗降低至0.5皮焦耳以下,I/O電壓擺幅可降低至0.4V。後代AIB與前代AIB元件之間的相容性至關重要,將成為未來實現AIB改進的重要因素。
總而言之,AIB介面可實現晶片和小晶片之間的新型短程高速連接,可將資料傳輸速率提升高達2Gbps(甚至更高);支援超過3,000個收發訊號;採用緊湊型晶片布局,以最大限度地降低晶片占用空間;並運用微凸塊技術,最大限度地縮小凸塊間距;精心設計的訊號布局和時序電路有助於保持高速訊號的微小偏移,而冗餘可幫助確保高成品率。