專利名稱:非可掃描微處理器的可掃描接口的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及具有診斷能力的數(shù)字處理系統(tǒng)領(lǐng)域。尤其是在一個實施例中,本發(fā)明提供了一種掃描可掃描處理器而不干擾形成數(shù)字系統(tǒng)一部分的非可掃描微處理器的手段。
為全面診斷純邏輯電路(即不存儲過去的狀態(tài)的電路),診斷系統(tǒng)只需要控制電路的所有輸入和記錄輸出。把對一組已知的輸入的輸出與一組預(yù)期的輸出比較,可以指示出電路是否正常工作。對諸如觸發(fā)器、鎖存器的帶有存儲元件的電路和存儲元件的診斷更復(fù)雜。
為了全面診斷有存儲元件的電路,不僅必須控制輸入,而且內(nèi)部記憶的狀態(tài)必須能了解、能控制。一些內(nèi)部狀態(tài)可以通過操縱電路的輸入來控制。例如,對于計數(shù)器的內(nèi)部狀態(tài),即其計的數(shù),可以通過建立計數(shù)器的復(fù)位輸入,使其到達一已知的狀態(tài),然后向時鐘輸入端輸入時鐘,使其到達所預(yù)期的內(nèi)部狀態(tài)來控制。當然,對于今天這樣復(fù)雜的電路是不實用的。而且,對于某些測試,可能需要把內(nèi)部狀態(tài)設(shè)置成僅僅操作電路的輸入不可能達到的狀態(tài)。
因此,需要一種手段,來讀取電路的內(nèi)部狀態(tài)和把內(nèi)部狀態(tài)設(shè)定到一指定的狀態(tài)。對于分立電路,可以通過探測各存儲單元來讀取內(nèi)部狀態(tài),可以通過關(guān)閉各存儲元件的輸出并用與所期望的內(nèi)部狀態(tài)一致的邏輯值來代替以設(shè)定已知狀態(tài)。然而,對于集成電路,在測試系統(tǒng)和集成電路之間進行數(shù)據(jù)通信的引腳數(shù)嚴重限制了可以分配給對內(nèi)部狀態(tài)測試和控制的引腳數(shù)。
一種對集成電路(IC)進行診斷的熟悉的方法包括電路邏輯之間的掃描通路。掃描通路是一串行通路,它連接電路中所有存儲元件,或者至少是那些可以歸入串行流的可掃描元件的串行通路。使元件處于串行掃描通路,則可以從一個引腳串行讀出內(nèi)部狀態(tài),并可用一個引腳來設(shè)置內(nèi)部狀態(tài)。
集成電路有一個從正常電路操作模式切換到測試模式的機構(gòu)。在正常電路操作模式中,存儲元件對其輸入作響應(yīng),在測試模式中,存儲元件對經(jīng)過掃描通路的數(shù)據(jù)作響應(yīng)。因此,掃描通路中數(shù)據(jù)的移入和移出,將使存儲元件的輸出隨數(shù)據(jù)移位而變化。如果該存儲元件是一個直接影響電路輸出的存儲元件,則在掃描通路上測試數(shù)據(jù)的移位將表現(xiàn)為電路輸出端數(shù)據(jù)波動。
為了把電路設(shè)定成已知狀態(tài)(掃描入),則把對掃描通路內(nèi)的各存儲元件的設(shè)定值掃描入掃描輸入端,為了讀取電路狀態(tài)(掃描出),則從掃描通路輸出端讀取數(shù)據(jù)。掃描入和掃描出是通過向掃描通路提供等于掃描通路內(nèi)的存儲元件數(shù)的時鐘來進行的。當然,必須提供掃描信號,在掃描信號未建立時允許電路正常操作。因此,在正常操作時,電路的作用如設(shè)計的一樣,如果建立了掃描允許信號,則電路成為包括所有可診斷存儲元件的串行寄存器。
圖1示出這一原理。圖1示出了平行寄存器10,它具有8位數(shù)據(jù)輸入端、8位數(shù)據(jù)輸出、計時輸入端、掃描允許信號輸入端、掃描數(shù)據(jù)輸入端的掃描數(shù)據(jù)。在尚未建立掃描允許信號時,寄存器10以寄存器方式工作,數(shù)據(jù)在時鐘的作用下從輸入端I0-I7到輸出端O0-O7。
在建立了掃描允許信號時,數(shù)據(jù)輸入不再影響數(shù)據(jù)輸出。數(shù)據(jù)輸出受通過使用時鐘的掃描數(shù)據(jù)輸入端掃描進入寄存器的數(shù)據(jù)影響。這種掃描方法存在一個問題,即寄存器10是一較大系統(tǒng)的一部分。假設(shè)寄存器10內(nèi)全為零,且把“10000000”掃描入寄存器10,“1”在最后作為第7位。因為掃描輸入與第0位相聯(lián)接,所以隨著時鐘的進入,“1”將脈動通過各輸出端,因此,將干擾與寄存器10的輸出有關(guān)的電路元件,由此干擾其它電路的狀態(tài)。
寄存器10的輸出波動問題的一個解決方法是在寄存器10的輸出端設(shè)置另一8位不可掃描鎖存器,在掃描時不給該鎖存器時鐘,因此,使有關(guān)的電路元件與寄存器10屏蔽(隔離)。然而,這種方法沒有辦法測試現(xiàn)在加入的非可測試鎖存器。
另一種解決方法是協(xié)調(diào)對寄存器10和對相關(guān)元件的掃描。然而,如果相關(guān)元件是不可掃描的,例如相關(guān)元件是另一制造商提供的密封的IC時,則該方法不可能解決問題。
從上面可以看出,需要一種掃描與諸如微處理器的非可掃描電路具有相關(guān)的電路的經(jīng)改進的手段,它不干擾那些相關(guān)性電路的操作。
本發(fā)明提供了一種改進的電路診斷系統(tǒng)。
在本發(fā)明的診斷系統(tǒng)的一個實施例中,診斷系統(tǒng)可以掃描除非可掃描元件外的所有元件,而不干擾非可掃描元件。一個這樣的數(shù)字計算機診斷系統(tǒng)是一塊包含可掃描處理器ASIC(專用集成電路)的處理器板,它包括有一處理器接口芯片(PIC),用微處理器和PIC之間的處理器總線連接非可掃描微處理器和其它可掃描處理器ASIC。設(shè)置有掃描控制器,通過可掃描ASIC(包括PIC)讀寫數(shù)據(jù)。一般ASIC是在處理器板上的獨立的芯片,每一芯片具有一可獨立控制的掃描通路。然而,在另一實施例中,可以把多于一個以上的ASIC與單塊芯片結(jié)合,或者可以用于一塊以上的制成單個的ASIC。而且,處理器電路不需要在一塊板上。
在一特定的實施例中,掃描器本身就是一個ASIC維護和診斷芯片(MDC),它產(chǎn)生一個PIC請求,使微處理器進行總線步進(bus-step)。當MDC請求總線步進時,微處理器和處理器ASIC正常運行,一直到PIC確定微處理器能夠停止,并且可以不違反總線規(guī)約而掃描PIC。在那時,微處理器停止,以等待PIC的響應(yīng)。因為微處理器正在等待,因此延遲得到響應(yīng)無須影響微處理器的狀態(tài)。
本發(fā)明的一個優(yōu)點是可以對從處理器板一直到處理器總線進行掃描而不干擾微處理器狀態(tài)。在與正常操作設(shè)置完全一致的設(shè)置中,對包括非可掃描微處理器的計算機系統(tǒng)進行測試,把它設(shè)置成一已知狀態(tài),或者對它進行調(diào)試,在這些場合中這是很有用的。
本發(fā)明的另一優(yōu)點是它也可以使處理板進行總線步進而不需要微處理器內(nèi)專門的硬件。如果不需任何硬件,那么可以使用標準微處理器。
本發(fā)明的再一個優(yōu)點是它可以使可掃描ASIC的時鐘周期單步步進而不使微處理器干擾測試。即使沒有微處理器也可以運行一些診斷工作。
參見說明書的其余部分以及附圖,可以進一步理解本發(fā)明的特點和優(yōu)點。
圖1是一般的可掃描寄存器的框圖;
圖2是具有非可掃描微處理器和處理器電路的數(shù)字計算機的框圖;
圖3是PIC和MDC之間進行掃描或者處理總線步進而不干擾處理器總線上的微處理器工作的規(guī)約狀態(tài)圖;
圖4是本發(fā)明的輸出允許鎖存電路和處理器總線信號交換式寄存電路的框圖;
圖5是PIC的框圖,示出了診斷狀態(tài)機。
圖2是在處理器板21上的帶有非可掃描微處理器22和可掃描處理器電路24的數(shù)字計算機系統(tǒng)20的框圖。處理器電路24包括各種ASIC,如處理器接口芯片(PIC)30,存儲器接口芯片(MIC)32,處理機間總線控制器34x,y(IPBX/IPBY),輸入/輸出控制系統(tǒng)(IOS)36和維護和診斷芯片(MDC)38。處理器電路24通過三根總線內(nèi)部總線(IBus)40、維護總線(Mbus)42和外部總線(EBus)43相互連接。圖2示出了處理器電路24,它通過MIC與存儲器44相連,通過處理器間控制器34x,y與其它處理單元46x,y相連,通過IOS36和EBus43與I/O設(shè)備48相連。PIC30包括狀態(tài)機(圖5作了更詳細的圖示),其操作將結(jié)合圖3和圖5進行討論。
Mbus含有控制對連接在Mbus上的ASIC的進行掃描的信號線,使MDC建立ASIC以進行掃描操作,或者保持其所處的狀態(tài)。將一個ASIC保持其所處的狀態(tài)可以使MDC掃描另一個ASIC而不干擾被保持的ASIC的狀態(tài)。Mbus還含有掃描數(shù)據(jù)線,用于把掃描數(shù)據(jù)寫入ASIC和從ASIC讀取掃描數(shù)據(jù)。
除了Mbus之外,MDC還通過三根線DIAG、REQ、STEP_REQ和DIAG_OK線與PIC相連,盡管在一些實施例中,這些信號提供的信息受到不同信號線組的干擾。
在數(shù)字計算機系統(tǒng)20處于正常操作模式時,不需要Mbus。微處理器22通過處理器總線(PBus)50向PIC發(fā)出請求,它按順序通過IBus把請求傳送給其它ASIC。例如,如果微處理器22請求存儲器寫,則該請求將包括待寫入的數(shù)據(jù),并通過PIC到MIC,以便把與請求相關(guān)的數(shù)據(jù)存儲到存儲器44中。同樣,微處理器22通過PBus將對給定塊存儲器44的讀請求送至PIC,然后,再從PIC通過IBus40送至MIC。作為響應(yīng),MIC從存儲44中檢索出數(shù)據(jù),并將它送至PIC,PIC按PBus規(guī)約在適當?shù)臅r候?qū)⑺鼈魉椭廖⑻幚砥?2。
在診斷模式中,MDC可以通過Mbus控制ASIC。盡管所示的Mbus獨立地連至各ASIC,但在一些實施例中,掃描通路至ASIC是串行的,即,所有的掃描數(shù)據(jù)運行通過各ASIC。對于比各ASIC到MDC相連接成本更低的兩ASIC之間相連接來說,后種結(jié)構(gòu)是有用的。
一個ASIC的控制測試裝置,例如MIC32,是通過把預(yù)定狀態(tài)經(jīng)Mbus掃描到ASIC中來實現(xiàn)的。因為在處理器電路24內(nèi)的各ASIC是可掃描的,所以可以監(jiān)測和改變ASCC狀態(tài)。因此,由于所有可掃描ASIC的狀態(tài)可以被掃描入或者被保持,所以MDC不需要考慮與IBus相互影響的ASIC的內(nèi)部操作。例如,在掃描操作期間,可以以這樣一種方法掃描入MIC,即使掃描數(shù)據(jù)波動出現(xiàn)在IBus上,但如果IBus上的各ASIC也處于MDC控制下,那么這不是一個問題。
通常,在掃描ASIC時,影響ASIC內(nèi)部電路狀態(tài)的ASIC的輸入能力被封鎖。在所有的ASIC聯(lián)接在串行掃描通路上的場合下,在掃描一個ASIC時,即掃描了所有的ASIC,所以IBus上的掃描數(shù)據(jù)的波動沒有什么作用。在各ASIC具有直接與MDC連接的掃描通路的情況下,MDC可以經(jīng)Mbus向所有未被掃描的ASIC發(fā)出保持命令,防止IBus上的波動向未被掃描的IC觸發(fā)不希望有的輸入操作??傊?,因為MDC可以完全控制ASIC及其周圍的環(huán)境,Mbus就是所有MDC和ASIC之間需要Mbus。圖2所示的例外的情況是PIC30,它有一個不受MDC38控制的與微處理器22相連的接口。
除了存儲元件之外,MDC可以任意掃描PIC而不管PBus的狀態(tài),因為存儲元件將影響PBus上的數(shù)據(jù),但是即使那些存儲元件在設(shè)置了如圖3所示的狀態(tài)圖中舉例的控制邏輯成為可掃描的。這些信號線包含M地址/數(shù)據(jù)線和K控制線,總計N條。在一個實施例中,控制線為6條(K=6),地址/數(shù)據(jù)線為82條(M=82,N=88)。有些線在圖4中作了更詳細的圖示。在滿足某些條件時,地址/數(shù)據(jù)線上的數(shù)據(jù)不會影響微處理器22。在由PIC傳到微處理器的控制信號指示地址/數(shù)據(jù)線上的數(shù)據(jù)無效時,就滿足了這些條件。另一個這樣的條件是當微處理器22正等待對微處理器請求的響應(yīng),以及PIC仍未處理從PIC到微處理器的“響應(yīng)準備”信號。因此,MDC必須確信PBus處于這樣一條件下,以使能進行掃描而不引起微處理器22進行不希望的操作。
圖3是MPC和PIC之間各種規(guī)約狀態(tài)的狀態(tài)圖。由PIC內(nèi)的狀態(tài)機52(見圖5)跟蹤該狀態(tài),也可以采用其它結(jié)構(gòu)。重要的是甚至該狀態(tài)機52也可以被掃描。
圖5更詳細示出了PIC30。PIC包括狀態(tài)機52,54,56。設(shè)置了信號連接線,以使狀態(tài)機52把PBus脫離等待(Stay-off-PBus)信號送至PBus狀態(tài)機54,把IBus脫離等待(Stay-off-IBus)信號送至IBus狀態(tài)機56,同樣,狀態(tài)機接收PBus狀態(tài)機54的PBus空閑(PBus-idle)和IBus狀態(tài)機56的IBus空閑(IBus-idle)信號。
在狀態(tài)1,PIC和MDC處于正常模式。在建立了DIAG_RREQ信號時,狀態(tài)機52從狀態(tài)1變?yōu)闋顟B(tài)2。在整個說明中,信號被稱為“已建立”的信號或具有“真”值的信號,它們可以互換,與之相對的是“未建立”信號和具有“假”值的信號。在希望在進行PIC掃描時建立了一個DIAG_信號,就需要一PBus總線步進或處理器電路24的單個時鐘周期步進。
一旦轉(zhuǎn)到狀態(tài)2,PIC由斷開RDY(準備)信號。RDY信號表示兩種信號RdRdy(讀準備)和WrRdy(寫準備),但是為清楚起見,由于在狀態(tài)機52內(nèi)獨立處理這些信號,因此,在圖3中把它們示為一個信號。這些RdRdy和WrRdy信號,由PIC經(jīng)PBus輸出,由微處理器22輸入。在狀態(tài)維持在狀態(tài)2的各時鐘周期時建立另一個信號Stay-off-bus。在有了RDY信號時,總線脫離等待信號也表示兩個相似的處理信號PBus脫離等待信號和ZBus脫離等待信號,狀態(tài)機52把它們輸出至狀態(tài)機54主56(見圖5)。狀態(tài)機52保持在狀態(tài)2,一直到PBus和IBus兩者對于PIC來說空閑為止,此時,狀態(tài)機52改變到狀態(tài)3。
總線脫離等待信號被送至狀態(tài)機54、56,并且,狀態(tài)機52停留在狀態(tài)2,一直到它接收到狀態(tài)機54、56的總線空閑信號。
一旦轉(zhuǎn)到狀態(tài)3,PIC建立DIAG_OK信號,它向MDC指示可以進行步進和掃描。狀態(tài)機52保持在狀態(tài)3,一直MDC斷開DIAG_RREQ信號或者MDC建立了STEP_RREQ信號。如果MDC斷開DIAG_RREQ信號,狀態(tài)機52就轉(zhuǎn)變成狀態(tài)1,完成一次掃描操作流程。一旦轉(zhuǎn)到狀態(tài)1,PIC建立RDY(RdRdy、WrRdy)信號,并斷開總線脫離等待信號。
另一方面,如果維持建立的DIAG_RREQ信號,并建立STEP_RREQ信號,狀態(tài)機改變成狀態(tài)中,開始PBus的單步總線步進。一旦轉(zhuǎn)變到狀態(tài)4,PIC就建立RDY信號,并停留在狀態(tài)4,一直到有微處理器請求。因為總線步進在下一個處理機請求之前一直運行,因此這不是單步微處理器時鐘步進,而是請求與請求之間的單個代碼塊。當然,一些微處理器可以在每個指令周期產(chǎn)生指令請求,但,在一個最佳實施例中,微處理器包含有一輔助高速緩沖存儲器,高速緩沖存儲指令和最近使用的數(shù)據(jù),使它可以運行幾個指令周期而不影響PIC。
狀態(tài)機52保持在狀態(tài)4一直到PIC接收到微處理器請求,然后轉(zhuǎn)到狀態(tài)5。一旦轉(zhuǎn)到狀態(tài)5,如果DIAG_REQ仍然為真,則PIC就建立DIAG_OK信號,并斷開RDY信號。這引起微處理器22要么等待請求的結(jié)果,要么繼續(xù)內(nèi)部程序(例如從其主和副超高速緩沖存儲器讀取指令)。無論哪一種情況都不使用PBus。
狀態(tài)機保持在狀態(tài)5一直到MPC斷開DIAD_REQ信號,或者建立STEP_REQ信號。無論哪一種情況,狀態(tài)均從狀態(tài)5轉(zhuǎn)變成狀態(tài)6,然后轉(zhuǎn)變成狀態(tài)3。在狀態(tài)3,如果MDC的信號沒有變化,則使狀態(tài)進入狀態(tài)1,否則進入狀態(tài)4。
一旦進入狀態(tài)6,PIC斷開總線脫離等待信號,允許處理器電路24處理請求。狀態(tài)機52保持狀態(tài)6一直到請求處理完成,并且把響應(yīng)送至微處理器22,然后轉(zhuǎn)入狀態(tài)3。一旦轉(zhuǎn)入狀態(tài)3,則PIC再次建立總線脫離等待信號,并且如果DIAG_RREQ仍然為真,則建立DIAG_ROK一個時鐘周期。
因此,按照圖3所示的狀態(tài)圖,PIC和MDC可以協(xié)讞掃描處理機電路24的時間,包括對PIC本身的掃描,以及使微處理器22和PBus50總線步進,甚至不需要微處理器22了解發(fā)生了什么。這樣就不要對微處理器22進行改動。這種方法的一個好處是可以從可用的微處理器中選擇微處理器22,而不限于在那些可掃描的微處理器中選擇。在一個實施例中,微處理器22是兩個協(xié)作工作的R4400微處理機器(由Silicon Graghic公司MTI分公司制造)。
當然,如果PIC可以完全掃描,那么出現(xiàn)在PBus的一些控制線上的掃描波動仍可以影響微處理器22。例如,如果,觸發(fā)器正常輸出一個RDY信號后,在掃描運行經(jīng)過該觸發(fā)器的掃描通路時,RDY輸出將以掃描通路內(nèi)的存儲元件位模式方式波動。因此,為了避免發(fā)生不希望有的操作,一些存儲元件不能直接與PBus相連。然而,需要一些裝置測試這些存儲元件。
表1示出了幾個PIC輸出到PBus上的信號,它們在掃描期間必須保持(“*”表示信號低電平有效)。
信號 值Validln*FExtRqust*FRdRdy*FWrRDY*FIvdAck*TIvdErr*FValidIn*是PBus線,在此線上PIC指示由PIC傳送到PBus上的數(shù)據(jù)有效。EctRqust*是PBus,在此線上,PIC向微處理器發(fā)送一個信號。RdRly*和WrRDY*前面已經(jīng)討論過。InvAck*和InvErr*是PBus線,在此線上,PIC分別指示微處理器發(fā)出的數(shù)據(jù)無效/數(shù)據(jù)更新請求是否成功完成。
在掃描操作期間,由于這些線上的信號是微處理器和PIC之間的PBus信號交換規(guī)約的一部分,所以PIC必須保持這些位線上的狀態(tài)。然而,僅僅將影響這些線的存儲元件脫離掃描通路是不夠的,這是由于讀或?qū)戇@些線也將影響診斷。
圖4示出了必要時在進行掃描期間同時提供固定的輸出時如何全面地掃描PIC。圖4示出了一位存儲元件80、N位存儲元件82、M位鎖存器81、K位2對1多路復(fù)用器86、變換器90和N輸出驅(qū)動器92。對于不同的實施例,其實際的結(jié)構(gòu)是可以變化的,但必要特征是相同的。例如,為清楚起見,存儲元件82被畫出單個器件,在一些PIC中,存儲元件82分散在整個PIC中。
在圖4的例子中,存儲元件80將在PIC正常操作期間輸出的輸出允許信號輸出至鎖存器84,鎖存器84在施加到其允許(E)輸入端上的信號為低(有效)時,將其輸入輸出至輸出驅(qū)動器92的允許輸入端。存儲元件82將N信號輸出至多路復(fù)用器86(K信號)或直接輸出至輸出驅(qū)動器92(M信號)。當在多路復(fù)用器86的選擇(S)輸入端沒有建立選擇信號(即為假或“0”)時,進入多路復(fù)用器86的K信號是耦合到PBus的控制線。當鎖存器84的E輸入端為假時,鎖存器84將其輸入鎖存在輸出端上,當建立了多路復(fù)用器86的S輸入信號(選擇輸入端設(shè)置成“1”)時,多路復(fù)用器86從其“1”輸入端輸入預(yù)先選擇的一組常數(shù),并將它們輸出至PBus的K條控制線上。
現(xiàn)在描述圖4所示的電路的使用,在掃描期間,PBus不應(yīng)有效。因此,掃描期間被驅(qū)動的任何PBus應(yīng)當更多路復(fù)用器86輸入的K線中的一條。表1所示的信號的例子,這些信號值在掃描期間總是相等的。因此,表1的第一列列出了存儲元件82到多路復(fù)用器86“0”輸入端的K線上的一部分信號,第二列示出了施加到多路復(fù)用器86“1”輸入端上的常數(shù)。
在PIC中,至少一個存儲元件(觸發(fā)器)包含有一位,以指示PIC是否是當前總線主控器。作為圖示,假設(shè)該位存儲存儲在元件80中。在掃描開始時,掃描信號線被設(shè)置成真,使鎖存器84的E輸入端變?yōu)榧伲瑢⒃撐绘i存在與輸出驅(qū)動器92的允許輸入端連接的線94上。順便提一下,允許輸入端可以向輸出驅(qū)動器92的各位扇出(fanout)。另外,K常數(shù)位也輸出到PBus上。
對于圖4的結(jié)構(gòu),除了鎖存器84外,PIC的所有存儲元件均可掃描。由于在進行掃描時鎖存器84僅僅反射存儲元件80中的內(nèi)容,因此,這并不是一個問題。請注意,存儲元件80和82是可掃描的。圖4示出了這些元件,它們在掃描通路上。掃描通路從Mbus一直運行到掃描通路上的各存儲元件,而存儲元件80和82可以處于掃描通路的任意位置上。另外,為了能進行全面的掃描,由于狀態(tài)機52至少包含三位存儲器以記錄當前狀態(tài)(當前狀態(tài)是6個值之一),所以其本身也是可掃描的。
上面描述的描述僅僅是例子,并不是限制。本技術(shù)領(lǐng)域的熟練人員看了揭示的內(nèi)容可以對本發(fā)明的許多改動就變得很明顯了。因此,本發(fā)明的范圍不應(yīng)參照上述說明進行限定,而應(yīng)參照所附的權(quán)利要求書進行限定。
權(quán)利要求
1.一種診斷系統(tǒng),用于診斷數(shù)字計算機內(nèi)的電路元件的狀態(tài),該計算機內(nèi)的微處理器的內(nèi)部狀態(tài)不能用診斷系統(tǒng)進行控制,其特征在于診斷系統(tǒng)包含多個可掃描處理器電路;通過處理器總線連接到微處理器上、并也連接到所述多個可掃描處理器電路上的處理器接口電路,其中,所述處理器接口電路使用預(yù)定的總線規(guī)約經(jīng)所述處理器總線與微處理器部線相連;與所述多個可掃描處理器電路和所述處理器接口電路相連的掃描控制器,其中,所述掃描控制器能讀出和改變所述多個可掃描處理器電路和所述處理器接口電路的內(nèi)部狀態(tài);由所述掃描控制器向所述處理器接口電路提供維持請求信號的第一信號裝置;由所述處理器接口電路向所述掃描控制器提供維持準許信號的第二信號裝置;和在所述處理器接口電路內(nèi)的與所述處理器總線相連的裝置,用于所述處理器接口電路的內(nèi)部狀態(tài)的改變違反了所述預(yù)定的總線規(guī)約時不建立所述的維持準許信號。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于,它進一步包含在所述處理器接口電路和所述可掃描處理器電路之間的內(nèi)部總線;在所述處理器接口電路內(nèi)的跟蹤診斷狀態(tài)的第一狀態(tài)機;在所述處理器接口電路內(nèi)的指示還未建立所述處理器總線的第二狀態(tài)機,所述第二狀態(tài)機由所述第一狀態(tài)機的第一信號控制,所述第一狀態(tài)機的第一信號指示所述診斷狀態(tài)在所述處理器總線空閑之后也變成空閑狀態(tài);和在所述處理器接口電路內(nèi)的指示所述內(nèi)部總線尚未建立的第三狀態(tài),所述第三狀態(tài)機由所述第一狀態(tài)機的第二信號控制,所述第一狀態(tài)機的第二信號指示在所述內(nèi)部總線空閑之后所述診斷狀態(tài)進入空閑狀態(tài)。
3.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述維持請求信號包含請求信號和請求類型信號,所述維持類型信號請求掃描或者總線步進,所述處理器接口電路包含響應(yīng)所述維持類型信號的掃描邏輯電路和總線步進邏輯電路。
4.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述多個可掃描處理器電路、所述處理器接口電路和所述掃描控制器是獨立的集成電路芯片,安裝在帶有微處理器的處理器板上。
5.一種診斷可掃描電路的方法,所述可掃描電路連接在包括不可掃描的電路元件的電路內(nèi),其特征在于,所述方法包括用一已知的接口將不可掃描的電路元件與可掃描元件隔開,所述已知的接口把不可掃描的電路元件連接到可掃描接口元件上;建立第一信號,請求診斷,所述第一信號輸入到所述可掃描接口元件上;在處理的總線周期內(nèi)等待完成所述已知接口;在接口處于一固定狀態(tài)期間,保持由可掃描的接口元件輸出的控制信號,所述的固定狀態(tài)是不可掃描電路元件的這樣選擇的一個狀態(tài),使得在掃描所述可掃描接口元件時,所述接口上的不固定的信號不是不受控制地影響不可掃描電路元件的狀態(tài)。
6.一種具有可掃描處理器電路和非可掃描微處理器的數(shù)字處理器系統(tǒng),其特征在包含第一邏輯電路,處理器總線具有進行包含總線步進的預(yù)定的信號交換的預(yù)定的總線規(guī)約,所述處理器總線把微處理器連接到可掃描處理器電路上,所述第一邏輯電路與可掃描處理器接口電路相連,所述可掃描處理器接口電路與所述處理器總線相連,所述第一邏輯電路對處理器總線進行總線步進,以使所述可掃描處理器電路可在總線步進之間被掃描,而不違反所述總線規(guī)約;第二邏輯電路,與可掃描處理器電路相連,至少使一個掃描電路單步步進;和第三邏輯電路,與第一和第二邏輯電路相連,使所述第一和第二邏輯電路可以包括在通過可掃描處理器電路的掃描通路內(nèi)。
全文摘要
本發(fā)明描述了一種診斷電路元件狀態(tài)的診斷系統(tǒng),可以掃描可掃描電路而不干擾違反總線規(guī)約的不可掃描電路的狀態(tài),不可掃描器件連接在該總線上。處理器接口電路也是可掃描的,它包括對總線起作用的存儲元件,防止在總線被使用時進行掃描。通過使用從掃描控制輸出到處理器接口電路的維持請求信號和從處理器接口電路輸出到掃描控制器的一個或多個維持準許信號來防止掃描操作。
文檔編號G06F11/22GK1102895SQ9410814
公開日1995年5月24日 申請日期1994年7月1日 優(yōu)先權(quán)日1993年7月1日
發(fā)明者米贊·穆罕默德·拉赫曼, 弗雷德·C·薩貝尼克, 杰夫·A·斯普勞斯 申請人:協(xié)力計算機股份有限公司