基于TMS320C5416的GPS解調(diào)器硬件平臺設(shè)計說明_第1頁
基于TMS320C5416的GPS解調(diào)器硬件平臺設(shè)計說明_第2頁
基于TMS320C5416的GPS解調(diào)器硬件平臺設(shè)計說明_第3頁
基于TMS320C5416的GPS解調(diào)器硬件平臺設(shè)計說明_第4頁
基于TMS320C5416的GPS解調(diào)器硬件平臺設(shè)計說明_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

陳秋沁:基于TMS320VC5416的GPS解調(diào)器硬件平臺設(shè)計.PAGE40.1緒論1.1課題研究背景從20世紀80年代第一片數(shù)字信號處理器<DSP:DigitalSignalProcessor>芯片誕生以來,DSP就以數(shù)字器件特有的穩(wěn)定性、可重復(fù)性、可大規(guī)模集成、尤其是可編程性和易于實現(xiàn)自適應(yīng)處理等特點,給數(shù)字信號處理技術(shù)的發(fā)展帶來巨大的機遇,使得信號處理手段更加靈活,功能更加強大。伴隨著微電子技術(shù)、數(shù)字信號處理技術(shù)的快速發(fā)展,數(shù)字信號處理器逐漸得到了日新月異的進步,在處理速度、運算精度、處理器的結(jié)構(gòu)、指令系統(tǒng)、指令編程等諸多方面都有較大的提高。DSP己經(jīng)滲透到消費、軍用、民用、商業(yè)等各個領(lǐng)域,以及人們生活的方方面面,成為許多電子系統(tǒng)的技術(shù)核心。目前,DSP產(chǎn)品正向高性能、低功耗、多功能、多領(lǐng)域等方向發(fā)展。在當(dāng)今眾多DSP生產(chǎn)廠家的中,最成功的當(dāng)數(shù)美國XX儀器公司<TexasInstruments簡稱TI>的一系列產(chǎn)品,其DSP市場份額占全世界份額近50%。目前TI公司的DSP產(chǎn)品中,C1x、C2x、C2xx、C5xx、C54x、C62x等系列是定點運算指令系統(tǒng)的DSPS<數(shù)字信號處理解決方案>;C3x、C4x、C67x等系列是浮點運算指令系統(tǒng)的DSPS;C8x等系列是多DSPS集成系統(tǒng);AV7100、AV7110等系列是用于視頻、音頻領(lǐng)域的專用數(shù)字壓縮產(chǎn)品。DSP作為可編程數(shù)字信號處理專用芯片是微型計算機發(fā)展的一個重要分支,是一種特殊結(jié)構(gòu)的微處理器。為了快速進行數(shù)字信號處理,DSP芯片還采用特殊的軟硬件結(jié)構(gòu)。總的來說,DSP器件的發(fā)展,要兼顧3P的因素,即性能<performance>、功耗<powerconsumption>和價格<price>。隨著VLSI技術(shù)的高速發(fā)展,現(xiàn)代DSP器件在價格顯著下降的同時,仍然保持著性能的不斷提升和單位運算量的功耗不斷降低。通過下面兩種方法實現(xiàn):是通過并行提升DSP芯片的性能傳統(tǒng)的DSP芯片通過采用乘加單元和改進的哈佛結(jié)構(gòu),使其運算能力大大超越了傳統(tǒng)的微處理器。一個合理的推論是:通過增加片上運算單元的個數(shù)以及相應(yīng)的連接這些運算單元的總線數(shù)目,就可以成倍地提升芯片的總體運算能力。當(dāng)然,這個推論有兩個前提條件必須滿足:首先是存儲器的帶寬必須能夠滿足由于總線數(shù)目增加所帶來的數(shù)據(jù)吞吐量的提高;另外,多個功單元并行工作所涉及的調(diào)度算法其復(fù)雜度必須是可實現(xiàn)的。<2>存儲器構(gòu)架的變化隨著芯片主頻的不斷攀升,存儲器的訪問速度日益成為系統(tǒng)性能提升的瓶頸。在現(xiàn)有的制造工藝下,片上存儲單元的增加將導(dǎo)致數(shù)據(jù)線負載電容的增加,影響到數(shù)據(jù)線上信號的開關(guān)時間,這意味著片上高速存儲單元的增加將是十分有限的。為了解決存儲器速度與CPU內(nèi)核速度不匹配的問題,高性能的CPU普遍采用Cache<高速緩存>機制,新的DSP芯片也開始采用這種結(jié)構(gòu)。在很多情況下,采用這種多級緩存的架構(gòu)可以達到采用完全片上存儲器結(jié)構(gòu)的系統(tǒng)約80%的執(zhí)行效率。但是,采用Cache機制也在一定程度上增加了系統(tǒng)執(zhí)行時間的不確定性,其對于實時系統(tǒng)的影響需要認真地評估分析。Cache對于DSP芯片還是一個比較新的概念。所以需要深入地了解Cache的機制,相應(yīng)地對算法的數(shù)據(jù)結(jié)構(gòu)、處理流程以及程序結(jié)構(gòu)等做出調(diào)整,以提高Cache的命中率,從而更有效地發(fā)揮Cache的作用。<3>SoC的趨勢對于特定的終端應(yīng)用,SoC<系統(tǒng)芯片>可以兼顧體積、功耗和成本等諸多因素,因而逐漸成為芯片設(shè)計的主流。DSP器件也逐漸從傳統(tǒng)的通用型處理器中分離出更多的直接面向特定應(yīng)用的SoC器件。這些SoC器件多采用DSP+ARM的雙核結(jié)構(gòu),既可以滿足核心算法的實現(xiàn)需求,又能夠滿足網(wǎng)絡(luò)傳輸和用戶界面等需求。同時,越來越多的專用接口以及協(xié)處理器被集成到芯片中用戶只需添加極少的外部芯片,即可構(gòu)成一個完整的應(yīng)用系統(tǒng)。如TI推出的面向第3代無線通信終端的OMAP1510芯片等,面向數(shù)碼相機的DM270芯片等,面向?qū)I(yè)音頻設(shè)備的DA610芯片等,面向媒體處理的DM642芯片等。1.2TI系DSP芯片現(xiàn)狀TI首席戰(zhàn)略科學(xué)家GeneAFrantz在北京的TI亞洲開發(fā)者大會上宣布:"DSP的應(yīng)用才剛剛開始,未來將遍及我們生活的各個角落"。認為DSP在消費電子<例如語音識別>與醫(yī)學(xué)領(lǐng)域還有巨大的發(fā)展?jié)摿Α?G技術(shù)和Internet的快速發(fā)展,要求處理器的速度越來越高,體積越來越小,DSP的發(fā)展正好能滿足這一發(fā)展的要求。因為傳統(tǒng)的其它處理器都有不同的缺陷:MCU的速度較慢;CPU體積較大,功耗較高;嵌入CPU的成本較高。DSP的發(fā)展,使得在許多速度要求較高,算法較復(fù)雜的場合,取代MCU或其它處理器,而成本有可能更低。下面介紹說明DSP的發(fā)展動態(tài)<1>TMS320C2000系列包括C24x和C28x系列。TI建議使用LF24xx系列替代C24x系列。因為LF24xx系列的價格比C24x便宜,性能高于C24x,而且LF24xx具有加密功能。而C28x系列主要用于大存儲設(shè)備管理,高性能的控制場合。<2>TMS320C3x系列包括C3x和VC33,主要推薦使用VC33。C3x系列是TI浮點DSP的基礎(chǔ),目前TI已而對其限產(chǎn)。<3>TMS320C5x系列已不推薦使用,建議使用C24x或C5000系列替代。<4>TMS320C5000系列包括C54x和C55x系列。其中VC54xx還不斷有新的器件出現(xiàn),如:TMS320VC547〔1DSP+ARM7。C55x系列功耗為VC54xx的1/6,性能為VC54xx的5倍,是一個正在發(fā)展的系列。C5000系列是目前TIDSP的主流DSP,它涵蓋了從低檔到中高檔的應(yīng)用領(lǐng)域,也是目前用戶最多的系列,在本次設(shè)計中,我選用的就是C54xx系列的TMS320VC5416數(shù)字信號處理芯片。<5>TMS320C6000系列包括C62xx、C67xx和C64xx。此系列是TI的高檔DSP系列。其中C62xx系列是定點的DSP,系列芯片種類較豐富,是主要的應(yīng)用系列。C67xx系列是浮點的DSP,用于需要高速浮點處理的領(lǐng)域。C64xx系列是新發(fā)展,性能是C62xx的10倍。<6>TMS320C8x系列包括C80和C82,是TI公司推出的第一款多處理器芯片,而且第一次使用VLIW結(jié)構(gòu)<指令級的平行度>,目前亦為限產(chǎn)階段。<7>OMAP系列是TI專門用于多媒體領(lǐng)域的芯片,它是C55+ARM9,性能卓越,非常適合于手持設(shè)備、Internet終端等多媒體應(yīng)用。隨著技術(shù)的進步,在DSP領(lǐng)域會出現(xiàn)一些新的概念,比如DSP核的概念,DSP核不是一個獨立的產(chǎn)品,而是DSP芯片上的運算引擎,用戶可以在芯核的基礎(chǔ)上,擴展外圍電路,開發(fā)出完整的DSP器件。DSP以芯核的方式進入市場,這樣我們就可以根據(jù)自己的需求設(shè)計DSP,適用性強,而且減少了浪費。隨著DSP器件的發(fā)展,DSP系統(tǒng)開發(fā)的主要工作已經(jīng)轉(zhuǎn)向軟件開發(fā),軟件開發(fā)將占據(jù)約80%的工作量。另外,在目前的現(xiàn)狀條件下,算法是核心知識產(chǎn)權(quán)的主要體現(xiàn),也是產(chǎn)品競爭力的主要因素。所以算法絕對是今后DSP應(yīng)用的核心。而做硬件的最終目的是不做硬件,DSP器件是DSP算法實現(xiàn)的重要手段,只有了解硬件系統(tǒng)的設(shè)計,才可以更好的進行軟件的開發(fā)。DSP技術(shù)的發(fā)展?jié)u趨成熟,DSP的應(yīng)用日益廣泛了解和掌握DSP技術(shù),并應(yīng)用DSP技術(shù)開發(fā)新一代高科技產(chǎn)品是電子工業(yè)走向高技術(shù)密集型的一條重要途徑,因此學(xué)習(xí)和研究相關(guān)知識是很重要的。1.3本論文研究內(nèi)容本課題是基于GPS數(shù)據(jù)解調(diào)的硬件系統(tǒng)平臺的基本方案設(shè)計〔電源設(shè)計、時鐘設(shè)計、復(fù)位電路設(shè)計、串口設(shè)計、DSP存儲器和I/O口的擴展-鍵盤及顯示器等及總體方案設(shè)計,最終基于TMS320C5416的GPS解調(diào)器硬件平臺得以實現(xiàn)。具體論文結(jié)構(gòu)如下:第一章主要描述了DSP的國內(nèi)外發(fā)展現(xiàn)狀。第二章介紹了C54xx系列芯片的基本特點,主要對TMS320VC5416的結(jié)構(gòu)特點做了詳細的描述。最后介紹了在硬件調(diào)試中必須要用到的開發(fā)工具CCS和所要解調(diào)的GPS數(shù)據(jù)格式。第三章是描述一個硬件系統(tǒng)應(yīng)如何設(shè)計和實現(xiàn),首先是要明確做的內(nèi)容,其次,根據(jù)課題制定硬件總體方案,既搭建了實現(xiàn)GPS解調(diào)的硬件平臺。第四章是DSP的基本電路〔仿真口、復(fù)位電路、時鐘、電源電路的電路設(shè)計實現(xiàn)。第五章是對DSP的關(guān)鍵模塊的芯片選型及電路設(shè)計原理及接口電路實現(xiàn),包括存儲器擴展模塊、可編程邏輯器件、I/O擴展模塊〔鍵盤和顯示器。第六章是介紹DSP和PC機的串行通信電路的原理設(shè)計和接口電路實現(xiàn),之后介紹了三種串行通信方式的方案設(shè)計及實現(xiàn)原理,綜合比較之后得到的最佳方案,即通過UART芯片實現(xiàn)和PC機的異步串行通信實現(xiàn)。第七章則是前期工作總結(jié)和后期工作展望,首先是介紹完成的工作和學(xué)到的知識,最后就是對本次課題后期可以擴展的功能做了簡單的描述。2DSP與GPS概述2.1TMS320C54x系列芯片特點TMS320C54x是TI公司1996年推出的新一代16位定點DSP產(chǎn)品,它采用先進的哈佛結(jié)構(gòu),片內(nèi)集成8條總線<1條程序存儲器總線、3條數(shù)據(jù)存儲器總線和4條地址總線>、在片存儲器和在片復(fù)用外設(shè)。速度由30~532MIPS不等。是為實現(xiàn)低功耗、高性能而設(shè)計的定點DSP芯片,該系列芯片的內(nèi)部結(jié)構(gòu)〔圖2.1及指令系統(tǒng)都是全新設(shè)計的,它的主要特點如下:運算速度快。VC5416指令周期為6.25ns。優(yōu)化的CPU結(jié)構(gòu)。它內(nèi)部有1個40位的算術(shù)邏輯單元,2個獨立的40位的累加器,1個17x17的乘法器和1個40位的桶形移位器,4條內(nèi)部總線和2個地址產(chǎn)生器。另外,內(nèi)部還集成了維特比譯碼器,用于提高維特比編譯碼的速度。低功耗方式。TMS320C5x的主要特點是低功耗,可以在3.3V或2.7V工作,有三中種低功耗方式:IDLE1、IDLE2、IDLE3,可以節(jié)省DSP的功耗。智能外設(shè)。除了標(biāo)準的串行口和時分復(fù)用<TDM>串行口外,還提供了自動緩沖串行口BSP<auto-BufferedSerialPort>和與外部處理器通信的HPI<HostPortInterface>接口。BSP可提供2K字數(shù)據(jù)緩沖的讀寫能力,降低處理器的額外開銷,當(dāng)指令周期是6.25ns時,BSP的最大數(shù)據(jù)吞吐量為160Mbit/S,即使在IDLE方式下,BSP也可以全速工作。而且HPI可以與外部標(biāo)準的微處理器直接接口。圖2.1TMS320C54x的內(nèi)部結(jié)構(gòu)框圖TMS320VC5416〔在后面的介紹均使用簡稱VC5416處理器在本系列中處于先進水平。它具有運算速度快,內(nèi)部存儲空間大,外部接口性能好等優(yōu)點。所以設(shè)計種選擇了技術(shù)上比較先進,價格又較便宜的VC5416作為硬件開發(fā)對象。下面我結(jié)合VC5416的實際情況,簡單介紹該芯片的體系結(jié)構(gòu)。2.2TMS320VC5416的體系結(jié)構(gòu)圖2.1TMS320VC5416的引腳圖VC5416共有144個引腳,其中有23根地址線A0~A22,16根數(shù)據(jù)線D0~D15,4個外部可屏蔽引腳INT0~INT3和一個不可屏蔽中斷引腳BIO叫,剩下的引腳則分成以下幾類:存儲器控制引腳,時鐘/晶振引腳,多通道緩沖串口引腳,主機接口通訊引腳,電源引腳,初始化和復(fù)位引腳,通用輸入/輸出引腳,以及用于測試的IEEE1149.1標(biāo)準JTAG口〔IEEE1149.1對JTAG接口標(biāo)準作了修正,為5線接口。在片JTAG接口為用戶對DSP的仿真提供了更便捷的串行工作方式。。和通用的微處理器相比,DSP芯片的硬件資源主要用于DSP的處理功能,因此I/O引腳數(shù)相對較小〔各引腳的具體定義在附錄英文翻譯之中。一:總線結(jié)構(gòu)VC5416體系結(jié)構(gòu)由8條主要的16位總線<4條程序/數(shù)據(jù)總線和4地址總線>構(gòu)成:程序總線<PB>:從程序存儲器裝載指令碼和立即操作數(shù)。3條數(shù)據(jù)總線<CB,DB,EB>:負責(zé)將片上的各個不同的部分相互連接,例如CPU,數(shù)據(jù)地址產(chǎn)生邏輯,程序地址產(chǎn)生邏輯,片上外設(shè)和數(shù)據(jù)存儲器。其中,CB和DB傳送從數(shù)據(jù)存儲器讀取的操作數(shù)。EB傳送寫到存儲器的數(shù)據(jù)。4條地址總線<PAB,CAB,DAB,EAB>:負責(zé)裝載指令執(zhí)行所需要的地址。PB能加載保存于程序存儲空間的操作數(shù)<如系數(shù)表:>到乘法器和加法器進行乘一加操作或利用數(shù)據(jù)移動指令<MVPD和READA>把操作數(shù)移動到數(shù)據(jù)存儲空間的目的地址中。這種性能,與雙操作數(shù)讀取的特性一起,使VC5416支持單周期三操作數(shù)指令。VC5416還有一條雙向的片上總線用于訪問片上外設(shè)。這條總線輪流使用DB和EB與CPU連接。二:內(nèi)部存儲器VC5416存儲器被組織成三個獨立的可選擇的空間:程序存儲空間、數(shù)據(jù)存儲空間和1/0空間。大小都是64K,總共是192K大小。包括隨機存儲器<RAM>和只讀存儲器<ROM>。其中,RAM是雙存取訪問RAM<DARAM>。DARAM被組織在一些塊上,因為每個DARAM塊能夠在單機器周期中被訪問兩次,結(jié)合并行的體系結(jié)構(gòu),使得VC5416得以在一個指定的周期內(nèi)完成4個并發(fā)的存儲器操作:一個取指操作、兩個數(shù)據(jù)讀操作和一個數(shù)據(jù)寫操作。DARAM總是被映射到數(shù)據(jù)存儲空間上,也可被映射進程序存儲空間用于保存程序代碼。VC5416的26個CPU寄存器和片上外設(shè)寄存器被映射在數(shù)據(jù)存儲空間。下VC5416內(nèi)存分配情況如下圖所示:片內(nèi)DARAM程序存儲器地址范圍是:DARAM0:0080h–1FFFh;DARAM1:2000h–3FFFhDARAM2:4000h–5FFFh;DARAM3:6000h–7FFFhDARAM4:8000h–9FFFh;DARAM5:A000h–BFFFhDARAM6:C000h–DFFFh;DARAM7:E000h–FFFFh圖2.1TMS320VC5416內(nèi)存分配圖從圖中可以看出:VC5416提供了三個控制位用于在存儲空間中配置片上存儲器,利用這三個控制位可以設(shè)置片上存儲器怎樣配置到不同存儲空間,指定是配置到程序存儲空間還是數(shù)據(jù)存儲空間。以上通過設(shè)置處理器模式狀態(tài)寄存器<PMST>中的狀態(tài)位,可以進行調(diào)整。MP/MC位:當(dāng)MP/MC=1時,禁止片上ROM配置到VC5416的程序存儲空間中,即微處理器模式;當(dāng)MP/MC=0時,允許片上ROM配置到VC5416的程序存儲空間中,即微計算機模式。OVYL位:當(dāng)OVYL=1時,片上RAM配置到程序和數(shù)據(jù)存儲空間中;當(dāng)OVYL=0時,片上RAM僅配置到數(shù)據(jù)存儲空間。DROM位:當(dāng)DROM=1時,片上ROM配置到程序和數(shù)據(jù)存儲空間。當(dāng)DROM=O時,片上ROM不配置到數(shù)據(jù)存儲空間。DROM與MP/MC狀態(tài)無關(guān)。1:程序存儲空間當(dāng)芯片復(fù)位時,復(fù)位和中斷向量分配在FF80h開始的程序存儲空間,VC5416也允許中斷向量表重定位到任意一個128字的邊界上,這讓使用者可以將中斷向量表從自舉ROM中移出來,然后再從存儲器映射中移去ROM。片內(nèi)ROM有128字是用于器件測試的代碼<下表2.1中的保留段>,其地址是程序空間的OXFF00h到OXFF7Fh,在掩膜時應(yīng)避開這段區(qū)間。在VC5416片上的ROM中,固化有以下內(nèi)容:完成從串口、外部存儲器、UO端口或主機接口進行自舉加載功能的程序代碼;256個字的p率擴展表;256個字的A率擴展表;256個字的正弦表;256個字的A率擴展表;256個字的正弦表;中斷向量表。表2.1片上ROM分配表其中,片上ROM中固化的sine表,在程序中有著更廣泛的應(yīng)用價值。VC5416利用頁擴展的方式可以擴展程序存儲器,最多達8MB。為了實現(xiàn)頁擴展,VC5416提供了一些增強的特性:<1>23條地址線,可擴展8M的程序存儲空間;<2>一個額外的存儲器映射寄存器<外部地址擴展寄存器>擴展程序計數(shù)器XPC,初始化時XPC為0;<3>6條額外的指令,用于尋址擴展的程序存儲空間。TMS320VC5416有128頁存儲空間,每頁64K。當(dāng)片上RAM配置到程序存儲空間后,擴展程序存儲器的所有頁被分為兩個部分:共享部分和獨立部分。共享部分在任何一頁都可以訪問,獨立部分則僅在特定頁中訪問。當(dāng)片上ROM可以訪問時,ROM配置到程序空間的第0頁,在其他頁中不能訪問片上ROM。芯片通過XPC的值來訪問程序存儲器的各個頁,XPC作為存儲器映射寄存器被放到數(shù)據(jù)存儲器的OO1Eh處。擴展程序存儲器分配詳見下圖:片內(nèi)DARAM程序存儲器地址范圍是:DARAM4:018000h–019FFFh;DARAM5:01A000h–01BFFFhDARAM6:01C000h–01DFFFh;DARAM7:01E000h–01FFFFh片內(nèi)SARAM程序存儲器地址范圍是:SARAM0:028000h–029FFFh;SARAM1:02A000h–02BFFFhSARAM2:02C000h–02DFFFh;SARAM3:02E000h–02FFFFhSARAM4:038000h–039FFFh;SARAM5:03A000h–03BFFFhSARAM6:03C000h–03DFFFh;SARAM7:03E000h–03FFFFh圖2.2擴展程序存儲器的分配2:數(shù)據(jù)存儲空間VC5416可以尋址64K的數(shù)據(jù)存儲空間。片上的ROM、雙存取RAM<DARAM>可以通過軟件配置到數(shù)據(jù)存儲空間中,芯片在訪問存儲器時會自動訪問這些單元,當(dāng)DAGEN<數(shù)據(jù)地址產(chǎn)生器>產(chǎn)生了不在片上存儲器的地址時,會自動產(chǎn)生一個外部總線操作。一般,將片上ROM配置到數(shù)據(jù)存儲空間,需要修改PMST寄存器的DROM位,來允許將片上ROM當(dāng)作數(shù)據(jù)存儲器訪問。VC5416的數(shù)據(jù)存儲器第0頁的O000h一O07Fh存放著存儲器映射寄存器,內(nèi)容包括:無等待狀態(tài)訪問的CPU寄存器<共26個>。片上外設(shè)的控制和數(shù)據(jù)寄存器,存放在OO2Oh一005Fh的地址中。用于補充的大個字的DARAM,這就不必將較大的RAM塊分成小碎片。3:I/O空間VC5416提供了64K的I/O空間,尋址范圍是00000H一OFFFFH,作用是與片外設(shè)備連接。PORTR和PORTW兩條指令可以訪問這段存儲空間。它適用于訪問映射到1/0空間的設(shè)備而不是存儲器。4:數(shù)據(jù)存儲器尋址VC5416提供了七種基本的尋址方式:立即尋址、絕對尋址、累加器尋址、直接尋址、間接尋址、存儲器映射寄存器尋址、堆棧尋址。5:程序存儲器尋址PC存器一般用于程序存儲器尋址,由程序存儲器地址產(chǎn)生邏輯<APGEN>加載。大多數(shù)情況下,APGEN在取指之后連續(xù)增加PC值,但當(dāng)遇到非順序的操作,如:跳轉(zhuǎn)、調(diào)用、返回、條件操作、指令重復(fù)、復(fù)位和中斷時,PC值產(chǎn)生非連續(xù)的變化。6:流水線操作VC5416的流水線一共有6級。流水線的每一級都是獨立運行的,一個周期可以由六條指令處于流水線上的不同階段。當(dāng)PC值出現(xiàn)非連續(xù)的變化時,如跳轉(zhuǎn)、調(diào)用和返回,一條或多條流水線上的指令會被放棄。7:片上外設(shè)C54x包含有結(jié)構(gòu)相同的CPU,但是CPU連接不同的片上外設(shè),從下面的功能框圖中可以看出VC5416包括的外設(shè)有:通用目的輸出引腳<BIO和XF>、軟件等待狀態(tài)發(fā)生器、可編程存儲器切換邏輯、并行口、硬件定時器、3個多通道緩沖串行口McBSP:圖2.3TMS320VC5416的功能框圖:8:外部總線接口VC5416能尋址64K的數(shù)據(jù)存儲器、64K的程序存儲器<可外部擴展>和64K的I/0空間。任何對外部存儲器或I/O設(shè)備的訪問都要使用外部總線接口。外部總線接口的READY引腳和片上的軟件等待狀態(tài)發(fā)生器保證處理器能夠與各種速度不同的外部設(shè)備連接。外部總線接口的HOLD方式允許其他設(shè)備占用VC5416的外部總線。這樣,外部設(shè)備就可以訪問VC5416的程序存儲器、數(shù)據(jù)存儲器和I/O空間上的資源。9:IEEE1149.1標(biāo)準的邏輯掃描電路具有符合IEEE1149.1標(biāo)準的在片JATG接口,用于開發(fā)應(yīng)用系統(tǒng)芯片的仿真和測試。2.3TMS320VC5416的開發(fā)工具DSP開發(fā)工具包括代碼生成和代碼調(diào)試工具兩大類。代碼生成工具的作用是將用C或匯編語言編寫的DSP程序編譯、匯編并鏈接成為可執(zhí)行的DSP程序;而代碼調(diào)試工具的作用是對DSP程序及系統(tǒng)進行調(diào)試,使其能夠達到設(shè)計目標(biāo)。CCS是TI公司開發(fā)的一個開放的和具有強大集成能力的DSP系統(tǒng)開發(fā)環(huán)境,該套開發(fā)環(huán)境及代碼生成工具和代碼調(diào)試工具為一體,能完成DSP系統(tǒng)開發(fā)過程的各個環(huán)節(jié),它有先進的開發(fā)工具組成直觀的系統(tǒng),可大幅度減少DSP開發(fā)時間。同時,它包括了高級的編碼工具以及可供第三方接入的開放式結(jié)構(gòu)。CCS由c編譯器、調(diào)試軟件及相關(guān)插件組成。在使用過程中,我們常常會用到CCS的以下幾個特點:集成可視化代碼編輯界面,可以方便地直接編寫C、匯編、.h文件、.cmd文件等;集成代碼生成工具,包括匯編器、優(yōu)化的C編譯器和鏈接器等;具有完整的基本調(diào)試工具,可以載入執(zhí)行文件<.out>,查看寄存器窗、存儲器窗口;變量窗口、反匯編窗口等,支持在C源代碼級進行調(diào)試;斷點工具,支持硬件斷點、數(shù)據(jù)空間讀/寫斷點、條件斷點等;探針工具,用于進行仿真,數(shù)據(jù)監(jiān)視;剖析工具,用于評估代碼執(zhí)行的時間。CCS是開放的軟件平臺,它可以支持不同的硬件接口,因此在此要注意的是不同的硬件接口必須通過標(biāo)準的Driver同CCS連接。鑒于此,當(dāng)要用CCS軟件調(diào)試硬件時,必須根據(jù)自己所選用的仿真器先配置好相關(guān)的參數(shù),這樣才可以對目標(biāo)DSP進行各種調(diào)試。2.4GPS概述NMEA協(xié)議是為了在不同的GPS〔全球定位系統(tǒng)導(dǎo)航設(shè)備中建立統(tǒng)一的BTCM〔海事無線電技術(shù)委員會標(biāo)準,由美國國家海洋電子協(xié)會〔NMEA-TheNationalMarineElectronicsAssociation制定的一套通訊協(xié)議。GPS接收機根據(jù)NMEA-0183協(xié)議的標(biāo)準規(guī)范,將位置、速度等信息通過串口傳送到PC機、PDA等設(shè)備。NMEA-0183協(xié)議是GPS接收機應(yīng)當(dāng)遵守的標(biāo)準協(xié)議,也是目前GPS接收機上使用最廣泛的協(xié)議,大多數(shù)常見的GPS接收機、GPS數(shù)據(jù)處理軟件、導(dǎo)航軟件都遵守或者至少兼容這個協(xié)議。NMEA-0183協(xié)議定義的語句非常多,但是常用的或者說兼容性最廣的語句只有$GPGGA、$GPGSA、$GPGSV、$GPRMC、$GPVTG、$GPGLL等。下面給出這些常用NMEA-0183語句中的$GPGGA的字段定義解釋。$GPGGA$GPGGA,092204.999,4250.5589,S,14718.5084,E,1,04,24.4,19.7,M,,,,0000*1F字段0:$GPGGA,語句ID,表明該語句為GlobalPositioningSystemFixData〔GGAGPS定位信息字段1:UTC時間,hhmmss.sss,時分秒格式字段2:緯度ddmm.mmmm,度分格式〔前導(dǎo)位數(shù)不足則補0字段3:緯度N〔北緯或S〔南緯字段4:經(jīng)度dddmm.mmmm,度分格式〔前導(dǎo)位數(shù)不足則補0字段5:經(jīng)度E〔東經(jīng)或W〔西經(jīng)字段6:GPS狀態(tài),0=未定位,1=非差分定位,2=差分定位,3=無效PPS,6=正在估算字段7:正在使用的衛(wèi)星數(shù)量〔00-12〔前導(dǎo)位數(shù)不足則補0字段8:HDOP水平精度因子〔0.5-99.9字段9:海拔高度〔-9999.9-99999.9字段10:地球橢球面相對大地水準面的高度字段11:差分時間〔從最近一次接收到差分信號開始的秒數(shù),如果不是差分定位將為空字段12:差分站ID號0000-1023〔前導(dǎo)位數(shù)不足則補0,如果不是差分定位將為空字段13:校驗值3基于TMS320C5416的GPS解調(diào)器硬件平臺搭建3.1硬件系統(tǒng)設(shè)計第一步:確定硬件實現(xiàn)方案通常在設(shè)計初要考慮系統(tǒng)性能指標(biāo)〔明確自己做什么,所設(shè)計的系統(tǒng)要實現(xiàn)怎樣的功能、工期〔考慮可能遇到的問題,計算出大約需要多長時間、成本〔能不能提供設(shè)計所需要的器件、體積和功耗核算等因素的基礎(chǔ)上,綜合的考慮其可行性,從而選擇系統(tǒng)的最優(yōu)硬件實現(xiàn)方案。第二步:器件的選擇設(shè)計硬件系統(tǒng)首先要考慮的就是選擇什么樣的DSP處理芯片芯片,再就是選擇外圍芯片,最基本的是存儲器、電源、邏輯控制器件、通信、人機接口〔鍵盤、顯示器、總線等基本外設(shè)。<1>DSP芯片的選擇首先要根據(jù)系統(tǒng)對運算量的需求來選擇;其次要根據(jù)系統(tǒng)所應(yīng)用領(lǐng)域來選擇合適的DSP芯片;最后要根據(jù)DSP的片上資源、價格、外設(shè)配置以及與其他元部件的配套性等因素來選擇。<2>存儲器的選擇常用的存儲器有SRAM、EPROM、E2PROM和FLASH等。一般我們是利用DSP的擴展接口進行數(shù)據(jù)存儲器、程序存儲器和I/O空間的配置。在設(shè)計時要考慮存儲器映射地址、存儲器容量和存儲器速度等??梢愿鶕?jù)工作頻率、存儲容量、位長<8/16/32位>、接口方式<串行還是并行>、工作電壓<5V/3V>等來選擇。<3>邏輯控制器件的選擇系統(tǒng)的邏輯控制通常是用可編程邏輯器件來實現(xiàn)。首先確定是采用CPLD還是FPGA;其次根據(jù)自己的特長和公司芯片的特點選擇哪家公司的哪個系列的產(chǎn)品;最后還要根據(jù)DSP的頻率來選擇所使用的邏輯控制器件。<4>通信器件的選擇通常系統(tǒng)都要求有通信接口。首先要根據(jù)系統(tǒng)對通信速率的要求來選擇通信方式。然后根據(jù)通信方式來選擇通信器件。一般串行口只能達到19kb/s,而并行口可達到1Mb/s以上,若要求過高可考慮通過總線進行通信;<5>人機接口常用的人機接口主要有鍵盤和顯示器。通過與其他芯片通信與DSP芯片直接構(gòu)成。<6>電源的選擇主要考慮電壓的高低和電流的大小。既要滿足電壓的匹配,又要滿足電流容量的要求。第三步:原理圖設(shè)計,原理圖設(shè)計包括:<1>系統(tǒng)結(jié)構(gòu)設(shè)計:可分為單DSP結(jié)構(gòu)和多DSP結(jié)構(gòu)、并行結(jié)構(gòu)和串行結(jié)構(gòu)、獨立的DSP結(jié)構(gòu)還是DSP/MCU混合結(jié)構(gòu)等,當(dāng)然在本系統(tǒng)中,由于運算量不是很大,一個DSP〔TMS320VC5416芯片就足夠了;<2>存儲器的設(shè)計:是利用DSP的擴展接口來進行數(shù)據(jù)存儲器、程序存儲器和I/O空間的配置。在設(shè)計時主要要考慮的是存儲器映射地址、存儲器容量和存儲器速度等;<3>通信接口的設(shè)計;<4>電源和時鐘電路的設(shè)計;從第三步開始就進入系統(tǒng)的綜合。在原理圖設(shè)計階段必須清楚地了解器件的特性、使用方法和系統(tǒng)的開發(fā),必要時可對單元電路進行功能仿真,。第四步:PCB設(shè)計PCB圖的設(shè)計要求我們既要熟悉系統(tǒng)的工作原理,還要清楚布線工藝和系統(tǒng)結(jié)構(gòu)設(shè)計。第五步:硬件調(diào)試通過前面的一章,就可以看出系統(tǒng)中選用的處理芯片是TMS320VC5416。由于上面已重點的介紹了其功能特點,這里我就不對其在做過多的描述了,下面就要對其他的外圍器件進行選擇了。3.2硬件系統(tǒng)平臺搭建本課題是基于GPS解調(diào)器的硬件設(shè)計,其數(shù)據(jù)流圖如下圖所示:圖3.1解調(diào)GPS數(shù)據(jù)的數(shù)據(jù)流圖基于上面介紹的數(shù)據(jù)流圖,和本章第一小結(jié)的可以看出,設(shè)計本系統(tǒng)的步驟如下:首先要確定的是DSP芯片的選型,基于第二章的介紹系統(tǒng)選擇的的16位的定點數(shù)字信號處理器TMS320VC5416。其次是外圍器件的選型。首先是存儲器的選擇,由于VC5416的內(nèi)部存儲容量很小,所以需要外掛存儲器擴展存儲空間,這里選用的是可在線編程的FLASH存儲器。再就是可編程邏輯器件的選擇,由于DSP的I/O管腳很少,還有系統(tǒng)對外設(shè)的控制很簡單,所以選用CPLD來擴展其I/O口,當(dāng)然CPLD也還有其它的功能,這在第5章有很詳細的介紹。PC機和DSP進行通信時,要考慮電平轉(zhuǎn)換和串并轉(zhuǎn)換,所以需要MAX232和UART芯片各一塊。當(dāng)然UART需要CPLD譯碼產(chǎn)生片選信號和讀寫信號。系統(tǒng)中人機接口還應(yīng)有有鍵盤和顯示器。最后要考慮的是電源芯片的選型和電路的設(shè)計根據(jù)上面的分析,可得實現(xiàn)GPS數(shù)據(jù)解調(diào)的硬件系統(tǒng)實現(xiàn)主框圖如下圖所示:LCDLCDFLASHMAX232UART5416FLASHMAX232UART5416RS232RS232CPLDCPLD硬件復(fù)位鍵硬件復(fù)位鍵POWERKEYPOWERKEY5V電源5V電源圖3.2系統(tǒng)硬件實現(xiàn)電路總框圖從上圖我們可以看出數(shù)據(jù)流通過串口進入數(shù)字處理芯片TMS320VC5416,根據(jù)軟件編程實現(xiàn)GPS數(shù)據(jù)解調(diào),之后從顯示器輸出解調(diào)后的定位信息。3.3本章小結(jié)在對DSP系統(tǒng)的硬件進行設(shè)計的過程中,在資源組織和設(shè)計思路上都和一般的CPU和MCU有所不同。本章首先介紹硬件設(shè)計的基本流程。之后根據(jù)GPS數(shù)據(jù)解調(diào)的數(shù)據(jù)流圖實現(xiàn)的系統(tǒng)硬件平臺搭建,并確定了實現(xiàn)這個系統(tǒng)的重要的幾個外設(shè)模塊。4DSP基本電路設(shè)計4.1仿真口設(shè)計仿真器采用邊界掃描技術(shù)和DSP芯片通過JTAG口相連接,實現(xiàn)了主機對DSP芯片的完全檢測和控制。JTAG口提供給用戶以使用仿真器下載程序的方法。上電時應(yīng)先經(jīng)JTAG接口連接仿真器,再加載5V電源,其接口如圖4.1所示:圖4.1VC5416的JTAG的接線示意圖使用仿真器時要注意:Emu0,Emu1上拉。TCK的頻率應(yīng)該為10M。PD腳為3.3V供電,但是仿真器上需要5V電壓供電,所以仿真器盒上需要單獨供電。表3.1JTAG的引腳定義JTAG-1TMSJTAG-2TRSTJTAG-3TDIJTAG-4GNDJTAG-5PD〔+5VJTAG-7TDOJTAG-8GNDJTAG-9TCK_RETJTAG-10GNDJTAG-11TCKJTAG-12GNDJTAG-13EMU0JTAG-14EMU14.2復(fù)位電路設(shè)計上面提到,TMS320VC5416的時鐘頻率是DSP系統(tǒng)的時鐘頻率比較高的,在運行時極有可能產(chǎn)生干擾和被干擾的現(xiàn)象,因此需要添加復(fù)位電路。C5416的復(fù)位輸入引腳RS為處理器提供了一種硬件初始化的方法,它是一種不可屏蔽的外部中斷,可在任何時候?qū)5416進行復(fù)位。系統(tǒng)上電后,RS引腳應(yīng)至少保持5個時鐘周期穩(wěn)定的低電平,來確保數(shù)據(jù)、地址和控制線的正確配置。復(fù)位后<RS回到高電平>,CPU從程序存儲器的FF80H單元取指,并開始執(zhí)行程序。C5416的復(fù)位分為軟件復(fù)位和硬件復(fù)位。軟件復(fù)位:是通過執(zhí)行指令實現(xiàn)芯片的復(fù)位。硬件復(fù)位:是通過硬件電路實現(xiàn)復(fù)位。對于復(fù)位電路的設(shè)計,一方面應(yīng)確保復(fù)位低電平時間足夠長〔一般需要20ms以上,保證DSP可靠復(fù)位;另一方面應(yīng)保證穩(wěn)定性良好,防止DSP誤復(fù)位。一般應(yīng)保證復(fù)位輸入端〔RS低電平至少持續(xù)6個時鐘周期,即若時鐘為20MHz時為300ns。但在上電后,系統(tǒng)的晶振往往需要幾百毫秒的穩(wěn)定期,所以一般可設(shè)為100~300ms。硬件復(fù)位有以下幾種方法:上電復(fù)位〔利用RC電路的延遲特性來產(chǎn)生復(fù)位所需要的低電平時間、由RC電路和施密特觸發(fā)器組成、手動復(fù)位〔通過上電或按鈕兩種方式對芯片進行復(fù)位、自動復(fù)位〔看門狗。設(shè)計時可將上電復(fù)位和手動復(fù)位兩個信號經(jīng)過邏輯相與,然后送到DSP的復(fù)位輸入引腳。圖4.2給出了一種帶有上電延遲復(fù)位和手動復(fù)位功能的復(fù)位電路。其中手動復(fù)位主要用于系統(tǒng)調(diào)試,另外在系統(tǒng)運行中出現(xiàn)故障時也可方便地使用。整形電路圖4.2手動復(fù)位功能電路。此外,DSP系統(tǒng)中還可以用硬件監(jiān)控來實現(xiàn)復(fù)位〔看門狗電路,如硬件監(jiān)控芯片MAX706等。該電路的功能為當(dāng)看門狗使能時,系統(tǒng)如果沒有在規(guī)定時間間隔內(nèi)對看門狗電路進行刷新,則產(chǎn)生復(fù)位信號,使系統(tǒng)重新從初始狀態(tài)開始執(zhí)行,以提高系統(tǒng)抗干擾能力??撮T狗電路在上電復(fù)位后,應(yīng)處于禁止?fàn)顟B(tài),看門狗電路通過將系統(tǒng)控制寄存器0〔WATHCHDOG中的控制位WDEN置1來使能??撮T狗電路使能后,通過對看門狗刷新口作寫操作,來刷新看門狗。在本系統(tǒng)中,我們所使用的是手動復(fù)位,電路如下圖所示:圖4.3手動復(fù)位電路實現(xiàn)4.3時鐘電路設(shè)計時鐘信號的好壞直接決定了系統(tǒng)的穩(wěn)定性,C5416芯片提供內(nèi)部和外部兩種方式的時鐘發(fā)生模式,因此C5416時鐘信號的產(chǎn)生有兩種方法:使用外部時鐘源;使用芯片內(nèi)部的振蕩器。使用內(nèi)部振蕩器的優(yōu)點是價格便宜、電路簡單、節(jié)約面積、信號電平總能滿足要求。一般建議使用內(nèi)部振蕩器。使用內(nèi)部振蕩器時,外部晶體推薦使用基次諧波晶體,等效串聯(lián)電阻應(yīng)小于30Ω,負載電容小于10pF,在PCB設(shè)計時晶體和電容應(yīng)盡量靠近DSP芯片。如果使用外部振蕩器,則要考慮時鐘信號電平不能大于電源電壓、占空比要求、沿時間要求、高低電平寬度要求。建議在靠近時鐘源的地方加入端接電阻以改善時鐘信號性能。時鐘電路用來為’C54x芯片提供時鐘信號,由一個內(nèi)部振蕩器和一個鎖相環(huán)PLL組成,可通過芯片內(nèi)部的晶體振蕩器或外部的時鐘電路驅(qū)動。在系統(tǒng)中,時鐘電路是處理數(shù)字信息的基礎(chǔ),同時它也是產(chǎn)生電磁輻射的主要來源,其性能好壞直接影響到系統(tǒng)是否正常運行,所以時鐘電路在數(shù)字系統(tǒng)設(shè)計中占有至關(guān)重要的地位。下面主要介紹DSP系統(tǒng)中時鐘電路的設(shè)計:<1>時鐘電路的種類TIDSP系統(tǒng)中的時鐘電路主要有三種:晶體電路、晶振電路、可編程時鐘芯片電路。①晶體電路:晶體電路最為簡單,如圖4.4所示。只需晶體和兩個電容,價格便宜,體積小,能滿足時鐘信號電平要求,但驅(qū)動能力差,不可提供多個器件使用,頻率范圍小〔20kHz~60MHz,使用時還須注意配置正確的負載電容,使輸出時鐘頻率精確、穩(wěn)定。TIDSP芯片除C6000、C5510等外,大都內(nèi)部含有振蕩電路,可使用晶體電路產(chǎn)生所需的時鐘信號。也可不使用片內(nèi)振蕩電路,直接由外部提供時鐘信號。圖4.4晶體電路②晶振電路:晶振電路如圖5.3所示,其電路簡單、體積小、頻率范圍寬〔1Hz~400MHz、驅(qū)動能力強,可為多個器件使用。但由于晶振頻率不能改變,多個獨立的時鐘需要多個晶振。另外在使用晶振時,要注意時鐘信號電平,一般晶振輸出信號電平為5V或3.3V,對于要求輸入時鐘信號電平為1.8V的器件,不能選用晶振來提供時鐘信號〔如VC5401、VC5402、VC5409和F281X等。圖4.5晶振電路③可編程時鐘芯片電路:其電路較簡單,一般由可編程時鐘芯片、晶體和兩個外部電容構(gòu)成。有多個時鐘輸出,可產(chǎn)生特殊頻率值,適于多個時鐘源的系統(tǒng),驅(qū)動能力強,頻寬最高可達200MHz,輸出信號電平一般為5V或3.3V,常用器件為CY22381〔封裝如圖4.6所示,其有3個獨立的PLL,3個時鐘輸出引腳和CY2071A〔有1個PLL,3個時鐘輸出引腳。圖4.6可編程時鐘芯片電路目前DSP工作頻率已高達1GHz〔如最新推出的TMS320C6416T,為降低時鐘的高頻噪聲干擾,提高系統(tǒng)整體的性能,通常設(shè)計時使用頻率較低的外部參考時鐘源,為此須采用可編程時鐘芯片電路,它可在在線的情況下,通過編程對系統(tǒng)的工作時鐘進行控制,以保證在較低的外部時鐘源的情況下,通過其內(nèi)部集成的PLL鎖相環(huán)的倍頻,獲得所希望的工作頻率,同時通過在DSP內(nèi)部對時鐘進行編程控制,也能較好地滿足不同應(yīng)用的要求。我們可通過編程,使DSP工作在較低頻率,甚至可以設(shè)定為固定分頻模式,并關(guān)斷內(nèi)部的鎖相環(huán)相關(guān)電路,使功耗最小。而對于數(shù)字信號處理以及實時系統(tǒng),常需要DSP工作在高速狀態(tài),這時也可通過編程,使系統(tǒng)在完成引導(dǎo)之后,進入到鎖相倍頻模式,提高系統(tǒng)的工作頻率。有時即使在同一應(yīng)用中,為了需要也可以通過編程,使系統(tǒng)在不同的階段工作在不同的頻率。就像系統(tǒng)在引導(dǎo)時工作在較低頻率的固定分頻模式,而正常工作后進入所需頻率的鎖相倍頻模式,而在等待期間則返回到分頻模式并關(guān)斷PLL以降低功耗。一般TIDSP芯片能提供多種靈活的時鐘選項,可以使用片內(nèi)/片外振蕩器、片內(nèi)PLL或由硬件/軟件配置PLL分頻/倍頻系數(shù)。<2>時鐘電路選擇原則:①系統(tǒng)中要求多個不同頻率的時鐘信號時,首選可編程時鐘芯片電路;單一時鐘信號時,選擇晶體時鐘電路;多個同頻時鐘信號時,選擇晶振時鐘電路。盡量使用DSP片內(nèi)的PLL,降低片外時鐘頻率,提高系統(tǒng)穩(wěn)定性。②VC6000、VC5510、VC5409、VC5416、VC5420、VC5421和VC5441等片內(nèi)無振蕩電路,不能用晶體時鐘電路。③VC5401、VC5402、VC5409和F281x等,它們的時鐘信號輸入電平要求為1.8V,建議采用晶體時鐘電路。④C64x主頻最高可達1GHz,必須使用片內(nèi)PLL,并且要對片內(nèi)PLL提供獨立的供電,電源引腳進行必要的濾波,在C62x/C67x上還提供PLL濾波網(wǎng)絡(luò)引腳,這時外部應(yīng)加相應(yīng)的R、C濾波元件。從上面的描述中,我們可以看出,時鐘信號的好壞直接決定了系統(tǒng)的穩(wěn)定性,而VC5416片內(nèi)無振蕩電路,不能用晶體時鐘電路。因此使用的是晶振電路,下圖4.7是VC5416時鐘信號產(chǎn)生的硬件電路實現(xiàn):圖4.7DSP時鐘信號產(chǎn)生的硬件電路實現(xiàn)4.4電源電路設(shè)計4.4.1電平轉(zhuǎn)換設(shè)計眾所周知,超大規(guī)模集成電路的發(fā)展已從1um,發(fā)展到目前的0.1um,芯片的電源電壓也隨之降低,功耗也隨之降低。TIDSP的發(fā)展同集成電路的發(fā)展一樣,從5V發(fā)展到目前的3.3V,核心電壓發(fā)展到1V?,F(xiàn)在市場上新的主流的DSP芯片都是雙電源供電,核電壓為1.5V~2.5V<根據(jù)不同型號芯片而不同本設(shè)計使用的芯片核電壓為1.8V—主要為芯片的內(nèi)部邏輯提供電壓,包括CPU、時鐘電路和所有的外設(shè)邏輯。>,I/O引腳電源為3.3V〔主要供I/O接口使用,可直接與外部低壓器件接口,而無需額外的電平變換電路,而目前市場上5V的器件還在大量使用,因此在DSP系統(tǒng)中,經(jīng)常就存在3V和5V<一般為外圍接口芯片>電壓器件混合設(shè)計問題,如果處理不好,將使DSP芯片損壞。所以,在混合電壓系統(tǒng)中,不同電源電壓的邏輯器件相互接口時會存在以下3個主要問題:輸入/輸出引腳最大電壓的容限問題;兩個電源間電流的互串問題;必須滿足的輸入轉(zhuǎn)換門限電平問題。C5416的接口電源為3.3V,其輸入/輸出信號的電壓特性較為復(fù)雜,如表4.2所列。表4.2C5416的輸入/輸出引腳電壓特性參數(shù)引腳名稱電壓范圍輸入范圍所有輸入引腳-0.3~4.5V輸出范圍所有輸出引腳-0.3~4.5VVIHRSINTnNMIBIOHCSHDS1HDS2BCLKR0BCLKR1BCKX0BCLKX1TDITMSCLKMDn2.2~3.6VTCKTRST2.5~3.6VX2/CLKIN1.35~3.6VVILRSINTnNMIBIOHCSHDS1HDS2BCLKR0BCLKR1BCLKX0BCLKX1TDITMSCLKMDnX2/CLKIN所有其余輸入引腳-0.3~0.6V-0.3~0.8VVOH所有輸出引腳≥2.4VVOL所有輸出引腳≤0.4V由表4.2可見,C5416的輸入電壓的絕對范圍是-0.3~+4.5V,除少數(shù)引腳外,其輸入電平是與TTL邏輯電平兼容的,因此C5416的輸入引腳僅能與3.3V的CMOS電路連接,不能與5VTTL電路、5VCMOS電路連接。5VTTL/CMOS電路的輸出信號要經(jīng)過電平轉(zhuǎn)換后才能送給C5416,否則可能損壞C5416。由于C5416的輸出信號與TTL邏輯電平兼容,因此可以直接送給5VTTL電路或者輸入電平與TTL邏輯電平兼容的3.3VCMOS和5VCMOS電路??偟膩碇v,在選取DSP外圍接口芯片時,需要注意以下幾點:<1>DSP輸出給5V的電路,無需加任何緩沖電路,可以直接連接。<2>DSP輸入5V的信號,由于輸入信號的電壓>4V,超過了DSP的電源電壓,DSP的外部信號沒有保護電路,需要加緩沖,將5V信號變換成3.3V的信號。<3>仿真器的JTAG口的信號也必須為3.3V,否則有可能損壞DSP。因此在設(shè)計電路、選取器件時要綜合考慮以上原因,盡量選擇3.3VCMOS器件,以簡化電路設(shè)計。但是,很難保證整個系統(tǒng)都使用3.3V的CMOS器件,因此對所有與C5416電平不兼容的信號要進行電平轉(zhuǎn)換,很好解決了C5416的輸入電平兼容問題。4.4.2電源電路設(shè)計在前面的小節(jié)里提到目前主流的DSP的外圍均已發(fā)展為3.3V,5V的DSP的價格和功耗都價格,已逐漸被3.3V的DSP取代。而且本次設(shè)計中的所選用的TMS320VC5416數(shù)字信號處理芯片采用了雙電源供電機制,以獲得更好的電源性能。1.8V對應(yīng)內(nèi)核電源<CVdd>,主要為該器件的內(nèi)部邏輯提供電流,包括CPU、時鐘電路和所有片上外圍電路;3.3V對應(yīng)I/O電源<DVdd>,為外部接口引腳提供電壓,這樣可以直接與外部低壓器件接口,而不需要額外的電平轉(zhuǎn)換電路;降低內(nèi)核電壓的主要目的是降低功耗。通常TMS320VC54xx選用的電源芯片是TPS73HD318〔5V變3.3V和1.8V,最大750mA和TPS73HD301〔5V變3.3V和可調(diào),最大750mA,本系統(tǒng)中選用的是TI的DSP專用雙電源輸出芯片TPS73HD301來提供DSP正常工作所必需的兩種電路環(huán)境。電源芯片引腳分布如下圖4.8所示。圖4.8TPS73HD301引腳圖TPS73HD301是一種雙輸出穩(wěn)壓器,在一個芯片上有兩個獨立的穩(wěn)壓器,如圖4.9可分別為DSP的I/O電源和核心電源供電。其內(nèi)部結(jié)構(gòu)如下圖5.7所示。該芯片輸入電壓的范圍為3.97V—10V;輸出電壓則分為兩路,一路為3.3V,一路為1.8V。每路輸出電流最大值為750mA。圖4.9TPS73HD301的內(nèi)部結(jié)構(gòu)圖電路中所選用的TPS73HD301芯片可以提供最高750mA的電流,為了適應(yīng)較大的電流輸出場合,該芯片輸入和輸出的管腳都采用兩個管腳,這樣可以提高電流的通過率并有利于芯片散熱。從下圖4.10電源轉(zhuǎn)換實現(xiàn)電路中,我們可以看到:圖4.10電源轉(zhuǎn)換電路實現(xiàn)1.8V穩(wěn)壓器輸入部分為1IN取兩個管腳,輸入+5V的VCC,用luF的電容對輸入電源濾波,使輸入電壓變得更穩(wěn)定;輸出部分為1OUT兩個管腳,1FB/SENSE端子也必須接到10UT管腳,用33uF的電容來實現(xiàn)濾波功能,以提供高穩(wěn)定性的1.8V輸出。3.3V穩(wěn)壓器輸入部分為2IN兩個管腳,輸入+5V的VCC,用luF的電容對輸入電源濾波;輸出部分為兩個2OUT管腳,將2SENSE直接接到2OUT上得到3.3V的輸出,用33uF的電容來實現(xiàn)濾波功能,以提供高穩(wěn)定性的3.3V輸出。系統(tǒng)的電源輸入為+5V,為一個兩腳插針,為提高輸入電源電壓的穩(wěn)定性,采用一個100uF的電容進行濾波;同時設(shè)計電源指示燈LED,有電源輸入時發(fā)光二極管將發(fā)光,指示電源的通斷,總電路可參照附錄中的原理圖。電源監(jiān)控電路設(shè)計為保證DSP芯片在電源未達到要求的電平時,不會產(chǎn)生不受控制的狀態(tài),必須在系統(tǒng)中加入電源監(jiān)控和復(fù)位電路,由該電路確保在系統(tǒng)加電過程中,在內(nèi)核電壓和外圍端口電壓達到要求之前,DSP芯片始終處于復(fù)位狀態(tài),直到內(nèi)核電壓和外圍接口電壓達到所要求的電平。同時如果電源電壓一旦降到門限值以下,則強制芯片進入復(fù)位狀態(tài),確保系統(tǒng)穩(wěn)定工作。本次電路選用的電源監(jiān)控芯片是TPS3307-18,它為系統(tǒng)提供了初始化和電源電壓監(jiān)控的功能,可監(jiān)控的電壓等級是3.3V到1.8V,可調(diào)監(jiān)測電壓可以監(jiān)控不小于1.25V電壓。具體的特性如下表所示:表4.3TPS3307-18的主要特性型號電壓典型值〔V監(jiān)控電壓〔V復(fù)位門限<V>封裝TPS3307-181.83.3/1.8/Adj2.93/1.68/1.258-SO

在上電期間,當(dāng)電源電壓高于1.1V時/RESET開始有效,然后開始監(jiān)控SENCE輸入管腳的電壓,只要SENSE輸入的電壓低于門限電壓VIT+就一直保持/RESET為有效〔低電平。當(dāng)電源電壓上升到門限電壓VIT+以上時,由一個內(nèi)部的延時定時器控制/RESER輸出無效狀態(tài)〔高電平以保證系統(tǒng)的可靠復(fù)位,定時器的典型延時時間為200ms。當(dāng)電源電壓或SENSE的電壓降落到門限電壓〔VIT-以下,/RESER輸出再次變?yōu)橛行А驳碗娖健?/p>

TPS3307-18還具有手動復(fù)位輸入腳/MR,當(dāng)此腳接低電平時/RESER輸出變?yōu)橛行А驳碗娖健A硗庠赥PS3307-18芯片上還有一個高電平有效的復(fù)位RESET腳。并通過電壓監(jiān)控芯片TPS3307-18D來監(jiān)控由TPS73HD301產(chǎn)生的1.8V、3.3V電壓,確保了供電系統(tǒng)穩(wěn)定、可靠、高效的工作,具體設(shè)計電路圖如下:圖4.11電源監(jiān)控電路4.5本章小結(jié)本章介紹的是基于GPS解調(diào)器硬件系統(tǒng)的基本設(shè)計,包括仿真口、復(fù)位、時鐘、電源電路的設(shè)計,同時在介紹電源設(shè)計的基礎(chǔ)上介紹了電平轉(zhuǎn)換電路和電源監(jiān)控電路。時鐘電路是用來給TMS320VC5416芯片提供時鐘信號,由一個內(nèi)部振蕩器和一個鎖相環(huán)PLL組成,可以通過晶振和外部的時鐘驅(qū)動。在文中還介紹了時鐘信號產(chǎn)生的幾種方案和選擇時鐘產(chǎn)生方式的原則。在系統(tǒng)中,時鐘電路是處理數(shù)字信息的基礎(chǔ),同時它也是產(chǎn)生電磁輻射的主要來源,其性能好壞直接影響到系統(tǒng)是否正常運行,所以時鐘電路在數(shù)字系統(tǒng)設(shè)計中占有至關(guān)重要的地位。因此若要設(shè)計PCB板時,一定要注意時鐘的供電電源與整個電路板的電源一般是分開,不然的話很容易產(chǎn)生干擾。第3小節(jié)介紹了電平轉(zhuǎn)換電路的,在電源電路的設(shè)計的過程中,最重要的就是了解DSP芯片的外部電壓特性,要考慮的是DSP的加電次序,從而確定我們所要選擇的電源芯片TPS73HD301,它不僅提供其內(nèi)核電壓和外圍的I/O電壓,同時保證了內(nèi)核電壓與外圍I/O電壓的加電順序,最后根據(jù)選定的電源芯片的DataSheet資料進行電路設(shè)計和實現(xiàn)。這一部分基本電路的設(shè)計電路雖然比較簡單,但是對系統(tǒng)來講確是非常的重要,處理不好就很容易燒壞電路。因此設(shè)計要特別的注意它的設(shè)計原則。5DSP系統(tǒng)各關(guān)鍵模塊設(shè)計5.1DSP存儲器擴展模塊設(shè)計與實現(xiàn)VC5416芯片具有片內(nèi)存儲器,使用片內(nèi)存儲器可以全速運行,達到芯片的最高速度,但其片內(nèi)內(nèi)存數(shù)量有限,所以需要擴展外部存儲器。在進行VC5416外部存儲器擴展之前,必須了解DSP片上存儲資源,并根據(jù)應(yīng)用需求來擴展存儲空間。根據(jù)資料顯示,C5416只能同異步的存儲器直接相接。一般是根據(jù)工作頻率、存儲容量、位長<8/16/32位>、接口方式<串行還是并行>、工作電壓<5V/3V>等來選擇系統(tǒng)所需要的存儲器。C5416的DSP的速度為160MHz,若要保證DSP無等待運行,則外部存儲器的速度得在6ns和10ns之間。FLASH存儲器具有功耗低、尺寸小且裝配后可以編程的特性,也適合于便攜式設(shè)備。目前Flash存儲器已成為DSP系統(tǒng)的一個基本配置,主要用來存放用戶程序代碼以及掉電后需要保存的數(shù)據(jù)。對于程序存儲器和數(shù)據(jù)存儲器的設(shè)置根據(jù)不同系統(tǒng)需要有多種選擇方法。第一種簡單的方法是將FlashRom定義到程序區(qū)<PS/作為片選>,SRAM定義到數(shù)據(jù)區(qū)<DS/作為片選>;第二種方法是將FlashRom和SRAM全部定義到數(shù)據(jù)區(qū),但由于數(shù)據(jù)區(qū)只能尋址64K,所以對于大于64K的范圍要使用分頁處理:第三種方法是將SRAM定義到程序區(qū),FlashRom定義到數(shù)據(jù)區(qū),這樣做主要是有利于并行加載。第四種方法是將FlashRom和SRAM全部定義到程序區(qū),充分利用C5416的程序空間可擴展到8M字的特點,將FlashRom放置在低位,SRAM放置到高位,可以簡化對SRAM存取的邏輯;本設(shè)計采用的是第四種方法,下面我將具體介紹。5.1.19VF800AFLASH存儲器Flash擴展在數(shù)據(jù)空間,映射在地址8000H-FFFFH,容量為512K,采用16位。本系統(tǒng)中FLASH為一片SST39VF800,構(gòu)成512K*16的存儲空間,用于存儲程序及初始化數(shù)據(jù)。通過仿真器將用戶BOOT程序和整個系統(tǒng)的軟件寫入FLASH,系統(tǒng)就可以成為獨立運行的DSP系統(tǒng)。FLASH與DSP接口時,主要考慮如下:采用DSP的外部BOOT方式;通過DSP的仿真系統(tǒng),能夠?qū)⒊绦蚝蛿?shù)據(jù)寫入到FLASH中;系統(tǒng)獨立運行時,能夠從FLASH中讀出程序裝入到內(nèi)部RAM中。而我們對對FLASH芯片的所有操作都是通過芯片的命令用戶接口來實現(xiàn)的,命令用戶接口就是DSP與芯片內(nèi)部操作之間的界面。當(dāng)通過命令用戶接口寫入不同的控制命令時,FLASH從一個工作狀態(tài)轉(zhuǎn)移到另一個工作狀態(tài)。本系統(tǒng)選用的是SST39VF800型號的FLASH,主要特征為:存儲空間為512K字,支持單電源操作,工作電源為3.3V,可直接與C5416進行接口;采用CMOS工藝,存取速度很高,理論上可進行100000次寫入/擦寫操作;支持塊結(jié)構(gòu)操作和塊保護功能,防止對任何區(qū)段進行編程和擦除的硬件保護機制;可通過軟件方法檢查編程和擦除操作的狀態(tài),同時,它的READY引腳和BSY引腳可用來以硬件方法檢測編程和擦除操作的狀態(tài);具有擦除暫停/擦除恢復(fù)功能,在暫停擦除操作過程中,支持讀寫不處于擦除狀態(tài)的塊;內(nèi)嵌有擦除和編程的算法能自動對整個芯片或某幾個塊進行擦除編程操作。部分引腳說明如下表:表5.1SST39VF800的主要管腳功能描述管腳功能說明BYTE/選擇字節(jié)或字模式CE/芯片選擇信號輸入引腳,低電平有效RESET/硬件復(fù)位引腳,低電平有效RY/BY芯片準備好狀態(tài)或忙狀態(tài)輸出引腳DQ15/A-1字模式下為DQ15,字節(jié)模式下為LSB地址線A0-A1819條地址線,單向輸出、高阻DQ0-DQ1415條數(shù)據(jù)線,雙向三態(tài),輸入、輸出、高阻5.1.2FLASH接口電路設(shè)計原理VC5416有128頁存儲空間,每頁64K。當(dāng)片上RAM配置到程序存儲空間后,擴展程序存儲器的所有頁被分為兩個部分:共享部分和獨立部分。共享部分在任何一頁都可以訪問,獨立部分則僅在特定頁中訪問。當(dāng)片上ROM可以訪問時,ROM配置到程序空間的第0頁,在其他頁中不能訪問片上ROM。芯片通過XPC的值來訪問程序存儲器的各個頁,XPC作為存儲器映射寄存器被放到數(shù)據(jù)存儲器的OO1Eh處。擴展程序存儲器分配詳見下圖:圖5.1擴展程序存儲器的分配根據(jù)需要決定將存儲空間分配在哪些存儲單元中。由上圖可以看出,對TMS320VC5416進行分頁擴展時,其公共存儲單元為32K,各自獨立的存儲單元是32K<16K的倍數(shù)>,以16K作為最小的存儲塊。所以將DSP和FLASH地址位A0~A14直接連接,如果公共存儲單元為16K,各自獨立的存儲單元也是48K,那么將DSP和FLASH地址位A0~A13直接連接,同理類推。將512K的片外FLASH按照上圖所示分別分配在下面的存儲空間<0x8000~0x8FFF、0x18000~0x1FFFF、0x28000~0x2FFFF、0x38000~0x3FFFF、0x48000~0x4FFFF、0x58000~0x5FFFF、0x68000~0x6FFFF、0x78000~0x7FFFF、0x88000~0x8FFFF。由于0x8000~0xFFFF單元一般作為TMS320VC5402的擴展FlashMemory,用于TMS320VC5416的自舉加載,所以不將0x8000~0xFFFF作為片外存儲器擴展。FLASH接口電路實現(xiàn)通過上面的原理分析,可設(shè)計的DSP與FLASH的接口電路如下圖5.2所示:圖5.2FLASH的接口電路DSP與FALSH的接口電路將地址總線的低15位<A14~A0>和數(shù)據(jù)總線<D15~D0>直接連接,對地址總線的高位進行地址譯碼,同時SRAM的引腳由DSP的引腳經(jīng)過選通電路實現(xiàn),通過下拉電阻實現(xiàn)低電平有效。TMS320VC5416對外部程序存儲空間尋址主要利用MSTRB和PS引腳實現(xiàn),MSTRB和PS都是低電平有效,當(dāng)DSP對外部程序存儲器尋址時,MSTRB和PS為低電平,利用與門實現(xiàn)FLASH的CE為低電平,選通FLASH作為DSP的片外程序存儲器。這些在電路中,用的是CPLD進行譯碼,產(chǎn)生片選信號后選中FLASH,開始工作。具體邏輯控制電路的設(shè)計如下圖5.3所示:圖5.3邏輯控制電路由于VC5416只支持程序空間的分頁尋址,對于數(shù)據(jù)內(nèi)存0FFFFH以上的地址是不能被訪問的。如果OVLY=1,外部存儲器就有與內(nèi)部存儲器重疊的部分。如果內(nèi)部存儲器在使用,外部存儲器就不能占據(jù)內(nèi)部存儲器的地址空間。也就是說,必須將外部存儲器分配在內(nèi)部存儲器以外的地址空間。將SST39VF800的地址線A15~A18經(jīng)過CPLD譯碼得到,這樣就解決了外部存儲器與內(nèi)部存儲器重疊的問題。地址譯碼邏輯設(shè)計,如下表5.2所示:由于片外FLASH按照每32K為基本塊擴展,所以低位地址線<A0~A14>直接相連,如果想尋址FLASH的第1個32K存儲單元,那么從下圖可以看出,對應(yīng)TMS320VC5416的地址總線應(yīng)為0x8000~0xFFFF這段存儲空間,即DSP的高位地址為0000,FLASH的地址空間為0x0000~0x3FFF這段存儲空間,FLASH的高位地址為0000;尋址FLASH的第2個32K存儲單元,那么對應(yīng)TMS320VC5416的地址總線應(yīng)為0x18000~0x1FFFF這段存儲空間,即DSP的高位地址為0001,FLASH的地址空間為0x4000~0x7FFF這段存儲空間,FLASH的高位地址為0001。由此類推可以配置FLASH的512K存儲器,找到DSP和SRAM對應(yīng)高位地址間的對應(yīng)關(guān)系,如表5.2所示:表5.2地址譯碼邏輯DSP高位地址線<A18~A15>FLASH高位地址線<A18~A15>0000000000010001001000100011001101000100010101010110011001110111100010001001100110101010101110111100110011011101續(xù)表5.21110111011111111在設(shè)計中,我們也可以使用VHDL語言實現(xiàn)上面的功能。圖5.4FLASH接口實現(xiàn)電路需要注意的是,外部FLASH存儲器中固化有用戶代碼,可以實現(xiàn)系統(tǒng)自舉,即脫機運行的功能。自舉從本質(zhì)上說就是在DSP啟動后通過某種方式獲取運行代碼并開始運行,這個過程是在固化于DSP片內(nèi)的BOOTLOADER程序輔助下完成的。在DSP上電以后,BOOTLOADER程序按照一定的順序依次檢驗何種自舉方式可用,自舉方式〔HPI方式、EEPROM方式、標(biāo)準I/O方式等。本系統(tǒng)的脫機運行功能使用的是FlashEPROM方式。當(dāng)系統(tǒng)加電時,DSP首先從外部FLASH指定的引導(dǎo)程序段的起始位置處開始執(zhí)行引導(dǎo)裝載,將存儲在FLASH中的用戶代碼搬移到DSP的SRAM中,然后將程序指針設(shè)置為用戶代碼的起始地址,接下來就可以高速執(zhí)行應(yīng)用程序了。5.2可編程邏輯器件CPLD設(shè)計與實現(xiàn)由于DSP的速度較快,因此要求譯碼的速度也必須較快。因此傳統(tǒng)的利用小規(guī)模邏輯器件譯碼的方式,如GAL譯碼已不能滿足DSP系統(tǒng)的要求。同時,DSP系統(tǒng)中也經(jīng)常需要外部快速部件的配合,這些部件往往是專門的電路,有可編程器件實現(xiàn)。而可編程邏輯器件CPLD的時序嚴格,速度較快,可編程性好,非常適合于實現(xiàn)譯碼和專門電路。且由于它具有硬件可編程修改的優(yōu)點,即使電路板設(shè)計時有錯誤,也不必在板上飛線或重新制板。只要在CPLD的設(shè)計中進行修改就可以了。該特性也利于今后系統(tǒng)的二次開發(fā)。選擇適用的邏輯控制芯片,以滿足程序擴展、數(shù)據(jù)擴展和I/O擴展的兼容是很重要的一步。因此系統(tǒng)中采用XCR3128VQ100來完成譯碼、存儲器擴展、組合邏輯控制,這樣可使整個系統(tǒng)體積減小,同時也增強DSP訪問外設(shè)的能力和提高系統(tǒng)可擴展性以及資源利用率。5.2.1可編程邏輯器件XCR3128CPLD是屬于粗粒結(jié)構(gòu)的可編程邏輯器件。它具有豐富的邏輯資源<即邏輯門與寄存器的比例高>和高度靈活的路由資源??梢栽谥圃焱瓿珊笥捎脩舾鶕?jù)自己的需要定義其邏輯功能。下面列的是CPLD的主要特點:CPLD適合完成各種算法和組合邏輯,CPLD的連續(xù)式布線結(jié)構(gòu)決定了它的時序延遲是均勻的和可預(yù)測的;CPLD通過修改具有固定內(nèi)連電路的邏輯功能來編程,因此使用起來方便;CPLD是邏輯塊級編程,并且其邏輯塊之間的互聯(lián)是集總式的,因此CPLD具有較大的時間可預(yù)測性;在編程方式上,編程次數(shù)可達1萬次,而且系統(tǒng)斷電時編程信息也不丟失。對本系統(tǒng)來說CPLD最重要的特點就它是在給定的器件密度上可提供更多的I/O數(shù),有時甚至高達70%。因此本系統(tǒng)中選用了XLINX公司的CPLD芯片XCR3128VQ100,有64個宏單元和100個引腳,通過工業(yè)標(biāo)準的4引腳JTAG接口實現(xiàn)在線編程,它有60個通用的I/O管腳,可以根據(jù)需要靈活的將I/O引腳定義成專用引腳來實現(xiàn)特定的功能,還有一個重要的使能端口POPT_EN,置高時,JATG下載口可當(dāng)作I/O端口使用,但本系統(tǒng)中需要對CPLD進行燒寫,所以置低。系統(tǒng)中需要完成的有譯碼、簡單的邏輯轉(zhuǎn)換,還有鎖存功能。而從第2章的介紹中,可以看出VC5416具有很少的I/O管腳,所以從一定程度上也可以說,CPLD擴展了DSP的I/O外設(shè)接口。5.2.2XCR3128功能實現(xiàn)系統(tǒng)中,外部的I/O地址均由XCR3128產(chǎn)生〔FLASH、LCD、KEY。利用CPLD實現(xiàn)DSP<TMS320VC5416>存儲空間擴展,大大簡化了硬件電路的設(shè)計,如想改變DSP與FLASH之間的地址映射關(guān)系也非常方便,只需按照介紹的方法,重新編寫地址譯碼邏輯,然后利用CPLD實現(xiàn),而不需要改變硬件電路設(shè)計。圖5.5XCR3128的簡單接口電路實現(xiàn)我們所選用的存儲器具有RD、WR和CS等控制信號,VC5416都沒有控制信號直接連接存儲器,因此CPLD譯碼方式如下:CS有地址線和PS、DS或STRB譯碼產(chǎn)生;/RD=/STRB+/R/W;/WR=/STRB+R/W。其它外設(shè)的片選信號也由CPLD通過上面的譯碼方式產(chǎn)生。因此我們需要用ISE軟件進行VHDL語言編程并下載到XilinxCPLD實現(xiàn)其譯碼功能。5.3I/O擴展模塊設(shè)計與實現(xiàn)DSP片內(nèi)外設(shè)有限,而本系統(tǒng)需要擴展外圍功能〔鍵盤輸入和液晶顯示,即VC5416需要通過外部總線和擴展的I/O設(shè)備相連。VC5416的I/O資源由以下兩部分組成。通用I/O引腳:由/BIO和XF兩個控制引腳組成。其中分支轉(zhuǎn)移控制輸入引腳/BIO用來監(jiān)控外圍設(shè)備。在時間要求較為苛刻的循環(huán)中,不允許受干擾。此時可以根據(jù)/BIO引腳的狀態(tài)<即外圍設(shè)備的狀態(tài)>決定分支轉(zhuǎn)移的去向,以代替中斷。外部標(biāo)志輸出引腳XF可以用來向外部器件發(fā)信號,通過軟件命令,例如可以通過指令:SSBXXF或RSBXXF該引腳置l和復(fù)位。McBSP引腳用做通用I/O。VC5416提供有3個多通道緩沖串口McBSP,根據(jù)配置同時滿足下列兩個條件就能將McBSP的6個引腳用做通用的I/O引腳:①McBSP的響應(yīng)部分處于復(fù)位狀態(tài),即將串口控制寄存器SPCR[1,2]中的<R/X>RST位置。②McBSP的通用I/O功能被使能,即將引腳控制寄存器PCR中的<R/X>IOEN置l。由于DSP的I/O資源很大一部分都與其他資源復(fù)用,例如串口、并口、數(shù)據(jù)和地址總線等,所以I/O的使用無論從硬件連接還是從軟件驅(qū)動方面都需要考慮更多的影響因素。當(dāng)DSP的I/O口與外部設(shè)備相接時,要盡量節(jié)省DSP的I/O資源。這樣在尋端口地址時,才不會與其他的器件或設(shè)備沖突。下面將詳細介紹VC5416的I/O擴展情況。鍵盤模塊鍵盤作為常用的輸入設(shè)備應(yīng)用十分廣泛。它是由若干個按鍵所組成的開關(guān)陣列,分為編碼鍵盤和非編碼鍵盤兩種。編碼鍵盤除了設(shè)有按鍵外,還包括有識別按鍵閉合產(chǎn)生鍵碼的硬件電路,只要有按鍵閉合,硬件電路就能產(chǎn)生這個按鍵的鍵碼,并產(chǎn)生一個脈沖信號,以通知DSP的CPU接收鍵碼。非編碼鍵盤是由一些按鍵排列成的行列式開關(guān)矩陣。按鍵的作用只是簡單地實現(xiàn)開關(guān)的接通和斷開,在相應(yīng)的程序配合下才能產(chǎn)生按鍵的鍵碼。非編碼鍵盤硬件電路極為簡單,幾乎不需要附加什么硬件電路,故能廣泛用于各種微處理器所組成的系統(tǒng)中。系統(tǒng)所使用的非編碼鍵盤〔2*4的掃描鍵盤。采用的是I/O掃描方式,將I/O地址〔0xc000置高,然后從地址<0xe000>讀第一行鍵值;將地址〔0xc000置低,從地址〔0xe000讀第二行鍵值,將兩行鍵值組合最終讀出健值。擴展鍵盤的連接如下圖5.6所示:圖5.6擴展鍵盤的連接圖注:S501、S502、S503、S504、、、S508分1、2、3、4、、、8鍵,可以根據(jù)鍵值通過軟件設(shè)計自行定義各鍵功能。在該接口電路中,鍵盤的行線分別與相連輸出CPLD〔鎖存的五根輸出線,當(dāng)上片輸出鎖存器的某一位為低電平時,位于該行的按鍵中若有一鍵被按下,則按下鍵的相應(yīng)列線為低電平,否則為高電平。列線電平信號經(jīng)下片輸入CPLD送入DSP來進行按鍵識別。在該接口電路中,占用了VC5416的兩個I/O端口地址,讀鍵盤端口地址0xFFFF和寫端口地址0xBFFF。顯示器模塊本系統(tǒng)采用是SAMSUNGELECTRONICS生產(chǎn)的小型液晶顯示模塊KS0713是。它具體積小、價格低、使用方便等長處??捎糜陲@示提示菜單、波形或各類參數(shù)的變化,實現(xiàn)實時的監(jiān)控和測量。表5.3液晶顯示器KS0713引腳功能說明名

稱I/O功

明VDD電源電源供電,和DSP供電電源相連VSS電源0V<GND>PS輸入并行/串行數(shù)據(jù)選擇輸入,串行置低;并行置高CS1輸入片選輸入CS2輸入數(shù)據(jù)輸入/輸出。當(dāng)片選無效時,DB7~DB0是呈高阻態(tài)A0輸入數(shù)據(jù)/命令寄存器選擇RD輸入讀信號,高電平有效WR輸入寫信號,低電平有效DB0-DB7輸入8位雙向數(shù)據(jù)總線,片選無效時為高阻態(tài)RES輸入硬件復(fù)位輸入端V0、V1、V2、V3、V4、V5輸入/輸出這些電壓的值取決于用于LCD點陣的阻抗轉(zhuǎn)換運放。他們關(guān)系為:V0≥V1≥V3≥V4≥V5≥Vss,其取值決定于LCD的偏壓:C1+C1-C2+C2-C3+C3-輸出外部電壓轉(zhuǎn)換器連接VOUT輸入/輸出電壓轉(zhuǎn)換輸出液晶片選控制信號</CS1>用CPLD譯碼控制,液晶的A0信號與DSP的GPIO7相連,當(dāng)A0=1〔選擇數(shù)據(jù)寄存器時,DSP給液晶數(shù)據(jù);A0=0〔選擇命令寄存器是給液晶發(fā)命令,用McBSP1發(fā)數(shù)據(jù)。液晶作為擴展的I/O設(shè)備,擴展的I/O口地址為:0x8000。顯示器接口電路實現(xiàn)圖如下所示:圖5.7顯示器接口實現(xiàn)電路5.4本章小結(jié)由于VC5416的速度較高,為提高其運行效率和達到最大處理能力,一般對其外圍芯片的速度也要求較高,同時又要考慮系統(tǒng)在線編程調(diào)試的要求。所以DSP+CPLD+Flash的配置是DSP系統(tǒng)設(shè)計的一般要求。因此本章介紹的是實現(xiàn)系統(tǒng)的3個關(guān)鍵外設(shè)模塊存儲器擴展FLASH,可編程模塊CPLD及I/O擴展模塊〔人機交互接口-鍵盤和顯示器的芯片選型及電路設(shè)計實現(xiàn)。6串行通信模塊在DSP應(yīng)用系統(tǒng)設(shè)計中必不可少的是各種數(shù)據(jù)傳輸接口的設(shè)計。與并行接口相比,串行接口的最大特點是減少了器件引腳數(shù)目,降低了接口設(shè)計復(fù)雜性。多數(shù)DSP芯片提供的是同步串口,TMS320VC5416提供的多通道緩沖串口<Multi-channelBufferedSerialPort,McBSP>可以很方便地與編解碼芯片<CODEC>或串行ADC直接連接,使得電路的設(shè)計更加簡捷。而系統(tǒng)是構(gòu)成一個獨立的處理單元,要與PC機這類具有異步通信接口的外設(shè)進行數(shù)據(jù)傳輸。本章即針對這種應(yīng)用,研究并實現(xiàn)了一種簡單、可靠的異步串口擴展方法。6.1TMS320VC5416的多通道帶緩沖串口<McBSP>McBSP的主要特點McBSP是在緩沖同步串口BSP和時分多路串口TDM的基礎(chǔ)上發(fā)展起來的,它在標(biāo)準同步串行口的基礎(chǔ)上增加了一個自動緩沖單元ALU〔利用獨立于CPU的專用總線,使串行口可直接讀/寫DSP的內(nèi)部存儲器。它既可以利用DSP提供的DMA功能實現(xiàn)自動緩存功能,又可以實現(xiàn)時分多路通信功能。VC5416提供了3個高速、全雙工、多通道緩沖串行口:McBSP0、McBSP1和McBSP2。每個緩沖串行口有如下表6.1所示的6個外部引腳:表6.1VC5416有關(guān)McBSP的管腳說明管腳I/O/Z功能定義BCLKXI/O/Z發(fā)送時鐘引腳BDXO/Z發(fā)送數(shù)據(jù)引腳BFXI/O/Z發(fā)送幀同步信號引腳BCLKRI/O/Z接收時鐘引腳BDRI接收數(shù)據(jù)引腳BFSRI/O/Z接收幀同步信號引腳CLKSI外部提供的采樣率發(fā)生器時鐘源緩沖串行口有若干內(nèi)部寄存器,可以通過對寄存器賦值來

溫馨提示

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

最新文檔

評論

0/150

提交評論