FPGA軟硬協同設計學習筆記及基礎知識(一)

   

1、FPGA軟件硬件協同定義:算法

     軟件:通常以軟件語言來描述,相似ARM處理器的嵌入式設計。硬件定義如FPGA,裏面資源有限但可重配置性有許多優勢,新的有動態可充配置技術。編程

     

      Xilinx開發了部分動態可重配置技術,它能夠只針對須要變化的FPGA邏輯完成重配置而保持其餘部分FPGA正常工做。在汽車電子應用中,汽車安全輔助駕駛功能愈來愈被重視,其中高級倒車後視、自動泊車和行車時離道報警兩個功能均可以用攝像頭完成。這兩個功能的圖像採集處理邏輯是一致的,可是其圖像處理的算法卻不一樣,若是專門設計一個SoC芯片的話,須要這兩部分獨立的IP核,或者爲了下降成本儘可能將算法所有在處理器中實現。而用了Zynq,由於兩部分的功能並非同時須要的,咱們能夠保持處理器部分代碼執行不變,FPGA中圖像採集模塊不變,在倒車時經過部分可重配置技術加載倒車時的圖像處理算法硬件,而在開車時,自動加載離道報警算法硬件。這樣就能夠利用一樣一塊邏輯單元實現兩部分的硬件功能。提升並增強了實時響應的速度。緩存

  2、「硬件加速」定義?安全

         硬件加速(Hardware acceleration)就是利用硬件模塊來替代軟件算法以充分利用硬件所固有的快速特性。硬件加速一般比軟件算法的效率要高。架構

        硬件加速時CPU調度GPU運行,內存佔用率也會升高。工具

 3、軟件與硬件協同調試如何完成?oop

         硬件主要採用仿真工具,在線邏輯分析儀chipscope。佈局

4、歸納Zynq-7000在SOC嵌入式應用的優點?性能

      Zynq-7000 採用可擴展式處理平臺架構(Extensible Processing Platform、EPP),是 Xilinx 用 28nm HKMG工藝製成的低功耗,高性能,高擴展性的新型芯片,這款新品裏面集成了ARM CORTEX-A9 MPSOC 硬核以及相應的SOC系統。優化

     

PS: 處理系統(Processing System),與FPGA無關的ARM的SOC的部分。

PL: 可編程邏輯 (Progarmmable Logic),FPGA部分。

APU: 應用處理器單元(Application Processor Unit)。位於PS裏面的中心位置。

SCU: Snoop Control Unit,用來保持雙核之間的數據Cache的一致性。也就是說,第一個A9 處理器寫存儲時,只是寫在了緩存裏,沒有進主存,若是第二個A9讀操做,涉及到第一個寫髒了的數據段,SCU要保證第二個A9的緩存裏是最新的數據。若是第二個A9寫一樣數據段的數據,須要在第一個中體現出寫的內容。SCU的存在,才使得兩個核成互相聯繫的 「雙核」,才能成爲MPsoc。

 

一、正確規劃單板上 FPGA 的定向並將信號分配給特定的引腳,這樣能夠顯著改進系統總體性能、功耗設計週期。可視化 FPGA 器件與印刷電路板 (PCB) 之間的物理和邏輯互動方式,使您能夠優化經過器件的數據流。未正確規劃 I/O 配置則可能致使系統性能降低和設計收斂時間延長。單板上 FPGA 器件的佈局與其它組件的互動會對 I/O 規劃產生巨大影響。
二、首先應肯定 FPGA 器件在 PCB 上的定向。還要考慮固定 PCB 組件的位置,以及內部 FPGA 資源。例如,使 FPGA 封裝的 GT 接口儘可能靠近在 PCB 上與其鏈接的組件,這樣能夠縮短 PCB 走線長度,同時減小 PCB 過孔數量。
三、賽靈思建議您設計時首先選擇時鐘資源,而後再選擇管腳。您的時鐘選擇不只能夠肯定特定的管腳,並且還能夠支配邏輯佈局。正確的時鐘選擇能夠產生很是好的效果。
四、賽靈思 7 系列器件包含 32 個全局時鐘緩衝器 (BUFG)。其中 16 個全局時鐘緩衝器位於 FPGA 器件水平方向中心的上半部分,而另外 16 個則位於水平方向中心的下半部分。芯片上半部的 PLL 和 MMCM只能鏈接到水平方向中心以上的 16 個 BUFG 上。而芯片下半部的PLL 和 MMCM 只能鏈接到水平方向中心如下的 16 個 BUFG 上。選擇 PLL 或 MMCM 時,請儘可能使用 PLL,由於其具備更嚴格的抖動控制。在以下狀況下也可使用 MMCM :(1) PLL 已用盡 ; (2)MMCM 可提供所需的高級功能,但 PLL 則不能。
BUFG 組件能夠知足設計的大多數時鐘要求,但對如下要求不高 :
    • 時鐘數量
    • 設計性能

BUFG 組件易於經過綜合調用,而且限制較少,支持大多數普通時鐘。
五、使用存儲器接口生成器 (MIG) 生成管腳。
千兆位收發器 (GT) 具備特定的管腳要求。假如 GT 採用相同或鄰近的 quads,則您能夠在多個 GT之間共享參考時鐘。賽靈思建議您使用 GT 嚮導生成內核。有關管腳建議,敬請參閱產品指南。
HP(高性能)和 HR(大範圍)Bank在收發信號的速度上存在差別。根據所需的 I/O 速度,在 HP或 HR Bank 間作出選擇。
六、從加電到斷電,FPGA 器件要通過多個電源階段,並伴有不一樣的功率需求 :
• 加電功率
加電功率是 FPGA 器件首次加電時發生的瞬時峯值電流。電壓不一樣時,該電流強度也會發生變化且電流強度取決於 FPGA 器件的結構、電源上升到額定電壓的能力,以及器件的工做條件(好比溫度以及不一樣電源之間的排序)。在新型 FPGA 器件架構中,不用擔憂峯值電流的問題,由於它遵循了適用的上電順序指南。
• 配置功率
配置功率是指在器件配置期間所需的功率。配置功率一般低於有效功率,所以,除非您的使用過程功耗極低,不然該瞬態不會影響供電需求
• 待機功率
待機功率(又稱「設計靜態功率」)是器件按設計配置後未對其施加任何外部活動或者未產生任何內部活動時提供的功率。待機功率是設計運行時電源應提供的最小連續功率。
• 有功功率
有功功率(又稱「設計動態功率」)是器件運行應用程序時所需功率。有功功率包括待機功率(所有靜態功率)以及因設計活動(設計動態功率)產生的功率。有功功率是瞬時發生的,且根據輸入數據模式以及設計內部活動的不一樣每一個時鐘週期變化一次。
七、配置指的是將特定應用數據加載到 FPGA 器件的內部存儲器的過程。
賽靈思 FPGA 配置數據儲存在 CMOS 配置鎖存(CCL)中,所以配置數據很不穩定,且在每次FPGA 器件斷電後都必須從新加載。賽靈思 FPGA 器件可經過來自外部非易失性存儲器件的配置引腳自行加載配置數據。並且還能夠用外部智能源配置器件。賽靈思 FPGA 配置模式接口涵蓋從帶有2 引腳的基礎串行模式接口到帶有50 引腳的高性能主 BPI(同步)模式接口。

相關文章
相關標籤/搜索