国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      基于SoPC芯片的功能自動化測試系統(tǒng)及其測試方法

      文檔序號:6250717閱讀:356來源:國知局
      基于SoPC芯片的功能自動化測試系統(tǒng)及其測試方法
      【專利摘要】本發(fā)明提供了一種基于SoPC芯片的功能性測試系統(tǒng)及其測試方法,該系統(tǒng)包括串行通信接口測試模塊、I2C測試模塊、中斷處理測試模塊、定時器測試模塊、計數(shù)器測試模塊、總線測試模塊、模擬開關(guān)/ADC測試模塊、GPIO測試模塊、FPGA配置模塊、通信模塊和測試控制模塊;本發(fā)明的自動化測試方法在同一個測試系統(tǒng)中,按照測試需求在一個測試程序中完成SoPC芯片的各個功能模塊的測試,避免了傳統(tǒng)測試方法中對同一個SoPC芯片不同功能進(jìn)行測試時,針對各測試項目返回進(jìn)行編譯,可有效縮短測試時間,并降低測試難度和測試操作復(fù)雜度。
      【專利說明】基于SoPC芯片的功能自動化測試系統(tǒng)及其測試方法

      【技術(shù)領(lǐng)域】
      [0001] 本發(fā)明涉及SoPC (System-on-Programmable-Chip)芯片領(lǐng)域,特別涉及一種基于 SoPC芯片的功能性測試系統(tǒng)及其測試方法,實現(xiàn)芯片入庫前硬件功能篩選和出庫前的硬件 功能確認(rèn)。

      【背景技術(shù)】
      [0002] 隨著微電子技術(shù)、計算機(jī)技術(shù)、EDA技術(shù)的發(fā)展,和武器、空間飛行器對電子控制系 統(tǒng)的小型化、靈活、低功耗的需求日益加劇,催生了 SoPC技術(shù)的出現(xiàn)。SoPC是SoC和FPGA 技術(shù)的融合,在ASIC和可編程邏輯器件之間找到一個折衷點,它將處理器、存儲器、FPGA和 外設(shè)接口等系統(tǒng)設(shè)計按需要集成到一塊芯片上,用一塊芯片取代了傳統(tǒng)電子系統(tǒng),實現(xiàn)電 子系統(tǒng)的小型化、輕型化、高集成度、低功耗、可重構(gòu)、靈活性、同時增強(qiáng)可靠性和電磁兼容 性。同時降低基于SoPC的開發(fā)難度,大幅縮短開發(fā)周期,降低設(shè)計成本。
      [0003] SoPC芯片內(nèi)部十分復(fù)雜,集成多種外設(shè)接口,并且可以完成多種功能,測試成為 SoPC芯片設(shè)計過程中關(guān)鍵環(huán)節(jié)。特別是芯片設(shè)計完成后,在物理實現(xiàn)過程中是否存在制造 缺陷直接影響產(chǎn)品的成品率和制造成本,這也凸顯了芯片功能性測試的重要性。傳統(tǒng)的測 試方法大多是只選擇一個或一部分功能進(jìn)行測試,在測試結(jié)束后,選擇另一部分的功能進(jìn) 行測試。這種測試方法通常將整個測試系統(tǒng)進(jìn)行整體編寫,根據(jù)需要測試的功能對測試程 序進(jìn)行編譯,而每次編譯都需要花費大量的時間。
      [0004] 綜上所述,傳統(tǒng)的測試方法對同一個SoPC芯片的不同功能進(jìn)行測試時,測試系統(tǒng) 構(gòu)建復(fù)雜,需要較長時間,重用性差,維護(hù)困難,增加了測試的難度和操作復(fù)雜度。


      【發(fā)明內(nèi)容】

      [0005] 本發(fā)明的目的在于克服現(xiàn)有技術(shù)的不足,提供了一種基于SoPC芯片的功能性測 試系統(tǒng)及其測試方法,該方法采用同一個測試系統(tǒng),按照測試需求在一個測試程序中完成 SoPC芯片的各個功能模塊的測試,避免了傳統(tǒng)測試方法中對同一個SoPC芯片不同功能進(jìn) 行測試時,針對各測試項目返回進(jìn)行編譯,可有效縮短測試時間,并降低測試難度和測試操 作復(fù)雜度。
      [0006] 本發(fā)明的上述目的主要是通過如下技術(shù)方案予以實現(xiàn)的:
      [0007] -種基于SoPC芯片的功能自動化測試系統(tǒng),包括測試控制模塊、通信模塊、串行 通信接口測試模塊、I 2C測試模塊、中斷處理測試模塊、定時器測試模塊、計數(shù)器測試模塊、 總線測試模塊、模擬開關(guān)/ADC測試模塊和GPIO測試模塊,其中:
      [0008] 測試控制模塊:發(fā)送測試命令、計數(shù)命令到通信模塊,并接收通信模塊發(fā)送的測試 結(jié)果;
      [0009] 通信模塊:接收測試控制模塊發(fā)送的測試命令或計數(shù)命令,并將所述測試命令發(fā) 送到被測芯片CPU,接收被測芯片的CPU輸出的測試結(jié)果;將所述計數(shù)命令發(fā)送到計數(shù)器測 試模塊;
      [0010] 串行通信接口測試模塊:包括N個串口測試電路,分別與被測芯片的N個異步串行 通信接口連接,接收所述通信接口發(fā)送的測試數(shù)據(jù),并將所述測試數(shù)據(jù)接收轉(zhuǎn)發(fā)回被測芯 片的異步串行通信接口;其中,N為正整數(shù);
      [0011] I2C測試模塊:包括2個I2C測試電路,分別與被測芯片的2個I2C連接,接收并保 存被測芯片I 2C發(fā)送的測試數(shù)據(jù);
      [0012] 中斷處理測試模塊:接收被測芯片CPU發(fā)送的GPIO波形,并將所述GPIO波形發(fā)送 到所述CPU的中斷邏輯電路;
      [0013] 定時器測試模塊:包括指示電路,所述指示電路由被測芯片定時器發(fā)送的測試波 形進(jìn)行驅(qū)動并亮燈顯示;
      [0014] 計數(shù)器測試模塊:接收通信模塊發(fā)送的計數(shù)命令,產(chǎn)生計數(shù)信號,并將所述計數(shù)信 號發(fā)送到被測芯片計數(shù)器部件;
      [0015] 總線測試模塊:接收被測芯片1553B總線模塊輸出的測試信號,對所述測試信號 進(jìn)行電平轉(zhuǎn)換、信號隔離、信號耦合后輸出到外部1553B標(biāo)準(zhǔn)設(shè)備;接收所述外部1553B標(biāo) 準(zhǔn)設(shè)備轉(zhuǎn)發(fā)的返向測試信號,對所述返向測試信號進(jìn)行信號耦合、信號隔離和電平轉(zhuǎn)換處 理后輸出到被測芯片1553B總線模塊;
      [0016] 模擬開關(guān)/ADC測試模塊:為被測芯片的模擬開關(guān)的L個端口配置L個不同的模擬 電壓值;其中,L為正整數(shù);
      [0017] GPIO測試模塊:在被測芯片GPIO前向通道測試過程中,接收被測芯片CPU的GPIO 發(fā)送的前向測試信號,發(fā)送所述前向測試信號到被測芯片F(xiàn)PGA的GPIO ;在被測芯片GPIO 返向通道測試過程中,接收被測芯片F(xiàn)PGA的GPIO發(fā)送的返向測試數(shù)據(jù),并轉(zhuǎn)發(fā)所述返向測 試數(shù)據(jù)到被測芯片CPU的GPIO端口。
      [0018] 上述的基于SoPC芯片的功能自動化測試系統(tǒng)還包括FPGA配置模塊、時鐘復(fù)位模 塊和電源模塊,其中:
      [0019] FPGA配置電路模塊:對被測芯片的FPGA進(jìn)行文件更新配置;
      [0020] 時鐘復(fù)位模塊:為被測芯片CPU提供時鐘和復(fù)位信號;
      [0021] 電源模塊:對串口通信接口測試模塊、I2C測試模塊、中斷處理測試模塊、定時器測 試模塊、計數(shù)器測試模塊、總線測試模塊、模擬開關(guān)/ADC測試模塊、GPIO測試模塊、FPGA配 置模塊、通信模塊和時鐘復(fù)位模塊進(jìn)行供電。
      [0022] -種基于SoPC芯片的功能自動化測試方法,在一種自動化測試系統(tǒng)中實現(xiàn),其 中,所述自動化測試系統(tǒng)包括測試控制模塊、通信模塊、串行通信接口測試模塊、I 2C測試模 塊、中斷處理測試模塊、定時器測試模塊、計數(shù)器測試模塊、總線測試模塊、模擬開關(guān)/ADC 測試模塊和GPIO測試模塊,所述測試方法的包括以下步驟:
      [0023] 首先,按照設(shè)定的測試內(nèi)容和測試順序,由測試控制模塊發(fā)送測試命令,依次開啟 串行通信接口測試、I 2C測試、中斷處理測試、定時器測試、計數(shù)器測試、1553B總線測試、模 擬開關(guān)/ADC測試、GPIO測試;并在各項測試結(jié)束后,由被測芯片CPU將測試結(jié)果發(fā)送到通 信模塊,所述通信模塊再將所述測試結(jié)果發(fā)送到測試控制模塊進(jìn)行匯總,完成被測芯片的 功能測試。
      [0024] 在上述的基于SoPC芯片的功能自動化測試方法中,被測芯片的串行通信接口測 試包括以下步驟:
      [0025] (la)、測試控制模塊通過通信模塊發(fā)送串行通信接口測試命令到被測芯片CPU,所 述被測芯片CPU通過N個異步串行通信接口分別發(fā)送測試數(shù)據(jù)到通信接口測試模塊中的N 個串口測試電路中;
      [0026] (Ib)、所述串口測試電路將接收到的測試數(shù)據(jù)轉(zhuǎn)發(fā)回被測芯片的異步串行通信接 Π ;
      [0027] (lc)、被測芯片將所述異步串行通信接口接收到的數(shù)據(jù)與步驟(Ia)中的發(fā)送數(shù) 據(jù)進(jìn)行比較,得到測試結(jié)果,其中:
      [0028] 如果所述接收數(shù)據(jù)與發(fā)送數(shù)據(jù)相同,則判斷被測芯片CPU的異步串行通信接口工 作正常;如果所述接收數(shù)據(jù)與發(fā)送數(shù)據(jù)不相同,則判斷被測芯片CPU的異步串行通信接口 工作異常;
      [0029] (Id)、被測芯片CPU將步驟(Ic)得到的測試結(jié)果發(fā)送到通信模塊;
      [0030] (Ie)、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      [0031] 在上述的基于SoPC芯片的功能自動化測試方法中,被測芯片的I2C測試包括以下 步驟:
      [0032] (2a)、測試控制模塊通過通信模塊發(fā)送I2C測試命令到被測芯片CPU,被測芯片的 I2C發(fā)送測試數(shù)據(jù)到的I2C測試電路模塊中的I2C測試電路中;
      [0033] (2b)、所述的I2C測試電路接收并保存步驟(2a)中的測試數(shù)據(jù);
      [0034] (2c)、被測芯片的I2C讀取I2C測試電路中保存的測試數(shù)據(jù),并與步驟(2a)中的發(fā) 送數(shù)據(jù)進(jìn)行比較,得到測試結(jié)果,其中:
      [0035] 如果所述讀取數(shù)據(jù)與發(fā)送數(shù)據(jù)相同,則判斷被測芯片I2C工作正常;如果所述讀取 數(shù)據(jù)與發(fā)送數(shù)據(jù)不同,則判斷被測芯片I 2C工作異常;
      [0036] (2d)、被測芯片CPU將步驟(2c)得到的測試結(jié)果發(fā)送到通信模塊;
      [0037] (2e)、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      [0038] 在上述的基于SoPC芯片的功能自動化測試方法中,被測芯片中斷處理測試包括 以下步驟:
      [0039] (3a)、測試控制模塊通過通信模塊發(fā)送中斷處理測試命令到被測芯片CPU ;
      [0040] (3b)、被測芯片CPU設(shè)定所述CPU中斷邏輯電路的中斷模式,并產(chǎn)生與所述中斷模 式相對應(yīng)的GPIO波形;
      [0041] (3c)、被測芯片CPU發(fā)送所述GPIO波形到中斷處理測試模塊;
      [0042] (3d)、中斷處理測試模塊將步驟(3c)接收到的GPIO波形發(fā)送到被測芯片CPU的 中斷邏輯電路;
      [0043] (3e)、被測芯片CPU根據(jù)所述中斷邏輯電路的觸發(fā)結(jié)果,得到被測芯片中斷處理 測試結(jié)果,其中:
      [0044] 如果所述中斷邏輯電路根據(jù)接收到的GPIO波形觸發(fā)中斷,則判斷被測芯片的中 斷處理工作正常;如果所述中斷邏輯電路在接收到的GPIO波形后沒有觸發(fā)中斷,則判斷被 測芯片的中斷處理工作異常;
      [0045] (3f)、被測芯片CPU將步驟(3d)得到的測試結(jié)果發(fā)送到通信模塊;
      [0046] (3g)、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      [0047] 在上述的基于SoPC芯片的功能自動化測試方法中,被測芯片的定時器測試的具 體實現(xiàn)過程如下:
      [0048] (4a)、測試控制模塊通過通信模塊發(fā)送定時器測試命令到被測芯片CPU ;
      [0049] (4b)、被測芯片CPU根據(jù)所述測試命令,設(shè)定被測芯片定時器的工作模式和定時 時間,并將所述定時時間分為M個時間片,其中,在每個所述時間片的結(jié)束時刻,由所述CPU 的中斷邏輯電路產(chǎn)生中斷信號,并由所述CPU進(jìn)行計數(shù);其中,M為設(shè)定的正整數(shù);
      [0050] (4c)、被測芯片的CPU在所述定時時間的結(jié)束時刻停止計數(shù),并且被測芯片的定 時器輸出測試波形到定時器測試電路模塊;定時器測試電路模塊在接收到所述測試波形 后,驅(qū)動所述模塊中的指示電路,表明定時器工作完成;
      [0051] (4d)、CPU將步驟(4b)中得到的計數(shù)結(jié)果與設(shè)定的M值進(jìn)行比較,得到測試結(jié)果, 其中:
      [0052] 如果所述計數(shù)結(jié)果與M值相同,則判斷被測芯片的定時器部件工作正常;如果所 述計數(shù)結(jié)果與M值不同,則判斷被測芯片的定時器部件工作異常;
      [0053] (4e)、被測芯片CPU將步驟(4d)得到的測試結(jié)果發(fā)送到通信模塊;
      [0054] (4f)、通信模塊發(fā)送所述測試結(jié)果到測試控制模塊。
      [0055] 在上述的基于SoPC芯片的功能自動化測試方法中,被測芯片的計數(shù)器測試包括 以下步驟:
      [0056] (5a)、測試控制模塊通過通信模塊發(fā)送計數(shù)命令到計數(shù)器測試模塊;
      [0057] (5b)、計數(shù)器測試模塊在接收到所述計數(shù)命令后,產(chǎn)生計數(shù)信號;
      [0058] (5c)、發(fā)送步驟(5b)產(chǎn)生的計數(shù)信號到被測芯片的計數(shù)器部件;
      [0059] (5d)、被測芯片的計數(shù)器部件按照計數(shù)信號進(jìn)行計數(shù)操作,得到計數(shù)結(jié)果,其中:
      [0060] 如果所述計數(shù)結(jié)果與計數(shù)信號對應(yīng)的計數(shù)結(jié)果相同,則判斷被測芯片的計數(shù)器部 件工作正常;如果所述計數(shù)結(jié)果與計數(shù)信號對應(yīng)的計數(shù)結(jié)果不同,則判斷被測芯片的計數(shù) 器部件工作異常;
      [0061] (5e)、被測芯片CPU將步驟(5d)得到的測試結(jié)果發(fā)送到通信模塊;
      [0062] (5f)、通信模塊發(fā)送所述測試結(jié)果到測試控制模塊。
      [0063] 在上述的基于SoPC芯片的功能自動化測試方法中,被測芯片的總線測試包括以 下步驟:
      [0064] (6a)、測試控制模塊通過通信模塊發(fā)送總線測試命令到被測芯片CPU ;被測芯片 (PU通過被測芯片的1553B總線輸出前向測試信號到總線測試電路模塊;
      [0065] (6b)、總線測試電路模塊對所述前向測試信號進(jìn)行電平轉(zhuǎn)換、信號隔離和信號耦 合處理后,輸出處理后的前向測試信號到外部1553B標(biāo)準(zhǔn)設(shè)備;
      [0066] (6c)、所述外部1553B標(biāo)準(zhǔn)設(shè)備將接收到的前向測試信號轉(zhuǎn)發(fā)回總線測試模塊;
      [0067] (6d)、總線測試模塊對步驟(6c)接收到的測試信號進(jìn)行信號耦合、信號隔離和電 平轉(zhuǎn)換后,得到返向測試信號;
      [0068] (6e)、總線測試模塊發(fā)送所述返向測試信號到被測芯片1553B總線模塊;
      [0069] (6f)、被測芯片CPU將所述返向測試信號與步驟(6a)中所述CPU發(fā)送的前向測試 信號進(jìn)行比較,得到測試結(jié)果,其中:
      [0070] 如果所述前向測試信號與所述返向測試信號相同,則判斷被測芯片的總線工作正 常;如果所述前向測試信號與所述返向測試信號不同,則判斷被測芯片的總線工作異常;
      [0071] (6g)、被測芯片CPU發(fā)送步驟(6f)得到的測試結(jié)果到通信模塊;
      [0072] (6h)、通信模塊轉(zhuǎn)發(fā)所述測試結(jié)果到測試控制模塊。
      [0073] 在上述的基于SoPC芯片的功能自動化測試方法中,被測芯片模擬開關(guān)/ADC測試 包括如下步驟:
      [0074] (7a)、測試控制模塊通過通信模塊發(fā)送模擬開關(guān)/ADC測試命令到被測芯片CPU ; 模擬開關(guān)/ADC測試模塊為被測芯片的模擬開關(guān)的L個輸入端口配置L個不同的模擬電壓 值,其中,所述模擬開關(guān)的輸出端口與被測芯片的ADC連接;
      [0075] (7b)、被測芯片ADC接收模擬開關(guān)傳送的模擬電壓值,并進(jìn)行模數(shù)轉(zhuǎn)換,輸出電壓 數(shù)字值;
      [0076] (7c)、被測芯片CPU根據(jù)所述ADC輸出的電壓數(shù)字值,推算出模擬電壓值;
      [0077] (7d)、被測芯片CPU將步驟(7c)中推算出的模擬電壓值與步驟(7a)中配置的模 擬電壓值進(jìn)行比較,得到測試結(jié)果,其中:
      [0078] 如果所述兩種模擬電壓值相同,則判斷被測芯片的模擬開關(guān)和ADC工作正常;如 果所述兩種模擬電壓值不同,則判斷被測芯片的模擬開關(guān)和ADC工作異常正常;
      [0079] (7e)、被測芯片CPU將步驟(7d)得到的測試結(jié)果發(fā)送到通信模塊;
      [0080] (7f)、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      [0081] 在上述的基于SoPC芯片的功能自動化測試方法中,被測芯片的GPIO測試通過被 測芯片CPU的GPIO與被測芯片F(xiàn)PGA的互相測試完成,具體實現(xiàn)步驟包括:
      [0082] (8a)、測試控制模塊通過通信模塊發(fā)送模擬開關(guān)/ADC測試命令到被測芯片CPU ; 被測芯片CPU的GPIO輸出前向測試數(shù)據(jù)到被測芯片的FPGA的GPIO ;
      [0083] (8b)、被測芯片CPU通過總線讀取所述FPGA中的前向測試數(shù)據(jù),并與步驟(8a)中 輸出的前向測試數(shù)據(jù)進(jìn)行比較,得到前向通道的測試結(jié)果,其中:
      [0084] 如果進(jìn)過比較得到所述兩組數(shù)據(jù)相同,則判斷被測芯片CPU的GPIO中的輸出模式 工作正常,且被測芯片F(xiàn)PGA的GPIO中的接收模式工作正常;如果進(jìn)過比較得到所述兩組數(shù) 據(jù)不同,則判斷被測芯片CPU的GPIO中的輸出模或被測芯片F(xiàn)PGA的GPIO中的接收模式工 作異常;
      [0085] (8c)、被測芯片CPU通過總線發(fā)送返向測試數(shù)據(jù)到被測芯片的FPGA ;
      [0086] (8d)、被測芯片F(xiàn)PGA通過GPIO發(fā)送所述返向測試數(shù)據(jù)到GPIO測試電路模塊;
      [0087] (8e)、GPI0測試電路模塊將所述返向測試數(shù)據(jù)發(fā)送到被測芯片CPU的GPIO端口;
      [0088] (8f)、被測芯片CPU將步驟(Se)中接收的返向測試數(shù)據(jù)與步驟(8c)中發(fā)送的返 向測試數(shù)據(jù)進(jìn)行比較,得到測試結(jié)果,其中:
      [0089] 如果進(jìn)過比較得到所述兩組數(shù)據(jù)相同,則判斷被測芯片CPU的GPIO中的接收模式 工作正常,且被測芯片F(xiàn)PGA的GPIO中的輸出模式工作正常;如果進(jìn)過比較得到所述兩組數(shù) 據(jù)不同,則判斷被測芯片CPU的GPIO中的接收?;虮粶y芯片F(xiàn)PGA的GPIO中的輸出模式工 作異常;
      [0090] (8g)、發(fā)送步驟(8b)和(8f)得到的測試結(jié)果到通信模塊;
      [0091] (8h)、通信模塊發(fā)送所述測試結(jié)果到測試控制模塊。
      [0092] 本發(fā)明與現(xiàn)有技術(shù)相比的優(yōu)點在于:
      [0093] (1)、本發(fā)明在一個測試系統(tǒng)中,集成了各功能測試模塊,通過流程化控制實現(xiàn)所 有功能模塊的集中測試,可以有效縮短測試時間,有益于進(jìn)行芯片的批量測試;
      [0094] (2)、本發(fā)明針對根據(jù)所述功能模塊生成測試命令,并在測試結(jié)束后返回各項測試 的結(jié)果,并進(jìn)行匯總,可以有效提高測試效率。

      【專利附圖】

      【附圖說明】
      [0095] 圖1為本發(fā)明自動化測試硬件平臺系統(tǒng)框圖;
      [0096] 圖2為本發(fā)明實施例中測試系統(tǒng)連接示意圖;
      [0097] 圖3為本發(fā)明實施例中的測試流程圖。

      【具體實施方式】
      [0098] 下面結(jié)合附圖和具體實施例對本發(fā)明作進(jìn)一步詳細(xì)的描述:
      [0099] 根據(jù)圖1所示的本發(fā)明測試系統(tǒng)與被測芯片的連接框圖,本發(fā)明的基于SoPC芯 片的功能自動化測試系統(tǒng)包括測試控制模塊、通信模塊、串行通信接口測試模塊、I2C測試 模塊、中斷處理測試模塊、定時器測試模塊、計數(shù)器測試模塊、總線測試模塊、模擬開關(guān)/ADC 測試模塊、GPIO測試模塊、FPGA配置模塊、時鐘復(fù)位模塊和電源模塊,其中:
      [0100] 測試控制模塊:發(fā)送測試命令、計數(shù)命令到通信模塊,并接收通信模塊發(fā)送的測試 結(jié)果;該模塊用于對整個測試過程進(jìn)行控制,可以根據(jù)測試需求,進(jìn)行專項功能測試或全功 能測試。測試人員可以通過測試人機(jī)交互界面選擇測試項目,并由測試控制模塊自動產(chǎn)生 測試指令序列,用于各模塊間聯(lián)合操作完成各項測試。
      [0101] 通信模塊:接收測試控制模塊發(fā)送的測試命令或計數(shù)命令,并將所述測試命令發(fā) 送到被測芯片CPU,接收被測芯片的CPU輸出的測試結(jié)果;將所述計數(shù)命令發(fā)送到計數(shù)器測 試模塊;
      [0102] 串行通信接口測試模塊:包括N個串口測試電路,分別與被測芯片的N個異步串行 通信接口連接,接收所述通信接口發(fā)送的測試數(shù)據(jù),并將所述測試數(shù)據(jù)接收轉(zhuǎn)發(fā)回被測芯 片的異步串行通信接口;其中,N為正整數(shù);
      [0103] I2C測試模塊:包括2個I2C測試電路,分別與被測芯片的2個I2C連接,接收并保 存被測芯片I 2C發(fā)送的測試數(shù)據(jù);
      [0104] 中斷處理測試模塊:接收被測芯片CPU發(fā)送的GPIO波形,并將所述GPIO波形發(fā)送 到所述CPU的中斷邏輯電路;
      [0105] 定時器測試模塊:包括指示電路,所述指示電路由被測芯片定時器發(fā)送的測試波 形進(jìn)行驅(qū)動并亮燈顯示,可用于提示測試人員定時器測試已完成;
      [0106] 計數(shù)器測試模塊:接收通信模塊發(fā)送的計數(shù)命令,產(chǎn)生計數(shù)信號,并將所述計數(shù)信 號發(fā)送到被測芯片計數(shù)器部件;
      [0107] 總線測試模塊:接收被測芯片1553B總線模塊輸出的測試信號,對所述測試信號 進(jìn)行電平轉(zhuǎn)換、信號隔離、信號耦合后輸出到外部1553B標(biāo)準(zhǔn)設(shè)備;接收所述外部1553B標(biāo) 準(zhǔn)設(shè)備轉(zhuǎn)發(fā)的返向測試信號,對所述返向測試信號進(jìn)行信號耦合、信號隔離和電平轉(zhuǎn)換處 理后輸出到被測芯片1553B總線模塊;
      [0108] 模擬開關(guān)/ADC測試模塊:為被測芯片的模擬開關(guān)的L個端口配置L個不同的模擬 電壓值;
      [0109] GPIO測試模塊:在被測芯片GPIO前向通道測試過程中,接收被測芯片CPU的GPIO 發(fā)送的前向測試信號,發(fā)送所述前向測試信號到被測芯片F(xiàn)PGA的GPIO ;在被測芯片GPIO 返向通道測試過程中,接收被測芯片F(xiàn)PGA的GPIO發(fā)送的返向測試數(shù)據(jù),并轉(zhuǎn)發(fā)所述返向測 試數(shù)據(jù)到被測芯片CPU的GPIO端口;
      [0110] FPGA配置電路模塊:對被測芯片的FPGA進(jìn)行文件更新配置。
      [0111] 時鐘復(fù)位模塊:為被測芯片CPU提供時鐘和復(fù)位信號;
      [0112] 電源模塊:對串口通信接口測試模塊、I2C測試模塊、中斷處理測試模塊、定時器測 試模塊、計數(shù)器測試模塊、總線測試模塊、模擬開關(guān)/ADC測試模塊、GPIO測試模塊、FPGA配 置模塊、通信模塊和時鐘復(fù)位模塊進(jìn)行供電。
      [0113] 本發(fā)明基于上述SoPC芯片的功能自動化測試系統(tǒng)的自動化測試方法包括以下步 驟:
      [0114] 首先,按照設(shè)定的測試內(nèi)容和測試順序,由測試控制模塊發(fā)送測試命令,依次開啟 串行通信接口測試、I 2C測試、中斷處理測試、定時器測試、計數(shù)器測試、1553B總線測試、模 擬開關(guān)/ADC測試、GPIO測試;并在各項測試結(jié)束后,由被測芯片CPU將測試結(jié)果發(fā)送到通 信模塊,所述通信模塊再將所述測試結(jié)果發(fā)送到測試控制模塊進(jìn)行匯總,完成被測芯片的 功能測試。
      [0115] 其中,各模塊的具體測試方法如下:
      [0116] (1)、被測芯片的串行通信接口測試包括以下步驟:
      [0117] (Ia)、測試控制模塊通過通信模塊發(fā)送串行通信接口測試命令到被測芯片CPU,所 述被測芯片CPU通過N個異步串行通信接口分別發(fā)送測試數(shù)據(jù)到通信接口測試模塊中的N 個串口測試電路中;
      [0118] (lb)、所述串口測試電路將接收到的測試數(shù)據(jù)轉(zhuǎn)發(fā)回被測芯片的異步串行通信接 Π ;
      [0119] (lc)、被測芯片將所述異步串行通信接口接收到的數(shù)據(jù)與步驟(Ia)中的發(fā)送數(shù) 據(jù)進(jìn)行比較,得到測試結(jié)果,其中:
      [0120] 如果所述接收數(shù)據(jù)與發(fā)送數(shù)據(jù)相同,則判斷被測芯片CPU的異步串行通信接口工 作正常;如果所述接收數(shù)據(jù)與發(fā)送數(shù)據(jù)不相同,則判斷被測芯片CPU的異步串行通信接口 工作異常;
      [0121] (Id)、被測芯片CPU將步驟(Ic)得到的測試結(jié)果發(fā)送到通信模塊;
      [0122] (Ie)、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      [0123] (2)、被測芯片的I2C測試包括以下步驟:
      [0124] (2a)、測試控制模塊通過通信模塊發(fā)送I2C測試命令到被測芯片CPU,被測芯片的 I2C發(fā)送測試數(shù)據(jù)到的I2C測試電路模塊中的I2C測試電路中;
      [0125] (2b)、所述的I2C測試電路接收并保存步驟(2a)中的測試數(shù)據(jù);
      [0126] (2c)、被測芯片的I2C讀取I2C測試電路中保存的測試數(shù)據(jù),并與步驟(2a)中的發(fā) 送數(shù)據(jù)進(jìn)行比較,得到測試結(jié)果,其中:
      [0127] 如果所述讀取數(shù)據(jù)與發(fā)送數(shù)據(jù)相同,則判斷被測芯片I2C工作正常;如果所述讀取 數(shù)據(jù)與發(fā)送數(shù)據(jù)不同,則判斷被測芯片I 2C工作異常;
      [0128] (2d)、被測芯片CPU將步驟(2c)得到的測試結(jié)果發(fā)送到通信模塊;
      [0129] (2e)、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      [0130] (3)、被測芯片中斷處理測試包括以下步驟:
      [0131] (3a)、測試控制模塊通過通信模塊發(fā)送中斷處理測試命令到被測芯片CPU ;
      [0132] (3b)、被測芯片CPU設(shè)定所述CPU中斷邏輯電路的中斷模式,并產(chǎn)生與所述中斷模 式相對應(yīng)的GPIO波形;該中斷模式包括上升沿觸發(fā)模式、下降沿觸發(fā)模式、低電平觸發(fā)模 式和高電平觸發(fā)模式;
      [0133] (3c)、被測芯片CPU發(fā)送所述GPIO波形到中斷處理測試模塊;
      [0134] (3d)、中斷處理測試模塊將步驟(3c)接收到的GPIO波形發(fā)送到被測芯片CPU的 中斷邏輯電路;
      [0135] (3e)、被測芯片CPU根據(jù)所述中斷邏輯電路的觸發(fā)結(jié)果,得到被測芯片中斷處理 測試結(jié)果,其中:
      [0136] 如果所述中斷邏輯電路根據(jù)接收到的GPIO波形觸發(fā)中斷,則判斷被測芯片的中 斷處理工作正常;如果所述中斷邏輯電路在接收到的GPIO波形后沒有觸發(fā)中斷,則判斷被 測芯片的中斷處理工作異常;
      [0137] (3f)、被測芯片CPU將步驟(3d)得到的測試結(jié)果發(fā)送到通信模塊;
      [0138] (3g)、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      [0139] (4)、被測芯片的定時器測試的具體實現(xiàn)過程如下:
      [0140] (4a)、測試控制模塊通過通信模塊發(fā)送定時器測試命令到被測芯片CPU ;
      [0141] (4b)、被測芯片CPU根據(jù)所述測試命令,設(shè)定被測芯片定時器的工作模式和定時 時間,并將所述定時時間分為M個時間片,其中,在每個所述時間片的結(jié)束時刻,由所述CPU 的中斷邏輯電路產(chǎn)生中斷信號,并由所述CPU進(jìn)行計數(shù);其中,M為設(shè)定的正整數(shù);所述的定 時器工作模式包括內(nèi)部時鐘模式測試、外部時鐘模式測試和外部實啟模式;
      [0142] (4c)、被測芯片的CPU在所述定時時間的結(jié)束時刻停止計數(shù),并且被測芯片的定 時器輸出測試波形到定時器測試電路模塊;定時器測試電路模塊在接收到所述測試波形 后,驅(qū)動所述模塊中的指示電路,表明定時器工作完成;
      [0143] (4d)、CPU將步驟(4b)中得到的計數(shù)結(jié)果與設(shè)定的M值進(jìn)行比較,得到測試結(jié)果, 其中:
      [0144] 如果所述計數(shù)結(jié)果與M值相同,則判斷被測芯片的定時器部件工作正常;如果所 述計數(shù)結(jié)果與M值不同,則判斷被測芯片的定時器部件工作異常;
      [0145] (4e)、被測芯片CPU將步驟(4d)得到的測試結(jié)果發(fā)送到通信模塊;
      [0146] (4f)、通信模塊發(fā)送所述測試結(jié)果到測試控制模塊。
      [0147] (5)、被測芯片的計數(shù)器測試包括以下步驟:
      [0148] (5a)、測試控制模塊通過通信模塊發(fā)送計數(shù)命令到計數(shù)器測試模塊;
      [0149] (5b)、計數(shù)器測試模塊在接收到所述計數(shù)命令后,產(chǎn)生計數(shù)信號;
      [0150] (5c)、發(fā)送步驟(5b)產(chǎn)生的計數(shù)信號到被測芯片的計數(shù)器部件;
      [0151] (5d)、被測芯片的計數(shù)器部件按照計數(shù)信號進(jìn)行計數(shù)操作,得到計數(shù)結(jié)果,其中:
      [0152] 如果所述計數(shù)結(jié)果與計數(shù)信號對應(yīng)的計數(shù)結(jié)果相同,則判斷被測芯片的計數(shù)器部 件工作正常;如果所述計數(shù)結(jié)果與計數(shù)信號對應(yīng)的計數(shù)結(jié)果不同,則判斷被測芯片的計數(shù) 器部件工作異常;
      [0153] (5e)、被測芯片CPU將步驟(5d)得到的測試結(jié)果發(fā)送到通信模塊;
      [0154] (5f)、通信模塊發(fā)送所述測試結(jié)果到測試控制模塊。
      [0155] (6)、被測芯片的總線測試包括以下步驟:
      [0156] (6a)、測試控制模塊通過通信模塊發(fā)送總線測試命令到被測芯片CPU ;被測芯片 (PU通過被測芯片的1553B總線輸出前向測試信號到總線測試電路模塊;
      [0157] (6b)、總線測試電路模塊對所述前向測試信號進(jìn)行電平轉(zhuǎn)換、信號隔離和信號耦 合處理后,輸出處理后的前向測試信號到外部1553B標(biāo)準(zhǔn)設(shè)備;
      [0158] (6c)、所述外部1553B標(biāo)準(zhǔn)設(shè)備將接收到的前向測試信號轉(zhuǎn)發(fā)回總線測試模塊;
      [0159] (6d)、總線測試模塊對步驟(6c)接收到的測試信號進(jìn)行信號耦合、信號隔離和電 平轉(zhuǎn)換后,得到返向測試信號;
      [0160] (6e)、總線測試模塊發(fā)送所述返向測試信號到被測芯片1553B總線模塊;
      [0161] (6f)、被測芯片CPU將所述返向測試信號與步驟(6a)中所述CPU發(fā)送的前向測試 信號進(jìn)行比較,得到測試結(jié)果,其中:
      [0162] 如果所述前向測試信號與所述返向測試信號相同,則判斷被測芯片的總線工作正 常;如果所述前向測試信號與所述返向測試信號不同,則判斷被測芯片的總線工作異常;
      [0163] (6g)、被測芯片CPU發(fā)送步驟(6f)得到的測試結(jié)果到通信模塊;
      [0164] (6h)、通信模塊轉(zhuǎn)發(fā)所述測試結(jié)果到測試控制模塊。
      [0165] (7)、被測芯片模擬開關(guān)/ADC測試包括如下步驟:
      [0166] (7a)、測試控制模塊通過通信模塊發(fā)送模擬開關(guān)/ADC測試命令到被測芯片CPU ; 模擬開關(guān)/ADC測試模塊為被測芯片的模擬開關(guān)的L個輸入端口配置L個不同的模擬電壓 值,其中,所述模擬開關(guān)的輸出端口與被測芯片的ADC連接;
      [0167] (7b)、被測芯片ADC接收模擬開關(guān)傳送的模擬電壓值,并進(jìn)行模數(shù)轉(zhuǎn)換,輸出電壓 數(shù)字值;
      [0168] (7c)、被測芯片CPU根據(jù)所述ADC輸出的電壓數(shù)字值,推算出模擬電壓值;
      [0169] (7d)、被測芯片CPU將步驟(7c)中推算出的模擬電壓值與步驟(7a)中配置的模 擬電壓值進(jìn)行比較,得到測試結(jié)果,其中:
      [0170] 如果所述兩種模擬電壓值相同,則判斷被測芯片的模擬開關(guān)和ADC工作正常;如 果所述兩種模擬電壓值不同,則判斷被測芯片的模擬開關(guān)和ADC工作異常正常;
      [0171] (7e)、被測芯片CPU將步驟(7d)得到的測試結(jié)果發(fā)送到通信模塊;
      [0172] (7f)、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      [0173] (8)、被測芯片的GPIO測試通過被測芯片CPU的GPIO與被測芯片F(xiàn)PGA的互相測 試完成,具體實現(xiàn)步驟包括:
      [0174] (8a)、測試控制模塊通過通信模塊發(fā)送模擬開關(guān)/ADC測試命令到被測芯片CPU ; 被測芯片CPU的GPIO輸出前向測試數(shù)據(jù)到被測芯片的FPGA的GPIO ;
      [0175] (8b)、被測芯片CPU通過總線讀取所述FPGA中的前向測試數(shù)據(jù),并與步驟(8a)中 輸出的前向測試數(shù)據(jù)進(jìn)行比較,得到前向通道的測試結(jié)果,其中:
      [0176] 如果進(jìn)過比較得到所述兩組數(shù)據(jù)相同,則判斷被測芯片CPU的GPIO中的輸出模式 工作正常,且被測芯片F(xiàn)PGA的GPIO中的接收模式工作正常;如果進(jìn)過比較得到所述兩組數(shù) 據(jù)不同,則判斷被測芯片CPU的GPIO中的輸出?;虮粶y芯片F(xiàn)PGA的GPIO中的接收模式工 作異常;
      [0177] (8c)、被測芯片CPU通過總線發(fā)送返向測試數(shù)據(jù)到被測芯片的FPGA ;
      [0178] (8d)、被測芯片F(xiàn)PGA通過GPIO發(fā)送所述返向測試數(shù)據(jù)到GPIO測試電路模塊;
      [0179] (8e)、GPI0測試電路模塊將所述返向測試數(shù)據(jù)發(fā)送到被測芯片CPU的GPIO端口;
      [0180] (8f)、被測芯片CPU將步驟(Se)中接收的返向測試數(shù)據(jù)與步驟(8c)中發(fā)送的返 向測試數(shù)據(jù)進(jìn)行比較,得到測試結(jié)果,其中:
      [0181] 如果進(jìn)過比較得到所述兩組數(shù)據(jù)相同,則判斷被測芯片CPU的GPIO中的接收模式 工作正常,且被測芯片F(xiàn)PGA的GPIO中的輸出模式工作正常;如果進(jìn)過比較得到所述兩組數(shù) 據(jù)不同,則判斷被測芯片CPU的GPIO中的接收?;虮粶y芯片F(xiàn)PGA的GPIO中的輸出模式工 作異常;
      [0182] (8g)、發(fā)送步驟(8b)和(8f)得到的測試結(jié)果到通信模塊;
      [0183] (8h)、通信模塊發(fā)送所述測試結(jié)果到測試控制模塊。
      [0184] 在本發(fā)明中,還可以將被測芯片的SRAM、SDRAM和FLASH的測試程序?qū)懭肟偟臏y試 程序中,完成進(jìn)行測試被測芯片的SRAM、SDRAM和FLASH的軟件測試。
      [0185] 實施例:
      [0186] 本實施例中針對一款包括SPARC V8內(nèi)核處理器、IMB SRAM、8MB FLASH,16MB SDRAM和30萬門FPGA實現(xiàn)的SoPC芯片,進(jìn)行自動化功能性測試。
      [0187] 在自動化測試系統(tǒng)中,串行通信接口測試模塊包括4個異步串行通信接口的測試 電路;I 2C測試模塊包括2個I2C測試電路;中斷處理測試模塊包括1路不可屏蔽中斷和4路 外部中斷的測試電路;定時器測試模塊包括10個定時器輸出的3種應(yīng)用模式的測試電路, 其中,三種應(yīng)用模式分別為內(nèi)部時鐘模式、外部時鐘模式和外部實啟模式;計數(shù)器測試模塊 包括12路計數(shù)器測試電路;總線測試模塊包括1路高速1553B總線測試電路;模擬開關(guān)/ ADC測試模塊包括針對4路7位模擬開關(guān)輸入和4路獨立ADC的測試電路;GPIO測試模塊 包括16路輸入輸出電路的測試電路;其中,電源模塊由電源適配器實現(xiàn)220V交流電源到 5V03A直流電源的轉(zhuǎn)換,對其他模塊進(jìn)行供電;測試控制模塊由PC機(jī)實現(xiàn),可以實現(xiàn)人機(jī)交 互;并且該P(yáng)C機(jī)與集成了各測試模塊的硬件電路間通過通信電纜連接;FPGA配置模塊將測 試版本的FPGA配置文件加載在被測芯片的FPGA中,并在被測芯片CPU中運(yùn)行測試程序。
      [0188] 其中,通信模塊、通信接口測試模塊、I2C測試模塊、中斷處理測試模塊、定時器測 試模塊、計數(shù)器測試模塊、總線測試模塊、模擬開關(guān)/ADC測試模塊、GPIO測試模塊、FPGA配 置模塊、時鐘復(fù)位模塊和電源模塊集成在一個硬件測試平臺上。
      [0189] 在測試過程中,PC機(jī)通過通信電纜發(fā)送指令、接收響應(yīng),測試程序運(yùn)行于被測 SoPC芯片內(nèi)。其中,被測芯片根據(jù)收到的指令確定需要測試功能所涉及的模塊,并自動產(chǎn) 生需要施加的激勵,完成對SoPC芯片不同功能模塊的功能性測試,并將測試結(jié)果匯總到PC 機(jī)。
      [0190] 以上所述的測試系統(tǒng)的連接方式如圖2所示,并按照圖3所示的測試流程進(jìn)行測 試,具體的測試步驟如下:
      [0191] (1)、根據(jù)被測SoPC芯片包含的功能模塊和測試規(guī)范,編寫SoPC芯片的測試程序, 包括處理器程序和FPGA配置程序,并將兩者融合;
      [0192] (2)、根據(jù)測試規(guī)范,編寫PC機(jī)上運(yùn)行的自動化測試程序,由其控制測試流程、匯 總測試結(jié)果、記錄測試信息;
      [0193] (3)、打開芯片測試插座,加載被測試芯片并夾緊;實現(xiàn)芯片與測試系統(tǒng)的連接;
      [0194] (4)、運(yùn)行PC機(jī)上的自動化測試軟件,并給自動化測試硬件平臺上電;
      [0195] (5)、下載SoPC芯片使用的測試程序,然后運(yùn)行;
      [0196] (6)、打開PC機(jī)的通信端口,并記錄測試人員、測試記錄保存路徑、文件名等信息;
      [0197] (7)、PC機(jī)通過通信電纜讀取被測SoPC芯片的識別ID號,并在測試記錄文件中記 錄該ID號;
      [0198] (8)、觸發(fā)測試程序,開始對被測芯片的各項功能進(jìn)行測試,其中包括:① UARTl測 試;②UART2測試;③UART3測試;④UART4測試;⑤第一個I2C寫操作測試、讀操作測試, 第二個I 2C寫操作測試、讀操作測試;⑥不可屏蔽中斷低電平觸發(fā)、高電平觸發(fā)、上升沿觸 發(fā)、下降沿觸發(fā)測試、4個外部中斷低電平觸發(fā)、高電平觸發(fā)、上升沿觸發(fā)、下降沿觸發(fā)測試; ⑦10個定時器的內(nèi)部時鐘模式測試、外部時鐘模式測試、外部實啟模式測試;;⑧12個計 數(shù)器測試;⑨1553B總線BC模式測試、RT模式測試;⑩4路模擬開關(guān)和ADC轉(zhuǎn)換測試;? GPIO輸入輸出模式測試;?FPGA配置模式測試;?SRAM測試;?SDRAM測試;?Flash 讀寫操作測試、扇區(qū)擦除測試、整片擦除測試;
      [0199] (9)、PC機(jī)通過通信電纜接收測試結(jié)果,單片測試結(jié)束;
      [0200] (10)、在單片測試結(jié)束后,切斷自動化測試硬件平臺電源;
      [0201] (11)、打開芯片測試插座,取出被測試芯片;同時將測試過程和步驟(9)得到的測 試結(jié)果記錄在測試文件中。
      [0202] 本實施例通過自動化硬件測試平臺、測試程序和自動化測試軟件之間的有機(jī)配 合,順利完成一款包括SPARC V8內(nèi)核處理器、IMB SRAM、8MB FLASH,16MB SDRAM和30萬門 FPGA實現(xiàn)的SoPC芯片的功能性測試自動化實現(xiàn)。模塊化設(shè)計解決了測試系統(tǒng)的維護(hù)困難 的問題,利用FPGA可重用的優(yōu)勢,精簡了自動化硬件測試平臺電路設(shè)計,降低測試成本,解 決了測試系統(tǒng)重構(gòu)復(fù)雜的問題;芯片測試的整個過程完全自動化,將測試過程從原來的15 分鐘縮短到3分鐘,同時自動輸出測試報告和結(jié)果統(tǒng)計,大大提高了設(shè)計生產(chǎn)率,降低了操 作復(fù)雜度。真正實現(xiàn)了一種自動化、高效、操作簡單、可重用的功能性測試。
      [0203] 以上所述,僅為本發(fā)明最佳的【具體實施方式】,但本發(fā)明的保護(hù)范圍并不局限于此, 任何熟悉本【技術(shù)領(lǐng)域】的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換, 都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。
      [0204] 本發(fā)明說明書中未作詳細(xì)描述的內(nèi)容屬于本領(lǐng)域?qū)I(yè)技術(shù)人員公知技術(shù)。
      【權(quán)利要求】
      1. 一種基于SoPC芯片的功能自動化測試系統(tǒng),其特征在于:包括測試控制模塊、通信 模塊、串行通信接口測試模塊、I2C測試模塊、中斷處理測試模塊、定時器測試模塊、計數(shù)器 測試模塊、總線測試模塊、模擬開關(guān)/ADC測試模塊和GPI0測試模塊,其中: 測試控制模塊:發(fā)送測試命令、計數(shù)命令到通信模塊,并接收通信模塊發(fā)送的測試結(jié) 果; 通信模塊:接收測試控制模塊發(fā)送的測試命令或計數(shù)命令,并將所述測試命令發(fā)送到 被測芯片CPU,接收被測芯片的CPU輸出的測試結(jié)果;將所述計數(shù)命令發(fā)送到計數(shù)器測試模 塊; 串行通信接口測試模塊:包括N個串口測試電路,分別與被測芯片的N個異步串行通信 接口連接,接收所述通信接口發(fā)送的測試數(shù)據(jù),并將所述測試數(shù)據(jù)接收轉(zhuǎn)發(fā)回被測芯片的 異步串行通信接口;其中,N為正整數(shù); I2C測試模塊:包括2個I2C測試電路,分別與被測芯片的2個I2C連接,接收并保存被 測芯片I2C發(fā)送的測試數(shù)據(jù); 中斷處理測試模塊:接收被測芯片CPU發(fā)送的GPI0波形,并將所述GPI0波形發(fā)送到所 述CPU的中斷邏輯電路; 定時器測試模塊:包括指示電路,所述指示電路由被測芯片定時器發(fā)送的測試波形進(jìn) 行驅(qū)動并亮燈顯示; 計數(shù)器測試模塊:接收通信模塊發(fā)送的計數(shù)命令,產(chǎn)生計數(shù)信號,并將所述計數(shù)信號發(fā) 送到被測芯片計數(shù)器部件; 總線測試模塊:接收被測芯片1553B總線模塊輸出的測試信號,對所述測試信號進(jìn)行 電平轉(zhuǎn)換、信號隔離、信號耦合后輸出到外部1553B標(biāo)準(zhǔn)設(shè)備;接收所述外部1553B標(biāo)準(zhǔn)設(shè) 備轉(zhuǎn)發(fā)的返向測試信號,對所述返向測試信號進(jìn)行信號耦合、信號隔離和電平轉(zhuǎn)換處理后 輸出到被測芯片1553B總線模塊; 模擬開關(guān)/ADC測試模塊:為被測芯片的模擬開關(guān)的L個端口配置L個不同的模擬電壓 值;其中,L為正整數(shù); GPI0測試模塊:在被測芯片GPI0前向通道測試過程中,接收被測芯片CPU的GPI0發(fā) 送的前向測試信號,發(fā)送所述前向測試信號到被測芯片F(xiàn)PGA的GPI0 ;在被測芯片GPI0返 向通道測試過程中,接收被測芯片F(xiàn)PGA的GPI0發(fā)送的返向測試數(shù)據(jù),并轉(zhuǎn)發(fā)所述返向測試 數(shù)據(jù)到被測芯片CPU的GPI0端口。
      2. 根據(jù)權(quán)利要求1所述的一種基于SoPC芯片的功能自動化測試系統(tǒng),其特征在于:還 包括FPGA配置模塊、時鐘復(fù)位模塊和電源模塊,其中: FPGA配置電路模塊:對被測芯片的FPGA進(jìn)行文件更新配置; 時鐘復(fù)位模塊:為被測芯片CPU提供時鐘和復(fù)位信號; 電源模塊:對串口通信接口測試模塊、I2C測試模塊、中斷處理測試模塊、定時器測試 模塊、計數(shù)器測試模塊、總線測試模塊、模擬開關(guān)/ADC測試模塊、GPI0測試模塊、FPGA配置 模塊、通信模塊和時鐘復(fù)位模塊進(jìn)行供電。
      3. -種基于SoPC芯片的功能自動化測試方法,其特征在于:所述測試方法在一種自動 化測試系統(tǒng)中實現(xiàn),其中,所述自動化測試系統(tǒng)包括測試控制模塊、通信模塊、串行通信接 口測試模塊、I2C測試模塊、中斷處理測試模塊、定時器測試模塊、計數(shù)器測試模塊、總線測 試模塊、模擬開關(guān)/ADC測試模塊和GPIO測試模塊,所述測試方法的包括以下步驟: 首先,按照設(shè)定的測試內(nèi)容和測試順序,由測試控制模塊發(fā)送測試命令,依次開啟串行 通信接口測試、I2C測試、中斷處理測試、定時器測試、計數(shù)器測試、1553B總線測試、模擬開 關(guān)/ADC測試、GPI0測試;并在各項測試結(jié)束后,由被測芯片CPU將測試結(jié)果發(fā)送到通信模 塊,所述通信模塊再將所述測試結(jié)果發(fā)送到測試控制模塊進(jìn)行匯總,完成被測芯片的功能 測試。
      4. 根據(jù)權(quán)利要求3所述的一種基于SoPC芯片的功能自動化測試方法,其特征在于:被 測芯片的串行通信接口測試包括以下步驟: (la) 、測試控制模塊通過通信模塊發(fā)送串行通信接口測試命令到被測芯片CPU,所述被 測芯片CPU通過N個異步串行通信接口分別發(fā)送測試數(shù)據(jù)到通信接口測試模塊中的N個串 口測試電路中; (lb) 、所述串口測試電路將接收到的測試數(shù)據(jù)轉(zhuǎn)發(fā)回被測芯片的異步串行通信接口; (lc) 、被測芯片將所述異步串行通信接口接收到的數(shù)據(jù)與步驟(la)中的發(fā)送數(shù)據(jù)進(jìn) 行比較,得到測試結(jié)果,其中: 如果所述接收數(shù)據(jù)與發(fā)送數(shù)據(jù)相同,則判斷被測芯片CPU的異步串行通信接口工作正 常;如果所述接收數(shù)據(jù)與發(fā)送數(shù)據(jù)不相同,則判斷被測芯片CPU的異步串行通信接口工作 異常; (ld) 、被測芯片CPU將步驟(lc)得到的測試結(jié)果發(fā)送到通信模塊; (le) 、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      5. 根據(jù)權(quán)利要求3所述的一種基于SoPC芯片的功能自動化測試方法,其特征在于:被 測芯片的I2C測試包括以下步驟: (2a)、測試控制模塊通過通信模塊發(fā)送I2C測試命令到被測芯片CPU,被測芯片的I2C 發(fā)送測試數(shù)據(jù)到的I2C測試電路模塊中的I2C測試電路中; (2b)、所述的I2C測試電路接收并保存步驟(2a)中的測試數(shù)據(jù); (2c)、被測芯片的I2C讀取I2C測試電路中保存的測試數(shù)據(jù),并與步驟(2a)中的發(fā)送數(shù) 據(jù)進(jìn)行比較,得到測試結(jié)果,其中: 如果所述讀取數(shù)據(jù)與發(fā)送數(shù)據(jù)相同,則判斷被測芯片I2C工作正常;如果所述讀取數(shù)據(jù) 與發(fā)送數(shù)據(jù)不同,則判斷被測芯片I2C工作異常; (2d)、被測芯片CPU將步驟(2c)得到的測試結(jié)果發(fā)送到通信模塊; (2e)、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      6. 根據(jù)權(quán)利要求3所述的一種基于SoPC芯片的功能自動化測試方法,其特征在于:被 測芯片中斷處理測試包括以下步驟: (3a)、測試控制模塊通過通信模塊發(fā)送中斷處理測試命令到被測芯片CPU ; (3b)、被測芯片CPU設(shè)定所述CPU中斷邏輯電路的中斷模式,并產(chǎn)生與所述中斷模式相 對應(yīng)的GPI0波形; (3c)、被測芯片CPU發(fā)送所述GPI0波形到中斷處理測試模塊; (3d)、中斷處理測試模塊將步驟(3c)接收到的GPI0波形發(fā)送到被測芯片CPU的中斷 邏輯電路; (3e)、被測芯片CPU根據(jù)所述中斷邏輯電路的觸發(fā)結(jié)果,得到被測芯片中斷處理測試 結(jié)果,其中: 如果所述中斷邏輯電路根據(jù)接收到的GPIO波形觸發(fā)中斷,則判斷被測芯片的中斷處 理工作正常;如果所述中斷邏輯電路在接收到的GPIO波形后沒有觸發(fā)中斷,則判斷被測芯 片的中斷處理工作異常; (3f)、被測芯片CPU將步驟(3d)得到的測試結(jié)果發(fā)送到通信模塊; (3g)、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      7. 根據(jù)權(quán)利要求3所述的一種基于SoPC芯片的功能自動化測試方法,其特征在于:被 測芯片的定時器測試的具體實現(xiàn)過程如下: (4a)、測試控制模塊通過通信模塊發(fā)送定時器測試命令到被測芯片CPU ; (4b)、被測芯片CPU根據(jù)所述測試命令,設(shè)定被測芯片定時器的工作模式和定時時間, 并將所述定時時間分為M個時間片,其中,在每個所述時間片的結(jié)束時刻,由所述CPU的中 斷邏輯電路產(chǎn)生中斷信號,并由所述CPU進(jìn)行計數(shù);其中,M為設(shè)定的正整數(shù); (4c)、被測芯片的CPU在所述定時時間的結(jié)束時刻停止計數(shù),并且被測芯片的定時器 輸出測試波形到定時器測試電路模塊;定時器測試電路模塊在接收到所述測試波形后,驅(qū) 動所述t旲塊中的指不電路,表明定時器工作完成; (4d)、CPU將步驟(4b)中得到的計數(shù)結(jié)果與設(shè)定的M值進(jìn)行比較,得到測試結(jié)果,其 中: 如果所述計數(shù)結(jié)果與M值相同,則判斷被測芯片的定時器部件工作正常;如果所述計 數(shù)結(jié)果與M值不同,則判斷被測芯片的定時器部件工作異常; (4e)、被測芯片CPU將步驟(4d)得到的測試結(jié)果發(fā)送到通信模塊; (4f)、通信模塊發(fā)送所述測試結(jié)果到測試控制模塊。
      8. 根據(jù)權(quán)利要求3所述的一種基于SoPC芯片的功能自動化測試方法,其特征在于:被 測芯片的計數(shù)器測試包括以下步驟: (5a)、測試控制模塊通過通信模塊發(fā)送計數(shù)命令到計數(shù)器測試模塊; (5b)、計數(shù)器測試模塊在接收到所述計數(shù)命令后,產(chǎn)生計數(shù)信號; (5c)、發(fā)送步驟(5b)產(chǎn)生的計數(shù)信號到被測芯片的計數(shù)器部件; (5d)、被測芯片的計數(shù)器部件按照計數(shù)信號進(jìn)行計數(shù)操作,得到計數(shù)結(jié)果,其中: 如果所述計數(shù)結(jié)果與計數(shù)信號對應(yīng)的計數(shù)結(jié)果相同,則判斷被測芯片的計數(shù)器部件工 作正常;如果所述計數(shù)結(jié)果與計數(shù)信號對應(yīng)的計數(shù)結(jié)果不同,則判斷被測芯片的計數(shù)器部 件工作異常; (5e)、被測芯片CPU將步驟(5d)得到的測試結(jié)果發(fā)送到通信模塊; (5f)、通信模塊發(fā)送所述測試結(jié)果到測試控制模塊。
      9. 根據(jù)權(quán)利要求3所述的一種基于SoPC芯片的功能自動化測試方法,其特征在于:被 測芯片的總線測試包括以下步驟: (6a)、測試控制模塊通過通信模塊發(fā)送總線測試命令到被測芯片CPU ;被測芯片CPU通 過被測芯片的1553B總線輸出前向測試信號到總線測試電路模塊; (6b)、總線測試電路模塊對所述前向測試信號進(jìn)行電平轉(zhuǎn)換、信號隔離和信號耦合處 理后,輸出處理后的前向測試信號到外部1553B標(biāo)準(zhǔn)設(shè)備; (6c)、所述外部1553B標(biāo)準(zhǔn)設(shè)備將接收到的前向測試信號轉(zhuǎn)發(fā)回總線測試模塊; (6d)、總線測試模塊對步驟(6c)接收到的測試信號進(jìn)行信號耦合、信號隔離和電平轉(zhuǎn) 換后,得到返向測試信號; (6e)、總線測試模塊發(fā)送所述返向測試信號到被測芯片1553B總線模塊; (6f)、被測芯片CPU將所述返向測試信號與步驟^a)中所述CPU發(fā)送的前向測試信號 進(jìn)行比較,得到測試結(jié)果,其中: 如果所述前向測試信號與所述返向測試信號相同,則判斷被測芯片的總線工作正常; 如果所述前向測試信號與所述返向測試信號不同,則判斷被測芯片的總線工作異常; (6g)、被測芯片CPU發(fā)送步驟(6f)得到的測試結(jié)果到通信模塊; (6h)、通信模塊轉(zhuǎn)發(fā)所述測試結(jié)果到測試控制模塊。
      10. 根據(jù)權(quán)利要求3所述的一種基于SoPC芯片的功能自動化測試方法,其特征在于: 被測芯片模擬開關(guān)/ADC測試包括如下步驟: (7a)、測試控制模塊通過通信模塊發(fā)送模擬開關(guān)/ADC測試命令到被測芯片CPU ;模擬 開關(guān)/ADC測試模塊為被測芯片的模擬開關(guān)的L個輸入端口配置L個不同的模擬電壓值,其 中,所述模擬開關(guān)的輸出端口與被測芯片的ADC連接; (7b)、被測芯片ADC接收模擬開關(guān)傳送的模擬電壓值,并進(jìn)行模數(shù)轉(zhuǎn)換,輸出電壓數(shù)字 值; (7c)、被測芯片CPU根據(jù)所述ADC輸出的電壓數(shù)字值,推算出模擬電壓值; (7d)、被測芯片CPU將步驟(7c)中推算出的模擬電壓值與步驟(7a)中配置的模擬電 壓值進(jìn)行比較,得到測試結(jié)果,其中: 如果所述兩種模擬電壓值相同,則判斷被測芯片的模擬開關(guān)和ADC工作正常;如果所 述兩種模擬電壓值不同,則判斷被測芯片的模擬開關(guān)和ADC工作異常正常; (7e)、被測芯片CPU將步驟(7d)得到的測試結(jié)果發(fā)送到通信模塊; (7f)、通信模塊發(fā)送測試結(jié)果到測試控制模塊。
      11. 根據(jù)權(quán)利要求3所述的一種基于SoPC芯片的功能自動化測試方法,其特征在于: 被測芯片的GPI0測試通過被測芯片CPU的GPI0與被測芯片F(xiàn)PGA的互相測試完成,具體實 現(xiàn)步驟包括: (8a)、測試控制模塊通過通信模塊發(fā)送模擬開關(guān)/ADC測試命令到被測芯片CPU ;被測 芯片CPU的GPI0輸出前向測試數(shù)據(jù)到被測芯片的FPGA的GPI0 ; (8b)、被測芯片CPU通過總線讀取所述FPGA中的前向測試數(shù)據(jù),并與步驟(8a)中輸出 的前向測試數(shù)據(jù)進(jìn)行比較,得到前向通道的測試結(jié)果,其中: 如果進(jìn)過比較得到所述兩組數(shù)據(jù)相同,則判斷被測芯片CPU的GPI0中的輸出模式工作 正常,且被測芯片F(xiàn)PGA的GPI0中的接收模式工作正常;如果進(jìn)過比較得到所述兩組數(shù)據(jù)不 同,則判斷被測芯片CPU的GPI0中的輸出?;虮粶y芯片F(xiàn)PGA的GPI0中的接收模式工作異 常; (8c)、被測芯片CPU通過總線發(fā)送返向測試數(shù)據(jù)到被測芯片的FPGA ; (8d)、被測芯片F(xiàn)PGA通過GPI0發(fā)送所述返向測試數(shù)據(jù)到GPI0測試電路模塊; (8e)、GPI0測試電路模塊將所述返向測試數(shù)據(jù)發(fā)送到被測芯片CPU的GPI0端口; (8f)、被測芯片CPU將步驟(8e)中接收的返向測試數(shù)據(jù)與步驟(8c)中發(fā)送的返向測 試數(shù)據(jù)進(jìn)行比較,得到測試結(jié)果,其中: 如果進(jìn)過比較得到所述兩組數(shù)據(jù)相同,則判斷被測芯片CPU的GPIO中的接收模式工作 正常,且被測芯片F(xiàn)PGA的GPI0中的輸出模式工作正常;如果進(jìn)過比較得到所述兩組數(shù)據(jù)不 同,則判斷被測芯片CPU的GPI0中的接收?;虮粶y芯片F(xiàn)PGA的GPI0中的輸出模式工作異 常; (8g)、發(fā)送步驟(8b)和(8f)得到的測試結(jié)果到通信模塊; (8h)、通信模塊發(fā)送所述測試結(jié)果到測試控制模塊。
      【文檔編號】G01R31/28GK104459518SQ201410706874
      【公開日】2015年3月25日 申請日期:2014年11月27日 優(yōu)先權(quán)日:2014年11月27日
      【發(fā)明者】王蕊, 蘭利東, 趙元富, 周華章, 陸振林, 舒磊, 劉薇, 李璟, 李楠 申請人:北京時代民芯科技有限公司, 北京微電子技術(shù)研究所
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1