如何簡(jiǎn)化FPGA測(cè)試和調(diào)試?
外部邏輯分析儀可解決更加廣泛的問(wèn)題
由于嵌入式邏輯分析儀方法存在的部分限制,許多FPGA設(shè)計(jì)人員已經(jīng)采用外部邏輯分析儀方法,來(lái)利用FPGA的靈活性和外部邏輯分析儀的處理能力,如泰克TLA系列邏輯分析儀。
在這種方法中,感興趣的內(nèi)部信號(hào)路由到FPGA沒(méi)有使用的針腳上,然后連接到邏輯分析儀上,這種方法提供了非常深的內(nèi)存,適合調(diào)試那種出現(xiàn)故障和實(shí)際導(dǎo)致該故障的原因在時(shí)間上相距很遠(yuǎn)的問(wèn)題;對(duì)于需要采集大量數(shù)據(jù)進(jìn)行后期分析的設(shè)計(jì)人員也非常必要。另外它還可以把內(nèi)部FPGA信號(hào)與電路系統(tǒng)中的其他活動(dòng)時(shí)間關(guān)聯(lián)起來(lái)。
與嵌入式邏輯分析儀方法一樣,也需要平衡許多矛盾。在針腳與內(nèi)部資源上,外部邏輯分析儀方法采用非常少的邏輯資源,不使用FPGA內(nèi)存資源。它釋放了這些資源,來(lái)實(shí)現(xiàn)所需功能?,F(xiàn)在的矛盾在于,必需增加專(zhuān)用于調(diào)試的部分針腳數(shù)量,而很明顯,設(shè)計(jì)要使用這些針腳。
在探測(cè)與工作模式問(wèn)題上,外部邏輯分析儀探測(cè)要比嵌入式邏輯分析儀方法要求的探測(cè)復(fù)雜一些。必需確定怎樣使用邏輯分析儀探頭探測(cè)FPGA內(nèi)部信號(hào),而不能使用電路板上已有的JTAG連接器。最簡(jiǎn)便的方式是在電路板中增加一個(gè)測(cè)試連接器,這可以簡(jiǎn)便地把FPGA信號(hào)與系統(tǒng)中的其他信號(hào)關(guān)聯(lián)起來(lái)。
在成本與靈活性問(wèn)題上,盡管外部邏輯分析儀的購(gòu)買(mǎi)價(jià)格確實(shí)要高于嵌入式邏輯分析儀,但使用外部邏輯分析儀可以解決更加廣泛的問(wèn)題。邏輯分析儀不僅可以用于FPGA調(diào)試,還可以用來(lái)解決其他數(shù)字設(shè)計(jì)挑戰(zhàn),它被公認(rèn)為進(jìn)行通用數(shù)字系統(tǒng)硬件調(diào)試的最佳工具。外部邏輯分析儀能夠?qū)崿F(xiàn)更加靈活的采集模式和觸發(fā)功能。通過(guò)外部邏輯分析儀,可以設(shè)置最多16個(gè)不同的觸發(fā)狀態(tài)(每一個(gè)狀態(tài)含高達(dá)16個(gè)條件判斷分支),每一個(gè)通道提供256M的內(nèi)存,并且可以在定時(shí)分析模式下以高達(dá)125ps的分辨率(8GHz采樣)捕獲數(shù)據(jù)。
選擇合適的FPGA調(diào)試方法
這兩種方法都可以使用,采用哪種方法要視具體情況而定。挑戰(zhàn)在于確定哪種方法更適合您的設(shè)計(jì)。
用戶可以問(wèn)自己預(yù)計(jì)有哪些問(wèn)題需要解決?如果您認(rèn)為問(wèn)題僅限于FPGA內(nèi)部的功能性,那么使用嵌入式邏輯分析儀可以提供要求的所有調(diào)試功能。但是,如果預(yù)計(jì)有更多的調(diào)試問(wèn)題,要求檢驗(yàn)定時(shí)余量、把內(nèi)部FPGA活動(dòng)與電路板上的其他活動(dòng)關(guān)聯(lián)起來(lái),或要求更強(qiáng)大的觸發(fā)功能,那么使用外部邏輯分析儀更適合滿足調(diào)試需求。
當(dāng)FPGA芯片針腳存在超過(guò)200M的高速總線,例如集成內(nèi)存控制器的DDRI、DDRII內(nèi)存總線,以及集成高SerDes的高速串行IO總線,信號(hào)完整性測(cè)試是保證設(shè)計(jì)成功的基礎(chǔ)。
用戶可能問(wèn)除狀態(tài)數(shù)據(jù)外,是否需要考察快速定時(shí)信息?外部邏輯分析儀允許以高達(dá)125ps的分辨率(8GS/s采樣)查看FPGA信號(hào)詳細(xì)的定時(shí)關(guān)系,這有助于檢驗(yàn)設(shè)計(jì)中實(shí)際發(fā)生的事件,檢驗(yàn)設(shè)計(jì)的定時(shí)余量。嵌入式邏輯分析儀只能捕獲與FPGA中已有的指定時(shí)鐘同步的數(shù)據(jù)。
需要捕獲多深的數(shù)據(jù)?外部邏輯分析儀提供的采集內(nèi)存更深。一般在嵌入式邏輯分析儀中,最大取樣深度設(shè)為128Kb,這一數(shù)字受到器件限制。而在外部邏輯分析儀中,可以捕獲最多256Mb樣點(diǎn)。這有助于查看和分析更多的問(wèn)題及潛在原因,從而縮短調(diào)試時(shí)間。
設(shè)計(jì)中更多地受限于針腳還是受限于資源?使用嵌入式邏輯分析儀不要求任何額外的輸出針腳,但必須使用內(nèi)部FPGA資源,實(shí)現(xiàn)邏輯分析儀功能。使用外部邏輯分析儀要求使用額外的輸出針腳,但使用內(nèi)部FPGA資源的需求達(dá)到最小(或消除了這種需求)。
評(píng)論