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