本發(fā)明屬于集成電路技術(shù)領(lǐng)域,特別涉及一種集成型芯片內(nèi)時(shí)鐘頻率模塊或?qū)S眯蜁r(shí)鐘芯片的校正和頻率測量裝置及方法。
背景技術(shù):
芯片在制造出來以后,往往由于芯片內(nèi)部時(shí)鐘分頻電路的固有偏差、晶圓生產(chǎn)工藝缺陷及各種應(yīng)用環(huán)境帶來的溫度漂移等種種原因,需要對(duì)其時(shí)鐘頻率指標(biāo)校正,以滿足實(shí)際應(yīng)用系統(tǒng)中的時(shí)鐘芯片的使用精度,并且可以對(duì)多種存儲(chǔ)結(jié)構(gòu)的芯片進(jìn)行時(shí)鐘測量和標(biāo)定。
目前時(shí)鐘頻率測量裝置對(duì)1MHz的時(shí)鐘信號(hào)進(jìn)行測量,測量頻率越高時(shí)鐘偏差越大,實(shí)際測量頻率在高頻500K-1000K之間存在1%的誤差,由于測量電路存在固有偏差,隨著測量頻率的提高測量誤差變大,測量精度越高系統(tǒng)設(shè)計(jì)成本、復(fù)雜度及后續(xù)的維護(hù)性都帶來了困擾,必須設(shè)計(jì)出能夠借助于外部儀器儀表設(shè)備使系統(tǒng)具備更高精確度的時(shí)鐘測量及標(biāo)定;目前的芯片時(shí)鐘頻率測量及標(biāo)定平臺(tái)是基于8位MCU開發(fā)的,其程序代碼不能在線更新,本身處理能力不強(qiáng)及無信息提示等都給時(shí)鐘頻率測量及標(biāo)定帶來困難,MCU工作頻率低和指令執(zhí)行速度慢等不利于后續(xù)開發(fā)人員的維護(hù)和程序升級(jí);基于ATE測試機(jī)臺(tái)的時(shí)鐘頻率測量及標(biāo)定系統(tǒng),在FT測試階段成本高,且其機(jī)器語言的通用性和程序可移植性差等,由于通用性和移植性差對(duì)后續(xù)人員維護(hù)帶來很大不便,由于測試機(jī)臺(tái)較為昂貴,移動(dòng)和攜帶不便,給使用者帶來了一些實(shí)際性的問題;以往的平臺(tái)測試和燒錄系統(tǒng)分開,不能進(jìn)行在線燒錄,平臺(tái)的集成化程度低每次更新程序都需要將芯片取出,造成額外工作量加大且工作效率低;標(biāo)定模式單一效率低,同時(shí)只能在量產(chǎn)模式對(duì)一個(gè)芯片進(jìn)行標(biāo)定;測試標(biāo)定需要兩套獨(dú)立系統(tǒng)來完成,且固件不能在線升級(jí),成本和系統(tǒng)可靠性都會(huì)有所影響,造成開發(fā)維護(hù)成本高。
同時(shí),采用8位MCU架構(gòu)的測試標(biāo)定系統(tǒng),在數(shù)據(jù)時(shí)鐘速率測量方面受到極大的制約,不能滿足目前高時(shí)鐘頻率的芯片的時(shí)鐘頻率測量及標(biāo)定需求,在通信接口方面還需要極大的受限于外購專用通信芯片廠商對(duì)購置芯片的配套軟件和芯片本身的通信速率;傳統(tǒng)的時(shí)鐘頻率測量及標(biāo)定只在燒錄模式下使用,使用模式或場景單一,不能及時(shí)掌握用戶模式下芯片的性能,嚴(yán)重影響芯片性能的展示。
技術(shù)實(shí)現(xiàn)要素:
基于此,因此本發(fā)明的首要目地是提供一種自動(dòng)化時(shí)鐘頻率測量及標(biāo)定系統(tǒng)及方法,該標(biāo)定系統(tǒng)及方法旨在開發(fā)出一個(gè)利用32位嵌入式微處理器為主控,能夠?qū)Χ鄠€(gè)芯片進(jìn)行時(shí)鐘頻率測量及標(biāo)定,同時(shí)可以進(jìn)行用戶模式和批量生產(chǎn)模式等兩種模式的時(shí)鐘頻率測量及標(biāo)定方式選擇,整個(gè)測試和標(biāo)定過程無需人為參與自動(dòng)化程度較高,提高測量及標(biāo)定效率。
本發(fā)明的另一個(gè)目地在于提供一種自動(dòng)化時(shí)鐘頻率測量及標(biāo)定系統(tǒng)及方法,該標(biāo)定系統(tǒng)及方法實(shí)現(xiàn)對(duì)時(shí)鐘的頻率、占空比、高電平時(shí)間、低電平時(shí)間及信號(hào)上升時(shí)間等參數(shù)測試,提高芯片時(shí)鐘頻率標(biāo)定的精度,且測量和標(biāo)定不需單獨(dú)分開進(jìn)行,增強(qiáng)系統(tǒng)的集成度,降低了硬件成本及設(shè)計(jì)的難度,同時(shí)在一定程度上增加系統(tǒng)的可靠性和減少了系統(tǒng)誤差。
為實(shí)現(xiàn)上述目的,本發(fā)明的技術(shù)方案為:
一種自動(dòng)化時(shí)鐘頻率測量及標(biāo)定系統(tǒng),其特征在于該系統(tǒng)構(gòu)包括有電源系統(tǒng)、指令控制模塊、數(shù)據(jù)存儲(chǔ)模塊、自適應(yīng)電壓控制及燒錄電源控制模塊、通信接口模塊、時(shí)鐘頻率測量模塊、芯片時(shí)鐘頻率標(biāo)定模塊、時(shí)鐘頻率算法處理模塊、智能儀表控制模塊、時(shí)鐘標(biāo)定模塊;
其中,數(shù)據(jù)存儲(chǔ)模塊、通信接口模塊、自適應(yīng)電壓控制及燒錄電源控制模塊、智能儀表控制模塊及時(shí)鐘頻率標(biāo)定模塊均連接于指令控制模塊,自適應(yīng)電壓控制及燒錄電源控制模塊接于電源模塊和指令控制模塊之間,時(shí)鐘頻率算法處理模塊連接于時(shí)鐘頻率標(biāo)定模塊,時(shí)鐘頻率測量模塊則連接于智能儀表控制模塊;
所述指令控制模塊,是對(duì)需要測量和標(biāo)定芯片的時(shí)鐘模塊進(jìn)行所需功能的配置;
所述數(shù)據(jù)存儲(chǔ)模塊是存放文件索引表、客戶hex的代燒錄程序文件、時(shí)鐘頻率測試標(biāo)定hex文件、芯片型號(hào)及標(biāo)識(shí)信息及芯片設(shè)計(jì)指標(biāo)等測量及標(biāo)定相關(guān)數(shù)據(jù)。
自適應(yīng)電壓控制及燒錄電源控制模塊接于電源模塊和指令控制模塊之間,是對(duì)被測試和標(biāo)定芯片提供燒錄電壓和工作電壓的模塊,是實(shí)現(xiàn)對(duì)被測芯片組中哪一個(gè)被測芯片提供工作電源的控制單元,它根據(jù)不同芯片規(guī)格判斷,給被標(biāo)定芯片輸出不同燒錄電壓,從而實(shí)現(xiàn)自動(dòng)控制;
時(shí)鐘頻率測量模塊連接與智能儀表控制模塊,主要是通過智能儀表獲取芯片時(shí)鐘頻率,根據(jù)儀器儀表的標(biāo)準(zhǔn)協(xié)議接口,控制外部儀表進(jìn)行對(duì)參數(shù)指標(biāo)進(jìn)行測量,并將測量結(jié)果與設(shè)計(jì)結(jié)果對(duì)比,進(jìn)而判斷是否需要再次標(biāo)定;
時(shí)鐘頻率標(biāo)定模塊,主要是在測試和批量生產(chǎn)兩種模式下對(duì)芯片時(shí)鐘頻率進(jìn)行測量和標(biāo)定,時(shí)鐘頻率的標(biāo)定是讀取芯片信息,通過時(shí)鐘頻率標(biāo)定算法實(shí)現(xiàn)對(duì)內(nèi)部高速時(shí)鐘和WDT時(shí)鐘頻率進(jìn)行標(biāo)定。
進(jìn)一步包括有容錯(cuò)處理模塊,所述容錯(cuò)處理模塊與指令控制模塊連接;容錯(cuò)處理模塊是判斷接收的指令數(shù)據(jù)幀是否正確、判斷USB連接錯(cuò)誤處理、外置儀器儀表是否正常、燒錄管腳是否接觸良好和標(biāo)定失敗處理等事件的處理,根據(jù)不同的錯(cuò)誤類型分別進(jìn)行差錯(cuò)處理、數(shù)據(jù)效驗(yàn)、數(shù)據(jù)重傳及超時(shí)處理等操作。
所述數(shù)據(jù)存儲(chǔ)模塊為外部存儲(chǔ)器。
進(jìn)一步,為提高數(shù)據(jù)寫入速度和加快存儲(chǔ),外部存儲(chǔ)器采用NOR FLASH類型存儲(chǔ)器。外置存儲(chǔ)器劃分為文件索引區(qū)和hex數(shù)據(jù)區(qū),以便于快速讀取數(shù)據(jù);文件索引區(qū)存放被標(biāo)定芯片的基本信息,如芯片型號(hào)、數(shù)據(jù)大小、存放位置、標(biāo)定地址區(qū)和其他信息;數(shù)據(jù)區(qū)用來存放系統(tǒng)的固件更新程序和用戶hex數(shù)據(jù)。
一種自動(dòng)化時(shí)鐘頻率測量及標(biāo)定方法,其特征在于該方法在測試模式中,測量出時(shí)鐘頻率數(shù)據(jù),同時(shí)根據(jù)高速低速時(shí)鐘分別進(jìn)行相應(yīng)的計(jì)算,得到標(biāo)定值,同時(shí)將標(biāo)定值寫入芯片時(shí)鐘頻率校正區(qū),然后讀取校正后的芯片時(shí)鐘頻率數(shù)據(jù)信息;批量生產(chǎn)模式中,先計(jì)算出標(biāo)定值,獲取芯片標(biāo)定存儲(chǔ)區(qū)的地址,將標(biāo)定值通過燒錄接口寫入到標(biāo)定地址內(nèi),然后通過頻率輸出端口輸出標(biāo)定后的時(shí)鐘頻率,接著測量出標(biāo)定后的芯片時(shí)鐘工作頻率,將標(biāo)定后的芯片時(shí)鐘工作頻率與設(shè)計(jì)指標(biāo)數(shù)據(jù)進(jìn)行對(duì)比,判斷是否標(biāo)定成功。
進(jìn)一步,所述方法通過時(shí)鐘頻率測量模塊獲取芯片時(shí)鐘頻率,其具體的流程為:
101、初始化時(shí)鐘頻率測量模塊;
102、獲取控制命令,選擇被測芯片,讀取被測芯片的信息;
103、連接智能儀表控制模塊;
104、讀取智能儀表測得的時(shí)鐘頻率數(shù)據(jù),并計(jì)算得到當(dāng)前標(biāo)定數(shù)據(jù)并保存;
105、配置被測芯片寄存器,獲取所需數(shù)據(jù)信息;
106、依次比較實(shí)測的時(shí)鐘頻率,判斷實(shí)測的時(shí)鐘頻率是否在設(shè)計(jì)范圍內(nèi)。
進(jìn)一步,所述方法通過時(shí)鐘頻率標(biāo)定模塊對(duì)測試和批量生產(chǎn)兩種模式下對(duì)芯片時(shí)鐘頻率進(jìn)行測量和標(biāo)定,首先對(duì)被標(biāo)定芯片的燒錄接口進(jìn)行連接性檢查,然后,進(jìn)入芯片時(shí)鐘頻率標(biāo)定流程,檢測芯片ID以確定相應(yīng)的標(biāo)定方式和標(biāo)定值寫入位置,在批量生產(chǎn)模式下根據(jù)時(shí)鐘標(biāo)定算法,在0至255數(shù)值范圍內(nèi)劃出標(biāo)定數(shù)值查找范圍和所需標(biāo)定的時(shí)鐘頻率理想值,調(diào)用二分算法和循環(huán)冗余算法計(jì)算出時(shí)鐘頻率標(biāo)定數(shù)值,對(duì)寫入標(biāo)定數(shù)據(jù)的芯片進(jìn)行測量,與時(shí)鐘頻率的設(shè)計(jì)值進(jìn)行比較,不適合再次標(biāo)定,滿足要求即標(biāo)定成功;在用戶模式下,對(duì)標(biāo)定的芯片進(jìn)行測量,測量結(jié)果是否符合實(shí)際設(shè)計(jì)指標(biāo),不滿足再次進(jìn)入燒錄模式依據(jù)上述算法進(jìn)行標(biāo)定,否則標(biāo)定成功。
具體的標(biāo)定的流程為:
201、開始,判斷燒錄管腳是否正常連接,是則進(jìn)行下一步,否則退出;
202、使得芯片進(jìn)入燒錄模式;
203、讀取芯片ID,以確定需要標(biāo)定芯片的類型,退出燒錄模式,芯片進(jìn)入用戶模式;
204、獲取實(shí)際時(shí)鐘頻率數(shù)據(jù);
205、根據(jù)時(shí)鐘頻率標(biāo)定算法,計(jì)算出標(biāo)定值;
206、將標(biāo)定值寫入校正區(qū)域;
207、關(guān)閉燒錄電壓,使芯片進(jìn)入正常工作模式;
208、測量時(shí)間頻率,并和設(shè)計(jì)頻率對(duì)比,將兩個(gè)數(shù)據(jù)的偏差發(fā)送給上位機(jī);
209、判斷上述步驟的偏差是否在允許的范圍內(nèi),如果在允許的范圍內(nèi),則標(biāo)定成功并進(jìn)行顯示,否則標(biāo)定失敗,回到步驟202重新進(jìn)行標(biāo)定。
因此,本發(fā)明的具體實(shí)現(xiàn)步驟為:
301、自動(dòng)化時(shí)鐘頻率測量及標(biāo)定系統(tǒng)(簡稱測量及標(biāo)定系統(tǒng))上電,完成初始化,檢查測量標(biāo)定所需要的芯片配置文件,測量及標(biāo)定系統(tǒng)檢測燒錄接口電氣連接特性;
進(jìn)一步包括有:檢查沒有客戶配置文件信息,如果沒有,則提示客戶將配置文件輸入到指定位置,直到配置文件檢查完成才繼續(xù)執(zhí)行;檢查到所需的配置文件后,開始等待接收用戶指令
302、判斷進(jìn)入測試模式還是量產(chǎn)模式,如果是測試模式,開始執(zhí)行303、304、305步驟,否則執(zhí)行306步驟;
303、測量及標(biāo)定系統(tǒng)連接正常后,進(jìn)入測試模式進(jìn)行測試;
首先讀取配置文件中芯片信息,然后判斷芯片的類型,將芯片類型信息保存,接著將配置文件及芯片相關(guān)信息按照文件種類建立索引表,按照索引表數(shù)據(jù)封裝成數(shù)據(jù)幀傳輸給測試及標(biāo)定系統(tǒng),最后測量及標(biāo)定裝置解析出地址數(shù)據(jù)信息,并按照地址順序存放至數(shù)據(jù)存儲(chǔ)模塊。
根據(jù)高低溫列表,控制高低溫箱使其工作在設(shè)置溫度,第一個(gè)是指的溫度點(diǎn)為常溫20度,使之達(dá)到設(shè)定值;然后根據(jù)芯片類型信息控制燒錄電源和供電電源給芯片輸出相應(yīng)電壓,接著芯片工作在燒錄模式,讀取被測芯片程序存儲(chǔ)區(qū),判定芯片是否為空,如果非空,獲取芯片ROM存儲(chǔ)器類型信息,發(fā)送非空片信息,判斷是OTP類型還是FLASH類型ROM,如果是OTP類型ROM,發(fā)送芯片為非空OTP類型芯片,提示客戶更換,結(jié)束測試,如果是FLASH類型ROM或者芯片是空片,獲取芯片燒錄所需信息,提示用戶需要進(jìn)行燒錄然后再進(jìn)行測試,將測試hex燒錄到芯片進(jìn)行頻率測試。
304、測量出時(shí)鐘頻率數(shù)據(jù),同時(shí)根據(jù)高速低速時(shí)鐘分別進(jìn)行相應(yīng)的計(jì)算,得到標(biāo)定值,同時(shí)將標(biāo)定值寫入芯片時(shí)鐘頻率校正區(qū),然后讀取校正后的芯片時(shí)鐘頻率數(shù)據(jù)信息,確定是否在設(shè)計(jì)指標(biāo)范圍,如果偏離設(shè)計(jì)范圍,判斷是OTP類型還是FLASH類型ROM以確定是否可以再次標(biāo)定,如果是ROM類型,則執(zhí)行305,否則重復(fù)304進(jìn)行重新標(biāo)定;
305、上述步驟執(zhí)行后,測量及標(biāo)定系統(tǒng)進(jìn)入正常工作模式,獲取高低溫箱溫度點(diǎn)列表,按照溫度列表設(shè)定溫控設(shè)備的溫度值,達(dá)到設(shè)定的溫度值1小時(shí)后,測量次溫度下的時(shí)鐘頻率數(shù)據(jù),溫度點(diǎn)設(shè)置循環(huán)完成后,繪制全溫度點(diǎn)圖形并顯示,顯示出實(shí)測時(shí)鐘頻率數(shù)據(jù)曲線與理論時(shí)鐘頻率數(shù)據(jù)曲線的差異性,并將差異信息保存并顯示,測試模式結(jié)束;
306、以上302步驟時(shí)鐘頻率測量及標(biāo)定裝置接收到用戶批量生產(chǎn)模式后,進(jìn)入批量生產(chǎn)處理模式,判斷是否進(jìn)行客戶代燒錄,如果需要客戶代燒錄,接收客戶代燒錄代碼并儲(chǔ)存到數(shù)據(jù)存儲(chǔ)單元,繼而執(zhí)行307;不需要客戶代燒錄,則繼續(xù)執(zhí)行以下步驟;
307、控制高低溫設(shè)備設(shè)置至標(biāo)準(zhǔn)標(biāo)定溫度,根據(jù)芯片類型信息控制燒錄電源和供電電源給芯片輸出相應(yīng)電壓,初始化被測芯片及燒錄接口,使得其工作在燒錄模式,從數(shù)據(jù)存儲(chǔ)模塊獲取客戶代燒錄hex文件,并燒錄到芯片程序存儲(chǔ)區(qū);
308、通過對(duì)高低頻時(shí)鐘的標(biāo)定算法,計(jì)算出標(biāo)定值,獲取芯片標(biāo)定存儲(chǔ)區(qū)的地址,將標(biāo)定值通過燒錄接口寫入到標(biāo)定地址內(nèi),然后通過頻率輸出端口輸出標(biāo)定后的時(shí)鐘頻率,接著測量出標(biāo)定后的芯片時(shí)鐘工作頻率,接著讀取設(shè)計(jì)指標(biāo)數(shù)據(jù),判斷是時(shí)鐘頻率否在設(shè)計(jì)范圍內(nèi);芯片標(biāo)定后時(shí)鐘工作頻率在設(shè)計(jì)范圍內(nèi),顯示燒錄成功的芯片并計(jì)數(shù),結(jié)束本次標(biāo)定。
如果不在設(shè)計(jì)范圍,判斷芯片存儲(chǔ)器類型,是OTP類型還是FLASH類型ROM以確定是否可以再次標(biāo)定,如果是ROM類型,則判斷芯片存儲(chǔ)器存儲(chǔ)類型是FLASH類型,重復(fù)標(biāo)定小于三次,執(zhí)行差錯(cuò)處理后,執(zhí)行307步驟并順序執(zhí)行;重復(fù)標(biāo)定大于三次或者芯片存儲(chǔ)器存儲(chǔ)類型是OTP類型的芯片,停止高低溫箱,LCD顯示和提示客戶芯片標(biāo)定失敗,同時(shí)LCD模塊顯示燒錄出現(xiàn)問題的芯片并計(jì)數(shù),結(jié)束本次標(biāo)定。
本發(fā)明使用外部連接控制儀器儀表對(duì)時(shí)鐘頻率信號(hào)進(jìn)行智能自動(dòng)測量作為標(biāo)定依據(jù),實(shí)現(xiàn)對(duì)時(shí)鐘的頻率、占空比、高電平時(shí)間、低電平時(shí)間及信號(hào)上升時(shí)間等參數(shù)測試,提高芯片時(shí)鐘頻率標(biāo)定的精度,且配合電源系統(tǒng)可以對(duì)芯片在不同電源電壓的情況下的頻率參量測量;時(shí)鐘頻率各參數(shù)的集成測量及標(biāo)定功能的復(fù)合測量及標(biāo)定系統(tǒng),測量和標(biāo)定不需單獨(dú)分開進(jìn)行,增強(qiáng)系統(tǒng)的集成度,降低了硬件成本及設(shè)計(jì)的難度,不需要人為參與,節(jié)省了人為成本及維護(hù)成本,減少硬件外圍電路,有效的節(jié)省了硬件設(shè)計(jì)成本,同時(shí)在一定程度上增加系統(tǒng)的可靠性和減少了系統(tǒng)誤差;采用32位嵌入式微處理器,使系統(tǒng)在程序和數(shù)據(jù)存儲(chǔ)空間、通用性外圍接口、處理能力及通信速率等方面的處理能力加強(qiáng),消除了專用通信芯片廠商對(duì)開發(fā)和維護(hù)系統(tǒng)控制軟件、通信速率和控制接口等方面的技術(shù)困擾,實(shí)現(xiàn)在線固件更新、系統(tǒng)自檢測、模塊化和層次化等設(shè)計(jì)理念;通用的接口控制軟件設(shè)計(jì)開發(fā)模式,實(shí)現(xiàn)基于通信接口的控制軟件開發(fā)便捷和可移植性高,升級(jí)維護(hù)方便,解決控制軟件因通信芯片廠商帶來的開發(fā)維護(hù)困難的瓶頸;引入自動(dòng)化測量及標(biāo)定方法,實(shí)現(xiàn)對(duì)芯片時(shí)鐘頻率測量及標(biāo)定的自動(dòng)化控制,解決人員重復(fù)勞動(dòng)和效率低下問題。
附圖說明
圖1是本發(fā)明所實(shí)施的硬件構(gòu)成框圖。
圖2是本發(fā)明所實(shí)施應(yīng)用實(shí)例圖。
圖3是本發(fā)明所實(shí)施容錯(cuò)處理模塊的控制流程圖。
圖4是本發(fā)明所實(shí)施時(shí)鐘頻率測量模塊的控制流程圖。
圖5是本發(fā)明所實(shí)施時(shí)鐘頻率標(biāo)定模塊的控制流程圖。
圖6是本發(fā)明所實(shí)施的總體控制流程圖。
具體實(shí)施方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖及實(shí)施例,對(duì)本發(fā)明進(jìn)行進(jìn)一步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實(shí)施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
圖1所示為本發(fā)明所實(shí)現(xiàn)的硬件框圖,圖2為本發(fā)明的一種應(yīng)用實(shí)例圖,圖中所示,該自動(dòng)化時(shí)鐘頻率測量及標(biāo)定系統(tǒng)除了能一體化的給開發(fā)人員和客戶購置的芯片進(jìn)行時(shí)鐘頻率測量和標(biāo)定外,還可以作為一套時(shí)鐘頻率測試系統(tǒng)做產(chǎn)品時(shí)鐘頻率性能展示。同時(shí)該時(shí)鐘頻率測量及標(biāo)定系統(tǒng)能夠滿足小批量試產(chǎn)和大批量量產(chǎn)的用戶的不同需求。
該系統(tǒng)構(gòu)包括有電源系統(tǒng)、指令控制模塊、數(shù)據(jù)存儲(chǔ)模塊、容錯(cuò)處理模塊、自適應(yīng)電壓控制及燒錄電源控制模塊、通信接口模塊、時(shí)鐘頻率測量模塊、芯片時(shí)鐘頻率標(biāo)定模塊、時(shí)鐘頻率算法處理模塊、智能儀表控制模塊、時(shí)鐘標(biāo)定模塊。
其中,數(shù)據(jù)存儲(chǔ)模塊、容錯(cuò)處理模塊、通信接口模塊、自適應(yīng)電壓控制及燒錄電源控制模塊、智能儀表控制模塊及時(shí)鐘頻率標(biāo)定模塊均連接于指令控制模塊,自適應(yīng)電壓控制及燒錄電源控制模塊接于電源模塊和指令控制模塊之間,時(shí)鐘頻率算法處理模塊連接于時(shí)鐘頻率標(biāo)定模塊,時(shí)鐘頻率測量模塊則連接于智能儀表控制模塊。
指令控制模塊,主要是對(duì)需要測量和標(biāo)定芯片的時(shí)鐘模塊進(jìn)行所需功能的配置,通常通過ARM來實(shí)現(xiàn)。
數(shù)據(jù)存儲(chǔ)模塊是存放文件索引表、客戶hex的代燒錄程序文件、時(shí)鐘頻率測試標(biāo)定hex文件、芯片型號(hào)及標(biāo)識(shí)信息及芯片設(shè)計(jì)指標(biāo)等測量及標(biāo)定相關(guān)數(shù)據(jù),所述數(shù)據(jù)存儲(chǔ)模塊為外部存儲(chǔ)器。為提高數(shù)據(jù)寫入速度和加快存儲(chǔ),外部存儲(chǔ)器采用NOR FLASH類型存儲(chǔ)器。外置存儲(chǔ)器劃分為文件索引區(qū)和hex數(shù)據(jù)區(qū),以便于快速讀取數(shù)據(jù);文件索引區(qū)存放被標(biāo)定芯片的基本信息,如芯片型號(hào)、數(shù)據(jù)大小、存放位置、標(biāo)定地址區(qū)和其他信息;數(shù)據(jù)區(qū)用來存放系統(tǒng)的固件更新程序和用戶hex數(shù)據(jù)。
容錯(cuò)處理模塊,主要是判斷接收的指令數(shù)據(jù)幀是否正確、判斷USB連接錯(cuò)誤處理、外置儀器儀表是否正常、燒錄管腳是否接觸良好和標(biāo)定失敗處理等事件的處理,根據(jù)不同的錯(cuò)誤類型分別進(jìn)行差錯(cuò)處理、數(shù)據(jù)效驗(yàn)、數(shù)據(jù)重傳及超時(shí)處理等操作。其具體的處理流程如圖3所示:
S101、初始化。
S102、將接收到的數(shù)據(jù)按照功能模塊進(jìn)行分類編號(hào)。
S103、判斷是否是系統(tǒng)發(fā)生錯(cuò)誤,如果是則結(jié)束處理,如果否,則繼續(xù)進(jìn)行下一步。
S104、保存當(dāng)前系統(tǒng)狀態(tài)信息到差錯(cuò)處理區(qū),進(jìn)入錯(cuò)誤查找模式。
S105、判斷錯(cuò)誤的類型,是否是接收數(shù)據(jù)幀錯(cuò)誤,是否是USB連接錯(cuò)誤,是否是儀表通信錯(cuò)誤,是否是標(biāo)定錯(cuò)誤。
S106、如果是接收數(shù)據(jù)幀錯(cuò)誤,則保存錯(cuò)誤編號(hào),發(fā)送錯(cuò)誤類型信息到上位機(jī),系統(tǒng)跳轉(zhuǎn)至命令控制模塊,重新接受信息幀(如果通信故障大于3次,則發(fā)送錯(cuò)誤信息,并提示重新傳輸,重新初始化串口模塊);如果是USB連接錯(cuò)誤,發(fā)送錯(cuò)誤類型信息給上位機(jī),USB重新枚舉、握手,并提示用戶,再次進(jìn)行握手(如果通信故障大于3次,則發(fā)送USB初始化失敗或枚舉失敗或握手失敗信息給上位機(jī),并提示檢查或重插USB);如果是儀表通信錯(cuò)誤,則發(fā)送錯(cuò)誤類型信息給上位機(jī),重新初始化傳感器連接總線接口(如果通信故障大于3次,則發(fā)送握手失敗信息給上位機(jī),并提示檢查);如果是標(biāo)定錯(cuò)誤,則重新初始化通信接口,重新獲取數(shù)據(jù)計(jì)算標(biāo)定數(shù)據(jù)對(duì)比標(biāo)定指標(biāo)(如果設(shè)計(jì)指標(biāo)偏離大于3次碼,就發(fā)送接口初始化失敗或寄存器配置失敗或握手失敗信息給上位機(jī),并提示檢查)。
S107、結(jié)束。
自適應(yīng)電壓控制及燒錄電源控制模塊接于電源模塊和指令控制模塊之間,是對(duì)被測試和標(biāo)定芯片提供燒錄電壓和工作電壓的模塊,是實(shí)現(xiàn)對(duì)被測芯片組中哪一個(gè)被測芯片提供工作電源的控制單元,它根據(jù)不同芯片規(guī)格判斷,給被標(biāo)定芯片輸出不同燒錄電壓,從而實(shí)現(xiàn)自動(dòng)控制,以確保對(duì)需要測試及標(biāo)定芯片工作模式的有效的控制。自適應(yīng)電壓控制及燒錄電源控制模塊可以通過現(xiàn)有的模擬/數(shù)字電路或芯片來實(shí)現(xiàn),在此不再贅述。
通信接口模塊,是接收來自控制軟件的命令和發(fā)送來自被測試和標(biāo)定芯片的數(shù)據(jù)等信息,起到上下位機(jī)傳輸橋梁的作用,此模塊包含固件更新模塊和USB通信處理模塊,固件更新模塊主要是使用在線更新模式對(duì)時(shí)鐘測量及標(biāo)定系統(tǒng)的固件程序進(jìn)行更新升級(jí)或者重新下載,之后系統(tǒng)進(jìn)入正常工作模式進(jìn)行被測芯片的測量及標(biāo)定,此時(shí)串口可以作為備用通信接口以備使用;USB通信處理模塊主要完成控制指令的收發(fā)和數(shù)據(jù)傳輸,根據(jù)接收到的信息幀提取命令、地址和數(shù)據(jù)等信息,進(jìn)而根據(jù)相應(yīng)的命令調(diào)用相關(guān)功能模塊進(jìn)行相關(guān)操作。通信接口模塊可以通過現(xiàn)有技術(shù)實(shí)現(xiàn),在此不再贅述。
時(shí)鐘頻率測量模塊連接與智能儀表控制模塊,主要是通過智能儀表獲取芯片時(shí)鐘頻率,根據(jù)儀器儀表的標(biāo)準(zhǔn)協(xié)議接口,控制外部儀表進(jìn)行對(duì)參數(shù)指標(biāo)進(jìn)行測量,并將測量結(jié)果與設(shè)計(jì)結(jié)果對(duì)比,進(jìn)而判斷是否需要再次標(biāo)定,標(biāo)定不在設(shè)計(jì)允許范圍內(nèi)的芯片,經(jīng)過規(guī)定次數(shù)標(biāo)定后,經(jīng)測量不再設(shè)計(jì)范圍內(nèi),需要進(jìn)行再次標(biāo)定,經(jīng)過規(guī)定的標(biāo)定次數(shù)仍然不合格的,將判斷結(jié)果反饋給控制軟件,將獲取的時(shí)鐘頻率數(shù)據(jù)與理論數(shù)據(jù)繪制成圖像顯示,以供用戶參考。其具體的測量流程如圖4所示,步驟為:
S201、初始化時(shí)鐘頻率測量模塊。
S202、獲取控制命令,選擇被測芯片,讀取被測芯片的信息。
S203、連接智能儀表控制模塊。
S204、讀取智能儀表測得的時(shí)鐘頻率數(shù)據(jù),并計(jì)算得到當(dāng)前標(biāo)定數(shù)據(jù)并保存。
S205、配置被測芯片寄存器,獲取所需數(shù)據(jù)信息。
S206、依次比較實(shí)測頻率,判斷實(shí)測頻率是否在設(shè)計(jì)范圍內(nèi)。
S207、如果是,則將測量的實(shí)際數(shù)據(jù)發(fā)送給控制軟件,如果否則重新連接智能儀表控制模塊,重復(fù)S203-S207的步驟,直至數(shù)據(jù)傳輸結(jié)束。
時(shí)鐘頻率標(biāo)定模塊,主要是在測試和批量生產(chǎn)兩種模式下對(duì)芯片時(shí)鐘頻率進(jìn)行測量和標(biāo)定,時(shí)鐘頻率的標(biāo)定是讀取芯片信息,通過時(shí)鐘頻率標(biāo)定算法實(shí)現(xiàn)對(duì)內(nèi)部高速時(shí)鐘和WDT時(shí)鐘頻率進(jìn)行標(biāo)定,時(shí)鐘頻率的標(biāo)定算法分別采用特定的算法來完成,首先對(duì)被標(biāo)定芯片的燒錄接口進(jìn)行連接性檢查,然后,進(jìn)入芯片時(shí)鐘頻率標(biāo)定流程,檢測芯片ID以確定相應(yīng)的標(biāo)定方式和標(biāo)定值寫入位置,在批量生產(chǎn)模式下根據(jù)時(shí)鐘標(biāo)定算法,在0至255數(shù)值范圍內(nèi)劃出標(biāo)定數(shù)值查找范圍和所需標(biāo)定的時(shí)鐘頻率理想值,調(diào)用二分算法和循環(huán)冗余算法計(jì)算出時(shí)鐘頻率標(biāo)定數(shù)值,對(duì)寫入標(biāo)定數(shù)據(jù)的芯片進(jìn)行測量,與時(shí)鐘頻率的設(shè)計(jì)值進(jìn)行比較,不適合再次標(biāo)定,滿足要求即標(biāo)定成功;在用戶模式下,對(duì)標(biāo)定的芯片進(jìn)行測量,測量結(jié)果是否符合實(shí)際設(shè)計(jì)指標(biāo),不滿足再次進(jìn)入燒錄模式依據(jù)上述算法進(jìn)行標(biāo)定,否則標(biāo)定成功。標(biāo)定的流程如圖5所示:
S301、開始,判斷燒錄管腳是否正常連接。是則進(jìn)行下一步,否則退出。
S302、輸出電壓,使得芯片進(jìn)入燒錄模式。
S303、讀取芯片ID,以確定需要標(biāo)定芯片的類型,退出燒錄模式,芯片進(jìn)入用戶模式。
S304、進(jìn)入時(shí)鐘頻率測量模塊,獲取實(shí)際時(shí)鐘頻率數(shù)據(jù)。
S305、根據(jù)時(shí)鐘頻率標(biāo)定算法,計(jì)算出標(biāo)定值。
S306、判斷芯片是否為空片。如果是非空片,則發(fā)送不空信息,進(jìn)入步驟S307,如果是空片,則發(fā)送芯片空信息,進(jìn)入步驟S308。
S307、進(jìn)一步判斷芯片是否為OTP和FLASH類型,如果是OTP則擦除,換置空片。
S308、控制自適應(yīng)電壓控制及燒錄電源控制模塊,選擇相應(yīng)輸出電壓。
S309、被測芯片掉電,再上電,通過燒錄接口發(fā)送燒錄模式指令,使得芯片進(jìn)入燒錄模式。
S310、將標(biāo)定值寫入校正區(qū)域。
S311、關(guān)閉燒錄電壓,使芯片進(jìn)入正常工作模式。
S312、時(shí)鐘頻率測量模塊測量時(shí)間頻率,并和設(shè)計(jì)頻率對(duì)比,將兩個(gè)數(shù)據(jù)的偏差發(fā)送給上位機(jī)。
S313、判斷上述步驟的偏差是否在允許的范圍內(nèi),如果在允許的范圍內(nèi),則標(biāo)定成功并進(jìn)行顯示,否則標(biāo)定失敗,回到步驟S302重新進(jìn)行標(biāo)定。
時(shí)鐘頻率算法處理模塊,主要是實(shí)現(xiàn)對(duì)內(nèi)部高速時(shí)鐘頻率和WDT時(shí)鐘頻率進(jìn)行標(biāo)定,高速時(shí)鐘頻率標(biāo)定是對(duì)時(shí)鐘頻率進(jìn)行標(biāo)定首先要給定寫值邊界0、255和OSC時(shí)鐘頻率理想值,如16M,其次將根據(jù)給定邊界值計(jì)算出中間值,調(diào)用循環(huán)冗余算法計(jì)算出校驗(yàn)碼,然后校驗(yàn)碼、中間值轉(zhuǎn)化為01序列,最后通過指令把數(shù)據(jù)動(dòng)態(tài)寫到時(shí)鐘校正對(duì)應(yīng)位置,此時(shí)芯片時(shí)鐘頻率會(huì)通過特定接口輸出一個(gè)頻率,接著進(jìn)行輸出頻率測量,如果測量值大于理想值偏差大于設(shè)計(jì)偏差值,則此時(shí)的邊界下限值為上一次的計(jì)算中間值,上邊界不變,繼續(xù)按照上述方法計(jì)算最佳值;如果測量值小于理想值偏差大于設(shè)計(jì)偏差值,則此時(shí)的邊界上限值為上一次的計(jì)算中間值,下邊界不變,繼續(xù)按照上述方法計(jì)算最佳值。最后,判斷輸出頻率,如果偏差在百分之零點(diǎn)五以內(nèi),則修調(diào)成功,返回找尋到的值燒錄到芯片。如果找不到這樣的值(中間值大于下邊界值或上邊界值),標(biāo)定失敗提示芯片不符合設(shè)計(jì)指標(biāo);WDT時(shí)鐘頻率標(biāo)定是對(duì)抽取輸入16位數(shù)據(jù)的低四位,WDT時(shí)鐘標(biāo)定值也就是最多只有16個(gè)可能的燒錄值,查找出輸出頻率值最接近32K的所需的標(biāo)定數(shù)值,然后把數(shù)據(jù)寫入到芯片存儲(chǔ)區(qū),實(shí)現(xiàn)標(biāo)定。
結(jié)合圖6所示,為本發(fā)明所實(shí)現(xiàn)的總體控制流程圖,圖中所示,實(shí)現(xiàn)方法包括步驟:
S401、啟動(dòng)上位機(jī)控制軟件,時(shí)鐘頻率測量及標(biāo)定系統(tǒng)上電,初始化系統(tǒng)時(shí)鐘、IO端口、通信模塊、存儲(chǔ)模塊和LCD模塊等,然后時(shí)鐘頻率測量及標(biāo)定系統(tǒng)配置系統(tǒng)內(nèi)部寄存器,儀器儀表設(shè)備自檢和通信握手,接著完成USB通信接口枚舉,檢查測量標(biāo)定所需要的芯片配置文件,包含測試和燒錄hex、高低溫箱溫度點(diǎn)序列列表、芯片信息及設(shè)計(jì)指標(biāo)文件等信息數(shù)據(jù),測量及標(biāo)定系統(tǒng)檢測燒錄接口電氣連接特性。
S402、檢查沒有客戶配置文件信息,如果沒有,則提示客戶將配置文件輸入到指定位置,直到配置文件檢查完成才繼續(xù)執(zhí)行。檢查到所需的配置文件后,開始等待接收用戶指令,判斷進(jìn)入測試模式還是量產(chǎn)模式,如果是測試模式,開始執(zhí)行S403、S404、S405、S406等步驟。否則執(zhí)行S407等步驟。
S403、測量及標(biāo)定系統(tǒng)連接正常后,進(jìn)入測試模式,首先讀取配置文件中芯片信息,然后判斷芯片的類型,將芯片類型信息保存,接著將配置文件及芯片相關(guān)信息按照文件種類建立索引表,按照索引表數(shù)據(jù)封裝成數(shù)據(jù)幀傳輸給測試及標(biāo)定系統(tǒng),最后測量及標(biāo)定裝置解析出地址數(shù)據(jù)信息,并按照地址順序存放至數(shù)據(jù)存儲(chǔ)模塊。
S404、根據(jù)高低溫列表,控制高低溫箱使其工作在設(shè)置溫度,第一個(gè)是指的溫度點(diǎn)為常溫20度,使之達(dá)到設(shè)定值;然后根據(jù)芯片類型信息控制燒錄電源和供電電源給芯片輸出相應(yīng)電壓,接著芯片工作在燒錄模式,讀取被測芯片程序存儲(chǔ)區(qū),判定芯片是否為空,如果非空,獲取芯片ROM存儲(chǔ)器類型信息,發(fā)送非空片信息,判斷是OTP類型還是FLASH類型ROM,如果是OTP類型ROM,發(fā)送芯片為非空OTP類型芯片,提示客戶更換,結(jié)束測試,如果是FLASH類型ROM或者芯片是空片,獲取芯片燒錄所需信息,提示用戶需要進(jìn)行燒錄然后再進(jìn)行測試,將測試hex燒錄到芯片進(jìn)行頻率測試。
S405、測量出時(shí)鐘頻率數(shù)據(jù),同時(shí)根據(jù)高速低速時(shí)鐘分別進(jìn)行相應(yīng)的計(jì)算,得到標(biāo)定值,同時(shí)將標(biāo)定值寫入芯片時(shí)鐘頻率校正區(qū),然后讀取校正后的芯片時(shí)鐘頻率數(shù)據(jù)信息,確定是否在設(shè)計(jì)指標(biāo)范圍,如果偏離設(shè)計(jì)范圍,判斷是OTP類型還是FLASH類型ROM以確定是否可以再次標(biāo)定,如果是ROM類型,則執(zhí)行S406,否則重復(fù)S405進(jìn)行重新標(biāo)定。
S406、上述步驟執(zhí)行后,測量及標(biāo)定系統(tǒng)進(jìn)入正常工作模式,獲取高低溫箱溫度點(diǎn)列表,按照溫度列表設(shè)定溫控設(shè)備的溫度值,達(dá)到設(shè)定的溫度值1小時(shí)后,測量次溫度下的時(shí)鐘頻率數(shù)據(jù),溫度點(diǎn)設(shè)置循環(huán)完成后,繪制全溫度點(diǎn)圖形并顯示,顯示出實(shí)測時(shí)鐘頻率數(shù)據(jù)曲線與理論時(shí)鐘頻率數(shù)據(jù)曲線的差異性,并將差異信息保存并在捕捉區(qū)顯示,測試模式結(jié)束。
S407、以上S402步驟測量及標(biāo)定系統(tǒng)接收到用戶批量生產(chǎn)模式指令后,進(jìn)入批量生產(chǎn)模式,啟動(dòng)測量及標(biāo)定系統(tǒng)內(nèi)部的批量生產(chǎn)模式處理模塊,燒錄接口、LCD模塊等相關(guān)處理模塊初始化。進(jìn)而判斷,是否進(jìn)行客戶代燒錄,如果需要客戶代燒錄,接收客戶代燒錄代碼并儲(chǔ)存到數(shù)據(jù)存儲(chǔ)單元,繼而執(zhí)行S408;不需要客戶代燒錄,則繼續(xù)執(zhí)行以下步驟。
S408、控制高低溫設(shè)備設(shè)置至標(biāo)準(zhǔn)標(biāo)定溫度常溫20度,等待高低溫設(shè)備達(dá)到設(shè)定溫度后,根據(jù)芯片類型信息控制燒錄電源和供電電源給芯片輸出相應(yīng)電壓,初始化被測芯片及燒錄接口,使得其工作在燒錄模式,測量及標(biāo)定系統(tǒng)從數(shù)據(jù)存儲(chǔ)模塊獲取客戶代燒錄hex文件,并燒錄到芯片程序存儲(chǔ)區(qū)。
S409、通過對(duì)高低頻時(shí)鐘的標(biāo)定算法,計(jì)算出標(biāo)定值,獲取芯片標(biāo)定存儲(chǔ)區(qū)的地址,將標(biāo)定值通過燒錄接口寫入到標(biāo)定地址內(nèi),然后通過頻率輸出端口輸出標(biāo)定后的時(shí)鐘頻率,接著測量出標(biāo)定后的芯片時(shí)鐘工作頻率,接著標(biāo)定裝置讀取設(shè)計(jì)指標(biāo)數(shù)據(jù),判斷是時(shí)鐘頻率否在設(shè)計(jì)范圍內(nèi),如果不在設(shè)計(jì)范圍,判斷芯片存儲(chǔ)器類型,是OTP類型還是FLASH類型ROM以確定是否可以再次標(biāo)定,如果是ROM類型,則執(zhí)行S410,否則重復(fù)S411步驟。
S410、芯片標(biāo)定后時(shí)鐘工作頻率不在設(shè)計(jì)范圍內(nèi),如果芯片存儲(chǔ)器存儲(chǔ)類型是FLASH類型,重復(fù)標(biāo)定小于三次,執(zhí)行差錯(cuò)處理后,執(zhí)行S409步驟并順序執(zhí)行;重復(fù)標(biāo)定大于三次或者芯片存儲(chǔ)器存儲(chǔ)類型是OTP類型的芯片,停止高低溫箱,LCD顯示和提示客戶芯片標(biāo)定失敗,同時(shí)LCD模塊顯示燒錄出現(xiàn)問題的芯片并計(jì)數(shù),結(jié)束本次標(biāo)定。
S411、芯片標(biāo)定后時(shí)鐘工作頻率在設(shè)計(jì)范圍內(nèi),LCD顯示和提示客戶芯片標(biāo)定成功,同時(shí)LCD模塊顯示燒錄成功的芯片并計(jì)數(shù),結(jié)束本次標(biāo)定。
所述的標(biāo)定值,是在批量生產(chǎn)模式下根據(jù)時(shí)鐘標(biāo)定算法,在0至255數(shù)值范圍內(nèi)劃出標(biāo)定數(shù)值查找范圍和所需標(biāo)定的時(shí)鐘頻率理想值,調(diào)用二分算法和循環(huán)冗余算法計(jì)算出時(shí)鐘頻率標(biāo)定數(shù)值,對(duì)寫入標(biāo)定數(shù)據(jù)的芯片進(jìn)行測量,與時(shí)鐘頻率的設(shè)計(jì)值進(jìn)行比較,不適合再次標(biāo)定。
本發(fā)明是每次對(duì)芯片是否進(jìn)行測試及標(biāo)定的循環(huán)工作狀態(tài)不斷的查詢和狀態(tài)判斷的一個(gè)過程,控制指令的解析,把測試模式、批量生產(chǎn)模式、時(shí)鐘頻率校正、智能儀器儀表設(shè)備控制、差錯(cuò)處理及數(shù)據(jù)判斷、信息顯示報(bào)警提示、標(biāo)定裝置固件程序更新及控制軟件等協(xié)同工作的特點(diǎn)結(jié)合,實(shí)現(xiàn)自動(dòng)化的時(shí)鐘頻率測量及標(biāo)定系統(tǒng)。
總之,本發(fā)明可以實(shí)現(xiàn)在較少的成本下對(duì)集成性或者專業(yè)性芯片的時(shí)鐘頻率測試及標(biāo)定,為保證頻率標(biāo)定的準(zhǔn)確性,引入雙層測試模式設(shè)計(jì)思想與方法進(jìn)行時(shí)鐘頻率測試及標(biāo)定,融入自動(dòng)化測試的理念,實(shí)現(xiàn)對(duì)高精度時(shí)鐘頻率標(biāo)定的需求,解決在少投入大效益下滿足客戶使用需求,攜帶方便,方便客戶使用,同時(shí)節(jié)省芯片設(shè)計(jì)成本和提高開發(fā)效率。
以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換和改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。