新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > 基于網絡編碼的多信源組播通信系統,包括源代碼,原理圖等(二)

        基于網絡編碼的多信源組播通信系統,包括源代碼,原理圖等(二)

        作者: 時間:2016-12-06 來源:網絡 收藏

        模塊中的狀態和階段,任何一個模塊都可以響應來自PCI總線寄存器的訪問和控制要求,而PCI總線寄存器可以通過軟件來控制。也就是說,硬件和軟件的通信是通過PCI總線完成的。

        本文引用地址:http://www.104case.com/article/201612/326828.htm

          數據以及控信息在硬件和主機系統之間是通過PCI總線傳輸的,以Linux網絡存儲棧作為接口的。NetFPGA向主機發送分組數據的過程如圖2.5-2a所示:

          分組到達,發往CPU隊列;

          中斷程序通知驅動程序有分組到達;

          驅動程序設置和初始化DMA傳送器;

          NetFPGA通過DMA總線發送分組;

          中斷程序發送DMA結束信號;

          驅動程序把分組傳遞到網絡存儲棧;

          

          圖2.5-2a:NetFPGA向主機發送數據 圖2.5-2b:主機向NetFPGA發送數據

          主機向NetFPGA發送分組數據的過程如圖2.5-2b所示:

          控制軟件通過網絡socket發送分組,分組被遞交給驅動程序;

          驅動程序設置和初始化DMA傳送器;

          中斷程序發送DMA結束信號;

          主機訪問寄存器是通過系統調用系統內核的ioctl( )函數作為接口的。讀寫寄存器的操作函數如下,這兩個函數內部調用了ioctl( )函數。

          readReg(nf2device *dev, int address, unsigned *rd_data)

          writeReg(nf2device *dev, int address, unsigned *wr_data)

          例如: readReg(&nf2, OQ_NUM_PKTS_STORED_0, &val);

          主機訪問NetFPGA寄存器的過程如下:

          (1)控制軟件調用ioctl( )函數操作網絡socket,由函數ioctl傳遞給驅動程序;

          (2)驅動程序完成PCI寄存器的讀寫


        上一頁 1 2 3 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 闵行区| 闸北区| 道孚县| 邢台县| 海兴县| 新竹市| 常山县| 文昌市| 通辽市| 繁峙县| 桐柏县| 临沂市| 伽师县| 威信县| 淮阳县| 大关县| 北碚区| 班戈县| 焦作市| 江山市| 健康| 宜兰市| 沅陵县| 南陵县| 拉萨市| 婺源县| 蒲城县| 蕲春县| 日喀则市| 确山县| 新营市| 宁安市| 什邡市| 棋牌| 长汀县| 莎车县| 长武县| 武威市| 肥东县| 龙海市| 枞阳县|