當個人電腦的心臟─中央處理器,企圖以摩爾定律往前奔時,無論是英特爾的平台還是AMD的機器,各家晶片組的較量多少可以明顯看出當前天下局勢...
當個人電腦的心臟─中央處理器,企圖以摩爾定律往前奔時,無論是英特爾的平台還是AMD的機器,各家晶片組的較量多少可以明顯看出當前天下局勢。
PCI Express繼承,沿用多年PCI匯流排的企圖已成定局。同時,PCI Express x16取代AGP 8x的局勢也是大勢所趨,該走順流還是逆流的格局,就看各家門派的睿智了。
無庸置疑,PCI Express傳輸協定(Protocol)的檢驗與查證,絕對是工程人員要去面對的課題。從相關產品或元件的研究開發、動作檢證到品質鑑定,都難逃這個命運。
通常,傳輸協定的處理都是隸屬於上層的邏輯面向處理。然而,正確的「Probing」也是不可欠缺的一個工程環節。PCI Express與PCI匯流排雖然僅有一個英文字之差,兩者本質上卻是大不相同。PCI匯流排的傳輸協定可以說是「信號傳送+傳輸協定」的構成,而PCI Express卻是「實體層+資料連結層+資料交易層」的組合。
由此觀之,PCI Express匯流排協定,比較接近通信上的協定方式。無形之中,也就說明了PCI Express這樣子高速的串列匯流排,在傳輸協定上的測定與評估方式或手法,與過去PCI的並列式匯流排是截然不同的。
無論閣下是LSI的設計者還是機器裝置的開發人員,當在進行高速串列介面傳輸協定的解析時,了解一些重要關鍵的檢證觀念與方法,肯定會對您有所幫助。
誠如前面所提及,PCI匯流排的內涵是信號與傳輸協定複雜地糾結在一起,優點是協定構造本體顯得單純,缺點是當延伸擴張位元幅度的場合時,自由度上會受到限制。通常,只需要借助於邏輯分析儀(Logic Analyzer)、介面解析工具(Bus Analyzer),逐一追蹤匯流排上動作信號的位階(Signal level),就足以應付所需,可以檢查、驗證傳輸協定。
PCI Express的傳輸協定是區分階層的概念,採用了「實體層+資料連結層+資料交易層」的構造。我們先來澄清一件事情,將傳輸協定切割成分層式的觀念,究竟會帶來什麼好處,乍看之下豈不是增加傳輸的額外負擔(Overhead)?
其實,要解開這個問題並不困難。最簡易的回答就是擁有擴充性、延伸性的特徵。舉個例子來說,假設未來需要更快的傳輸速度,這時僅需要針對實體層來下手即可,也許採用新的傳輸媒介或是使用嶄新的編碼手段,就足以滿足這個需求。而專門用來處理傳輸協定的上階邏輯層,根本無須去變動。
PCI Express的邏輯層分別由「資料連結層+資料交易層」組成,進行傳輸協定的處理。實際的場合,各層的動作做好確實的評估與檢證,乃是重要大事。當然啦!並不只侷限於PCI Expre-ss,其他類似的高速匯流排也是具有一樣的理念。
無論閣下是LSI控制晶片的開發者還是裝置的研發人員,工作上都會攸關到此點。於茲,就將高速串列匯流排的協定檢證之主要項目,依據各個處理層的順序,整理如下:
以上所列舉的各個項目的評估到驗證,會隨著實際開發的樣品,而有所差異。列舉幾個例子來說,如果是開發具有PCI Express介面的LSI或IP來說,協定堆疊(Protocol Stack)內部詳細的動作,勢必要做一番徹底的檢證。可想而知,這個檢證的動作,是要耗費相當的時間與心力的。
另外一方面,若是開發的產品是納入已經被驗證合格PCI Express介面的場合,則是只要做好上層軟體協定處理的動作合乎規範就可以了,這多少可以減少可貴的勞力重擔。
總之,在任何場合,大家都要遵守規格定下的遊戲規則,也就是必須要涵蓋PCI-SIG組織所規範的互容性測試(Compliance Test)準則,描述PCI Express介面協定的基本動作。
採用評估板來檢證PCI Express介面的傳輸協定,與實體層的檢驗,基本的觀念是一致的,對於測定對象能夠正確取出的探測技術(Probing)是根本之道。只是,差異的地方在於實體層的量測,牽涉到類比的信號波形。而邏輯層面的評估是邏輯信號「1」與「0」的判定。在此場合下,留意對於測定對象的影響,控制在最小限制內。
如果是因為探測技術而造成了測定對象的信號混亂,不就是偷雞不著蝕把米嗎?因此,先確立一個觀念—為了因應高速介面的信號測定,必須尋求合乎規範又精確的探測技術。
以目前的情況來觀察,高速串列匯流排用來檢證傳輸協定所用的探測工具(Probe),大致有以下幾個種類:(請留意,Probe就是一般使用之探針或探棒這個詞彙。)
第一類,稱之為「開槽插入式─Slot Interposer」(Passive)型與主動式(Active)型之分別。開槽插入式的探測技術,是在高速動作的微處理器之輸出入匯流排作信號動作檢證時,所培育出來的測定技術。當電腦的主板上安裝有標準的連接器之際,擴充介面板與連接器之間,就可以介入開槽插入式的探測方式。對於被動式的場合,是將差動信號配線以分岔的形式取出。為了讓探測端不會成為「線腳─Stub」效應引起信號的混亂,在分岐部分的近旁,會安置有絕緣阻抗。線腳效應會招致特性阻抗的變化,因而會產生信號反射的現象,這種結果很可能使得測定對象的原本波形產生了變化。
而主動型的形式,無論是外型或功能,就顯得複雜許多。不僅具有分析儀(Analyzer),有些還可以輸入來自信號產生器(Protocol Exerciser)的信號,安裝了4X4矩陣式開關切換與緩衝器,可以因應差動信號巷道(Lane)信號傳送方向的各種測定條件。
第二類,特別稱之為「中途匯流排─Mid Bus Probe」(圖2)。
第三類,即是「引線導向型─Lead Probe」。如果電路板的安裝密度相當高,又沒有連接器的場合,即使狹窄的空間,也可以完成探測的任務。
回顧實體層的測定,該選用被動式或是主動式的探測工具是極為重要的問題。一般來說,為了確保電阻阻抗成分負荷與電容量負荷的平衡,都會採用主動式的款式比較適用。然而,站在邏輯位階測定的觀點來看,其實,使用主動式或被動式的探測工具,差異並不太大。因此,在選擇探測工具時,無妨多考量尺寸大小、散熱對策與使用安裝的容易程度等,反而來得更為實際。
綜合以上的種種探討,我們不難得知,當不具備有標準連接器的場合,能夠採用測定的方法不外乎中途匯流排以及引線導向型2種探測技術。
英特爾公司已公開中途匯流排的設計準則有公開,已經確立了標準的探測手法。當設計崁入式機器或是晶片間的接續,又沒有安裝有標準的PCI Express連接器時,中途匯流排的探測方式,就顯得無比珍貴。
使用的方法就是在設計階段,就在電路配線基板上事先納入連接座的組件作為探測點(Probe Point),方便探測器的插入。為了讓探測點對於差動信號的影響降到最低的程度,當沒有連接探棒的時候,負荷約0.2pF。當連接上探棒的時候,最大負荷所引起的信號損失估計為1.5dB,信號抖動為10pS。實際探測工具(Probe)的形狀與負荷數值,要查閱儀器廠家所公開的設計指引(PCI Express Logic Analyzer Probing Design Guide)。
若是透過阻尼(Damping)的連接,直接量測配線基板上的差動信號,這時就必須採用上述的引線導向型探測技術,讓廣帶域示波器來測定信號波形。當然啦!此時配線基板上就無須配置任何連接器了。
純粹就PCI Express匯流排的場合來說,用來檢證介面協定的測試裝置,主要有4個種類:
1.使用泛用型的邏輯分析儀解析協定的裝置(圖3),可應用於硬體開發用。邏輯分析儀一向是數位電路與介面匯流排解析的常用工具。但是,面對複雜的高速串列匯流排時,觸發(Trigger)的設定相當繁瑣。通常應付的對策就是追加了專用的封包認知前端(Frontend)部分。
2.針對PCI Express專用的協定分析儀裝置,傾向於軟體開發用。此種裝置的最大好處就是具備了高能力的觸發功能,可以容易因應複雜的傳輸協定。同時,由於PCI Express的資料連結幅度有x1,x2,x4,x8,x16,x32等多種變化,專用型的協定分析儀裝置,使用彈性較佳。
3.Protocol Exerciser(圖4),能夠模擬裝置來傳送、接收封包,來驗證具備PCI Express介面的LSI或系統,也可以作為負載試驗用。Protocol Exerciser的使用型態,非常有彈性,一來,可以連接到開發的裝置,插入錯誤的封包或各式各樣的邊界值,進行傳輸的試驗,二來,模擬成開發中的裝置,來檢證上層的傳輸協定,BIOS、裝置驅動程式的除錯(Debug)也是可以做到的。三來,也可以針對利用PCI Express的系統,作為其負載試驗。比如說未來的伺服器,系統狀態必須滿足多樣的負荷條件,虛擬通道的負荷,傳輸信號品質QoS的確立,都是重要的 (圖5)。
通常,Protocol Exerciser的內部會擁有組態空間(Configuration),在這個範圍之內可以自由地設定機能。
4.Protocol Test Card,通稱為「PTC卡」(圖6、7)。此工具乃Intel與Agilent Technology所共同開發,完全是針對進行互容性測試(Compliance Test)的目的而開發之專用裝置。「資料連結層」、「資料交易層」與「系統組態」的檢驗,就要藉助於這塊PTC卡。傳輸協定的檢證可以跨及主機板的檢驗、擴充介面板的檢驗與開關裝置(Switch)的檢驗等。
如果仔細來看PTC卡上的元件構成,可以見到搭載有FPGA、EEPROM快閃記憶體、SRAM記憶體以及USB介面。採用了FPGA元件的最大理由,是當規格變更時,對應的更改就很容易。其中的USB介面,就是作為測試的追蹤與控制。
PTC卡乃是針對傳輸協定的檢驗而設計的工具,固定採用x1的連接器。PTC卡本身僅能夠判定檢驗的合格與不合格罷了。因此,在板子上的兩端分別配置了中途匯流排的接續點,可以用來詳細測定傳輸協定的動作。系統組態的檢驗,就是要確立BIOS是否能夠就所有連接的PCI Express裝置正常地認識與構成,也就是檢驗「Enumeration」是否能夠順利完成(圖8)。
總之,依據裝置對象,配合檢驗的項目來選擇最合適的測試裝置,肯定可以減少工程師的重擔,縮短研究開發所耗掉的時間。工欲善其事,必先利其器,就是這個道理。目前,在市面上已經可以找到針對PCI Express協定做測試檢證的完整解決方案(圖9)。
同時,各家儀器廠商也都會提供LAI(Logic Analyzer Interface)的設計指南文獻,主要係針對中途匯流排的接續點,有清楚的交代。
(文中圖表請翻閱新通訊46期12月號)