引言
隨著嵌入式系統(tǒng)的發(fā)展,迫切需要在嵌入式系統(tǒng)開發(fā)階段對嵌入式系統(tǒng)進行離線測試與分析,以保證系統(tǒng)的軟件應用程序、硬件具有兼容性、高可靠性和高可用性,迅速發(fā)現(xiàn)并準確定位系統(tǒng)中存在的問題。本文結合上海貝爾阿爾卡特股份有限公司開發(fā)的寬帶交換系統(tǒng),討論離線單板硬件測試方法和系統(tǒng)測試方法。
離線單板硬件測試概述
在寬帶交換機系統(tǒng)中,離線測試包括自檢測試和一般的離線測試。自檢測試是單板初始化完成后為了保證板子的正確運轉進行的測試。它主要包括看門狗測試、快速硬件器件測試和下載通路測試?焖儆布䴗y試完成寄存器測試和單板上單個硬件設備測試,其中又包括許多測試項。如果某一測試項測試失敗,整個測試就會停止直到看門狗超時重啟系統(tǒng)。下載測試是為了保證軟件下載功能能正常工作而進行的測試。這項測試主要完成通信接口收發(fā)數(shù)據(jù)測試、中斷功能測試。而一般的離線測試是在出廠檢驗、開發(fā)階段中的檢測和維修診斷時對上述的各測試項進行更具體的測試,以定位單板上的出錯位置。
看門狗測試
在做任何一項硬件測試之前必須完成看門狗測試。這是因為一項硬件測試失敗之后需要重啟系統(tǒng),而硬件測試的失敗通常是以看門狗超時為判斷條件的。這就需要看門狗在硬件測試時能正常工作?撮T狗測試方法是設置并激活一個1秒的看門狗,等待1秒后系統(tǒng)重啟。
Flash測試
在Flash中可存放程序,也可以存放數(shù)據(jù)。在燒錄Flash時,可存放預先計算好的checksum值。要測試Flash時,程序重新計算checksum,然后與預先存放的值進行比較。
數(shù)據(jù)Flash的測試方法有兩種。一種是非破壞性的基本測試,主要是checksum測試。另一種是破壞性的擴展測試,包括讀寫測試和地址/數(shù)據(jù)總線測試,具體方法與內存測試一致。基本測試可在系統(tǒng)自檢時使用,擴展測試可在維修診斷時采用。
內存測試
內存測試可分為三類:
1. 數(shù)據(jù)總線測試: 將0001循環(huán)左移并寫入內存,然后讀出并比較測試。
2. 內存區(qū)測試: 對內存所有存儲單元進行讀寫測試(讀寫5555H和AAAAH測試)。
3. 地址總線測試:對內存所有存儲單元進行地址累加測試。從RAM的基地址起,在每一個存儲單元(按照總線寬度)中寫入不同的值(遞增值),地址遞增,直至所有的存儲單元都保存不同的內容,然后讀出并進行檢驗。