專利名稱:一種集成電路仿真測試向量信號產生裝置的制作方法
技術領域:
該發明屬于測試技術領域,特別涉及一種數字集成電路的仿真測試向量信號產生
直O
背景技術:
在數字集成電路設計過程中,數字前端仿真與數字后端的仿真和測試驗證是保證設計的電路是否符合所需功能關鍵所在,數字前端仿真一般是在現場可編程邏輯陣列 (FPGA)代碼設計過程中,通過EDA軟件編寫測試向量,并施加給設計的代碼模塊來仿真其是否滿足要求的時序。后端仿真和測試驗證基本就是對實際工作情況的校驗過程了,也是判斷集成電路是否能量產的重要手段。目前都是用專門的測試機來測試集成電路的工作狀態,測試技術人員將編寫好的測試激勵向量信號通過測試機施加給電路,然后看電路的響應是否滿足匹配的向量,從而斷定電路的好壞。隨著集成電路的集成度,復雜度和功能需求的增加,如何在設計階段就發現電路的缺陷就變得越來越重要,而專門的測試機造價昂貴, 且還得配備專門的測試技術工程師。
發明內容為實現數字集成電路在設計時就進行實際狀態測試,而無需使用專門的測試機, 本實用新型設計了一種簡易的測試激勵向量信號產生裝置。該裝置能夠直接接收仿真時的 vcd文件格式激勵向量,通過發送數據通道發送到測試向量信號發生主板,然后施加到被測數字集成電路的管腳上,測試向量信號發生主板將被測數字集成電路的響應信號捕獲下來后通過接收數據通道上傳到上位機,用于設計人員的分析。本實用新型可以很好解決上述在集成電路設計階段就發現電路的缺陷、提高接口速率和降低研發成本等問題,裝置相對專門的測試機而言簡單有效,且能提供不同的電平電壓。本實用新型解決其技術問題所采用的技術方案是一種集成電路仿真測試向量信號產生裝置,包括上位機、測試向量信號發生主板和PCI-E接口模塊,所述測試向量信號發生主板包括現場可編程邏輯陣列(FPGA),用于為現場可編程邏輯陣列(FPGA)供電的電源模塊,用于連接現場可編程邏輯陣列(FPGA)與被測單元的高速中間連接器,上位機通過PCI-E接口模塊將激勵向量傳給現場可編程邏輯陣列(FPGA),現場可編程邏輯陣列(FPGA)產生測試向量信號并通過高速中間連接器將測試向量信號施加給被測單元,現場可編程邏輯陣列(FPGA)通過高速中間連接器捕獲被測單元的響應并再將響應上傳到上位機。進一步的,所述PCI-E接口模塊包括位于上位機的PCI-E信號適配器、位于現場可編程邏輯陣列(FPGA)內的PCI-E硬核IP和PCI-E電纜,PCI-E信號適配器通過PCI-E電纜與PCI-E硬核IP連接。進一步的,所述測試向量信號發生主板還包括用于緩存被測單元響應的 DDR2SDRAM內存,現場可編程邏輯陣列(FPGA)捕獲被測單元的響應并緩存至DDR2SDRAM內存中,待所有向量發送完畢后現場可編程邏輯陣列(FPGA)再將響應上傳到上位機。進一步的,所述測試向量信號發生主板還包括用于對現場可編程邏輯陣列(FPGA) 進行下載配置的微控制器,所述微控制器和上位機通過USB電纜連接。進一步的,所述電源模塊為可編程電源轉換模塊,該模塊與現場可編程邏輯陣列 (FPGA)輸入輸出供電引腳相連接,用于給現場可編程邏輯陣列(FPGA)供電,從而達到調節現場可編程邏輯陣列(FPGA)輸入輸出電壓電平;微控制器通過I2C接口與可編程電源轉換模塊相連。本實用新型的有益效果是1、由于構建了一個與上位機高速通信的PCI-E接口,可以滿足大容量數據吞吐需求,并大幅度提高向量信號速率和縮短仿真過程,而且,本實用新型兼容性好,無需另外開發驅動和應用程序接口;2、采用高速中間連接器可以提供高達800MHz的信號速度,并充分保證信號質量;3、采用DDR2SDRAM這種存儲密度高的器件,在提供足夠深的向量深度同時,價格便宜,利于降低整個系統的成本;4、用可編程電位器來調節電壓,可以滿足不同電平電壓需求,便于與上位機軟件集成,且成本低;5、添加PCI-E電纜適配模塊和PCI-E電纜來傳輸PCI-E信號,保證信號傳輸質量, 可以使得PCI-E接口穩定可靠,用電纜引出,還可方便安裝。
圖1是本實用新型集成電路仿真測試向量信號產生裝置實施例結構框圖;圖2是本實用新型實施例上位機的PCI-E電纜適配卡及現場可編程邏輯陣列 (FPGA)內的PCI-E硬核IP連接示意圖;圖3是本實用新型實施例現場可編程邏輯陣列(FPGA)內部PCI-E硬核IP與邏輯控制模塊連接的示意圖;圖4是本實用新型實施例可編程電源模塊工作原理圖;圖5是本實用新型實施例工作流程圖。
具體實施方式
為了使本實用新型的目的,技術方案和優點更加清楚,
以下結合附圖來進一步做詳細說明。本實用新型具有產生測試向量信號和響應并捕獲測試向量信號的功能。如圖1 所示,本實施例的集成電路仿真測試向量信號產生裝置包括一臺上位機,測試向量發生主板、USB電纜和PCI-E電纜,上位機將vcd文件格式的激勵向量通過PCI-E電纜輸入到測試向量發生主板,測試向量發生主板產生出測試向量信號并將測試向量信號施加到被測數字集成電路的管腳上,然后測試向量發生主板再將被測數字集成電路的響應捕獲下來,以 vcd文件通過PCI-E電纜上傳上位機。USB電纜用來連接測試向量發生主板上的微控制器 (CY7C68013A)和上位機,微控制器的通用輸入輸出引腳與現場可編程邏輯陣列(FPGA)(現場可編程邏輯門電路)的JTAG信號線連接,上位機發出指令給微控制器來對現場可編程邏輯陣列(FPGA)進行下載配置;微控制器通過I2C接口與可編程電源模塊連接,用于調節可編程電源模塊的輸出電壓;DDR2SDRAM內存與現場可編程邏輯陣列(FPGA)的DDR2SDRAM功能引腳相連,上位機通過PCI-E接口將測試向量緩存至DDR2SDRAM內存中;高速中間連接器與現場可編程邏輯陣列(FPGA)的輸入輸出引腳相連,負責施加激勵向量信號給被測數字集成電路和捕獲被測數字集成電路的響應。本實施例采用帶高速通信接口的現場可編程邏輯陣列(FPGA),與上位機構建了一個PCI Express虹標準高速數據傳輸通道,現場可編程邏輯陣列(FPGA)與上位機通信最高速率可達2. 5G字節每秒。PCI Express (簡稱PCI-E)接口的詳細描述請參看PCI-SIG組織發布的((PCI Express Base Specification Revision 1. 1〉〉。本實施例采用 DDR2SDRAM(Double-Data_I ate Two Synchronous Dynamic Random Access Memory,第二代雙倍數據率同步動態隨機存取記憶體)來存儲集成電路管腳響應, 使得向量深度足夠大,如本裝置提供256個測試向量個數,采用市面上通用的個人電腦2G 比特內存DDR2SDRAM則可以為每個管腳提供多達8M比特的存儲深度。本實施例采用2個120腳高速中間連接器(High Speed Mid-Connector,英文縮寫為HSMC)與被測單元連接,如圖1所示,可提供多達256個連接通道。上位機將vcd(Value Change Dump File,信號改變轉存文件)這種標準文件格式激勵向量通過PCI-E接口傳到現場可編程邏輯陣列(FPGA),由現場可編程邏輯陣列(FPGA)產生測試向量信號并通過高速中間連接器送到被測數字集成電路的管腳。然后,現場可編程邏輯陣列(FPGA)通過高速中間連接器將被測集成電路的響應捕獲下來,并以vcd文件格式的形式通過PCI-E接口上傳到上位機。下面就各個功能模塊做詳細說明1、上位機本實施例配置一臺帶PCI-E接口的PC機,用于運行上位機程序,并將產生好的vcd 文件格式的激勵向量通過PCI-E傳到測試向量信號產生主板上,另外,上位機與測試向量信號產生主板約定一些寄存器,上位機通過PCI-E的配置操作來對這些現場可編程邏輯陣列(FPGA)的寄存器進行讀寫配置,具體預定是地址為0x80010000的寄存器表示測試向量信號發生主板捕獲到的管腳響應變化了多少次;地址為0x80020000的寄存器表示有多少行向量要傳輸;地址為0x80030000的寄存器表示采樣頻率是多少。2、PCI-E 通信模塊該PCI-E通信模塊包括了上位機PCI-E信號適配器(例如PI2EQX4401)、現場可編程邏輯陣列(FPGA)內的PCI-E硬核IP和PCI-E電纜。a) PCI-E接口是一種串行通信接口,信號傳輸采用差分方式,包括發送通道TX+、 TX-,接收通道RX+、RX-以及參考時鐘Refclk+、Refclk-0配備的上位機只有PCI-E金手指插座,如果測試向量發生主板做成插在上位機里面,則不利于調試安裝,如果要用電纜傳輸,將會帶來PCI-E信號傳輸質量問題,為了解決這個矛盾,采用現成的PCI-E信號適配器 (例如PI2EQX4401)用來適配PCI-E信號,參看圖2,PCI_E的發送通道信號線、接收通道信號線和參考時鐘輸出都是差分信號,所以信號傳輸都是采用一正一負的信號對,在圖中分別用TX+,TX-來表示發送通道信號線的差分信號,RX+, RX-表示接收通道的差分信號線, RefClk+,RefClk-表示參考時鐘的差分信號線。上位機的發送通道信號線通過適配器的信號適配功能模塊后與現場可編程邏輯陣列(FPGA)的硬核IP接收通道信號線連接,現場可編程邏輯陣列(FPGA)的硬核IP發送通道信號線通過適配器的信號適配功能模塊后與上位機的接收通道信號線連接,上位機發出的參考時鐘信號線通過適配器的信號適配功能模塊后與現場可編程邏輯陣列(FPGA)的硬核IP參考時鐘輸入信號線連接。b)本實用新型選用的現場可編程邏輯陣列(FPGA)帶專門的PCI-E接口硬核 IP (參見Altera公司的PCI-E接口硬核IP文檔),無需專門自己開發PCI-E協議。參看圖 3,現場可編程邏輯陣列(FPGA)內的PCI-E硬核IP左邊的PCI-E信號組就是上述上位機的PCI-E信號經過適配器以后的PCI-E信號。PCI-E硬核IP右邊的信號就是送到現場可編程邏輯陣列(FPGA)內部控制邏輯模塊的信號,而PCI-E硬核IP和現場可編程邏輯陣列 (FPGA)內部控制邏輯都是位于現場可編程邏輯陣列(FPGA)內部,只是不同功能模塊而已。 這兩個功能模塊之間的連接見以下描述①、接收通道數據總線Rx_D,控制邏輯模塊就是通過這個數據總線來讀取PCI-E 硬核IP接收到的數據;②、接收緩存就緒信號RX_fifo_ready,PCI-E硬核IP用于通知控制邏輯模塊有數據接收到了;③、接收緩存空信號Rx_f if0_empty,表示PCI-E硬核IP的接收數據已經被控制邏輯模塊都取走了;④、發送數據通道數據總線Tx_D,邏輯控制邏輯模塊就是通過這個數據總線來發送數據給PCI-E硬核IP ;⑤、緩存就緒信號TX_fifo_ready,表示PCI-E硬核IP的發送緩存已經準備好發送數據了 ;⑥、發送數據有效信號TX_St_validO,表示邏輯控制模塊放在發送數據通道總線上的數據是有效的;⑦、參考時鐘信號ref_clk是PCI-E硬核IP給現場可編程邏輯陣列(FPGA)內邏輯控制模塊的參考時鐘。上位機和現場可編程邏輯陣列(FPGA)通過PCI-E接口傳輸數據步驟如下步驟201 上位機軟件先獲得PCI-E設備句柄;步驟202 上位機軟件發送一段數據給現場可編程邏輯陣列(FPGA),現場可編程邏輯陣列(FPGA)收到后,其內部PCI-E硬核IP的信號接收緩存就緒信號RX_fifo_ready 變高,表示有數據了,然后現場可編程邏輯陣列(FPGA)再根據參考時鐘ref_clk從接收通道數據總線上Rx_D將數據取出,直到接收緩存空信號Rx_f if0_empty變高,則表示數據發送完畢;步驟203 現場可編程邏輯陣列(FPGA)有數據要上傳到上位機,PCI-E硬核IP 先將發送緩存就緒信號TX_fifo_ready變高,表示準備好讀取數據了,然后現場可編程邏輯陣列(FPGA)將數據放到發送數據通道信號組Tx_D上,并將發送數據有效信號Tx_st_ validO置高,在參考時鐘信號ref_clk的參考下發送給上位機,發送通道先入先出隨即讀寫存儲器(FIFO)滿信號Tx_fif0_full表示數據滿了,上位機來不及處理,這時現場可編程邏輯陣列(FPGA)發送要停下,將發送數據有效信號TX_St_validO置低。3、DDR2SDRAM 內存現場可編程邏輯陣列(FPGA)讀取DDR2內存采用Altera公司現成的DDR2SDRAM 內存控制器,非本實用新型中創新內容,在此不做敘述。4、可編程電源模塊為了應對被測單元不同電平電壓需求,采用那種輸出可調節的電源模塊,外加可編程電位器即可。需要注意的問題在于現在的電位器輸出電流都比較小,大約在5mA以下, 為了加大輸出電流,可以用運放構成的射極跟隨器,具體線路連接示意圖參看圖4,線性電源電壓調節器(LDO),其電壓輸出可以由外部電阻網絡通過反饋參考電壓Vref來調節,可編程電位器的A觸點就連接到LDO的輸出端(VOUT),可編程電位器的W觸點再與一個固定電阻值電阻(本例使用IK歐姆)相連,IK歐姆電阻再連接到地,同時W觸點抽出一根線連接到運放的正向輸入端,運放的輸出拉出一根線連接到運放的負向輸入端,同時運放的輸出再連接到LDO的反饋參考電壓Vref端。為了方便上位機控制,選用帶I2C接口的可編程電位器連接到微控制器中,這樣上位機就可以通過USB接口來控制LDO的輸出電壓了。 5、現場可編程邏輯陣列(FPGA) JTAG下載設置現場可編程邏輯陣列(FPGA)程序采用JTAG下載模式,本實施例將下載集成在測試向量信號發生主板內部,這樣就不用另外使用專門的下載器了。上位機通過USB電纜來控制微控制器CY7C68013A,再由此微控制器的IO 口模擬現場可編程邏輯陣列(FPGA)的 JTAG下載時序。下面,就本實用新型實施例整個系統工作流程和方式以及相關信號流動作詳細說明,參看圖5。這里描述了上位機、測試向量發生主板以及被測單元之間的動作和信號流向。步驟A 上位機寫測試向量信號發生主板上的寄存器0x80020000,表示有多少行向量要傳輸,寫采樣時鐘頻率寄存器0x80030000,用于產生捕獲被測單元響應信號的采樣時鐘;步驟B:上位機讀取一行向量通過PCI-E接口發送給現場可編程邏輯陣列 (FPGA);步驟C 現場可編程邏輯陣列(FPGA)獲得一行向量,并取前256bit數據發送給輸入輸出標示,如果對應通道是0,則表示輸出,將輸入通道相應的向量置成高阻態,那么輸入就被切斷,引腳上的信號只從輸出通道走了 ;如果是1,則表示是輸入,將輸出通道相應的向量置成高阻態,那么輸出就被切斷,引腳上的信號只從輸入通道走了 ;步驟D 現場可編程邏輯陣列(FPGA)取后128bit數據在采樣時鐘沿進行計數;步驟E 現場可編程邏輯陣列(FPGA)判斷是否計數到0,同時在每個采樣時鐘沿捕獲向量通道的響應,并將捕獲到的響應存至DDR2SDRAM內存;步驟F:判斷是否取完了所有行向量,如果成立則進入上位機讀取響應步驟G,如果不成立則取下一行向量;步驟G 上位機讀取DDR2SDRAM內存緩存的響應;步驟H —次仿真結束,上位機關閉PCI-E句柄,關閉所有打開的文件。通過以上流程,我們完成了將激勵vcd文件發送給被測單元,然后獲取被測單元響應,并最終得到vcd文件。
權利要求1.一種集成電路仿真測試向量信號產生裝置,其特征在于包括上位機、測試向量信號發生主板和PCI-E接口模塊,所述測試向量信號發生主板包括現場可編程邏輯陣列,用于為現場可編程邏輯陣列供電的電源模塊,用于連接現場可編程邏輯陣列與被測單元的高速中間連接器,上位機通過PCI-E接口模塊將激勵向量傳給現場可編程邏輯陣列,現場可編程邏輯陣列產生測試向量信號并通過高速中間連接器將測試向量信號施加給被測單元, 同時現場可編程邏輯陣列通過高速中間連接器捕獲被測單元的響應并再將響應上傳到上位機。
2.如權利要求1所述集成電路仿真測試向量信號產生裝置,其特征在于所述PCI-E 接口模塊包括位于上位機的PCI-E信號適配器、位于現場可編程邏輯陣列內的PCI-E硬核 IP和PCI-E電纜,PCI-E信號適配器通過PCI-E電纜與PCI-E硬核IP連接。
3.如權利要求2所述集成電路仿真測試向量信號產生裝置,其特征在于所述測試向量信號發生主板還包括用于緩存被測單元響應的DDR2SDRAM內存,現場可編程邏輯陣列捕獲被測單元的響應并緩存至DDR2SDRAM內存中,待所有向量發送完畢后現場可編程邏輯陣列再將響應上傳到上位機。
4.如權利要求1或2或3所述集成電路仿真測試向量信號產生裝置,其特征在于所述測試向量信號發生主板還包括用于對現場可編程邏輯陣列進行下載配置的微控制器,所述微控制器和上位機通過USB電纜連接。
5.如權利要求4所述集成電路仿真測試向量信號產生裝置,其特征在于所述電源模塊為可編程電源轉換模塊,該模塊與現場可編程邏輯陣列輸入輸出供電引腳相連接,用于給現場可編程邏輯陣列供電,從而達到調節現場可編程邏輯陣列輸入輸出電壓電平;微控制器與可編程電源轉換模塊相連。
專利摘要為實現數字集成電路在設計時就進行實際狀態測試,而無需使用專門的測試機,本實用新型公開了一種集成電路仿真測試向量信號產生裝置,它包括上位機、測試向量信號發生主板和PCI-E接口模塊,所述測試向量信號發生主板包括FPGA,用于為FPGA供電的電源模塊,用于連接FPGA與被測單元的高速中間連接器,上位機通過PCI-E接口模塊將激勵向量傳給FPGA,FPGA產生測試向量信號并通過高速中間連接器將測試向量信號施加給被測單元,同時FPGA通過高速中間連接器捕獲被測單元的響應并再將響應上傳到上位機。本實用新型可以很好解決上述在集成電路設計階段就發現電路的缺陷、提高接口速率和降低研發成本等問題。
文檔編號G06F13/38GK202008657SQ20112003383
公開日2011年10月12日 申請日期2011年1月31日 優先權日2011年1月31日
發明者張波, 蔣登峰, 魏建中 申請人:杭州士蘭微電子股份有限公司