如何利用邏輯分析儀來縮短嵌入式系統(tǒng)的開發(fā)時(shí)間
掃描二維碼
隨時(shí)隨地手機(jī)看文章
前言:
今日依據(jù)微控制器(MCU)和數(shù)字信號處理器(DSP)所設(shè)計(jì)的嵌入式系統(tǒng)功能是越來越復(fù)雜,其腳位數(shù)設(shè)計(jì)也越來越多,不過當(dāng)您需要數(shù)字設(shè)計(jì)的重要信息時(shí),也唯有設(shè)計(jì)復(fù)雜精密的邏輯分析儀才能處理先進(jìn)電子產(chǎn)業(yè)不斷增加的性能及復(fù)雜性。
所以使用邏輯分析儀通常是最佳(有時(shí)是唯一)的辦法;例如,若要觀測狀態(tài)模式中的邏輯,或在眾多的頻道中檢查時(shí)序關(guān)系,您就非得使用邏輯分析儀不可了。
目前還是有許多研發(fā)工程師依賴著其所熟悉的示波器,用來量測大量的數(shù)字信號和除錯(cuò)(Debug)復(fù)雜的數(shù)字電路設(shè)計(jì),也許您會(huì)覺得為什么不可以用示波器來量測,當(dāng)然可以,只是當(dāng)您使用邏輯分析儀來替代示波器量測和除錯(cuò)(Debug)數(shù)字的相關(guān)信號時(shí),您的研發(fā)時(shí)間將會(huì)大量的縮短,節(jié)省您寶貴的研發(fā)時(shí)間,現(xiàn)在您不用馬上相信我,但當(dāng)您看完下列說明后,相信您馬上會(huì)愛上邏輯分析儀!
量測通道:
在目前的新式微處理器和微控制器其設(shè)計(jì)的腳位數(shù)是越來越多,所以如果還是使用示波器(量測通道2~4CH)來觀察分析的話,那肯定會(huì)浪費(fèi)很多的研發(fā)時(shí)間,進(jìn)而造成新產(chǎn)品的上市時(shí)間的延長。以下舉例說明:假設(shè)有一微處理器(MCU)是20PIN的腳位數(shù),共有8個(gè)I/O腳位數(shù),當(dāng)工程師想要同一時(shí)間來觀查分析所有I/O腳之變化和相互間的關(guān)系;此時(shí)使用示波器就沒辦法辦到,因?yàn)槭静ㄆ髯疃嗑椭挥兴膫€(gè)量測通道,所以最多一次可以同時(shí)間觀察四個(gè)腳位的I/O變化,所以要觀察八個(gè)腳位的I/O變化,并不是用示波器看兩次,就可以達(dá)到,而且要相互間的關(guān)系也很難作判斷,我想幾乎所有工程師只要使用示波器用來量測此案例,一定都會(huì)非常苦惱,而且浪費(fèi)在此段的量測時(shí)間差不多是占整個(gè)研發(fā)周期1/4;但是假如工程師用邏輯分析儀來量測此案例時(shí),您知道會(huì)有多簡單嗎?因?yàn)檫壿嫹治鰞x擁有的量測通道從16~數(shù)百個(gè)不等(如圖一),邏輯分析儀可以一次將同一時(shí)間八個(gè)腳位的I/O變化和相互間的關(guān)系,顯示在同一窗口上,可以讓工程師很容易的去觀察分析,并發(fā)現(xiàn)相互間之差異性,如此,使用邏輯分析儀量測此案例,將會(huì)縮短1/5的研發(fā)周期。
也許您會(huì)認(rèn)為那么多的量測信道,怎么會(huì)記得哪一個(gè)通道量測哪一個(gè)腳位或是信號,關(guān)于這一點(diǎn)邏輯分析儀也幫您設(shè)想到了,您可以針對每個(gè)量測通道更改名稱,只要將通道名稱更改為您所量測的腳位或是信號名稱,哪怕您將此波形檔案儲存起來,等后續(xù)您還要再來分析此波形時(shí),也會(huì)很容易進(jìn)入分析狀況,不會(huì)完全搞不清楚狀況。
圖一 邏輯分析儀擁有多個(gè)量測通道
放大分析功能:
在目前的消費(fèi)性數(shù)字電子產(chǎn)品,其功能設(shè)計(jì)是越來越精良,也越來越復(fù)雜,且其所要求的質(zhì)量卻不會(huì)因?yàn)楣δ苄缘奶岣?,而降低產(chǎn)品質(zhì)量,反而是要求越來越高,所以研發(fā)工程師所面臨的問題,就是其所要觀察分析的波形數(shù)據(jù)長度越來越長,而且最好能把一個(gè)CYCLE程序的波形數(shù)據(jù)全部顯示出來,供工程師可以一次性的觀察分析波形數(shù)據(jù)。以下舉例說明:有一工程師用MCU設(shè)計(jì)了一個(gè)八位的計(jì)數(shù)器程序,從0x00開始計(jì)數(shù)到0xFF結(jié)束,且其震蕩器是使用8MHz;此時(shí)當(dāng)工程師使用示波器和邏輯分析儀來觀察分析此計(jì)數(shù)器的計(jì)數(shù)從0x00~0xFF是否正常時(shí),它們是否可以一次將0x00~0XFF的波形數(shù)據(jù)全部抓取顯示出來?(如圖二)所抓取下來的波形數(shù)據(jù)是否可以全部無限制放大來分析和放大后波形是否會(huì)失真?(如圖三和圖四)
圖二 均可以抓取0x00~0xFF的波形
圖三 根據(jù)上圖目測發(fā)現(xiàn)Bug的波形,將波形放大來觀察分析
圖四 當(dāng)示波器再放大時(shí),波形顯示已經(jīng)是失真狀態(tài),但是邏輯分析儀卻沒有這個(gè)限制,反而利用水平放大的功能,來尋找目測難以發(fā)現(xiàn)的Bug,如圖本來0xFF之后是要接0x00,但是經(jīng)過放大后,卻發(fā)現(xiàn)在0xFF和0x00之間有一個(gè)Bug,波形數(shù)據(jù)為0xF0,而且這也要?dú)w功邏輯分析儀擁有多個(gè)量測信道和總線分析的功能,才能很容易發(fā)現(xiàn)這個(gè)Bug。
總線(Bus)分析功能:
相信工程師們對這各名詞應(yīng)該是很熟悉,因?yàn)樵诋a(chǎn)品的研發(fā)上,處處都可以看得到它的身影,如數(shù)據(jù)總線(Data Bus)、地址總線(Address Bus)和控制總線(Control Bus)等,它的好用之處相信工程師們也應(yīng)該很清楚,但是工程師對它是又愛又恨,我為什么會(huì)這樣說呢?因?yàn)榭偩€(Bus)大部分都是8~16bits不等,所以當(dāng)工程師要用示波器來解讀總線(Bus)里的信息時(shí),就非常麻煩了,因?yàn)槭静ㄆ髯疃嗑椭挥兴膫€(gè)量測通道,所以最多一次可以同時(shí)間觀察4bits的信息,所以要觀察8bits信息,用示波器就要分兩次來量測,并且要做記錄,工程師再根據(jù)記錄來判讀總線(Bus)里的信息,假如要轉(zhuǎn)換進(jìn)制的話,工程師還要計(jì)算才會(huì)得知轉(zhuǎn)換后的進(jìn)制值是多少,所以用示波器來量測解讀總線(Bus)是非常不明智的選擇,而且浪費(fèi)在此段的量測時(shí)間差不多也是占整個(gè)研發(fā)周期1/4;但是假如工程師用邏輯分析儀來量測解讀總線(Bus)時(shí),您知道會(huì)有多容易嗎?因?yàn)檫壿嫹治鰞x本身就具有分析總線(Bus)的功能,您只要將要分析的八個(gè)I/O(8bits)組合起來成為一總線(Bus) (如圖五),還可以專為此總線(Bus)命名,如此工程師在分析總線(Bus)時(shí),就可以很容易的來解讀總線(Bus)里的信息(如圖六),并且邏輯分析儀還具備進(jìn)制轉(zhuǎn)換的功能,您只要選擇轉(zhuǎn)換后的進(jìn)制種類,邏輯分析儀就會(huì)自動(dòng)幫您轉(zhuǎn)換,并把轉(zhuǎn)換后的進(jìn)制值顯示出來(如圖七),讓您不用在浪費(fèi)時(shí)間去做進(jìn)制的轉(zhuǎn)換計(jì)算,如此使用邏輯分析儀量測此案例,將會(huì)縮短1/5的研發(fā)周期。
圖五 匯流排分析功能設(shè)定
圖六 匯流排解讀顯示
圖七 進(jìn)制轉(zhuǎn)換功能設(shè)定
觸發(fā)功能:
說到觸發(fā)功能,相信工程師們都已經(jīng)很熟悉了,因?yàn)樵谀壳八械牧繙y儀器當(dāng)中,幾乎99%都擁有此功能,只是大家的觸發(fā)條件設(shè)定不同,假如工程師將觸發(fā)功能應(yīng)用的得心應(yīng)手,那量測儀器所抓取的波形數(shù)據(jù)將會(huì)是使用者最想要分析的那一段,而不會(huì)造成讓量測儀器抓取一大推的無用數(shù)據(jù),進(jìn)而浪費(fèi)工程師在Debug的時(shí)間。
觸發(fā)功能是如此的重要,但是示波器的觸發(fā)功能的條件設(shè)定卻只有兩種邊緣觸發(fā)(上升緣和下降緣),而且只能單一量測通道可以設(shè)定觸發(fā)條件,如此少的觸發(fā)功能,相信工程師使用起來真的是苦不堪言,因?yàn)槌3K鶖X取到的波形數(shù)據(jù)不是他所想要分析的,進(jìn)而延長產(chǎn)品的開發(fā)時(shí)間;但是說到邏輯分析儀之觸發(fā)功能,其功能之強(qiáng)大,要強(qiáng)過示波器好幾千倍,您一定會(huì)認(rèn)為我夸大其辭,但是相信您看完我下面之介紹,一定會(huì)改變您的想法,邏輯分析儀除了可以設(shè)定觸發(fā)條件外,還有觸發(fā)參考電壓準(zhǔn)位、觸發(fā)位置、觸發(fā)次數(shù)、觸發(fā)頁、觸發(fā)延遲各種觸發(fā)功能之應(yīng)用,邏輯分析儀之觸發(fā)條件設(shè)定共有六種(如圖八),任意信號、高準(zhǔn)位、低準(zhǔn)位、上升緣、下降緣和任一邊緣供工程師所需來設(shè)定,而且所有的量測信道均可以做組合觸發(fā)設(shè)定,但需注意要所有觸發(fā)條件同時(shí)成立時(shí)(即所有觸發(fā)通道做AND),才會(huì)觸發(fā)成立,光這一個(gè)觸發(fā)條件設(shè)定就已經(jīng)比示波器還要強(qiáng)大,假如工程師再加入觸發(fā)位置之選擇,可以同時(shí)觀察觸發(fā)條件成立之前后的波形數(shù)據(jù),或是利用觸發(fā)次數(shù)、觸發(fā)頁和觸發(fā)延遲可用來分析觸發(fā)后更后面的波形數(shù)據(jù),以解決內(nèi)存深度的不足,進(jìn)而可以分析長時(shí)間大量的波形數(shù)據(jù)。
圖八 觸發(fā)條件設(shè)定
同時(shí)觀看模擬和數(shù)字信號之方法:
目前市場上很少有產(chǎn)品電路是純數(shù)字或模擬設(shè)計(jì),下面介紹利用邏輯分析儀之觸發(fā)狀態(tài)輸出(Trigger Out)和示波器的外部觸發(fā)源(EXT Trigger)搭配使用,用以達(dá)到在同一時(shí)間點(diǎn)可以同時(shí)抓取數(shù)字和模擬信號;當(dāng)工程師所設(shè)定的觸發(fā)條件成立時(shí),觸發(fā)狀態(tài)輸出(Trigger Out)腳位會(huì)輸出一上升緣波形,所以當(dāng)工程師想利用此信號輸出來觸發(fā)示波器,只需將此觸發(fā)狀態(tài)輸出(Trigger Out)腳位連接到示波器的外部觸發(fā)源(EXT Trigger),并將其觸發(fā)條件設(shè)定為EXT Trigger上升緣,如此使用者只需要執(zhí)行邏輯分析儀,就可以利用其觸發(fā)條件成立時(shí),即可以同時(shí)觸發(fā)示波器觸發(fā)條件成立來進(jìn)行相關(guān)量測動(dòng)作,其連接方式請看(如圖九)。
圖九 示波器和邏輯分析儀搭配示意圖
結(jié)論:
綜合前面所述的邏輯分析儀功能,只是它強(qiáng)大功能的冰山一角,所以邏輯分析儀在嵌入式系統(tǒng)的研發(fā)過程量測當(dāng)中,是占有極大的關(guān)鍵地位,但是在目前市場整個(gè)產(chǎn)品研發(fā)當(dāng)中,示波器和邏輯分析儀其實(shí)是要相輔相成的,如此在產(chǎn)品的研發(fā)時(shí)間才會(huì)更加快速,也才會(huì)更加縮短產(chǎn)品的上市時(shí)間,進(jìn)而為公司賺取更大更多的獲利,所以工程師必須對示波器和邏輯分析儀這兩種量測儀器都要非常的熟悉,要如何運(yùn)用個(gè)別的特性來抓取自己所需的波形數(shù)據(jù),如何來搭配相互使用也是一大學(xué)問,這些問題都是值得工程師們?nèi)ド钏际鞈]!