新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 如何簡化FPGA測試和調(diào)試?

如何簡化FPGA測試和調(diào)試?

作者: 時間:2013-06-18 來源:網(wǎng)絡(luò) 收藏

的設(shè)計(jì)速度、尺寸和復(fù)雜度明顯增加,使得整個設(shè)計(jì)流程中的驗(yàn)證和成為當(dāng)前系統(tǒng)的關(guān)鍵部分。獲得內(nèi)部信號有限、FPGA封裝和印刷電路板電氣噪聲,這一切使得設(shè)計(jì)和檢驗(yàn)變成設(shè)計(jì)周期中最困難的流程。此外,幾乎當(dāng)前所有的像CPU、DSP、ASIC等高速芯片的總線,除了提供高速并行總線接口外,正迅速向高速串行接口的方向發(fā)展。FPGA也不例外,每一條物理鏈路的速度從600Mbps到高達(dá)10Gbps,高速IO的和驗(yàn)證更成為傳統(tǒng)專注于FPGA內(nèi)部邏輯設(shè)計(jì)的設(shè)計(jì)人員面臨的巨大挑戰(zhàn)。這些挑戰(zhàn)使設(shè)計(jì)人員會把絕大部分設(shè)計(jì)周期時間放在和檢驗(yàn)設(shè)計(jì)上。

本文引用地址:http://butianyuan.cn/article/189579.htm

設(shè)計(jì)階段即應(yīng)考慮問題

在FPGA系統(tǒng)設(shè)計(jì)完成前,有兩個不同的階段:設(shè)計(jì)階段、調(diào)試和檢驗(yàn)階段。設(shè)計(jì)階段的主要任務(wù)是輸入、仿真和實(shí)現(xiàn);調(diào)試和檢驗(yàn)階段的主要任務(wù)是檢驗(yàn)設(shè)計(jì),校正發(fā)現(xiàn)的任何錯誤。

在設(shè)計(jì)階段不僅要設(shè)計(jì),而且要使用仿真工具開始調(diào)試。實(shí)踐證明,正確使用仿真技術(shù)為找到和校正設(shè)計(jì)錯誤提供了一條有效的途徑。但是,不應(yīng)依賴仿真作為調(diào)試FPGA設(shè)計(jì)的唯一工具,有許多問題僅僅通過仿真是無能為力的。

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

在調(diào)試階段,必需找到仿真沒有找到的棘手問題。怎樣以省時省力的方式完成這一工作是一個挑戰(zhàn)。

嵌入式邏輯分析儀只能進(jìn)行狀態(tài)分析

在設(shè)計(jì)階段需要作出的關(guān)鍵選擇是使用哪種FPGA調(diào)試方法。在理想情況下,希望有一種方法可以移植到所有FPGA設(shè)計(jì)中,能夠洞察FPGA內(nèi)部運(yùn)行和系統(tǒng)運(yùn)行過程,為確定和分析棘手的問題提供相應(yīng)的處理能力?;驹诰€FPGA調(diào)試方法有兩種:使用嵌入式邏輯分析儀以及使用外部邏輯分析儀。選擇使用哪種方法取決于項(xiàng)目的調(diào)試需求。

主要FPGA廠商針對器件的在線調(diào)試都提供了嵌入式邏輯分析儀內(nèi)核。這些知識產(chǎn)權(quán)模塊插入FPGA設(shè)計(jì)中,同時提供觸發(fā)功能和存儲功能。它們使用FPGA邏輯資源實(shí)現(xiàn)觸發(fā)電路,使用FPGA存儲模塊實(shí)現(xiàn)存儲功能。它們使用JTAG配置內(nèi)核操作,并用來把捕獲的數(shù)據(jù)傳送到PC上進(jìn)行查看。由于嵌入式邏輯分析儀使用內(nèi)部FPGA資源,因此其通常用于大型FPGA,這些大型FPGA可以更好地消化插入內(nèi)核帶來的開銷。一般來說,用戶希望內(nèi)核占用的FPGA邏輯資源不超過可用資源的5%。與任何調(diào)試方法一樣,還要知道這種方法存在的部分矛盾。

在針腳與內(nèi)部資源上,嵌入邏輯分析儀內(nèi)核不使用額外的測試針腳,因?yàn)樗ㄟ^現(xiàn)有的JTAG針腳訪問內(nèi)核。這意昧著即使設(shè)計(jì)受到FPGA針腳限制,您也可以使用這種方法。矛盾在于,它使用的內(nèi)部FPGA邏輯資源和存儲模塊可以用來實(shí)現(xiàn)設(shè)計(jì)。此外,由于使用片內(nèi)內(nèi)存存儲捕獲的數(shù)據(jù),因此內(nèi)存深度一般相對較淺。

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

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


上一頁 1 2 下一頁

關(guān)鍵詞: FPGA 測試 調(diào)試

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉