亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        TI C66X多核DSP的PCIe接口程序設計

        2017-03-06 20:26:00白軼榮李偉劉寶東丁建崠
        計算機時代 2017年2期

        白軼榮++李偉++劉寶東+丁建崠

        摘 要: TI的C66X多核DSP擁有豐富的接口資源,單片集成了高速串行接口AIF2、SGMIL、PCIe和SRIO等,能夠非常方便地進行高速數(shù)據(jù)傳輸和系統(tǒng)擴展,其中PCIe接口應用最廣,它廣泛地應用在信號處理、通信、醫(yī)療、自動化等領域。本文闡述了PCIe接口的Inbound和Outbound地址映射寄存器配置方法、PCIe的中斷安裝過程和EDMA的傳輸配置與實現(xiàn)過程。用該方法可快速完成多核DSP的PCIe接口配置與編程,方便PCIe接口的推廣和應用。

        關鍵詞: 多核DSP; PCIe; EDMA; Inbound; Outbound

        中圖分類號:TP315 文獻標志碼:A 文章編號:1006-8228(2017)02-16-04

        0 引言

        TI的C66X多核DSP擁有豐富的接口資源,單片集成了高速串行接口AIF2、SGMIL、PCIe和SRIO等,能夠非常方便地進行高速數(shù)據(jù)傳輸和系統(tǒng)擴展,其中PCIe接口應用最廣,它廣泛地應用在信號處理、通信、醫(yī)療、自動化等領域。

        本文主要研究多核DSP的PCIe接口程序設計,首先概述PCIe模塊,其次闡述了PCIe接口的Inbound和Outbound地址映射寄存器配置方法、PCIe的中斷安裝過程和EDMA的傳輸配置與實現(xiàn)過程,最后對本文作出總結。

        1 PCIe模塊概述

        TI C66系列DSP集成了二個通道PCIe模塊。該模塊主要具備以下特征:支持兩種工作模式:RC和EP;支持Genl(2.5Gbps)和Gen2(5.0Gbps)兩種鏈路速率;用戶可以選擇使能一個或兩個通道,當使用雙通道時,需配置為相同的鏈路速率;支持的最大輸出凈荷大小為128字節(jié),最大輸入凈荷大小為256字節(jié);支持動態(tài)的帶寬切換等[1]。

        PCIe設備需要使用PCIe地址經(jīng)PCIe數(shù)據(jù)鏈發(fā)送數(shù)據(jù)包,地址翻譯單元ATU(Address Translation Unit)將設備內(nèi)部地址翻譯為PCIe地址,反之亦然。PCIe地址可以是32-bit或64-bit。

        2 PCIe地址翻譯

        對于輸出處理,Outbound ATU把設備內(nèi)部地址翻譯成PCIe地址,然后含PCIe地址的數(shù)據(jù)包經(jīng)PCIe鏈路被傳輸?shù)狡渌O備。

        對于輸入處理,PCIe模塊的基址寄存器BAR (Base Address Register)只接收特定PCIe地址的數(shù)據(jù)包,這些數(shù)據(jù)包進入Inbound ATU,經(jīng)地址翻譯后被送至相應的內(nèi)存空間。C66X DSP的PCIe地址翻譯原理圖如圖1所示[4]。

        ⑴ 輸出地址翻譯

        TI C66設備中有特定的PCIe數(shù)據(jù)空間0x60000000-0x6FFFFFFF,專門用于收發(fā)PCIe數(shù)據(jù)。對于輸出傳輸,通過Outbound ATU的配置使該空間與另一側(cè)設備地址空間建立對應關系,再使用EDMA把設備內(nèi)存數(shù)據(jù)搬移到PCIe數(shù)據(jù)空間,這樣數(shù)據(jù)就可以通過PCIe鏈發(fā)送出去。

        輸出地址翻譯主要通過以下寄存器的配置來實現(xiàn)。

        OB_SIZE:設定32個等長的翻譯區(qū)的大小,它們可以為1MB、2MB、4MB、8MB。

        OB_OFFSET_INDEXn:代表PCIe地址的bit[31:20],具體哪些位有效需根據(jù)OB_SIZE來確定,bit[0]使能輸出region。

        OB_OFFSETn_HI:代表64位PCIe地址的bit[63:32],使用32-bit地址模式時該寄存器為0。

        由于存在32個翻譯區(qū)域,所以需要根據(jù)內(nèi)部地址的5bits來決定使用哪個區(qū)域進行映射。PCIe輸出地址翻譯示意圖如圖2所示[4]。

        ⑵ 輸入地址翻譯

        Inbound ATU用于將外部設備輸入的訪問地址重定位到DSP片內(nèi)地址。C66設備的PCIe模塊有兩個內(nèi)部地址空間:Address Space 0和Space 1。前者用于本地應用寄存器和配置空間,占用連續(xù)的16KB,其中4KB用于配置空間;后者用于數(shù)據(jù)傳輸,容量大,可以不連續(xù),為了將PCIe地址映射到該空間,需使用4個區(qū)域(region0-3)來協(xié)助完成。

        PCIe輸入地址翻譯通過配置寄存器IB_BARn、IB_STARTn_HI、IB_STARTn_LO和IB_OFFSETn來實現(xiàn),Inbound ATU將PCIe地址映射到內(nèi)部地址的過程如下[5]。

        ① 分離偏移值:

        Offset=PCIe address-(IB_STARTn_HI:IB_STARTn_LO)

        ② 計算內(nèi)部地址:

        Internal address=IB_OFFSETn+offset

        PCIe輸入地址翻譯示意圖如圖3所示。

        3 PCIe中斷

        PCIe中斷控制器包括核級中斷控制器和片級中斷控制器CIC,中斷的路由可概括為:系統(tǒng)中斷先通過CIC映射到主機中斷上,主機中斷再由核級INTC的事件組合器、中斷選擇器等寄存器映射到CPU的12個可屏蔽的中斷上。CPU的12個可屏蔽的中斷也就是HWI可以為其指定ISR。在ISR中查詢相關狀態(tài)寄存器可以確定中斷〔

        OPT參數(shù)可以設置對應通道的優(yōu)先級、同步方式、傳輸方式等。SRC/DST用于存放EDMA傳輸?shù)脑吹刂泛湍康牡刂?。SRCBIDX/DSTBIDX指示傳輸幀中數(shù)據(jù)陣列array的間隔。LINK指明EDMA的參數(shù)鏈接地址。SRCCIDX/DSTCIDX指示傳輸塊中幀間間隔。CCNT表示傳輸幀數(shù)。

        傳輸參數(shù)的鏈接由Param的Link位進行控制,Link可以鏈接到256個參數(shù)中的任何一個或者自身,鏈接參數(shù)的最后一個參數(shù)為NULL參數(shù)。同時EDMA還支持通道鏈接Chain傳輸,允許由一個EDMA傳輸通道的完成觸發(fā)另一個傳輸通道的開始,組成一個傳輸鏈。需注意參數(shù)鏈接和通道鏈接有著本質(zhì)區(qū)別,參數(shù)鏈接是指將多組參數(shù)加載到某一EDMA通道,而鏈接傳輸不修改任何傳輸參數(shù),其可以通過一個事件同步所有的通道傳輸。

        OPT的設置有:TCINTEN(1,傳輸完成產(chǎn)生中斷)、TCC(傳輸完成碼為0,在IPR的最低位產(chǎn)生中斷)、TCCMODE(0,正常傳輸完成)、STATIC(1,參數(shù)集是靜態(tài)的不自動更新)、SYNCDIM(1,AB同步傳輸)、DAM/SAM(0,源和目的地址自動更新)。

        啟動EDMA傳輸?shù)姆绞接卸喾N,最常用的是Manual Trigger,我們通過寫ESR中的某一位可以啟動其對應的通道提交傳輸請求事件,這個事件經(jīng)過優(yōu)先級的過慮后,會發(fā)送到一個事件隊列中,這里可以通過設置DMA Channel Queue n Number Registers (DMAQNUMn)寄存器將通道提交的傳輸請求事件派發(fā)到指定的事件隊列中。

        使用EDMA3進行讀的過程如下(寫的過程類似,區(qū)別在于源與目的地址不一樣) [3]:

        ⑴ 配置Outbound,將主機的PCIe域地址映射到DSP的PCIe data space address(0x6000_0000~0x6FFF_FFFF);

        ⑵ 設置通道0使用事件隊列0也就是使用TC0;

        ⑶ 使能IER;

        ⑷ 清除ICR;

        ⑸ 設置傳輸屬性寄存器;

        ⑹ 將主機端具體的PCIe域地址,轉(zhuǎn)換成DSP端的PCIe data spaceaddress(0x6000_0000~0x6FFF_FFFF)范圍內(nèi)的地址;

        ⑺ 設置PaRAM的其他域,包括ACNT、BCNT、SRC、DST、LIKE等;

        ⑻ 啟動EDMA3傳輸。

        5 結論

        本文詳細介紹了PCIe接口的Inbound和Outbound地址映射寄存器配置方法,以及PCIe的中斷安裝過程和EDMA的傳輸配置與實現(xiàn)過程。通過本文方法可快速完成基于多核DSP的PCIe接口配置與編程。由于TI公司的C66x系列DSP定位于各行各業(yè)的開發(fā)應用,因此本文方法可為通信領域、航空電子、實時檢測、生物識別、醫(yī)療診斷、視頻監(jiān)控以及音頻處理等系統(tǒng)的PCIe接口程序設計提供參考。

        參考文獻(References):

        [1] 王齊.PCI Express體系結構導讀[M].機械工業(yè)出版社,2010.

        [2] 牛金海.TMS320C66x KeyStone架構多核DSP入門與實例

        精解[M].上海交通大學出版社,2014.

        [3] 潘曄,廖昌俊.TI-DSP多核技術及實時軟件開發(fā)[M].電子工

        業(yè)出版社,2015.

        [4] TEXAS INSTRUMENTS. Keystone Architecture Peripher-

        al Component Interconnect Express(PCIe) User Guider. Devices. http://www.Ti.com,Technical Report, December 2012.

        [5] TEXASINSTRUMENTS.PCIeUse Case for Keystone

        Devices.http://www.Ti.com,Technical Report,December 2012.

        [6] TEXAS INSTRUMENTS. Enhanced Direct Memory

        Access (EDMA3) Controller User Guide. http://www.Ti.com,Technical Report,December 2012.

        wwww亚洲熟妇久久久久| 偷窥偷拍一区二区三区| 亚洲视频在线观看一区二区三区| 欧美综合天天夜夜久久| 成人无码一区二区三区网站| 国产精品美女黄色av| 亚洲天堂av在线一区| 国产玉足榨精视频在线观看| 无码骚夜夜精品| 久久综合视频网站| 蜜桃av在线播放视频| 高清毛茸茸的中国少妇| 国产三级在线观看播放视频| 国产国拍亚洲精品福利| 精品婷婷国产综合久久| 日本一区二区三区免费播放| 粗一硬一长一进一爽一a级| 色窝窝手在线视频| 中文字幕综合一区二区三区| 18禁黄污吃奶免费看网站| 玩弄放荡人妻一区二区三区| 久久久9色精品国产一区二区三区| 亚洲国产综合人成综合网站| 中文字幕av一区二区三区人妻少妇| 中文字幕在线免费| 中国少妇和黑人做爰视频| 成人性生交大片免费入口| 白天躁晚上躁麻豆视频| 国产精品美女AV免费观看| 免费人成在线观看播放视频| 国内精品久久久久影院薰衣草 | 国产成人精品精品欧美| 狼人综合干伊人网在线观看| 国产欧美精品aaaaaa片| 欧美日韩视频无码一区二区三| 亚洲精品成人国产av| 亚洲本色精品一区二区久久| 国产成人精品a视频| 被黑人做的白浆直流在线播放| 亚洲综合在线一区二区三区| 伊人久久精品无码二区麻豆 |