4.PCIE協議分析2-PIO XAPP1052 XDMA三者聯繫和區別詳談

一、回顧

    上一節我們講了PCIE協議分析的一些預備知識點,就是以下不好理解的內容,這些內容到後期實戰代碼涉及到時我會在給大家細說的,這裏如果你實在看不懂,也不強求。

  1. PCI-E配置空間
  2. PCI-E地址映射
  3. PCI-E BAR寄存器和BAR空間
  4. PCI-E層級結構詳談

二、PIO XAPP1052 XDMA三者聯繫和區別詳談

    因爲我們馬上要分析TLP包格式了,而且後期要學習PIO XAPP1052 XDMA三個工程源代碼,現在有些人連這三個是什麼都不知道,因此課程提前說下PIO XAPP1052 XDMA三者聯繫和區別。

(1)PIO

    PIO的英文拼寫是“Programming Input/Output Model”,PIO模式是一種通過CPU執行I/O端口指令來進行數據的讀寫的數據交換模式。PIO例子,我們的PC爲主機,FPGA爲從機,實現的功能就是PC讀寫PFGA的寄存器或者RAM。就像STM32操作串口寄存器一樣,STM32爲主機,串口爲從機,實現的功能緊緊如此。PIO例子包含了一個PCIE IP Core,我們的用戶接口通過AXI Stream接口(後期第四節會詳細講解)可以和PCIE IP Core進行交互並且收發數據。至於邏輯怎麼實現到時分析代碼。

(2)XAPP1052

    XAPP1052是xilinx提供的一個PCIE DMA的應用方案,除了具有PIO的功能之外,還添加了DMA控制器,DMA控制器可以使得FPGA作爲主機和PC內存進行直接數據交互(當然這裏面需要HOST主橋的幫助,我們就把叫做最強輔助,它實現了很多功能,但是我們不需要知道)。這樣我們PC可以通過PIO方式讀寫FPGA 內部的DMA控制器,DMA控制器收到PC傳來的DMA操作地址、操作長度、操作命令後,開始作爲PCIE主

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章