《電子技術應用》
您所在的位置:首頁 > 模擬設計 > 設計應用 > 嵌入式 FIFO 數據傳輸系統設計
嵌入式 FIFO 數據傳輸系統設計
摘要: 嵌入式設備在DSP中實現嵌入式設備還比較少,一般DSP都直接集成這些設備模塊,用戶選擇不同型號的DSP芯片以滿足產品應用要求。但對于一些較為特殊的嵌入式設備,DSP也可以實現該功能。本文以dMAX和EMIF接口的數據傳輸為例,介紹嵌入式FIFO的設計、配置及其使用。
Abstract:
Key words :
  嵌入式設備在DSP中實現嵌入式設備還比較少,一般DSP都直接集成這些設備模塊,用戶選擇不同型號的DSP芯片以滿足產品應用要求。但對于一些較為特殊的嵌入式設備,DSP也可以實現該功能。本文以dMAX和EMIF接口的數據傳輸為例,介紹嵌入式FIFO的設計、配置及其使用。

  dMAX及其結構

  dMAX(Dual Data Movement Accelerator,雙向數據傳輸加速器)是TI公司的DSP芯片C6727B特有的一種片內設備。應用dMAX和EMIF(External Memory Interface,外部存儲器接口)可以實現片內RAM、片內和片外設備以及兩個片外設備之間的數據傳輸。dMAX模塊的內部結構如圖1所示。

圖1 dMAX內部結構圖

  從圖中可以看出,dMAX主要由事件和中斷處理模塊、事件編碼器、傳輸事件模塊等組成。事件模塊分成高優先級和低優先級兩個相互獨立的模塊,各自有獨立的事件入口和事件參數表,和CPU有獨立的接口。使得dMAX可以同時處理兩個不同的事件。當訪問CPU端口時,MAX0的優先級高,MAX1的優先級低。dMAX能夠通過執行先進的一維、二維與三維數據的存儲器傳輸工作,從而使DSP得以專注于信號處理任務,顯著提高系統性能。適合圖像的子幀提取或者語音信號的子信道提取。

  DSP內部的數據交換中心在dMAX的控制下,可以實現片內RAM、EMIF以及HPI接口之間的數據交換。本文介紹在dMAX控制下,實現片內RAM和EMIF接口之間的數據交換。如果DSP采用普通的異步接口方式,數據傳輸需要建立、選通和保持3個階段,最少需要5個EMIF時鐘(建立和保持各1個時鐘,選通3個時鐘)。為了保證通信的可靠性,一般采用10個EMIF時鐘(建立3個時鐘,保持2個時鐘,選通5個時鐘)。而EMIF時鐘最快為133MHz;這樣,采用異步接口的通信速率一般為13.3M×32b/s(采用32位數據總線寬度)。此外,異步接口數據傳輸必須在CPU的參與下,使用指令實現數據搬移。將占用大量的CPU開銷,在很多高速的數據采集和處理中,將降低系統的整體性能。為此,采用dMAX實現嵌入式FIFO數據傳輸克服異步傳輸的缺點,其傳輸采用突發讀寫方式進行,可以連續突發讀寫8個數據,一共只需要20個時鐘,通信速率提高為53.2M×32b/s,提高4倍讀寫速率。還可以采用和DMA后臺運行,這樣將大大降低整個系統數據讀寫的開銷,從而可以實現更加復雜和可靠的算法處理。

  嵌入式FIFO設計

  嵌入式FIFO的設計主要就是控制FIFO的7個參數。這7個參數分別為基地址、空間大小、空標志、滿標志、錯誤標志、讀指針和寫指針。它們之間的關系如圖2所示。

圖2 FIFO結構示意圖

  基地址和空間大小用于規劃出一段內存空間,該內存空間用于FIFO設備,并被FIFO設備保護起來,使得其他設備和程序不能訪問該空間。為了便于操作方便,空間大小一般為2的整數次冪,但不做要求。具體到C6727B型號的DSP,空間大小最大為1M個元素,元素大小可以是8位、16位或者32位數據,不能為其他類型的數據。基地址可以為內存空間的任何一個地址,同樣為了操作方便,一般為空間大小的邊界點。例如,8個元素的FIFO,其基地址一般為XXXXX000b,也就是地址的低3位為0,基地址就肯定為8的整數次。同樣,64個元素的FIFO,其低6位為0。基地址和空間大小的特殊要求避免訪問時的地址跨越多頁問題,可以提高FIFO的訪問速度。

  空標志和滿標志用于表示FIFO的存儲狀態。讀指針和寫指針用于表示讀寫的當前地址。錯誤標志表示對FIFO的錯誤操作。當FIFO處于滿標志情況下仍然寫FIFO,或者FIFO處于空標志情況下仍然讀FIFO,FIFO都將終止當前操作,并將錯誤標志置位。

  FIFO的寫操作只有一種工作方式,即每次寫一個新的數據,寫指針加1,直到寫滿。而FIFO讀操作有兩種工作方式,分別為標準操作和多階延遲(Multi-tap Delay Transfer)操作。標準操作和寫操作一樣。多階延遲操作一般用于濾波處理,當需要對輸入信號進行濾波處理時候,每次希望從FIFO讀取一段窗口的數據,進行濾波處理,數據窗口仍然只移動一個數據。在標準操作情況下,如果讀取一段窗口的數據,FIFO則將該段窗口的數據全部彈出。多階延遲操作則只彈出一個數據。該操作方法對語音或者AD采樣數據的平滑、FIR等濾波非常適用。需要注意的是,多階延遲操作的數據窗大小需要設置,如果FIFO存儲的數據個數小于數據窗,FIFO則終止當前操作,并給出錯誤標志。

  系統硬件結構

  C6727B和其他DSP有一個較大的區別,就是C6727B不再提供專門的外部中斷引腳,而是采用GPIO引腳和dMAX配合使用,通過寄存器的設置將GPIO引腳配置成外部中斷引腳。本文為了實現FIFO的實時操作,一旦外設向FIFO寫入數據,即發出中斷信號到DSP的CPU,通知CPU讀取數據。為此,需要使用1個外部中斷引腳,將C6727B的音頻串口的AXR[8]配置成通用的GPIO引腳,并在dMAX中設置成中斷引腳。此時需要將音頻串口的CONFIGMACSP0寄存器設置為0x0001,如圖3所示。此時音頻串口不能再作為普通的音頻口使用,而是配置成IO接口。

圖3 中斷功能設置框圖

  從圖3中可以看出,配置好音頻串口后,一旦AXR[8]引腳有上升沿到,則McASP0激活dMAX的事件26,向CPU發送內部中斷13。McASP的與中斷相關的寄存器配置是實現以上方案的重點。使用PFUNC寄存器將其配置成通用IO引腳;PDIR寄存器控制IO引腳的方向;如果是輸出引腳則由POUT引腳輸出高低電平,如果是輸入引腳,則由PDIN寄存器讀出該引腳的狀態;此外,可以使用PDCLR和PSET寄存器清除或者設置輸出引腳的狀態。

  系統軟件設計

  系統軟件設計主要包括McASP的初始化、dMAX的初始化、FIFO的初始化、中斷使能等。系統主程序只需要等待中斷進行相應的處理,主要的數據傳輸工作都是dMAX按照軟件配置自動完成,不需要CPU參與。圖4是實現由外設寫FIFO,DSP讀取FIFO數據的流程。圖中虛線部分表示由dMAX獨立完成的工作,實線部分表示由CPU完成的工作。兩者之間通過內部中斷方式實現狀態的交流。

圖4 系統軟件流程

  為了提高FIFO的讀寫速率,一般采用突發方式進行讀寫。突發方式的讀時序如圖5所示。寫時序和讀時序類似。突發方式一次最多只能讀寫8個數據,也可以一次突發讀寫4個或者2個數據。突發讀寫時數據的建立和保持時間最少可以設置成1個時鐘周期,如圖中所示。但為了通信可靠,一般采用2個時鐘周期。突發方式最大的節省時間是連續的其他數據將不再需要建立和保持周期,而是直接進行讀寫,一般只需要兩個時鐘周期就可以完成一個數據的讀寫。最快情況下,突發讀寫8個數據只需要20個時鐘周期,讀寫速率達到53.2M×32b/s,滿足大部分設備的要求。

圖5 突發讀時序圖

  總結

  dMAX的特有結構使得其可以實現嵌入式FIFO。本文介紹了基于C6727B的dMAX的基本結構以及基于dMAX的嵌入式FIFO軟硬件設計,設置通用GPIO引腳作為中斷,為了加快FIFO的傳輸速率,使用突發讀寫方式進行數據傳輸。

此內容為AET網站原創,未經授權禁止轉載。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
欧美一区二区三区四区在线观看 | 亚洲欧美在线免费| 亚洲第一黄色| 狠狠久久亚洲欧美专区| 国产视频欧美视频| 国产日韩av一区二区| 国产精品私人影院| 国产欧美日韩另类一区| 国产精品系列在线| 欧美激情综合色| 蜜桃久久精品乱码一区二区| 久久久久久欧美| 久久综合九色欧美综合狠狠| 欧美主播一区二区三区美女 久久精品人| 久久精品一区二区三区中文字幕| 亚洲国产成人不卡| 在线成人性视频| 亚洲成色999久久网站| 国产精品美女久久久久av超清| 久久天天躁狠狠躁夜夜av| 一本色道久久88综合亚洲精品ⅰ| 亚洲免费在线视频| 亚洲欧美日韩在线播放| 性做久久久久久久久| 久久国产精品毛片| 亚洲视频第一页| 亚洲高清在线观看一区| 国产精品中文在线| 国产欧美日韩在线视频| 国产一区二区三区日韩| 精品二区久久| 亚洲国产欧美另类丝袜| 亚洲精品一二三区| 中国成人在线视频| 香蕉成人伊视频在线观看| 欧美一级视频| 亚洲人成欧美中文字幕| 一区二区三区国产在线观看| 亚洲欧美激情诱惑| 久久蜜桃精品| 欧美一区二区三区在线观看视频 | 亚洲黄页一区| 亚洲免费激情| 亚洲永久网站| 亚洲国产成人在线| 欧美一区二区三区视频免费| 亚洲第一狼人社区| 一本一本久久| 欧美在线观看视频在线| 蜜臀久久99精品久久久画质超高清| 欧美在线视频网站| 蜜臀av性久久久久蜜臀aⅴ四虎| 久久精品国产亚洲精品| 免费成人黄色片| 欧美色另类天堂2015| 国产精品综合不卡av| 精品1区2区3区4区| 一区二区三区国产精品| 香蕉尹人综合在线观看| 亚洲免费福利视频| 欧美在线视频观看| 欧美久久久久久久久久| 国产日韩欧美一区二区三区在线观看| 国产精品ⅴa在线观看h| 国产一区二区三区四区在线观看 | 在线观看中文字幕不卡| 国产亚洲精品久久飘花| **欧美日韩vr在线| 亚洲午夜电影| 亚洲精品久久在线| 欧美一级专区| 欧美日韩爆操| 国内自拍亚洲| 亚洲视频电影图片偷拍一区| 亚洲国产成人午夜在线一区| 亚洲字幕在线观看| 欧美福利网址| 狠狠v欧美v日韩v亚洲ⅴ| 一区二区精品国产| 亚洲国产欧美一区二区三区丁香婷| 亚洲国产毛片完整版| 亚洲人成小说网站色在线| 亚洲精品乱码视频| 久久成人免费网| 久久免费精品日本久久中文字幕| 久久久噜噜噜久久狠狠50岁| 欧美日一区二区三区在线观看国产免| 欧美日韩第一区| 欧美午夜电影网| 国产精品自在欧美一区| 亚洲精品国产日韩| 亚洲第一成人在线| 欧美中文在线免费| 欧美日韩在线一区二区| 亚洲国产精品成人精品 | 国产精品―色哟哟| 亚洲精品国产日韩| 亚洲国产欧美日韩精品| 亚洲最新在线视频| 另类激情亚洲| 国产日韩一区二区三区在线| 在线视频欧美日韩| 亚洲天堂网站在线观看视频| 欧美激情第1页| 精品9999| 亚洲第一搞黄网站| 久久久亚洲高清| 国产一区二区三区高清| 亚洲永久在线观看| 亚洲淫片在线视频| 国产精品xxxxx| 狠狠干成人综合网| 欧美一二三视频| 久久国产视频网站| 国产欧美 在线欧美| 亚洲视频免费在线观看| 亚洲天堂av电影| 欧美午夜精品久久久久免费视| 国产一区二区中文字幕免费看| 亚洲风情在线资源站| 久久精品91久久久久久再现| 中国成人黄色视屏| 欧美日韩国产在线看| 亚洲国产精品久久久久久女王| 亚洲视频精选在线| 亚洲午夜在线视频| 国产精品成人一区二区三区夜夜夜| 黄色av日韩| 久久精品一区二区三区四区| 久久综合成人精品亚洲另类欧美| 欧美视频在线一区二区三区| 亚洲精品一区在线观看香蕉| 一区二区三区精品视频| 欧美日韩一区二区精品| 夜夜嗨av一区二区三区网站四季av | 亚洲国产二区| 99国产精品视频免费观看| 欧美精品一区在线发布| 亚洲精选大片| 亚洲伊人一本大道中文字幕| 欧美aaa级| 亚洲欧洲精品一区二区三区 | 国产精品成人观看视频国产奇米| 在线播放中文字幕一区| 亚洲欧洲日产国产网站| 欧美精品在线视频观看| 99精品国产一区二区青青牛奶 | 亚洲国产精品va在线观看黑人| 亚洲欧美日韩国产| 国产精品免费观看在线| 欧美一区影院| 欧美激情一区二区三区全黄| 9i看片成人免费高清| 小黄鸭精品密入口导航| 国内成人精品2018免费看| 亚洲精品在线三区| 国产精品青草综合久久久久99 | 亚洲一区二区在线免费观看| 欧美成人精品不卡视频在线观看| 国产亚洲欧洲| 亚洲激情第一区| 欧美午夜视频一区二区| 性色av一区二区三区在线观看| 亚洲免费视频一区二区| 国产日韩精品在线播放| 亚洲视频狠狠| 久久人人爽人人爽爽久久| 国产亚洲va综合人人澡精品| 亚洲国产高清高潮精品美女| 欧美日韩一区国产| 欧美在线一二三四区| 欧美看片网站| 欧美亚洲视频在线看网址| 欧美高清在线视频| 亚洲欧美日产图| 欧美夫妇交换俱乐部在线观看| 伊人久久噜噜噜躁狠狠躁| 一本色道久久综合亚洲精品不卡| 欧美精品国产| 亚洲综合成人婷婷小说| 免费观看亚洲视频大全| 樱花yy私人影院亚洲| 亚洲午夜在线| 在线观看欧美| 欧美一区二区三区免费视| 亚洲黄色在线观看| 欧美一区二区三区日韩| 国产精品亚洲片夜色在线| 亚洲专区欧美专区| 欧美国产精品日韩| 欧美综合激情网| 国产精品福利在线观看网址| 亚洲曰本av电影| 欧美国产日韩一区| 日韩网站在线观看| 久久人91精品久久久久久不卡| 亚洲第一搞黄网站| 欧美影院视频| 这里是久久伊人| 欧美精品尤物在线|