采用JTAG仿真器的DSP中斷檢測處理技術(shù)方案
1、引言
4、DSP/BIOS 應(yīng)用及實(shí)時(shí)性分析
本文引用地址:http://cafeforensic.com/article/152005.htm4.1 DSP/ BIOS的分析特性:
程序跟蹤:顯示寫入目標(biāo)日志的事件并在程序執(zhí)行過程忠反映動(dòng)態(tài)控制流程。
性能監(jiān)控:跟蹤、統(tǒng)計(jì)目標(biāo)板資源的使用情況。
文件流:將目標(biāo)板上的 I/O對(duì)象與主機(jī)上的文件聯(lián)系在一起。其中: 1)DSP/ BIOS==Statistics View 統(tǒng)計(jì)表用于對(duì)程序的執(zhí)行周期進(jìn)行統(tǒng)計(jì)。
2)DSP/BIOS==Execution Graph 執(zhí)行圖以圖示方式來反映程序執(zhí)行時(shí)各進(jìn)程間的配合,以分析程序執(zhí)行的實(shí)時(shí)性。
3)DSP/BIOS==RTA Control Panel 控制儀表可以實(shí)時(shí)調(diào)整信息搜集和由此造成的對(duì) CPU的干擾之間,通過禁止不同的隱式儀表類型,用戶會(huì)丟失一些信息來換取減少開銷。
4)DSP/ BIOS==CPU Load Graph ,CPU負(fù)荷圖窗口,CPU活動(dòng)分為兩部分:工作時(shí)間和 IDLE時(shí)間。即 CPU負(fù)荷定義為執(zhí)行一個(gè)應(yīng)用程序時(shí),CPU花費(fèi)的指令周期數(shù)的百分比。
4.2 DSP/BIOS 實(shí)時(shí)性分析
一 )連接硬件,首先給 DSP目標(biāo)扳加電,指示燈亮。
一 CCS運(yùn)行環(huán)境。
一 )建立新項(xiàng)目,并在項(xiàng)目中添加相關(guān)文件。
一 )選擇Project 菜單中 open選項(xiàng),在彈出的對(duì)話框中選擇編譯工程*.cmd。
一 )選擇Project 菜單中 Rebuild All選項(xiàng),編譯鏈接該工程,沒有錯(cuò)誤后,選擇 File菜單中 Load Program選項(xiàng),選擇文件,進(jìn)行加載程序。
一 )選擇DSP/BIOS 菜單中CPU Load Graph , Execution Graph , Statistics View ,RTA Control Panel , Message Log 選項(xiàng)。
一 RTA Control Panel Properties 對(duì)話框,將 CPU Load Graph 改為 Every 0.5 Seconds 。[5]
一 )執(zhí)行程序,執(zhí)行圖窗口如圖3下:
如圖3 執(zhí)行圖窗口
1 )連接硬件,首先給 DSP目標(biāo)扳加電,指示燈亮。
2 CCS運(yùn)行環(huán)境。
3 )建立新項(xiàng)目,并在項(xiàng)目中添加相關(guān)文件。
4 )選擇Project 菜單中open選項(xiàng),在彈出的對(duì)話框中選擇編譯工程。
5 )選擇Project 菜單中 Rebuild All選項(xiàng),編譯鏈接該工程,沒有錯(cuò)誤后,選擇 File菜單中 Load Program選項(xiàng),選擇文件,進(jìn)行加載程序。
6 )選擇File菜單中File I/O 選項(xiàng),在對(duì)話框中Address 輸入為Inp_buffer ,Legth為 100 ,進(jìn)行鏈接,加載程序。
7 )將光標(biāo)移至設(shè)定行 data IO ( ),設(shè)置中斷點(diǎn)和探測點(diǎn),選擇 Debug菜單中 Breakpoints選項(xiàng)和 Probe Points 選項(xiàng)。
8 )選擇View菜單中Watch Windows 選項(xiàng)和graph 選項(xiàng),在graph 選項(xiàng)中 Time /Frequency選項(xiàng)中設(shè)置輸入圖形屬性,設(shè) Start Address 為inp_buffer ,Graph Title 為 inp_buffer ,Acquisition Buffer Size為 100,Display Data Size 為 100 , Maximum Y_Value 為 1000 , Autoscale為 off ,同時(shí)設(shè)置輸出波形的屬性。[4]
9 )執(zhí)行程序,觀察輸入輸出波形。如圖4:
6、結(jié)束語
文章討論了運(yùn)用 JTAG仿真器在 CCS軟件平臺(tái)下對(duì) TMS320 C54x系列 DSP芯片實(shí)現(xiàn)在線編程,在線調(diào)試時(shí)中斷檢測的處理,這樣基于 JTAG仿真器的 DSP中斷檢測處理技術(shù)可以滿足實(shí)時(shí)性分析的一些需求,提高了研究分析的精確性和針對(duì)性。但如果信號(hào)的測量需要更高精度、長時(shí)間的校準(zhǔn)分析、更高性能的結(jié)果,最好選用嵌入式的仿真器及其相關(guān)專有的軟件。
在采用集成化的開發(fā)調(diào)試平臺(tái)CCS結(jié)合基于JTAG技術(shù)的仿真器實(shí)現(xiàn) DSP系統(tǒng)的實(shí)時(shí)性分析過程中設(shè)定中斷檢測點(diǎn)是非常重要的,中斷檢測點(diǎn)可以中斷程序的執(zhí)行以進(jìn)行特定的操作,例如可以進(jìn)行數(shù)據(jù)文件的輸入輸出,可以刷新圖表和數(shù)據(jù)窗口等,便于在實(shí)時(shí)性分析中更有效的觀察數(shù)據(jù)處理的顯示結(jié)果。
2、基于 JTAG技術(shù)的仿真器
JTAG技術(shù)即邊界掃描技術(shù),是一種專用的電子系統(tǒng)測試技術(shù),就是通常所指的 IEEE1149.1標(biāo)準(zhǔn),已經(jīng)在各行業(yè)中得到了廣泛的應(yīng)用,如圖 1,一個(gè)符合 IEEE1149.1標(biāo)準(zhǔn)的 JTAG器件,有別于不同的邏輯器件,內(nèi)部都包括一個(gè) TAP(測試訪問端口)控制器,其次在芯片內(nèi)部經(jīng)由一個(gè)掃描鏈路將所有的輸入和輸出管腳全部串入一個(gè)掃描鏈路。
圖 1 JTAG器件
基于 IEEE1149.1標(biāo)準(zhǔn)的邊界掃描技術(shù)最先應(yīng)用于大規(guī)模集成電路以及系統(tǒng)級(jí)芯片設(shè)計(jì)的 DFT技術(shù),不僅可以保證集成電路芯片的外圍管腳部分邏輯的正確,同時(shí)也對(duì)于嵌入在芯片內(nèi)部的自測試機(jī)制等起到整合和控制等方面的作用。其次,通過芯片的 JTAG接口可以實(shí)現(xiàn)包括 FPGA、DSP以及處理器等在內(nèi)的集成電路芯片的在線編程,同時(shí)也可以實(shí)現(xiàn)芯片的在線調(diào)試,前者是應(yīng)用這一模式實(shí)現(xiàn)設(shè)計(jì)的下載,后者利用虛擬在線調(diào)試技術(shù)就是將芯片運(yùn)行過程中部分的內(nèi)部邏輯信息透過 JTAG接口傳送到計(jì)算機(jī)中進(jìn)行分析和判讀。第三,基于 JTAG標(biāo)準(zhǔn)的邊界掃描技術(shù)可以應(yīng)用在印刷電路板的連通性測試領(lǐng)域,通過將 JTAG器件的邊界掃描鏈連接在一起,并且控制合適的數(shù)據(jù)信息在該掃描鏈中傳遞,從掃描鏈的輸出端進(jìn)行監(jiān)控就可以判別有關(guān)印刷電路板連通性以及元器件功能等方面的問題。
基于 JTAG技術(shù)的仿真器是用來進(jìn)行芯片硬件仿真,如程序單步執(zhí)行、設(shè)置中斷檢測點(diǎn)等,通過硬件仿真可以了解芯片里面程序的詳細(xì)運(yùn)行情況。 JTAG仿真器主要用來對(duì)芯片進(jìn)行仿真操作,同時(shí)也可以通過 JTAG接口對(duì)芯片編程(將程序?qū)懭胄酒?。它的接口方式有LPT(并行)口,PCI或ISA卡,USB口。JTAG仿真器一端通過USB口與PC機(jī)連接, 另一端通過 JTAG插頭與 DSP目標(biāo)板連接;建議首先連接 JTAG仿真器到 PC機(jī), 再連接到 DSP目標(biāo)板。[8] 3、基于 TMS320 C54XDSP芯片的信號(hào)發(fā)生器
3.1 TMS320 C54x系列 DSP芯片
TMS320 C54x系列 DSP芯片是使用靜態(tài) CMOS技術(shù)制造的。該芯片采用改進(jìn)哈佛結(jié)構(gòu),對(duì)程序內(nèi)存和數(shù)據(jù)內(nèi)存使用分離的總線;可以同時(shí)取指令和操作數(shù),提高了運(yùn)行效率和通用性先進(jìn)的 CPU設(shè)計(jì)和為應(yīng)用設(shè)計(jì)的硬件邏輯提高了芯片的性能;為快速的后續(xù)發(fā)展設(shè)計(jì)了模塊化的結(jié)構(gòu);為先進(jìn)的 IC處理技術(shù)提供了高性能和低功耗;高度專門的指令結(jié)構(gòu)提供了快速運(yùn)算和優(yōu)化的高階語言操作;具有單指令循環(huán)和塊指令循環(huán)功能;塊內(nèi)存移動(dòng)指令提供了更好的程序和數(shù)據(jù)管理;擁有兩個(gè)或三個(gè)操作數(shù)讀取能力的指令;從中斷快速返回的指令擁有多種片上外設(shè)和內(nèi)存配置方案等特點(diǎn)。
3.2信號(hào)發(fā)生器
一 )連接硬件,首先給 DSP目標(biāo)扳加電,指示燈亮。
一 CCS運(yùn)行環(huán)境。
一 )建立新項(xiàng)目,并在項(xiàng)目中添加相關(guān)文件。
一 Project 菜單中 open選項(xiàng),在彈出的對(duì)話框中選擇信號(hào)發(fā)生器的編譯工程。
一 Project 菜單中 Rebuild All選項(xiàng),編譯鏈接該工程,沒有錯(cuò)誤后,選擇 File菜單中 Load Program選項(xiàng),選擇 *.C文件,進(jìn)行加載程序。選擇 View菜單中 graph選項(xiàng)中 Time/Frequency設(shè)置圖形屬性,選擇 Start Address 為 dacdata ,設(shè) Acquisition Buffer Size為 180 ,設(shè) Display Data Size為180 ,設(shè) Dsp Data Type為 16-bit signed integer。點(diǎn)擊 OK ,觀察信號(hào)發(fā)生器的波形,如圖2:
評(píng)論