5.9??SignalTap?II在線邏輯分析儀的使用方法
隨著設(shè)計(jì)復(fù)雜度的增加,傳統(tǒng)的設(shè)計(jì)驗(yàn)證方法需要其他技術(shù)和工具的補(bǔ)充,因?yàn)檫@些可編程芯片系統(tǒng)(SOPC)進(jìn)行完全的真實(shí)模擬是不可在適當(dāng)?shù)臅r(shí)間內(nèi)完成。而且,設(shè)計(jì)規(guī)模的陡增必然需要新的工具來(lái)觀察已編程期間的內(nèi)部操作。尤其是隨著第三方IP使用的增加,它們需要獲取內(nèi)部探測(cè)來(lái)驗(yàn)證操作,使其和設(shè)計(jì)的其他部分相分離。最后,由于封裝技術(shù)的提高,必須開發(fā)新的方法以便對(duì)日趨小型化和大規(guī)模封裝的硬件(如BGA)進(jìn)行驗(yàn)證。
5.9.1??SignalTap?II介紹
Quartus?II?5.0支持SignalTap?II,滿足這些需求。SignalTap允許設(shè)計(jì)者在FPGA運(yùn)行期間同時(shí)監(jiān)視內(nèi)部信號(hào)。通過(guò)下載電纜或傳統(tǒng)的分析設(shè)備連接到用戶的PC板卡上,便可以觀察到這些信號(hào)的波形。使用SingnalTap就類似于使用邏輯分析儀,能夠設(shè)置初始化、觸發(fā)(內(nèi)部或外部)和顯示條件以及觀察的內(nèi)部信號(hào),用戶以此可以研究設(shè)計(jì)的運(yùn)行狀態(tài)。用戶的分析參數(shù)可以被編譯為嵌入邏輯分析儀(ELA),它和設(shè)計(jì)的其他數(shù)據(jù)一起配置FPGA。Altera全系列FPGA器件支持SignalTap,采用Byteblaster?II或者USB?blaster作為器件的下載電纜。
若沒(méi)有采用SignalTap接口,用戶必須更改設(shè)計(jì)以探測(cè)內(nèi)部邏輯的連線。設(shè)計(jì)的內(nèi)部連線必須連接到頂層設(shè)計(jì)的管腳上。如果結(jié)點(diǎn)處于龐大分級(jí)設(shè)計(jì)的下層,那么改起來(lái)很復(fù)雜,同時(shí)很耗時(shí),而且破壞了設(shè)計(jì)的完整性。ELA接口支持拖放選擇用于邏輯分析的連線。這個(gè)接口根本就無(wú)需改變?cè)O(shè)計(jì)。選擇了ELA的輸入通道之后,需要重新編譯設(shè)。更新后的配置文件重新配置器件后,標(biāo)準(zhǔn)邏輯分析儀就會(huì)可以檢測(cè)那些被連接到器件管腳的內(nèi)部信號(hào)了。
輸入通道的樣值存儲(chǔ)在器件的嵌入存儲(chǔ)塊內(nèi),ELA功能監(jiān)測(cè)輸入通道是否發(fā)生觸發(fā)事件。一旦ELA存儲(chǔ)了滿足觸發(fā)狀態(tài)的足夠數(shù)據(jù),ELA停止采樣監(jiān)測(cè)輸入通道。然后數(shù)據(jù)上載到主機(jī),顯示在Quartus的波形編程器中。數(shù)據(jù)的主載速率取決于JTAG?TCK信號(hào)的速率。ELA功能會(huì)使用設(shè)計(jì)本身占用以外的器件資源。ELA是可參數(shù)化的,因此能夠使用有效的資源。
SignalTap?II支持以用戶指定的格式識(shí)別和顯示總線使所捕獲的數(shù)據(jù)更加易懂。SignalTap?II嵌入式邏輯分析儀能夠以等價(jià)的十六進(jìn)制、無(wú)符號(hào)十進(jìn)制、二元補(bǔ)碼形式的符號(hào)十進(jìn)制,符號(hào)大小表示法表示的符號(hào)十進(jìn)制、八進(jìn)制、二進(jìn)制、8比特ASCII等格式來(lái)顯示總線。用戶還可以選擇條形圖或者線性圖表示總線時(shí)間關(guān)系。
SignalTap?II支持多文件輸出數(shù)據(jù)結(jié)果,嵌入式邏輯分析儀可以采用矢量波形(vwf)、矢量表(tbl)、矢量文件(vec)、逗號(hào)分割數(shù)據(jù)(csv)和Verilog數(shù)值更改轉(zhuǎn)存(vcd)文件格式輸出所捕獲的數(shù)據(jù)。這些文件格式可以被第三方驗(yàn)證工具讀入,顯示和分析SignalTap?II嵌入式邏輯分析儀所捕獲的數(shù)據(jù)。
5.9.2??使用SignalTap?II操作流程
若要使用SignalTap?II邏輯分析器,必須先建立SignalTap?II文件(stp)此文件包括所有配置設(shè)置并以波形顯示捕獲到的信號(hào)。一旦設(shè)置了SignalTap?II文件,就可以編譯工程,對(duì)器件進(jìn)行編程并使用邏輯分析器采集和分析數(shù)據(jù)。
以下步驟描述設(shè)置SignalTap?II文件和采集信號(hào)數(shù)據(jù)的基本流程。
(1)建立新的SignalTap?II文件。
(2)向SignalTap?II文件添加實(shí)例,并向每個(gè)實(shí)例添加節(jié)點(diǎn)??梢允褂肗ode?Finder中的SignalTap?II濾波器查找所有預(yù)綜合和布局布線后的SignalTap?II節(jié)點(diǎn)。
(3)分配一個(gè)采樣時(shí)鐘。
(4)設(shè)置其他選項(xiàng),例如采樣深度和觸發(fā)級(jí)別等。
(5)完全編譯工程文件。
(6)下載程序到FPGA中。
(7)運(yùn)行硬件并打開SignalTap?II觀察信號(hào)波形。
5.9.3??設(shè)置觸發(fā)器
如圖5.39所示是SignalTap?II邏輯分析儀的界面。其中實(shí)例管理器對(duì)話框識(shí)別出設(shè)計(jì)中
圖5.39??SignalTap?II邏輯分析儀
?
等待測(cè)試的所有驗(yàn)證過(guò)的邏輯分析儀,它們可以用來(lái)捕獲并存儲(chǔ)數(shù)據(jù)。該對(duì)話框還可以對(duì)用來(lái)生成每個(gè)分析儀的資源進(jìn)行估算。
信號(hào)配置面板用于設(shè)置采樣信號(hào)和觸發(fā)信號(hào)。采樣時(shí)鐘信號(hào)支持超過(guò)200MHz頻率,采樣深度最大高達(dá)128K。
數(shù)字示波器或邏輯分析儀中,觸發(fā)器是一個(gè)重要的組成部分。觸發(fā)器的性能很大程度上決定了儀器的性能。觸發(fā)器是邏輯級(jí)別、邏輯邊緣觸發(fā)方式、邏輯樣本等邏輯事件的組合。通過(guò)不同的觸發(fā)方式實(shí)現(xiàn)對(duì)信號(hào)的不同采樣。
SignalTap接口定義的觸發(fā)事件中,每個(gè)事件的輸入通道可以監(jiān)測(cè)10個(gè)基本或高級(jí)的觸發(fā)級(jí)別。觸發(fā)級(jí)別向SignalTap?II邏輯分析儀指明何時(shí)開始采集數(shù)據(jù),10個(gè)觸發(fā)級(jí)別為設(shè)置復(fù)雜的觸發(fā)條件提供了足夠的靈活性,幫助驗(yàn)證工程師分離錯(cuò)誤或者找出問(wèn)題原因,如果設(shè)置了多觸發(fā)級(jí)別,直到所有的觸發(fā)條件順序滿足后,才開始采集數(shù)據(jù)。
觸發(fā)位置允許指定在選定實(shí)例中在觸發(fā)器之前和觸發(fā)器之后應(yīng)采集的數(shù)據(jù)量。分段的模式允許通過(guò)將存儲(chǔ)器分為周密的時(shí)間段,為定期事件捕獲數(shù)據(jù),而無(wú)需分配很深的采樣深度。其中對(duì)環(huán)形緩沖模式支持4個(gè)觸發(fā)位置;這樣,當(dāng)觸發(fā)條件滿足后,用戶可以更多地控制應(yīng)該捕獲并顯示什么樣的數(shù)據(jù)。
·??“前”觸發(fā)位置向軟件表明,在達(dá)到觸發(fā)條件前,保存所發(fā)生采樣的12%,達(dá)到觸發(fā)條件后,再保存采樣的88%。?
·??“中”觸發(fā)位置向軟件表明,在達(dá)到觸發(fā)條件前,保存所發(fā)生采樣的50%,達(dá)到觸發(fā)條件后,再保存采樣的50%。?
·??“后”觸發(fā)位置向軟件表明,在達(dá)到觸發(fā)條件前,保存所發(fā)生采樣的88%,達(dá)到觸發(fā)條件后,再保存采樣的12%。?
·??“連續(xù)”觸發(fā)位置向軟件表明,以環(huán)形緩沖的方式進(jìn)行連續(xù)采樣保存,直到用戶中斷為止。