隨著FPGA密度的不斷增加,工程師們開(kāi)始尋找方法來(lái)完成設(shè)計(jì)中的測(cè)試和驗(yàn)證。傳統(tǒng)方法是設(shè)計(jì)人員用邏輯分析儀、示波器和總線分析儀通過(guò)測(cè)試頭和連接器來(lái)檢測(cè)、驗(yàn)證信號(hào)。
在設(shè)計(jì)策略區(qū)將邏輯分析單元核添加到FPGA設(shè)計(jì)中,可對(duì)內(nèi)部單元實(shí)施徹底的測(cè)試,解放I/O腳。
這些測(cè)試頭和連接器不僅增加了板子的成本,而且還帶來(lái)了信號(hào)完整性和時(shí)鐘問(wèn)題,尤其是在高速板的設(shè)計(jì)中。為了解決這些測(cè)試過(guò)程中的難題,曾經(jīng)一度只有外部測(cè)試測(cè)量設(shè)備才能完成的工作,現(xiàn)在由FPGA內(nèi)部的軟核來(lái)完成。
邏輯分析核
可編程邏輯分析核不能完全替代傳統(tǒng)的板級(jí)測(cè)試方法,因?yàn)楝F(xiàn)在復(fù)雜的板上除了FPGA以外,包括更多的高密存儲(chǔ)器、混合信號(hào)器件和高速的ASIC,所有這些都要求傳統(tǒng)的板級(jí)測(cè)試方法。
即使對(duì)FPGA,邏輯測(cè)試儀核也不總是最佳選擇。如在最大時(shí)鐘頻率超過(guò)150MHz或FPGA沒(méi)有包含內(nèi)部存儲(chǔ)器,或當(dāng)被測(cè)器件是最小邏輯單元時(shí),測(cè)試核就無(wú)能為力了。
然而,當(dāng)測(cè)試帶軟件核的幾百萬(wàn)門(mén)的FPGA或高管腳密度BGA封裝器件時(shí),由于捕捉外部信號(hào)很困難或不可能,這時(shí)才應(yīng)該應(yīng)用可編程邏輯分析核作為設(shè)計(jì)測(cè)試策略。
資源比較
傳統(tǒng)測(cè)試方法需要分配I/O管腳和內(nèi)部FPGA路由資源,以便將信號(hào)引出芯片,而內(nèi)部邏輯分析核需要現(xiàn)有的邏輯單元和和內(nèi)部存儲(chǔ)器資源。包含用戶定義邏輯的設(shè)計(jì)正驅(qū)動(dòng)市場(chǎng)對(duì)管腳多達(dá)1100個(gè)的新封裝的需求。
完成應(yīng)用級(jí)的調(diào)試需要分配測(cè)試管腳數(shù),這會(huì)降低FPGA的外部功能。當(dāng)然,分配給測(cè)試內(nèi)部邏輯的I/O管腳數(shù)可以減少,但只能通過(guò)限制外部測(cè)試數(shù)據(jù)量來(lái)實(shí)現(xiàn)。
用于FPGA測(cè)試分析核的邏輯單元的數(shù)量主要取決于為了調(diào)試FPGA的功能邏輯所要分析的比特?cái)?shù)和要求的采樣數(shù)(衡量需要多少存儲(chǔ)器)。
FPGA中的邏輯單元是一個(gè)查找表和D觸發(fā)器組成的,每個(gè)邏輯單元可單獨(dú)配置,并同其它單元通過(guò)高速行列數(shù)據(jù)通路內(nèi)部連接。
嵌入式邏輯單元是高速RAM模塊,也連接到行列式數(shù)據(jù)通路。FPGA中邏輯單元數(shù)目和RAM數(shù)量決定它的密度——最大的FPGA包括138000邏輯單元和3Mbits存儲(chǔ)量。
邏輯分析核用一定數(shù)量的邏輯單元儲(chǔ)存觸發(fā)條件、比較觸發(fā)事件和儲(chǔ)存數(shù)據(jù)。一個(gè)典型的邏輯分析核有32位觸發(fā)器和2K取樣帶寬,產(chǎn)生大約200個(gè)邏輯單元和65Kbits存儲(chǔ)器。
行列內(nèi)部連接(在軟核邏輯、用戶定義邏輯和邏輯分析核之間傳送數(shù)據(jù))的百分比很大。但因?yàn)檫壿嫹治龊嗽谄骷䞍?nèi)部,它們和工作邏輯共存,這就意味著如果FPGA設(shè)計(jì)者優(yōu)先為調(diào)試邏輯分析核芯分配了資源,就必須選擇最佳的存儲(chǔ)單元,以最小的資源實(shí)現(xiàn)最大功能(圖示)。
準(zhǔn)確度
在常用IC封裝中,信號(hào)掩埋在物理器件之下,只能通過(guò)板上邊線到測(cè)試頭和連接頭獲取。隨著邊線長(zhǎng)度的增加和時(shí)鐘速度的增加,信號(hào)的衰減及信號(hào)的交叉這些因素影響了傳統(tǒng)的測(cè)試目的。