于新穎
(山西大學商務學院信息學院,山西 太原 030031)
SignalTapII在FPGA設計中的應用
于新穎
(山西大學商務學院信息學院,山西 太原 030031)
SignalTapⅡ是Altera公司生產(chǎn)的新一代FPGA開發(fā)軟件QuartusⅡ中的一種嵌入式邏輯分析工具。它以軟件窗口為操作界面,可以靈活方便地選取想要觀測的信號和設置采樣的通道數(shù)及深度,并可通過FPGA的JTAG接口在電腦上進行同步顯示。應用這種方式對FPGA內(nèi)部信號進行檢測,不但成本低,而且不占用額外資源或I/O引腳,且更為精確。本文主要介紹SignalTapⅡ的特點及配置方法,并以實際應用為例,說明了其在仿真測試中的良好效果。
SignalTapⅡ;FPGA;軟件仿真
在進行FPGA設計的后期,尤其是大型或是實用型系統(tǒng)設計中,需要用示波器、邏輯分析儀等外部測量工具對輸入輸出信號的波形進行測試分析,這就需要設計時保留足夠多的引腳,以便能選擇信號來驅動I/O進行測試[1]。但是外部測試設備在測試FPGA系統(tǒng)時,存在以下幾個弊端:如果要考慮為后期的仿真留出足夠的測試驅動引腳,會使設計過程并不十分順暢甚至受阻;當外部仿真設備接觸芯片時,測試探頭可能會導致FPGA信號的時序性和完整性發(fā)生畸變;由于FPGA上的引腳多采用貼片式封裝,I/O引腳的引出比較困難;硬件測試設備通常價格較高,從而提高了設計成本[2]。
所以,嵌入在FPGA開發(fā)軟件QuartusII內(nèi)部的邏輯分析軟件SignalTapII便應運而生:它是一款仿真軟件;成本低;本身就嵌入在Quartus內(nèi)部,所以不需要額外的I/O接口;測試信號時不會對信號的特性產(chǎn)生外加的影響,精確性更高。
1.1 SignalTapⅡ的應用流程
使用SignalTapII的一般流程為:設計人員在QuartusII中用圖形或文本方式建立完目標文件后,將目標文件存盤并編譯是否存在錯誤;若編譯后無誤,則通過JTAG下載到FPGA中,然后便可進入SignalTapII進行仿真并觀察分析波形[3]。進入SignalTapII的方式有兩種:1) 直接由工具欄中的Tools→SignalTapII Logic Analyzer進入SignalTapⅡ仿真界面;2) 通過建立.stp文件進入此仿真界面,具體步驟為:File→New→SignalTapII Logic Analyzer File→OK。
1.2 SignalTapⅡ的配置方法
1) 選擇需要觀察的信號
在setup欄的空白處雙擊,彈出“Node Finder”,點擊List,則在左欄處出現(xiàn)與工程相關的所有信號,包括內(nèi)部信號、輸入信號和輸出信號,選擇其中想要觀察的信號并移到右面“Selected Nodes”一欄,點擊OK后即可將這些信號調(diào)入SignalTapII信號觀察窗。
2) Signal TapII參數(shù)設置
◆接口設置。通過檢查右上角的“JTAG Chain Configuration”中是否顯示“JTAG ready”,來確認FPGA是否已經(jīng)正確連接到了電腦上,然后檢查Hardware和Device的配置是否正確并將編譯好后的編程文件.sof加載到“SOF Manager”中。
◆時鐘設置。通??梢允褂贸季植季€后的信號之外的任何一個信號作為采樣時鐘,考慮到采樣數(shù)據(jù)的精確性,常選用全局時鐘。
◆采樣深度設置。綜合考慮設計中對待測信號采樣點數(shù)、信號組的總的信號數(shù)量、FPGA的大小以及可能占用的規(guī)模的要求,確定采樣深度,其最大值為128 Kb。
◆觸發(fā)控制設置。嵌入式邏輯分析儀的觸發(fā)控制包括觸發(fā)類型和觸發(fā)級數(shù)的控制。首先,觸發(fā)主要包括Basic及Advanced這兩類:如果選擇Basic,那么在.stp文件中就必須選擇相應的觸發(fā)的模式:Don’t Care、Low、High、Falling Edge、Rising Edge及EitherEdge等;如果觸發(fā)類型選擇Advanced,則需要為嵌入式邏輯分析儀創(chuàng)建用于觸發(fā)的條件表達式,這可以借助SignalTapII內(nèi)自帶的高級觸發(fā)條件編輯器來完成。其次,在多級觸發(fā)中,SignalTapII邏輯分析儀必須設置觸發(fā)級數(shù),且最大不能超過10級。
3) 編譯下載并啟動SignalTapII進行測試分析
設置完成后,文件存盤。在存盤過程中會出現(xiàn)一個提示“Do you want to enable SignalTap…”,點擊“是”,表示同意再次編譯時將此Signal TapⅡ文件與工程捆綁在一起綜合/適配,以便一同被下載到FPGA芯片中。重新編譯,并下載到目標器件中。點擊Autorun Analysis按鈕,即可啟動SignalTapII的仿真功能,實現(xiàn)對待測信號的實時觀察及性能分析[4]。
2.1 流水燈的設計流程
本文以流水燈的設計為例,對借助于SignalTapII進行信號觀測和分析的整體流程加以具體介紹[5]。
首先用QuartusII中的文本編輯方式編寫流水燈的程序,編譯正確后,通過File→Create∠Update→Create Symbol Files For Current File生成頂層文件,如圖1所示。
圖1 流水燈的頂層文件
然后,為該設計分配引腳及將不需要的引腳置三態(tài)以減少功率損耗,再次編譯以生成.sof文件。并將該編程文件下載到合適的FPGA芯片中。如本設計使用的是Altera公司生產(chǎn)的EP2C35F672C6型號的FPGA開發(fā)板。
接下來,建立.stp文件,根據(jù)設計要求及資源占用情況,按上述“SignalTapII的配置方法”配置嵌入式邏輯分析儀SignalTapII,其具體配置參數(shù)如圖2所示。
圖2 SignalTapII的參數(shù)配置
最后,啟動SignalTapII仿真功能,對待測信號進行觀測分析。發(fā)現(xiàn)在SignalTapII中能正確觀察到流水燈的波形循環(huán)變化圖,并截取部分瞬時刻的信號波形圖如圖3所示。
通過以上設計過程,最終我們得到了用SignalTapII觀測流水燈信號(本設計中主要選取的待測信號為復位信號以及四個輸出信號)的波形圖。結果表明,當復位鍵按下時,四個LED輸出均為低電平;當復位鍵彈起時,四個LED輸出信號便在時鐘信號的控制下,依次循環(huán)變?yōu)楦唠娖?,即點亮,從而實現(xiàn)了流水燈的功能。
通過具體的應用實例,也驗證了SignalTapII在不占用額外資源或I/O引腳的情況下,能對FPGA內(nèi)部信號進行實時檢測。
圖3 部分瞬時刻的信號波形圖
SignalTapII具有的無干擾、便于升級、使用較為方便等優(yōu)點,為系統(tǒng)調(diào)試提供了一個新途徑。由于利用SignalTapII進行仿真,不需要占用其他引腳資源且不會引起信號的畸變,所以不但使得整體的設計流程更加順暢,而且更方便于對芯片內(nèi)部的信號進行排錯和分析,幫助設計者很快發(fā)現(xiàn)設計中存在問題的原因,在很大程度上彌補了硬件測試工具的不足。
[1] 袁博,宋萬杰,吳順君.基于FPGA的MATLAB與QuartusⅡ聯(lián)合設計技術研究[J].電子工程師,2007(1):12-14.
[2] 孟令軍,李娜.基于FPGA的內(nèi)部邏輯在線測試技術研究[J].電測與儀表,2008(11):34-37.
[3] 閭琳,汪道輝.基于FPGA的虛擬邏輯分析儀設計與實現(xiàn)[J].電子技術應用,2008(7):85-87.
[4] 許浩,宋躍,余熾業(yè),等.一種基于FPGA/SOPC的邏輯分析儀設計[J].儀表技術與傳感器,2009(4):115-117.
[5] 沙晶晶,董洪軍,李蒙.多路數(shù)據(jù)采集系統(tǒng)的設計與實現(xiàn)[J].現(xiàn)代電子技術,2012(21):59-61.
The Application of SignalTapII in FPGA Design
Yu Xinying
(SchoolofInformation,BusinessCollegeofShanxiUniversity,TaiyuanShanxi030031,China)
SignalTapII is a kind of embedded logic analysis tool, which is the developed software QuartusII within the FPGA produced by the company of Altera. It takes software window to be the operate interface, so it can flexibly select the desired signal and set the number and sampling depth of channels. Moreover, with the help of JTAG interface of the FPGA, it can be connected to a computer to display synchronously. If this method is chosen to detect the inside signals of FPGA, not only the cost is very low, but also the detection will not take additional resources or I / O pins and with a higher accuracy. This paper mainly introduces the features and the configure methods of the SignalTapII. With an example, the paper shows the good results of SignalTapII in simulation tests.
SignalTapII; FPGA; software simulation
2017-03-21
于新穎(1987- ),女,河北唐山人,助教,碩士研究生,研究方向:自適應信號處理。
1674- 4578(2017)03- 0042- 03
TP701
A