宋晨陽,吳 松,何 威,時曉升
(中國電子科技集團公司第五十八研究所,江蘇無錫 214072)
隨著芯片國產化的飛速發(fā)展,國產芯片的測試需求也日益增加。集成電路測試[1]技術作為保證集成電路性能和質量的關鍵環(huán)節(jié),其在集成電路產業(yè)中的重要性不言而喻。國內在芯片自動化測試系統(tǒng)領域基礎較弱[2],多數(shù)自動化測試都基于國外引進的測試設備[3]開展,在量產測試中主要采用國外自動化測試設備ATE(Automatic Test Equipment)。但是ATE測試機臺價格昂貴,測試程序開發(fā)也較復雜[4]。同時,芯片測試模式下,ATE 測試機有別于傳統(tǒng)嵌入式軟件,測試程序也無法在線修改,不能進行現(xiàn)場調試。而在國產芯片研發(fā)階段的測試過程中,需要根據(jù)實際測試結果,實時調整測試方法和程序等。顯然,ATE 測試并不適用實驗環(huán)境下的自動化測試[5-6]。所以,實驗環(huán)境下,提供一套低成本、靈活性高、測試范圍廣的自動化測試系統(tǒng)[7-9]成為亟待解決的問題。
該文針對國產RS-422/485收發(fā)芯片的功能測試,設計并實現(xiàn)了一種自動化測試平臺,通過上位機[10-11]界面控制,可以同時實現(xiàn)多種隔離型、非隔離型RS-422/485 收發(fā)芯片的通信測試。
測試平臺主要由外部電源、測試底板和測試主機構成。測試底板包含電源控制模塊、FPGA 控制模塊、待測器件和串口通信模塊;測試主機即PC 機,配有基于LabVIEW 軟件開發(fā)的上位機程序;外部電源為兩路隔離電源,為測試底板上的器件供電,并且通過測試底板上的電源模塊的開關控制可以實現(xiàn)RS-422/485 收發(fā)芯片在3.3 V/5 V 兩種工況的切換。測試平臺架構如圖1 所示。
圖1 測試平臺架構
核心控制模塊的主控制器為FPGA,具體型號為EP3C25Q240C8N,此款FPGA 是由Altera 公司生產的cyclone3 系列FPGA,具有成本低廉、功耗小、性價比高等優(yōu)點,其性能指標也滿足測試平臺的使用要求。FPGA 主要實現(xiàn)兩項的主要功能:1)向RS-422/485 發(fā)送器發(fā)送相應的測試碼,并對相應的接收器的數(shù)據(jù)進行回讀,通過與發(fā)送數(shù)據(jù)進行比對,計算出待測芯片數(shù)據(jù)傳輸?shù)恼`碼率;2)通過底板232 串口模塊完成與上位機之間的通信,接收并處理上位機的控制指令以及上傳誤碼率等測試結果。
FPGA 的外部時鐘參考源選擇50 MHz 有源晶振,配置電路部分采用專用配置芯片,型號為EPCS16SI8N,該芯片內部自帶16 Mb Flash 存儲容量,可擦寫次數(shù)大于100 000 次。在系統(tǒng)調試階段,可以通過底板JTAG 接口實現(xiàn)在線調試,后期通過AS 接口將程序固化至配置芯片的內部Flash 中,實現(xiàn)上電后程序自啟動。由于需要測試芯片在兩種不同的電壓等級下測試,在5 V 測試條件下,F(xiàn)PGA 與待測芯片之間的數(shù)據(jù)信號需要進行3.3~5 V 電平轉換,底板上采用兩片電平轉換芯片,并由FPGA 控制其轉換通道的開關狀態(tài)。FPGA 啟動模式配置如圖2所示。上位機串口232通信模塊原理圖如圖3所示。
圖2 FPGA啟動模式配置原理圖
圖3 上位機232串口通信模塊原理圖
RS-422/485 是現(xiàn)代工業(yè)中應用范圍極為廣泛的兩種通信接口,都可以實現(xiàn)主設備和從設備之間的數(shù)據(jù)傳輸。兩者的主要區(qū)別是RS-485[12]通信是一種半雙工通信方式,其接口采用平衡驅動器和差分接收器,需要兩根數(shù)據(jù)線,其中一線定義為A,另一線定義為B。而RS-422[13]是在RS-485基礎上提出的一種全雙工的通信方式,即有四根信號線,四根信號線分別定義為Y、Z、A、B。Y、Z 用于發(fā)送,A、B 用于接收。兩者的電氣性能指標一致,最大通信速率為10 Mb/s。
目前,市場上RS-422/485 收發(fā)器大致分為兩類,即隔離型和非隔離型,隔離型芯片一般內部含有DC-DC 電路模塊,采用變壓器耦合的方式實現(xiàn)電氣隔離。在電路設計中,非隔離型收發(fā)器的數(shù)據(jù)端和總線端需要采用兩路隔離電源進行供電。目前,國產化芯片大多是對標國外主流芯片廠家的相關型號進行仿制,同一種功能類型的RS-422/485 收發(fā)芯片的封裝也大多采用如SOIC-16 等標準封裝。為了保證平臺的通用性,同時有效地控制設計成本,選用了三款芯片測試插座,分別用來放置隔離型RS-422/485、非隔離型RS-422、非隔離型RS-485 三種類型的某國產化芯片。為了便于對比測試,選用國 外ADI 公 司 的ADM2682、ADM2486、ADM2490。ADM2682 為 隔離型RS-422,ADM2486 為RS-485,ADM2490 為非隔離型RS-422。其中一路非隔離型RS-422 通信模塊部分原理圖如圖4 所示。
圖4 非隔離型RS-422通信模塊部分原理圖
為了驗證硬件設計本身的可靠性,需要首先進行板級測試[14],將已經通過篩選考核的國外成品芯片(如ADM2490)的引腳按照“Y—A、B—Z”的接線方式進行自回環(huán)測試,若通信測試正常,則說明板級鏈路功能正常,可以進行國產芯片的通信測試。
通過軟件配置可以實現(xiàn)“國產芯片發(fā)送/國外芯片接收”或者“國產芯片接收/國外芯片發(fā)送”兩種通信模式,以此來測試國產化芯片數(shù)據(jù)發(fā)送功能以及接收功能是否正常。上述兩種測試模式不僅可以實現(xiàn)芯片的板級測試,還可以通過測試平臺的DB9 接口將RS-422/485 總線用電纜引出,以模擬長距離通信的實際工業(yè)應用場景。
測試平臺的通信軟件基于FPGA 開發(fā),開發(fā)環(huán)境為Quartus 12.1,采用Verilog 編程語言。由2.1 節(jié)可知,軟件功能設計主要考慮上位機與測試系統(tǒng)之間的通信和測試系統(tǒng)與待測芯片之間的通信。待測芯片和測試系統(tǒng)之間通過GPIO 接口相連。程序主要分為四個模塊:時鐘模塊、發(fā)送模塊、接收模塊、測試模塊。軟件功能框圖如圖5 所示。
圖5 軟件功能框圖
時鐘模塊的程序設計主要是考慮到芯片的用戶在實際使用中,可能會選擇不同的工作頻率,為了確保國產化芯片通信測試的完整性。需要實現(xiàn)RS-422/485 通信[15]速率0~10 Mb/s(最大通信速率)可調。程序中利用PLL 將PFGA 主時鐘進行二分頻,再通過對參數(shù)的選取實現(xiàn)測試頻率可調。由于偶數(shù)分頻,部分頻率設置需要近似,RS-422 常見波特率,如9 600 Baud、115 200 Baud 等數(shù)值的近似誤差都小于0.1%,滿足實驗要求。
發(fā)送模塊和接收模塊用于完成FPGA 與待測芯片的通信。如ADM2486 芯片,需要對其數(shù)據(jù)發(fā)送TXD、數(shù)據(jù)接收RXD、接收使能RE、輸出使能DE 等引腳進行控制。
測試模塊主要完成與上位機之間的協(xié)議通信,接收處理上位機的控制命令,和將三款國產化芯片的測試數(shù)據(jù)結果打包發(fā)送給上位機。測試模塊與上位機通信的協(xié)議幀格式主要包含起始位、波特率設置位、數(shù)據(jù)量設置位、數(shù)據(jù)位、校驗位、停止位。再將三款國產化芯片的測試數(shù)據(jù)結果打包發(fā)送給上位機。
上位機軟件是RS-422/485 芯片測試平臺實現(xiàn)自動化測試的核心,主要通過平臺外部串口實現(xiàn)測試參數(shù)設置、測試命令下達以及從平臺內存儲器采集測試數(shù)據(jù)[16]。上位機軟件功能主要劃分為三個模塊,即通信配置模塊、數(shù)據(jù)上傳模塊、統(tǒng)計分析模塊。各模塊的詳細功能如圖6 所示。
圖6 上位功能結構圖
簡潔合理的上位機軟件的窗體設計能給芯片測試人員帶來諸多便利??紤]到上位機的實際功能,使用單文檔界面作為上位機軟件界面。上位機界面如圖7 所示。
圖7 上位機界面
實驗時,首先使用外部電源給底板供電,使用RS232-USB 串口線將測試底板與電腦連接,啟動上位機軟件,打開相應串口,輸入電路編號,如123;設置需要的測試數(shù)據(jù)量、波特率后,點擊開始測試按鈕,便可以啟動測試。測試過程會實時顯示三種待測芯片的通信誤碼率,并將測試結果放置在自動生成的CSV 文件。選取某一次測試過程截圖如圖8 所示。可以看到在波特率數(shù)值為115 200 Baud 時,三種國產芯片數(shù)據(jù)傳輸誤碼率都為0。
圖8 測試過程
考慮芯片的實際應用場景,不同用戶選擇通信模式、通信速率、數(shù)據(jù)量等也存在差異,為了保證測試結果的可靠性,設置三種通信測試模式:發(fā)送模式、接收模式和自回環(huán)模式;除了選擇串口常用波特率2 400 Baud、4 800 Baud、9 600 Baud、19 200 Baud、115 200 Baud 之外,在RS-422/485 允許通信速率0~10 Mb/s 范圍內,進行掃頻測試,步長為0.2 Mb/s;數(shù)據(jù)吞吐量范圍為1~10 G,步長為0.5 G。測試結果表面,三種對標國外ADI 公司的ADM2682、ADM2486、ADM2490 國產化芯片數(shù)據(jù)收發(fā)功能正常??苫緦崿F(xiàn)對國外同類型芯片的功能替代。
從實驗過程可以看出,測試人員僅需要完成上電、測試芯片更換等基本操作,便可以通過上位機界面實現(xiàn)國產RS-422/485 收發(fā)芯片的一鍵自動化測試,極大地提高了實驗環(huán)境下的測試效率。除此之外,測試平臺硬件設計也充分考慮了環(huán)境溫度對通信穩(wěn)定性的影響,測試硬件可整體置于-40~85 ℃的環(huán)境溫度下進行自動化測試,滿足工業(yè)環(huán)境溫度要求。
該文通過嵌入式軟硬件和上位機程序設計,實現(xiàn)一種RS-422/485 芯片自動化測試平臺。詳細介紹了FPGA、RS-422/485 的硬件電路、RS-422/485 通信程序和上位機自動化測試程序的設計,并通過實驗對自動化測試平臺的功能進行了驗證。研究表明,該自動化測試平臺可以實現(xiàn)多種RS-422/485 芯片的全速率范圍的通信能力測試,能夠滿足實驗環(huán)境下國產芯片的測試要求。