999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于高性能DSP 平臺及其開發環境的SRIO 模塊的測速方法及應用研究

2020-08-13 02:16:26陶子然曹文君王沁喆葉文靜
機電產品開發與創新 2020年4期

陶子然, 曹文君, 王沁喆, 葉文靜

(中國電子科技集團第三十八研究所, 安徽 合肥 230000)

0 引言

隨著現代信息技術的高速發展, 數字信號處理在軍用及民用領域都取得了極大發展和廣泛應用, 同時日益增長的信號處理需求也對整機、 分機平臺提出了越來越高的要求。 特別是在航天航空、圖像處理、AI 等高科技前沿領域,信號處理實時性高,數據量大,數據交互頻繁及信號處理算法繁雜度高, 傳統的解決方法無法滿足該類需求的情況下,基于DSP 和FPGA 的協同處理架構主流。這一系統較傳統方法顯著提升了系統的運算速度和數據處理能力。 處理器之間主要采用的高速通信接口包括SRIO、PCIe 等。 RapidIO 技術是一種高帶寬、低延遲的基于包交換的開放式互聯技術標準,2001 年由Freescale 公司發表正式規范,主要應用于嵌入式系統的高速互聯,支持芯片到芯片以及板卡到板卡間的高速通信。 高速串行輸入輸出SRIO (Serial RapidIO) 作為新一代高速通信協議,具有非常優異的高帶寬、低延遲、低功耗等特性。 本文提出了一種基于高性能DSP SRIO 模塊的測試速率的方法,DSP 在信號板板內與DSP 通信以及通過交換芯片與板間的FPGA 通信的實例研究了相關研究方法。 通過該方法,可以較為準確的測算SRIO 模塊的通信速率,所測結果也為架構模型提供了數據支持。

1 SRIO 模塊簡介

RapidIO 技術作為一種高帶寬、低延遲的基于包交換的開放式互聯技術,可以滿足高性能嵌入式系統的需求,支持芯片到芯片以及板卡到板卡間的高速通信。 多用于多處理器、存儲器及通用信號處理平臺間的高速交互。 其主要特點包括靈活的系統結構,允許點對點傳輸;帶錯誤檢測的魯棒傳輸;可拓展的頻率和接口寬度;非軟件密集型操作;低開銷的高帶寬互聯;低引腳數、低功耗、低延遲。

2 硬件平臺及驅動程序

基于SRIO 的驅動程序包括SRIO 模塊初始化功能,DMA 數據傳輸功能,DOORBELL 中斷功能,MESSAGE 數據傳輸功能和維護包傳輸功能。 本實驗的硬件平臺為基于高性能DSP 的某兩型板卡,信號處理板與接口板。平臺架構如圖1,2 所示。

圖1 接口板結構圖

圖2 信號板結構圖

為了實現通信測速功能, 實驗中涉及到DSP 端的SRIO 模塊驅動編程設計主要包含以下幾個方面:

(1)SRIO 模塊工作模式設置。 在開發環境ECS 中,手動創建bsp 包后進入PLL 配置界面,在圖形化界面中配置內核頻率,在勾選相應的SRIO 控制器后,可以配置通道數和通道速率。 本文采用4x,5G 模式設置,DSP 工作于中斷模式下與FPGA 進行互連通信。 在涉及到DDR 作為數據傳輸對象時,需設置地址映射表,不同地址映射表對應不同的索引方式, 索引方式可以選擇38 位AXI 地址是如何組成的, 可以選擇SourceID 或者SourceAddr,“索引號來源” 則選擇38 位AXI 地址的組成方式, 如選擇默認方式RIO_Addr[33:30]/SourceID[3:0],則是將SourceID 放在低4位,將RIO_Addr 放在了高34 位,實際的地址一般為32位,34 位RIO_Addr 就是將32 位的地址左移兩位。AXI 地址高18 位根據需要填寫。 例如若是映射到DDR0,DDR0 的基地址為0x80000000 (32 位), 將其左移2 位即得到34位RIO_Addr,這就是AXI 地址的高34 位,再加上低4 位的SourceID,就組成了完整的AXI 地址。 0x80000000(32 位)左 移 兩 位 是 0x200000000 (34 位), 即 2 進 制0b1000000000000000000000000000000000,取其高18 位,即0b100000000000000000,即0x20000,將0x20000 填寫在窗口中即可,也可以將0x200000000(34 位)直接右移16 位,即可得AXI 地址高18 位。

(2)SRIO 模塊初始化。

初始化函數如下:

status=srio_driver_initialize(SRIOCTL,NULL);

status=srio_driver_open(SRIOCTL,NULL);

如果兩個函數的返回值status 均為0,則表明DSP 與目標元件link 成功, 通常使用status|= srio_driver_initialize(SRIOCTL,NULL);來多次確認返回值的狀態,保證其沒有出錯。

(3)交換芯片的配置。 對于直連的通信架構來說,無需對交換進行配置。在目前主流系統架構中,交換是必不可少的。對于存在交換的系統,需要根據交換的類型對其進行相應的路由配置。 本文的實驗平臺所使用的交換為1800,1800 配置函數為:

cps1800(slave_addr);

程序中對1800 的路由的配置在下圖所示, 程序將0x11 路由到port8, 將0x12 路由到port4, 將0x21 路由到port1,將0x22 路由到port9,將0x31 路由到port7,將0x32路由到port0,將0x41 路由到port3,將0x42 路由到port11。可以根據實際使用情況進行修改。

圖3 1800 路由配置

(4)讀寫驅動函數配置。 本文使DSP 采用DMA 模式與FPGA 進行通信,DMA 模式適合在數據量較大的傳輸中使用, 主設備可以主動對從設備進行讀寫。 SRIO 在DMA 模式中可以實現DDR 寫讀DDR,DDR 寫讀內存,內存寫讀DDR,內存寫讀內存。 DMA 模式中發送方需要配置的參數主要有:dma_param.dest_id(DestID)、dma_param.axi_37(AXI 地址37 位)、dma_param.axi_36_34(AXI 地址36~34 位)、dma_param.dma_seq (DMA 通道, 賦值0 即可)、dma_param.src_addr(源地址)、dma_param.dst_addr(目的地址)、rw_args.count (傳輸數目, 內核傳輸數目最大256K,DDR 傳輸數目可達1M,一個DMA 的數據包的最大數據量為256K 字)。

讀寫驅動函數設置如下:

srio_driver_write(deviceID,*ARG);

srio_driver_read(deviceID,*ARG);

(5)方案優化函數。 本文DSP 端通過門鈴中斷計數,在此過程中DSP 端需讀取門鈴FIFO,否則將造成DSP 無法進入MISC 中斷程序的情況。 在讀取周期計數時,數據量過大時會造成計數寄存器CC0 溢出的情況,需引入周期計數寄存器CC1 進行補位計算,計算公式為:

Time=(val_high_CC1*4294967296)+ val_low_CC0。

優化函數如下:

FIFO_read(deviceID,*ARG);

Cycle_get(void);

3 實驗方法與驗證

本文通過信號板對板間DSP 芯片和FPGA 通過SRIO 通信進行測試,記錄每次數據傳輸首尾兩個門鈴中斷之間的周期,多次測量取平均值。具體軟件流程圖如圖4 所示。

圖4 算法軟件流程圖

將信號板和接口板依次插入機箱對應槽位。 分別將接口板和信號板通過JTAG 下載器連接到測試計算機,查看信號板上位機IP 地址, 設置為10.100.39.39。 信號板、接口板上電,接口板上FPGA 和信號板上DSP 分別加載測試例程。加載完成后,DSP 程序運行,完成1800 交換芯片配置。DSP程序進入while 循環等待接收門鈴中斷和數據。 同時設置FPGA 程序VIO 的參數為vio_cnt_1000 為10000000,loop_cnt 為100,delay_time 為2。 測試例程包長、包數可控,典型包長為256B,每次發送100 包,循環10000000 次,傳輸指定格式的數據為從0 開始的遞增數列。 FPGA 端測試程序發送數據的流程為:先發送一個DOORBELL 包表示開始發送, 發送25KB 的遞增數據后延時4 個時鐘周期再發送一個DOORBELL 包表示一次發送結束,再發送下一個25KB 遞增數,依次發送10000000 次25KB 共約238.41GB 遞增數據。 在接收端,DSP 每隔100 包數據,記錄下兩個門鈴間的周期,在ECS變量窗口顯示每個門鈴所對應的當前周期數, 同時顯示通信速率。

4 實驗結果及波形

實驗每次連續測試10 次,每次測試包數不小于一億包,取接收端輸出速率平均值作為板間SRIO 速率。 實驗結果如表1 所示。 FPGA 實驗波形如圖5、6 所示。

表1 板間FPGA 與DSP 通信速率

圖5 FPGA 數據波形圖-1

圖6 FPGA 數據波形圖-2

5 結論

本文基于高性能DSP 平臺的SRIO 接口模塊建立DSP 與FPGA 之間的通信系統測算速率, 并提出相應的準確計數方法。在4x,5G 模式下,SRIO 模塊4lane 通道整個鏈路的傳輸瓶頸不大于4×5=20Gbps 的速率(即鏈路速率最大理論值),在計算SRIO 包的開銷以及8b/10b 的轉換開銷之后, 根據有效數據負載速率的通用計算公式:V有效負載最大速率=鏈路速率最大理論值×0.8(8b/10b 轉換且包括兩級開銷)等于4Gbps。實驗統計結果為單次100包周期為16418, 速率計算公式為100×256×8/(16418×2),經計算在該硬件平臺SRIO 模塊平均寫速率為6.23Gbps,單通道平均速率為3.11Gbps。 由DSP 讀數的平均讀速率為3.29Gbps。 讀寫速率相當, 且達到理論最大有效速率的80%,表明該系統能夠高速傳輸大批量數據,當數據量較大時,讀寫速率同步提升,通信開銷占比總傳輸時間比例減小,整體速率超過12Gbps,傳輸效率較為理想。

主站蜘蛛池模板: 中文字幕av一区二区三区欲色| 国产欧美又粗又猛又爽老| 色AV色 综合网站| 国产一在线| 蜜桃视频一区二区| 一级毛片高清| 亚洲色图另类| 欧美日韩精品一区二区视频| 91色在线观看| 国产成人高清在线精品| 亚洲无码日韩一区| 亚洲精品黄| 六月婷婷激情综合| 国产黄色免费看| 欧美专区日韩专区| 国产精品网拍在线| 国产乱人伦精品一区二区| 97无码免费人妻超级碰碰碰| 538国产视频| 成人看片欧美一区二区| a毛片基地免费大全| 91年精品国产福利线观看久久| 中文字幕在线播放不卡| 久草中文网| 亚洲VA中文字幕| 亚洲熟妇AV日韩熟妇在线| 欧美激情,国产精品| 亚洲国产高清精品线久久| 丁香五月激情图片| 国产精品hd在线播放| 黄网站欧美内射| 国产欧美精品一区aⅴ影院| 国产亚洲欧美另类一区二区| 久久国产精品波多野结衣| 国产精品极品美女自在线网站| 日韩在线中文| 国产精品人成在线播放| 亚洲一道AV无码午夜福利| 无码AV日韩一二三区| 视频二区亚洲精品| 999精品免费视频| 国产在线精品美女观看| 亚洲91精品视频| 91精品亚洲| 熟妇丰满人妻| 国产女人18水真多毛片18精品| 国产极品美女在线观看| 免费99精品国产自在现线| 一边摸一边做爽的视频17国产| 欧美精品亚洲日韩a| 国产自无码视频在线观看| 国产69精品久久久久孕妇大杂乱 | a毛片在线播放| 国产成人精品日本亚洲77美色| 18禁高潮出水呻吟娇喘蜜芽| 免费观看成人久久网免费观看| 国产麻豆精品手机在线观看| 四虎成人精品在永久免费| 欧类av怡春院| 91日本在线观看亚洲精品| 国产精品免费露脸视频| 狼友av永久网站免费观看| 日韩福利在线视频| 老司国产精品视频91| 99热这里只有精品久久免费| 69国产精品视频免费| 亚洲浓毛av| 国产高颜值露脸在线观看| 国产精品自在在线午夜区app| 国产亚洲高清视频| 伊人成人在线| 日本午夜精品一本在线观看 | 国产精品v欧美| 精品欧美视频| 中文字幕在线日本| 福利在线不卡| 免费在线a视频| 91亚洲精选| 精品一区二区三区中文字幕| 99视频免费观看| 真实国产乱子伦视频 | 在线观看国产精品日本不卡网|