專利名稱:實現soc芯片中多任務多flash同時測試的方法
技術領域:
本發明涉及一種對多個FLASH進行測試的方法,尤其涉及一種實現 S0C芯片中多任務多FLASH同時測試的方法。
背景技術:
隨著硅片上的芯片數量越來越多,芯片的功能也越來越復雜,因此測 試所需的時間也越來越長、測試成本也就越來越高,如圖1所示,現有技 術中,對SOC芯片中FLASH的測試一般都是采用專門的測試儀器直接通過 芯片中的CPU來對各個FLASH進行測試的,這種測試方法只能一個一個功 能的進行測試,因此測試效率很低。尤其是對FLASH IP進行測試時,由 于FLASH IP的測試條件對SOC芯片系統設計者是保密的,因此SOC系統 設計者無法提供針對FLASH IP的測試方案,只能通過使用專用的測試接 口 ,或是通過普通的10 口將數據由CPU輸入到FLASH中后再進行測試, 因此現有技術中對FLASH的測試方法需發費大量的測試時間和測試成本。 如圖2所示,是采用現有技術中的方法,對SOC芯片中的兩個功能進行測 試時的時序圖,從該圖中可以看出第二項測試功能必須在第一項測試功能 完全結束后才能開始進行,整個測試過程發費的時間較長。
發明內容
本發明要解決的技術問題是提供一種實現SOC芯片中多任務多FLASH同 時測試的方法,可同時對多個FLASH的多項功能同時進行測試,提高對FLASH的測試效率,降低測試成本。
為解決上述技術問題,本發明提供了一種實現soc芯片中多任務多
FLASH同時測試的方法,改方法包括以下步驟
首先設計一套對芯片測試的以事件觸發的多任務測試程序;
使用測試儀通過所述芯片上的輸入輸出端口將所述測試程序下載到 所述芯片的存儲器中作為FLASH測試的軟件接口;
通過所述測試儀向存儲在存儲器中的測試程序發送一個激活命令,開 始測試,這時芯片存儲器中的測試程序會通過所述芯片中的CPU執行第一 個測試項目;
所述CPU在等待第一個測試項目測試結果的時候,所述CPU激活針對 于第二個測試項目的測試命令,開始執行第二個測試項目;若還有其他后 續測試項目,則以此類推,直到進行到最后一個測試項目;
所述CPU在等待最后一個測試項目測試結果的時候,向所述測試儀發送 指令來讀取第一個測試項目的結果;然后再在等待最后第二個測試項目測 試結果的時候,再向所述測試儀發送指令來讀取第二個測試項目的結果; 如此循環,直至讀取出所有測試項目的測試結果。
本發明由于采用了上述技術方案,具有這樣的有益效果,即可以在不 增加任何測試資源的前提下,充分利用被芯片系統中的內部資源,對多個 FLASH的多項功能同時進行測試,從而大大提高測試效率、減少了測試成本; 而且無需為測試增加特殊芯片設計,也不需要專用的FLASH IP測試接口, 從而節省了芯片設計成本與芯片面積,提高芯片產量。
下面結合附圖與具體實施方式
對本發明作進一步詳細的說明
圖1是一待測試的SOC芯片的結構示意圖2是采用現有技術中的測試方法對S0C芯片中的兩個FLASH進行測 試時的時序圖3是采用本發明所述測試方法對SOC芯片中的兩個FLASH進行測試 時的時序圖。
具體實施例方式
下面通過一個具體的實施例來說明本發明的測試方法 首先需設計一套針對SOC芯片測試的以事件觸發的多任務測試程序, 該測試程序將芯片測試的各個功能分割成了多個小指令,例如把不同的任 務分為不同的小指令,另外由于FLASH測試的各個任務由基本的讀寫擦 組成,因此也可以再將這些基本的動作作為小指令下到芯片中,從而縮小 下載量。
然后,使用測試儀通過所述芯片上的輸入輸出端口將所述測試程序下 載到所述芯片的存儲器中以作為FLASH測試的軟件接口,在一個實施例 中,由于RAM運行速度較快,而且下電后不會把測試程序留在系統中, 因此如圖1所示,將所述測試程序下載到RAM中。
當需要對所述芯片中的多個FLASH進行測試時,可通過所述測試儀向 存儲在存儲器中的測試程序發送一個激活命令,開始測試,這時芯片存儲 器中的測i式程序會通過所述芯片中的CPU執行第一個測試項目,例如對 FLASH A進行測試。
在第一個測試項目的進行過程中,即所述SOC芯片中的CPU還在等待 其測試結果的時候,該CPU會激活第二個測試項目,開始執行第二個測試 項目,例如對FLASH B進行測試,其中FLASH B與FLASH A可以為不同類 型的兩種FLASH。
在第二個測試項目的運行過程中,即所述CPU還在等待其測試結果的 時候,再通過通過該CPU向所述測試儀發送指令讀取第一個測試項目的結 果,這樣就可判斷出FLASHA是否合格了。隨后第二個測試項目的結果也 將被取出,以進行判斷FLASH B是否合格。
如果還有其他測試項目,則在該第二個測試項目等待測試結果的時 候,所述SOC芯片上的CPU還會激活后續的測試項目,其他步驟可參照上 面的過程進行。
如圖3所示,為通過使用本發明所述測試方法對兩項測試功能進行測 試時的時序圖,將該圖與圖2進行比較可以看出,由于本發明所述的這種 測試方法可以使多項測試功能同時進行,因此節約了大量的測試時間,從 而提高了測試效率。
綜上所述,本發明所述的這種測試方法完全使用SOC芯片本身所具有 的資源,實現了同時對SOC芯片中的多個不同的FLASH進行測試,從而大 大提高了測試效率,降低了測試成本。
權利要求
1、一種實現SOC芯片中多任務多FLASH同時測試的方法,其特征在于,包括以下步驟首先設計一套對芯片測試的以事件觸發的多任務測試程序;使用測試儀通過所述芯片上的輸入輸出端口將所述測試程序下載到所述芯片的存儲器中作為FLASH測試的軟件接口;通過所述測試儀向存儲在存儲器中的測試程序發送一個激活命令,開始測試,這時芯片存儲器中的測試程序會通過所述芯片中的CPU執行第一個測試項目;所述CPU在等待第一個測試項目測試結果的時候,所述CPU激活針對于第二個測試項目的測試命令,開始執行第二個測試項目;若還有其他后續測試項目,則以此類推,直到進行到最后一個測試項目;所述CPU在等待最后一個測試項目測試結果的時候,向所述測試儀發送指令來讀取第一個測試項目的結果;然后再在等待最后第二個測試項目測試結果的時候,再向所述測試儀發送指令來讀取第二個測試項目的結果;如此循環,直至讀取出所有測試項目的測試結果。
2、 根據權利要求1所述的種實現SOC芯片中多任務多FLASH同時測 試的方法,其特征在于,所述測試程序將芯片測試的各個功能分割成多個 小指令。
3、 根據權利要求1所述的種實現SOC芯片中多任務多FLASH同時測 試的方法,其特征在于,所述存儲器為RAM。
全文摘要
本發明公開了一種實現SOC芯片中多任務多FLASH同時測試的方法,可同時對多個FLASH的多項功能同時進行測試,提高對FLASH的測試效率,降低測試成本。該方法通過測試下載一個芯片測試的以事件觸發的多任務測試程序到芯片內部,然后由測試儀激活芯片系統來運行該內部測試程序,從而使芯片利用本身的資源同時對多個測試任務進行測試,最后由測試儀發送指令將多個測試項目的結果取出來,以此來判斷芯片合格與否。
文檔編號G06F11/22GK101196841SQ20061011928
公開日2008年6月11日 申請日期2006年12月7日 優先權日2006年12月7日
發明者桑浚之, 武建宏, 黃海華 申請人:上海華虹Nec電子有限公司