新聞中心

        基于PSoC5 UDB的DMA傳輸

        作者:田江學(xué) 時間:2012-04-16 來源:電子產(chǎn)品世界 收藏

          PSoC5支持24個通道和多達128個事務(wù)描述符(TDs),主控制器對通道的請求按照優(yōu)先級進行仲裁,單個的通道可以傳輸高達64KB的數(shù)據(jù)。DMA通道如圖3所示:  

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

        圖3,DMA通道及TDs

          2,設(shè)計思路

          從圖2可以看出,要訪問SRAM可以通過CPU直接訪問,也可以采用DMA通過Spoke0來訪問。若有外部的并行數(shù)據(jù)(如8bit并行接口)要連續(xù)不斷的寫進SRAM,如圖4所示的應(yīng)用。此時外部數(shù)據(jù)可以通過Spoke1的IO Interface進入PSoC5,也可通過Spoke6的 Interface接受后存放在中。  


        圖4,應(yīng)用需求

          本文將介紹通過PSoC5 的 采集數(shù)據(jù)并暫存在datapath的FIFO中, 然后通過DMA搬運到SRAM中的設(shè)計方案。由于外部數(shù)據(jù)是連續(xù)傳輸進PSoC5的,所以在設(shè)計中采用PING-PONG FIFO以保證連續(xù)數(shù)據(jù)不丟失。如下圖5所示采用兩個datapath一共4個FIFO,每個FIFO是4個字節(jié)深度,數(shù)據(jù)將根據(jù)每個FIFO的狀態(tài)依次填入FIFO中,每個FIFO滿之后將啟動DMA將數(shù)據(jù)從FIFO中搬運到SRAM中。系統(tǒng)一開始4 FIFO都為空,OV7670 sensor的數(shù)據(jù)首先存放到FIFO0_0中,填滿4字節(jié)數(shù)據(jù)后FIFO0_0的滿標(biāo)志置1表示FIFO0_0已滿,用該FIFO0_0的滿標(biāo)志觸發(fā)DMA0將數(shù)據(jù)搬運到SRAM中。同時OV7670的數(shù)據(jù)將繼續(xù)暫存到FIFO0_1中,依次類推。  


        圖5, 數(shù)據(jù)流傳輸示意圖


        關(guān)鍵詞: 存儲器 DMA UDB

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 隆安县| 布尔津县| 台安县| 两当县| 黑龙江省| 武鸣县| 宣化县| 南昌县| 威信县| 肃南| 柳林县| 万载县| 惠安县| 紫云| 衡南县| 漳州市| 定日县| 万载县| 石景山区| 剑阁县| 长阳| 夏邑县| 福泉市| 宁波市| 石棉县| 朝阳区| 双城市| 龙口市| 平原县| 灵川县| 益阳市| 永平县| 奎屯市| 西城区| 通渭县| 琼结县| 徐闻县| 广南县| 安乡县| 阿城市| 曲周县|