專利名稱:數字信號測試系統的制作方法
技術領域:
本發明屬于測試系統領域,具體的說是一種用于數字信號測試的集成化片上系統。
一個基于微型計算機的測試系統通常分為上位機部分和下位機兩大部分,下位機完成測試數據的采集和預處理功能,而上位機完成測試數據的后處理及人機界面的功能,上位機和下位機通過一定的通信端口相連,如串口、并口或者總線等方式相連。上位機通常是由通用的個人微型計算機(簡稱PC機)實現,下位機通常由專門開發的硬件來實現,上位機通過友好的圖形界面或文本界面與用戶溝通,接受用戶的測試命令并通過通信端口下發給下位機,從而控制下位機的現場操作,下位機采集的現場測試數據或者經過下位機預處理后的測試結果通過通信端口上報給上位機,經過上位機對測試數據的最后處理,將最終的測試結果反饋給用戶。
一般來說,測試系統的下位機部分通常由中央控制模塊、數據采集模塊(輸入)、數據處理模塊和數據通信模塊(輸出)等模塊組成,在中央控制模塊控制下,數據采集模塊采集的數據經過數據處理模塊的處理,測試結果由數據通信模塊輸出后通過計算機串口或者并口傳遞給PC機。
在一般數字測試系統的下位機中,為了實現數據的采集、處理和數據通信,中央控制模塊通常由單片機等通用微處理器來實現,通過微處理器的軟件控制數據采集和處理,并且在微處理器的控制下,通過數據通信模塊直接與上位機實現信息交互。而且由于可以隨時對軟件進行修改,給整個測試系統帶來了很大的靈活性。
然而由于在一定的環境條件下,微處理器軟件存在著程序跑飛的可能,勢必影響系統的穩定性和可靠性,如果采用專用微處理器或者高檔微處理器,也勢必影響系統的成本。特別是對于一些可靠性要求較高,但是測試要求較為簡單的測試系統,如果采用這種由通用微處理器組成的測試系統的下位機,一方面由于存在程序跑飛的現象,穩定性不是很高,無法滿足高可靠性的要求;另一方面同時由于通用微處理器的采用,使得系統集成比較困難,無法做到將該系統在片上實現,而且成本很高,修改的靈活性不是很方便。
本發明的目的在于提供一種數字信號測試系統,該數字信號測試系統集成于一塊現場可編程門陣列上,且該系統在接收到PC機通過串行端口傳送來的測試命令后,能夠及時地做出響應并與PC機建立通信鏈路,執行相應的數據采集和數據處理的任務,最后將測試結果通過串行端口傳送給PC機,從而實現高效靈活可靠的測試。
為了實現上述的任務,本發明采用的解決方案是提供一種數字信號測試系統,該數字信號測試系統包括信號采集測試單元,用于數據的采集和測試;由發送先進先出隊列、接收先進先出隊列及讀寫狀態控制器組成的數據存儲單元;數據通信單元,用于數據的收發;時鐘模塊,為所述系統的各個單元提供工作時鐘;其特點在于還包括由有限狀態機形式的專用微處理器組成的微控制器單元;所述微控制器單元向所述信號采集測試單元發送一測試模式信號和一使能測試信號;所述信號采集測試單元將一反饋信號送回所述微控制器單元,將一數據輸出信號送入數據存儲單元之中的發送先進先出隊列;所述數據存儲單元將一數據輸出信號、狀態信號送入微控制器單元,將一數據輸出信號、一讀控制信號、一寫控制信號送到所述數據通信單元;所述數據通信單元將一數據輸出信號送入所述數據存儲單元。
由本發明的結構特征可知,本發明和傳統的數字信號測試系統相比具有如下有益效果本系統采用了專用的微控制器單元、通用的數據通信單元、信號采集測試單元和數據存儲單元的組成,其中所有單元均由硬件來實現,在微控制器單元之中用一個簡易的專用微處理器單元替代了傳統的通用微處理器。由于整個測試流程由專用微處理器的硬邏輯門來控制,大大提高了測試系統的可靠性和穩定性,克服了采用通用微處理器軟件存在程序跑飛的可能性。由于可以在一個芯片上實現整個系統,整個測試系統的體積也大大減小。正是由于采用了有限狀態機的設計,使得可以將系統在片上實現,進而帶來了成本降低、程序穩定性增加防止程序跑飛、修改靈活的特點。本發明對于數字單板的生產測試尤為實用,可以根據不同的測試對象靈活的修改相應的有限狀態機,測試結果通過RS232接口上報給PC機,實現快速、高效、靈活的測試。
下面結合附圖對本發明的具體實施方式
再作一詳細的描述。
圖1是整個測試系統的系統結構圖。
圖2是數據存儲單元的結構圖。
圖3是專用的微控制器單元的狀態轉移圖。
圖4是專用的微控制器單元的單一狀態內的執行流程圖。
從圖1可以看到,整個測試系統可以由時鐘模塊、信號采集測試單元、微控制器單元、數據存儲單元和數據通信單元所組成,并且集成在一塊ALTERA公司的型號為FLEX1030KA的現場可編程門陣列(FPGA)上。
時鐘模塊為整個系統提供系統工作所需要的各種時鐘,其中包括向信號采集測試單元提供數據采集時鐘CLK1、向數據通信單元提供串口數據發送時鐘和串口數據接收時鐘CLK4、向微控制器單元提供專用微處理器主頻時鐘CLK2、向數據存儲單元提供數據讀寫同步時鐘CLK3。
微控制器單元和信號采集測試單元的信號走向如下該微控制器單元向信號采集測試單元發送測試模式信號TEST_MODE和使能測試信號TEST_ENABLE,信號采集測試單元將反饋信號TEST_OVER送回到微控制器單元,同時信號采集測試單元將數據輸出信號DATA_IN送入數據存儲單元之中的發送先進先出隊列(發送FIFO)。
在使用時,微控制器單元通過測試模式信號TEST_MODE控制數據采集測試單元選擇不同的測試模式,再通過使能測試信號TEST_ENABLE控制以便于允許測試,信號采集測試單元將測試狀態通過反饋信號TEST_OVER反饋給微控制器單元,同時微控制器單元的允許發送使能信號TX_EN有效,此時信號采集測試單元可以將測試數據通過數據輸出信號DATA_IN傳送到數據存儲單元之中的發送先進先出隊列(發送FIFO)中。
微控制器單元和數據通信單元之間通過數據存儲單元實現消息和數據緩沖,從圖2可以看到,數據存儲單元實際上就是一個發送先進先出隊列(發送FIFO)、一個接收先進先出隊列(接收FIFO)及一個讀寫狀態控制器所組成的,發送FIFO是一個用于存放發送數據的先進先出隊列(FIFO),接收FIFO是一個用于存放接收數據的先進先出隊列(FIFO),其信號走向為數據存儲單元將數據輸出信號DATA_OUT、狀態信號RF_EPT、狀態信號XF_FUL送入微控制器單元,將數據輸出信號XDATA、讀控制信號RD、寫控制信號WR送到數據通信單元。數據通信單元將數據輸出信號RDATA送入數據存儲單元;其中所述數據存儲單元之中的讀寫狀態控制器將讀控制信號RD、寫控制信號WR及數據輸出信號XDATA輸出到所述數據通信單元,并接收來自所述數據通信單元的數據輸出信號RDATA。
還有數據存儲單元之中的接收先進先出隊列是通過接收來自讀寫狀態控制器的寫控制信號RF_WR并輸出給讀寫狀態控制器狀態信號RF_FUL來接收數據的。數據存儲單元之中的發送先進先出隊列是通過接收來自讀寫狀態控制器的讀控制信號XF_RD并輸出給讀寫狀態控制器狀態信號XF_EPT來發送數據的。
在使用時,微控制器單元根據判斷狀態信號XF_FUL作為發送FIFO是否滿的標志,用寫控制信號XF_WR作為發送FIFO的寫控制操作以便于對發送FIFO進行寫入,同時微控制器單元根據判斷狀態信號RF_EPT作為接收FIFO是否空的標志,用讀控制信號RF_RD作為接收FIFO的讀控制操作以便于對接收FIFO進行讀取。數據存儲單元之中的讀寫狀態控制器根據狀態信號XF_EPT作為發送FIFO是否空的標志,用讀控制信號XF_RD作為發送FIFO的讀控制操作以便于對發送FIFO進行讀取,讀出的數據經由寫控制信號WR控制寫入數據通信單元用于發送。同時讀寫狀態控制器根據狀態信號RF_FUL作為接收FIFO是否滿的標志,經由讀控制信號RD的控制讀出從數據通信單元接收到的數據,用寫控制信號RF_WR作為接收FIFO的寫控制操作以便于對接收FIFO進行寫入。這樣實際上就完成了一個數據和消息的兩級緩沖機制,避免了消息和數據在意外情況下的溢出。
微控制器單元是由專用微處理器所組成,是一個利用硬件的有限狀態機來實現的,它是利用可編程邏輯器件設計的一個具有幾種狀態的狀態機,由硬件來實現狀態機的功能,如接收上位機下發的命令,根據接收的命令進行狀態轉移,也即是根據接收的命令執行相應的功能。請參閱圖3所示,由圖中可以看出,這個有限狀態機由IDLE、STEP1、STEP2、STEP3、STEP4、STEP5各狀態以及C1、C2、C3、C4、C5、C6各測試命令所構成,系統初始狀態處于IDLE狀態,只有當收到上位機下發的測試命令C1后,系統才執行狀態轉換進入測試狀態STEP1并開始相應的測試流程;如果收到的測試命令非C1(NO C1),系統維持原狀態不變。
如圖4所示,當系統進入測試流程后,微控制器單元首先將本狀態鎖定,在狀態未解鎖之前不允許執行狀態轉換,接著微控制器單元向上位機上報測試狀態和測試數據,然后根據相應的測試命令選擇相應的測試模式,開始進行信號采集測試,微控制器單元不斷地檢查測試是否完成,直到測試完成以后將測試結果存儲在相應的存儲區中。最后微控制器單元將狀態解鎖,STEP1測試流程結束,這時允許執行狀態轉換。微控制器單元繼續監測數據通信單元收到的命令,如果收到測試命令非C2(NO C2),系統仍舊維持原狀態不變,如果收到測試命令C2,則狀態發生轉換,進入測試狀態STEP2。如此一步一步根據收到的上位機的命令,以消息觸發的模式完成一系列的測試流程,也即是完成從IDLE、STEP1、STEP2、STEP3、STEP4、STEP5的各測試狀態轉換。
根據以上所述的本發明,由于整個測試流程由專用微處理器的硬邏輯門來控制,大大提高了測試系統的可靠性和穩定性,克服了采用通用的微處理器軟件存在程序跑飛的可能性。同時由于片上測試系統的實現,整個測試系統的體積也大大減小。正是由于采用了有限狀態機的設計,使得可以將系統在片上實現,進而帶來了成本降低、程序穩定性增加防止程序跑飛、修改靈活的特點。本發明對于數字單板的生產測試尤為實用,可以根據不同的測試對象靈活的修改相應的有限狀態機,測試結果通過RS232接口上報給PC機,實現快速、高效、靈活的測試。
權利要求
1.一種數字信號測試系統,包括信號采集測試單元,用于數據的采集和測試;由發送先進先出隊列、接收先進先出隊列及讀寫狀態控制器組成的數據存儲單元;數據通信單元,用于數據的收發;時鐘模塊,為所述系統的各個單元提供工作時鐘;其特征在于還包括由有限狀態機形式的專用微處理器組成的微控制器單元;所述微控制器單元向所述信號采集測試單元發送測試模式信號TEST_MODE和使能測試信號TEST_ENABLE;所述信號采集測試單元將反饋信號TEST_OVER送回所述微控制器單元,將數據輸出信號DATA_IN送入數據存儲單元之中的發送先進先出隊列;所述數據存儲單元將數據輸出信號DATA_OUT、狀態信號RF_EPT、狀態信號XF_FUL送入微控制器單元,將數據輸出信號XDATA、讀控制信號RD、寫控制信號WR送到所述數據通信單元;所述數據通信單元將數據輸出信號RDATA送入所述數據存儲單元。
2.如權利要求1所述的數字信號測試系統,其特征在于所述數據存儲單元之中的讀寫狀態控制器將讀控制信號RD、寫控制信號WR及數據輸出信號XDATA輸出到所述數據通信單元,并接收來自所述數據通信單元的數據輸出信號RDATA。
3.如權利要求1或2所述的數字信號測試系統,其特征在于所述數據存儲單元之中的接收先進先出隊列是通過接收來自所述讀寫狀態控制器的寫控制信號RF_WR并輸出給所述讀寫狀態控制器狀態信號RF_FUL來接收數據的。
4.如權利要求1或2所述的數字信號測試系統,其特征在于所述數據存儲單元之中的發送先進先出隊列是通過接收來自所述讀寫狀態控制器的讀控制信號XF_RD并輸出給所述讀寫狀態控制器狀態信號XF_EPT來發送數據的。
5.如權利要求1所述的數字信號測試系統,其特征在于微控制器單元、信號采集測試單元、數據存儲單元、數據通信模塊集成于一塊現場可編程門陣列上。
6.如權利要求1所述的數字信號測試系統,其特征在于所述的有限狀態機是利用可編程邏輯器件設計的一個具有幾種狀態的狀態機,由硬件來實現狀態初的功能。
全文摘要
本發明公開了一種數字信號測試系統,包括:時鐘模塊、信號采集測試單元、微控制器單元、數據存儲單元和數據通信單元。其中信號采集測試單元、微控制器單元、數據存儲單元、數據通信單元集成于現場可編程門陣列上。微控制器單元是專用微控制器單元,整個測試流程由專用微控制單元硬邏輯門來控制,且通過數據通信單元把采集到的數據傳輸給PC機。該數字信號測試系統具有可靠性高和使用靈活方便等優點。
文檔編號G06F9/22GK1320861SQ0011662
公開日2001年11月7日 申請日期2000年6月20日 優先權日2000年6月20日
發明者張曉謙 申請人:深圳市中興通訊股份有限公司