尹冀波
(中國電子科技集團公司第四十七研究所,沈陽 110032)
COM即組件對象模型,是一種跨應用和語言共享二進制代碼的方法。COM對象在內(nèi)存中表現(xiàn)為組件對象類CoClass的一個實例,該對象保持它們自己的引用計數(shù),當引用計數(shù)為零時,COM對象將自己從內(nèi)存中釋放。在實際的工程項目中,可以根據(jù)COM客戶機-服務器的應用方法,建立適合需求的架構模型。
芯片試驗具有需要處理的信息量大、快速響應、并行數(shù)據(jù)計算的特點。根據(jù)上述特點,選取COM作為試驗的工程架構,配合C8051F340微處理器為核心的硬件電路,組成了完整的芯片試驗平臺。
在芯片試驗過程中,芯片的電流曲線能夠反映出該芯片對于外界所施加影響而產(chǎn)生的內(nèi)部物理結構變化。根據(jù)這種情況,可以使用OpenGL專業(yè)級的COM繪圖組件來繪制電流實時變化波形,該組件給圖形統(tǒng)計和動態(tài)圖形顯示提供了比較好的解決方案,如圖1所示。
圖1 電流波形動態(tài)圖表
系統(tǒng)需要實時監(jiān)測芯片的A型電流、B型電流、C型電流。當外界施加影響之后,A型電流、B型電流會首先出現(xiàn)攀升以及持續(xù)的增長,到達一定域值后產(chǎn)生階越性跳變。針對這樣的需求,在系統(tǒng)中設計一個電源管理COM組件,用于監(jiān)管電源電壓和電流門限域值。
命令控制以及硬件反饋消息組成了本系統(tǒng)的信息鏈路。用戶下達的命令包括:輸出電壓、電流上限值、測試啟動、片選、復位以及其它控制。上述命令提交給電源組件,由電源管理COM組件負責命令解析和命令重新打包,提交給通信組件,再由通信組件向電源下達指令。
硬件電路檢測到芯片功能參數(shù)的變化,生成芯片消息,上傳至芯片COM組件。芯片組件進行消息解析和消息打包,提交到控制臺。
消息幀格式如表1所示。
表1 消息幀格式
MD:主設備標識;VD:子設備標識;FI:A型電流;SI:B型電流;EI:C型電流;FV:A型電壓;SV:B型電壓;EV:C型電壓。
命令幀格式如表2所示。
表2 命令幀格式
MD:主設備標識;VD:子設備標識;VC:電壓命令;IC:電流命令;EC:緊急命令;GC:附加命令。
用于芯片測試的硬件邏輯電路以C8051F340微處理器為核心,由通信電路、穩(wěn)壓電路、邏輯電路、繼電器組合電路以及待測芯片組共同構成。硬件電路邏輯框圖如圖2所示。
圖2 硬件電路邏輯圖
本系統(tǒng)的軟件構建基于COM架構,控制臺與COM組件的結構圖如圖3所示。
圖3 軟件架構圖
(1)防止同一程序多次啟動,創(chuàng)建自定義編輯框,設定多個編輯框的初始值,設定模塊管理智能指針,設定電源模塊通信智能指針,啟動電源模塊,創(chuàng)建電源模塊的事件連接點,通道模塊初始化,設置邏輯,創(chuàng)建通道圖表,初始化通道圖表,繪制通道的初始圖表。
(2)啟動測量電流,向電源模塊下達啟動測量電流的命令,啟動繪圖的定時器,設置邏輯,向電源模塊下達關閉測量電流的命令,關閉繪圖的定時器,向電源模塊發(fā)出停止記錄的命令。
(3)向電源模塊下達啟動電源輸出的指令,設置邏輯,向電源模塊下達關閉電源輸出的指令,向電源模塊下達命令,停止檢測電流,向電源模塊下達命令,停止記錄,停止定時器,停止繪圖。
(4)獲取自定義編輯框的內(nèi)容,提示用戶確認,向電源模塊下達輸出參數(shù)的命令。根據(jù)通道號,選擇處理函數(shù)。提示用戶,更新電流變量數(shù)值。
(1)工作線程啟動,創(chuàng)建同步對象,創(chuàng)建設備事件的連接點,創(chuàng)建針對設備的智能指針,通過智能指針主動獲取設備的當前狀態(tài),釋放智能指針,建立Map表,Agency初始化,置設備的當前狀態(tài)為準備就緒。
(2)設置與通信模塊的智能指針,設置與通信模塊的連接點,初始化模塊。區(qū)分消息來自于哪一個通道,檢測電流是否達到上限。記錄電流達到上限,停止定時器,下達關閉電源輸出命令,向控制臺報告。
(3)尋找回調(diào)指針,向控制臺的連接點相應接口轉發(fā)消息。向通信模塊發(fā)出開啟電源輸出的命令。重置代理變量,向電源下達輸出參數(shù)。啟動定時器,每隔固定時間發(fā)送一次電流監(jiān)測命令。
(1)全局初始化,打開通信接口,啟動接收發(fā)送線程,啟動分發(fā)線程。在接收發(fā)送線程中,如果發(fā)送隊列不為空,則發(fā)送動作為真。
(2)從發(fā)送隊列提取命令,向通信接口發(fā)送該命令。如果讀取通信接口消息不為空,將該消息放入分發(fā)隊列,激活分發(fā)事件。
本系統(tǒng)固件使用ANSI C進行編寫,編譯完成后的文件通過JTAG下載到C8051F340微處理器的FLASH區(qū)域。
固件流程如下:
(1)關閉看門狗,UART初始化,端口初始化,晶振初始化。
(2)中斷初始化以及相應的中斷處理。
(3)啟動主程序循環(huán),監(jiān)聽中斷消息,判斷并處理統(tǒng)計指令、查詢指令、啟動指令和復位指令。
該芯片試驗方法經(jīng)過改進,可以應用在以X86為核心處理器的嵌入式開發(fā)系統(tǒng)中,與待測芯片的連接方式改為PCI104總線方式。
[1]李朝青.單片機原理及接口技術[M],北京:北京航空航天大學出版社,1999.
[2]潘愛民.COM原理與應用[M].北京:清華大學出版社,2000.
[3]劉曉華.精通MFC[M].北京:電子工業(yè)出版社,2003.
[4]PST-PSS-PSH Programmer Manual[M].GoodWill Company,2005.