第八章 軟件開發(fā)環(huán)境_第1頁(yè)
第八章 軟件開發(fā)環(huán)境_第2頁(yè)
第八章 軟件開發(fā)環(huán)境_第3頁(yè)
第八章 軟件開發(fā)環(huán)境_第4頁(yè)
第八章 軟件開發(fā)環(huán)境_第5頁(yè)
已閱讀5頁(yè),還剩48頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、1 2 CCS是針對(duì)是針對(duì)TMS320系列系列DSP的集成開發(fā)環(huán)境,在的集成開發(fā)環(huán)境,在Windows操操 作系統(tǒng)下,采用圖形接口界面,提供有環(huán)境配置、源文件編輯、作系統(tǒng)下,采用圖形接口界面,提供有環(huán)境配置、源文件編輯、 程序調(diào)試、跟蹤和分析等工具。程序調(diào)試、跟蹤和分析等工具。 CCS有兩種工作模式有兩種工作模式: 1. 軟件仿真器模式:軟件仿真器模式:可以脫離可以脫離DSP芯片,在芯片,在PC機(jī)上模擬機(jī)上模擬DSP 的指令集和工作機(jī)制,主要用于前期算法實(shí)現(xiàn)和調(diào)試。的指令集和工作機(jī)制,主要用于前期算法實(shí)現(xiàn)和調(diào)試。 2. 硬件在線編程模式:硬件在線編程模式:可以實(shí)時(shí)運(yùn)行在可以實(shí)時(shí)運(yùn)行在DSP芯片

2、上,與硬件芯片上,與硬件 開發(fā)板相結(jié)合,在線編程和調(diào)試應(yīng)用程序。開發(fā)板相結(jié)合,在線編程和調(diào)試應(yīng)用程序。 一、一、開發(fā)流程和開發(fā)工具開發(fā)流程和開發(fā)工具 作用:作用:縮短開發(fā)周期,降低開發(fā)難度縮短開發(fā)周期,降低開發(fā)難度 代碼生成工具代碼生成工具 將將C C或匯編語(yǔ)言編寫的或匯編語(yǔ)言編寫的DSPDSP程序程序 編譯并鏈接成為可執(zhí)編譯并鏈接成為可執(zhí) 行的行的DSPDSP 程序程序 。 代碼調(diào)試工具代碼調(diào)試工具 對(duì)對(duì)DSP程序及系統(tǒng)進(jìn)行調(diào)試,程序及系統(tǒng)進(jìn)行調(diào)試, 使編寫的程序達(dá)到設(shè)計(jì)目標(biāo)。使編寫的程序達(dá)到設(shè)計(jì)目標(biāo)。 軟軟 件件 開開 發(fā)發(fā) 流流 程程 將用高級(jí)語(yǔ)言、匯編語(yǔ)言或用兩種語(yǔ)言混合編寫的將用高級(jí)

3、語(yǔ)言、匯編語(yǔ)言或用兩種語(yǔ)言混合編寫的DSPDSP程序程序 轉(zhuǎn)換為可執(zhí)行的目標(biāo)代碼程序轉(zhuǎn)換為可執(zhí)行的目標(biāo)代碼程序 包括基本的包括基本的C編譯器、匯編器和編譯器、匯編器和 鏈接器外,還有文檔管理器、運(yùn)行支持庫(kù)、交叉引用列表器、代碼格式轉(zhuǎn)換器鏈接器外,還有文檔管理器、運(yùn)行支持庫(kù)、交叉引用列表器、代碼格式轉(zhuǎn)換器 等輔助工具程序。等輔助工具程序。 C編譯器編譯器 是一種將是一種將C語(yǔ)言程序自動(dòng)編譯為語(yǔ)言程序自動(dòng)編譯為DSP匯編程序的代碼生成工匯編程序的代碼生成工 具,這些標(biāo)準(zhǔn)具,這些標(biāo)準(zhǔn)C優(yōu)化編譯器將標(biāo)準(zhǔn)優(yōu)化編譯器將標(biāo)準(zhǔn)C語(yǔ)言原文件編譯成為相應(yīng)片語(yǔ)言原文件編譯成為相應(yīng)片 種的匯編語(yǔ)言源代碼文件,通過(guò)匯編

4、和鏈接,產(chǎn)生可執(zhí)行的目種的匯編語(yǔ)言源代碼文件,通過(guò)匯編和鏈接,產(chǎn)生可執(zhí)行的目 標(biāo)文件。標(biāo)文件。 二、二、代碼生成工具代碼生成工具 , 完全符合完全符合ANSI C標(biāo)準(zhǔn);標(biāo)準(zhǔn); 具有完整的運(yùn)行支持庫(kù),可以對(duì)運(yùn)行支持函數(shù)庫(kù)和用戶定義函數(shù)庫(kù)作擴(kuò)展;具有完整的運(yùn)行支持庫(kù),可以對(duì)運(yùn)行支持函數(shù)庫(kù)和用戶定義函數(shù)庫(kù)作擴(kuò)展; 能夠進(jìn)行優(yōu)化編譯,產(chǎn)生高效匯編代碼;能夠進(jìn)行優(yōu)化編譯,產(chǎn)生高效匯編代碼; 用戶可進(jìn)行庫(kù)或檔案的管理,可以對(duì)庫(kù)進(jìn)行文件的添加、刪除、替換等,可以用戶可進(jìn)行庫(kù)或檔案的管理,可以對(duì)庫(kù)進(jìn)行文件的添加、刪除、替換等,可以 將目標(biāo)文件庫(kù)作為鏈接器的輸入;將目標(biāo)文件庫(kù)作為鏈接器的輸入; 可控制存儲(chǔ)器的分

5、配、存儲(chǔ)器的配置和部分鏈接;可控制存儲(chǔ)器的分配、存儲(chǔ)器的配置和部分鏈接; C編譯器提供的外殼程序,只需用一個(gè)命令,就可以編譯、匯編和鏈接,直接編譯器提供的外殼程序,只需用一個(gè)命令,就可以編譯、匯編和鏈接,直接 從從C源文件產(chǎn)生可執(zhí)行的公用目標(biāo)文件格式(源文件產(chǎn)生可執(zhí)行的公用目標(biāo)文件格式(COFF)文件;)文件; 具有靈活的匯編語(yǔ)言接口;具有靈活的匯編語(yǔ)言接口; 提供了多種列表文件,如源代碼文件和匯編列表文件,預(yù)處理輸出文件等;提供了多種列表文件,如源代碼文件和匯編列表文件,預(yù)處理輸出文件等; 可以利用建庫(kù)應(yīng)用程序,通過(guò)不同的選擇來(lái)建立自己的運(yùn)行支持庫(kù)等。可以利用建庫(kù)應(yīng)用程序,通過(guò)不同的選擇來(lái)建

6、立自己的運(yùn)行支持庫(kù)等。 C編譯器特點(diǎn)編譯器特點(diǎn) 二、二、代碼生成工具代碼生成工具 匯編器匯編器 將匯編語(yǔ)言的源程序文件匯編成機(jī)器語(yǔ)言的目標(biāo)文件,目標(biāo)文將匯編語(yǔ)言的源程序文件匯編成機(jī)器語(yǔ)言的目標(biāo)文件,目標(biāo)文 件的格式為公用目標(biāo)文件格式,該匯編語(yǔ)言文件可以是件的格式為公用目標(biāo)文件格式,該匯編語(yǔ)言文件可以是C編譯器產(chǎn)生的匯編文編譯器產(chǎn)生的匯編文 件或匯編優(yōu)化器輸出的匯編文件,或是由文檔管理器管理的宏庫(kù)內(nèi)的宏。件或匯編優(yōu)化器輸出的匯編文件,或是由文檔管理器管理的宏庫(kù)內(nèi)的宏。 匯編器的功能:匯編器的功能: u 處理匯編文件(處理匯編文件(.ASM)中的源語(yǔ)句,產(chǎn)生可重新定位的目標(biāo)文件()中的源語(yǔ)句,產(chǎn)生

7、可重新定位的目標(biāo)文件(.obj);); u 根據(jù)要求產(chǎn)生源程序列表文件(根據(jù)要求產(chǎn)生源程序列表文件(.lst),并向用戶提供對(duì)此列表的控制;),并向用戶提供對(duì)此列表的控制; u 根據(jù)要求將交叉引用列表加到源程序列表中;根據(jù)要求將交叉引用列表加到源程序列表中; u 將代碼分為段,并為每個(gè)目標(biāo)代碼段設(shè)置段程序計(jì)數(shù)器(將代碼分為段,并為每個(gè)目標(biāo)代碼段設(shè)置段程序計(jì)數(shù)器(SPC);); u 定義和引用全局符號(hào);定義和引用全局符號(hào); u 匯編條件塊;匯編條件塊; u 支持宏調(diào)用,允許用戶在程序中或在庫(kù)內(nèi)定義宏。支持宏調(diào)用,允許用戶在程序中或在庫(kù)內(nèi)定義宏。 二、二、代碼生成工具代碼生成工具 鏈接器鏈接器將目

8、標(biāo)文件組合成一個(gè)可執(zhí)行的將目標(biāo)文件組合成一個(gè)可執(zhí)行的COFF目標(biāo)模塊。鏈接器可以接目標(biāo)模塊。鏈接器可以接 受的輸入文件包括匯編器產(chǎn)生的受的輸入文件包括匯編器產(chǎn)生的COFF目標(biāo)文件、命令文件、庫(kù)文件以及已部目標(biāo)文件、命令文件、庫(kù)文件以及已部 分鏈接好了的文件,它所產(chǎn)生的可執(zhí)行分鏈接好了的文件,它所產(chǎn)生的可執(zhí)行COFF目標(biāo)模塊可以裝入各種開發(fā)工具目標(biāo)模塊可以裝入各種開發(fā)工具 或由或由TMS320器件來(lái)執(zhí)行。在生成可執(zhí)行模塊的過(guò)程中,鏈接器進(jìn)行重定位操器件來(lái)執(zhí)行。在生成可執(zhí)行模塊的過(guò)程中,鏈接器進(jìn)行重定位操 作,并處理外部引用符號(hào)。作,并處理外部引用符號(hào)。 主要功能:主要功能: 定義一個(gè)與目標(biāo)系統(tǒng)存

9、儲(chǔ)器一致的存儲(chǔ)器模塊;定義一個(gè)與目標(biāo)系統(tǒng)存儲(chǔ)器一致的存儲(chǔ)器模塊; 組合目標(biāo)文件塊;組合目標(biāo)文件塊; 定位程序段到目標(biāo)系統(tǒng)存儲(chǔ)器的特定區(qū)域,賦予它們最后的地址;定位程序段到目標(biāo)系統(tǒng)存儲(chǔ)器的特定區(qū)域,賦予它們最后的地址; 定義和重新定義全局符號(hào)以賦予它們特定的值;定義和重新定義全局符號(hào)以賦予它們特定的值; 處理輸入文件之間的未定義外部符號(hào)。處理輸入文件之間的未定義外部符號(hào)。 二、二、代碼生成工具代碼生成工具 文檔管理器文檔管理器 將多個(gè)獨(dú)立文件組合成一個(gè)文檔將多個(gè)獨(dú)立文件組合成一個(gè)文檔Archive或庫(kù)或庫(kù)library。 文檔管理器可以方便的管理一組文件文檔管理器可以方便的管理一組文件 利用文檔

10、管理器,可以方便地刪除、替換、提取或增添庫(kù)成員。利用文檔管理器,可以方便地刪除、替換、提取或增添庫(kù)成員。 利用文檔管理器可以生成不同類型的庫(kù)。也可使用文檔管理器來(lái)建立宏庫(kù)。利用文檔管理器可以生成不同類型的庫(kù)。也可使用文檔管理器來(lái)建立宏庫(kù)。 文檔管理器文檔管理器最有用的應(yīng)用之一最有用的應(yīng)用之一是建立目標(biāo)模塊庫(kù)。是建立目標(biāo)模塊庫(kù)。例如:例如:用戶可以編寫幾用戶可以編寫幾 種算法子程序,匯編它們,并使用文檔管理器把目標(biāo)文件收集到單個(gè)邏輯組中。種算法子程序,匯編它們,并使用文檔管理器把目標(biāo)文件收集到單個(gè)邏輯組中。 然后用戶可以規(guī)定目標(biāo)庫(kù)作為鏈接器的輸入。鏈接器將搜索庫(kù)并包含解決外部然后用戶可以規(guī)定目標(biāo)

11、庫(kù)作為鏈接器的輸入。鏈接器將搜索庫(kù)并包含解決外部 引用的成員。引用的成員。 二、二、代碼生成工具代碼生成工具 交叉引用列表器交叉引用列表器 接受已連接的目標(biāo)文件作為輸入,產(chǎn)生一個(gè)交接受已連接的目標(biāo)文件作為輸入,產(chǎn)生一個(gè)交 叉引用列表,在列表文件中列出符號(hào)、符號(hào)的定義以及它們?cè)谝呀?jīng)鏈接的源叉引用列表,在列表文件中列出符號(hào)、符號(hào)的定義以及它們?cè)谝呀?jīng)鏈接的源 文件中的引用。文件中的引用。 代碼格式轉(zhuǎn)換器器代碼格式轉(zhuǎn)換器器 將鏈接器生成的將鏈接器生成的.out文件(文件(COFF文件格式)文件格式) 轉(zhuǎn)換為若干標(biāo)準(zhǔn)的轉(zhuǎn)換為若干標(biāo)準(zhǔn)的ASCII十六進(jìn)制形式之一。如十六進(jìn)制形式之一。如Intel的的Hex

12、文件格式、文件格式、TI- Tagged文件格式等。文件格式等。 因?yàn)榇蠖鄶?shù)的因?yàn)榇蠖鄶?shù)的EPROM編程器不支持編程器不支持TI的的COFF格式目標(biāo)文件,因此格式目標(biāo)文件,因此TI提供提供 該代碼格式轉(zhuǎn)換器,以便燒制該代碼格式轉(zhuǎn)換器,以便燒制EPROM。 二、二、代碼生成工具代碼生成工具 絕對(duì)列表器器絕對(duì)列表器器 接收已鏈接的目標(biāo)文件作為輸入,創(chuàng)建接收已鏈接的目標(biāo)文件作為輸入,創(chuàng)建.abs文件作為輸文件作為輸 出的調(diào)試工具。出的調(diào)試工具。 這些這些.abs文件可以被匯編以產(chǎn)生顯示目標(biāo)代碼絕對(duì)地址的列表文件可以被匯編以產(chǎn)生顯示目標(biāo)代碼絕對(duì)地址的列表 如果用人工的方法,這將需要冗長(zhǎng)的操作過(guò)程;絕對(duì)

13、列表器實(shí)用程序可以自動(dòng)完成如果用人工的方法,這將需要冗長(zhǎng)的操作過(guò)程;絕對(duì)列表器實(shí)用程序可以自動(dòng)完成 這些操作。這些操作。 產(chǎn)生絕對(duì)列表所需要的步驟:產(chǎn)生絕對(duì)列表所需要的步驟: 匯編源文件;匯編源文件; 鏈接所產(chǎn)生的目標(biāo)文件;鏈接所產(chǎn)生的目標(biāo)文件; 調(diào)用絕對(duì)列表器,使用已鏈接的目標(biāo)文件作為輸入,它將創(chuàng)建調(diào)用絕對(duì)列表器,使用已鏈接的目標(biāo)文件作為輸入,它將創(chuàng)建.abs的文件;的文件; 匯編匯編.abs文件,以產(chǎn)生包含絕對(duì)地址的列表文件。文件,以產(chǎn)生包含絕對(duì)地址的列表文件。 二、二、代碼生成工具代碼生成工具 應(yīng)用舉例應(yīng)用舉例 DSP系統(tǒng)產(chǎn)生可執(zhí)行文件的過(guò)程系統(tǒng)產(chǎn)生可執(zhí)行文件的過(guò)程 二、二、代碼生成工具

14、代碼生成工具 用戶可以使用任何一種文本編輯器,用戶可以使用任何一種文本編輯器,在進(jìn)行匯編語(yǔ)言編程時(shí),請(qǐng)注意各種符號(hào)在進(jìn)行匯編語(yǔ)言編程時(shí),請(qǐng)注意各種符號(hào) 的大小寫。源程序按編碼塊、數(shù)據(jù)塊的格式編寫,通常分為三段,即:的大小寫。源程序按編碼塊、數(shù)據(jù)塊的格式編寫,通常分為三段,即: .text 通常包含可執(zhí)行代碼通常包含可執(zhí)行代碼 .data 通常包含已初始化的數(shù)據(jù)通常包含已初始化的數(shù)據(jù) .bss 通常為未初始化的數(shù)據(jù)保留空間通常為未初始化的數(shù)據(jù)保留空間 此外,源文件還可包括以下各段(通稱命名段)此外,源文件還可包括以下各段(通稱命名段) 符號(hào)符號(hào) .usect “塊名塊名”,字?jǐn)?shù):字?jǐn)?shù):類似類似.

15、bss 產(chǎn)生在非初始化段,在產(chǎn)生在非初始化段,在RAM中為變量保留空間。中為變量保留空間。 符號(hào)符號(hào) .sect “塊名塊名”:類似缺省的類似缺省的.text、.data段包括代碼和數(shù)據(jù)段,產(chǎn)生在初始化段包括代碼和數(shù)據(jù)段,產(chǎn)生在初始化 段,其建立的模塊是可重定位的。段,其建立的模塊是可重定位的。 符號(hào)符號(hào) .asect “塊名塊名”,Address:也是建立包含代碼或數(shù)據(jù)的塊,產(chǎn)生在初始化段,它也是建立包含代碼或數(shù)據(jù)的塊,產(chǎn)生在初始化段,它 建立的是具有絕對(duì)地址的塊建立的是具有絕對(duì)地址的塊 編輯編輯 二、二、代碼生成工具代碼生成工具 應(yīng)用舉例應(yīng)用舉例 源程序通常包括以下幾個(gè)部分:源程序通常包括

16、以下幾個(gè)部分: .title “File Name” .copy “init.h” .copy “vector.h” .text .end 源程序編寫源程序編寫 二、二、代碼生成工具代碼生成工具 應(yīng)用舉例應(yīng)用舉例 可用可用CCS環(huán)境下的菜單,也可在環(huán)境下的菜單,也可在CCS環(huán)境下輸入命令。環(huán)境下輸入命令。 DSPA匯編器的使用匯編器的使用 一般格式一般格式: DSPA 源程序文件源程序文件 -V版本號(hào)版本號(hào) -L -M -S 這里這里DSPA為匯編器的命令,為匯編器的命令, 為匯編器選項(xiàng),其含意為:為匯編器選項(xiàng),其含意為: -V 說(shuō)明匯編不同的處理器:說(shuō)明匯編不同的處理器:V2XX/V50;

17、-L 可產(chǎn)生列表文件;可產(chǎn)生列表文件; -M 可產(chǎn)生映射文件;可產(chǎn)生映射文件; -S 帶符號(hào)調(diào)試。帶符號(hào)調(diào)試。 常用格式舉例常用格式舉例 DSPA DEMO.ASM -V2XX ; ASM可缺省,只產(chǎn)生可缺省,只產(chǎn)生 OBJ文件。注意文件。注意-V2XX必須加。必須加。 DSPA DEMO L V2XX ; 產(chǎn)生產(chǎn)生OBJ文件、文件、LST文件。文件。 DSPA I PATHNAME DEMO -V2XX ; 源文件加路徑。源文件加路徑。 DSPA DEMO V2XX L S; 產(chǎn)生產(chǎn)生OBJ文件、文件、LST文件,可帶符號(hào)調(diào)試。文件,可帶符號(hào)調(diào)試。 應(yīng)注意的是應(yīng)注意的是DSPA生成的生成的O

18、BJ 文件是通用目標(biāo)文件格式。文件是通用目標(biāo)文件格式。 匯編和鏈接匯編和鏈接 二、二、代碼生成工具代碼生成工具 應(yīng)用舉例應(yīng)用舉例 DSPLNK鏈接器的使用鏈接器的使用一是把一個(gè)或多個(gè)一是把一個(gè)或多個(gè)COFF目標(biāo)文件作為輸入目標(biāo)文件作為輸入 文件連接起來(lái),產(chǎn)生可執(zhí)行的輸出文件,即文件連接起來(lái),產(chǎn)生可執(zhí)行的輸出文件,即*.OUT文件;二是鏈接器定位輸出文件;二是鏈接器定位輸出 文件的存儲(chǔ)器地址。文件的存儲(chǔ)器地址。 匯編和鏈接匯編和鏈接 二、二、代碼生成工具代碼生成工具 應(yīng)用舉例應(yīng)用舉例 一般格式:一般格式: DSPLNK 目標(biāo)文件目標(biāo)文件 命令文件命令文件 O 輸出文件輸出文件 -M 映射文件映射

19、文件 這里這里DSPLNK為鏈接器命令,為鏈接器命令,為匯編器選項(xiàng)。為匯編器選項(xiàng)。 常用格式舉例常用格式舉例 DSPLNK DEMO DEMO.CMD O DEMO.OUT M DEMO.MAP 其中其中 輸入文件為輸入文件為DEMO.OBJ,命令文件為命令文件為DEMO.CMD,輸出文件為輸出文件為DEMO.OUT, 映射文件為映射文件為 DEMO.MAP。利用代碼調(diào)試工具即可調(diào)試。利用代碼調(diào)試工具即可調(diào)試DEMO.OUT文件。文件。 匯編和鏈接匯編和鏈接 二、二、代碼生成工具代碼生成工具 應(yīng)用舉例應(yīng)用舉例 作用:作用:將代碼產(chǎn)生工具生成的可執(zhí)行將代碼產(chǎn)生工具生成的可執(zhí)行.out文件,通過(guò)調(diào)

20、試器接口把它加載到文件,通過(guò)調(diào)試器接口把它加載到TI 的系統(tǒng)集成與代碼調(diào)試工具或用戶系統(tǒng)上進(jìn)行調(diào)試。的系統(tǒng)集成與代碼調(diào)試工具或用戶系統(tǒng)上進(jìn)行調(diào)試。 集成與調(diào)試工具包括:集成與調(diào)試工具包括: C/匯編語(yǔ)言源碼調(diào)試器匯編語(yǔ)言源碼調(diào)試器 初學(xué)者工具初學(xué)者工具DSK 軟件模擬器軟件模擬器 評(píng)價(jià)模塊評(píng)價(jià)模塊EVM 軟件開發(fā)系統(tǒng)軟件開發(fā)系統(tǒng)SWDS 硬件仿真器硬件仿真器XDS 三、三、代碼調(diào)試工具代碼調(diào)試工具 C/匯編源碼調(diào)試器匯編源碼調(diào)試器 C/匯編源碼調(diào)試器是運(yùn)行在匯編源碼調(diào)試器是運(yùn)行在PC上的一種軟件接口,它與其他調(diào)試工具(如軟上的一種軟件接口,它與其他調(diào)試工具(如軟 件模擬器、評(píng)價(jià)模塊、軟件開發(fā)系

21、統(tǒng)、仿真器)配合使用。用戶程序既可用件模擬器、評(píng)價(jià)模塊、軟件開發(fā)系統(tǒng)、仿真器)配合使用。用戶程序既可用C語(yǔ)語(yǔ) 言調(diào)試,也可用匯編語(yǔ)言調(diào)試,還可進(jìn)行言調(diào)試,也可用匯編語(yǔ)言調(diào)試,還可進(jìn)行C和匯編的混合調(diào)試。調(diào)試器提供了非和匯編的混合調(diào)試。調(diào)試器提供了非 常友好的人機(jī)界面,它采用面向窗口、鼠標(biāo)支持、菜單式接口和命令輸入等形常友好的人機(jī)界面,它采用面向窗口、鼠標(biāo)支持、菜單式接口和命令輸入等形 式,使用十分方便。式,使用十分方便。 初學(xué)者工具初學(xué)者工具DSK 初學(xué)者工具是初學(xué)者工具是TI公司為公司為TMS320DSP的初學(xué)者設(shè)計(jì)和生產(chǎn)的用以編程練習(xí)的的初學(xué)者設(shè)計(jì)和生產(chǎn)的用以編程練習(xí)的 一種廉價(jià)的實(shí)時(shí)軟件

22、調(diào)試工具,用戶可以使用一種廉價(jià)的實(shí)時(shí)軟件調(diào)試工具,用戶可以使用DSK來(lái)調(diào)試用戶自己的系統(tǒng)。來(lái)調(diào)試用戶自己的系統(tǒng)。 DSK工具除了具有一片工具除了具有一片DSP芯片外,還具一些軟硬件資源:芯片外,還具一些軟硬件資源:打印機(jī)并口或打印機(jī)并口或RS- 232串口,電源插口,標(biāo)準(zhǔn)的串口,電源插口,標(biāo)準(zhǔn)的RCA插口插口 ,提供和話筒、揚(yáng)聲器或其它模擬器件的,提供和話筒、揚(yáng)聲器或其它模擬器件的 連接,提供片內(nèi)連接,提供片內(nèi)RAM。匯編器。調(diào)試器軟件接口。匯編器。調(diào)試器軟件接口。 三、三、代碼調(diào)試工具代碼調(diào)試工具 軟件模擬器軟件模擬器 是一種模擬是一種模擬DSP芯片各種功能并在非實(shí)時(shí)條件下進(jìn)行軟件調(diào)試的工具

23、,不需要目標(biāo)芯片各種功能并在非實(shí)時(shí)條件下進(jìn)行軟件調(diào)試的工具,不需要目標(biāo) 硬件支持,只需在計(jì)算機(jī)上運(yùn)行,是一種廉價(jià)方便的調(diào)試工具,但它突出的缺點(diǎn)是運(yùn)硬件支持,只需在計(jì)算機(jī)上運(yùn)行,是一種廉價(jià)方便的調(diào)試工具,但它突出的缺點(diǎn)是運(yùn) 行速度慢,無(wú)法保證實(shí)時(shí)性。因此,軟件模擬器適合于初學(xué)者使用或?qū)λ惴ㄟM(jìn)行預(yù)調(diào)行速度慢,無(wú)法保證實(shí)時(shí)性。因此,軟件模擬器適合于初學(xué)者使用或?qū)λ惴ㄟM(jìn)行預(yù)調(diào) 試,匯編源程序經(jīng)過(guò)匯編鏈接之后,就可將其調(diào)入軟件模擬器進(jìn)行調(diào)試。試,匯編源程序經(jīng)過(guò)匯編鏈接之后,就可將其調(diào)入軟件模擬器進(jìn)行調(diào)試。調(diào)試中所需調(diào)試中所需 的的I/O值可從文件中取出,輸出到值可從文件中取出,輸出到I/O口的值也可存儲(chǔ)

24、在文件中口的值也可存儲(chǔ)在文件中。同時(shí)新版本的模擬器都。同時(shí)新版本的模擬器都 采用采用C和匯編源碼調(diào)試接口,采用和匯編源碼調(diào)試接口,采用C語(yǔ)言或匯編語(yǔ)言或語(yǔ)言或匯編語(yǔ)言或C和匯編語(yǔ)言的混合調(diào)試和匯編語(yǔ)言的混合調(diào)試 。 評(píng)價(jià)模塊評(píng)價(jià)模塊EVM 是一種低成本的用于器件評(píng)估、標(biāo)準(zhǔn)程序檢查以及有限的系統(tǒng)調(diào)試的開發(fā)板。它是一種低成本的用于器件評(píng)估、標(biāo)準(zhǔn)程序檢查以及有限的系統(tǒng)調(diào)試的開發(fā)板。它 配置了目標(biāo)處理器,一個(gè)小容量的存儲(chǔ)器和其它有限的硬件資源,它可用來(lái)對(duì)配置了目標(biāo)處理器,一個(gè)小容量的存儲(chǔ)器和其它有限的硬件資源,它可用來(lái)對(duì)DSP芯片芯片 性能進(jìn)行評(píng)價(jià),也可用來(lái)組成一定規(guī)模的用戶性能進(jìn)行評(píng)價(jià),也可用來(lái)組成

25、一定規(guī)模的用戶DSP系統(tǒng)。系統(tǒng)。 三、三、代碼調(diào)試工具代碼調(diào)試工具 軟件開發(fā)系統(tǒng)軟件開發(fā)系統(tǒng)SWDS 軟件開發(fā)系統(tǒng)是一塊可用于進(jìn)行性能評(píng)估和實(shí)時(shí)軟件開發(fā)的插入到到軟件開發(fā)系統(tǒng)是一塊可用于進(jìn)行性能評(píng)估和實(shí)時(shí)軟件開發(fā)的插入到到PC機(jī)中的低機(jī)中的低 成本成本DSP板,用戶程序可以在板,用戶程序可以在DSP板上進(jìn)行實(shí)時(shí)的軟件調(diào)試,程序在板上進(jìn)行實(shí)時(shí)的軟件調(diào)試,程序在DSP芯片上實(shí)時(shí)芯片上實(shí)時(shí) 運(yùn)行。它與軟件模擬器的區(qū)別在于它可對(duì)軟件進(jìn)行實(shí)時(shí)調(diào)試,而它與硬件仿真器的區(qū)運(yùn)行。它與軟件模擬器的區(qū)別在于它可對(duì)軟件進(jìn)行實(shí)時(shí)調(diào)試,而它與硬件仿真器的區(qū) 別在于軟件開發(fā)系統(tǒng)不能提供實(shí)時(shí)硬件調(diào)試功能,因此涉及目標(biāo)別在于

26、軟件開發(fā)系統(tǒng)不能提供實(shí)時(shí)硬件調(diào)試功能,因此涉及目標(biāo)I/O操作一般用文件操作一般用文件 I/O來(lái)代替。來(lái)代替。 三、三、代碼調(diào)試工具代碼調(diào)試工具 22 1. 國(guó)內(nèi)主要有北京瑞泰創(chuàng)新科技有限責(zé)任公司(國(guó)內(nèi)主要有北京瑞泰創(chuàng)新科技有限責(zé)任公司(Realtime)、)、 合眾達(dá)電子技術(shù)有限責(zé)任公司(合眾達(dá)電子技術(shù)有限責(zé)任公司(SEED)、北京聞亭科技發(fā)展)、北京聞亭科技發(fā)展 有限責(zé)任公司(有限責(zé)任公司(Wintech)三大)三大DSP設(shè)備與產(chǎn)品供應(yīng)商,可提設(shè)備與產(chǎn)品供應(yīng)商,可提 供供DSP 軟硬件產(chǎn)品、技術(shù)支持、完整解決方案、元器件供應(yīng)軟硬件產(chǎn)品、技術(shù)支持、完整解決方案、元器件供應(yīng) 一條龍服務(wù)。這三家提

27、供的一條龍服務(wù)。這三家提供的DSP仿真器價(jià)格都比較昂貴。仿真器價(jià)格都比較昂貴。 2. 現(xiàn)在現(xiàn)在TI DSP主要有三大系列仿真器,分別為主要有三大系列仿真器,分別為560、510、100, 其中前綴,如其中前綴,如XDS、TDS等只是標(biāo)注不同的生產(chǎn)廠家。等只是標(biāo)注不同的生產(chǎn)廠家。 3. 560、510、100三大系列仿真器比較。三大系列仿真器比較。 硬件開發(fā)工具硬件開發(fā)工具 23 幾個(gè)概念幾個(gè)概念 1 實(shí)時(shí)調(diào)試工具和傳統(tǒng)仿真器的區(qū)別實(shí)時(shí)調(diào)試工具和傳統(tǒng)仿真器的區(qū)別 u DSP 側(cè)重于數(shù)據(jù)流處理,而側(cè)重于數(shù)據(jù)流處理,而MCU側(cè)重于事件處理。側(cè)重于事件處理。 u 數(shù)據(jù)流需要實(shí)時(shí)處理,所以數(shù)據(jù)流需要實(shí)時(shí)

28、處理,所以DSP 子系統(tǒng)通常是實(shí)時(shí)系統(tǒng)。子系統(tǒng)通常是實(shí)時(shí)系統(tǒng)。 u 實(shí)時(shí)系統(tǒng)需要實(shí)時(shí)調(diào)試,但一般的實(shí)時(shí)系統(tǒng)需要實(shí)時(shí)調(diào)試,但一般的DSP仿真器是不支持實(shí)時(shí)調(diào)試的。仿真器是不支持實(shí)時(shí)調(diào)試的。 24 幾個(gè)概念幾個(gè)概念 傳統(tǒng)傳統(tǒng)Debuger與實(shí)時(shí)調(diào)試的區(qū)別與實(shí)時(shí)調(diào)試的區(qū)別 一般來(lái)說(shuō)調(diào)試是通過(guò)調(diào)試工具完成的。一般來(lái)說(shuō)調(diào)試是通過(guò)調(diào)試工具完成的。Debugger 調(diào)試工具的主要任調(diào)試工具的主要任 務(wù)是從目標(biāo)務(wù)是從目標(biāo)CPU 獲取信息并控制程序在目標(biāo)獲取信息并控制程序在目標(biāo)CPU 上的運(yùn)行(例如單上的運(yùn)行(例如單 步、設(shè)置斷點(diǎn)、運(yùn)行)。步、設(shè)置斷點(diǎn)、運(yùn)行)。 傳統(tǒng)傳統(tǒng)Debugger在執(zhí)行上述工作時(shí)需要把在

29、執(zhí)行上述工作時(shí)需要把在在目標(biāo)目標(biāo)CPU 上運(yùn)行的程序停上運(yùn)行的程序停 下來(lái)。下來(lái)。 實(shí)時(shí)系統(tǒng)需要實(shí)時(shí)系統(tǒng)需要實(shí)時(shí)調(diào)試實(shí)時(shí)調(diào)試工具,實(shí)時(shí)調(diào)試工具是在不停止目標(biāo)工具,實(shí)時(shí)調(diào)試工具是在不停止目標(biāo)CPU 工工 作的情況下,從目標(biāo)作的情況下,從目標(biāo)CPU 獲取信息并控制程序在目標(biāo)獲取信息并控制程序在目標(biāo)CPU 上的運(yùn)行。上的運(yùn)行。 想要實(shí)現(xiàn)實(shí)時(shí)調(diào)試,需要在調(diào)試工具和目標(biāo)想要實(shí)現(xiàn)實(shí)時(shí)調(diào)試,需要在調(diào)試工具和目標(biāo)CPU 之間建立一條實(shí)時(shí)之間建立一條實(shí)時(shí) 信息通道。實(shí)時(shí)通道包括兩個(gè)方面:硬件通道和軟件通道。我們稱實(shí)信息通道。實(shí)時(shí)通道包括兩個(gè)方面:硬件通道和軟件通道。我們稱實(shí) 時(shí)硬件通時(shí)硬件通 道為實(shí)時(shí)仿真器,實(shí)

30、時(shí)軟件通道為實(shí)時(shí)調(diào)試工具。道為實(shí)時(shí)仿真器,實(shí)時(shí)軟件通道為實(shí)時(shí)調(diào)試工具。 25 2. 實(shí)時(shí)調(diào)試實(shí)時(shí)調(diào)試-Realtime Emulator 要在調(diào)試工具和目標(biāo)要在調(diào)試工具和目標(biāo)CPU 之間實(shí)現(xiàn)硬件實(shí)時(shí)通信通道,需要在之間實(shí)現(xiàn)硬件實(shí)時(shí)通信通道,需要在PC 端和目端和目 標(biāo)標(biāo)DSP 端定義硬件接口。端定義硬件接口。TI 的的DSP 用用JTAG 作為硬件調(diào)試接口,我們通常作為硬件調(diào)試接口,我們通常 所用的所用的PC 端的硬件接口有端的硬件接口有PCI、USB、EPP (Enhanced Parallel Port, 增強(qiáng)并行口)。實(shí)時(shí)調(diào)試工具的代表是增強(qiáng)并行口)。實(shí)時(shí)調(diào)試工具的代表是TI 的的XDS

31、560 和聞亭公司的和聞亭公司的XDS560。 TI 的的XDS510和聞亭公司的和聞亭公司的XDS510 是是準(zhǔn)實(shí)時(shí)準(zhǔn)實(shí)時(shí)仿真器。仿真器。 3. 實(shí)時(shí)數(shù)據(jù)交換實(shí)時(shí)數(shù)據(jù)交換RTDX 為在調(diào)試工具和目標(biāo)為在調(diào)試工具和目標(biāo)CPU 之間實(shí)現(xiàn)軟件實(shí)時(shí)數(shù)據(jù)交換通道,之間實(shí)現(xiàn)軟件實(shí)時(shí)數(shù)據(jù)交換通道,TI 在在CCS 中中 定義了定義了RTDX 技術(shù)。當(dāng)使用技術(shù)。當(dāng)使用RTDX 功能時(shí),需要停止目標(biāo)功能時(shí),需要停止目標(biāo)DSP 的運(yùn)行,然的運(yùn)行,然 后在調(diào)試工具和后在調(diào)試工具和DSP 之間建立數(shù)據(jù)通道。當(dāng)使用之間建立數(shù)據(jù)通道。當(dāng)使用TDS510 或或XDS510 型號(hào)型號(hào) 的仿真器時(shí),的仿真器時(shí),RTDX 的速

32、度的速度僅有僅有5-10K bytes/S,對(duì)于,對(duì)于DSP 的應(yīng)用來(lái)說(shuō),這的應(yīng)用來(lái)說(shuō),這 遠(yuǎn)遠(yuǎn)不夠。而對(duì)于遠(yuǎn)遠(yuǎn)不夠。而對(duì)于TDS560 或或XDS560 ,RTDX 速度可以速度可以提高到提高到1.5M bytes/S,我們稱之為,我們稱之為高速高速RTDX。 26 4 Real time Event debug-Advance Event Trigger (AET) 在實(shí)時(shí)系統(tǒng),需要處理(像硬件中斷,定時(shí)器)這樣的實(shí)在實(shí)時(shí)系統(tǒng),需要處理(像硬件中斷,定時(shí)器)這樣的實(shí) 時(shí)事件。我們?cè)谔幚硪话闶录r(shí),通常是在中斷程序時(shí)事件。我們?cè)谔幚硪话闶录r(shí),通常是在中斷程序 入口入口 插入插入一個(gè)軟件中斷

33、,事件一旦被觸發(fā),程序?qū)⑼T谝粋€(gè)軟件中斷,事件一旦被觸發(fā),程序?qū)⑼T?中斷處,中斷處, 我們可以我們可以觀察觀察所需要的信息。所需要的信息。 但目標(biāo)但目標(biāo)DSP 被停止運(yùn)行后,我們將丟失其他的實(shí)時(shí)事件和被停止運(yùn)行后,我們將丟失其他的實(shí)時(shí)事件和 實(shí)時(shí)數(shù)據(jù)流。實(shí)時(shí)數(shù)據(jù)流。 為解決這樣的問(wèn)題,為解決這樣的問(wèn)題,TI 提出了提出了AET(高級(jí)事(高級(jí)事 件觸發(fā)),我們可以在不停止件觸發(fā)),我們可以在不停止DSP運(yùn)行的情況下捕捉到實(shí)運(yùn)行的情況下捕捉到實(shí) 時(shí)事件。時(shí)事件。 27 比較比較 性能:性能: 560-支持高速支持高速RTDX,ATE(選用有(選用有EJTAG 接口的接口的DSP 芯片)芯片)-

34、我我 們稱之為實(shí)時(shí)調(diào)試工具。們稱之為實(shí)時(shí)調(diào)試工具。 510-支持低速支持低速RTDX,不支持,不支持AET-我們稱之為我們稱之為“準(zhǔn)實(shí)時(shí)仿真器準(zhǔn)實(shí)時(shí)仿真器” 或或“非實(shí)時(shí)仿真器非實(shí)時(shí)仿真器”。 100-支持低速支持低速RTDX,不支持,不支持AET-我們稱之為我們稱之為“準(zhǔn)實(shí)時(shí)仿真器準(zhǔn)實(shí)時(shí)仿真器” 或或“非實(shí)時(shí)仿真器非實(shí)時(shí)仿真器” 支持器件方面:支持器件方面:560可仿真可仿真TI全系列全系列DSP芯片,并且新版還支持芯片,并且新版還支持ARM, 使用穩(wěn)定可靠;而使用穩(wěn)定可靠;而510可仿真可仿真TI全系列全系列DSP芯片,但在高端芯片,但在高端DSP仿真仿真 方面,不夠穩(wěn)定;方面,不夠穩(wěn)定;

35、100目前只能支持目前只能支持F280X / F281X / F280XX / F2833X/C550X/C674X ,可穩(wěn)定仿真,可穩(wěn)定仿真F280X / F281X / F280XX / F2833X。 硬件仿真器硬件仿真器XDS TMS320擴(kuò)展開發(fā)系統(tǒng)(擴(kuò)展開發(fā)系統(tǒng)(XDS. Extended Development System)是功能強(qiáng)大的高速)是功能強(qiáng)大的高速 仿真器,可用來(lái)進(jìn)行系統(tǒng)級(jí)的集成調(diào)試,是進(jìn)行仿真器,可用來(lái)進(jìn)行系統(tǒng)級(jí)的集成調(diào)試,是進(jìn)行DSP芯片開發(fā)的最佳工具。芯片開發(fā)的最佳工具。 傳統(tǒng)的電路仿真器傳統(tǒng)的電路仿真器:對(duì)用戶級(jí)進(jìn)行硬件仿真時(shí),仿真器的電纜插頭必須插入到用戶硬

36、對(duì)用戶級(jí)進(jìn)行硬件仿真時(shí),仿真器的電纜插頭必須插入到用戶硬 件電路中件電路中DSP芯片的位置,即仿真電纜的插頭引腳必須與芯片的位置,即仿真電纜的插頭引腳必須與DSP芯片的引腳一一對(duì)應(yīng);芯片的引腳一一對(duì)應(yīng); 掃描仿真器掃描仿真器:通過(guò)通過(guò)DSP芯片上提供的幾個(gè)仿真引腳實(shí)現(xiàn)仿真功能。芯片上提供的幾個(gè)仿真引腳實(shí)現(xiàn)仿真功能。 掃描仿真器優(yōu)點(diǎn):掃描仿真器優(yōu)點(diǎn):解決了電路仿真器仿真電纜過(guò)長(zhǎng)引起信號(hào)失真,仿真插頭引起解決了電路仿真器仿真電纜過(guò)長(zhǎng)引起信號(hào)失真,仿真插頭引起 可靠性差等問(wèn)題,使用這種方法,可靠性差等問(wèn)題,使用這種方法,程序可以從片內(nèi)或片外的目標(biāo)存儲(chǔ)器實(shí)時(shí)執(zhí)行,在程序可以從片內(nèi)或片外的目標(biāo)存儲(chǔ)器實(shí)時(shí)

37、執(zhí)行,在 任何時(shí)鐘速度下都不會(huì)引入額外的等待狀態(tài)任何時(shí)鐘速度下都不會(huì)引入額外的等待狀態(tài)。另外由于另外由于DSP芯片內(nèi)部是通過(guò)移位寄存器芯片內(nèi)部是通過(guò)移位寄存器 掃描鏈實(shí)現(xiàn)掃描仿真,而這個(gè)掃描鏈可被外部的串行口訪問(wèn)掃描鏈實(shí)現(xiàn)掃描仿真,而這個(gè)掃描鏈可被外部的串行口訪問(wèn),因此采用掃描仿真,即,因此采用掃描仿真,即 使芯片已經(jīng)焊在電路板上,也可進(jìn)行仿真調(diào)試,這為在生產(chǎn)過(guò)程中調(diào)試使芯片已經(jīng)焊在電路板上,也可進(jìn)行仿真調(diào)試,這為在生產(chǎn)過(guò)程中調(diào)試DSP系統(tǒng)提供了系統(tǒng)提供了 極大的方便。極大的方便。 三、三、代碼調(diào)試工具代碼調(diào)試工具 硬件仿真器硬件仿真器 3X仿真器是仿真器是12線仿真頭,線仿真頭,4X、5X、

38、2XX、54X和和8X等仿真等仿真 器的仿真信號(hào)線都采用器的仿真信號(hào)線都采用JTAG標(biāo)準(zhǔn)標(biāo)準(zhǔn)IEEE1149.1。 掃描仿真器配置的軟件采用的也是掃描仿真器配置的軟件采用的也是C/匯編源碼的調(diào)試界面,匯編源碼的調(diào)試界面, 它與它與軟件模擬器軟件模擬器的用戶界面完全相同,的用戶界面完全相同,目標(biāo)代碼可通過(guò)掃描接口目標(biāo)代碼可通過(guò)掃描接口 從從PC機(jī)下載到目標(biāo)系統(tǒng)的存儲(chǔ)器中機(jī)下載到目標(biāo)系統(tǒng)的存儲(chǔ)器中。 三、三、代碼調(diào)試工具代碼調(diào)試工具 XDS510仿真器的應(yīng)用仿真器的應(yīng)用 XDS510仿真器是以仿真器是以PC機(jī)為基礎(chǔ)的開發(fā)系統(tǒng),它可以實(shí)施全速掃描仿真,屬于機(jī)為基礎(chǔ)的開發(fā)系統(tǒng),它可以實(shí)施全速掃描仿真,

39、屬于 串行工作的串行工作的DSP仿真系統(tǒng)。為了保證仿真過(guò)程能與目標(biāo)系統(tǒng)獨(dú)立工作時(shí)的特性相同仿真系統(tǒng)。為了保證仿真過(guò)程能與目標(biāo)系統(tǒng)獨(dú)立工作時(shí)的特性相同 或接近,或接近,XDS510仿真開發(fā)系統(tǒng)利用仿真開發(fā)系統(tǒng)利用JTAG電路與目標(biāo)系統(tǒng)電路與目標(biāo)系統(tǒng)DSP處理器連接,用于實(shí)處理器連接,用于實(shí) 現(xiàn)對(duì)處理器內(nèi)部的調(diào)試,可以用它來(lái)開發(fā)硬件和軟件,并將它集成到目標(biāo)系統(tǒng)中?,F(xiàn)對(duì)處理器內(nèi)部的調(diào)試,可以用它來(lái)開發(fā)硬件和軟件,并將它集成到目標(biāo)系統(tǒng)中。 邊界掃描技術(shù)邊界掃描技術(shù)JTAG-Joint Test Advisory Group是一種不需要測(cè)試設(shè)備的是一種不需要測(cè)試設(shè)備的 電子系統(tǒng)測(cè)試技術(shù),不僅可以測(cè)試集成

40、芯片或印刷電路板(電子系統(tǒng)測(cè)試技術(shù),不僅可以測(cè)試集成芯片或印刷電路板(PCB)的邏輯行)的邏輯行 為和功能,還可以測(cè)試芯片器件之間,為和功能,還可以測(cè)試芯片器件之間,PCB 之間的連接故障,目前它已經(jīng)之間的連接故障,目前它已經(jīng) 成為現(xiàn)代數(shù)字電路系統(tǒng)可測(cè)試性設(shè)計(jì)的基本技術(shù)。成為現(xiàn)代數(shù)字電路系統(tǒng)可測(cè)試性設(shè)計(jì)的基本技術(shù)。 C2XX的仿真器,其仿真信號(hào)采用的仿真器,其仿真信號(hào)采用JTAG標(biāo)準(zhǔn)標(biāo)準(zhǔn)IEEE1149 .1 有有14根線根線 四、四、XDS510仿真器的應(yīng)用仿真器的應(yīng)用 1 2 3 4 5 6 7 8 9 10 11 12 13 14 TRST GND no pin GND GND GND

41、EMU1 TMS TDI PD(Vcc) TDO TCK_RET TCK EMU0 TRST 14引腳仿真頭信號(hào)的說(shuō)明引腳仿真頭信號(hào)的說(shuō)明 信信 號(hào)號(hào)說(shuō)說(shuō) 明明 仿真器仿真器 狀態(tài)狀態(tài) 目標(biāo)狀目標(biāo)狀 態(tài)態(tài) EMU0仿真引腳仿真引腳0 II/O EMU1仿真引腳仿真引腳1 II/O GND地地 PD(Vcc)電源檢測(cè):指示仿真電纜是否連接電源檢測(cè):指示仿真電纜是否連接 和目標(biāo)是否加電。在目標(biāo)系統(tǒng)中,和目標(biāo)是否加電。在目標(biāo)系統(tǒng)中, PD連到連到Vcc IO TCK測(cè)試時(shí)鐘。測(cè)試時(shí)鐘。TCK由仿真電纜盒提供由仿真電纜盒提供 10.368M時(shí)鐘。該信號(hào)可用于驅(qū)動(dòng)時(shí)鐘。該信號(hào)可用于驅(qū)動(dòng) 系統(tǒng)測(cè)試時(shí)鐘。系

42、統(tǒng)測(cè)試時(shí)鐘。 OI TCK_RE T 測(cè)試時(shí)鐘返回,測(cè)試時(shí)鐘輸入仿真測(cè)試時(shí)鐘返回,測(cè)試時(shí)鐘輸入仿真 器,可以是器,可以是TCK加緩沖或不加緩沖加緩沖或不加緩沖 IO TDI測(cè)試數(shù)據(jù)輸入測(cè)試數(shù)據(jù)輸入OI TDO測(cè)試數(shù)據(jù)輸出測(cè)試數(shù)據(jù)輸出IO TMS測(cè)試模式選擇測(cè)試模式選擇OI TRST測(cè)試復(fù)位測(cè)試復(fù)位OI 上不用上拉電阻,上不用上拉電阻, 內(nèi)部已有,在噪內(nèi)部已有,在噪 聲環(huán)境,它可以聲環(huán)境,它可以 懸空;在強(qiáng)噪聲懸空;在強(qiáng)噪聲 環(huán)境需加下拉電環(huán)境需加下拉電 阻(電阻大小取阻(電阻大小取 決于電流考慮)。決于電流考慮)。 I=輸入;輸入; O=輸出輸出 五、五、軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái)CCS及其應(yīng)用

43、及其應(yīng)用 為提高實(shí)時(shí)信號(hào)處理系統(tǒng)的開發(fā)進(jìn)程,為提高實(shí)時(shí)信號(hào)處理系統(tǒng)的開發(fā)進(jìn)程,TI公司針對(duì)公司針對(duì)TMS320C2XX, C54XC54XXC55X,C6X,C3XC4X分別提供了一套全新的集成開發(fā)環(huán)分別提供了一套全新的集成開發(fā)環(huán) 境境CCS(Code Compose Studio) 。 CCS采用圖形接口,提供有編輯指令,參數(shù)修改工具,它為非代碼產(chǎn)采用圖形接口,提供有編輯指令,參數(shù)修改工具,它為非代碼產(chǎn) 生工具集成了一個(gè)統(tǒng)一的集成環(huán)境,包括了生工具集成了一個(gè)統(tǒng)一的集成環(huán)境,包括了TI公司提供的公司提供的C源代碼調(diào)試器源代碼調(diào)試器 和模擬器所具有的功能,能對(duì)和模擬器所具有的功能,能對(duì)TMS32

44、0系列系列DSP進(jìn)行指令級(jí)的仿真和進(jìn)行進(jìn)行指令級(jí)的仿真和進(jìn)行 可視化的實(shí)時(shí)數(shù)據(jù)分析,可大大提高開發(fā)工作效率,縮短應(yīng)用系統(tǒng)開發(fā)周可視化的實(shí)時(shí)數(shù)據(jù)分析,可大大提高開發(fā)工作效率,縮短應(yīng)用系統(tǒng)開發(fā)周 期。期。 CCS工作在工作在Windows操作系統(tǒng)下,是基于操作系統(tǒng)下,是基于PC機(jī)的機(jī)的DSP應(yīng)用系統(tǒng)開發(fā)平應(yīng)用系統(tǒng)開發(fā)平 臺(tái) , 對(duì)臺(tái) , 對(duì) P C 機(jī) 的 硬 件 要 求 是機(jī) 的 硬 件 要 求 是 3 2 M 內(nèi) 存 ,內(nèi) 存 , 1 0 0 M 的 硬 盤 空 間 ,的 硬 盤 空 間 , SVGA(800*600) 顯示器。顯示器。 四、四、軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái)CCS及其應(yīng)用及其應(yīng)用

45、安裝安裝CC2000到軟件中,運(yùn)行到軟件中,運(yùn)行CC2000安裝程序安裝程序setup.exe。安裝完成后,在。安裝完成后,在 桌而上會(huì)有桌而上會(huì)有“CCSC2000”和和“Setup CCS2C2000”兩個(gè)快捷方式圖標(biāo)。分兩個(gè)快捷方式圖標(biāo)。分 別對(duì)應(yīng)別對(duì)應(yīng)CCS 2C000應(yīng)用程序和配置程序應(yīng)用程序和配置程序,如圖所示。如圖所示。 運(yùn)行運(yùn)行CCS2000配置程序設(shè)置驅(qū)動(dòng)程序,如果配置程序設(shè)置驅(qū)動(dòng)程序,如果CCS2000是在目標(biāo)板上運(yùn)行,是在目標(biāo)板上運(yùn)行, 則要先安裝目標(biāo)板驅(qū)動(dòng)卡,然后運(yùn)行則要先安裝目標(biāo)板驅(qū)動(dòng)卡,然后運(yùn)行“Setup CCSC2000”配置驅(qū)動(dòng)程序,最后配置驅(qū)動(dòng)程序,最后 才

46、能執(zhí)行才能執(zhí)行CCS2000。除非用戶改變。除非用戶改變CCS2000應(yīng)用平臺(tái)類型,否則只需運(yùn)行應(yīng)用平臺(tái)類型,否則只需運(yùn)行 一次一次CCS2000配置程序。配置程序。 CCS的安裝的安裝 四、四、軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái)CCS及其應(yīng)用及其應(yīng)用 單擊其中的單擊其中的“Clear(清除清除)”按鈕,并確認(rèn)以清除以前定義的配置,點(diǎn)擊按鈕,并確認(rèn)以清除以前定義的配置,點(diǎn)擊 Install a Device Driver,選擇能與使用的目標(biāo)系統(tǒng)相匹配的配置文件選擇能與使用的目標(biāo)系統(tǒng)相匹配的配置文件.把該把該 圖標(biāo)拖動(dòng)到最左邊的圖標(biāo)拖動(dòng)到最左邊的System Configuration一欄中的一欄中的my

47、 system圖標(biāo)下即可。圖標(biāo)下即可。 在在Board Name&Data File欄中,點(diǎn)擊欄中,點(diǎn)擊NEXT,進(jìn)入下一頁(yè),選擇,進(jìn)入下一頁(yè),選擇I/O口口 值,再點(diǎn)擊值,再點(diǎn)擊NEXT。在。在Processor Configuration窗口,在窗口,在Available Processor中選擇中選擇TMS320CXX后,點(diǎn)擊后,點(diǎn)擊Add Single,對(duì)話框右邊出現(xiàn)對(duì)話框右邊出現(xiàn) CPU_1圖標(biāo)。最后,點(diǎn)擊圖標(biāo)。最后,點(diǎn)擊finish。關(guān)閉。關(guān)閉Code Composer Setup程序,選擇保程序,選擇保 存。運(yùn)行存。運(yùn)行CCC2000軟件,成功進(jìn)入界面,則說(shuō)明軟硬件安裝成功。即開

48、軟件,成功進(jìn)入界面,則說(shuō)明軟硬件安裝成功。即開 始在始在CC2000環(huán)境下進(jìn)行程序的編輯和調(diào)試。環(huán)境下進(jìn)行程序的編輯和調(diào)試。 CCS的設(shè)置的設(shè)置 四、四、軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái)CCS及其應(yīng)用及其應(yīng)用 編 譯 運(yùn) 行 結(jié) 果 信 息 窗 口 工 作 區(qū) 中 B I O S 設(shè) 置 窗 口 變 量 觀 察 窗 口 標(biāo)題區(qū),標(biāo)明CCS 啟動(dòng)方式菜單條 編譯工具條 編輯工具條 調(diào)試工具條 工程管理 窗口 工作區(qū),用戶 文件管理 工作區(qū) 中C源程序 編輯窗口 開始 工作區(qū)中 反匯編調(diào) 試窗口 工作區(qū)中數(shù)據(jù) 顯示窗口 工作區(qū)中圖形 顯示窗口 工作區(qū)中圖象 顯示窗口 變量觀察 窗口 工作區(qū)中 BIOS設(shè)

49、置 窗口 編譯運(yùn)行結(jié) 果信息窗口 四、四、軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái)CCS及其應(yīng)用及其應(yīng)用 1、New (新建文件)(新建文件) 2、Open (打開文件)(打開文件) 3、Close (關(guān)閉文件)(關(guān)閉文件) 4、Save (保存文件)(保存文件) 5、Save As (另存為)(另存為) 6、Save All (全部保存)(全部保存) 7、Load Program (裝入程序)(裝入程序) 8、Load Symbol (裝入符號(hào))(裝入符號(hào)) 9、Reload Program (重新裝入程序)(重新裝入程序) 10、Load Gel (裝入(裝入GEL文件)文件) GEL即是通用擴(kuò)展語(yǔ)言即是

50、通用擴(kuò)展語(yǔ)言(General Extension Language)的簡(jiǎn)稱,它是一種與的簡(jiǎn)稱,它是一種與C語(yǔ)語(yǔ) 言類似的解釋語(yǔ)言,用來(lái)創(chuàng)建函數(shù)以擴(kuò)展言類似的解釋語(yǔ)言,用來(lái)創(chuàng)建函數(shù)以擴(kuò)展CC2000功能。功能。 文件管理功能(文件管理功能(File) 四、四、軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái)CCS及其應(yīng)用及其應(yīng)用 11、Print (打?。ù蛴?12、Print Preview (打印預(yù)覽)(打印預(yù)覽) 13、Data (數(shù)據(jù)文件)(數(shù)據(jù)文件) 14、Workspace (工作空間工作空間) 15、File I/O (文件輸入(文件輸入/輸出)輸出) 載入外部數(shù)據(jù)載入外部數(shù)據(jù) 保存數(shù)據(jù)到文件中保存數(shù)據(jù)到

51、文件中 16、Recent Source Files (最近使用過(guò)的源文件)(最近使用過(guò)的源文件) 17、Recent Workspaces (最近使用過(guò)的工作空間)(最近使用過(guò)的工作空間) 18、Recent Program Files (最近使用過(guò)的可執(zhí)行程序)(最近使用過(guò)的可執(zhí)行程序) 19、Exit (退出)(退出) 文件管理功能(文件管理功能(File) 四、四、軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái)CCS及其應(yīng)用及其應(yīng)用 1、Undo (取消鍵入)(取消鍵入) 2、Redo (重復(fù)鍵入)(重復(fù)鍵入) 3、Cut (剪切)(剪切) 4、Copy (復(fù)制復(fù)制) 5、Paste (粘貼粘貼) 6、De

52、lete (刪除刪除) 7、Select All (全選)(全選) 8、Find/Replace (尋找(尋找/替換)替換) 9、Find in Files (在多個(gè)文件中尋找文本在多個(gè)文件中尋找文本) 11、Memory (存儲(chǔ)器)(存儲(chǔ)器) 12、Edit Register (編輯寄存器編輯寄存器) 13、Edit Veriable (編輯變量編輯變量) 14、Edit Command Line(編輯命令行編輯命令行) 15、Column Edit (列編輯)(列編輯) 16、Bookmarks (書簽)(書簽) 編輯功能(編輯功能(Edit) 四、四、軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái)CCS及其應(yīng)

53、用及其應(yīng)用 1、Standard Toolbar(標(biāo)準(zhǔn)工具條)(標(biāo)準(zhǔn)工具條) 2、Gel Toolbar (GEL工具條)工具條) 3、Project Toolbar (工程工具條)(工程工具條) 4、Debug Toolbar (調(diào)試工具條)(調(diào)試工具條) 5、Edit Toolbar (編輯工具條)(編輯工具條) 6、Status Bar (狀態(tài)工具條)(狀態(tài)工具條) 7、Dis-Assembly (反匯編)(反匯編) 8、Memory(存儲(chǔ)器)(存儲(chǔ)器) 9、CPU Regrsters(CPU 寄存器)寄存器) 10、Graph(圖形顯示)(圖形顯示) 11、Watch Window(觀

54、察窗口)(觀察窗口) 12、Call Stack(調(diào)用堆棧)(調(diào)用堆棧) 13、Expressinon List(表達(dá)式列表)(表達(dá)式列表) 14、Project(工程)。(工程)。 15、Mixed Source/Asm(混合的(混合的C/ASM代碼)代碼) 視圖功能(視圖功能(View) 四、四、軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái)CCS及其應(yīng)用及其應(yīng)用 CC2000采用工程文件夾集中管理一個(gè)工程包括源程序、庫(kù)文件、鏈采用工程文件夾集中管理一個(gè)工程包括源程序、庫(kù)文件、鏈 接命令文件和頭文件等,它們按照目錄樹的結(jié)構(gòu)組織在工程文件中。工程構(gòu)接命令文件和頭文件等,它們按照目錄樹的結(jié)構(gòu)組織在工程文件中。工程構(gòu)

55、 建(編譯鏈接)完成后生成可執(zhí)行文件。一個(gè)典型的工程文件記錄下述信息:建(編譯鏈接)完成后生成可執(zhí)行文件。一個(gè)典型的工程文件記錄下述信息: 源程序文件名和目標(biāo)庫(kù);編譯器、匯編器和鏈接器選項(xiàng);相關(guān)的包括文件。源程序文件名和目標(biāo)庫(kù);編譯器、匯編器和鏈接器選項(xiàng);相關(guān)的包括文件。 1、New(新建)(新建) 2、Open(打開)(打開) 3、ADD FILES TO PROJECT(加入文件到工程)(加入文件到工程) 4、Close(關(guān)閉)(關(guān)閉) 5、Compile File(編譯)(編譯) 6、Build(生成)(生成) 7、Rebuild All(重新生成)(重新生成) 8、Stop Build

56、(停止構(gòu)建)(停止構(gòu)建) 9、Show Dependencies(顯示從屬文件類型)(顯示從屬文件類型) 10、SCAN All Dependencies(掃描所有的從屬文件掃描所有的從屬文件) 11、Options(生成選項(xiàng))(生成選項(xiàng)) 工程管理(工程管理(Project) 四、四、軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái)CCS及其應(yīng)用及其應(yīng)用 CC2000提供了一組用于程序調(diào)試的工具,具有異常豐富的調(diào)試手段,提供了一組用于程序調(diào)試的工具,具有異常豐富的調(diào)試手段, 它提供了它提供了4種程序執(zhí)行控制方式,用戶可以對(duì)內(nèi)存單元和寄存器進(jìn)行查看和種程序執(zhí)行控制方式,用戶可以對(duì)內(nèi)存單元和寄存器進(jìn)行查看和 編輯,輸入

57、輸出外部數(shù)據(jù),設(shè)置測(cè)試點(diǎn)等。一般的調(diào)試步驟為:調(diào)入生成編輯,輸入輸出外部數(shù)據(jù),設(shè)置測(cè)試點(diǎn)等。一般的調(diào)試步驟為:調(diào)入生成 好的可執(zhí)行程序,先在感興趣的程序段設(shè)置斷點(diǎn),然后執(zhí)行程序停留在斷點(diǎn)好的可執(zhí)行程序,先在感興趣的程序段設(shè)置斷點(diǎn),然后執(zhí)行程序停留在斷點(diǎn) 處,查看寄存器的值或內(nèi)存單元的值,對(duì)中間數(shù)據(jù)進(jìn)行在線(或輸出)分析。處,查看寄存器的值或內(nèi)存單元的值,對(duì)中間數(shù)據(jù)進(jìn)行在線(或輸出)分析。 反復(fù)這個(gè)過(guò)程直到程序完成預(yù)期的功能。反復(fù)這個(gè)過(guò)程直到程序完成預(yù)期的功能。 1、Breakpoint(斷點(diǎn))(斷點(diǎn)) 2、Probe point(測(cè)試點(diǎn)測(cè)試點(diǎn)) 3、Step Into(單步執(zhí)行)(單步執(zhí)行)

58、4、Step Over(單條執(zhí)行)(單條執(zhí)行) 5、Step Out(跳出子程序)(跳出子程序) 6、Run(運(yùn)行程序)。(運(yùn)行程序)。 7、Halt(暫停程序執(zhí)行)(暫停程序執(zhí)行) 8、Animale(動(dòng)畫執(zhí)行)(動(dòng)畫執(zhí)行) 9、Run Free(自由運(yùn)行)(自由運(yùn)行) 10、Run to Cursor(運(yùn)行到光標(biāo))(運(yùn)行到光標(biāo)) 11、Multople Operation(多步操作)(多步操作) 12、Reset DSP(復(fù)位(復(fù)位DSP) 13、Load Kernel(裝入內(nèi)核)(裝入內(nèi)核) 14、Restart(重新開始)(重新開始) 15、Go main(進(jìn)入主程序)(進(jìn)入主程序)

59、調(diào)試功能(調(diào)試功能(Debug) 四、四、軟件開發(fā)平臺(tái)軟件開發(fā)平臺(tái)CCS及其應(yīng)用及其應(yīng)用 用戶完成一個(gè)算法設(shè)計(jì)和編程后,一般需要測(cè)試程序效率以便進(jìn)一步用戶完成一個(gè)算法設(shè)計(jì)和編程后,一般需要測(cè)試程序效率以便進(jìn)一步 優(yōu)化代碼。優(yōu)化代碼。CCS2000提供了提供了“代碼性能評(píng)估代碼性能評(píng)估”工具來(lái)幫助用戶評(píng)估代碼性能。工具來(lái)幫助用戶評(píng)估代碼性能。 它通過(guò)收集在指定的代碼區(qū)間程序執(zhí)行的統(tǒng)計(jì)性能,來(lái)幫助確定程序中各段它通過(guò)收集在指定的代碼區(qū)間程序執(zhí)行的統(tǒng)計(jì)性能,來(lái)幫助確定程序中各段 所花費(fèi)的處理時(shí)間。從而幫助識(shí)別并消去性能發(fā)揮的瓶頸,減少程序的執(zhí)行所花費(fèi)的處理時(shí)間。從而幫助識(shí)別并消去性能發(fā)揮的瓶頸,減少

60、程序的執(zhí)行 時(shí)間,使程序更為有效。其基本方法為:在適當(dāng)?shù)恼Z(yǔ)句位置設(shè)置斷點(diǎn)(軟件時(shí)間,使程序更為有效。其基本方法為:在適當(dāng)?shù)恼Z(yǔ)句位置設(shè)置斷點(diǎn)(軟件 斷點(diǎn)或特征點(diǎn)),當(dāng)此程序執(zhí)行通過(guò)斷點(diǎn)時(shí),有關(guān)代碼執(zhí)行的信息被收集并斷點(diǎn)或特征點(diǎn)),當(dāng)此程序執(zhí)行通過(guò)斷點(diǎn)時(shí),有關(guān)代碼執(zhí)行的信息被收集并 統(tǒng)計(jì)。用戶通過(guò)統(tǒng)計(jì)信息評(píng)估代碼性能。統(tǒng)計(jì)。用戶通過(guò)統(tǒng)計(jì)信息評(píng)估代碼性能。 1、Profile Points(特征點(diǎn))(特征點(diǎn)) 2、View Statistics(觀察代碼性能評(píng)估統(tǒng)計(jì)結(jié)果(觀察代碼性能評(píng)估統(tǒng)計(jì)結(jié)果 3、Enable Clock(激活時(shí)鐘)(激活時(shí)鐘) 4、Colock Setup(時(shí)鐘設(shè)置)(時(shí)鐘設(shè)置

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論