FPGA總體設計的硬體考慮

2021-09-27 08:43:10 字數 1410 閱讀 8431

fpga總體設計

—硬體相關

fpga在專案開始階段需要考慮的設計主要有3大方面:乙個是硬體做板相關的fpga公升級電路的設計以及外圍io設計;乙個是與軟體配合相關的軟硬體介面設計;乙個是fpga內部的邏輯功能規劃。本文先針對硬體設計相關進行闡述:

公升級電路的設計:fpga的好處就是產品發布後還能進行功能公升級以及功能修改,但在客戶那裡應該沒有人會願意開啟機箱進行公升級,這時就要設計可靠的公升級通路。

1) 板上有配置器件:如果上電後fpga需要快速配置,這時一般會採用spi flash的配置方式,這時我們就要設計乙個電路如何更新spi flash,如果板上有cpu,可以直接寫spi flash,這種一般即使寫錯了,校驗後重新寫就好了。如果板上沒有cpu,那fpga內部或者配套的cpld就要預留寫flash的通路。這個通路實際上就是設計乙個使用者介面到spi介面的橋接器,xilinx 7系列以後的器件官方都提供了參考設計,而且支援spi flash中存入2個映像,其中乙個是公升級失敗後起機的golden映像(否則公升級檔案寫錯,板就變成磚頭了),雖然xilinx提供參考設計,但那只是針對spi flash的操作,使用者還要設計預留通道與這個控制器對接,比如以太、spi之類。這時配合的軟體就要考慮丟包、錯包這些影響,要保證檔案都正確寫入flash。altera公司應該也是提供類似東西,原理上總是相通的。但quartus能寫入的一般都是自己的flash,否則就需要外接乙個cpld做配置電路,注意這個cpld必須altera自己的,否則不能用他的配置ip。

2) 板上如果沒有配置器件,那cpu直接通過被動配置方式進行配置,就是控制programe、status、din那幾根線,cpu照時序做就好,缺點是cpu必須起來後才能進行配置。

3) 目前還有一種配置就是通過pcie介面,這個設計在電路上有一定要求,fpga只需要掛接乙個很小的spi flash儲存pcie硬核的設定就好,起機後再把其他的功能映像從cpu端載入,這種一般再新的器件會支援,需要檢視手冊詳細說明,不同器件再pcie的復位以及其他引腳設計上還有要求。

這種配置一般用在pcie的加速卡中,因為上電後系統會對pcie裝置進行掃瞄,一種好的做法就是通過spi flash快速載入pcie相關的映像,讓列舉軟體看到fpga,cpu完全起機後,再把需要的功能配置進去。

硬體相關的第2個設計是外圍io的設計,包括vccio的電源連線、io位置的分配、serdes的連線等。

雖然fpga號稱io可以支援多種標準電平,但也不是可以隨心所欲,特別是用到ddr3這些介面時。一種就是使勁看ds,但個人覺得太慢。好的做法是,建立乙個demo工程,例化那些可能用到的外圍io ip,比如ddr,pcie,以太介面等,把這些examle放在乙個**中不被優化掉,編譯通過的話,一般io分配就沒問題了,有問題再看文件修改。編譯通過後從工程匯出io配置的csv檔案,xilinx的會比較詳細說明每個引腳的連線方式,包括端接等。altera在工程目錄下有個.pin檔案,似乎也有類似說明。有了這個檔案基本上可以保證做板不會范大錯了。

FPGA總體設計的硬體考慮

fpga總體設計 硬體相關 fpga在專案開始階段需要考慮的設計主要有3大方面 乙個是硬體做板相關的fpga公升級電路的設計以及外圍io設計 乙個是與軟體配合相關的軟硬體介面設計 乙個是fpga內部的邏輯功能規劃。本文先針對硬體設計相關進行闡述 公升級電路的設計 fpga的好處就是產品發布後還能進行...

總體設計是建模

工作都快兩年了 對軟體開發流程才開始有點認識 先談談對軟體總體設計的理解.所謂總體設計 是在對目標系統的理解 分析的基礎上 對系統進行抽象 建模的過程 這個過程是非常重要的 可以說是系統設計階段 這個模型描述了目標系統的功能的大體是如何完成的 說明了系統內部的模組是如何劃分的 以及它們又是如何聯絡在...

什麼是展覽的總體設計

展覽的總體設計,是展覽的設計與實施的主導,是根據展覽展出方案主題結合展館的情況,從總體的布局上對展出形式 展覽效果 色彩 風格和展覽的宣傳等進行總體形象的構思設計,將不同的展品進行統一的組織安排,使之成為有機聯絡的整體,同時使展出者和參觀者有著合理的工作和活動空間。總體設計的內容 總體設計包括展覽會...