《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 業界動態 > ARM CPU S3C44B0X與C54X DSP的接口設計

ARM CPU S3C44B0X與C54X DSP的接口設計

2008-09-24
作者:陳 猛 趙繼敏

  摘? 要: 以SAMSUNG公司的ARM SOC芯片S3C44B0X和TI公司的TMS320C5416 DSP為例,講述了ARM芯片與DSP的數據接口技術,并給出了硬件連接圖和軟件代碼。

  關鍵詞: ARM S3C44B0X 主機接口(HPI)? TMS320C5416

?

  后PC時代,嵌入式產品逐漸占領市場。而這些嵌入式產品的核心——處理器決定了產品的設計和性能。高性能" title="高性能">高性能、低功耗" title="低功耗">低功耗、低成本是嵌入式處理器的主要特點。在32位嵌入式處理器市場中,ARM占有78.6%的份額。而TI則占有DSP市場的絕大部分份額。通常的嵌入式系統設計中,由微控制器" title="微控制器">微控制器實現整個系統的控制,由DSP來執行計算密集型操作,然后通過一定的手段實現微控制器與DSP之間的通信和數據交換。因此,如何高效地設計控制器(ARM)與DSP之間的接口以滿足嵌入式系統的實時性要求,在嵌入式系統設計中顯得尤為重要。

1 ARM CPU S3C44B0X的特點

  ARM是一款32位的精簡指令集(RISC)處理器架構,以其高性能、低功耗、低成本占有市場。由于ARM公司采用IP授權的方式經營,全球幾乎所有的大半導體公司都有基于ARM的SOC芯片。

  S3C44B0X是SAMSUNG(三星)公司一款基于ARM7TDMI的SOC芯片。它一方面具有ARM處理器的所有優點:低功耗、高性能;同時又具有非常豐富的片上資源,非常適合嵌入式產品的開發。其特點如下:

  ·采用ARM7TDMI內核,I/O" title="I/O">I/O電壓3.3V,內核電壓2.5V;

  ·內置鎖相環(PLL),系統主頻最高達66MHz;

  ·4種工作模式,可以實現電源管理以降低系統功耗;

  ·8KB的系統高速緩存(CACHE),極大地提高了系統運行速度;

  ·支持8個MEMORY BANK,最大外部存儲空間達256MB,并支持SDRAM;

  ·內置彩色LCD控制器;

  ·2路異步串口(UART);

  ·71個通用I/O口;

  ·8通路模/數轉換器(ADC);

  ·實時時鐘(RTC)和看門狗電路(WATCHDOG)。

2 C54X DSP及其HPI接口

2.1 C54X DSP的特點

  以高速、低功耗為特征的C54X系列DSP采用先進的改進型哈佛結構,具有分離的數據總線和程序總線,片內集成了ROM、RAM和多個外設,如通用I/O口、定時器、時鐘發生器、軟件可編程等待狀態發生器、可編程塊切換邏輯、串行口、直接存儲器存取控制器(DMA)和與外部處理器通信用的主機接口(HPI)。

2.2 C54X的主機接口(HPI)

  C54X中的主機接口(HPI)主要有三種:標準8位HPI8接口、增強型" title="增強型">增強型8位HPI8接口和16位HPI16接口。其中C542~C549內含標準型HPI8;C5402、C5410內含增強型HPI8;C5410以上為HPI16;C5409、C5416的HPI可以由用戶設置為增強型HPI8或HPI16。增強型比標準型更優越之處主要在于:增強型允許主機訪問DSP內部的所有片內RAM,而標準型只能訪問RAM區中指定的2K字。

以TMS320C5416(簡稱C5416)包含的增強型HPI8接口為例,它與外部主機或微處理器的連接具有單獨的8根數據線HD0~HD7和10根控制線。主機主動通過HPI口訪問DSP的內部RAM以及其它資源。除了對主機發中斷(通過置HPIC寄存器的HINT位,可以使HINT線有效)或清除主機發來的中斷(通過清HPIC寄存器的DSPINT標志)需要DSP干涉外,C5416幾乎不用進行其他操作,片內的DMA通道會自動輔助完成RAM區與HPI數據寄存器的數據傳輸。主機由HCNTL0/1線來選擇HPI的某個控制寄存器,如表1所列。通過對這4個寄存器的訪問,就可以在所設安全機制的允許范圍下讀/寫DSP的所有或部分片內RAM。

?

?

  由于DSP最小的存儲單位是字(16bit),因此對于HPI8,每個傳遞必須要有2個傳遞周期才能完成。HBIL信號用于區分傳遞的字節是當前字的第一字節還是第二字節。通過設置HPIC寄存器的BOB位,可以決定第一字節是這個字的高字節還是低字節。

2.3 時序圖

  C54X HPI8的時序如圖1所示,該時序可滿足市場上大多數微控制器的時序特征。因此,C54X可以通過HPI8很方便地與微控制器接口,S3C44B0X也不例外。

?

3 S3C44B0X與C54X DSP的接口設計

3.1 硬件連線

  TMS320C5416與S3C44B0X連接的接口電路如圖2所示。由圖2可見,C54X通過HPI8與主機設備相連時,除了8位HPI數據總線及控制信號線外,不需要附加其它的邏輯電路,非常方便。

?

?

  從HPI寄存器的編址方式可以看出,主機只需兩根地址線(A3、A2)便可尋址到HPI端口的所有控制寄存器、地址寄存器和數據寄存器。同時,將HPI8接口安排在S3C44B0X的BANK2(即地址范圍0X04000000~0X05FFFFFF),而且S3C44B0X具有內部譯碼器,直接產生片選信號nGCS2。由于C54X HPI8是一個8位的并行端口,而C5416的內部結構為16位,因而主機必須讀/寫兩個連續的8位字節,而且主機還應該提供HBIL信號指示當前傳輸的是第一字節還是第二字節。在S3C44B0X中,可以直接使用地址線A1來完成此功能:當向A1=0的地址寫入數據時,表示為第一字節;向A1=1的地址寫入數據表示第二字節。

  另外,還有幾個關鍵的控制信號線需要連接。一個就是HR/W信號,由于S3C44B0X沒有此信號,使用地址線A4來代替。當A4=1時,代表讀操作,反之為寫操作。在HPI8的操作中,所有的地址線和控制線在HDS1/2的下降沿采樣,用S3C44B0X的讀/寫信號nOE和nWE來完成此功能。

  由于S3C44B0X和C5416 HPI接口的控制邏輯不盡相同,需要使用其它的一些信號線來進行模擬,此時要嚴格遵循HPI的讀寫時序(如圖1所示)。

3.2 軟件設計

  由于主機接口(HPI)傳送8位數據字節,而HPIC寄存器(通常是S3C44B0X首先要尋址的寄存器)是一個16位寄存器,在S3C44B0X這一邊可以相同內容的高字節與低字節來管理HPIC寄存器(盡管某些位的尋址受到一定的限制),在C54X這一邊高位不用。

  當主機開始存取DSP的數據時,首先要執行以下兩步操作:

  ·HPIC寄存器的BOB位置1(高字節與低字節必須相同)。BOB位為字節選擇位。BOB位置1,表示第一字節為低字節。BOB位影響數據和地址的傳送。只有主機可以修改這一位,C54X對它既不能讀也不能寫。

  ·將起始地址寫入HPIA寄存器。

  此后可正常存取DSP內部RAM的數據了。

  結合硬件設計和HPI的操作步驟,便可以在S3C44B0X上編寫程序實現與C5416的數據通信。

  程序主要分為兩個部分:一部分是地址及數據的定義;一部分是實現代碼。具體程序如下:

  #define HPI_BASE ?????? 0x4000000

  /* HPIC reg */

  #define HPIC_W_F??????*(UINT8*)(HPI_BASE+0x0)

????????????????????????????????????????????????????????????? //000 0 0

  #define HPIC_W_S??????*(UINT8 *)(HPI_BASE + 0x2)?

???????????????????????????                ?? //000 1 0

  #define HPIC_R_F??????*(UINT8 *)(HPI_BASE + 0x10)?

                       ??????????????? //110 0 0

  #define HPIC_R_S??????*(UINT8 *)(HPI_BASE + 0x12)??

          ?????????????????????????????????????????? //110 1 0

  /* HPIA automatically change */

  #define HPID_W_A_F??? *(UINT8 *)(HPI_BASE + 0x4)

        ????????????????????????????????????????????? //001 0 0

  #define HPID_W_A_S??? *(UINT8 *)(HPI_BASE + 0x6)??????????????????

                 ???????????????????????????? //001 1 0

  #define HPID_R_A_F??? *(UINT8 *)(HPI_BASE + 0x14)??????????????????????

                     ???????????????????? //101 0 0

  #define HPID_R_A_S??? *(UINT8 *)(HPI_BASE + 0x16)

       ???????????????????????????????????????????????? //101 1 0

  /* HPIA reg */

  #define HPIA_W_F??????*(UINT8 *)(HPI_BASE + 0x8)???????????????????

                    ?????????????????????? //010 0 0

  #define HPIA_W_S??????*(UINT8 *)(HPI_BASE + 0xA)

           ?????????????????????????????????????????//010 1 0

  #define HPIA_R_F??????*(UINT8 *)(HPI_BASE + 0x18)?

              ???????????????????????????????????//110 0 0

??? #define HPIA_R_S??????*(UINT8 *)(HPI_BASE + 0x1A)????????????????????????????

????                        ?????????? //110 1 0

  上述這些宏定義了HPI8接口寄存器的地址。對S3C44B0X來說,HPI8占用其內存的BANK2,即起始地址為0X04000000。又由于HPI8的HR/W和HBIL信號用S3C44B0X的地址線實現,因此對同一個寄存器而言,其讀寫地址不同。

  以下代碼從DSP讀出數據:

  UINT16 read_dsp(UINT16 addr)

  {

????  ?? INT16 i;

??????   INT8 j;

??????

????  ?? set_hpia(addr);?????????? //設置起始地址

??????

??????   i = HPID_R_A_F;??????   //讀出第一字節

??????   j = HPID_R_A_S;??????   //讀出第二字節

??????

  ?????? return (i<<8)|(j&0xff);

  }

????    以下代碼向DSP寫入數據:

  void write_dsp(UINT16 addr, UINT16 dat)

  {

????  ?? set_hpia(addr-1);??????????????????????? //設置起始地址

??????   HPID_W_A_F=(UINT8)((dat>>8) & 0xff);???? //寫入第一字節

  ?????? HPID_W_A_S=(UINT8)(dat & 0xff);??????   //寫入第二字節

  }

  在嵌入式系統設計中,用S3C44B0X作為主控制器,用TMS320C5416進行運算,然后通過HPI接口進行通信和交換數據。事實證明,用HPI接口在ARM和DSP間通信滿足嵌入式系統的實時性要求。

?

參考文獻

1 李 剛. 數字信號微處理器的原理及其開發應用. 天津: 天津大學出版社, 2000

2 TMS320C54X DSP REFERENCE SET VOL5.ENHANCED?PERIPHERALS TI

3 S3C44B0X USER MANUAL. SAMSUNG ELECTRONICS

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美成人精精品一区二区频| 欧美日韩激情网| 国产精品啊啊啊| 亚洲国产精品久久久久婷婷884| 中文网丁香综合网| 国产精品久久久久99| 久久久夜色精品亚洲| 韩国三级电影久久久久久| 国产精品久久久久三级| 亚洲精品久久嫩草网站秘色| 久久精品国产亚洲一区二区三区| 老鸭窝亚洲一区二区三区| 久久男人资源视频| 日韩视频在线免费观看| 欧美一区二区三区播放老司机| 午夜视频一区二区| 国产一区二区日韩| 艳女tv在线观看国产一区| 欧美在线视频观看免费网站| 亚洲国产导航| 亚洲欧美日韩在线| 亚洲系列中文字幕| 亚洲欧美在线免费| 午夜视频一区在线观看| 亚洲天堂成人在线观看| 国产精品亚洲激情| 久久综合久色欧美综合狠狠| 国产小视频国产精品| 亚洲电影毛片| 亚洲精品国产精品乱码不99按摩| 欧美日韩亚洲视频一区| 欧美日韩综合精品| 久久久久久一区| 久热re这里精品视频在线6| 99国产精品自拍| 久久久久国产一区二区三区四区| 国产精品地址| 欧美精品久久99久久在免费线| 欧美亚州一区二区三区| 欧美高清视频一区| 国产在线麻豆精品观看| 亚洲夜间福利| 免费观看成人鲁鲁鲁鲁鲁视频| 欧美一区永久视频免费观看| 亚洲淫片在线视频| 欧美mv日韩mv国产网站app| 久久久人成影片一区二区三区| 国产精品毛片| 在线观看久久av| 性色av香蕉一区二区| 在线播放中文一区| 欧美顶级少妇做爰| 亚洲无线一线二线三线区别av| 国产精品99久久99久久久二8| 国产精品成人在线观看| 午夜一区二区三视频在线观看| 国产亚洲一区二区三区在线播放| 在线观看视频免费一区二区三区| 在线不卡中文字幕| 国产一区二三区| 欧美中文在线免费| 国产精品呻吟| 欧美日韩精品一区二区在线播放| 欧美日韩亚洲一区二区三区在线观看| 国产在线国偷精品产拍免费yy| 黄色精品一二区| 亚洲视频一区在线观看| 快射av在线播放一区| 国产欧美精品在线观看| 亚洲天堂av图片| 欧美在线电影| 亚洲欧美一区二区视频| 有坂深雪在线一区| 国产一区二区三区在线观看精品| 亚洲精品久久久久久久久久久久久| 久久精品人人做人人爽| 最新国产乱人伦偷精品免费网站| 国语对白精品一区二区| 99热精品在线| 亚洲人成网在线播放| 国外精品视频| 亚洲黄色影院| 黄色资源网久久资源365| 黄色一区二区在线| 老司机一区二区三区| 欧美性事免费在线观看| 亚洲第一页在线| 久久精品一区二区| 久久国产乱子精品免费女| 欧美日韩亚洲一区二区三区| 久久久久女教师免费一区| 欧美日韩精品一区视频| 欧美激情四色| 亚洲精品之草原avav久久| 美女精品在线| 欧美精品一区在线播放| 嫩草国产精品入口| 亚洲欧美三级在线| 亚洲国产高清高潮精品美女| 伊人蜜桃色噜噜激情综合| 亚洲国产精品成人综合| 国内精品免费在线观看| 欧美大片免费久久精品三p| 欧美特黄a级高清免费大片a级| 欧美**人妖| 欧美色区777第一页| 久久视频在线视频| 久久国产精品亚洲77777| 亚洲精品乱码久久久久久蜜桃91| 这里只有精品丝袜| 亚洲一品av免费观看| 欧美一二三视频| 欧美视频在线观看免费| 鲁鲁狠狠狠7777一区二区| 久久久久国产免费免费| 久久国产夜色精品鲁鲁99| 91久久国产综合久久91精品网站| 一区在线免费观看| 91久久黄色| 欧美一区二区三区视频在线| 国产深夜精品福利| 香蕉成人久久| 欧美日韩精品一区二区三区四区| 久久天堂av综合合色| 欧美成人乱码一区二区三区| 国产一区二区三区成人欧美日韩在线观看| 国产精品久久久久久久电影| 香蕉成人啪国产精品视频综合网| 欧美麻豆久久久久久中文| 久久久美女艺术照精彩视频福利播放| 国产午夜精品视频免费不卡69堂| 欧美日韩三级视频| 亚洲精选中文字幕| 亚洲大片一区二区三区| 亚洲美女淫视频| 毛片av中文字幕一区二区| 国产精品剧情在线亚洲| 亚洲高清不卡在线观看| 在线电影一区| 久久久九九九九| 国产精品久久97| 国产美女一区| 在线视频日本亚洲性| 国内外成人免费激情在线视频| 欧美在线观看视频在线| 亚洲毛片av| 日韩亚洲国产欧美| 一区二区欧美视频| 国产精品亚洲第一区在线暖暖韩国| 国产精品久久亚洲7777| 国产精品日韩欧美一区| 欧美在线啊v一区| 国产欧美日韩在线| 亚洲国产婷婷香蕉久久久久久99| 亚洲国产高清在线观看视频| 久久天堂精品| 国产精品一级在线| 黑人中文字幕一区二区三区| 国产农村妇女毛片精品久久莱园子| 韩国av一区二区三区四区| 亚洲大片在线| 在线播放精品| 亚洲图片自拍偷拍| 亚洲欧洲精品一区二区三区波多野1战4| 欧美久久影院| 欧美午夜电影完整版| 红桃视频国产一区| 午夜久久福利| 欧美三日本三级少妇三99| 欧美一区二区高清在线观看| 久久天天狠狠| 国产精品夜色7777狼人| 欧美成va人片在线观看| 欧美日韩高清在线| 久久精品国产欧美激情| 亚洲国产综合视频在线观看| 欧美日韩在线观看一区二区| 亚洲精品久久久久中文字幕欢迎你| 国产精品v日韩精品v欧美精品网站| 99re6热只有精品免费观看| 久久gogo国模啪啪人体图| 国产日本欧美一区二区| 午夜影视日本亚洲欧洲精品| 国产一区二区日韩精品欧美精品| 一区精品久久| 久久亚洲精选| 精品不卡一区二区三区| 国产精品爽爽ⅴa在线观看| 欧美96在线丨欧| 国产一区二区黄| 一本一本久久a久久精品综合妖精| 国产麻豆视频精品| 午夜精品在线观看| 国产精品视频一二| 亚洲日本精品国产第一区| 久久综合给合久久狠狠狠97色69| 亚洲国产欧美精品| 国产亚洲精品资源在线26u| 99精品国产福利在线观看免费| 日韩亚洲欧美综合| 极品少妇一区二区三区精品视频| 亚洲福利国产精品| 亚洲视频综合| 亚洲免费成人| 国产精品视频一区二区三区| 国产日韩精品在线播放| 欧美视频手机在线| 久久久人成影片一区二区三区观看| 亚洲国产va精品久久久不卡综合| 黄色亚洲免费| 欧美国产日本高清在线| 国产精品国产自产拍高清av| 国产自产v一区二区三区c| 国产精品九色蝌蚪自拍| 久久久久88色偷偷免费| 国产欧美日韩另类一区| 欧美另类在线观看| 一区二区三区国产精品| 国产亚洲欧洲一区高清在线观看| 在线欧美视频| 免费久久精品视频| 欧美激情第4页| 在线观看视频亚洲| 亚洲社区在线观看| 欧美日韩视频不卡| 最新69国产成人精品视频免费| 久久综合久久88| 国产精品午夜久久| 中文久久乱码一区二区| 欧美日韩另类视频| 国产亚洲欧美日韩精品| 欧美怡红院视频一区二区三区| 久久av一区二区| 亚洲中午字幕| 99热在线精品观看| 国产精品99久久不卡二区| 国产欧美日韩视频一区二区三区| 羞羞色国产精品| 国产日韩欧美综合在线| 亚洲素人在线| 91久久久久久久久久久久久| 欧美一区二区三区啪啪| 国内外成人免费激情在线视频| 欧美色视频日本高清在线观看| 欧美一二三视频| 亚洲第一视频| 久久性色av| 国产一区成人| 亚洲精品免费观看| 亚洲精品欧美日韩专区| 美女诱惑一区| 欧美一区激情视频在线观看| 日韩一级片网址| 狠狠色2019综合网| 亚洲精品你懂的| 狠狠色噜噜狠狠狠狠色吗综合| 国产日韩欧美在线视频观看| 久热国产精品视频| 国产精品国产三级国产专播精品人| 午夜视黄欧洲亚洲| 亚洲精品一区二区三区樱花| 欧美激情一区二区三区在线视频观看| 国产精品护士白丝一区av| 国产在线视频欧美一区二区三区| 国产精品久久久久久五月尺| 免费影视亚洲| 夜夜躁日日躁狠狠久久88av| 一区二区三区视频在线| 欧美亚洲三级| 久久久水蜜桃av免费网站| 一本到12不卡视频在线dvd| 欧美黑人在线播放| 欧美激情精品久久久久久变态| 久久精品在这里| 国产裸体写真av一区二区| 亚洲午夜日本在线观看| 噜噜噜躁狠狠躁狠狠精品视频| 欧美日韩免费观看一区三区| 免费观看在线综合色| 亚洲人体大胆视频| 亚洲天堂偷拍| 91久久久在线| 亚洲欧美日韩在线观看a三区| 欧美三级第一页| 99热这里只有成人精品国产| 国产在线欧美| 亚洲欧美99| 欧美紧缚bdsm在线视频| 欧美色偷偷大香| 欧美成人r级一区二区三区| 久久激情视频久久| 欧美在线|欧美| 国产精品久久综合| 久久欧美中文字幕| 亚洲性视频h| 久久激情五月丁香伊人| 久久久国产精品一区二区三区| 亚洲国产精品小视频| 亚洲免费在线观看视频| 亚洲视频每日更新| 亚洲久久一区| 国产精品久久久久9999| 国产亚洲成人一区| 欧美调教视频| 亚洲日韩欧美视频一区| 国产亚洲成人一区| 亚洲一级二级在线| 欧美日韩一区二区三区视频| 夜夜嗨av色一区二区不卡| 久久久亚洲影院你懂的| 黄色成人av网| 国产午夜亚洲精品羞羞网站| 亚洲激情影视| 国产欧美日韩亚州综合| 国产精品免费一区二区三区在线观看| 亚洲另类春色国产| 国产精品女同互慰在线看| 玖玖视频精品| 国产精自产拍久久久久久蜜| 国产精品乱码一区二三区小蝌蚪| 欧美精品99| 一区二区视频免费在线观看| 欧美精品在线观看播放| 久久亚洲精品一区二区| 亚洲欧洲偷拍精品| 欧美日韩精品| 国产欧美一区在线| 国产精品福利影院|