資料介紹
ADSP-TS101S是美國ADI公司推出的一款具有極高性能的數(shù)字信號處理器(DSP)芯片,其專為大信號處理任務(wù)和通信應(yīng)用進(jìn)行了結(jié)構(gòu)上的優(yōu)化設(shè)計(jì),在嵌人式信號處理中得到廣泛應(yīng)用。ADSP-TS101S的軟件設(shè)計(jì)可以采用匯編語言、高級語言(C/C )或高級語言與匯編語言混合編程。完全采用匯編編程,執(zhí)行效率高,但對于復(fù)雜算法編寫難度大,開發(fā)周期長,可讀性和可移植性差;而完全采用C編程雖然可以彌補(bǔ)匯編的缺陷,但是程序的執(zhí)行效率相對較低,大概只有匯編程序的10%~20%,對于實(shí)時性要求很高的處理,如雷達(dá)信號處理,很難滿足要求。采用混合語言編程,用c語言構(gòu)建框架,用匯編完成運(yùn)算量較大的核心處理模塊及硬件底層管理,就可以把兩者的優(yōu)點(diǎn)有效地結(jié)合起來。C和匯編語言的混合編程有三種形式:一是對C程序編譯后形成的匯編程序進(jìn)行手工修改與優(yōu)化;二是直接在C代碼中插入?yún)R編語句,只需在匯編語句兩邊加上雙引號和括號,在括號前面加上標(biāo)識“asm“,如asm(“匯編語句”);三是分別編寫C程序和匯編程序,再獨(dú)立編譯成目標(biāo)代碼模塊鏈接。第一種方法對程序可讀性負(fù)面影響較大。第二種方法適用于C與匯編效率差異較大的情況,如進(jìn)入中斷的中斷子程序等。第三種方法最常用,需要遵循一些規(guī)定的接口規(guī)范和標(biāo)準(zhǔn)。
1 混合編程的接口規(guī)范和標(biāo)準(zhǔn)
①在C/C 環(huán)境下,TigerSHARC定義了一套嚴(yán)格的寄存器規(guī)則,它分為三類:
第一類是保留寄存器,j16~j25、k16~k25、xr24~xr31、yr24~yr31,共40個,作為編譯系統(tǒng)庫函數(shù)專門使用的寄存器。編寫程序時應(yīng)避免使用這些寄存器,以免誤改了系統(tǒng)庫函數(shù)。若在子程序中使用到,必須在被調(diào)用時保存,調(diào)用完后釋放。
第二類是堆棧專用寄存器,k26、27和j26、j27四個,這些寄存器在調(diào)用時都需要保護(hù)。
第三類是高速暫存寄存器,包括除了以上兩類寄存器以外的所有寄存器。用法和匯編中的普通寄存器是一樣的,使用前不需要保存寄存器內(nèi)容。
在默認(rèn)情況下,cjmp寄存器用作存放被調(diào)函數(shù)的返回地址,但在嵌套調(diào)用中,這個值會被修改。為了保證安全返回,一般把返回地址存放在堆棧頂偏移地址為0的地方。
函數(shù)調(diào)用有時需要參數(shù)傳遞,通常,若參數(shù)少于5個,則通過寄存器傳遞,如表1所列。

如果在C/C 調(diào)用函數(shù)中作了正確的函數(shù)返回聲明,則被調(diào)用的匯編函數(shù)可使用寄存器j8、xr8和xr9返回有效值。j8用于返回整數(shù)或地址;xr9:8可提供雙字結(jié)果返回。若返回值大于2個字長,則必須為它們分配存儲空間,令j8為返回值,指向該空間的首地址即可。
?、谠贑/C 中聲明的全局變量及函數(shù),匯編中加“一”前綴才能使用;在匯編中的對象必須用”一”前綴命名,并用.g10bal聲明為全局變量,才可在C/C 中訪問到。具體格式如表2所列。

2 混合編程的調(diào)用和中斷
2.1 函數(shù)調(diào)用
C編譯器對函數(shù)調(diào)用有一系列嚴(yán)格的規(guī)則。除了特殊的運(yùn)行支持函數(shù)外.任何函數(shù)與c函數(shù)互調(diào)都必須遵循這些規(guī)則。函數(shù)調(diào)用的標(biāo)準(zhǔn)運(yùn)行模式為:①調(diào)用者將參數(shù)莊人堆棧。壓入時按照反序進(jìn)行,即最右邊的參數(shù)位于堆棧的頂部。②調(diào)用函數(shù)。③調(diào)用結(jié)束時,調(diào)用者將參數(shù)彈出堆棧并返回。整個過程離不開堆棧操作。
1 混合編程的接口規(guī)范和標(biāo)準(zhǔn)
①在C/C 環(huán)境下,TigerSHARC定義了一套嚴(yán)格的寄存器規(guī)則,它分為三類:
第一類是保留寄存器,j16~j25、k16~k25、xr24~xr31、yr24~yr31,共40個,作為編譯系統(tǒng)庫函數(shù)專門使用的寄存器。編寫程序時應(yīng)避免使用這些寄存器,以免誤改了系統(tǒng)庫函數(shù)。若在子程序中使用到,必須在被調(diào)用時保存,調(diào)用完后釋放。
第二類是堆棧專用寄存器,k26、27和j26、j27四個,這些寄存器在調(diào)用時都需要保護(hù)。
第三類是高速暫存寄存器,包括除了以上兩類寄存器以外的所有寄存器。用法和匯編中的普通寄存器是一樣的,使用前不需要保存寄存器內(nèi)容。
在默認(rèn)情況下,cjmp寄存器用作存放被調(diào)函數(shù)的返回地址,但在嵌套調(diào)用中,這個值會被修改。為了保證安全返回,一般把返回地址存放在堆棧頂偏移地址為0的地方。
函數(shù)調(diào)用有時需要參數(shù)傳遞,通常,若參數(shù)少于5個,則通過寄存器傳遞,如表1所列。

如果在C/C 調(diào)用函數(shù)中作了正確的函數(shù)返回聲明,則被調(diào)用的匯編函數(shù)可使用寄存器j8、xr8和xr9返回有效值。j8用于返回整數(shù)或地址;xr9:8可提供雙字結(jié)果返回。若返回值大于2個字長,則必須為它們分配存儲空間,令j8為返回值,指向該空間的首地址即可。
?、谠贑/C 中聲明的全局變量及函數(shù),匯編中加“一”前綴才能使用;在匯編中的對象必須用”一”前綴命名,并用.g10bal聲明為全局變量,才可在C/C 中訪問到。具體格式如表2所列。

2 混合編程的調(diào)用和中斷
2.1 函數(shù)調(diào)用
C編譯器對函數(shù)調(diào)用有一系列嚴(yán)格的規(guī)則。除了特殊的運(yùn)行支持函數(shù)外.任何函數(shù)與c函數(shù)互調(diào)都必須遵循這些規(guī)則。函數(shù)調(diào)用的標(biāo)準(zhǔn)運(yùn)行模式為:①調(diào)用者將參數(shù)莊人堆棧。壓入時按照反序進(jìn)行,即最右邊的參數(shù)位于堆棧的頂部。②調(diào)用函數(shù)。③調(diào)用結(jié)束時,調(diào)用者將參數(shù)彈出堆棧并返回。整個過程離不開堆棧操作。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- EE-217:更新ADSP-TS101S TigerSHARC EZ-KIT Lite固件
- EE-169:估算ADSP-TS101S的功耗
- ADSP-TS101S IBIS數(shù)據(jù)文件BGA包
- EE-178:ADSP-TS101S TigerSHARC?片上SDRAM控制器
- ADSP-TS101S EZ-KIT Lite評估系統(tǒng)手冊(1.1版,2004年3月) 0次下載
- ADSP-TS101S EZ套件精簡版?SUP_ 0次下載
- 用于ADSP-TS101S TigerSHARC處理器的EZ套件精簡版產(chǎn)品亮點(diǎn) 0次下載
- ADSP-TS101S TigerSHARC版本0.2、0.4異常列表 0次下載
- EE-169:ADSP-TS101S的功耗估算
- EE-174:ADSP-TS101S虎-SHARC高級ProcessLuter加載內(nèi)核手術(shù)
- EE-217:更新ADSP-TS101S老虎SHARC-ZEZ-KIT有限公司
- EE-176:ADSP-TS101S老虎SHARC高級Processor硬件設(shè)計(jì)檢查表
- ADSP-TS101S EZ-KIT有限公司設(shè)計(jì)數(shù)據(jù)表(1.3版) 0次下載
- ADSP-TS101S IBIS數(shù)據(jù)文件BGA包
- ADSP-TS101S嵌入式系統(tǒng)的混合編程設(shè)計(jì)方案分析 1次下載
- 嵌入式可編程片上系統(tǒng)是什么 598次閱讀
- fpga是嵌入式嗎 2420次閱讀
- 什么是嵌入式系統(tǒng)?嵌入式系統(tǒng)的具體應(yīng)用 2563次閱讀
- 怎么從PC編程轉(zhuǎn)向嵌入式編程 851次閱讀
- 混合編程中的模塊命名與管理 992次閱讀
- 嵌入式系統(tǒng)的全面解析 3280次閱讀
- 如何實(shí)現(xiàn)嵌入式系統(tǒng)遠(yuǎn)程調(diào)試 5401次閱讀
- 基于SoPC的嵌入式系統(tǒng)設(shè)計(jì)方法闡述 1698次閱讀
- 基于嵌入式軟件的JNI技術(shù)應(yīng)用解析 1106次閱讀
- 嵌入式系統(tǒng)C語言編程實(shí)戰(zhàn)教程合集 9481次閱讀
- 嵌入式軟件開發(fā)編程規(guī)范介紹 4403次閱讀
- 嵌入式系統(tǒng)的特點(diǎn)大匯總 5896次閱讀
- 干貨!使用嵌入式處理器對可編程邏輯器件重編程 1682次閱讀
- 深入了解嵌入式編程 3685次閱讀
- 典型的嵌入式系統(tǒng)設(shè)計(jì) 2716次閱讀
下載排行
本周
- 1EMC電路設(shè)計(jì)工程師必備的EMC基礎(chǔ)
- 0.42 MB | 4次下載 | 2 積分
- 2AU3116 2×60W模擬輸入雙通道Class-D 音頻功率放大器數(shù)據(jù)手冊
- 1.19 MB | 1次下載 | 免費(fèi)
- 3低壓降肖特基整流管SR340L數(shù)據(jù)手冊
- 0.78 MB | 1次下載 | 免費(fèi)
- 4ZX8002E 觸摸調(diào)光LED集成IC數(shù)據(jù)手冊
- 2.27 MB | 次下載 | 免費(fèi)
- 5SOD-323塑料封裝ESD保護(hù)二極管SD05T系列規(guī)格書
- 1.07 MB | 次下載 | 免費(fèi)
- 6SOT-23塑料封裝ESD保護(hù)二極管SMxx Series系列規(guī)格書
- 0.93 MB | 次下載 | 免費(fèi)
- 7高效率整流二極管HER151 THRU HER158數(shù)據(jù)手冊
- 0.54 MB | 次下載 | 免費(fèi)
- 8低壓降肖特基整流管SL22 THRU SL210數(shù)據(jù)手冊
- 1.03 MB | 次下載 | 免費(fèi)
本月
- 1三相逆變主電路的原理圖和PCB資料合集免費(fèi)下載
- 27.35 MB | 111次下載 | 1 積分
- 2運(yùn)算放大器基本電路中文資料
- 1.30 MB | 16次下載 | 免費(fèi)
- 3蘋果iphone 11電路原理圖
- 4.98 MB | 11次下載 | 5 積分
- 4TL494工業(yè)用開關(guān)電源原理圖資料
- 0.22 MB | 10次下載 | 1 積分
- 5常用電子元器件介紹
- 3.21 MB | 8次下載 | 免費(fèi)
- 6QW2893應(yīng)急燈專用檢測芯片
- 590.40 KB | 4次下載 | 免費(fèi)
- 7相關(guān)協(xié)議信號總結(jié)
- 0.94 MB | 4次下載 | 免費(fèi)
- 8EMC電路設(shè)計(jì)工程師必備的EMC基礎(chǔ)
- 0.42 MB | 4次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935130次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191390次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183344次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81591次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73815次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65989次下載 | 10 積分
評論