基于FPGA系統(tǒng)易測試性的研究
外部邏輯分析儀探測要比嵌入式邏輯分析儀方法要求的探測復雜一些。必須確定怎樣使用邏輯分析儀探頭探測FPGA內部信號,而不能使用電路板上已有的JTAG連接器。最簡便的方式是在電路板中增加一個測試連接器,這可以簡便地把FPGA信號與系統(tǒng)中的其他信號關聯(lián)起來。
3.3 成本與靈活性
盡管外部邏輯分析儀的購買價格確實要高于嵌入式邏輯分析儀,但使用外部邏輯分析儀可以解決更加廣泛的問題。邏輯分析儀不僅可以用于FPGA調試,還可以用來解決其他數(shù)字設計挑戰(zhàn),它被公認為是進行通用數(shù)字系統(tǒng)硬件調試的最佳工具。外部邏輯分析儀能夠實現(xiàn)更加靈活的采集模式和觸發(fā)功能。通過外部邏輯分析儀,可以設置最多16個不同的觸發(fā)狀態(tài)(每一個狀態(tài)含有16個條件判斷分支),每一個通道提供256 MB的內存,并且可以在定時分析模式下以高達125 ps的分辨率(8 GS/s采樣) 捕獲數(shù)據(jù)。
4 FPGAView進行FPGA調試
外部邏輯分析儀方法有效地利用了FPGA的處理能力,并根據(jù)需要重新對設備配置,將有用的內部信號路由到通常很少的針腳上。這是一種非常有用的方法,但它也有一定的局限性:用戶每次需要查看一套不同的內部信號時,都必須改變設計(在RTL級或使用FPGA編輯器工具),把希望的信號組路由到調試針腳上。這不僅耗時,而且如果要求重新匯編設計,還會改變設計的定時,可能會隱藏需要解決的問題。當更改FPGA內部測試信號時,在外部邏輯分析儀上的被測信號名稱需要手工進行更新。一般說來,調試針腳數(shù)量很少,內部信號與調試針腳之間1:1的關系限制著設計查看能力和洞察力。為克服這些局限性,出現(xiàn)了一種新的FPGA調試方法,它不僅提供了外部邏輯分析儀方法的所有優(yōu)勢,還消除了主要局限性。FPGAView軟件在與泰克TLA系列邏輯分析儀配套使用時,為調試FPGA和周邊硬件電路提供了一個完整的解決方案,如圖2所示。
這種組合可以時間關聯(lián)的查看FPGA的內部活動和外部活動;迅速改變FPGA內部探點,而無須重新匯編設計;每個針腳監(jiān)測多個內部信號;在TLA邏輯分析儀上自動更新切換的內部信號名稱。此外,F(xiàn)PGAView可以在一臺設備中處理多個測試內核(適合監(jiān)測不同的時鐘域),并可以在一個JTAG鏈上處理多臺FPGA設備。
5 快速使用FPGAView
使用FPGAView的步驟如下所述:
(1)插入內核
這步是配置測試內核,把它插入到FPGA設計中。例如,在使用Altera或Xilinx器件時,可以使用FPGA開發(fā)工具提供的邏輯分析儀接口編輯器,創(chuàng)建最適合自己需求的測試核。
對大多數(shù)的測試內核,可以指定下述參數(shù):
①針腳數(shù)量(pin count):表示希望專用于邏輯分析儀接口的針腳數(shù)量;
②組數(shù)(bank count):表示希望映射到每個針腳上的內部信號數(shù)量;
③輸出/捕獲模式(output/capture mode):選擇希望執(zhí)行的采集類型;可以選擇組合邏輯/定時模式(combina-tion/timing)或寄存器/狀態(tài)模式(registered/state);
④時鐘(clock):如果用戶選擇了registered/state的捕獲模式,這一選項允許選擇測試內核的取樣時鐘;
⑤通電狀態(tài)(power-up state):這個參數(shù)允許指明用于邏輯分析儀接口的針腳的通電狀態(tài)。
(2) 把測試內核信息加載到FPGAView中
從FPGAView軟件窗口中,可以與JTAG編程電纜建立連接,并且連接到TLA系列邏輯分析儀(TLA邏輯分析儀使用Windows平臺)或PC工作站上。
在使用ALTERA FPGA芯片時,按打開(Open)工具條按鈕,調出一個文件瀏覽器,選擇QuartusⅡLAI Editor軟件以前生成的邏輯分析儀接口(.lai)文件。這樣就加載了與LAI核心有關的所有信息,包括每一組的信號數(shù)量、組數(shù)和信號名稱,另外如果設備中的LAI內核多于一個,那么還包括每個LAI內核的信息。
(3) 把FPGA針腳映射到邏輯分析儀上
映射FPGA針腳和TLA邏輯分析儀探頭之間的物理連接。FPGAView可以自動更新邏輯分析儀上顯示的信號名稱,與測試內核當前監(jiān)測的信號相匹配。為此,簡單地點擊探頭(probes)按鈕,將出現(xiàn)一個拖放窗口,把測試內核輸出信號名稱與邏輯分析儀上的相應通道連接起來。對某條目標連接,這個通道分配過程只需一次。
(4) 進行測量
使用組(bank)列表下拉菜單,選擇想要測量的組。一旦選擇了組,F(xiàn)PGAView會通過JTAG接口與FPGA通信,并配置測試內核,以便選擇希望的組。
FPGAView還將這些通道名稱通過對TLA系列邏輯分析儀的控制進行自動分配,從而可以簡便地理解測量結果。為測量不同的一套內部信號,用戶只需選擇不同的信號組。全功能TLA系列邏輯分析儀會自動地把這些FPGA信號與系統(tǒng)中的其他信號關聯(lián)起來。
在TLA邏輯分析儀中,針對設計人員關心的各種時間信息,提供了業(yè)內獨有的定時參數(shù)自動測量功能,通過鼠標簡單地拖放操作,能夠得到周期、頻率、占空比、脈沖寬度、通道/通道延遲、邊沿計數(shù)、周期計數(shù)、違規(guī)計數(shù)、周期抖動、以及周期間抖動等信息。
6 結論
調試針對Altera和Xilinx的FPGA系統(tǒng)時用嵌入式邏輯分析儀和外部邏輯分析儀這2種方法各有其優(yōu)勢和不足,而FPGAView等新方法進一步提高了外部邏輯分析儀方法的吸引力。能夠快速方便地移動探點,而不需重新匯編設計,同時能夠把內部FPGA信號活動與電路板級信號關聯(lián)起來,能夠較好地滿足產品開發(fā)周期的要求。
評論