<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > EDA/PCB > 設計應用 > 加速FPGA系統實(shí)時(shí)調試技術(shù)

加速FPGA系統實(shí)時(shí)調試技術(shù)

作者: 時(shí)間:2012-10-24 來(lái)源:網(wǎng)絡(luò ) 收藏

設計階段

在這一階段不僅要設計,而且要使用仿真工具開(kāi)始調試。實(shí)踐證明,正確使用仿真為找到和校正設計錯誤提供了一條有效的途徑。但是,不應依賴(lài)仿真作為調試設計的唯一工具。

在設計階段,還需要提前考慮調試和檢驗階段,規劃怎樣在線(xiàn)快速調試,這可以定義整體調試方法,幫助識別要求的任何測試測量工具,確定選擇的調試方法對電路板設計帶來(lái)的影響。針對可能選用的存在的高速總線(xiàn),除了考慮邏輯時(shí)序的測試和驗證外,還應該充分考慮后面可能面臨的信號完整性測試和分析難題。

調試和檢驗階段

在調試階段,必需找到仿真沒(méi)有找到的棘手問(wèn)題。怎樣以省時(shí)省力的方式完成這一工作是一個(gè)挑戰。

在本文的第一部分,我們將考察怎樣選擇正確的FPGA調試方法及怎樣有效利用新方法的處理能力,這些新方法可以只使用少量的FPGA針腳查看許多內部FPGA信號。如果使用得當,您可以突破最棘手的FPGA調試問(wèn)題。

FPGA調試方法

在設計階段需要作出的關(guān)鍵選擇是使用哪種FPGA調試方法。在理想情況下,您希望有一種方法,這種方法可以移植到所有FPGA設計中,能夠洞察FPGA內部運行和運行過(guò)程,為確定和分析棘手的問(wèn)題提供相應的處理能力。

基本在線(xiàn)FPGA調試方法有兩種:使用嵌入式邏輯分析儀以及使用外部邏輯分析儀。選擇使用哪種方法取決于項目的調試需求。

嵌入式邏輯分析儀內核

主要FPGA廠(chǎng)商針對器件的在線(xiàn)調試都提供了嵌入式邏輯分析儀內核,如ALTERA的SignalTap II和Xilinx的ChipScope ILA。這些知識產(chǎn)權模塊插入FPGA設計中,同時(shí)提供觸發(fā)功能和存儲功能。它們使用FPGA邏輯資源實(shí)現觸發(fā)電路,使用FPGA存儲模塊實(shí)現存儲功能。它們使用JTAG配置內核操作,并用來(lái)把捕獲的數據傳送到PC上進(jìn)行查看。

由于嵌入式邏輯分析儀使用內部FPGA資源,因此其通常用于大型FPGA,這些大型FPGA可以更好地消化插入內核帶來(lái)的開(kāi)銷(xiāo)。一般來(lái)說(shuō),用戶(hù)希望內核占用的FPGA邏輯資源不超過(guò)可用資源的5%。

與任何調試方法一樣,還要知道這種方法存在的部分矛盾。

針腳與內部資源

嵌入邏輯分析儀內核不使用額外的測試針腳,因為它通過(guò)現有的JTAG針腳訪(fǎng)問(wèn)內核。這意味著(zhù)即使設計受到FPGA針腳限制,您仍可以使用這種方法。矛盾在于,它使用的內部FPGA邏輯資源和存儲模塊可以用來(lái)實(shí)現設計。此外,由于使用片內內存存儲捕獲的數據,因此內存深度一般相對較淺。

探測與運行模式

嵌入式邏輯分析儀核心的探測非常簡(jiǎn)單。它使用現有的JTAG針腳,因此不必擔心怎樣把外部邏輯分析儀連接到上。矛盾在于,盡管嵌入式邏輯分析儀可以查看FPGA操作,但沒(méi)有一種方式把這些信息與電路板級或級信息時(shí)間關(guān)聯(lián)起來(lái)。而把FPGA內部的信號與FPGA外部的信號關(guān)聯(lián)起來(lái)對解決最棘手的調試挑戰至關(guān)重要。在分析方法上,嵌入式邏輯分析儀只能進(jìn)行狀態(tài)分析。

成本與靈活性

大多數FP

GA廠(chǎng)商提供了嵌入式邏輯分析儀內核,而其價(jià)格要低于全功能外部邏輯分析儀。雖然用戶(hù)希望更多的功能,但嵌入式邏輯分析儀內核的功能無(wú)論從通用性,分析方式,觸發(fā)能力,還是從存儲和分析能力都弱于全功能外部邏輯分析儀,而用戶(hù)通常需要這些功能,來(lái)捕獲和分析棘手的調試挑戰。例如,嵌入式邏輯分析儀只能在狀態(tài)模式下操作,它們捕獲與FPGA設計中已有的指定時(shí)鐘同步的數據,因此不能提供精確的信號定時(shí)關(guān)系。

外部邏輯分析儀

由于嵌入式邏輯分析儀方法存在的部分限制,許多FPGA設計人員已經(jīng)采用外部邏輯分析儀方法,來(lái)利用FPGA的靈活性和外部邏輯分析儀的處理能力,如泰克TLA系列邏輯分析儀。

在這種方法中,感興趣的內部信號路由到FPGA沒(méi)有使用的針腳上,然后連接到邏輯分析儀上。這種方法提供了非常深的內存,適合調試那種出現故障和實(shí)際導致該故障的原因在時(shí)間上相距很遠的問(wèn)題;對于需要采集大量數據進(jìn)行后期分析的設計人員也非常必要。另外它還可以把內部FPGA信號與電路系統中的其它活動(dòng)時(shí)間關(guān)聯(lián)起來(lái)。

與嵌入式邏輯分析儀方法一樣,也需要考慮許多矛盾。

針腳與內部資源

外部邏輯分析儀方法采用非常少的邏輯資源,不使用FPGA內存資源。它釋放了這些資源,來(lái)實(shí)現所需功能?,F在的矛盾在于,必需增加專(zhuān)用于調試的針腳數量,而很明顯,設計要使用這些針腳。

探測與工作模式

外部邏輯分析儀探測要比嵌入式邏輯分析儀方法要求的探測復雜一些。必需確定怎樣使用邏輯分析儀探頭探測FPGA內部信號,而不能使用電路板上已有的JTAG連接器。最簡(jiǎn)便的方式是在電路板中增加一個(gè)測試連接器,這可以簡(jiǎn)便地把FPGA信號與系統中的其它信號關(guān)聯(lián)起來(lái)。

成本與靈活性

盡管外部邏輯分析儀的購買(mǎi)價(jià)格確實(shí)要高于嵌入式邏輯分析儀,但使用外部邏輯分析儀可以解決更加廣泛的問(wèn)題。邏輯分析儀不僅可以用于FPGA調試,還可以用來(lái)解決其它數字設計挑戰,它被公認為進(jìn)行通用數字系統硬件調試的最佳工具。外部邏輯分析儀能夠實(shí)現更加靈活的采集模式和觸發(fā)功能。通過(guò)外部邏輯分析儀,可以設置最多16個(gè)不同的觸發(fā)狀態(tài)(每一個(gè)狀態(tài)含有16個(gè)條件判斷分支),每一個(gè)通道提供256M的內存,并且可以在定時(shí)分析模式下以高達125 ps的分辨率(8GS/s采樣)捕獲數據。



關(guān)鍵詞: FPGA 系統 實(shí)時(shí)調試

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>