Global Sources
電子工程專輯
 
電子工程專輯 > 測試與測量
 
 
測試與測量  

基於邏輯分析核心的FPGA電路內除錯技術

上網時間: 2005年08月01日     打印版  Bookmark and Share  字型大小:  

關鍵字:邏輯分析  FPGA  內除錯  邏輯分析儀 

隨著FPGA融入越來越多的能力,對有效除錯工具的需求將變得至關重要。對內部可視能力的事前周密計劃將能使研發組採用正確的除錯策略,以更快完成他們的設計任務。

“我知道我的設計中存在一個問題,但我沒有很快找到問題所需要的內部可視能力。”由於缺乏足夠的內部可視能力,除錯FPGA基系統可能會受挫。使用通常包含整個系統的較大FPGA時,除錯的可視能力成為很大的問題。為獲得內部可視能力,設計工程師必須把一些接腳專門用作除錯接腳,而不是實際用於設計。哪些工具可用於進行內部FPGA跡線測量?又有哪些技術可用固定的接腳數最大化內部可視能力?

FPGA設計工程師有兩種進行內部跡線測量的方法:

1. 把結點路由至接腳,使用傳統的外部邏輯分析儀測試。


2. 把一個邏輯分析儀核心插入FPGA設計,透過JTAG把由內部FPGA記憶體保存的跡線捕獲路由輸出。

邏輯分析

FPGA開發者要在設計前期作出重要的判定,他們有意識或無意識地確定如何能夠除錯他們的設計。得到內部FPGA可視能力的最常用方法是使用邏輯分析儀,把感興趣的內部結點路由至分析儀探測的接腳。這種方法提供深記憶體跡線,在這?問題成因和其影響可能有很大的時間間隔。邏輯分析儀能很好測量可能散逸模擬的非同步事件。一個例子是具有非相關頻率的兩個或多個時脈域交互影響。邏輯分析儀提供強大的觸發,所得到的測量結果能建立與其它系統事件的時間關聯。

傳統邏輯分析儀提供狀態和定時模式,因此可同步或非同步地捕獲數據。在定時模式,設計工程師能看到訊號躍變間的關係。在狀態模式,設計工程師有能力觀察相對於狀態時脈的匯流排。當除錯匯流排值至關重要的數據路徑時,狀態模式是特別有用的。

有效的真實世界測量需要事先周密的計劃。使用傳統邏輯分析儀要顧及的主要權衡是把結點路由輸出至可探測的接腳。傳統邏輯分析儀只能觀察到路由至接腳的訊號。由於還不知道潛在的電路內除錯問題,設計工程師只能把很少幾個接腳用於除錯。這樣少的接腳數可能不足以提供解決手頭問題的足夠可視能力,從而延誤專案的完成。

保持內部可視能力,同時減少專用於除錯接腳數的一種方法是在設計中插入開關多路轉換器(見圖1)。例如當FPGA設計進入電路時,可能需要觀察128個內部結點,這就需要一次追蹤32個通道。在這種情況下,可在FPGA設計中實現多路轉換器,在特定時間內路由出32個結點。為編程多路轉換器,設計工程師可下載新的配置文件,使用JTAG或透過多路轉換器上的控制線經路由切換各訊號。在設計階段,必須仔細規劃測試多路轉換器插入。否則設計工程師可能止步於不能同時存取需要除錯的結點。

圖1: 測試多路轉換器的插入使設計工程師有能力路
由出內部訊號的子集,同時把專用於除錯的接腳數減到最
少。這?是用傳統邏輯分析儀,如Agilent 16702B所
捕獲的跡線。

最小化除錯專用接腳數的第二種方法是時分多路傳輸(TDM)。TDM常用於設計原型,此時把多片FPGA作為單片ASIC的原型,從而用於最小化除錯專用接腳數。這項技術最適合用於處理較慢的內部電路。假定使用8位元匯流排的50MHz設計(時脈沿間為20ns)需要電路內的可視能力。使用100MHz在第一個10ns期間採樣低4bit,在第二個10ns期間採樣高4位元。這樣僅用4個接腳,就可在每個20ns週期內捕獲到全部8位元的除錯訊息。在捕獲跡線後,組合相繼的4位元捕獲就可重建8位元跡線。TDM再使用也有一些缺點。如果用傳統邏輯分析儀捕獲跡線,觸發就變得非常複雜和容易出錯。例如在8位元碼型上的觸發就包括把邏輯分析儀設置到尋找跟隨規定4位元碼型後的另一特定4位元碼型。但邏輯分析儀不知道哪一個4位元是8位元組的開始,因此要在與觸發設置相匹配的條件上觸發-而不是使用者所中意的觸發條件。

採用TDM再使用時得到的測量結果有精確的週期。但設計工程師卻丟失了時脈週期間的定時關係訊息。通常單端接腳的速度和邏輯分析儀收集跡線的採集速度(狀態模式)限制了壓縮比。例如如果最大單端接腳速度是200MHz,內部電路執行於高達100MHz,那麼可實現的最大壓縮比是2:1。

隨著特定FPGA設計的成熟,它可能會增強和改變。原來專門用於除錯的接腳會被用於設計增強。或開始就限制了設計的接腳。另一種除錯技術為這類情況帶來價值。

邏輯分析核心

現在大多數FPGA廠商也提供邏輯分析(見圖2)。這些IP在合成前或合成後插入FPGA。核心包含觸發電路,以及用於設置測量和內部RAM,以保存跡線的資源。插入設計的邏輯分析核心改變了設計的定時,因此大多數設計工程師都把核心永久性地留在設計內。

圖2: 晶片上的邏輯分析不
需要增加接腳。從JTAG下載邏輯分析配置。
主電腦把從內部FPGA記憶體得到的跡線上
載到所管理的邏輯分析儀觀察器。
這種技術的一個例子是Xilinx ChipScopePro。

對於電路內配置,可透過JTAG存取核心,以及為觀察而把捕獲數據傳送到PC。如果核心消耗不到5%的可用資源,FPGA核心就能充分發揮作用。如果FPGA的尺寸使核心要消耗超過10%的資源,設計工程師在使用這種方法時將會遇到很多問題。

邏輯分析核心有三項主要優點。

1. 它們的使用不增加接腳。可透過FPGA上已有的專門JTAG接腳存取。即使沒有其它可用接腳,這種除錯方法也能得到內部可視能力。

2. 簡單的探測。探測包括把結點路由到內部邏輯分析儀的輸入。不需要擔心為得到有效訊息,應如何連接到電路板上,也不存在訊號完整性問題。

3. 邏輯分析核心是便宜的。FPGA廠商把他們的業務模型建立於用矽晶片所獲取價值的基礎上。所以所用的除錯IP通常能以低於$1,000美元的價格獲得。

使用內部邏輯分析核心也有三方面的影響。

1. 核心的尺寸限制了在大FPGA中的使用。此外由於內部FPGA記憶體用於跡線,使跡線深度很淺。

2. 設計工程師必須放棄把內部記憶體用於除錯,記憶體會由所作的設計使用。

3. 內部邏輯分析儀只工作於狀態模式。它們捕獲的數據與規定的時脈同步,而不能提供訊號定時關係。

混合技術

一些FPGA廠商已開始與傳統邏輯分析儀廠商聯合開發組合技術(見圖3)。例如Agilent和Xilinx最近聯合為Xilinx的ChipScope開發2M狀態深記憶體。

圖3: 混合內部和傳統邏輯分析
的第一個例子是Agilent和Xilinx聯合為ChipScopePro
開發深記憶體。這項技術提供更輕的邏輯分析核心,
並透過TDM把接腳數減到最少。

這一解決方案把內部邏輯分析核心用於觸發。在滿足核心的觸發條件時,核心把跡線訊息從經路由的結點傳送到核心,再送到接腳。接腳透過mictor連接器接到一個小的外部追蹤盒。該解決方案融入了TDM再使用,以減少除錯專用接腳數。根據內部電路的速度,再使用壓縮可能是1:1,2:1或4:1。由於跡線未在內部保存,因此IP核心要小於帶跡線記憶體的邏輯分析IP。

如何作出決定?

傳統邏輯分析和基於核心的邏輯分析技術都很有用。在選擇最適合您除錯需要的方案時,事先考慮一些因素將能幫助您作出決定。下面這幾個問題能幫助您確定哪種方案最為有效。

1. 您預計會遇到哪種類型的除錯問題?用內部邏輯分析儀能找到較簡單的問題,而傳統邏輯分析儀則能勝任複雜的故障。

2. 除了狀態模式外,還需要捕獲定時訊息嗎?如果需要,傳統邏輯分析儀能適應這一要求。

3. 需要多深的跡線?傳統邏輯分析儀可在各通道上捕獲達64M的跡線,而內部邏輯分析核心更適合淺的跡線。

4. 有多少接腳可專門用於除錯?接腳數越少,使用內部邏輯分析儀就越適合。

5. 必須為新工具投入多少資金?雖然32通道傳統邏輯分析儀的起價為$6K,但內部邏輯分析儀及相隨波形觀察器的起價還不到$1K。

6. 研發組能容忍對FPGA設計的衝擊嗎?核心只能在大的FPGA上工作,並會改變設計的定時。對所有尺寸和類型的FPGA,傳統邏輯分析儀的路由訊號輸出對設計和工作的影響甚微。

作者:Joel Woodward,


Agilent Technologies





投票數:   加入我的最愛
我來評論 - 基於邏輯分析核心的FPGA電路內除錯技術
評論:  
*  您還能輸入[0]個字
*驗證碼:
 
論壇熱門主題 熱門下載
 •   將邁入40歲的你...存款多少了  •  深入電容觸控技術就從這個問題開始
 •  我有一個數位電源的專利...  •  磷酸鋰鐵電池一問
 •   關於設備商公司的工程師(廠商)薪資前景  •  計算諧振轉換器的同步整流MOSFET功耗損失
 •   Touch sensor & MEMS controller  •  針對智慧電表PLC通訊應用的線路驅動器
 •   下週 深圳 llC 2012 關於PCB免費工具的研討會  •  邏輯閘的應用


EE人生人氣排行
 
返回頁首