運用邏輯分析儀定位出錯波形數(shù)據(jù)的方法主要有兩種方式,一種是通過抓取運行過程中大量的數(shù)據(jù),然后在這些數(shù)據(jù)中通過其他方法來查找出錯誤點的位置,該方法費時費力,而且受制于邏輯分析儀存儲容量,并不一定每次都可以捕捉到目標波形數(shù)據(jù);另一種是通過觸發(fā)的方式在特定波形數(shù)據(jù)到來時開始捕捉數(shù)據(jù),從而地定位目標波形數(shù)據(jù)?! ?/div>
觸發(fā)的概念zui初出現(xiàn)在模擬示波器上,示波器在設置的特定波形的信號到來時停止采集,并將波形繪制在屏幕上。邏輯分析儀用于分析數(shù)字系統(tǒng)時沿用了該概念?! ?/div>
數(shù)字系統(tǒng)在運行過程中,大多數(shù)情況下數(shù)據(jù)是連續(xù)不斷的,邏輯分析儀要顯示觀測的數(shù)據(jù)必需被存儲下來,而邏輯分析儀的儲存深度畢竟有限,這相當于在傳輸帶上抽取一定的數(shù)據(jù),抽取的數(shù)據(jù)量取決于邏輯分析儀的存儲深度。通過觸發(fā)的方式,在特定波形數(shù)據(jù)信號產生的條件下,觀測與其相關的信號在該條件產生的前或(和)后時刻的狀態(tài)。直觀表現(xiàn)就是觸發(fā)位置的設置。如果觸發(fā)位置設置為跟蹤觸發(fā)開始,則存儲器在觸發(fā)事件發(fā)生時開始儲存采集到的數(shù)據(jù),直到存儲器滿;如果選擇跟蹤觸發(fā)結束,則觸發(fā)事件發(fā)生前存儲器一直存儲采集到的連續(xù)數(shù)據(jù),直到觸發(fā)時停止存儲,當存儲器滿而觸發(fā)事件尚未發(fā)生時新數(shù)據(jù)將自動覆蓋zui早存儲的數(shù)據(jù)
邏輯分析儀的存儲
邏輯分析儀結構中,包含一個存儲控制單元,其中存儲器的大小就表示了邏輯分析儀的存儲深度?,F(xiàn)代邏輯分析儀存儲數(shù)據(jù)的帶寬大多都非常巨大,例如廣州致遠電子有限公司的LAB6052邏輯分析儀的存儲帶寬為500MSps×32bit即16Gbps,而無論是數(shù)據(jù)傳輸(USB2.0數(shù)據(jù)速率為480Mbps)還是數(shù)據(jù)分析(PC軟件)過程,都無法實時完成,因此,邏輯分析儀只能將數(shù)據(jù)先暫存在存儲器中,然后再交給分析器分析。
如果需要不間斷的捕捉數(shù)據(jù)流,則要求邏輯分析儀有足夠大的存儲器以便記錄整個事件。存儲深度與采樣速度密切相關,您所需要的存儲深度取決于要測量的總時間跨度和所要求的時間分辨率,單次測量的時間越長、采樣頻率越高所需求的存儲深度就越大。
在傳統(tǒng)模式下,存儲深度×采樣分辨率=采樣時間,這意味著在保證采樣分辨率的前提下,大的存儲深度直接提高了單次采樣時間,即能觀察分析更多的波形數(shù)據(jù);而在保證采樣時間的條件下,則可以提高采樣頻率,觀察到更真實的信號。
正確選擇和使用邏輯分析儀
一、邏輯分析儀的發(fā)展
自20世紀70 年代初研制成微處理器,出現(xiàn)4位和8位總線,傳統(tǒng)示波器的雙通道輸入無法滿足8位字節(jié)的觀察。微處理器和存儲器的測試需要不同于時域和頻域儀器。數(shù)域測試儀器應運而生。HP公司推出狀態(tài)分析儀和Biomation公司推出定時分析儀(兩者zui初很不相同)之后不久,用戶開始接受這種數(shù)域測試儀器作為zui終解決數(shù)字電路測試的手段,不久狀態(tài)分析儀與定時分析儀合并成邏輯分析儀?! ?/span>
20世紀80 年代后期,邏輯分析儀變得更加復雜,當然使用起來也就更加困難。例如,引入多電平樹形觸發(fā),以應付條件語句如IF、THEN、ELSE等復雜事件。這類組合觸發(fā)必然更加靈活,同時對大多數(shù)用戶來說就不是那樣容易掌握了?! ?/span>
邏輯分析儀的探頭日益顯得重要。需用夾子夾住穿孔式元件上的16根引腳和雙列直插式元件上的只有0.1″間隙的引腳時,就出現(xiàn)探頭問題。今天的邏輯分析儀提供幾百個工作在200MHz頻率上的通道信號連接就是個現(xiàn)實問題。適配器、夾子和輔助爪鉤等多種多樣,但是的辦法的是設計一種廉價的測試夾具,邏輯分析儀直接連接到夾具上,形成可靠和緊湊的接觸?! ?/span>
今天的發(fā)展趨勢
邏輯分析儀的基本取向近年來在計算機與儀器的不斷融合中找到了解決的辦法。Tektronix公司TLA600系列邏輯分析儀著重解決導向和發(fā)展能力,亦即儀器如何動作和如何構建有特色的結構。導向采用微軟的Windows接口,它非常容易驅動。改進信號發(fā)現(xiàn)能力必然涉及到儀器結構的變動。在所有要處理的數(shù)據(jù)中著重處理與時間有關聯(lián)的數(shù)據(jù),不同類型的信息采用多窗口顯示。例如,對于微處理器來說,能同時觀察定時和狀態(tài)以及反匯編源碼,而且各窗口上的光標彼此跟蹤相連?! ?/span>
關于觸發(fā),總是傳統(tǒng)邏輯分析儀中的難題。TLA600系列邏輯分析儀為用戶提供觸發(fā)庫,使復雜觸發(fā)事件的設置簡單化,保證你精力集中解決測試問題上,而不必花時間去調整邏輯分析儀的觸發(fā)設置。該庫中包含有許多易于掌握的觸發(fā)設置,可以作為通常需要修改的觸發(fā)起始點。需要特殊的觸發(fā)能力只是問題的一部分。除了由錯誤事件直接觸發(fā)外,用戶還希望從過去的時段去觀察信號,找出造成錯誤的根源和它前后的關系。精細的觸發(fā)和深存儲器可提高超前觸發(fā)能力?! ?/span>
在PC機平臺上使用Windows,除了為廣大用戶提供了許多熟知的好處之外,只要給定正確的軟件和相關工具,即可通過互聯(lián)網(wǎng)進行遠程控制,從目標文件格式中提取源碼和符號,支持微軟公司的CMO/DCOM標準,而且處理器可運行各種控制操作。
二、邏輯分析儀的選擇
如果數(shù)字電路出現(xiàn)故障,我們一般優(yōu)先就考慮使用邏輯分析儀來檢查數(shù)字電路的完整性,不難發(fā)現(xiàn)存在的故障;但是在其他情況下你是否考慮到使用邏輯分析儀呢?譬如說:*點如何觀察測試系統(tǒng)在執(zhí)行我們事先編制好的程序時,是不是真正地在按照我們設計好的程序來執(zhí)行呢?如果我們向系統(tǒng)寫入的是(MOV A,B)而系統(tǒng)則是執(zhí)行的(ADD A,B),那會造成什么樣的后果?第二點:怎么樣真正地監(jiān)測軟件系統(tǒng)的實際工作狀態(tài),而不是用DEBUG等方式進行設置斷點后,查看預先設定的某些變量或內存中的數(shù)據(jù)是我們預先想得到的值。在這里我們有第三、第四等等很多問題有待解決?! ?/span>
通常我們將數(shù)字系統(tǒng)分成硬件部分和軟件部分,在研發(fā)設計這些系統(tǒng)時,我們有很多事情要做,譬如硬件電路的初步設計、軟件的方案制定和初步編制、硬件電路的調試、軟件的調試、以及zui終的系統(tǒng)的定型等等工作,在這些工作中幾乎每一步工作都要邏輯分析儀的幫助,但是鑒于每個單位的經濟實力和人員狀況不同,并且在很多系統(tǒng)的使用中都不是要把以上的每個部分都進行一遍,這樣我們就把邏輯分析儀的使用分成以下幾個層次:
*個層次:只要查看硬件系統(tǒng)的一些常見的故障,例如時鐘信號和其他信號的波形、信號中是否存在嚴重影響系統(tǒng)的毛刺信號等故障;
第二個層次:要對硬件系統(tǒng)的各個信號的時序進行很好的分析,以便地利用系統(tǒng)資源,消除由定時分析能夠分析出的一些故障;
第三個層次:要對硬件對軟件的執(zhí)行情況的分析,以確保寫入的程序被硬件系統(tǒng)完整地執(zhí)行;
第四個層次:需要實時地監(jiān)測軟件的執(zhí)行情況,對軟件進行實時地調試。
第五個層次:需要進行現(xiàn)有客戶系統(tǒng)的軟件和硬件系統(tǒng)性的解剖分析,達到我們對現(xiàn)有客戶系統(tǒng)的軟件和硬件系統(tǒng)全面透徹地了解和掌握的功能?! ?/div>
對以上的幾個層次的要求,我們可以看出,他們并不都需要很的邏輯分析儀,對于*層次的使用者,他們甚至用一臺功能比較好的示波器就可以解決問題,針對以上的幾個使用層次,在選擇儀器時可以選用相應的儀器。實際上邏輯分析儀也有幾個層次,他們有:
1、 普通2~4通道的數(shù)字存儲器,例如TDS3000系列(加上TDS3TRG觸發(fā)模塊),利用它的一些觸發(fā)功能(例如脈沖寬度觸發(fā)、欠幅脈沖觸發(fā)、各個通道之間的一定的與、或、與或、異或關系的觸發(fā))就可以找到我們希望看到的信號,發(fā)現(xiàn)并排除一些故障,況且示波器的功能還可以作為其他使用,在這里我們只不過用了一臺示波器的附加功能,可以說這種方式是zui節(jié)省的方式?! ?/span>
2、當示波器的通道數(shù)不夠時,也可以選用一些帶有簡單的定時分析功能的多通道定時分析儀器,如早期的邏輯分析儀和現(xiàn)在市面上還有的混合信號示波器,如Agilent的546××D示波器?! ?/span>
3、一些功能比較簡單,速度不是特別快的的計算機插卡式,基于Windows、絕大部分功能都由軟件來完成的虛擬儀器,這類產品在國內的很多廠家都有生產。
4、采樣速率、觸發(fā)功能、分析功能都很強大的不可擴展的固定式整機。例TLA600系列。
5、功能更強擴展性更好的模塊化插卡式整機;對不同的用戶,可以針對需要,選擇不同檔次的儀器。
邏輯分析儀的一些技術指標
1、邏輯分析儀的通道數(shù)
在需要邏輯分析儀的地方,要對一個系統(tǒng)進行全面地分析,就應當把所有應當觀測的信號全部引入邏輯分析儀當中,這樣邏輯分析儀的通道數(shù)至少應當是:被測系統(tǒng)的字長(數(shù)字總線數(shù))+被測系統(tǒng)的控制總線數(shù)+時鐘線數(shù)。這樣對于一個16位機系統(tǒng),就至少需要68個通道。現(xiàn)在幾個廠家的主流產品的通道數(shù)多達340通道以上。例Tektronix等。
2、定時采樣速率
在定時采樣分析時,要有足夠的 定時分辨率,就應當足夠高的定時分析采樣速率,我們應當知道,并不是只有高速系統(tǒng)才需要高的采樣速率(見下表)現(xiàn)在的主流產品的采樣速率高達2Gs/S,在這個速率下,我們可以看到0.5ps時間上的細節(jié)。
以下是一些很常見的芯片的工作頻率和建立/保持時間的列表,我們可以看出,即使它們的工作頻率很低,但在時間分析(Timing)中要求的分辨率也很高。
3、狀態(tài)分析速率
在狀態(tài)分析時,邏輯分析儀采樣基準時鐘就用被測試對象的工作時鐘(邏輯分析儀的外部時鐘)這個時鐘的zui高速率就是邏輯分析儀的高狀態(tài)分析速率。也就是說,該邏輯分析儀可以分析的系統(tǒng)zui快的工作頻率。現(xiàn)在的主流產品的定時分析速率在100MHz,zui高可高達300MHz甚至更高。
4、邏輯分析儀的每通道的內存長度
邏輯分析儀的內存是用于存儲它所采樣的數(shù)據(jù),以用于對比、分析、轉換(譬如將其所捕捉到的信號轉換成非二進制信號【匯編語言、C語言 、C++ 等】,等在選擇內存長度時的基準是“大于我們即將觀測的系統(tǒng)可以進行zui大分割后的zui大塊的長度。
5、邏輯分析儀的探頭
邏輯分析儀通過探頭與被測器件連接,探頭起著信號接口的作用,在保持信號完整性中占有重要位置。邏輯分析儀與數(shù)字示波器不同,雖然相對上下限值的幅度變化并不重要,但幅度失真一定會轉換成定時誤差。邏輯分析儀具有幾十至幾百通道的探頭其頻率響應從幾十至幾百MHz,保證各路探頭的相對延時zui小和保持幅度的失真較低。這是表征邏輯分析儀探頭性能的關鍵參數(shù)。Agilent公司的無源探頭和Tektronix公司的有源探頭代表性,屬于邏輯分析儀的探頭。
邏輯分析儀的強項在于能洞察許多信道中信號的定時關系??上У氖?,如果各個通道之間略有差別便會產生通道的定時偏差,在某些型號的邏輯分析儀里,這種偏差能減小到zui小,但是仍有殘留值存在。通用邏輯分析儀,如Tektronix公司的TLA600型或Agilent公司的HP16800型,在所有通道中的時間偏差約為1ns。因而探頭非常重要,詳見本站“測試附件及連接探頭”。
a)探頭的阻性負載,也就是探頭的接入系統(tǒng)中以后對系統(tǒng)電流的分流作用的大小,在數(shù)字系統(tǒng)中,系統(tǒng)的電流負載能力一般在幾個KΩ以上,分流效應對系統(tǒng)的影響一般可以忽略,現(xiàn)在流行的幾種長邏輯分析儀探頭的阻抗一般在20~200KΩ之間。
b)探頭的容性負載:容性負載就是探頭接入系統(tǒng)時,探頭的等效電容,這個值一般在1~30PF之間,在現(xiàn)在的高速系統(tǒng)中,容性負載對電路的影響遠遠大于阻性負載,如果這個值太大,將會直接影響整個系統(tǒng)中的信號“沿”的形狀改變整個電路的性質,改變邏輯分析儀對系統(tǒng)觀測的實時性,導致我們看到的并不是系統(tǒng)原有的特性。
c)探頭的易用性:是指探頭接入系統(tǒng)時的難易程度,隨著芯片封裝的密度越來越高,出現(xiàn)了BGA、QFP、TQFP、PLCC、SOP等各種各樣的封裝形式,IC的腳間距zui小的已達到0.3mm以下,要很好的將信號引出,特別是BGA封裝,確實有困難,并且分立器件的尺寸也越來越小,典型的已達到0.5mm×0.8mm。
d) 與現(xiàn)有電路板上的調試部分的兼容性。
6、系統(tǒng)的開放性:隨著數(shù)據(jù)共享的呼聲越來越高,我們所使用的系統(tǒng)的開放性就越來越重要,現(xiàn)在的邏輯分析儀的操作系統(tǒng)也由過去的系統(tǒng)發(fā)展到使用Windows介面,這樣我們在使用時很方便。
小結
如果在你的工作中有數(shù)字邏輯信號,你就有機會使用邏輯分析儀。因此應選好一種邏輯分析儀,既符合所用的功能,又不太超越所需的功能。用戶多半會找一種容易操作的儀器,它在功能控制上操作步驟較少,菜單種類也不多,而且不太復雜?! ?/div>
從另一方面說,如果需要用zui快速度的和zui大型的分析能力很強的邏輯分析儀,已有現(xiàn)成的解決方案。這種新穎儀器幾乎不會出現(xiàn)通道對通道的延時以及探頭的負載影響。如果你稍有疏漏,則可能要花費幾萬美元的學費才能取得經驗。
確實能捕獲到信號才是*重要的事。當你知道正在捕獲的 數(shù)據(jù)是有用的數(shù)據(jù)時就靠邏輯分析儀能力的發(fā)揮了。
何時需要使用邏輯分析儀
邏輯分析儀是數(shù)字設計驗證與調試過程中*zui出色的工具,它能夠檢驗數(shù)字電路是否正常工作,并幫助用戶查找并排除故障。它每次可捕獲并顯示多個信號,分析這些信號的時間關系和邏輯關系;對于調試難以捕獲的、間斷性故障,某些邏輯分析儀可以檢測低頻瞬態(tài)干擾,以及是否違反建立、保持時間。在軟硬件系統(tǒng)集成中,邏輯分析儀可以跟蹤嵌入軟件的執(zhí)行情況,并分析程序執(zhí)行的效率,便于系統(tǒng)zui后的優(yōu)化。另外,某些邏輯分析儀可將源代碼與設計中的特定硬件活動相互關聯(lián)。邏輯分析儀可將源代碼與設計中的特定硬件活動相互關聯(lián)。
當您需要完成下列工作時,請使用邏輯分析儀:
·調試并檢驗數(shù)字系統(tǒng)的運行;
·同時跟蹤并使多個數(shù)字信號相關聯(lián);
·檢驗并分析總線中違反時限的操作以及瞬變狀態(tài);
·跟蹤嵌入軟件的執(zhí)行情況。