基于邏輯分析內(nèi)核的FPGA電路內(nèi)調(diào)試技術(shù)
最小化調(diào)試專用引腳數(shù)的第二種方法是時(shí)分復(fù)用(TDM)。TDM復(fù)用常用于設(shè)計(jì)原型,此時(shí)把多片FPGA 作為單片ASIC的原型,從而用于最小化調(diào)試專用引腳數(shù)。這項(xiàng)技術(shù)最適合用于處理較慢的內(nèi)部電路。假定使用8位總線的50MHz設(shè)計(jì)(時(shí)鐘沿間為 20ns)需要電路內(nèi)的可視能力。使用100MHz在第一個(gè)10ns期間采樣低4bit,在第二個(gè)10ns期間采樣高4位。這樣僅用4個(gè)引腳,就可在每個(gè) 20ns周期內(nèi)捕獲到全部8位的調(diào)試信息。在捕獲跡線后,組合相繼的4位捕獲就可重建8位跡線。TDM復(fù)用也有一些缺點(diǎn)。如果用傳統(tǒng)邏輯分析儀捕獲跡線,觸發(fā)就變得非常復(fù)雜和容易出錯(cuò)。例如在8位碼型上的觸發(fā)就包括把邏輯分析儀設(shè)置到尋找跟隨規(guī)定4位碼型后的另一特定4位碼型。但邏輯分析儀不知道哪一個(gè)4 位是 8位組的開始,因此要在與觸發(fā)設(shè)置相匹配的條件上觸發(fā)-而不是使用者所中意的觸發(fā)條件。
采用TDM復(fù)用時(shí)得到的測量結(jié)果有精確的周期。但設(shè)計(jì)工程師卻丟失了時(shí)鐘周期間的定時(shí)關(guān)系信息。通常單端引腳的速度和邏輯分析儀收集跡線的采集速度(狀態(tài)模式)限制了壓縮比。例如如果最大單端引腳速度是200MHz,內(nèi)部電路運(yùn)行于高達(dá)100 MHz,那么可實(shí)現(xiàn)的最大壓縮比是2:1。
隨著給定FPGA設(shè)計(jì)的成熟,它可能會(huì)增強(qiáng)和改變。原來專門用于調(diào)試的引腳會(huì)被用于設(shè)計(jì)增強(qiáng)?;蜷_始就限制了設(shè)計(jì)的引腳。另一種調(diào)試技術(shù)為這類情況帶來價(jià)值。
邏輯分析內(nèi)核
現(xiàn)在大多數(shù)FPGA 廠商也提供邏輯分析(見圖2)。這些 IP在合成前或合成后插入FPGA。內(nèi)核包含觸發(fā)電路,以及用于設(shè)置測量和內(nèi)部RAM,以保存跡線的資源。插入設(shè)計(jì)的邏輯分析內(nèi)核改變了設(shè)計(jì)的定時(shí),因此大多數(shù)設(shè)計(jì)工程師都把內(nèi)核永久性地留在設(shè)計(jì)內(nèi)。
從 JTAG 下載邏輯分析儀的配置,圖中的例子是 Xilinx ChipScopePro本文引用地址:http://2s4d.com/article/191390.htm
圖2: 從 JTAG 下載邏輯分析儀的配置,圖中的例子是 Xilinx ChipScopePro。對于電路內(nèi)配置,可通過JTAG訪問內(nèi)核,以及為觀察而把捕獲數(shù)據(jù)傳送到PC。如果內(nèi)核消耗不到5%的可用資源,F(xiàn)PGA 內(nèi)核就能充分發(fā)揮作用。如果 FPGA的尺寸使內(nèi)核要消耗超過10%的資源,設(shè)計(jì)工程師在使用這種方法時(shí)將會(huì)遇到很多問題。
邏輯分析內(nèi)核有三項(xiàng)主要優(yōu)點(diǎn)。
1. 它們的使用不增加引腳??赏ㄟ^FPGA 上已有的專門JTAG引腳訪問。即使沒有其它可用引腳,這種調(diào)試方法也能得到內(nèi)部可視能力。
2. 簡單的探測。探測包括把結(jié)點(diǎn)路由到內(nèi)部邏輯分析儀的輸入。不需要擔(dān)心為得到有效信息,應(yīng)如何連接到電路板上,也不存在信號(hào)完整性問題。
3. 邏輯分析內(nèi)核是便宜的。FPGA廠商把他們的業(yè)務(wù)模型建立于用硅片所獲取價(jià)值的基礎(chǔ)上。所以所用的調(diào)試IP 通常能以低于$1,000美元的價(jià)格獲得。
DIY機(jī)械鍵盤相關(guān)社區(qū):機(jī)械鍵盤DIY
評(píng)論