基于TMSF240芯片的內(nèi)部FLASH的一種自測試方法
3 芯片內(nèi)部FLASH自測試方法詳述
3.1 第一次燒寫步驟
第一次燒寫過程如下:
步驟1:將包含圖1的代碼編譯后形成待燒錄文件*.out;
步驟2:將代碼編譯生成待燒錄文件*.out,然后通過TI公司提供的批處理文件和仿真器將其燒入片內(nèi)自帶的FLASH中。
3.2 第二次燒寫步驟
第二次燒寫過程如下:
步驟1:利用聞亭仿真器設(shè)置成燒錄模式下代碼調(diào)試模式,將硬件斷點設(shè)置在FLASH自測試的函數(shù)入口處;
步驟2:將程序連續(xù)運行至斷點處后,單步調(diào)試計算出真正的代碼和sum=XXX;
步驟3:此時更改程序,將計算好的校驗和寫入程序中定義好的變量中,即將圖1中第二步中sum=0更改為sum=XXX;
步驟4:將代碼重新編譯生成待燒錄文件*.out,然后通過TI公司提供的批處理文件和仿真器將其燒入片內(nèi)自帶的FLASH中。
3.3 方法詳細說明
在第二次燒寫過程中,圖1所示的算法變成圖2所示內(nèi)容。本文引用地址:http://2s4d.com/article/193873.htm
由于原來的校驗和為0,現(xiàn)在將其改為XXX,所以第二次固化的程序的校驗和比第一次固化的程序的校驗和增加了XXX。而第一次固化的校驗和本應(yīng)該為XXX,因此第二次固化程序的最終的校驗和計算出來后應(yīng)check sum為2XXX,圖2中的第三步sum=sum+sum正好滿足了上述要求,即sum=2XXX。因此第四步check sum=sum能正確反映自測試結(jié)果。
需要補充說明一點,該算法是基于第一次燒錄成功后重新加載第一次燒錄的程序由DSP處理器自動計算校驗和是正確的基礎(chǔ)上的,這是由CPU的加減乘除和邏輯運算等自測試正確保證的,在上電時PUBIT里有該項自測試。
4 結(jié)束語
DSP已經(jīng)廣泛應(yīng)用于飛控計算機智能接口模塊中。雖然其具有很高的可靠性,但在飛控系統(tǒng)的使用中也必須進行測試。本文就DSP芯片內(nèi)部自帶FLASH提出了一種自測試方法,通過兩次燒寫FLASH將待測空間的校驗和計算出來并計入RAM中事先定義好的變量中,重新編譯后生成新的目標碼校驗和變成第一次校驗和的2倍。這樣利用sum=sum+sum巧妙地避過了兩次校驗和增加而引起程序的改動。此方法簡單有效地解決了DSP芯片內(nèi)部FLASH自測試問題,并已在機載設(shè)備,包括飛控計算機接口模塊中得到應(yīng)用,對提高機載設(shè)備的可測試性和可靠性有一定的作用,值得推廣使用。
評論