《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > 邏輯分析儀在數(shù)字電路測試中的觸發(fā)選擇
邏輯分析儀在數(shù)字電路測試中的觸發(fā)選擇
現(xiàn)代電子技術(shù)
摘要: 隨著數(shù)字技術(shù)的日新月異,,在數(shù)字系統(tǒng),特別是在計(jì)算機(jī)系統(tǒng)的研制,、調(diào)試和故障診斷過程中,,由模擬系統(tǒng)的時域和頻域分析發(fā)展起來的傳統(tǒng)測試方法與測試儀器往往難以奏效,,于是新的數(shù)據(jù)域測試的理論、方法和相應(yīng)的測試儀器不斷涌現(xiàn),。邏輯分析儀作為數(shù)據(jù)域測試儀器中最有用,、最有代表性的一種儀器,性能與功能日益完善,,已成為調(diào)試與研制復(fù)雜數(shù)字系統(tǒng),,尤其是汁算機(jī)系統(tǒng)的強(qiáng)有力工具。
Abstract:
Key words :

1 引 言

  隨著數(shù)字技術(shù)的日新月異,,在數(shù)字系統(tǒng),,特別是在計(jì)算機(jī)系統(tǒng)的研制、調(diào)試和故障診斷過程中,,由模擬系統(tǒng)的時域和頻域分析發(fā)展起來的傳統(tǒng)測試方法與測試儀器往往難以奏效,,于是新的數(shù)據(jù)域測試的理論,、方法和相應(yīng)的測試儀器不斷涌現(xiàn)。分析儀">邏輯分析儀作為數(shù)據(jù)域測試儀器中最有用,、最有代表性的一種儀器,,性能與功能日益完善,已成為調(diào)試與研制復(fù)雜數(shù)字系統(tǒng),,尤其是汁算機(jī)系統(tǒng)的強(qiáng)有力工具,。

  在邏輯分析儀中,利用觸發(fā)字或觸發(fā)事件的序列來控制對數(shù)據(jù)的存儲和顯示,,以便住數(shù)據(jù)流中挑選一個恰當(dāng)?shù)挠^察窗口,。觸發(fā)能力是邏輯分析儀最重要的指標(biāo),特別是在用邏輯狀態(tài)分析儀跟蹤復(fù)雜程序時,,強(qiáng)的觸發(fā)功能以及合理的觸發(fā)條件設(shè)置可以使儀器在龐大而復(fù)雜的程序流中迅速找到要跟蹤的目標(biāo),,分析發(fā)生故障、錯誤的部位及性質(zhì),,這將大大縮短軟件和硬件的開發(fā),、調(diào)試周期,產(chǎn)生良好的經(jīng)濟(jì)效益,。

  2 邏輯狀態(tài)分析儀的觸發(fā)選擇

  2.1 觸發(fā)字的選擇

  用邏輯分析儀觀察大量數(shù)據(jù)的方法是設(shè)置特定的觀察起點(diǎn),、終點(diǎn)或與被分析數(shù)據(jù)有一定關(guān)系的某一個參考點(diǎn),這個特定的點(diǎn)在數(shù)據(jù)流中一旦出現(xiàn),,便形成一次觸發(fā)事件,,相應(yīng)地把數(shù)據(jù)存入存儲器,這個過程稱 為觸發(fā),。這個特定的參考點(diǎn)并不是一個模擬信號參數(shù),,而是一個數(shù)據(jù)字,也可能是字或事件的序列,,總之是一個多通道的邏輯組合,,這個數(shù)據(jù)字稱為觸發(fā)字。由字或事件序列構(gòu)成的觸發(fā)稱為序列觸發(fā),。簡言之,,觸發(fā)字是一個用于選擇數(shù)據(jù)窗口的數(shù)據(jù)字。

  利用觸發(fā)字進(jìn)行觸發(fā),,是邏輯分析儀最簡單,、最基本的觸發(fā)方式,也是復(fù)雜觸發(fā)方式中的重要內(nèi)容,。由于邏輯狀態(tài)分析儀常用來分析軟件,,因此往往選計(jì)算機(jī)地址線或數(shù)據(jù)線上特定的數(shù)據(jù)字作為觸發(fā)字,。有時也利用一些控制信號與地址或數(shù)據(jù)共同組成觸發(fā)字,。例如,,在觀測某程序時,把M,,MREQ和RD均有效與某存儲器地址組合作觸發(fā)字,,說明是在取指周期中對該地址中存的指令機(jī)器碼取指時,觸發(fā)字有效,。與上述情況不同,,在邏輯定時分析儀中常用控制信號、I/O信號,、外部設(shè)備口地址或與外設(shè)有關(guān)的信號及其組合作為觸發(fā)字,,不一定用地址、數(shù)據(jù)等完整的數(shù)據(jù)字來觸發(fā),。

  觸發(fā)字的選擇是確定顯示窗口位置的基礎(chǔ),。如果選擇不當(dāng),顯示內(nèi)容可能不說明問題甚至沒有顯示,。恰當(dāng)?shù)挠|發(fā)字可以顯示欲觀測的內(nèi)容或很快逼近待分析的故障點(diǎn),。在有故障的計(jì)算機(jī)中,由于程序不能正常運(yùn)行,,觸發(fā)字的設(shè)置有時會感到困難,。為捕捉到程序在何處運(yùn)行,有時把觸發(fā)字的各位均設(shè)置為任意項(xiàng),,用連續(xù)跟蹤方式或從多個單次跟蹤的顯示結(jié)果中尋找感興趣的內(nèi)容,,還可以從這種內(nèi)容中挑選觸發(fā)字進(jìn)一步分析。

  在觸發(fā)字設(shè)定以后,,必須保證邏輯分析儀能采集到他才能觸發(fā),。但是被跟蹤的程序往往是非重復(fù)性的,因此通常應(yīng)在邏輯分析儀跟蹤后再啟動被跟蹤的程序,。在被測系統(tǒng)中按一下復(fù)位鍵或重新上電后再啟動,,都能保證在程序第一次經(jīng)過觸發(fā)字時立即被識別。如果先啟動程序,,后令邏輯分析儀跟蹤,,則可能觸發(fā)字所在程序己經(jīng)運(yùn)行過了,邏輯分析儀就會沒有顯示,,智能邏輯分析儀大多還會提示“未找到觸發(fā)字”,。

  2.2 觸發(fā)位置的選擇和延遲觸發(fā)

  邏輯分析儀觸發(fā)位置的選擇,有觸發(fā)開始跟蹤,、中心觸發(fā)和觸發(fā)終止跟蹤,。在沒有延遲的情況下,他們使觸發(fā)點(diǎn)分別處于數(shù)據(jù)窗口的開始、中心和結(jié)尾部分,,具體的選擇總是保證欲觀測的數(shù)據(jù)處于顯示窗口之內(nèi),。例如,要觀測觸發(fā)以后的數(shù)據(jù),,則可在不加延遲的情況下使用觸發(fā)開始跟蹤,。但是即使在這種情況下,有時還是希望觀測少量觸發(fā)以前的數(shù)據(jù),,所以不少內(nèi)存容量較大的邏輯分析儀在觸發(fā)開始跟蹤的情況下,,也要存儲、顯示觸發(fā)前的一些數(shù)據(jù),。當(dāng)然,,這時大量的數(shù)據(jù)是處在觸發(fā)點(diǎn)后面的。與此類似,,在觸發(fā)終止跟蹤的情況下,,即使不加延遲,有些邏輯分析儀也要存儲和顯示觸發(fā)點(diǎn)后面的一些數(shù)據(jù),。

  延遲觸發(fā)分為時鐘延遲和事件延遲兩種,。

  時鐘延遲是在觸發(fā)字被辨認(rèn)后,延遲所設(shè)定的時鐘數(shù)后再觸發(fā),。他最常用于下列兩種情況:

  (1) 被跟蹤的程序較長而邏輯分析儀內(nèi)存容量有限,,則可在不改變觸發(fā)字的情況下通過改變延遲量進(jìn)行所謂“多趟”跟蹤,分段跟蹤程序,。

  (2) 用來調(diào)整觸發(fā)字在數(shù)據(jù)窗口中的位置,,特別是對沒有中心觸發(fā)和觸發(fā)開始跟蹤的邏輯分析儀,用延遲觸發(fā)與觸發(fā)終止跟蹤配合,,可以產(chǎn)生這兩種功能,。

  事件延遲的一個重要用途就是分析循環(huán)嵌套一類的程序。特別是軟件延時程序,,其循環(huán)量非常大,,在用邏輯分析儀實(shí)時跟蹤程序的執(zhí)行過程時,往往沒有必要重復(fù)跟蹤這些循環(huán),,這時可用事件延遲把他跳過去,。

  2.3 多種觸發(fā)功能的應(yīng)用

  除了簡單地利用觸發(fā)字進(jìn)行觸發(fā)以外,現(xiàn)代邏輯分析儀還具有豐富的其他觸發(fā)功能,。利用這些功能及其組合,,能大大加強(qiáng)邏輯分析儀從數(shù)據(jù)流中挑選數(shù)據(jù)窗口的能力。

  2.3.1 “與”,、“或”,、“非”觸發(fā)

  利用信號或搜索區(qū)間和觸發(fā)條件相“與”的關(guān)系,,能對觸發(fā)條件進(jìn)行約束,使觸發(fā)點(diǎn)更準(zhǔn)確地指向欲觀測的數(shù)據(jù)窗口,。實(shí)際上一個觸發(fā)字包含了多個信號,,也可以看成這些信號是相“與”的關(guān)系。例如,,利用某存儲器地址作觸發(fā)字,但只想在該地址寫入內(nèi)容時觸發(fā),,則可把控制信號也作為觸發(fā)字的一部分,,在觸發(fā)字中使存儲器請求和寫信號均有效。觸發(fā)限定也是一種常用的相“與”關(guān)系,,只有滿足了限定條件,,所設(shè)定的觸發(fā)字或觸發(fā)事件序列才能進(jìn)行觸發(fā)。在一些智能邏輯分析儀中還可以設(shè)置觸發(fā)窗口,,規(guī)定只在某確定的起點(diǎn)和終點(diǎn)之間尋找觸發(fā)條件,,這也是一種相“與”的關(guān)系。當(dāng)程序有可能從幾種不同的路徑進(jìn)入觸發(fā)點(diǎn)時,,利用相“與”的關(guān)系往往可以選擇一條惟一的路徑,,增加對觸發(fā)點(diǎn)的選擇性。

 

  邏輯分析儀在采用“或”觸發(fā)功能時,,設(shè)置多個觸發(fā)字或觸發(fā)條件,,只要其中一個滿足即產(chǎn)生觸發(fā)。當(dāng)所跟蹤的程序有幾種可能的流向時,,如果對幾種可能的情況都想觀察,,則可以把每種人口處的地址設(shè)置成一個觸發(fā)字,利用“或”觸發(fā)功能來跟蹤,。這樣不管程序?qū)嶋H上流向什么方向都可以及時捕獲有關(guān)數(shù)據(jù),。

  如果在一定條件下檢測不到某個數(shù)據(jù)就產(chǎn)生觸發(fā)并進(jìn)入跟蹤狀態(tài),這種功能叫做“非”觸發(fā)功能,。在這種觸發(fā)方式下,,通常要設(shè)置兩個觸發(fā)字,前一個觸發(fā)字用來確定 后一個觸發(fā)字在數(shù)據(jù)流中的位置,。只有當(dāng)兩者不相同時,,邏輯分析儀才開始觸發(fā)跟蹤,否則將不進(jìn)行跟蹤,。“非”觸發(fā)對于診斷隨機(jī)性故障更為有效,。

  “與”、“或”,、“非”觸發(fā)功能可以混合使用,,也可以與其他觸發(fā)功能相互配合,、共同應(yīng)用,這給觸發(fā)點(diǎn)的選擇增加了很大靈活性,。

  2.3.2 序列觸發(fā)

  如果說單獨(dú)用一個觸發(fā)字或用外加觸發(fā)信號進(jìn)行觸發(fā)是最簡單的觸發(fā)方式,,那么序列觸發(fā)就是能適應(yīng)多種觸發(fā)要求的復(fù)雜觸發(fā)方式。通??梢园岩粋€觸發(fā)字或一種經(jīng)過“與”,、“或”、“非”操作的觸發(fā)條件作為一級觸發(fā)事件,。各觸發(fā)事件可以直接相連構(gòu)成事件序列,,也可以在各觸發(fā)事件問加入一定的時鐘延遲或事件延遲,構(gòu)成帶延遲的事件序列,。用這種事件序列進(jìn)行觸發(fā),,能跟蹤各種復(fù)雜的程序,對分析程序的分支,、跳轉(zhuǎn),、嵌套和循環(huán)都帶來很多方便。

  序列觸發(fā)可以和計(jì)數(shù),、計(jì)時功能配合應(yīng)用,,完成對事件的計(jì)數(shù)統(tǒng)計(jì)和對多種響應(yīng)時間、程序執(zhí)行時間等的計(jì)時功能,。

  序列觸發(fā)還常和復(fù)位功能配合,,以便在某種情況下對觸發(fā)條件的搜索復(fù)位,并重新開始辨認(rèn)觸發(fā)事件序列,。復(fù)位條件可以是執(zhí)行到或未執(zhí)行到某一程序地址,,也可以是時間或計(jì)數(shù)值超過了某給定數(shù)值。序列觸發(fā)與復(fù)位功能配合,,可進(jìn)一步增加對觸發(fā)點(diǎn)的選擇性,。

  圖1為用序列觸發(fā)分析復(fù)雜分支程序的例子。本例所示是要求只有在一個通路(即通道2)里順序滿足a,,b,,c,d條件之后,,邏輯分析儀才在e點(diǎn)進(jìn)行觸發(fā)跟蹤程序運(yùn)行情況,。在復(fù)雜分支程序中,多次執(zhí)行不同通路有時也能滿足序列觸發(fā)要求,。例如在圖1中,,第一次沿著通路1執(zhí)行,滿足了觸發(fā)條件a和b,,第二次沿著通路3執(zhí)行,,又滿足了觸發(fā)條件c,,c,e,。盡管兩次執(zhí)行結(jié)果也是按順序滿足a,,b,c,,d,,e五個條件,但若此時進(jìn)行跟蹤便會產(chǎn)生錯誤的結(jié)果,。為避免出現(xiàn)這類問題,,可以在通路出口處f點(diǎn)設(shè)置序列返回。如果在一個通路中沒有按順序找到所有觸發(fā)字,,只要出現(xiàn)返回點(diǎn)f,,就返回到起始狀態(tài)重新開始搜索觸發(fā)字,,以前已滿足的觸發(fā)字無效,。其工作過程如圖2所示。對于復(fù)雜程序的分析,,序列觸發(fā)是必不可少的功能,。


  3 邏輯定時分析儀的觸發(fā)選擇

  邏輯定時分析儀的觸發(fā)與邏輯狀態(tài)分析儀有很多相似之處。例如,,邏輯定時分析儀也常用觸發(fā)字觸發(fā),,可以對觸發(fā)字進(jìn)行限定或?qū)τ|發(fā)條件進(jìn)行“與”、“或”,、“非”運(yùn)算,,亦可使用外觸發(fā)。定時儀同樣可以使用序列觸發(fā),,在觸發(fā)字之后或者序列事件之間也允許使用時鐘延遲或事件延遲,。因?yàn)橛|發(fā)只影響窗口在數(shù)據(jù)流中的位置,并不影響觸發(fā)以后定時儀按等時間間隔采集和存儲數(shù)據(jù),,所以和邏輯狀態(tài)分析儀一樣,,他的觸發(fā)條件是很靈活的。甚至在延遲觸發(fā)中允許選用不等間隔出現(xiàn)的外時鐘做延遲時鐘,,一旦觸發(fā)后再用等時間間隔的內(nèi)時鐘進(jìn)行采樣,,依然可以保證采樣次數(shù)與時間成比例。

  邏輯定時分析儀和邏輯狀態(tài)分析儀在觸發(fā)方面的不同,,主要表現(xiàn)在兩個方面,,這就是毛刺觸發(fā)和觸發(fā)濾波。

  3.1 毛刺觸發(fā)

  邏輯定時分析儀經(jīng)常用來分析硬件,,而毛刺往往是造成硬件故障的重要原因,。由于毛刺的出現(xiàn)時間往往難以預(yù)料,,利用毛刺觸發(fā)功能捕獲毛刺出現(xiàn)前后的情況,就成為邏輯定時分析儀的重要功能,。

  毛刺觸發(fā)可以單獨(dú)使用,,也可以與其他觸發(fā)條件共同使用。設(shè)置毛刺觸發(fā)通常是按通道進(jìn)行,,即指定的若干個通道中任何一個出現(xiàn)了毛刺都進(jìn)行觸發(fā),。在與其他觸發(fā)條件共同使用時,存在毛刺與其他條件之間往往是相“與”的關(guān)系,。

  3.2 觸發(fā)濾波

  觸發(fā)濾波時間又稱為異步持續(xù)時間,。邏輯定時分析儀由于工作在異步狀態(tài),不可能對數(shù)據(jù)要求建立時間和保持時間,。但是,,有時由于一些瞬態(tài)現(xiàn)象、器件延時的微小差別,,或者信號中存在毛刺等原因,,均可能導(dǎo)致瞬間滿足觸發(fā)條件,產(chǎn)生誤觸發(fā),。這時,,對應(yīng)惟一的觸發(fā)條件,幾次觸發(fā)獲取的數(shù)據(jù)有可能不同,。

  利用觸發(fā)濾波可以調(diào)節(jié)異步持續(xù)時間的大小,,使觸發(fā)條件必須達(dá)到規(guī)定的時間才能產(chǎn)生觸發(fā),這樣就可以避免某些誤觸發(fā),。對于工作速度低,、時延大的系統(tǒng),異步持續(xù)時間可選得大一些,。

  當(dāng)對應(yīng)惟一的觸發(fā)條件,,各次觸發(fā)得到的顯示波形不同時,應(yīng)該考慮選擇恰當(dāng)?shù)漠惒匠掷m(xù)時間來消除一些不希望的觸發(fā),。

  4 結(jié) 語

  在電子測量領(lǐng)域,,數(shù)據(jù)域測量技術(shù)越來越顯示出其重要性,適時,、合理地使用邏輯分析儀,,能迅速有效地解決在數(shù)字電路系統(tǒng)方面遇到的一系列問題。本文僅從捕獲數(shù)據(jù)的關(guān)鍵一觸發(fā)條件設(shè)置方面進(jìn)行了闡述,,還有其他多方面的因素影響到數(shù)據(jù)的獲取與分析,,如:采樣頻率、存儲方式,、顯示方式等,。只有結(jié)合所使用邏輯分析儀的本身特性,,將以上各方面綜合考慮,合理設(shè)置條件和參數(shù),,才能快速捕捉有用信息,,解決數(shù)字電路硬件及軟件的分析問題。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。