專利名稱:總線分析器及其測試內(nèi)總線的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及用于基于總線的多處理器計算機系統(tǒng)的總線分析器,并特別涉及通過自身而不要附加的外部信號即可測試內(nèi)數(shù)據(jù)通路的總線分析器及其用于測試內(nèi)數(shù)據(jù)通路的方法。
在研制應(yīng)用總線的多處理器計算機系統(tǒng)時,一個重要的因素是總線上的數(shù)據(jù)能否易于分析。這種分析是通過下面兩種手段之一實現(xiàn)的一般用于測試數(shù)字電路的邏輯分析器和用于分析總線狀態(tài)的總線分析器。然而邏輯分析器具有有限數(shù)目的通道,于是同時檢查所有的總線信號線路是困難的,并且花費高體積大,這使其安裝和轉(zhuǎn)移不便。另一方面,總線分析器是以板狀安裝到總線上的,于是它易于安裝和轉(zhuǎn)移并且僅以邏輯分析器五分之一的費用即可容易地進行全部信號線路的檢查。
圖1是基于總線的共用同步多處理器計算機系統(tǒng)的一個示意圖。其中,處理器板12、存儲器板13、輸入/輸出(I/O)板14以及總線分析器板15裝在底板11上。板之間的數(shù)據(jù)的讀取和傳輸必須通過底板11的系統(tǒng)總線進行。
圖2是一以往的總線分析器的框圖,其中標(biāo)號21表示一終端,標(biāo)號22表示一中央處理器(CPU),標(biāo)號23表示一存儲器控制器,標(biāo)號24表示一跟蹤存儲器,標(biāo)號25表示一總線接口,標(biāo)號26表示一系統(tǒng)總線。
當(dāng)″開始跟蹤″的命令通過終端21輸入時,CPU22解釋該輸入的指令并該信息轉(zhuǎn)送到存儲器控制器23,該存儲器控制器轉(zhuǎn)而輸出一控制信號到總線接口25。然后總線接口25根據(jù)該控制信號打開一通路緩沖器使得系統(tǒng)總線26的數(shù)據(jù)能夠傳輸?shù)礁櫞鎯ζ?4。同時,存儲器控制器23還輸出地址和寫信號,用于將所傳輸?shù)臄?shù)據(jù)順序地從系統(tǒng)總線26寫入跟蹤存儲器24。
如果在跟蹤操作期間從CPU22施加觸發(fā)信號,存儲器控制器23停止向跟蹤存儲器24輸出地址和寫信號,并向總線接口25輸出一控制信號關(guān)閉總線接口25的通路緩沖器。然后跟蹤存儲器24停止寫數(shù)據(jù)并保持所存儲的數(shù)據(jù)。
根據(jù)用戶的指令,CPU22讀出存儲在跟蹤存儲器24中的數(shù)據(jù)以便在終端21的屏幕上顯示讀出的數(shù)據(jù),這可使用戶評價系統(tǒng)總線26的操作。
在上述以往的總線分析器中,為了在系統(tǒng)全測試期間分析系統(tǒng)總線26的數(shù)據(jù),系統(tǒng)總線26的全部數(shù)據(jù)在每一時鐘脈沖都要被存儲到跟蹤存儲器24中。于是,一次記錄在跟蹤存儲器24中的數(shù)據(jù)位的數(shù)目對應(yīng)于系統(tǒng)總線26的信號線路的數(shù)目。
同時,由于底板11和總線分析器15是用于測試其他板的(例如處理器板12,存儲器板13以及I/O板14),因而它們應(yīng)首先被測試。然而在測試總線分析器時存在以下幾個困難。
首先,對于從系統(tǒng)總線26到CPU22的數(shù)據(jù)通路221,241和251的每一個大約100~400個待測試的系統(tǒng)總線的大量的信號線路,為了完成該系統(tǒng)總線上的測試需要很多時間和工作。
第二,由于是在測試其他板之前測試總線分析器,沒有辦法把測試數(shù)據(jù)加到系統(tǒng)總線上去。雖然對于其他板的測試可以完成,但是這些板具有有限數(shù)目的信號線路用于驅(qū)動系統(tǒng)總線,并且只能驅(qū)動由總線協(xié)議所定義的序列和數(shù)值,這妨礙了總線分析器所有內(nèi)通路的測試。例如,參見圖2,雖然對于通路221的測試可通過由CPU22向/從跟蹤存儲器24寫/讀測試數(shù)據(jù)進行,但接下去測試數(shù)據(jù)通路241與251就不可能了。
于是,應(yīng)用以往的總線分析器,一系列的測試數(shù)據(jù)必須人工輸入到系統(tǒng)總線26的每一信號線路。然后,對于數(shù)據(jù)通路241與251的每一線路的檢查應(yīng)用示波器或類似的裝置逐一完成,這使得測試的次數(shù)線性地增加,并且測試變得冗長乏味和耗費時間。
本發(fā)明的一個目的是提供一種通過自身而不需要附加的外部信號即可在多處理器計算機系統(tǒng)中測試內(nèi)數(shù)據(jù)通路的總線分析器。
本發(fā)明的另一目的是提供一種用于測試總線分析器的內(nèi)總線的方法,該方法通過自身而不需要附加的外部信號即可在多處理器計算機系統(tǒng)中測試內(nèi)數(shù)據(jù)通路。
為了達到上述第一目的,本發(fā)明提供了在多個處理器板由系統(tǒng)總線共同連接的多處理器計算機系統(tǒng)中用于測試系統(tǒng)總線的總線分析器,它包括總線測試器,用于在測試系統(tǒng)總線時存儲用來測試系統(tǒng)總線的數(shù)據(jù),并向系統(tǒng)總線輸出測試數(shù)據(jù);跟蹤存儲器,用于順序地寫從系統(tǒng)總線輸出的測試數(shù)據(jù);存儲器控制器,用于控制跟蹤存儲器,使之根據(jù)跟蹤信號存儲來自系統(tǒng)總線的測試數(shù)據(jù),并根據(jù)觸發(fā)信號停止存儲數(shù)據(jù);以及用于以下目的的控制器產(chǎn)生輸出到存儲器控制器的跟蹤和觸發(fā)信號,讀出存儲在跟蹤存儲器中的測試數(shù)據(jù),并將讀出的數(shù)據(jù)同從總線測試器所輸出的測試數(shù)據(jù)相比較。
為了達到以上第二個目的,本發(fā)明還提供了用于測試總線分析器的內(nèi)總線的方法,該總線分析器用于在多個處理器板由系統(tǒng)總線共同連接的多處理器計算機系統(tǒng)中測試系統(tǒng)總線,該方法包括以下步驟產(chǎn)生用于測試系統(tǒng)總線待存儲到第一存儲器的數(shù)據(jù);輸出存儲在第一存儲器中的測試數(shù)據(jù)到系統(tǒng)總線;產(chǎn)生用于跟蹤系統(tǒng)總線測試數(shù)據(jù)跟蹤信號;根據(jù)待存儲到第二存儲器中的跟蹤信號跟蹤系統(tǒng)總線的測試數(shù)據(jù);產(chǎn)生一觸發(fā)信號以便停止跟蹤;根據(jù)觸發(fā)信號停止向第二存儲器存儲被跟蹤數(shù)據(jù);以及比較第一存儲器中的測試數(shù)據(jù)與第二存儲器中的被跟蹤數(shù)據(jù)。
通過參照附圖對其較佳實施例的詳述本發(fā)明的上述目的和優(yōu)點將變得更為明顯,這些附圖是圖1是通用的基于總線的多處理器計算機系統(tǒng)的示意圖;圖2是以往的總線分析器的示意圖;圖3是根據(jù)本發(fā)明的總線分析器的簡要框圖;圖4是一流程圖,表示根據(jù)本發(fā)明用于測試總線分析器的內(nèi)總線的方法。
圖3是一框圖,表示根據(jù)本發(fā)明用于多處理器計算機系統(tǒng)的總線分析器的構(gòu)成。其中標(biāo)號31表示一用于由用戶輸入指令或識別測試結(jié)果的終端,標(biāo)號32表示一用于控制相應(yīng)的處理器板的操作的CPU,標(biāo)號36表示一系統(tǒng)總線,標(biāo)號34表示一用于存儲系統(tǒng)總線數(shù)據(jù)的跟蹤存儲器,標(biāo)號35表示一用于系統(tǒng)總線36與跟蹤存儲器34之間接口的總線接口,標(biāo)號33表示一用于控制跟蹤存儲器34及總線接口35的操作的存儲器控制器,以及標(biāo)號37表示用于測試系統(tǒng)總線36的總線測試部分。
總線測試部分37包括具有多個(1-N)寄存器的模式寄存器部分372;用于記錄關(guān)于模式寄存器部分372中存儲了要被輸出到系統(tǒng)總線46的測試數(shù)據(jù)的寄存器數(shù)目的信息的模式數(shù)(NOP)寄存器371;以及用于控制整個操作的測試控制器373。
根據(jù)本發(fā)明的總線分析器具有可把測試數(shù)據(jù)輸出到系統(tǒng)總線36的所有信號線路的總線測試部分37,把從總線測試部分37輸出的測試數(shù)據(jù)存儲到跟蹤存儲器34,并比較測試數(shù)據(jù)與存儲在跟蹤存儲器34中的數(shù)據(jù),以此進行對于內(nèi)數(shù)據(jù)通路的測試。
如上構(gòu)成的總線分析器的操作在以下參見圖3與4進行說明。如同在以往的方法中那樣,CPU32把測試數(shù)據(jù)直接寫到跟蹤存儲器34,并讀出被寫的測試數(shù)據(jù)以便比較讀出數(shù)據(jù)與存儲在跟蹤存儲器34中的數(shù)據(jù),從而進行對于數(shù)據(jù)通路321的測試。
對于數(shù)據(jù)通路341與351的測試如下進行。
參見圖3與4,CPU32通過控制測試控制器373把測試數(shù)據(jù)寫到模式寄存器部分372,并且這時要被施加到系統(tǒng)總線36上的模式數(shù)寫到NOP寄存器371(步驟41)。測試控制器373根據(jù)來自CPU32的控制信號控制模式寄存器部分372以及NOP寄存器371的數(shù)據(jù)的輸入和輸出,并通過總線接口35向系統(tǒng)總線36輸出存儲在模式寄存器部分372中對應(yīng)于NOP寄存器371的中所存儲的模式數(shù)的測試數(shù)據(jù)的數(shù)目(步驟42)。CPU32產(chǎn)生用于跟蹤系統(tǒng)總線36的數(shù)據(jù)的起始信號(步驟43)。存儲器控制器33控制總線接口35以及跟蹤存儲器34以便把系統(tǒng)總線36的數(shù)據(jù)存儲到跟蹤存儲器34中(步驟44)。當(dāng)經(jīng)過了足夠的時間在跟蹤存儲器34中存儲了從模式寄存器部分372輸出的全部測試數(shù)據(jù)時,CPU32使得跟蹤停止(步驟45),然后讀出存儲在跟蹤存儲器34中的數(shù)據(jù)用于同存儲在模式寄存器部分372的測試數(shù)據(jù)比較(步驟46)。
改變存儲在模式寄存器部分372中的測試數(shù)據(jù)的模式,重復(fù)進行如上所述的測試以便對于所有的數(shù)據(jù)通路確認是否發(fā)生了諸如短路或干擾等故障。
模式寄存器部分372的每一個寄存器的位數(shù)可以等于系統(tǒng)總線36的信號線路的數(shù)目,從而可使得同時輸出系統(tǒng)總線36的測試數(shù)據(jù)。另一方面,模式寄存器部分372的每一個寄存器的位數(shù)可以小于系統(tǒng)總線36的信號線路數(shù)目。在這種情形下,如果模式寄存器部分372由n-位寄存器組成,并且系統(tǒng)總線36的信號線路數(shù)目為m,則使用nm分配器(未示出)向系統(tǒng)總線36反復(fù)輸出相同的測試數(shù)據(jù)進行測試。
如上所述,本發(fā)明提供了用于多處理器系統(tǒng)的總線分析器,它無需附加的外部信號而是通過自身即可測試內(nèi)總線,并提供了用于測試其內(nèi)總線的方法。而且,本發(fā)明的總線分析器具有不要其他板和附加的設(shè)備可使得對于內(nèi)總線諸如短路或干擾的故障的測試自動化的優(yōu)點。
權(quán)利要求
1.一種在多個處理器板由系統(tǒng)總線共同連接的多處理器系統(tǒng)中用于測試系統(tǒng)總線的總線分析器,包括總線測試器,用于在測試上述系統(tǒng)總線時存儲用來測試上述系統(tǒng)總線的數(shù)據(jù),并向上述系統(tǒng)總線輸出測試數(shù)據(jù);跟蹤存儲器,用于順序地寫入從上述系統(tǒng)總線輸出的測試數(shù)據(jù);存儲器控制器,用于控制上述跟蹤存儲器,使之根據(jù)跟蹤信號存儲來自上述系統(tǒng)總線的測試數(shù)據(jù),并根據(jù)觸發(fā)信號停止存儲該數(shù)據(jù);以及用于以下目的的控制器產(chǎn)生要被輸出到上述存儲器控制器的上述跟蹤和觸發(fā)信號,讀出存儲在上述跟蹤存儲器中的測試數(shù)據(jù),并將讀出的數(shù)據(jù)同從上述總線測試器所輸出的測試數(shù)據(jù)相比較。
2.如權(quán)利要求1中所述的用于測試系統(tǒng)總線的總線分析器,其中上述總線測試器包括用于存儲測試數(shù)據(jù)的第一存儲器;用于存儲有關(guān)要被輸出到上述系統(tǒng)的測試數(shù)據(jù)的量信息的第二存儲器;以及測試控制器,用于控制上述第一與上述第二存儲器,以便向上述系統(tǒng)總線反復(fù)輸出對應(yīng)于存儲在上述第二存儲器中的測試數(shù)據(jù)量的存儲在上述第一存儲器中的上述測試數(shù)據(jù)量。
3.如權(quán)利要求2中所述的用于測試系統(tǒng)總線的總線分析器,其中對于上述第一存儲器的測試數(shù)據(jù)的每一個的位數(shù)等于上述系統(tǒng)總線的信號線路的數(shù)目。
4.如權(quán)利要求2中所述的用于測試系統(tǒng)總線的總線分析器,其中對于上述第一存儲器的測試數(shù)據(jù)的每一個的位數(shù)小于上述系統(tǒng)總線的信號線路的數(shù)目,上述總線分析器還包括對于上述系統(tǒng)總線的一次測試用于向上述系統(tǒng)總線反復(fù)輸出上述第一存儲器的上述測試數(shù)據(jù)的分配器。
5.用于測試總線分析器中的內(nèi)總線的方法,該總線分析器用于在多個處理器板由上述系統(tǒng)總線共同連接的多處理器系統(tǒng)中測試系統(tǒng)總線,該方法包括以下步驟產(chǎn)生待存儲到第一存儲器用于測試上述系統(tǒng)總線的數(shù)據(jù);輸出存儲在上述第一存儲器中的測試數(shù)據(jù)到上述系統(tǒng)總線;產(chǎn)生用于跟蹤上述系統(tǒng)總線的上述測試數(shù)據(jù)的跟蹤信號;根據(jù)待存儲到第二存儲器中的跟蹤信號跟蹤上述系統(tǒng)總線的上述測試數(shù)據(jù);產(chǎn)生一觸發(fā)信號以便停止跟蹤;根據(jù)上述觸發(fā)信號停止向上述第二存儲器存儲上述被跟蹤數(shù)據(jù);以及比較上述第一存儲器中的上述測試數(shù)據(jù)與上述第二存儲器中的上述被跟蹤數(shù)據(jù)。
全文摘要
本發(fā)明為多處理器計算機系統(tǒng)的總線分析器,包括總線測試器,用于存儲和向系統(tǒng)總線輸出測試的數(shù)據(jù);跟蹤存儲器,用于順序地寫入從系統(tǒng)總線輸出的測試數(shù)據(jù);存儲器控制器,用于控制跟蹤存儲器;以及用于以下目的的測試控制器產(chǎn)生跟蹤和觸發(fā)信號,讀出測試數(shù)據(jù),并將讀出的數(shù)據(jù)同從總線測試器所輸出的測試數(shù)據(jù)相比較。該總線分析器自動地測試內(nèi)總線而無需附加的測試設(shè)備以及其他板。
文檔編號G06F13/00GK1153347SQ9511922
公開日1997年7月2日 申請日期1995年11月10日 優(yōu)先權(quán)日1994年12月22日
發(fā)明者宋庸鎬 申請人:三星電子株式會社