資料介紹
當前,數字信號處理器(DSP)芯片以其強大的運算能力在通信、電子、圖像處理等各個領域得到了廣泛的應用。使用DSP的系統可以按處理器使用的數目分為單處理器系統和多處理器系統。單DSP的系統盡管結構簡單,但系統的功能將不可避免地有所限制。由于DSP的控制功能不是非常強大,在應用中往往不得不把DSP作為目標系統專門負責復雜的運算,而另外使用一個主機(PC機或是單片機)對整個系統的運行實行控制。所以,在使用DSP的多處理器系統中,主機(單片機、PC機、另一個DSP芯片)與目標系統 DSP的數據交換就成為應用系統設計中必須考慮的重要問題。
1 主機接口的傳統解決方案
解決主機與目標系統的數據交換是一個非常復雜的問題。傳統的方式是采用 DMA(Direct Memory Access)或全局存儲器(Global Memory)完成多機系統中的數據共享。在DMA方式下,讀寫共享內存必須要求其它處理器處于停止工作的狀態,所以DMA共享存儲器的方式往往不為人所用。全局存儲器是多個處理器共享的存儲器。在使用全局存儲器的應用系統中,DSP的地址空間被分成局部塊(Local Section)和全局塊(Global Section)。局部塊用于完成處理器自己的工作,而全局塊則用來完成與其它處理器的通信工作。在TMS320C5X器件中,使用全局存儲器分配寄存器GReg完成對全局內存的管理工作。GReg指定部分DSP內存為全局內存。比如,TMS320C5x器件能夠分配全局數據內存空間,并通過BR(Bus Request)和 hcs控制信號實現與該內存的通信。當需要尋址全局內存空間時,BR和hcs信號變低電平。于是外部邏輯進行全局內存控制權的裁決,裁決的結果將通過選通信號通知某個TMS320C5x 從而使該DSP現在就擁有對全局內存的控制權。顯然,使用全局內存的方式來完成多DSP的共享數據通信是非常方便的。但是,應用系統往往由單片機作為主機,DSP作為目標系統構成。由于當前使用最多的單片機往往是8位機,使用16位機的共享內存完成主機與DSP的數據交換不是處理太復雜就是資源利用不充分。為了解決DSP與低檔 8位主機的數據交換問題,TI公司在TMS320C54x系列中使用了HPI接口。HPI將以往一些需片外實現的功能集成在片內,簡化了與主機的連接,同時主機可以達到很高的訪問速度。該HPI端口在TI TMS320C6x系列的器件中也得到了保持,且功能有所增強。
TI TMS320C6x系列的器件中也得到了保持,且功能有所增強。
2 TMS320VC5402的HPI
TMS320VC5402是TI公司的54X系列定點DSP,具有低功耗、高性能的特點。
CPU 增強的多總線結構,三條獨立的16bit數據存儲器總線和一條程序存儲器總線;40bit運算邏輯單元(ALU),包括一個40bit的桶形移位器和兩個獨立的40bit累加器,17bit×17bit并行乘法器連接一個40bit的專用加法器,可用來進行非流水單周期乘/加(MAC)運算;比較、選擇和存儲單元(CSSU)用于Viterbi運算器的加/比較選擇指數編碼器在一個周期里計算一個40bit累加器的指數值兩個地址發生器中有八個輔助寄存器和兩個輔助寄存器運算單元(ARAUs)數據總線具有總線保持特性。
存儲器 擴展地址模式可最大尋址到1M×16bit外部程序空間,4K×16bit片上ROM,16K×16bit雙訪問片上RAM。
指令集 支持單指令循環和塊循環,存儲塊移動指令提供了高效的程序和數據存儲器管理,支持32bit長字操作數指令,支持兩個或三個操作數讀指令,支持并行存儲和并行加載的算術指令、條件存儲指令和中斷快速返回,支持定點DSP C語言編譯器。
片上硬件資源 軟件可編程等待狀態發生器和可編程存儲單元轉換,連接內部振蕩器或外部時鐘源的鎖相環(PLL)時鐘發生器,兩個多通道緩沖串口(McBSPs),增強型8bit并行主機接口(HPI8),兩個16bit定時器,6通道直接存儲器訪問(DMA)控制器。
電源 低功耗,工作電源有3.3V和1.8V(內核),用節電模式的IDLE1、IDLE2及IDLE3指令做功率控制,可禁止CLKOUT信號。
速度 在3.3V供電(1.8V核心電壓)下單周期定點指令的執行周期為10ns(100MIPS)。
仿真 符合IEEE1149.1邊界掃描邏輯標準的片內掃描仿真邏輯接口。
TMS320C54x系列DSP芯片中的HPI,能夠順序傳送或隨機傳送數據,產生HOST中斷和C54x中斷,接口靈活,并可通過DMA總線訪問片內RAM。當TMS320 C54X與主機(或主設備)交換信息時,HPI是主機的一個外圍設備。HPI有8根數據線HD(0~7),在TMS320C54x與HOST傳送數據時,HPI能自動將外部接口傳來的連續數據組合成16位數后傳送給DSP。如果HOST和DSP競爭同一個地址,則HOST優先,DSP等待一個HPI周期。
TMS320C54x系列發展到TMS320VC5402的時候,其HPI已經得到了增強,被稱為HPI-8。和TMS320C54x系列前幾款芯片中的標準HPI相比,HPI-8在幾個方面有所不同,見表1。
表1 HPI-8和標準HPI的主要差別
增強型HPI(HPI-8) 標準HPI
可訪問所有片內RAM空間 可訪問所有片內2K的RAM空間
HOST訪問總是與TMS32054x時鐘同步 HOST-Only模式下HOST訪問與TMS320C54x時鐘同步
HOST和TMS320C54x都可訪問片內RAM HOST-Only模式,HOST具有獨占的訪問權
HPI-8的使用是通過對HPIA、HPIC和HPID三個寄存器賦值實現的。HPIA是地址寄存器,HPIC是控制寄存器,而HPID是數據寄存器。簡單地說,HOST通過外部引腳HCNTL0和HCNTL1選中不同的寄存器,則當前發送的8位數據就送到該寄存器。在使用上,由于HPIC是16位寄存器,而HPI-8是8位的數據寬度,所以在HOST向HPIC寫數據時,需要發送兩個一樣的8位數據。而地址寄存器HPIA選擇后,直接向它寫數據就可以了,但是要注意MSB和LSB的順序。另外,HPIA具有自動增長的功能,在每寫入一個數據前和每寫入一個數據后,HPIA會自動加1。這樣,如果使能了該功能,只需設定一次HPIA即可實現連續數據塊的寫入和讀出。數據寄存器HPID,嚴格說應該叫做數據緩沖寄存器,因為最終數據是要寫到片內RAM的。只是在實現上,數據首先從HOST發到HPID中,然后根據HPIA指定的地址,HPID中的數據再寫到片內RAM的地址中。不過對用戶而言,該過程是透明的。
3 使用HPI對DSP進行自舉
HPI是作為多機數據交換而出現的,但是由于其功能特性,又產生了一種新的應用--使用HPI對DSP進行自舉。實際上,TMS320VC5x系列DSP在片內固化的Bootloader程序中對HPI自舉提供了全面的支持。筆者在VOIP系統的開發中,實現了使用HPI對DSP TMS320VC5402的自舉,從而省掉了DSP的EPROM,使DSP只使用SRAM,提高了處理速度,并使HOST CPU具有更大的控制權,很適合多處理器系統。對于計算機插卡式的DSP系統,程序可以從PC機的硬盤上獲取,從而減小了插卡版面空間占用,提高了處理速度。
在實現上,需要解決以下幾個問題。
3.1 DSP片內固化的Bootloader程序對HPI自舉的支持
自舉從本質上說就是在DSP啟動后通過某種方式獲取運行代碼并開始運行,這個過程是在固化在DSP片內的Bootloader程序輔助下完成的。在DSP上電以后,Bootloader程序按照一定的順序依次檢驗何種自舉方式可用,自舉方式包括HPI方式、Serial EEPROM方式、標準Serial Port方式、Parallel方式和I/O方式。
Bootloader查詢HPI方式是否可用是這樣進行的:在啟動以后,DSP片內0x7f地址的值被置為0,Bootloader不斷檢驗0x7f地址處是否出現了可用的程序指針的跳轉地址。當其發現該地址內的值不為0時,即判定為DSP已由外部HOST CPU進行了HPI自舉程序加載,并按照該值跳轉PC指針,開始運行,從而完成HPI方式自舉。
3.2 突破4K的空間限制
由于HPI-8的特性,HOST能夠訪問所有的片內RAM空間,對于TMS320VC5402來說,其片內RAM地址空間從0000H到3fffH,一共4K。這已經大大超過了標準HPI的2K的大小,但是對于大多數DSP應用程序來說,片內RAM除了放置程序代碼以外,很可能還需要留出一部分供數據空間使用。實際上,大部分代碼都可能放置在片外的程序空間,而這部分空間并不是HOST通過HPI-8所能夠訪問得到的。所以需要使用某種技術突破4K的片內RAM空間限制。由于DSP程序本身是能夠訪問到所有DSP程序、數據空間的,所以HOST可以首先放置一個體積不大于4K的程序到DSP內,再由該程序和HOST協作完成超出片內RAM的代碼的放置工作。
一般將上述的首先放入DSP的程序稱為kernel程序,其功能比較簡單,本身不超過4K,可以由HOST全部放入到TMS320VC5402的片內RAM中,并被啟動。
基于此種思路的流程圖如圖1所示。
1 主機接口的傳統解決方案
解決主機與目標系統的數據交換是一個非常復雜的問題。傳統的方式是采用 DMA(Direct Memory Access)或全局存儲器(Global Memory)完成多機系統中的數據共享。在DMA方式下,讀寫共享內存必須要求其它處理器處于停止工作的狀態,所以DMA共享存儲器的方式往往不為人所用。全局存儲器是多個處理器共享的存儲器。在使用全局存儲器的應用系統中,DSP的地址空間被分成局部塊(Local Section)和全局塊(Global Section)。局部塊用于完成處理器自己的工作,而全局塊則用來完成與其它處理器的通信工作。在TMS320C5X器件中,使用全局存儲器分配寄存器GReg完成對全局內存的管理工作。GReg指定部分DSP內存為全局內存。比如,TMS320C5x器件能夠分配全局數據內存空間,并通過BR(Bus Request)和 hcs控制信號實現與該內存的通信。當需要尋址全局內存空間時,BR和hcs信號變低電平。于是外部邏輯進行全局內存控制權的裁決,裁決的結果將通過選通信號通知某個TMS320C5x 從而使該DSP現在就擁有對全局內存的控制權。顯然,使用全局內存的方式來完成多DSP的共享數據通信是非常方便的。但是,應用系統往往由單片機作為主機,DSP作為目標系統構成。由于當前使用最多的單片機往往是8位機,使用16位機的共享內存完成主機與DSP的數據交換不是處理太復雜就是資源利用不充分。為了解決DSP與低檔 8位主機的數據交換問題,TI公司在TMS320C54x系列中使用了HPI接口。HPI將以往一些需片外實現的功能集成在片內,簡化了與主機的連接,同時主機可以達到很高的訪問速度。該HPI端口在TI TMS320C6x系列的器件中也得到了保持,且功能有所增強。
TI TMS320C6x系列的器件中也得到了保持,且功能有所增強。
2 TMS320VC5402的HPI
TMS320VC5402是TI公司的54X系列定點DSP,具有低功耗、高性能的特點。
CPU 增強的多總線結構,三條獨立的16bit數據存儲器總線和一條程序存儲器總線;40bit運算邏輯單元(ALU),包括一個40bit的桶形移位器和兩個獨立的40bit累加器,17bit×17bit并行乘法器連接一個40bit的專用加法器,可用來進行非流水單周期乘/加(MAC)運算;比較、選擇和存儲單元(CSSU)用于Viterbi運算器的加/比較選擇指數編碼器在一個周期里計算一個40bit累加器的指數值兩個地址發生器中有八個輔助寄存器和兩個輔助寄存器運算單元(ARAUs)數據總線具有總線保持特性。
存儲器 擴展地址模式可最大尋址到1M×16bit外部程序空間,4K×16bit片上ROM,16K×16bit雙訪問片上RAM。
指令集 支持單指令循環和塊循環,存儲塊移動指令提供了高效的程序和數據存儲器管理,支持32bit長字操作數指令,支持兩個或三個操作數讀指令,支持并行存儲和并行加載的算術指令、條件存儲指令和中斷快速返回,支持定點DSP C語言編譯器。
片上硬件資源 軟件可編程等待狀態發生器和可編程存儲單元轉換,連接內部振蕩器或外部時鐘源的鎖相環(PLL)時鐘發生器,兩個多通道緩沖串口(McBSPs),增強型8bit并行主機接口(HPI8),兩個16bit定時器,6通道直接存儲器訪問(DMA)控制器。
電源 低功耗,工作電源有3.3V和1.8V(內核),用節電模式的IDLE1、IDLE2及IDLE3指令做功率控制,可禁止CLKOUT信號。
速度 在3.3V供電(1.8V核心電壓)下單周期定點指令的執行周期為10ns(100MIPS)。
仿真 符合IEEE1149.1邊界掃描邏輯標準的片內掃描仿真邏輯接口。
TMS320C54x系列DSP芯片中的HPI,能夠順序傳送或隨機傳送數據,產生HOST中斷和C54x中斷,接口靈活,并可通過DMA總線訪問片內RAM。當TMS320 C54X與主機(或主設備)交換信息時,HPI是主機的一個外圍設備。HPI有8根數據線HD(0~7),在TMS320C54x與HOST傳送數據時,HPI能自動將外部接口傳來的連續數據組合成16位數后傳送給DSP。如果HOST和DSP競爭同一個地址,則HOST優先,DSP等待一個HPI周期。
TMS320C54x系列發展到TMS320VC5402的時候,其HPI已經得到了增強,被稱為HPI-8。和TMS320C54x系列前幾款芯片中的標準HPI相比,HPI-8在幾個方面有所不同,見表1。
表1 HPI-8和標準HPI的主要差別
增強型HPI(HPI-8) 標準HPI
可訪問所有片內RAM空間 可訪問所有片內2K的RAM空間
HOST訪問總是與TMS32054x時鐘同步 HOST-Only模式下HOST訪問與TMS320C54x時鐘同步
HOST和TMS320C54x都可訪問片內RAM HOST-Only模式,HOST具有獨占的訪問權
HPI-8的使用是通過對HPIA、HPIC和HPID三個寄存器賦值實現的。HPIA是地址寄存器,HPIC是控制寄存器,而HPID是數據寄存器。簡單地說,HOST通過外部引腳HCNTL0和HCNTL1選中不同的寄存器,則當前發送的8位數據就送到該寄存器。在使用上,由于HPIC是16位寄存器,而HPI-8是8位的數據寬度,所以在HOST向HPIC寫數據時,需要發送兩個一樣的8位數據。而地址寄存器HPIA選擇后,直接向它寫數據就可以了,但是要注意MSB和LSB的順序。另外,HPIA具有自動增長的功能,在每寫入一個數據前和每寫入一個數據后,HPIA會自動加1。這樣,如果使能了該功能,只需設定一次HPIA即可實現連續數據塊的寫入和讀出。數據寄存器HPID,嚴格說應該叫做數據緩沖寄存器,因為最終數據是要寫到片內RAM的。只是在實現上,數據首先從HOST發到HPID中,然后根據HPIA指定的地址,HPID中的數據再寫到片內RAM的地址中。不過對用戶而言,該過程是透明的。
3 使用HPI對DSP進行自舉
HPI是作為多機數據交換而出現的,但是由于其功能特性,又產生了一種新的應用--使用HPI對DSP進行自舉。實際上,TMS320VC5x系列DSP在片內固化的Bootloader程序中對HPI自舉提供了全面的支持。筆者在VOIP系統的開發中,實現了使用HPI對DSP TMS320VC5402的自舉,從而省掉了DSP的EPROM,使DSP只使用SRAM,提高了處理速度,并使HOST CPU具有更大的控制權,很適合多處理器系統。對于計算機插卡式的DSP系統,程序可以從PC機的硬盤上獲取,從而減小了插卡版面空間占用,提高了處理速度。
在實現上,需要解決以下幾個問題。
3.1 DSP片內固化的Bootloader程序對HPI自舉的支持
自舉從本質上說就是在DSP啟動后通過某種方式獲取運行代碼并開始運行,這個過程是在固化在DSP片內的Bootloader程序輔助下完成的。在DSP上電以后,Bootloader程序按照一定的順序依次檢驗何種自舉方式可用,自舉方式包括HPI方式、Serial EEPROM方式、標準Serial Port方式、Parallel方式和I/O方式。
Bootloader查詢HPI方式是否可用是這樣進行的:在啟動以后,DSP片內0x7f地址的值被置為0,Bootloader不斷檢驗0x7f地址處是否出現了可用的程序指針的跳轉地址。當其發現該地址內的值不為0時,即判定為DSP已由外部HOST CPU進行了HPI自舉程序加載,并按照該值跳轉PC指針,開始運行,從而完成HPI方式自舉。
3.2 突破4K的空間限制
由于HPI-8的特性,HOST能夠訪問所有的片內RAM空間,對于TMS320VC5402來說,其片內RAM地址空間從0000H到3fffH,一共4K。這已經大大超過了標準HPI的2K的大小,但是對于大多數DSP應用程序來說,片內RAM除了放置程序代碼以外,很可能還需要留出一部分供數據空間使用。實際上,大部分代碼都可能放置在片外的程序空間,而這部分空間并不是HOST通過HPI-8所能夠訪問得到的。所以需要使用某種技術突破4K的片內RAM空間限制。由于DSP程序本身是能夠訪問到所有DSP程序、數據空間的,所以HOST可以首先放置一個體積不大于4K的程序到DSP內,再由該程序和HOST協作完成超出片內RAM的代碼的放置工作。
一般將上述的首先放入DSP的程序稱為kernel程序,其功能比較簡單,本身不超過4K,可以由HOST全部放入到TMS320VC5402的片內RAM中,并被啟動。
基于此種思路的流程圖如圖1所示。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- TMS320UC5402和TMS320VC5402數字信號處理器硅勘誤表詳細分析概述 13次下載
- TMS320VC5402和TMS320UC5402引導加載程序的特點和操作詳細概述 10次下載
- TMS320VC5402與51單片機的接口設計 2次下載
- TMS320VC5402 DSP與單片機的HPI接口實現方案分析 1次下載
- 基于TMS320VC5402的DSP基本系統的設計 18次下載
- 在TMS320VC5402上實現的語音識別算法 9次下載
- TMS320VC5402 DSP與串行AD73360 A/D轉換器的接口設計 12次下載
- 基于DSP芯片TMS320VC5402的HPI通信設計 136次下載
- 基于TMS320VC5402 的DSP基本系統的設計
- AVR 和TMS320VC5402的HPI接口通信設計
- PC/104 總線與TMS320VC5402HPI 口通信的解決方案
- 基于TMS320VC5402的指紋識別系統
- 基于TMS320VC5402的指紋識別系統
- TMS320VC5402 的Flash并行Bootloade
- TMS320VC5402 與AC’97 Codec的接口設計
- 基于TMS320VC5402和單片機實現主從雙CPU處理器平臺的設計 3423次閱讀
- 基于VC5402和PCI2040實現HPI接口和PCI接口的應用設計 2069次閱讀
- 基于CY7C68033和TMS320DM6437芯片實現高速圖像采集處理系統的設計 2297次閱讀
- 基于DSP TMS320VC5402芯片實現數字視頻監控系統的設計 4231次閱讀
- 基于TMS320C5402芯片實現音頻系統的總體方案 4565次閱讀
- 基于TMS320VC5410 DSP的PCI語音卡和WDM設備驅動程序設計 2807次閱讀
- 基于EP7312和TMS320VC5402實現智能儀器及控制系統的設計 928次閱讀
- 基于DSP芯片TMS320VC5402的PCI圖像采集卡 1781次閱讀
- dsp tms320c6000基本作用的認識 9580次閱讀
- 基于TMS320VC5507的語音識別系統實現 1942次閱讀
- 基于DSP CCS2.2實現指紋識別預處理系統 1956次閱讀
- JTAG接口在線燒寫Flash的實現 1.5w次閱讀
- TMS320VC5402與單片機的HPI口通信設計 2176次閱讀
- VC5402與外部存儲器的接口設計 1786次閱讀
- TMS320C6000擴展總線與MPC860的HPI接口設計 1976次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費下載
- 0.00 MB | 1489次下載 | 免費
- 2單片機典型實例介紹
- 18.19 MB | 91次下載 | 1 積分
- 3S7-200PLC編程實例詳細資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關電源原理及各功能電路詳解
- 0.38 MB | 9次下載 | 免費
- 6基于AT89C2051/4051單片機編程器的實驗
- 0.11 MB | 4次下載 | 免費
- 7基于單片機和 SG3525的程控開關電源設計
- 0.23 MB | 3次下載 | 免費
- 8基于單片機的紅外風扇遙控
- 0.23 MB | 3次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費
- 4LabView 8.0 專業版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費
- 5555集成電路應用800例(新編版)
- 0.00 MB | 33562次下載 | 免費
- 6接口電路圖大全
- 未知 | 30319次下載 | 免費
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費
- 8開關電源設計實例指南
- 未知 | 21539次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537791次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191183次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183277次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138039次下載 | 免費
評論
查看更多