《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > TMS320F206定點DSP芯片開發(fā)實踐
TMS320F206定點DSP芯片開發(fā)實踐
吳玲玲 姚大偉 殷小貢
摘要: 以TMS320F206為例,闡述了DSP芯片的調試方法與調試技巧。著重探討了DSP系統(tǒng)開發(fā)過程中的硬件設計與調試、軟件設計中的流水線沖突和等待狀態(tài)設置以及如何利用閃速存儲器等相關問題,具有較強的參考價值。
關鍵詞: DSP TMS320F206 TI
Abstract:
Key words :

    摘  要:title="TMS320F206">TMS320F206為例,闡述了DSP芯片的調試方法與調試技巧。著重探討了DSP系統(tǒng)開發(fā)過程中的硬件設計與調試、軟件設計中的流水線沖突和等待狀態(tài)設置以及如何利用閃速存儲器等相關問題,具有較強的參考價值。 

    關鍵詞: TMS320F206  流水線  等待狀態(tài)  閃速存儲器

 

    高速數(shù)字信號處理器是當前信息產(chǎn)業(yè)的熱點技術之一,采用最先進的DSP無疑會使所開發(fā)的產(chǎn)品具有更強的市場競爭力。與普通的單片機相比,DSP芯片放棄了馮·諾依曼結構,代之以程序和數(shù)據(jù)分開的哈佛結構,從而大大提高了處理速度,指令周期多為ns級,比普通單片機(多為μs級)快了3個數(shù)量級。因此,在硬件設計中要考慮高頻干擾問題。同時,DSP芯片廣泛采用流水線操作,這也會給軟件設計和調試帶來一定不便。諸如此類的問題在實際開發(fā)中還有許多。 

    本篇文章中,筆者以TI公司的TMS320F206為例,就DSP芯片的軟硬件設計與調試中可能遇到的問題及解決方法進行闡述,希望能對正在從事DSP開發(fā)工作的同仁有所幫助。 

1 TMS320F206簡介

    TMS320F206是TI公司近年推出的一種性價比較高的定點DSP芯片。它的主要特點有: 

    (1)采用靜態(tài)CMOS集成工藝制作而成,先進的哈佛結構使得程序和數(shù)據(jù)存儲器獨立編址、獨立訪問,兩條總線可允許數(shù)據(jù)與指令的讀取同時進行,從而使數(shù)據(jù)的吞吐率提高了一倍;高度專業(yè)化的指令系統(tǒng)提供了功能強大的信號處理操作;內嵌閃速存儲器,可減小系統(tǒng)體積、提高系統(tǒng)穩(wěn)定性,而且毋需專門的編程器(XDS510仿真器即具有編程功能),從而減少了開發(fā)成本。 

    TMS320F206為100引腳的TQFP(正方扁平)封裝,體小質輕,適于便攜式儀器的設計。 

    (2)TMS320F206用一個16×16的硬乘法器進行有符號或無符號數(shù)的乘法運算,積為32位。乘累加指令僅需一個機器周期(20MHz時鐘時為50ns),而在51及196等普通單片機中,乘法需利用軟件實現(xiàn),執(zhí)行時間為μs級。 

    (3)TMS320F206地址映射分為4個可獨立選擇的空間: 

    · 64K字程序存儲器 

    · 64K字本地數(shù)據(jù)存儲器 

    · 32K字全局數(shù)據(jù)存儲器 

    · 64K字的I/O空間 

    (4)由于與目標系統(tǒng)之間采用了JTAG邏輯掃描電路接口(基于IEEE1149.1標準),從而可真正做到完全的硬件仿真。在仿真時不占用硬件資源,且可隨時察看CPU內部及外設的工作情況,為程序的調試和除錯帶來了極大方便。 

2 硬件設計與調試 

2.1  硬件設計

    硬件設計應注意如下要點:  

    (1)認真處理好復位和時鐘信號。  

    (2)在DSP電路中,對所有的輸入信號必須有明確的處理,不能懸浮或置之不理。  

    (3)模擬電路和數(shù)字電路獨立布線,最后單點連接電源和地。 

    (4)片外程序存儲器和數(shù)據(jù)存儲器應靠近DSP芯片放置,要合理布局,保證數(shù)據(jù)線和地址線長短基本一致(可參照最小用戶板或EVM板的布線)。 

    (5)關鍵部分建議布上地網(wǎng)。 

    在DSP硬件系統(tǒng)的印制電路板設計階段,關鍵是要使布線正確合理。布線正確一般都能做到,但要做到合理,則并不容易。DSP硬件系統(tǒng)中最易出現(xiàn)的問題是高頻干擾,因此在布線時應盡量使高頻線短而粗,且遠離易受干擾的信號線,如模擬信號線。此外,電源濾波、模擬線與數(shù)字線分離等也是不容忽視的。 

    設計并加工好印制電路板后就可以進入硬件調試階段。在這個階段,首先應對電路板進行細致的常規(guī)檢查,防止短路和斷路現(xiàn)象。加電后,應檢查晶體是否振蕩,復位是否正確可靠,并用示波器檢查DSP的CLKOUT1和CLKOUT2的信號是否正常,若正常則表明DSP本身基本正常。在做完這些基本檢查之后,就可以進行系統(tǒng)硬件調試了。 

2.2 硬件調試中應注意的問題 

2.2.1 保證電源的穩(wěn)定可靠

    在DSP硬件系統(tǒng)的調試過程中,應確保給實驗板供電的電源有好的恒壓恒流特性。因為在調試中要經(jīng)常對實驗板開斷電,若電源質量不好,則很可能在突然上電時因電壓陡升而燒壞芯片(TMS320F206首當其沖)。這樣既會造成經(jīng)濟損失(TMS320F206芯片較為昂貴),又將影響開發(fā)進度。因此,在調試初期應高度重視電源的選擇。 

2.2.2 對受損芯片的判斷

    實驗板上電運行時,要經(jīng)常查看各芯片的發(fā)熱情況,發(fā)現(xiàn)過熱現(xiàn)象應及時分析處理。當懷疑有芯片損壞而又難以確認時,可通過測量其對地電阻加以判斷。 

    筆者曾做過一塊實驗板,正常時檢測它的不帶電對地電阻為1MΩ左右;運行一段時間后,發(fā)現(xiàn)軟件調試窗口無法正常調入程序,再次檢測整板的對地電阻,發(fā)現(xiàn)已降到90kΩ。由此,懷疑有芯片受損。根據(jù)現(xiàn)象初步判定是TMS320F206的問題,采取以下措施加以判斷: 

    將TMS320F206的電源引腳與實驗板的電源線之間的連線割斷,再測量整板的對地電阻,發(fā)現(xiàn)電阻值(原為90kΩ)開始回升——判斷有可能是受損的TMS320F206拉垮了整板電阻;進一步檢測被損的TMS320F206芯片,其對地電阻僅為幾十kΩ,而正常的TMS320F206電阻約為2~3MΩ。由此斷定TMS320F206已被燒壞,更換芯片后,系統(tǒng)恢復正常。 

    當然,并非總能一次就判斷準確。若將懷疑的芯片割線后阻值仍未回升,說明該芯片沒有問題,可試著再割其它的芯片,直至找到癥結。做這項工作時,應耐心觀察、細致分析、準確判斷、及時總結。多做幾次后積累了一定經(jīng)驗,日后遇見類似問題就能很快找到解決方案。 

2.2.3 結合軟件檢查短路與虛焊

    TMS320F206為100引腳的TQFP(正方扁平)封裝;為追求開發(fā)板的小巧輕便,與此相應的外部程序存儲器和數(shù)據(jù)存儲器以及其它功能模塊也多采用表貼元件。對于這些引腳細密的貼片,由于多采用人工焊貼,短路和虛焊的情況是很難杜絕的。當實驗板剛從制板廠取出時,調試人員常會利用萬用表和針頭等工具對板子的焊貼工藝進行檢查,對于明顯的錯誤可以及時更正;但由于貼片引腳細密繁多,一些隱蔽的短路和虛焊情況很可能被忽略。此時,利用軟件調試的方法可以較容易地查出硬件上的錯誤。 

    筆者曾設計了一套利用TMS320F206控制56k調制解調芯片組進行異/同步數(shù)據(jù)傳輸?shù)膶嶋H系統(tǒng)。在軟硬件相結合的調試中,由于是劃分模塊進行調試的,出錯的芯片目標明確,一些遺漏的硬件錯誤很快暴露出來并得以解決。下面舉例加以說明。 

    現(xiàn)象一:用軟件調試器調入可執(zhí)行的輸出文件,即*.out文件,發(fā)現(xiàn)無論什么文件都調用失敗,就連開始的vector.h文件(中斷矢量標志定義文件)也變成了一些不相干的代碼。 

    ——根據(jù)經(jīng)驗判斷可能是TMS320F206有問題。再仔細復查實驗板上的DSP芯片,發(fā)現(xiàn)芯片上有兩個引腳發(fā)生了短路。排除故障后,程序調入成功。 

    現(xiàn)象二:用軟件調試器調入的文件局部出錯。例如,應該是SPLK # lk,dma(存儲長立即數(shù)到數(shù)據(jù)存儲器空間)的地方都變成了. word  xxxx。 

    ——初步判斷可能是數(shù)據(jù)存儲器或程序存儲器出了問題。再仔細復查實驗板上的相關芯片,最終發(fā)現(xiàn)有一片程序存儲器的接地引腳是虛焊。故障排除后,程序調入正確。 

    現(xiàn)象三:局部功能模塊不能實現(xiàn)。在本設計中,要求調制解調器上電后,先接受DSP發(fā)來的ATZ命令(調制解調器復位命令);若調制解調器正常復位,則會返回結果碼OK。在實際調試中,發(fā)現(xiàn)始終收不到正確的結果碼,而程序設計又沒有錯誤,因此考慮硬件方面。 

    ——該模塊涉及到的芯片是RC56D/SP(Conexant公司出品的56k調制解調芯片)。它包括一片微控制器MCU和一片數(shù)據(jù)泵MDP(分別為80引腳和100引腳的TQFP封裝),通過執(zhí)行固化在1Mbit(128K×8)RAM和2Mbit(256k×8)ROM/Flash ROM內的固件來完成操作[3]。對這幾片芯片仔細檢查,發(fā)現(xiàn)微控制器(MCU)有兩處引腳虛焊,排除故障后,調制解調器正常復位。 

2.3 軟件設計與調試

    哈佛結構、流水線操作、專用的硬件乘法器、特殊的DSP指令再加上集成電路的優(yōu)化設計,可使DSP芯片的指令周期達到幾十ns。快速的指令周期使得DSP芯片能夠實時實現(xiàn)許多DSP應用。然而在實際的程序設計中,由于DSP芯片的上述特點,程序員們常常會遇到許多意想不到的麻煩。這里,筆者將編程與調試中應注意的問題和技巧作一介紹。 

2.3.1 流水線沖突

    TMS320F206采用了深度為4級的流水線操作,它具有4個獨立的操作階段:取指令、譯碼、取操作數(shù)和執(zhí)行。由于4個操作階段是獨立的,因此這些操作可以交疊進行;在任意的指定周期內,1到4個不同的指令均可有效,各處于不同的完成階段。 

    由此可見,流水線沖突是不可避免的。一般情況下,當流水線發(fā)生沖突時,由DSP自動插入延遲解決。當無法自動解決時,需要程序員通過調整程序語句的次序或在程序中插入一定數(shù)量的NOP來解決。因此,若在調試時查不出代碼本身的問題,不妨試著在相關的位置插入幾個NOP指令。 

2.3.2 軟件等待狀態(tài)發(fā)生器

    為實現(xiàn)TMS320F206與慢速外部邏輯和存儲器的接口,等待狀態(tài)是十分必要的。當CPU對慢速存儲器或端口進行讀寫時,通過增加等待狀態(tài),可延長CPU等待外部存儲器或外部I/O端口的時間以便更好地響應。為此,CPU為每個等待狀態(tài)提供了1個額外的周期。為避免總線沖突,所有向外部地址的寫操作均需要至少2個周期。 

    在程序的調試過程中,我們常用設置斷點的方法判斷局部功能模塊能否實現(xiàn)。若發(fā)現(xiàn)程序在尚未到達斷點時就隨機地停止運行,或仿真窗口出現(xiàn)″Time out waiting for device″紅色告警字樣時,可優(yōu)先考慮調整等待狀態(tài)發(fā)生器控制寄存器(WSGR)的設置。 

    許多初學者在學習例程時發(fā)現(xiàn)其中的WSGR值均設為0000h(零等待狀態(tài)),就誤以為在任何情況下都可行,這是很不可取的。筆者在初次調試大型程序時,曾因為這個問題耗時多日;后來試著將WSGR值由0000h改為0002h就順利解決了(將片外低端程序空間的讀/寫等待狀態(tài)數(shù)設為2)。 

    下表顯示了等待狀態(tài)發(fā)生器控制寄存器(WSGR)的具體位設置:  

 

   

 

    說明:0=總讀為0;R=可讀;W=可寫;破折號后的值為WSGR的復位值。 

    第15~12位:保留位,總是為0。 

    第11~9位:ISWS-I/O空間等待狀態(tài)位,決定用于片外I/O空間的讀/寫等待狀態(tài)數(shù)(0~7)。 

    第8~6位:DSWS-數(shù)據(jù)空間等待狀態(tài)位,決定用于片外數(shù)據(jù)空間的讀/寫等待狀態(tài)數(shù)。 

    第5~3位:PSUWS-高端程序空間等待狀態(tài)位,決定用于片外高端程序空間的讀/寫等待狀態(tài)數(shù)。 

    第2~0位:PSLWS-低端程序空間等待狀態(tài)位,決定用于片外低端程序空間的讀/寫等待狀態(tài)數(shù)。 

    在具體應用中,程序員可根據(jù)實際用到的片外資源靈活調整WSGR相關位的值。 

2.3.3 有效利用片內閃存(Flash Memory)

    TMS320F206的一個顯著優(yōu)勢是具備32K片內閃速存儲器塊。它具有可擦除、可編程和非易失電源等特點。在復位期間,通過將MP/MC置為低電平可以選擇閃存。若未選之,則從片外存儲器開始執(zhí)行操作。 

    在利用JTAG進行硬件仿真時,有時會出現(xiàn)程序無法全速運行的情況。這時不要總是在程序上冥思苦想,可以開闊思路從別處著手。若確信程序流程沒有什么問題,不妨試著將程序寫入閃存運行。筆者曾遇到類似情況,程序燒入Flash運行后一切正常,經(jīng)分析可能是實驗板上的片外程序/數(shù)據(jù)存儲器的布線不夠規(guī)范。調整布線重新制板后,程序在硬仿真時也能全速運行了。 

    還有一種情況正好與之相反。程序在仿真窗口里可以正常運行,寫入Flash后卻無法運行了。在這種情況下,建議程序員在程序初始階段(如緊接著關中斷setc intm之后)加一小段延時(幾十ms,根據(jù)情況可以增減),可能會達到事半功倍的效果。 

    DSP技術的發(fā)展?jié)u趨成熟,DSP的應用日益廣泛;了解和掌握DSP技術,并應用DSP技術開發(fā)新一代高科技產(chǎn)品是使我國電子工業(yè)走向高技術密集型的一條重要途徑。通過本文,筆者總結了自己在DSP開發(fā)工作中的經(jīng)驗與教訓,希望能對讀者有所啟示。 

參考文獻

1 TMS320C2XX User’s Guide. Texas Instruments,1997 

2 張雄偉. DSP芯片的原理與應用.北京:電子工業(yè)出版社,2000 

3 RC56D Modem Device Sets Designer’s Guide. Conexant Systems. Inc, January 1999

此內容為AET網(wǎng)站原創(chuàng),未經(jīng)授權禁止轉載。
主站蜘蛛池模板: 国产三级在线 | 国产18视频| 一本色道久久综合狠狠躁 | 精品国产欧美一区二区最新 | 最近中文字幕免费在线看 | 日韩免费一区 | 亚洲成人网页 | xxxx成人| 在线亚洲日产一区二区 | 欧洲xxx| 男女午夜爽爽大片免费 | 在线免费观看黄色大片 | 国产一级一片免费播放视频 | 欧美日韩精品一区二区三区不卡 | 91久久亚洲最新一本 | 天天射天天干 | www在线视频 | 国产偷国产偷高清视频 | 国产精品亚洲欧美一区麻豆 | 午夜激情福利在线 | 亚洲欧美日本国产 | 欧美中文在线 | 国产天堂亚洲精品 | 国产精品丝袜视频 | 亚洲狠狠插 | 热99精品在线| 人人莫人人爽人人爽 | 精品午夜寂寞黄网站在线 | 天天操精品视频 | 亚洲国产天堂在线mv网站 | 色视频在线观看视频 | 日日噜噜噜夜夜爽爽狠狠 | 日本在线黄色网址 | 日本一区二区三区欧美在线观看 | 在线毛片免费 | 在线免费毛片 | 一个人看的免费视频www | 一区二区三区视频在线 | 日韩精品一区二区三区 在线观看 | 天天操天天爱天天干 | 视色在线 |