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

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

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

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

2 混合編程的調用和中斷
2.1 函數調用
C編譯器對函數調用有一系列嚴格的規則。除了特殊的運行支持函數外.任何函數與c函數互調都必須遵循這些規則。函數調用的標準運行模式為:①調用者將參數莊人堆棧。壓入時按照反序進行,即最右邊的參數位于堆棧的頂部。②調用函數。③調用結束時,調用者將參數彈出堆棧并返回。整個過程離不開堆棧操作。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- EE-217:更新ADSP-TS101S TigerSHARC EZ-KIT Lite固件
- EE-169:估算ADSP-TS101S的功耗
- ADSP-TS101S IBIS數據文件BGA包
- EE-178:ADSP-TS101S TigerSHARC?片上SDRAM控制器
- ADSP-TS101S EZ-KIT Lite評估系統手冊(1.1版,2004年3月) 0次下載
- ADSP-TS101S EZ套件精簡版?SUP_ 0次下載
- 用于ADSP-TS101S TigerSHARC處理器的EZ套件精簡版產品亮點 0次下載
- ADSP-TS101S TigerSHARC版本0.2、0.4異常列表 0次下載
- EE-169:ADSP-TS101S的功耗估算
- EE-174:ADSP-TS101S虎-SHARC高級ProcessLuter加載內核手術
- EE-217:更新ADSP-TS101S老虎SHARC-ZEZ-KIT有限公司
- EE-176:ADSP-TS101S老虎SHARC高級Processor硬件設計檢查表
- ADSP-TS101S EZ-KIT有限公司設計數據表(1.3版) 0次下載
- ADSP-TS101S IBIS數據文件BGA包
- ADSP-TS101S嵌入式系統的混合編程設計方案分析 1次下載
- 嵌入式可編程片上系統是什么 1.2k次閱讀
- fpga是嵌入式嗎 4.8k次閱讀
- 什么是嵌入式系統?嵌入式系統的具體應用 4k次閱讀
- 怎么從PC編程轉向嵌入式編程 1.4k次閱讀
- 混合編程中的模塊命名與管理 1.7k次閱讀
- 嵌入式系統的全面解析 3.7k次閱讀
- 如何實現嵌入式系統遠程調試 6.7k次閱讀
- 基于SoPC的嵌入式系統設計方法闡述 2.3k次閱讀
- 嵌入式系統C語言編程實戰教程合集 1w次閱讀
- 嵌入式軟件開發編程規范介紹 5k次閱讀
- 嵌入式系統的特點大匯總 6.5k次閱讀
- 干貨!使用嵌入式處理器對可編程邏輯器件重編程 2.1k次閱讀
- 嵌入式系統有哪些部分組成_嵌入式系統的應用領域 3.5w次閱讀
- 深入了解嵌入式編程 4.2k次閱讀
- 典型的嵌入式系統設計 3.1k次閱讀
下載排行
本周
- 1冷柜-電氣控制系統講解
- 13.68 MB | 4次下載 | 10 積分
- 2安川A1000變頻器中文版說明書
- 20.16 MB | 3次下載 | 3 積分
- 3直流電路的組成和基本定律
- 1.67 MB | 2次下載 | 免費
- 4丹佛斯2800系列變頻器說明書
- 8.00 MB | 1次下載 | 5 積分
- 5PC8011同步開關型降壓3.5A單節鋰電池充電管理電路技術手冊
- 0.74 MB | 1次下載 | 免費
- 6ES7243E+ES8311音頻錄制與播放電路資料
- 0.06 MB | 1次下載 | 5 積分
- 7SDM02 激光測距模塊產品手冊
- 0.43 MB | 1次下載 | 免費
- 8SDFM 激光測距模塊模組手冊
- 0.54 MB | 1次下載 | 免費
本月
- 1CH341編程器軟件NeoProgrammer_2.2.0.10
- 20.47 MB | 170次下載 | 1 積分
- 22025智能家居傳感器市場分析及創新應用
- 3.11 MB | 43次下載 | 免費
- 3RV1126B系列開發板產品資料
- 4.19 MB | 18次下載 | 免費
- 4CH341編程軟件下載
- 2.50 MB | 16次下載 | 5 積分
- 5全志系列-米爾基于T153核心板開發板 四核異構、3路千兆網,賦能多元化工業場景
- 3.05 MB | 12次下載 | 免費
- 6【開源】60余套STM32單片機、嵌入式Linux、物聯網、人工智能項目案例及入門學習資源包
- 10.55 MB | 8次下載 | 免費
- 7冷柜-電氣控制系統講解
- 13.68 MB | 4次下載 | 10 積分
- 8特斯拉MODEL S車載充電機主電路回路原理圖
- 0.81 MB | 4次下載 | 3 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935137次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233094次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191448次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183356次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81604次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73824次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65991次下載 | 10 積分
電子發燒友App





創作
發文章
發帖
提問
發資料
發視頻
上傳資料賺積分
評論