要點(diǎn)
FPGA能滿足目前的視頻處理系統(tǒng)的需要。
在視頻處理應(yīng)用領(lǐng)域,必須格外重視測試臺設(shè)計(jì)。
應(yīng)使驗(yàn)證環(huán)境盡可能接近真實(shí)世界,這將使電路板級的集成變得容易,并減少重制需要。
參與消費(fèi)電子細(xì)分市場,會帶來許多優(yōu)勢。盡管如此,該細(xì)分市場的設(shè)計(jì)團(tuán)隊(duì)仍將面臨急劇收縮的上市時間窗口。因此,基于FPGA的設(shè)計(jì)已經(jīng)演變成為許多系統(tǒng)體系結(jié)構(gòu)設(shè)計(jì)者的首選。同時,人們對消費(fèi)品中的多媒體功能的需求日益增多,這使得DSP和流傳輸接口成為許多嵌入式產(chǎn)品中必備的部件。幾家FPGA廠商開發(fā)了帶有DSP核心與流傳輸接口的FPGA,它們在技術(shù)和復(fù)雜度上均足以應(yīng)對最近這些設(shè)計(jì)要求。
但是,如果FPGA通過接口與DSP核心連接,并且高速視頻數(shù)據(jù)是通過它來傳輸,那么它根本不是簡單的系統(tǒng)。這種更高的設(shè)計(jì)復(fù)雜度導(dǎo)致了額外的驗(yàn)證難題,并且如果您在設(shè)計(jì)階段晚期發(fā)現(xiàn)一處重大錯誤,那么這還會導(dǎo)致高成本的系統(tǒng)板重制。為了消除這一隱患,您必須仔細(xì)考慮自己采用的驗(yàn)證方法,以便降低重制風(fēng)險(xiǎn)。
對基于FPGA的設(shè)計(jì)進(jìn)行驗(yàn)證,其最大優(yōu)勢在于,系統(tǒng)在最低級別擁有預(yù)先定義的體系結(jié)構(gòu),因此您在設(shè)計(jì)伊始就知道測試必要場景的范圍。因此,驗(yàn)證團(tuán)隊(duì)可在FPGA基礎(chǔ)上構(gòu)建一個模仿實(shí)際系統(tǒng)體系結(jié)構(gòu)的驗(yàn)證環(huán)境。
除了驗(yàn)證外設(shè)之外,您還必須驗(yàn)證FPGA內(nèi)部的各種設(shè)計(jì)元件,比如數(shù)字時鐘管理器(DCM)和塊RAM,您在自己的設(shè)計(jì)方案中會用到它們。但是這需要您驗(yàn)證許多部件。因此測試完成時間會極大地影響產(chǎn)品開發(fā)總體時間。有鑒于此,驗(yàn)證環(huán)境必須具有很高的時間效率。如果您在對FPGA設(shè)計(jì)元件和外圍器件有充分了解的前提下開發(fā)出恰當(dāng)?shù)尿?yàn)證環(huán)境,那么該環(huán)境的初期設(shè)計(jì)可使您編寫出準(zhǔn)確的測試案例,并確認(rèn)電路板設(shè)計(jì)。
基元的正確使用
FPGA廠商們提供DCM、塊RAM等經(jīng)過良好驗(yàn)證的FPGA基元。但是,要想在FPGA設(shè)計(jì)中正確使用這些基元,您就必須遵循特定的指導(dǎo)方針。務(wù)必在設(shè)計(jì)方案變成芯片之前發(fā)現(xiàn)所有不正確的使用。例如,輸入時鐘上的允許時鐘抖動就是這樣一條DCM約束。在某個測試案例中,DCM在低頻模式時,對周期抖動的約束為±300ps。按照設(shè)計(jì)規(guī)格,DCM的輸入時鐘可以是16.384、22.5792或24.576MHz。但是在設(shè)計(jì)驗(yàn)證期間,當(dāng)實(shí)驗(yàn)人員把輸入時鐘從一個頻率切換到另一個頻率時,DCM解鎖了,這是因?yàn)轭l率的切換違反了輸入時鐘抖動約束。因此,修改后的設(shè)計(jì)方案實(shí)現(xiàn)了一種機(jī)制,在改變輸入時鐘頻率的同時使DCM復(fù)位。如果您在前端驗(yàn)證期間未能發(fā)現(xiàn)此類錯誤,那么在電路板設(shè)計(jì)確認(rèn)期間,很有可能需要一周或更長時間來查明錯誤。
隨著技術(shù)的進(jìn)步,F(xiàn)PGA目前已把塊RAM包含在內(nèi),后者可以是單端口或雙端口存儲器。如果是雙端口RAM,那么塊RAM允許兩個端口同時訪問同一個存儲單元。但是,如果設(shè)計(jì)者以不恰當(dāng)?shù)姆绞絹韺?shí)現(xiàn)RAM控制器,那么在同一個有效的寫周期當(dāng)中,兩個存儲器端口也許會試圖向相同的RAM位置寫入不同數(shù)據(jù)。驗(yàn)證團(tuán)隊(duì)必須為此類場景準(zhǔn)備單獨(dú)的測試。因此,F(xiàn)PGA設(shè)計(jì)者和FPGA驗(yàn)證工程師都必須意識到FPGA內(nèi)部元件的要求或約束。
輸入信號的變化
在現(xiàn)實(shí)世界,F(xiàn)PGA的輸入信號具有路由路徑延遲和質(zhì)量退化現(xiàn)象。FPGA驗(yàn)證計(jì)劃應(yīng)該考慮輸入激勵信號生成過程中的時序和信號完整性的這類變化。例如,一種很好的做法就是了解輸入信號偏離理想條件的漂移程度,這樣您就能驗(yàn)證FPGA設(shè)計(jì)在漂移期間將順利發(fā)揮作用。當(dāng)接口同步,并且某個外部器件在驅(qū)動時鐘時,這項(xiàng)要求就會變得至關(guān)重要。根據(jù)路由路徑延遲、發(fā)射器件的時鐘至輸出延遲、接收器件的輸入設(shè)置時間的不同情況,數(shù)據(jù)、控制和時鐘可能會具有各自不同的延遲。在高頻工作期間,這一約束也許會給FPGA留下很窄的采樣窗口,供它記錄輸入數(shù)據(jù)。在這種情況下,在向FPGA設(shè)計(jì)提供激勵時,您就應(yīng)該考慮這類實(shí)時延遲。
在現(xiàn)實(shí)世界,輸入時鐘伴隨著抖動和漂移變化。雖然你可用DCM來處理這些變化,但DCM在輸入時鐘變化公差方面有自己的限制。驗(yàn)證工程師必須知道在真實(shí)系統(tǒng)中可能出現(xiàn)的時鐘變化,并且在驗(yàn)證環(huán)境中生成輸入時鐘時,包含相同的變化。采用這類做法可幫助發(fā)現(xiàn)FPGA設(shè)計(jì)方案的局限性,并在早期開發(fā)階段實(shí)施糾正行動。
外設(shè)的集成
流媒體的迅速成長要求各系統(tǒng)以更快的速度工作。對于頻率較高的系統(tǒng),您在集成FPGA及其外設(shè)器件時務(wù)必小心。這些外設(shè)器件在輸入設(shè)置和保持時間方面具有時序約束。驗(yàn)證工程師必須知道所有外設(shè)器件的時序約束。如果添加示波器來驗(yàn)證具有不同時序約束的FPGA設(shè)計(jì)方案,就會迫使設(shè)計(jì)者遵循恰當(dāng)?shù)脑O(shè)計(jì)指導(dǎo)方針,來使FPGA設(shè)計(jì)與系統(tǒng)兼容。
FPGA可以實(shí)現(xiàn)UART、I2C、SPI、GPIO等等標(biāo)準(zhǔn)接口。這些標(biāo)準(zhǔn)應(yīng)該指定這些端口的驗(yàn)證策略。在驗(yàn)證這類設(shè)計(jì)方案時,您還必須考慮那些使用定制接口的外設(shè)器件的時序約束。例如,F(xiàn)PGA的GPIO接口可與板上多路復(fù)用器連接。FPGA負(fù)責(zé)驅(qū)動多路復(fù)用器的選擇輸入,然后記錄它的輸出。一旦選擇輸入發(fā)生變化,多路復(fù)用器在其輸入端就需要穩(wěn)定時間。如果實(shí)現(xiàn)在生成驗(yàn)證模型響應(yīng)過程中發(fā)生的這種延遲,就可確保FPGA僅在多路復(fù)用器的輸出穩(wěn)定后記錄它的輸出。
使各團(tuán)隊(duì)同步工作
使受測FPGA設(shè)計(jì)方案感覺像是實(shí)時應(yīng)用軟件流,這是一種很好的做法。當(dāng)應(yīng)用軟件施加自己的某些限制時,看似在驗(yàn)證測試臺上工作的FPGA設(shè)計(jì)方案也許無法正常運(yùn)行。不妨設(shè)想某種用于高清視頻記錄的FPGA設(shè)計(jì)方案。FPGA必須記錄原始視頻數(shù)據(jù),并填充內(nèi)部FIFO緩沖器。DSP通過外部存儲器接口與FPGA連接,讀取FPGAFIFO緩沖器的內(nèi)容以便記錄視頻數(shù)據(jù)。利用來自真實(shí)應(yīng)用軟件流的時序信息,驗(yàn)證工程師就能估計(jì)DSP在連續(xù)兩次FIFO緩沖器讀操作之間可能耗費(fèi)的最長時間。工程師然后可以實(shí)現(xiàn)某個考慮了DSP上述限制的測試案例。如果FIFO緩沖器容量太小,無法緩沖連續(xù)兩次FIFO緩沖器讀操作之間的最長間隔期間到達(dá)的所有數(shù)據(jù),那么測試就會記錄一次錯誤。
視頻信號處理領(lǐng)域的問題與數(shù)據(jù)相關(guān)。因此應(yīng)在電路板設(shè)計(jì)確認(rèn)期間使用不同類型的視頻圖形,這可能很重要。該方法有助于確保任何視頻流應(yīng)用的準(zhǔn)確視頻處理。隨著開源領(lǐng)域的進(jìn)步,驗(yàn)證工程師可隨時找到合適的開源軟件,來生成原始數(shù)據(jù)格式的此類測試圖形。驗(yàn)證工程師可利用軟件或直接記錄來自某系統(tǒng)的圖形,由此生成原始數(shù)據(jù)文件等視頻圖形。選用這類方法后,驗(yàn)證工程師就能在實(shí)時測試場景下發(fā)現(xiàn)設(shè)計(jì)錯誤,并在前端驗(yàn)證期間糾正它們,而不必等到客戶碰巧應(yīng)用了某個視頻圖形使系統(tǒng)失靈后。
利用軟件或記錄直接來自某系統(tǒng)的圖形驗(yàn)證工程師就能在實(shí)時測試場景下發(fā)現(xiàn)設(shè)計(jì)錯誤
在設(shè)計(jì)階段伊始,驗(yàn)證團(tuán)隊(duì)和軟件團(tuán)隊(duì)在測試計(jì)劃中就應(yīng)該擁有一套共同的測試場景。這套共同的測試案例將確保電路板設(shè)計(jì)確認(rèn)期間不存在漏洞。另外,設(shè)計(jì)者在設(shè)計(jì)階段初期還能發(fā)現(xiàn)或糾正任何實(shí)現(xiàn)錯誤或集成錯誤。
FPGA設(shè)計(jì)方案十分復(fù)雜,這就要求設(shè)計(jì)者在設(shè)計(jì)階段盡早發(fā)現(xiàn)問題,避免重制。在減少電路板設(shè)計(jì)確認(rèn)期間出現(xiàn)的錯誤數(shù)量方面,驗(yàn)證的作用變得很重要。驗(yàn)證工程師應(yīng)仔細(xì)考慮系統(tǒng)體系結(jié)構(gòu),并應(yīng)具備外設(shè)硬件方面的工作知識,這將使他們能寫出更接近實(shí)時應(yīng)用的測試場景。這些萬法會使驗(yàn)證工作變得很有效,最終使電路板設(shè)計(jì)確認(rèn)工作變得很容易。
-
FPGA
+關(guān)注
關(guān)注
1625文章
21620瀏覽量
601241 -
嵌入式
+關(guān)注
關(guān)注
5059文章
18973瀏覽量
302062 -
視頻處理
+關(guān)注
關(guān)注
2文章
98瀏覽量
18796
發(fā)布評論請先 登錄
相關(guān)推薦
評論