亚洲码欧美码一区二区三区,欧美在线观看视频,国产精品久久综合http://www.bjzhda.cnzh-cn曙海教育集團(tuán)論壇http://www.bjzhda.cnRss Generator By Dvbbs.Netofficeoffice@126.comimages/logo.gif曙海教育集團(tuán)論壇汽車電子中的DSP和FPGA應(yīng)用http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1611&Page=1wangxinxin2010-11-22 12:21:45汽車電子的數(shù)字化,不能不想到目前無線通信很看好的軟件無線電技術(shù),盡管它是針對無線通信的,但軟件無線電所要實(shí)現(xiàn)的思想,與汽車電子之所以要數(shù)字化處理所追求的目標(biāo)卻是殊路同歸的。因此,有必要提及和采用這一技術(shù)的實(shí)現(xiàn)思路和思想。軟件無線電概念的首次明確提出是在1992年5月,由MITRE公司的JoeMitola提出,它是當(dāng)今計(jì)算技術(shù)、超大規(guī)模集成電路和數(shù)字信號處理技術(shù)在無線通信中應(yīng)用的產(chǎn)物;它所追求的基本思想和目標(biāo)是:構(gòu)造一個(gè)具有開放性、標(biāo)準(zhǔn)化、模塊化的通用硬件平臺(tái),將多種功能,如工作頻段、調(diào)制解調(diào)類型、數(shù)據(jù)格式、加密模式、通信協(xié)議等用軟件來完成,以實(shí)現(xiàn)具有高度靈活性,開放性的通信產(chǎn)品。

    因此,對于汽車電子數(shù)字化產(chǎn)品的研究,完全可以吸取軟件無線電的以下主要思想:第一,要使汽車電子產(chǎn)品擺脫硬件結(jié)構(gòu)的束縛;第二,并不是不要硬件;第三,汽車電子產(chǎn)品應(yīng)該具有開放性和兼容性,開放是指對使用的開放、對生產(chǎn)的開放和對研制的開放。下面,就基于軟件無線電的思想探討DSP和FPGA在汽車電子中的主要應(yīng)用。

    基于DSP和FPGA的車用語音信號處理

    汽車電子產(chǎn)品中的語音處理主要涉及到語音的數(shù)字化處理、語音編解碼、語音壓縮和語音識(shí)別。國外比較熱門的汽車電子產(chǎn)品之一就是語音識(shí)別系統(tǒng),語音識(shí)別系統(tǒng)具有潛在的應(yīng)用前景,包括聲控電話、語音操作導(dǎo)航、聲控選擇廣播頻道、防盜語音鑒別等。例如,一種基于隱式馬可夫模型(HMM)的與講話人無關(guān)、100條指令識(shí)別的應(yīng)用,由文獻(xiàn)可知,那幺聲學(xué)HMM模型的大小將為。進(jìn)行包括輸入語音采樣的細(xì)分/開窗、MFCC提取、概率計(jì)算和Viterbi搜尋等適時(shí)處理,對DSP的運(yùn)算量要求一般為10000萬次乘加(MAC)運(yùn)算。對于連續(xù)語音信號的識(shí)別,則要求更好的數(shù)字信號處理速度和更大的存儲(chǔ)空間。

    由于語音識(shí)別系統(tǒng)要對聲音進(jìn)行實(shí)時(shí)處理和采樣,需要大量的運(yùn)算,如果以它們20%的計(jì)算資源分配用于1000萬次MAC語音識(shí)別應(yīng)用,那么需要處理器能夠具有5000萬次MAC的能力。因此,必須采用DSP和FPGA才能完成其任務(wù)。DSP和FPGA的處理速度對語音信號處理應(yīng)用系統(tǒng)的復(fù)雜性和性能起著決定性作用,高速DSP和FPGA的實(shí)現(xiàn)可實(shí)現(xiàn)聲道自適應(yīng)和聲域自適應(yīng)等現(xiàn)代語音處理和識(shí)別技術(shù)。從理論上講,DSP和FPGA處理速度越快,汽車語音處理和識(shí)別產(chǎn)品的應(yīng)用性能就越好。

    隨著應(yīng)用日益多樣化,DSP和FPGA演變成不再是一塊獨(dú)立的芯片,而變成了構(gòu)件內(nèi)核。這使得設(shè)計(jì)師能選擇合適的內(nèi)核和專用邏輯“膠結(jié)”在一起形成專用DSP和FPGA方案,以滿足信號處理的需要。目前,還出現(xiàn)把DSP核和ASIC微控制器集成在一起的芯片。汽車電子系統(tǒng)使用通用DSP和FPGA來實(shí)現(xiàn)語音合成,糾錯(cuò)編碼。而語音合成、語音壓縮與編碼是DSP最早和最廣泛的應(yīng)用,矢量編碼器用于將語音信號壓縮到有限帶寬的信道中。

]]>
DSP芯片選用指南http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1604&Page=1wangxinxin2010-11-22 10:42:04

ADSP-21xx
結(jié)構(gòu)特點(diǎn)

16-bit定點(diǎn)DSP
帶8-bit保護(hù)位的40-bit
ACC單周期執(zhí)行指令多數(shù)指令
可以條件執(zhí)行


尋址模式

立即數(shù)尋址、寄存器直接尋址、存儲(chǔ)器直接尋址、以及寄存器間接尋址。對于ADSP-219x,還有寄存器事后修改、立即修改、直接和間接偏移尋址模式。其程序序列具有內(nèi)部循環(huán)計(jì)數(shù)和循環(huán)堆棧,從而實(shí)現(xiàn)零開銷循環(huán)。每個(gè)地址發(fā)生器支持四個(gè)循環(huán)緩沖器,每個(gè)循環(huán)緩沖器又有三個(gè)寄存器,用來定義循環(huán)的終點(diǎn)、長度和訪問的地址。一個(gè)地址發(fā)生器支持位倒序?qū)ぶ贰DSP-219x支持十六個(gè)循環(huán)緩沖器,通過使用一個(gè)地址發(fā)生器影子寄存器和一組基寄存器,以增加循環(huán)緩沖的靈活性。

特殊指令

ADSP-219x可以有條件地執(zhí)行大多數(shù)指令。其do until命令可以建立任意長度的指令序列,作四層嵌套循環(huán)。ADSP-219x則支持八層嵌套。ADSP-21xx是非流水機(jī)型,因而不會(huì)對轉(zhuǎn)移或子程序調(diào)用帶來影響。

開發(fā)支持

ADI公司的軟件和硬件開發(fā)工具包括該公司的VisualDSP集成開發(fā)環(huán)境、在線仿真器和開發(fā)套件。VisualDSP提供對優(yōu)化的C編譯器、匯編器、連接器及調(diào)試器的接口。該公司的仿真器適用于通用的串口總線、PCI、以及以太網(wǎng)主機(jī)平臺(tái)。其EZ-Kit Lite包括一個(gè)評估板和有限的、但功能齊全的VisualDSP。

TigerSharc DSP
結(jié)構(gòu)特點(diǎn)

16-bit定點(diǎn)DSP
VLIW(超長指令字)結(jié)構(gòu)可以在一個(gè)機(jī)器周期內(nèi)執(zhí)行四條指令
該系列DSP具有SIMD(單條指令多個(gè)數(shù)據(jù))的能力
第一個(gè)TigerSharc DSP集成了6 Mbit的RAM
尋址模式

立即數(shù)尋址、位倒序?qū)ぶ贰K循環(huán)、寄存器直接尋址和寄存器間接尋址。其SIMD存儲(chǔ)器傳輸機(jī)制使單個(gè)取數(shù)和存儲(chǔ)指令在兩個(gè)存儲(chǔ)器塊和兩個(gè)計(jì)算單元之間作數(shù)據(jù)傳輸。

特殊指令

指令集直接支持高精度和低精度類型數(shù)據(jù)之間的轉(zhuǎn)換,如在單周期內(nèi)將定點(diǎn)數(shù)轉(zhuǎn)換成浮點(diǎn)數(shù),將16-bit數(shù)轉(zhuǎn)換為32-bit數(shù)。TigerSharc沒有硬件模式,其指令集支持算術(shù)功能,如帶符號的和不帶符號的整數(shù)和小數(shù)運(yùn)算。這將簡化高級語言的編程。在各種情況下都提供優(yōu)化的飽和模式。

開發(fā)支持

ADI公司的軟件和硬件開發(fā)工具包括該公司的VisualDSP集成開發(fā)環(huán)境、在線仿真器和開發(fā)套件。VisualDSP提供對優(yōu)化的C編譯器、匯編器、連接器及調(diào)試器的接口。該公司的仿真器適用于通用的串口總線、PCI、以及以太網(wǎng)主機(jī)平臺(tái)。其EZ-Kit Lite包括一個(gè)評估板和有限的、但功能齊全的VisualDSP。

SHARC DSP
結(jié)構(gòu)特點(diǎn)

16-bit定點(diǎn)DSP
支持定點(diǎn)和浮點(diǎn)運(yùn)算
新的SIMD錘頭運(yùn)算(Hammer-head operates)
集成有大的SRAM
尋址模式

立即數(shù)尋址、索引尋址、位倒序?qū)ぶ贰K循環(huán)、寄存器直接尋址和寄存器間接尋址。(對于片外存儲(chǔ)器的訪問,必須采用間接尋址。)

特殊指令

SHARC提供位操作、平方根的倒數(shù)、條件子程序調(diào)用、零開銷單條指令和塊指令循環(huán)、定點(diǎn)數(shù)和浮點(diǎn)數(shù)的比較、以及大多數(shù)指令的條件執(zhí)行。SHARC支持IEEE-754單精度浮點(diǎn)數(shù)(23-bit尾數(shù)、8-bit指數(shù)以及符號位),40-bit擴(kuò)展精度IEEE格式(32-bit尾數(shù))。

開發(fā)支持

ADI公司的軟件和硬件開發(fā)工具包括該公司的VisualDSP集成開發(fā)環(huán)境、在線仿真器和開發(fā)套件。VisualDSP提供對優(yōu)化的C編譯器、匯編器、連接器及調(diào)試器的接口。該公司的仿真器適用于通用的串口總線、PCI、以及以太網(wǎng)主機(jī)平臺(tái)。其EZ-Kit Lite包括一個(gè)評估板和有限的、但功能齊全的VisualDSP。其SHARC匯編語言以一種代數(shù)式語法為基礎(chǔ)。

Lucent
DSP-16xx

DSP 16000


DSP 16xx
結(jié)構(gòu)特點(diǎn)

16-bit定點(diǎn)DSP
具有16316-bit的乘法器
36-bit的ALU/移位器
所有片種都有片內(nèi)ROM
工作在2.7-4.75V
特殊指令

單條指令/塊指令的硬件循環(huán),條件子程序調(diào)用,比較,混合尋址,指數(shù)檢測,bit位提取、移位和替換。沒有旋轉(zhuǎn)指令。

開發(fā)支持

其硬件開發(fā)系統(tǒng)包括在線仿真器。評估板和演示板。軟件開發(fā)工具包括匯編器/連接器,調(diào)試器,軟仿真器和應(yīng)用程序庫。EDA廠商還提供將DSP軟仿真器模塊插入的系統(tǒng)級的仿真工具。

DSP 16000
結(jié)構(gòu)特點(diǎn)

雙MAC單元
支持16332-和32332-bit的乘法ALU
支持16-、32-、40-bit運(yùn)算
X和Y存儲(chǔ)器具有32-bit數(shù)據(jù)寬度
尋址模式

寄存器和存儲(chǔ)器直接尋址,寄存器間接尋址,立即數(shù)尋址以及寄存器+置換尋址。由于器件不提供位倒序?qū)ぶ罚荒苡密浖䜩韺?shí)現(xiàn)。支持兩個(gè)并發(fā)的循環(huán)緩沖器。尋址模式面向指針?biāo)阈g(shù)運(yùn)算。

特殊指令

支持16-bit和32-bit的混合指令。因?yàn)檗D(zhuǎn)移需要三個(gè)機(jī)器周期,許多指令的條件執(zhí)行可以避免轉(zhuǎn)移。Redo指令可以重新運(yùn)行用do指令裝入cache的代碼。其追索編碼器將加速Viterbi比較指令的執(zhí)行,并產(chǎn)生模式控制的效果。此外,用戶可以使用比較指令來決定Viterbi處理的最小公共通道。其他的特殊指令還有旋轉(zhuǎn)、取負(fù)、取絕對值和定點(diǎn)算術(shù)運(yùn)算。

開發(fā)支持

軟件工具包括ANSI C 編譯器、匯編器、連接器、調(diào)試器和軟仿真器。硬件工具包括在線仿真器和開發(fā)板。基于Gnu C的C編譯器進(jìn)行局部和全局的優(yōu)化,以便進(jìn)行C源代碼的調(diào)試,也可作C和匯編混合代碼的調(diào)試。匯編器支持ANSI C預(yù)處理,允許文件包含、宏置換、條件匯編,以及各種常數(shù)格式。該匯編器還允許表達(dá)式包含多個(gè)用戶定義的標(biāo)號,并支持預(yù)處理偽指令,使匯編器與調(diào)試器共享宏運(yùn)算。調(diào)試器支持單個(gè)或多個(gè)同類的或不同類的處理器的集成調(diào)試。支持?jǐn)?shù)據(jù)和指令斷點(diǎn)、接近實(shí)時(shí)的軟件仿真、混合的C代碼和匯編代碼調(diào)試、廣泛的代碼分析、用TargetView通信系統(tǒng)通過JTAG來作獨(dú)立的或連網(wǎng)的硬件仿真、硬件跟蹤,以及片內(nèi)的周期計(jì)數(shù)。廣泛的片內(nèi)調(diào)試硬件可以實(shí)時(shí)監(jiān)視許多處理器。在調(diào)試器中單步運(yùn)行代碼時(shí),可以圖形化地顯示通過DSP的數(shù)據(jù)流。這樣,用戶可以觀察到處理器中沒有充分使用的部分,修改代碼來提高效率。Synopsys COSSAP, Cadence SPW, 以及 Mathworks Matlab 等第三方的工具也支持 DSP16000的仿真。軟件工具的價(jià)格為1500美圓,硬件工具的價(jià)格為5000至7000美圓。

Motorola
DSP-56800

DSP 563xx


DSP 56800
結(jié)構(gòu)特點(diǎn)

16-bit定點(diǎn)DSP
帶有控制功能的DSP
可以中斷的硬件do循環(huán)
工作于2.7V和70MHz
尋址模式

寄存器直接尋址、短的或長的存儲(chǔ)器直接尋址、七個(gè)存儲(chǔ)器間接尋址、以及立即數(shù)尋址。還支持短的轉(zhuǎn)移偏置和循環(huán)緩沖器的模數(shù)計(jì)算。

特殊指令

可以作單指令或塊指令的硬件do或repeat循環(huán)。與ALU運(yùn)算并行的單個(gè)或雙的并行搬移指令,在取指令的同時(shí)允許作兩個(gè)存儲(chǔ)器訪問。允許對任何寄存器或存儲(chǔ)器作位操作。在作單周期乘法和MAC的同時(shí),作取整、加、減、平方。使用一個(gè)條件轉(zhuǎn)移指令和比較指令,實(shí)現(xiàn)搜索和分類算法。如果特定的條件為真,則DSP執(zhí)行從一個(gè)寄存器到另一個(gè)的傳輸(例如,存儲(chǔ)一個(gè)數(shù)列里最大值的索引值)。

開發(fā)支持

使用OnCE口,通過JTAG接口作片上仿真。CodeWarrior提供集成的開發(fā)環(huán)境,其中包括C編譯器、匯編器、連接器、軟仿真器、以及圖形化的源代碼和匯編級的調(diào)試器。其評估模塊為DSP56824EVM,開發(fā)系統(tǒng)為DSP-56824ADS。



DSP 563xx
結(jié)構(gòu)特點(diǎn)

24-bit定點(diǎn)DSP
七級流水,包含兩個(gè)取指、一個(gè)解碼、兩個(gè)地址產(chǎn)生、以及兩個(gè)執(zhí)行
具有條件ALU指令
以寄存器為基礎(chǔ)的結(jié)構(gòu)
與核執(zhí)行單元并發(fā)的六通道DMA操作
多數(shù)器件工作于3.3V,并兼容5V的I/O;有些器件工作于1.8V,兼容3.3V的I/O
與核并行工作的濾波器協(xié)處理器
特殊指令

桶型移位器支持多bit移位指令,可以在兩個(gè)方向上移動(dòng)任意多位。該移位器還支持bit流解析與產(chǎn)生。支持并行ALU指令的條件執(zhí)行。如果測試條件為假,則處理器執(zhí)行NOP指令。563xx執(zhí)行16-bit的算術(shù)運(yùn)算,這對于諸如LD-CELP等壓縮算法非常有用。通常,用24-bit的結(jié)構(gòu)來作16-bit的運(yùn)算時(shí),性能會(huì)有所降低,因?yàn)楸仨氂密浖䦟?4-bit的數(shù)作舍入運(yùn)算。

開發(fā)支持

開發(fā)系統(tǒng)可以用于評估芯片和目標(biāo)系統(tǒng)。該系統(tǒng)包括應(yīng)用開發(fā)模塊、主機(jī)接口卡、命令轉(zhuǎn)換器、匯編器、軟仿真器、以及C編譯器。以JTAG為基礎(chǔ)的OnCE口可用于實(shí)時(shí)檢查所有的內(nèi)部總線,記錄最后的十二條指令。MOTOROLA提供用于DSP563xx系列的套裝的56種硬件的和軟件的工具。第三方的工具包括Tasking的編譯器和調(diào)試器,Domain Technologies的調(diào)試器。

Lucent/Motorola
StarCore SC100


StarCore SC100
結(jié)構(gòu)特點(diǎn)

16-bit定點(diǎn)DSP核
DSP結(jié)構(gòu)可以升級
可變長度指令提高代碼的效率和并行性
更好的C程序編譯器


尋址模式

寄存器直接尋址、地址寄存器間接尋址、與程序計(jì)數(shù)器相關(guān)的尋址模式、以及用立即數(shù)來決定感興趣的數(shù)據(jù)或地址的特殊尋址模式。

特殊指令

SC140的多個(gè)乘法器支持帶符號的和無符號操作數(shù),包括小數(shù)與整數(shù)格式的運(yùn)算及其各種組合。其MAC單元支持加、減、取負(fù)、取絕對值、以及清零。MAC單元還支持除法、比較、最大值/最小值運(yùn)算,在寄存器、算術(shù)移位和取整之間轉(zhuǎn)移。通過將寄存器中的值看成是打包成對的16-bit的操作數(shù),支持單指令多數(shù)據(jù)(SIMD)的最大值/最小值、加、減(MAX2,ADD2,SUB2)。使用這些指令,可以在單個(gè)周期內(nèi)執(zhí)行八個(gè)加法,或最大值/最小值運(yùn)算。SC140包括一個(gè)專門的最大值/最小值運(yùn)算單元,和維特比(Viterbi)的左移指令一起工作,以便有效地實(shí)現(xiàn)維特比編碼算法。

開發(fā)支持

其開發(fā)工具包括匯編器、優(yōu)化器、連接器、軟仿真器、ANSI C編譯器及與C11兼容的C/C11編譯器。該編譯器支持ITU/ETSI標(biāo)準(zhǔn)。

Texas Instrument
TMS320C2000

TMS320C5000

TMS320C6000


TMS320C2000
結(jié)構(gòu)特點(diǎn)

16-bit定點(diǎn)DSP
哈佛結(jié)構(gòu)支持兩個(gè)分開的總線結(jié)構(gòu)
雙訪問RAM允許在同一個(gè)周期內(nèi)讀或?qū)慠AM兩次
工作于3.3V


綜合介紹

TI的TMS320C2000 DSP是基于320C2xLP核。C2xLP核具有4級流水,工作在40MHz。具有JTAG仿真模塊。

C2xLP有一個(gè)中心算術(shù)邏輯單元(CALU),及32-bit的累加器(Acc)。Acc也是CALU的一個(gè)輸入。Acc的其他輸入包括16316-bit的乘法器通過定標(biāo)移位器,以及輸入數(shù)據(jù)定標(biāo)移位器。軟件可以通過進(jìn)位位旋轉(zhuǎn)Acc的內(nèi)容,來實(shí)施位操作和測試。

為了實(shí)現(xiàn)小數(shù)的算術(shù)運(yùn)算和驗(yàn)證小數(shù)的乘積,C2xLP的乘積寄存器的輸出通過乘積移位器,以抑制運(yùn)算中產(chǎn)生的多出來的bit。該乘積定標(biāo)移位器允許作128個(gè)乘積累加而不會(huì)產(chǎn)生溢出。基本的乘積累加(MAC)周期,包括將一個(gè)數(shù)據(jù)存儲(chǔ)器的值乘以一個(gè)程序存儲(chǔ)器的值,并將結(jié)果加給累加器。當(dāng)C2000循環(huán)執(zhí)行MAC,則程序計(jì)數(shù)器自動(dòng)增量,并將程序總線釋放給第二個(gè)操作數(shù),從而達(dá)到單周期執(zhí)行MAC。

C2xLP可以訪問64000個(gè)16-bit的I/O口。C2000的外設(shè),諸如串口、軟件等待狀態(tài)發(fā)生器等都映射為數(shù)據(jù)或I/O空間。用戶程序必須使用其他的I/O地址來訪問映射在I/O空間的片外外設(shè)。C2000系列中的多數(shù)芯片可以產(chǎn)生0-7個(gè)等待狀態(tài)。

C2000系列由C20x和C24x系列組成。C20x的目標(biāo)是低性能的電信設(shè)備,而C24x的目標(biāo)是數(shù)字化的馬達(dá)控制。

C24x系列的芯片具有事件管理器,以便支持馬達(dá)控制。該事件管理器具有三個(gè)加/減定時(shí)器和九個(gè)比較器,可以和波形產(chǎn)生邏輯配合產(chǎn)生12PWM的輸出。支持同步的和異步的PWM產(chǎn)生。它還支持一個(gè)空間向量PWM狀態(tài)機(jī),用開關(guān)功率晶體管來實(shí)現(xiàn),以延長晶體管的壽命和降低功耗。一個(gè)關(guān)機(jī)段產(chǎn)生單元也有助于保護(hù)功率晶體管。此外,事件管理器還集成了四個(gè)采集輸入,其中的兩個(gè)用于光編碼器正交脈沖的直接輸入。

C24x系列的芯片還集成有10-bit的A/D變換器,在500ns的時(shí)間內(nèi)對模擬信號作變換。另外還有8個(gè)或16個(gè)復(fù)用輸入通道。有些新的C24x系列的芯片還有自動(dòng)排序的能力,按順序作16個(gè)變換,一個(gè)獨(dú)立的采樣/保持(S/H)預(yù)定標(biāo)器,通過支持不同的輸入阻抗,給用戶以極大的靈活性。有些C24x系列的芯片有8K-32K字的閃爍存儲(chǔ)器(flash)。

尋址模式

立即數(shù)尋址、分頁的存儲(chǔ)器直接尋址(指令里的7-bit和數(shù)據(jù)頁指針的9-bit形成數(shù)據(jù)存儲(chǔ)器的地址)、寄存器間接尋址(使用8個(gè)輔助寄存器中的一個(gè))、輔助寄存器自動(dòng)增量或減量尋址。沒有循環(huán)緩沖。

特殊指令

MAC和數(shù)據(jù)移動(dòng)指令(MACD)增加了將片內(nèi)RAM的數(shù)據(jù)塊移向MAC單元。當(dāng)CPU使用輸入的數(shù)據(jù)值時(shí),CPU將該數(shù)據(jù)值移至下一個(gè)存儲(chǔ)器單元。MACD也是使用循環(huán)緩沖器的一個(gè)替代方法,對于卷積和橫向?yàn)V波器是很有用的。C2000可以作單指令循環(huán)、乘法并累加前一個(gè)積、乘法并減去前一個(gè)積、累加前一個(gè)積并移動(dòng)數(shù)據(jù)、多條件轉(zhuǎn)移和調(diào)用、存長立即數(shù)到數(shù)據(jù)存儲(chǔ)器、向左或向右旋轉(zhuǎn)累加器、數(shù)據(jù)塊移動(dòng)。

開發(fā)支持

TI的Code Composer4.10是一個(gè)集成的開發(fā)環(huán)境,支持編輯、建立、調(diào)試、分析和項(xiàng)目管理。這個(gè)價(jià)值為1995美圓的開發(fā)環(huán)境包括ANSI C編譯器、匯編器、連接器、軟仿真器、實(shí)時(shí)分析器,數(shù)據(jù)是可視化的。TI的仿真器支持JTAG非插入式的邊界掃描仿真。該公司也分別提供C編譯器、匯編器、連接器、軟仿真器、實(shí)時(shí)分析器和應(yīng)用程序庫。第三方可以提供評估模塊、仿真器、以及應(yīng)用算法。



TMS320C5000
結(jié)構(gòu)特點(diǎn)

16-bit定點(diǎn)DSP
C55x有雙MAC單元;C54x有單MAC單元
C55的指令長度可變,且沒有排隊(duì)的限制
C55x有12組總線;C54x有8組總線
工作于0.9V和300MHz
綜合介紹


C5000是16-bit定點(diǎn)DSP系列,包括舊有的C5x、當(dāng)前主流的C54x和最新的C55x。

C55x和C54x源代碼兼容,而C5x和C2x源代碼兼容。C54x關(guān)注于低功耗,而C55x則將低功耗提到一個(gè)新水平:300MHz的C55x和120MHz的C54x相比,性能提高5倍,而功耗則降到六分之一。盡管C5x還在全線生產(chǎn),但公司已經(jīng)將新設(shè)計(jì)轉(zhuǎn)向C54x 和C55x。C54x 和C55x采用改進(jìn)的哈佛結(jié)構(gòu)。

C55x 具有12組獨(dú)立的總線,而C54x則有8組。它們都有一組程序總線和相應(yīng)的程序地址總線。C54x總線的寬度為16-bit,而C55x總線的寬度為32-bit。C55x有三組數(shù)據(jù)讀總線和兩組數(shù)據(jù)寫總線,而C54x有兩組數(shù)據(jù)讀總線和一組數(shù)據(jù)寫總線。每組數(shù)據(jù)總線都有其相應(yīng)的地址總線。C55x的數(shù)據(jù)地址總線的寬度為24-bit,而C54x的數(shù)據(jù)地址總線的寬度為16-bit。

C54x使用兩個(gè)輔助寄存器算術(shù)單元,在每個(gè)周期內(nèi)產(chǎn)生一個(gè)或兩個(gè)數(shù)據(jù)存儲(chǔ)器地址。這四組內(nèi)部總線和兩個(gè)地址發(fā)生器使其可以進(jìn)行多操作數(shù)運(yùn)算。

C55x的地址-數(shù)據(jù)流單元(ADFU)包含了專門的硬件來管理五組數(shù)據(jù)總線。該ADFU也可以作為通用的16-bit ALU,用于簡單的算術(shù)運(yùn)算。該ALU從指令緩沖單元(IU)接收立即數(shù),和存儲(chǔ)器、ADFU寄存器、數(shù)據(jù)計(jì)算單元(DCU)寄存器、程序流單元(PFU)寄存器作雙向通信。無論是ALU,還是三個(gè)地址寄存器ALU(ARAU)中的一個(gè),都可以修改作間接尋址的九個(gè)地址寄存器。這三個(gè)ARAU為C55x的三組數(shù)據(jù)讀總線提供獨(dú)立的地址。這種并行性保證了在每個(gè)CPU周期內(nèi)DCU去讀兩個(gè)16-bit的操作數(shù)和一個(gè)16-bit的系數(shù)。

C55x的DCU包含了兩個(gè)MAC單元,在單周期內(nèi)作兩個(gè)17217-bit的MAC運(yùn)算。它還包含了一個(gè)40-bit的ALU和四個(gè)40-bit的累加器寄存器、一個(gè)桶型移位器、以及專門的Viterbi算法硬件。每個(gè)MAC單元包含一個(gè)乘法器和帶32-或40-bit飽和邏輯的加法器。三個(gè)數(shù)據(jù)讀總線將兩個(gè)數(shù)據(jù)流和一個(gè)公共系數(shù)流送給兩個(gè)MAC單元。用戶可以用ALU作32-bit的運(yùn)算,或分開作兩個(gè)16-bit的運(yùn)算。除開接受從DCU的40-bit Acc寄存器來的輸入外,ALU還從IU接受立即數(shù),并和存儲(chǔ)器、ADFU寄存器、PFU寄存器作雙向通信。

C54x是單17217-bit MAC機(jī)器,有一個(gè)40-bit的加法器、兩個(gè)40-bit的Acc和一個(gè)分開的40-bit的ALU。與C55x相類似,C54x的ALU也可以作成兩個(gè)16-bit的配置,完成兩個(gè)單周期運(yùn)算。乘法器輸出處的40-bit的加法器允許作非流水的MAC運(yùn)算,以及并行的兩個(gè)加法和乘法。單周期歸一化和指數(shù)編碼支持浮點(diǎn)數(shù)運(yùn)算。

兩個(gè)系列的結(jié)構(gòu)都支持一個(gè)桶型移位器,將40-bit的Acc的值左移或右移最多達(dá)31bit。該桶型移位器將移位后的值送給DCU的ALU,以便作進(jìn)一步的運(yùn)算。指令集中關(guān)于二操作數(shù)、三操作數(shù)和32-bit操作數(shù)的指令,支持結(jié)構(gòu)的并行性。八個(gè)可以獨(dú)立尋址的輔助寄存器和軟件堆棧提高了C編譯器的效率。

C55x可以執(zhí)行可變長度的指令,這和C54x有顯著的不同。C54x的指令長度為固定的16-bit,而C55x的指令長度則從8到48 bit。C55x的IU緩存64 byte的代碼,且有一個(gè)解碼邏輯來確認(rèn)可變長度指令中各指令的區(qū)別。局部循環(huán)指令使用指令緩沖隊(duì)列來循環(huán)執(zhí)行代碼塊。指令緩沖隊(duì)列還可以在執(zhí)行條件程序流控制指令的條件測試時(shí),推測性地提取指令。指令解碼器按排列順序?qū)χ噶罱獯a,而不是執(zhí)行動(dòng)態(tài)時(shí)序,從而可以在預(yù)定的時(shí)間得到結(jié)果。

C55x的PFU跟蹤程序的執(zhí)行點(diǎn),并為多達(dá)16Mbyte的程序存儲(chǔ)器產(chǎn)生24-bit的地址。該單元的硬件,可用于循環(huán)、靈活性轉(zhuǎn)移、條件執(zhí)行、以及流水保護(hù)。單獨(dú)的程序計(jì)數(shù)器可以保證從子程序或中斷服務(wù)子程序快速返回。該P(yáng)FU還包括管理指令流水和四個(gè)CPU狀態(tài)寄存器的邏輯。它以硬件方式可以提供四層塊循環(huán)嵌套。其硬件還支持條件循環(huán)。PFU處理流水控制冒險(xiǎn),并對讀后寫及寫后讀提供保護(hù)。當(dāng)在指令流中這種冒險(xiǎn)發(fā)生時(shí),流水保護(hù)邏輯就插入一些周期,保證程序的正確執(zhí)行。集成的軟件等待狀態(tài)發(fā)生器使用戶可以使用較慢的外部存儲(chǔ)器。

該系列的所有DSP都支持片內(nèi)雙訪問RAM(DARAM),用戶可以將其配置為程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器。C55x還有擴(kuò)展的同步突發(fā)性RAM、同步DRAM和異步SRAM及DRAM。片內(nèi)的鎖相環(huán)(PLL)允許用戶抑制時(shí)鐘,但C55x核還可以激活與自動(dòng)管理片內(nèi)外設(shè)和存儲(chǔ)器的功耗。當(dāng)程序不再訪問片內(nèi)存儲(chǔ)器時(shí),它們就會(huì)被切換到低功率模式。處理器對片內(nèi)外設(shè)也提供類似的控制。

C55x還設(shè)置了用戶可控的低功率IDLE域,包括CPU、DMA、外設(shè)、外部存儲(chǔ)器接口、指令隊(duì)列、以及時(shí)鐘發(fā)生電路。

尋址模式

C54x支持單數(shù)據(jù)存儲(chǔ)器操作數(shù)尋址和32-bit操作數(shù)尋址,還使用并行指令支持雙數(shù)據(jù)存儲(chǔ)器操作數(shù)尋址。它也提供立即數(shù)尋址、存儲(chǔ)器映射尋址、循環(huán)尋址和位倒序?qū)ぶ贰?/p>

在C54x的基礎(chǔ)上,C55x還支持絕對值尋址、寄存器間接尋址、直接尋址,即位移模式。C55x的ADFU包括專門的寄存器,支持使用間接尋址指令的循環(huán)尋址。可以同時(shí)使用五個(gè)獨(dú)立的循環(huán)緩沖器和三個(gè)獨(dú)立的緩沖器長度。這些循環(huán)緩沖器沒有地址排隊(duì)的限制。C54x支持兩個(gè)任意長度的循環(huán)緩沖器。

特殊指令

C54x有專門功能指令,如FIR濾波器、單指令或塊指令循環(huán)、八個(gè)并行指令(如并行存儲(chǔ)或乘加)、乘法累加和減(十個(gè)乘法指令)、八個(gè)雙操作數(shù)存儲(chǔ)器搬移。C55x還有專門的指令,充分利用增加的功能單元和并行能力的優(yōu)點(diǎn)。用戶定義的并行機(jī)制,允許將執(zhí)行兩個(gè)操作的指令加以組合。

開發(fā)支持

eXpressDSP軟件技術(shù)包括DSP集成開發(fā)工具:可升級的實(shí)時(shí)軟件基礎(chǔ)、可重復(fù)使用的應(yīng)用軟件接口標(biāo)準(zhǔn)、以及不斷增加的第三方的軟件模塊。Code Composer Studio是一個(gè)集成的DSP開發(fā)工具套件,包括C5000的C編譯器、DSP/BIOS、實(shí)時(shí)數(shù)據(jù)交換技術(shù)等。

]]>
TMS320C55x嵌入式實(shí)時(shí)多任務(wù)系統(tǒng)DSP/BIOS IIhttp://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1602&Page=1wangxinxin2010-11-22 10:39:36

引言

現(xiàn)在,由于復(fù)雜的硬件功能已經(jīng)集成到標(biāo)準(zhǔn)集成電路中,系統(tǒng)開發(fā)人員首先應(yīng)該知道如何選擇合適的芯片,然后基于此硬件結(jié)構(gòu)設(shè)計(jì)軟件。系統(tǒng)設(shè)計(jì)者有兩種選擇:使用專用集成電路或可編程DSP實(shí)現(xiàn)信號處理。相比之下,可編程DSP有兩個(gè)優(yōu)點(diǎn):

可擴(kuò)充性:設(shè)計(jì)者可以根據(jù)要求的處理效率,和需要的資源來量體選用DSP及所需的片數(shù)。

可升級性:將硬件的升級轉(zhuǎn)化成比較容易升級的軟件改動(dòng)。

使用可編程DSP時(shí),必須對芯片的各種資源(例如CPU,存儲(chǔ)區(qū),外設(shè)等)加以管理規(guī)劃,通過DSP/BIOS可以輕松的完成這些工作。

TI公司TMS320C5000系列都帶有嵌入式DSP/BIOS,它有很強(qiáng)的實(shí)時(shí)分析和任務(wù)實(shí)時(shí)管理能力,可以有效的提高項(xiàng)目的開發(fā)效率,尤其表現(xiàn)在需要實(shí)時(shí)多任務(wù)的大型系統(tǒng)中。圖1為DSP/BIOS的部件結(jié)構(gòu)。

DSP/BIOS II簡述

TI公司的DSP/BIOS II 是在DSP/BIOS I 基礎(chǔ)上的擴(kuò)展。它支持更多的軟件模塊,通過修改內(nèi)核提供搶先式多任務(wù)服務(wù);它把傳統(tǒng)并行處理系統(tǒng)的內(nèi)核服務(wù)集成為可測試內(nèi)核;它增加了設(shè)備獨(dú)立的I/O數(shù)據(jù)流模型,繼續(xù)保留已有的數(shù)據(jù)管道;它增加了動(dòng)態(tài)內(nèi)存分配與內(nèi)存管理。

TI的開發(fā)平臺(tái)CCS IDE 2.0中集成了DSP/BIOS II,可以對程序進(jìn)行實(shí)時(shí)跟蹤與分析,提高應(yīng)用程序開發(fā)的可靠性。可以在CCS插件中實(shí)時(shí)觀察DSP/BIOS內(nèi)核中各線程的執(zhí)行狀態(tài)與對象的當(dāng)前屬性。通過設(shè)置工具,開發(fā)者可以對各個(gè)模塊實(shí)行配置。

DSP/BIOS II 核心API技術(shù)

目標(biāo)應(yīng)用程序通過調(diào)用DSP/BIOS II的API來獲得運(yùn)行時(shí)的服務(wù)。一個(gè)單個(gè)DSP/BIOS II 模塊可以管理多種類的內(nèi)核對象,并且依據(jù)全局參量的設(shè)定來控制整個(gè)行為。DSP/BIOS II 可以歸納為六大種類:

內(nèi)核執(zhí)行線程

圖片點(diǎn)擊可在新窗口打開查看

圖1  DSP/BIOS 部件結(jié)構(gòu)圖

圖片點(diǎn)擊可在新窗口打開查看

圖2  線程優(yōu)先級示意圖

圖片點(diǎn)擊可在新窗口打開查看

圖3  數(shù)據(jù)流示意圖

圖片點(diǎn)擊可在新窗口打開查看

圖4 數(shù)據(jù)管道示意圖

DSP/BIOS II提供四類不同的執(zhí)行線程。每一類線程又具有不同的執(zhí)行、搶先和懸掛特性。DSP/BIOS II 支持兩個(gè)高優(yōu)先級的中斷線程和事先備好的后臺(tái)空閑過程循環(huán)。內(nèi)核執(zhí)行線程通過HWI, SWI和IDL模塊進(jìn)行管理。另外,DSP/BIOS II新提供了多任務(wù)線程類,能較好的完成任務(wù)間的同步,它由TSK模塊管理,在任何執(zhí)行時(shí)刻為懸掛和恢復(fù)執(zhí)行同步,包括調(diào)整自身或其他任務(wù)的優(yōu)先級。這種同步化的任務(wù)給并發(fā)系統(tǒng)設(shè)計(jì)提供了良好的基礎(chǔ)。

硬件抽象

DSP/BIOS II 提供硬件的邏輯接口。它獨(dú)立于硬件實(shí)現(xiàn)。它對硬件部分的訪問、配置,內(nèi)存映射、片內(nèi)定時(shí)器和硬件中斷等進(jìn)行抽象,簡化了應(yīng)用的移植。它通過可視化的設(shè)置工具定義內(nèi)存映射、中斷向量表,對定時(shí)器編程,和完成動(dòng)態(tài)的內(nèi)存分配與釋放。

設(shè)備獨(dú)立I/O

設(shè)備獨(dú)立I/O模塊執(zhí)行數(shù)據(jù)傳輸服務(wù),傳輸可以在DSP與外設(shè)之間和多線程之間進(jìn)行。DSP/BIOS II 支持?jǐn)?shù)據(jù)管道(pipe)和數(shù)據(jù)流(stream)兩種傳送方式。數(shù)據(jù)管道是在讀寫線程之間快速傳送數(shù)據(jù)的小型統(tǒng)一部件。數(shù)據(jù)流為緩沖方案增加了靈活性使之適應(yīng)更廣的需求。數(shù)據(jù)流依靠多個(gè)潛在的設(shè)備驅(qū)動(dòng)器,這種設(shè)備驅(qū)動(dòng)器封裝了設(shè)備獨(dú)立的屬性與方法。在數(shù)據(jù)通過堆疊(stacking)機(jī)制傳送時(shí),設(shè)備驅(qū)動(dòng)器能夠執(zhí)行數(shù)據(jù)處理操作,驅(qū)動(dòng)器在數(shù)據(jù)通道中實(shí)行流水線處理。PIP和SIO模塊分別管理目標(biāo)應(yīng)用中的數(shù)據(jù)管道和流的傳送服務(wù)。SIO同DEV模塊結(jié)合,使DEV通過SIO發(fā)送和接收數(shù)據(jù)。

線程間的通信和同步

DSP/BIOS II 中的線程間通信和同步模塊支持多任務(wù)。信號量(semaphores)是最主要的同步方式。任務(wù)運(yùn)用信號量保持同步資源訪問的同步。訪問外設(shè)的數(shù)據(jù)緩沖區(qū),以及訪問共享存儲(chǔ)區(qū)都是資源同步的典型事例。信號量還控制著多任務(wù)執(zhí)行的同步。信號量由SEM模塊管理,而LCK模塊提供共享資源的判優(yōu)和互斥。數(shù)據(jù)隊(duì)列可用于線程間通信。郵箱(mailbox)類似于數(shù)據(jù)隊(duì)列,能夠理想的完成任務(wù)通信。數(shù)據(jù)隊(duì)列由QUE模塊管理,郵箱模塊由MBX管理。

實(shí)時(shí)分析

實(shí)時(shí)分析(TRA)模塊在應(yīng)用程序執(zhí)行期間與DSP項(xiàng)目實(shí)時(shí)交互和診斷。LOG,STS和TRC模塊對這些功能進(jìn)行管理。主機(jī)與目標(biāo)板之間的數(shù)據(jù)傳輸能力對實(shí)施分析是非常關(guān)鍵的。DSP/BIOS提供HST和RTDX模塊來管理這些功能。CCS IDE中提供了以下六種實(shí)時(shí)分析工具:

—CPU負(fù)載圖

負(fù)載圖提供的是目標(biāo)CPU的負(fù)載曲線。CPU負(fù)載的定義是除去執(zhí)行最低優(yōu)先級任務(wù)以外的時(shí)間量。最低優(yōu)先級任務(wù)是只在其他線程都不運(yùn)行時(shí)才執(zhí)行的任務(wù)。因此,CPU負(fù)載包括從目標(biāo)向主機(jī)傳送數(shù)據(jù)和執(zhí)行附加后臺(tái)任務(wù)所需的時(shí)間。

——執(zhí)行圖示

在執(zhí)行圖示窗口中,我們可以看到各個(gè)線程的活動(dòng)方式。執(zhí)行圖的刷新速率可以通過RTA控制版設(shè)定。圖形中還包括了信號量的活動(dòng),周期性函數(shù)標(biāo)記(tick),和時(shí)鐘模塊標(biāo)記。執(zhí)行圖示能從整體上看到項(xiàng)目所有線程的活動(dòng)狀態(tài)。

——主機(jī)通道控制

利用信道控制窗口可以把文件綁定在定義的主機(jī)通道上,啟動(dòng)信道上的數(shù)據(jù)傳輸以及監(jiān)測數(shù)據(jù)傳輸流量。

——信息記錄

選定某一記錄名,從此窗口可看到程序運(yùn)行的信息記錄。主機(jī)從目標(biāo)板獲取DSP/BIOS數(shù)據(jù)期間的記錄信息將顯示在此窗口中。開發(fā)者定義的記錄信息也顯示在窗口中。

——統(tǒng)計(jì)觀察

統(tǒng)計(jì)觀察窗可以計(jì)算出事件、變量出現(xiàn)的次數(shù),給出其最大值,最小值和平均值,監(jiān)測定時(shí)時(shí)間和變量的增值的實(shí)際值和期望值差。

——實(shí)時(shí)控制面板

它對運(yùn)行時(shí)間中不同類型進(jìn)行追蹤控制,在默認(rèn)情況下,所有類型的跟蹤都是允許的。為跟蹤任意一種類型,必須使能全局主機(jī)(GLOBAL HOST)。通過實(shí)時(shí)改變控制版的屬性,還可以設(shè)定實(shí)時(shí)分析工具的刷新頻率。

]]>
DSP-4300系列數(shù)字式電纜測試儀http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1595&Page=1wangxinxin2010-11-22 9:51:59概述 
  • 3種型號可供選擇:4300、4000PL以及4000
  • 使用世界上最堅(jiān)固耐用的電纜測試儀,可以對電纜和光纜進(jìn)行測試、認(rèn)證以及文檔備案。利用高速數(shù)字處理技術(shù)進(jìn)行快速的測試。
  • 出眾的診斷功能使故障排除更加快速簡便
  • 全新 PM06!測試頭是第一個(gè)可以測試 Cat 6 是否符合標(biāo)準(zhǔn)以及互用性的中性、屏蔽插頭 
  • 新的永久鏈路適配器可獲得更多的“通過”結(jié)果,消除錯(cuò)誤的“失敗”結(jié)果
  • 功能強(qiáng)大的光纜測試適配器可執(zhí)行雙光纜、雙波長的光纜認(rèn)證
  • 使用 LinkWare? 電纜管理軟件可以方便地對電纜和光纜進(jìn)行管理和文檔備案
  • 支持中國國家標(biāo)
 
 
產(chǎn) 品 功 能
    卓越的性能、速度以及準(zhǔn)確性,這就是福祿克網(wǎng)絡(luò)公司備受贊譽(yù)的DSP-4000系列數(shù)字式電纜分析儀——含最新的DSP-4300
    DSP-4000系列數(shù)字式電纜分析儀能夠快速準(zhǔn)確地測試高性能的超5類,6類電纜鏈路及光纖鏈路。有了高級的數(shù)字平臺(tái),無論對一條鏈路重復(fù)測試多少次,DSP-4000系列數(shù)字式電纜分析儀都可保證測試的準(zhǔn)確性。頻率可達(dá)350MHZ的高帶寬測試能力、高級的診斷功能及詳盡的測試報(bào)告,DSP-4000系列數(shù)字式電纜分析儀可提供給您一套完整的測試、驗(yàn)證電纜和光纜并進(jìn)行文檔備案的方案。同其它FLUKE網(wǎng)絡(luò)測試儀一樣,DSP-4000系列數(shù)字式電纜分析儀堅(jiān)固耐用,可經(jīng)受的起網(wǎng)絡(luò)安裝環(huán)境中的摔碰及其它災(zāi)難。
新的模塊成為6類線測試中的突破
    新的DSP-4300可對高速銅纜及光纖網(wǎng)絡(luò)提供最全面的測試、驗(yàn)證解決方案。擴(kuò)展的內(nèi)置存儲(chǔ)卡,可以方便的下載電纜ID號,提高了工作效率以及準(zhǔn)確性。增強(qiáng)的6類通道適配器和永久鏈路適配器,都包含在標(biāo)準(zhǔn)的DSP-4300中。
網(wǎng)絡(luò)超級透視解決方案
    網(wǎng)絡(luò)超級透視方案將速度、準(zhǔn)確性及易用性集于一身,最大限度的確保了網(wǎng)絡(luò)性能及問題的快速判定。滿足您技術(shù)需求的產(chǎn)品、快速響應(yīng)的服務(wù)、不間斷的培訓(xùn)可助您發(fā)展企業(yè)。祿克網(wǎng)絡(luò)公司滿足您的所需,使您始終站立于當(dāng)今飛速發(fā)展的網(wǎng)絡(luò)世界之前。
DSP-4300:6類測試上的突破

    對于高速的銅纜和光纜,DSP-4300數(shù)字式電纜分析儀是最全面的電纜測試和驗(yàn)證工具。擁有了它,您將獲得精確的測試結(jié)果。
    無論您對數(shù)據(jù)管理有何需求,需要什么樣的測試能力,備受贊譽(yù)的FLUKE網(wǎng)絡(luò)公司的DSP-4300系列數(shù)字式電纜分析儀的每一個(gè)基本單元都能提供卓越的性能、速度和準(zhǔn)確性。
    如果您認(rèn)為現(xiàn)在的6類解決方案就是您的所需,全新的DSP-4300數(shù)字式電纜分析儀—6類測試的整體方案則比您看的更長遠(yuǎn)。
DSP-4300數(shù)字式電纜分析儀
  • 超過5類、超5類及6類線測試所要求的三級精度,延展了DSP-4000的測試能力,并同時(shí)獲得 UL 和 ETL SEMKO的認(rèn)證
  • 使用新的突破性的永久鏈路適配器可得到更多更準(zhǔn)確的“通過”結(jié)果,DSP-4300中包含該適配器
  • 隨機(jī)提供6類通道適配器及一個(gè)通道/流量適配器,從而精確測試6類通道
  • 自動(dòng)診斷電纜故障,以米或英尺準(zhǔn)確顯示故障位置
  • 擴(kuò)展的16MB主板集成存儲(chǔ)卡可存儲(chǔ)一整天的測試結(jié)果(300個(gè))
  • 可將符合TIA-606A標(biāo)準(zhǔn)的電纜ID號下載到DSP-4300數(shù)字式電纜分析儀中,節(jié)省時(shí)間同時(shí)確保了數(shù)據(jù)的準(zhǔn)確性
  • 隨機(jī)提供外置存儲(chǔ)卡以及更高級的電纜測試管理軟件包
DSP-4000系列數(shù)字式電纜分析儀選購指南
 
DSP-4300
DSP-4100
DSP-4000PL
DSP-4000
標(biāo)準(zhǔn)DSP-4300系列包裝
Cat6/5e 永久鏈路適配器
 
 
Cat6/5e 通道適配器
Cat6/5e 通道/流量適配器
 
 
 
主板集成存儲(chǔ)卡
可存儲(chǔ)多達(dá)300個(gè)測試結(jié)果
 
(僅限于概要測試)
多媒體卡及讀卡器
 
 
全面的6類測試解決方案
擴(kuò)展的主板集成存儲(chǔ)卡可以存儲(chǔ)一整天的測試結(jié)果,您也可以將測試結(jié)果存儲(chǔ)在外置的多媒體卡中
永久鏈路測試
   
業(yè)界第一個(gè)永久鏈路的測試解決方案,確保高性能和可重復(fù)操作性。
    現(xiàn)在DSP-4300中包含DSP-LIA101S永久鏈路接口適配器,DSP-LIA101S永久鏈路接口適配器將Fluke網(wǎng)絡(luò)公司DSP-4300系列電纜分析儀的基準(zhǔn)精度拓展到測試線的最遠(yuǎn)端,使雙絞線布線現(xiàn)場測試符合標(biāo)準(zhǔn)要求并且獲得非常好的測試結(jié)果。
Fluke網(wǎng)絡(luò)的永久鏈路適配器提供:
  • 全新的六類測試系統(tǒng)解決方案,提高最高的性能,獲得更多“通過”結(jié)果
  • 消除由于不良鏈路接口適配器造成的"失敗"結(jié)果,節(jié)省測試時(shí)間和成本。
  •  高于建議TIA/EIA-568-B標(biāo)準(zhǔn)的精度和可重復(fù)操作性。
  • 堅(jiān)固耐用,專有的設(shè)計(jì)保證在現(xiàn)場對回波損耗測試所要求的精度和穩(wěn)定性。
  •  符合TIA/EIA-568-B標(biāo)準(zhǔn)。
你知道鏈路中性能最差的地方是哪里嗎?
    很多安裝商并不知道,測試儀的適配器電纜也許就是測試中最薄弱的環(huán)節(jié)。傳統(tǒng)的適配器電纜,即使是高質(zhì)量的屏蔽電纜,可能是很多現(xiàn)場測試失敗的根源。由于在惡劣的現(xiàn)場環(huán)境下經(jīng)常性的磨損和拉拽,這些電纜的性能會(huì)隨著時(shí)間的推移而降低,造成由于回波損耗不合格而導(dǎo)致的測試失敗。測試失敗造成的經(jīng)濟(jì)損失是很大的,并增加了用于故障診斷和重復(fù)測試的時(shí)間。Fluke網(wǎng)絡(luò)的永久鏈路適配器增加了測試通過的次數(shù),而且所需的投資比一條失敗鏈路造成的損失還要少。
最新的專有技術(shù)確保了測試精度,同時(shí)節(jié)省了時(shí)間和金錢
    最新永久鏈路適配器的設(shè)計(jì)可以提供測試回波損耗所需的高精度和穩(wěn)定性,同時(shí)也增加了其他參數(shù)的測試精度。通過將DSP-4300系列數(shù)字電纜分析儀的基準(zhǔn)精度延伸至測試適配器的遠(yuǎn)端,永久鏈路適配器消除了由傳統(tǒng)測試儀適配器產(chǎn)生的失敗結(jié)果的影響。此時(shí)的測試通過是真正的通過。如果測試失敗,你可以確保與測試儀和適配器無關(guān)。
適配器末端模塊化
    全新的用于DSP永久鏈路適配器末端的個(gè)性化模塊,可確保適配器與被測鏈路間的連接得到優(yōu)化的NEXT性能,以及更多的通過結(jié)果。每一個(gè)模塊可與多種制造廠商的6類插座兼容。這些模塊結(jié)實(shí)、輕便,可以用來代替制造廠商指定的適配器使用。

滿足標(biāo)準(zhǔn)要求,贏得更多合同
    不要因?yàn)槟愕陌惭b不符合TIA/EIA-568-B標(biāo)準(zhǔn)而丟掉合同。基本鏈路將會(huì)被永久鏈路所取代。相信Fluke網(wǎng)絡(luò)會(huì)為你提供技術(shù)和儀器來精確地反映安裝質(zhì)量并保證測試結(jié)果滿足建議標(biāo)準(zhǔn)的要求。現(xiàn)在你能夠以最高的精度,可靠性和自信心測試由建議TIA/EIA-568-B標(biāo)準(zhǔn)所定義的永久鏈路。
革新性的網(wǎng)絡(luò)超級透視方案
    Fluke網(wǎng)絡(luò)的永久鏈路解決方案使你和未來的標(biāo)準(zhǔn)保持一致,同時(shí)以最高的精度,可靠性和自信心進(jìn)行今天的測試。
通道及流量測試

    安裝用于網(wǎng)絡(luò)運(yùn)行的電纜,依賴于精確地測試及認(rèn)證測試。福祿克網(wǎng)絡(luò)增強(qiáng)的6類通道適配器具備更強(qiáng)大的測試能力,提高了測試精度。

    現(xiàn)在您可以利用DSP的精度來測試6類的通道,DSP-4300數(shù)字式電纜分析儀所帶的6類通道適配器由于使用了遠(yuǎn)端連接補(bǔ)償技術(shù),性能進(jìn)一步增強(qiáng),可以得到比其它任何一種測試儀更精確的通道測試結(jié)果,讓您更真實(shí)的看到電纜系統(tǒng)的性能。
 
    6類適配器中有一種叫通道/流量適配器,與DSP配合使用可以對網(wǎng)絡(luò)診斷及故障排除執(zhí)行流量監(jiān)測,這是其它任何一種電纜測試儀所不具備的功能。使用它可監(jiān)測10BASE-T和100BASE-TX以太網(wǎng)的網(wǎng)絡(luò)流量,檢查和測量脈沖噪聲。該適配器也可幫您識(shí)別HUB端口的連接,檢測這些連接所支持的標(biāo)準(zhǔn)。以前通道/流量適配器作為一個(gè)選件,現(xiàn)在標(biāo)準(zhǔn)的DSP-4300包裝中包含了該適配器。
數(shù)字測試技術(shù)

數(shù)字測試技術(shù)可得到更好的診斷性能,更快的速度以及更高的測試精度

    DSP-4300系列數(shù)字式電纜分析儀是市場上第一臺(tái)基于可擴(kuò)展數(shù)字化平臺(tái)的測試儀器,確保滿足新標(biāo)準(zhǔn)的要求。這意味著您在DSP-4000系列數(shù)字式電纜分析儀上所付出的投資,即使到將來也是受到保護(hù)的。
    福祿克網(wǎng)絡(luò)作為數(shù)字測試技術(shù)的先驅(qū)者,采用數(shù)字脈沖激發(fā)被測鏈路,并用數(shù)字信號處理技術(shù)處理時(shí)域中的測試結(jié)果。這種測試方法已證明在精度和可重復(fù)性上超過所有模擬或交換頻率測試方法。DSP系列數(shù)字式電纜分析儀可與任一實(shí)驗(yàn)室測試設(shè)備的精度相匹敵,作為堅(jiān)固耐用的手持式測試儀器,它由可充電電池組長時(shí)間供電。
功能強(qiáng)大的故障診斷
    時(shí)域測量的另一個(gè)優(yōu)點(diǎn)就是強(qiáng)大的故障診斷能力,只需輕觸按鍵,就可迅速得到精確的、圖形化的故障診斷信息,同時(shí)給出精確的故障點(diǎn)。
網(wǎng)絡(luò)流量監(jiān)測
    為了輔助檢測網(wǎng)絡(luò)利用率,DSP-4300系列測試儀可監(jiān)測10BASE-T和100BASE-TX等以太網(wǎng)的流量,監(jiān)測雙絞線上的脈沖噪聲,識(shí)別所有HUB端口連接,并判斷HUB端口所支持的標(biāo)準(zhǔn)。另外,脈沖噪聲功能還可以檢測和排除噪聲,包括來自被測鏈路之外的串?dāng)_所產(chǎn)生的干擾。
強(qiáng)大的,高精度的故障診斷功能
使用精確的故障診斷功能可得到更快速的“通過”結(jié)果
    DSP-4000系列數(shù)字式電纜分析儀能夠幫助您迅速地識(shí)別和定位被測鏈路中的開路,短路和連接異常等問題。您只需要按一下故障信息鍵(FAULT-INFO),DSP- 4000 便開始自動(dòng)測試鏈路的故障并以圖形方式顯示故障在鏈路中的 位置利用高精度時(shí)域串?dāng)_(HDTDX)和高精度時(shí)域反射(HDTDR)技術(shù), DSP-4000能夠找出鏈路中串?dāng)_的具體位置并給出故障點(diǎn)與測試儀的準(zhǔn)確距離。
    這種高精度的診斷功能使DSP-4300系列成為業(yè)界第一臺(tái)能夠精確定位串?dāng)_或回波損耗故障源的電纜測試儀器
快速的光纜測試
測試和驗(yàn)證高速光纖網(wǎng)絡(luò)的完整解決方案
    Fluke網(wǎng)絡(luò)提供測試和認(rèn)證單模、千兆和多模光纜布線系統(tǒng)的全線光纜測試適配器產(chǎn)品。這些適配器是DSP-4300系列數(shù)字式電纜分析儀的高性能,高效率的光纜測試選件。
 
 
 
DSP 光纜測試適配器能夠:
  •  同時(shí)在兩個(gè)波長測試兩條光纜并自動(dòng)存貯測試結(jié)果。
  •  雙向測試被測光纜并將結(jié)果存貯在一個(gè)記錄中。
  •  使用電纜管理軟件進(jìn)行全面的數(shù)據(jù)管理和報(bào)告生成。
  •  自動(dòng)測試損耗、長度和傳輸時(shí)延。
  •  驗(yàn)證光纜連通性,測定配線架上光纜連接的接頭。
  •  通過光纜和遠(yuǎn)端進(jìn)行通話。
  •  跟蹤測試過程中最大和最小的功率輸出。
  •  可承受測試中的跌落和其他意外事件
DSP-FTA440S 千兆比多模光纜測試適配器
    DSP-FTA440S光纜測試適配器是世界上第一種基于VCSEL的雙光纜測試適配器,可以測試運(yùn)行千兆比以太網(wǎng)的多模光纜。FTA440S使用波長為850nm的VCSEL光源以及一個(gè)波長為1310nm的FP激光光源。它可以準(zhǔn)確地測量出光纜損耗以及光纜長度(最長5000米),并確保符合千兆以太網(wǎng)標(biāo)準(zhǔn)。
DSP-FTA430S 單模光纜測試適配器
    專門為已安裝的單模光纜所設(shè)計(jì)的DSP-FTA430S光纜測試適配器,具有在1310nm和1550nm的波長下自動(dòng)的雙光纜損耗的測試和認(rèn)證能力。它可以測量最長為10000米的光纜并可確保符合應(yīng)用標(biāo)準(zhǔn)。由于它使用與網(wǎng)絡(luò)傳輸設(shè)備同樣的激光光源,因而能提供準(zhǔn)確的測試結(jié)果。
DSP-FTA420S 多模光纜測試適配器
    DSP-FTA420S光纜測試適配器可以簡便、準(zhǔn)確的測量使用LED光源的多模光纜的損耗以及長度。增強(qiáng)的動(dòng)態(tài)范圍功能可以同時(shí)測試波長為850nm和1300nm多模光纜,最遠(yuǎn)可達(dá)5000米。
結(jié)果管理
使用LinkWare軟件管理銅纜和光纖的測試結(jié)果

福祿克網(wǎng)絡(luò)的DSP-4300系列數(shù)字式電纜分析儀包含功能強(qiáng)大的LinkWare(電纜管理)軟件(DSP-CMS),使用它可根據(jù)工作地點(diǎn)、客戶、建筑等快速組織、編輯、查看、打印、存儲(chǔ)或?qū)y試結(jié)果進(jìn)行存檔。可以將測試結(jié)果合并到一個(gè)已經(jīng)存在的數(shù)據(jù)庫中,并根據(jù)任一字段或參數(shù)對這些數(shù)據(jù)進(jìn)行排序、搜索以及重組。
 
 
利用該程序可以將數(shù)據(jù)上載至您的計(jì)算機(jī)中,可確保您所看到的測試結(jié)果的正確性。該軟件在認(rèn)證測試過程中,可自動(dòng)識(shí)別鏈路名稱,節(jié)省了您的時(shí)間和精力。
LinkWare與所有DSP-4300系列數(shù)字式電纜分析儀兼容,您可以從網(wǎng)站上免費(fèi)下載該軟件,點(diǎn)擊該軟件的鏈接可下載最新版本。 您可將這個(gè)功能強(qiáng)大的軟件交與客戶,以便他們即時(shí)的訪問電子數(shù)據(jù),您也可以將數(shù)據(jù)存儲(chǔ)為文本文件。
DSP-4300擴(kuò)展的數(shù)據(jù)管理能力
全新的DSP-4300數(shù)字式電纜分析儀中附帶的多媒體卡進(jìn)一步增強(qiáng)了數(shù)據(jù)管理的能力。該多媒體卡增大了測試儀的存儲(chǔ)能力,有了它您可以打印彩色的圖形測試報(bào)告。同時(shí)它加速了數(shù)據(jù)傳輸能力,有了這個(gè)可自由插拔的多媒體卡,可以讓測試儀保持在線工作狀態(tài)。
電纜ID列表可以從使用了多媒體卡的DSP-4300中下載,節(jié)省了您在辦公室或不在測試現(xiàn)場的時(shí)間。該多媒體卡可以確保電纜ID號與標(biāo)簽及數(shù)據(jù)庫中的記錄相匹配。
靈活的測試報(bào)告
福祿克網(wǎng)絡(luò)的LinkWare電纜管理軟件提供了幾個(gè)選項(xiàng),利用它們可以給您的客戶提供測試結(jié)果的信息,包括:
  • 圖形測試報(bào)告,用彩色圖形描述當(dāng)DSP-4300測試頻率從1HZ至350MHZ的所有被測量參數(shù)。
  • 文本格式的數(shù)字式匯總測試報(bào)告(最壞的情況及最差的數(shù)據(jù)點(diǎn))
  • 提供所有被測電纜鏈路的列表匯總報(bào)告,包含一些關(guān)鍵信息
自動(dòng)鏈路識(shí)別功能
在電纜認(rèn)證測試過程中,LinkWare電纜管理軟件可以自動(dòng)識(shí)別鏈路名稱,節(jié)省了您在測試現(xiàn)場的時(shí)間和精力。您可以設(shè)定一組鏈路的起始和結(jié)束名稱。測試儀將自動(dòng)根據(jù)一些簡單規(guī)則在這組鏈路中循環(huán)測試。鏈路的ID號以及名稱由字符域或字符組構(gòu)成。鏈路名稱最多可包含18個(gè)字符。在設(shè)置鏈路名稱時(shí),有的部分可設(shè)定為固定字符,而其它部分可依照規(guī)則進(jìn)行變化。
基于Windows的用戶界面
LinkWare的用戶界面基于 Windows 操作系統(tǒng),簡單易用。
SFF附件
    福祿克網(wǎng)絡(luò)的SSF附件使你可以快速、準(zhǔn)確地測試帶SFF連接器的光纜鏈路。
    使用DSP-4300系列數(shù)字式電纜分析儀、DSP光纜測試適配器測試SFF連接器(包含MT-RJ,VF-45,LC及光纜插座連接器)及附加的測試跳線,SFF 測試提供遵從ANSI/TIA/EIA-526-14A方法B的損耗結(jié)果。
    這個(gè)方法提供及改進(jìn)了包含光纖衰減和兩端連接器的測試結(jié)果。
集成的文檔備案解決方案
到目前為止,電纜的識(shí)別、認(rèn)證和管理還沒有集成在一起。通過聯(lián)合電纜管理軟件(CMS)和標(biāo)簽公司,福祿克網(wǎng)絡(luò)公司已經(jīng)開發(fā)出了集成式文檔解決方案。
福祿克網(wǎng)絡(luò)公司的 LinkWare 電纜管理軟件結(jié)合DSP-4300數(shù)字式電纜分析儀,完全兼容CMS和標(biāo)簽軟件程序;并且可以更容易地維護(hù)符合最新TIA/EIA-606A標(biāo)準(zhǔn)的復(fù)雜電纜管理系統(tǒng)。
DSP-4300 數(shù)字式電纜分析儀
DSP-4300 擁有擴(kuò)展的文檔能力。用來傳送測試結(jié)果的相同的多媒體卡也可以從CMS或標(biāo)簽軟件中下載電纜ID號。
到目前為止,手工鍵入電纜ID號還是一件笨拙而又費(fèi)時(shí)的工作。無論是如何的難用、有限的鍵入接口,還是簡單的起止ID號設(shè)置,您都不得不依賴測試儀來生成全部的設(shè)置。這些配置會(huì)有錯(cuò)誤出現(xiàn)而且有可能和安裝ID號設(shè)置不符。通過DSP-4300上的電纜ID號接口,測試記錄可以合并到CMS的數(shù)據(jù)庫記錄中,而且確保與標(biāo)簽打印軟件相匹配。
LinkWare 電纜管理軟件
完成測試后,測試結(jié)果可以上傳到福祿克網(wǎng)絡(luò)公司的 LinkWare 電纜管理軟件中以備回顧和報(bào)告。CMS 應(yīng)用軟件依賴于電纜管理軟件的特點(diǎn):專業(yè)格式,樣式,介紹、符號、和測試結(jié)果打印,并且使之成為一個(gè)模塊。
集成式解決方案的優(yōu)點(diǎn)
集成式文檔備案的重大意義在于:
]]>
TMS320?;DSP 平臺(tái)http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1594&Page=1wangxinxin2010-11-22 9:48:09TMS320 DSP 系列提供最廣泛的可用 DSP 選擇,包括最高性能、最低功耗以及優(yōu)化控制的 DSP,具有遠(yuǎn)遠(yuǎn)超過任何競爭解決方案的發(fā)展藍(lán)圖。此外,每個(gè)平臺(tái)中的代碼兼容性確保在為您的設(shè)計(jì)選擇下一個(gè) TI DSP 時(shí)您的軟件投資不會(huì)被棄置。
最高性能:TMS320C6000? DSP 平臺(tái)C6000? DSP 平臺(tái)提高了性能和成本效益的水準(zhǔn),提供業(yè)界最快的 DSP,運(yùn)行速度高達(dá) 1GHz。該平臺(tái)由 TMS320C64x? 和 TMS320C62x? 定點(diǎn)系列以及 TMS320C67x? 浮點(diǎn)系列組成。應(yīng)用領(lǐng)域包括寬帶基礎(chǔ)設(shè)施、高性能音頻以及視頻/成像。性能范圍從 1200 到 8000MIPS(定點(diǎn)器件)和 600 到 1800MFLOPS(浮點(diǎn)器件)。 


最低功耗:TMS320C5000? DSP 平臺(tái)待機(jī)功耗低至 0.12mW,性能高達(dá) 900MIPS,C5000? DSP 是眾多應(yīng)用的理想選擇,包括:數(shù)字音樂播放器、GPS 接收器、便攜式醫(yī)療設(shè)備、MIPS 密集型語音和數(shù)據(jù)處理等個(gè)人和便攜式產(chǎn)品,以及極其經(jīng)濟(jì)高效的單通道和多通道應(yīng)用。TMS320C55x? 系列提供業(yè)界最低的待機(jī)功耗和先進(jìn)的自動(dòng)電源管理。TMS320C54x? 系列提供廣泛的性能、低功耗操作以及外設(shè)和封裝的選擇。OMAP59xx DSP 將 C55x DSP 內(nèi)核與 TI 增強(qiáng)型 ARM925 相集成,從而提供具有低功耗實(shí)時(shí)信號處理能力的 DSP 和具有命令和控制功能的 ARM。 


優(yōu)化控制:TMS320C2000? DSP 平臺(tái)TMS320C2000? DSP 平臺(tái)向數(shù)字控制行業(yè)提供了一系列優(yōu)秀的芯片。該平臺(tái)集成了微控制器的控制外設(shè),簡便易用并且繼承了 TI 一流 DSP 技術(shù)的處理能力和效率。TMS320C28x? DSP 系列包括具有片上閃存和高達(dá) 150MIPS 性能的 32 位控制器及引腳兼容版本的 ROM。TMS320C24x? DSP 系列提供 20-40MIPS,具有高度集成的外設(shè)(價(jià)格為 2.00 美元以下,批量)。 

工具和軟件TI 有著各種可用的開發(fā)工具和軟件,它們支持快速完成基于 DSP 的應(yīng)用設(shè)計(jì)過程 - 從概念到編碼/編譯,經(jīng)過調(diào)試分析、調(diào)優(yōu),再到測試。許多工具都是 TI 的實(shí)時(shí) eXpressDSP? 軟件和開發(fā)工具策略的一部分,旨在幫您快速開始。


輔助模擬產(chǎn)品TI 提供各種輔助數(shù)據(jù)轉(zhuǎn)換器、電源管理、放大器、接口和邏輯產(chǎn)品來完成您的設(shè)計(jì)。在許多組合中,這些器件旨在專門與 TI DSP 進(jìn)行連接。要在
]]>
基于DSP+FPGA的DAB接收機(jī)設(shè)計(jì)http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1593&Page=1wangxinxin2010-11-22 9:45:59 基于DSP+FPGA的DAB接收機(jī)設(shè)計(jì) 作者:西安電子科技大學(xué)ISN國家重點(diǎn)實(shí)驗(yàn)室 齊志強(qiáng) 蔣佳    時(shí)間:2007-04-24    來源:          

與現(xiàn)行廣播相比,數(shù)字音頻廣播(digital audio broadcasting,簡稱dab)這種新的傳輸系統(tǒng)憑借其諸多優(yōu)點(diǎn)而引起了國際通信行業(yè)的矚目,并獲得了迅速的發(fā)展。我國廣播電影電視行業(yè)標(biāo)準(zhǔn)《30~3000mhz地面數(shù)字音頻廣播系統(tǒng)技術(shù)規(guī)范》自2006年6月1日起實(shí)施。 該標(biāo)準(zhǔn)是dab標(biāo)準(zhǔn),適用于移動(dòng)和固定接收機(jī)傳送高質(zhì)量數(shù)字音頻節(jié)目和數(shù)據(jù)業(yè)務(wù)。


由于手機(jī)電視將為2008北京奧運(yùn)提供服務(wù),國內(nèi)多家單位已積極致力于dab的研制開發(fā)。本文將介紹dab接收機(jī)的樣機(jī)設(shè)計(jì)。

系統(tǒng)的性能要求


歐洲dab系統(tǒng)規(guī)定了4種模式,本設(shè)計(jì)采用的是第1種模式,具體參數(shù)如表1所示。其中,l表示一幀的符號數(shù),k表示每個(gè)符號的子載波個(gè)數(shù),tf表示一幀的持續(xù)時(shí)間,tnull表示空符號持續(xù)時(shí)間,ts表示每個(gè)符號的持續(xù)時(shí)間,tu表示有效符號的持續(xù)時(shí)間,δ表示保護(hù)間隔的持續(xù)時(shí)間。

圖片點(diǎn)擊可在新窗口打開查看

表1 第1種dab傳輸模式的具體參數(shù)


采用這一模式的設(shè)計(jì)要求為:帶寬1.536mhz,載波頻率174~240mhz,誤碼率不超過10-4。

方案原理及設(shè)計(jì)思路


1 方案原理框圖


dab接收機(jī)原理框圖如圖1所示。dab接收機(jī)將從天線接收到的信號經(jīng)過高頻頭轉(zhuǎn)為中頻模擬信號,放大后進(jìn)行a/d變換,得到數(shù)字信號。其中a/d采樣時(shí)鐘受晶振vcxo的控制,采樣時(shí)鐘偏移由采樣時(shí)鐘同步部分估計(jì)得到。a/d轉(zhuǎn)換后的數(shù)據(jù)一路做agc檢測去控制高頻頭的輸出,另一路經(jīng)過r/c變換成fft所需要的兩路實(shí)虛部數(shù)據(jù)信號。時(shí)間同步部分估計(jì)得到一個(gè)時(shí)域符號的同步頭,并粗略地估計(jì)由于收發(fā)頻率不一致而引起的頻偏。經(jīng)過fft變換后,頻率同步單元定出fft的窗口位置,校正帶有頻偏的數(shù)據(jù)。校正后的數(shù)據(jù)經(jīng)過信道估計(jì),得到當(dāng)前實(shí)時(shí)的信道響應(yīng),經(jīng)過信道均衡處理以消除信道多徑衰落的影響,然后再經(jīng)過解映射軟判決譯碼和解擾,然后將音頻信號送入信道解碼器解碼,接著進(jìn)行信源解碼和音頻綜合,最后經(jīng)d/a還原成模擬音頻?

圖片點(diǎn)擊可在新窗口打開查看

圖1 接收機(jī)原理框圖


2 方案的設(shè)計(jì)思路


dab接收機(jī)主要由數(shù)字下變頻、同步、ofdm解調(diào)和viterbi譯碼四大部分構(gòu)成。

數(shù)字下變頻就是把a(bǔ)dc輸出的中頻數(shù)字信號變?yōu)閿?shù)字基帶信號,也就是在數(shù)字上實(shí)現(xiàn)頻譜的下搬移,主要包括希爾伯特變換、頻譜下搬移及降采樣等。

同步部分按功能包括符號定時(shí)同步、載波頻率同步和采樣時(shí)鐘頻率同步,以fft為界可以分為時(shí)域同步和頻域同步兩部分。

ofdm解調(diào)包括fft和差分解調(diào)等,經(jīng)fft和差分解調(diào)后的數(shù)據(jù)再經(jīng)過頻域解交織后進(jìn)行qpsk解映射及量化,送給后續(xù)viterbi譯碼器進(jìn)行軟判決譯碼。

對ofdm解調(diào)送來的數(shù)據(jù)提取快速信息信道(fic)數(shù)據(jù)進(jìn)行解收縮、viterbi譯碼、解擾,得到復(fù)合結(jié)構(gòu)信息(mci),再利用mci對主業(yè)務(wù)信道(msc)數(shù)據(jù)進(jìn)行譯碼。

dab接收機(jī)硬件電路設(shè)計(jì)

1 方案結(jié)構(gòu)框圖


根據(jù)對dab接收機(jī)組成部分的分析,本次設(shè)計(jì)采用fpga+dsp的設(shè)計(jì)方案,dab接收機(jī)完整的結(jié)構(gòu)框圖如圖2所示。dab信號從天線接收后進(jìn)入高頻頭部分,選出所需的頻率塊,然后將選出的高頻信號送入混頻器,變?yōu)橹行念l率為38.912mhz、帶寬為1.536 mhz的中頻信號,中頻信號濾掉無用的頻譜部分后再經(jīng)頻率變換和濾波,變?yōu)橹行念l率為2.048 mhz、帶寬為1.536mhz的基帶信號。然后進(jìn)入adc,采樣速率為8.192mhz,轉(zhuǎn)換成數(shù)字信號后進(jìn)入fpga。fpga完成并串轉(zhuǎn)換,同步和解調(diào), 以及vcxo所需的控制電路等。處理后的數(shù)據(jù)進(jìn)入dsp,dsp外部時(shí)鐘為24.5mhz,所以dsp可進(jìn)行4倍頻,工作于100mhz。dsp中完成解交織、viterbi譯碼、解擾以及音頻解碼,最后數(shù)據(jù)被送入dac,恢復(fù)出原始模擬信號,送入喇叭即可收聽。

圖片點(diǎn)擊可在新窗口打開查看

圖2 接收機(jī)的結(jié)構(gòu)框圖


2 器件的選型


器件的選型要求在滿足系統(tǒng)需求的情況下力爭使成本最低,功耗最小,設(shè)計(jì)方便且易于調(diào)試,所以要全面兼顧芯片的運(yùn)算速度、價(jià)格、硬件資源、運(yùn)算精度、功耗以及芯片的封裝形式、質(zhì)量標(biāo)準(zhǔn)、供貨情況和生命周期等。綜合考慮以上幾方面因素,本次設(shè)計(jì)中adc選用tlv5535,dac選用akm4352,fpga選用ep1s40,dsp選用tms320vc5510。


tlv5535是一款性能優(yōu)良的8位adc,具有35msps的采樣速率,3.3v單電源供電,典型功耗只有90mw,模擬輸入帶寬達(dá)600mhz,很適合本設(shè)計(jì)。akm4352是非常適合便攜式音頻設(shè)備的dac,帶寬20khz,采樣速率8~50khz,工作電壓為1.8~3.6v,通帶波動(dòng)只有±0.06db,阻帶衰減達(dá)43db,性能非常優(yōu)良。tms320vc5510是ti公司的一款高性能、低功耗dsp。它具有很高的代碼執(zhí)行效率,其最高指令執(zhí)行速度可達(dá)800mips,雙mac結(jié)構(gòu),可設(shè)置的指令高速緩沖存儲(chǔ)器容量為24kb,片上ram共160k×16b,此外還有3組多通道緩沖串行口和可編程的數(shù)字鎖相環(huán)發(fā)生器等,i/o電壓 3.3v,內(nèi)核電壓1.6v。ep1s40是altera公司stratix系列fpga,具有非常高的內(nèi)核性能、存儲(chǔ)能力、架構(gòu)效率,提供了專用的功能用于時(shí)鐘管理和數(shù)字信號處理應(yīng)用及差分和單端i/o標(biāo)準(zhǔn),此外還具有片內(nèi)匹配和遠(yuǎn)程系統(tǒng)升級能力,功能豐富且功耗較小。ep1s40的片內(nèi)資源也足以滿足本設(shè)計(jì)所需。


3 主要模塊的電路設(shè)計(jì)


adc與fpga相連,并在fpga內(nèi)完成并串變換,譯碼電路也由fpga來完成。fpga與adc間的連接包括數(shù)據(jù)線和時(shí)鐘線,adc的時(shí)鐘由fpga來提供,數(shù)據(jù)線和時(shí)鐘線均與fpga的i/o引腳直接相連即可,如圖3所示。

圖片點(diǎn)擊可在新窗口打開查看

圖3 adc與fpga連接原理圖


dsp通過異步串行口與dac連接,如圖4所示,dac輸出的模擬信號經(jīng)濾波后可直接輸出語音信號。

圖片點(diǎn)擊可在新窗口打開查看

圖4 dsp與dac連接原理圖


現(xiàn)今的高速dsp內(nèi)存不再基于flash,而是采用存取速度更快的ram。dsp掉電后其內(nèi)部ram中的程序和數(shù)據(jù)將全部丟失,所以在脫離仿真器的環(huán)境中,dsp芯片每次上電后必須自舉,將外部存儲(chǔ)區(qū)的執(zhí)行代碼通過某種方式搬移到內(nèi)部存儲(chǔ)區(qū),并自動(dòng)執(zhí)行。常用的自舉方式有并行自舉、串行自舉、主機(jī)接口(hpi)自舉和i/o自舉。hpi自舉需要有一個(gè)主機(jī)進(jìn)行干預(yù),雖然可以通過這個(gè)主機(jī)對dsp內(nèi)部工作情況進(jìn)行監(jiān)控,但電路復(fù)雜、成本高;串行自舉代碼加載速度慢;i/o自舉僅占用一個(gè)端口地址,代碼加載速度快,但電路復(fù)雜,成本高;并行自舉加載速度快,雖然需要占用dsp數(shù)據(jù)區(qū)的部分地址,但無須增加其他接口芯片,電路簡單。因此在ti公司的5000系列dsp中得到了廣泛應(yīng)用,本次設(shè)計(jì)也是采用并行自舉。與傳統(tǒng)的eeprom相比,flash具有支持在線擦寫且擦寫次數(shù)多、速度快、功耗低、容量大和價(jià)格低廉等優(yōu)點(diǎn)。目前在很多flash芯片采用3.3v單電源供電,與dsp連接時(shí)無須采用電平轉(zhuǎn)換芯片,因此電路連接簡單。在系統(tǒng)編程時(shí),利用系統(tǒng)本身的dsp直接對外掛的flash編程,節(jié)省了編程器的費(fèi)用和開發(fā)時(shí)間,使得dsp執(zhí)行代碼可以在線更新。圖5為外部程序數(shù)據(jù)存儲(chǔ)器flash的電路連接。

圖片點(diǎn)擊可在新窗口打開查看

圖5 外部程序數(shù)據(jù)存儲(chǔ)器flash的電路連接


fpga與dsp通過mcbsp、gpio、emif和ehpi口相連,接口種類多,便于根據(jù)需要靈活使用。fpga內(nèi)的程序和數(shù)據(jù)掉電后也會(huì)全部丟失,所以為其配備了專用配置芯片epc16,上電后自動(dòng)將程序下載到fpga中,簡單易用。

總結(jié)


為了方便調(diào)試,本次設(shè)計(jì)十分靈活,留的系統(tǒng)資源也比較多,不僅可以實(shí)現(xiàn)模式1,其他三種模式也可以在此硬件平臺(tái)上實(shí)現(xiàn)。用來存儲(chǔ)程序和數(shù)據(jù)的flash既可以用fpga來讀寫,也可以用dsp來讀寫。dsp和fpga分別配了jtag下載口用于下載程序和檢測芯片。dsp還連接rs232,用于發(fā)出控制指令以及監(jiān)控dsp內(nèi)部情況。fic解碼完成后可進(jìn)行dab/dmb的業(yè)務(wù)選擇,依據(jù)選擇業(yè)務(wù)的不同進(jìn)行不同的處理后分別產(chǎn)生聲音和圖像信號,并分別從喇叭或液晶顯示器輸出。

]]>
TMS320C5000系列的結(jié)構(gòu)及主要性能http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1592&Page=1wangxinxin2010-11-22 9:42:22
14.3.3 TMS320C5000系列的結(jié)構(gòu)及主要性能
    圖14.3.3給出了C54X系列DSP的內(nèi)部結(jié)構(gòu)。
    現(xiàn)結(jié)合表14.2.5、圖14.3.3以及C5000系列的用戶手冊來說明該系列DSP的
特點(diǎn)
圖片點(diǎn)擊可在新窗口打開查看
    1.TM$320C54X的性能與結(jié)構(gòu)特點(diǎn)
    C54X的時(shí)鐘頻率為40/50/66/80MHz,相應(yīng)的,時(shí)鐘周期為25/20/15/12.5ns,運(yùn)算
能力為40/50/66/80MIPS;片上RAM在5~256千字之問,片上ROM在2~48千字之
間,隨系列內(nèi)的型號不同而不同,RAM又分雙訪問RAM(DARAM)和單訪問RAM
(SARAM)。
    C54X是16bit定點(diǎn)DSP,內(nèi)部集成有以下部件:
    (1)一個(gè)40bit的ALU;
    (2)兩個(gè)40bit的累加器A和B;
    (3)一個(gè)17×17bit的乘法器,它和一個(gè)40bit的加法器(adder)一起在一個(gè)單指令周
期內(nèi)完成二進(jìn)制補(bǔ)碼的乘法運(yùn)算;
    (4)桶形(barrel)移位器,其輸入連接到40bit的累加器或數(shù)據(jù)存儲(chǔ)器(CB,DB),
40bit的輸出連接到ALU或數(shù)據(jù)存儲(chǔ)器(EB),它可將輸入數(shù)據(jù)作0~31bit的左移,或作
O~16bit的右移;
    (5)由COMP、TRN和TC組成的比較、選擇和存儲(chǔ)單元(compare,select,and store
unit,CSSU);
    (6)指數(shù)編碼器(EXP),用于支持指數(shù)EXP的快速運(yùn)算;
    (7)8個(gè)16bit通用寄存器。
    C54X采用多總線結(jié)構(gòu)。內(nèi)部共有8組總線,4組為程序/數(shù)據(jù)總線,4組為地址總
線。圖14.3.3中PB為程序總線,傳送從程序存儲(chǔ)器來的指令代碼和立即數(shù);PAB為程
序地址總線;CB、DB、EB為三組數(shù)據(jù)總線,連接到各種器件,如CPU、數(shù)據(jù)存儲(chǔ)器等。
CAB、DAB、EAB是這三組數(shù)據(jù)總線對應(yīng)的地址總線。CB和DB傳送從數(shù)據(jù)存儲(chǔ)器讀出
的數(shù),EB傳送寫入到數(shù)據(jù)存儲(chǔ)器的數(shù)。Sign ctr為符號控制器。C54X利用兩個(gè)輔助寄
存器單元(ARAU0,ARAUl)在單個(gè)周期內(nèi)產(chǎn)生兩個(gè)數(shù)據(jù)存儲(chǔ)器的地址。
    C54X的大部分產(chǎn)品的I/O口的供電為3.3V,CPU核的供電也為3.3V。新近推出
的C5402、C5409、C5401的核采用1.8V供電,I/O口一般用3..3V供電。低電壓供電可
大大降低功耗。
    有關(guān)C54X結(jié)構(gòu)與性能的詳細(xì)內(nèi)容請參看文獻(xiàn)[6]和E17]。
    2.TMS320C55X的性能與結(jié)構(gòu)特點(diǎn)
    C55X系列是和C64X系列在2000年初同時(shí)推出的最新DSP產(chǎn)品。C55是建立在
C54硬件結(jié)構(gòu)的基礎(chǔ)上的,因此也是16bit的定點(diǎn)DSP,同時(shí)在軟件上也和C54兼容。
C55的最大特點(diǎn)是在提高DSP能力的同時(shí)進(jìn)一步降低了功耗。C55的功耗可低至
0.05mW/MIPS,該系列第一個(gè)產(chǎn)品C5510的時(shí)鐘為160MHz,運(yùn)算能力為320MIPS,功
耗約為80roW,比當(dāng)時(shí)具有同樣運(yùn)算能力的DSP的功耗降低了一半。C55X的一般技術(shù)
指標(biāo)見表14.2.5,盡管其內(nèi)核的供電也和C5402那樣為1.8V,I/O口為3.3V,但C55在
設(shè)計(jì)上(包括硬件、軟件)采取了一系列措施,其中最主要的是先進(jìn)的自動(dòng)電源管理技術(shù)。
該芯片的CPU對所有的外圍設(shè)備、存儲(chǔ)器陣列、CPU的各個(gè)單元進(jìn)行連續(xù)的監(jiān)視,暫時(shí)
不工作的部分則停止對其供電。
    TI公司將其C5000系列DSP定位于通信領(lǐng)域的應(yīng)用,特別是便攜式通信工具的應(yīng)
用。C5402,特別是C55X的推出,對于手機(jī)、數(shù)字相機(jī)、個(gè)人數(shù)字助理(PDA)是非常適用
的。隨著生物醫(yī)學(xué)工程的發(fā)展,DSP也正在大步跨入醫(yī)療儀器行業(yè),高性能、便攜式醫(yī)療
儀器將是C5000系列的用武之地
]]>
CM5000芯片方案VOIP網(wǎng)絡(luò)電話機(jī)http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1591&Page=1wangxinxin2010-11-22 9:39:15

DMR-CP01寬帶網(wǎng)絡(luò)電話機(jī)

VOIP寬帶網(wǎng)絡(luò)電話機(jī)CP01鍵盤區(qū)設(shè)置.DOC
VOIP寬帶網(wǎng)絡(luò)電話機(jī)宣傳彩頁1.JPG
VOIP寬帶網(wǎng)絡(luò)電話機(jī)宣傳彩頁2.JPG
    VOIP寬帶網(wǎng)絡(luò)電話機(jī)合作
  1. 市場保障:所在地區(qū)的唯一的OEM合作伙伴 。
  2. 技術(shù)支持:提供長期的技術(shù)咨詢、技術(shù)服務(wù)、軟硬件改進(jìn)等。
  3. 提供技術(shù)資料:VOIP網(wǎng)絡(luò)電話機(jī)原理圖、VOIP網(wǎng)絡(luò)電話機(jī)PCB電路板圖、焊接VOIP網(wǎng)絡(luò)電話機(jī)電路板的元器件報(bào)目表。
  4. 提供必要的VOIP網(wǎng)絡(luò)電話機(jī)主控制芯片揚(yáng)智CM5000的采購渠道,VOIP網(wǎng)絡(luò)電話機(jī)外觀紙包裝、VOIP網(wǎng)絡(luò)電話機(jī)說明書、VOIP網(wǎng)絡(luò)電話機(jī)模定制具采購渠道。
  5. VOIP寬帶網(wǎng)絡(luò)電話機(jī)中文版使用說明書.DOC
  6. VOIP寬帶網(wǎng)絡(luò)電話機(jī)英文版使用說明書.DOC
  7. VOIP寬帶網(wǎng)絡(luò)電話機(jī)中文版使用說明書.PDF
  8. VOIP寬帶網(wǎng)絡(luò)電話機(jī)英文版使用說明書.PDF
  9. VOIP寬帶網(wǎng)絡(luò)電話機(jī)合作代理協(xié)議.PDF

 
DMR-CN02寬帶網(wǎng)絡(luò)電話機(jī)

VOIP寬帶網(wǎng)絡(luò)電話機(jī)CN02鍵盤設(shè)置.DOC
VOIP寬帶網(wǎng)絡(luò)電話機(jī)宣傳彩頁1.JPG
VOIP寬帶網(wǎng)絡(luò)電話機(jī)宣傳彩頁2.JPG

 VOIP網(wǎng)絡(luò)電話機(jī)簡介
      VOIP網(wǎng)絡(luò)電話是指利用Internet打電話的接入設(shè)備。裝有終端設(shè)備的機(jī)構(gòu)間通話通過Internet完成,只有上網(wǎng)費(fèi),沒有電話費(fèi),可為用戶節(jié)約大量的長途通訊費(fèi)用,電話音質(zhì)高清晰,功能豐富完備,不需與計(jì)算機(jī)連接,使通話可以在任何時(shí)候都能進(jìn)行,非常適合企業(yè)辦公和家庭使用。

    VOIP網(wǎng)絡(luò)電話機(jī)功能特點(diǎn)
  • 支持SIP2.0,TCP/UDP/IP,RTP/RTCP,HTTP,ICMP,ARP/RARP,DNS,DHCP,NTP,PPPoE,TFTP等協(xié)議。
  • 與國際市場上多家廠商的同類產(chǎn)品兼容。
  • 支持各種語音編碼國際標(biāo)準(zhǔn):G.723.1 、G.729A/B、G.728、G.726、G.711(A-law/U-law), iLBC, G.722寬頻編碼。
  • 支持通話檢測(VAD),背景噪聲模擬(CNG),自動(dòng)增益(AGC),和回聲抑制(G.168),支持各種加密及認(rèn)證標(biāo)準(zhǔn)(BASIC, DIGEST, MD5及MD5-sess算法)。
  • 支持ISO網(wǎng)絡(luò)結(jié)構(gòu)第二層和第三層QoS (802.1Q VLAN, 802.1p, DiffServ, MPLS), 支持IETF STUN (防火墻/NAT安全穿透) 標(biāo)準(zhǔn)及市場上各種現(xiàn)有防火墻/NAT產(chǎn)品,用戶無須改動(dòng)防火墻設(shè)置。
  • 支持遠(yuǎn)程全自動(dòng)設(shè)備管理,有效實(shí)現(xiàn)用戶端“零”設(shè)置、即插即用、私網(wǎng)透明穿透以及軟件自動(dòng)升級。可通過電話鍵盤、Web界面或相關(guān)智能網(wǎng)管系統(tǒng)方便地更改配置及升級。
  • 多線同時(shí)通話,占用帶寬資源極少,只需占用一條普通寬帶便可支持16條線同時(shí)工作;如果是以路由共享器共享的形式上網(wǎng),則只需占用集線器/交換機(jī)的一個(gè)端口。
  • 撥打使用方便。
  • 即插即用,安裝簡便,無需改變現(xiàn)有系統(tǒng)。
  • 長途電話話費(fèi)超低。
  • 市話音質(zhì),高清晰。
  • 支持PBX(程控交換機(jī))。
  • 多臺(tái)終端可疊加使用,方便擴(kuò)展。
  • 分機(jī)構(gòu)之間可多方轉(zhuǎn)接,相互通話。
    VOIP網(wǎng)絡(luò)電話機(jī)系統(tǒng)功能
  1. 電 話 簿:在電話簿中可以查找、增加或刪除電話號碼,最多可存儲(chǔ) 100條記錄。
  2. 通話記錄:顯示所有來電,顯示所有已撥號碼,刪除通話記錄、來電記錄、撥號記錄。
  3. 快速撥號:可設(shè)置、刪除快速撥號,使用快速撥號功能只需撥快速撥號數(shù)字 (0~9)后加“#”鍵即可,最多可設(shè)置10個(gè)速撥號碼。
  4. 自動(dòng)撥號:在鍵區(qū)輸入電話號碼時(shí)不需輸“#”鍵,設(shè)定時(shí)間到后系統(tǒng)自動(dòng)撥號。可將自動(dòng)撥號時(shí)間設(shè)置為3~9秒鐘。
  5. 預(yù) 撥 號:撥號后提起話筒或按免提鍵,IP電話開始撥號。
  6. 切換:按“切換”鍵可由IP通話狀態(tài)切換到撥號狀態(tài)。
  7. 自動(dòng)接聽:設(shè)定自動(dòng)接聽功能,用戶可以從IP電話到PSTN電話重?fù)芑驈腜STN電話到IP電話重?fù)堋_@項(xiàng)功能可以在有FXO接口的IP電話上使用。
  8. 來電轉(zhuǎn)接:設(shè)置要轉(zhuǎn)接的電話號碼。有三種方式供選擇:所有來電轉(zhuǎn)接,占線時(shí)來電轉(zhuǎn)接,無人接聽時(shí)來電轉(zhuǎn)接。
  9. 反極應(yīng)答:鈴聲響后啟用自動(dòng)接聽功能。這項(xiàng)功能可以在有FXO接口的IP電話上使用。
  10. 拒接來電:將電話設(shè)置為拒接狀態(tài),有拒接所有來電和一段時(shí)間內(nèi)拒接所有來電可選。
  11. 呼叫等待:用戶不想獲知有來電時(shí)可設(shè)置呼叫等待。若通話時(shí)有新電話打入可以按“切換”鍵接入新電話,按此鍵可實(shí)現(xiàn)兩電話間切換。
  12. 日期時(shí)間:設(shè)定日期時(shí)間。
  13. 時(shí)間設(shè)定:可以通過設(shè)定第一或第二網(wǎng)絡(luò)時(shí)間服務(wù)器的IP地址來獲取日期時(shí)間信息,同樣可以根據(jù)您所在的位置設(shè)定時(shí)區(qū)和再次調(diào)整所需時(shí)間。
  14. 音量調(diào)整:話筒音量調(diào)整,聽筒音量調(diào)整,免提話筒音量調(diào)整。
  15. 鈴聲設(shè)置:鈴聲音量調(diào)整,鈴聲旋律選擇。
  16. 通話保留:可以按“保留”鍵使當(dāng)前電話保持一段時(shí)間不掛斷,再次按“保留”鍵后繼續(xù)通話。
  17. 三方通話:若要進(jìn)行三方通話,可先打電話給第一方,電話接通后按“切換”鍵,聽到撥號音后打電話給第二方,接通后再按“切換”鍵。
  18. 呼叫轉(zhuǎn)接:支持三種呼叫轉(zhuǎn)接

VOIP網(wǎng)絡(luò)電話機(jī)備注一:CM5000芯片方案
    CM5000是一個(gè)高度集成的VoIP解決方案。它集成了32位RISC CPU、DSP及2個(gè)快速以太網(wǎng)地址。CM5000有效的起到控制VoIP網(wǎng)關(guān)和IP電話成本的作用。
CM5000集成的32位RISC CPU,頻率為125MHz,內(nèi)建了4K字節(jié)的指示緩存及4K字節(jié)的數(shù)據(jù)緩存。它支持系統(tǒng)管理、網(wǎng)絡(luò)管理、協(xié)議棧管理及應(yīng)用程序。
    CM5000集成的16位Fix-Point DSP,頻率為125MHz,支持32K×24的可編程存儲(chǔ)器,16K×16的系數(shù)存儲(chǔ)器,15K×16的數(shù)據(jù)存儲(chǔ)器。它提供2個(gè)串行端口支持2個(gè)聲音通道。DSP支持多個(gè)聲音壓縮模式(G.711,G.723.1,G.729A,G.729B),回音消除及多種普通電話技術(shù)。
    CM5000提供2個(gè)10/100M快速以太網(wǎng)地址支持全/半雙工模式,端口基于VLAN,MII接口和2K字節(jié)的FIFO封包緩存器。用戶能通過MII接口與外部PHY或以太網(wǎng)交換芯片構(gòu)建VoIP網(wǎng)關(guān)和IP電話。
當(dāng)CM5000作為IP電話芯片應(yīng)用時(shí),也提供對LCD控制、鍵區(qū)、UART串行接口和多個(gè)普通I/O接口的支持
產(chǎn)品介紹:
    VoIP解決方案。CM5000集成了32位RISC CPU、DSP及2個(gè)快速以太網(wǎng)地址。CM5000能有效的起到控制VoIP網(wǎng)關(guān)和IP電話成本的作用。

 
CM5000芯片方案VOIP網(wǎng)絡(luò)電話機(jī)工作原理

RISC CPU
* 4Kbytes of direct mapped instruction cache
* 4Kbytes of direct mapped data cache with write-through policy
* Memory Controller:Flash/SDRAM
* 125MHz internal system clock
* JTAG support
16-bit fixed-point DSP
* Program SRAM 32K*24
* Coefficient SRAM 16K*16
* Data SRAM 15K*16
* Two Serial Port Interfaces
* DSP clock speed runs at 125MHz
Two 10/100 MACs
* IEEE802.3/802.3u compliant
* Half/Full duplex operation
* VLAN support
* MII interface to external PHY
* Scatter and gather transmit/receive DMA
* 4KB transmit/receive FIFO

]]>
算法標(biāo)準(zhǔn)實(shí)現(xiàn)高效 DSP 系統(tǒng)開發(fā)http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1590&Page=1wangxinxin2010-11-22 9:36:55 

隨著數(shù)字信號處理器 (DSP) 的應(yīng)用范圍不斷擴(kuò)大,對面向組件的軟件模塊的需求不斷增長。第三方提供的現(xiàn)成算法在基本層面上能夠響應(yīng)上述需求。第三方算法使系統(tǒng)開放商不必再費(fèi)力重新設(shè)計(jì)主要的軟件功能,從而能夠更快、更廉價(jià)地將系統(tǒng)與更多功能集成。因此,第三方算法在 DSP 系統(tǒng)開發(fā)中發(fā)揮著非常重要的作用。

為了使組件軟件方法順利工作,必須具備保證組件代碼互用性、一致性和便攜性的標(biāo)準(zhǔn)。DSP廠商認(rèn)識(shí)到了上述需求,建立了管理不同算法與應(yīng)用之間接口的算法標(biāo)準(zhǔn)。上述標(biāo)準(zhǔn)不是為了保證高效實(shí)施。針對代碼大小、特性及性能而選擇最佳算法的工作是由系統(tǒng)集成商進(jìn)行的。而標(biāo)準(zhǔn)所作的,則是提供確保算法之間相互協(xié)作的一套規(guī)則,使他們更輕松地進(jìn)行評估,然后在系統(tǒng)環(huán)境中進(jìn)行集成。

算法標(biāo)準(zhǔn)的起源

20世紀(jì)90年代中期,算法標(biāo)準(zhǔn)的需求逐漸顯現(xiàn)出來,此時(shí)更為強(qiáng)大的 DSP 出現(xiàn)了,其可支持一個(gè)算法的多通道,或者同一 DSP 上的多個(gè)算法。盡管早期的 DSP 可能僅用作語音編碼器等,但像來自 TI TMS320C5000 平臺(tái)中 DSP 則能夠處理蜂窩電話所需的整個(gè)數(shù)字處理鏈,包括聲碼、音頻校正、回波消除等。諸如來自 TMS320C6000平臺(tái)的其他 DSP,則能夠開發(fā) DSL 線卡、視頻服務(wù)器及其他在單個(gè)設(shè)備上要求具有極高多通道性能的系統(tǒng)。

利用現(xiàn)有更高層次的性能,許多新興信號處理標(biāo)準(zhǔn)不斷涌現(xiàn),包括 JPEG、MPEG、電視會(huì)議、無線電話以及調(diào)制解調(diào)器與傳真改進(jìn)等。開發(fā)商開始創(chuàng)建交互改變?nèi)蝿?wù)的動(dòng)態(tài)系統(tǒng),而不是一般基于 DSP 的具有固定功能的靜態(tài)系統(tǒng)。而且系統(tǒng)代碼規(guī)模也開始劇增,常常為了適應(yīng)新型多功能系統(tǒng)的復(fù)雜性而大幅度增加。

DSP 系統(tǒng)開發(fā)商始終缺少經(jīng)驗(yàn)豐富且掌握深入信號處理知識(shí)的 DSP 程序員。目前,這些開發(fā)商們開始集成更為復(fù)雜的系統(tǒng),一些剛剛進(jìn)入 DSP 領(lǐng)域的其他開發(fā)商則已開始進(jìn)行最初的 DSP 設(shè)計(jì)。不斷增長的業(yè)界系統(tǒng)集成商尋找各種方法來將日益復(fù)雜化的設(shè)備整合起來,而不必從頭設(shè)計(jì)所有軟件。幸運(yùn)的是,一些具備業(yè)經(jīng)驗(yàn)證軟件技術(shù)的開發(fā)商認(rèn)識(shí)到新的市場商機(jī),并開始作為第三方出售其知識(shí)產(chǎn)權(quán),包括算法。系統(tǒng)集成商將從第三方購買"黑盒子"目標(biāo)代碼,并將其加載至系統(tǒng)中,以節(jié)省寶貴的開發(fā)時(shí)間。至少這就是假設(shè)的工作流程了。

然而,在實(shí)踐中事情并非如此直接。第三方開發(fā)商常常假定DSP用法,以便使其算法盡可能精簡,并獲得最佳性能效果。因此,一個(gè)算法可能需要占用所有內(nèi)存,在很長的時(shí)間中禁用出現(xiàn)中斷,并完全控制核心。此外,系統(tǒng)集成商可能無法了解開發(fā)商的事先假定是什么,因?yàn)椴淮嬖诮y(tǒng)一的方法指定算法的資源要求與性能效果。

顯然,如果有了上述假定的話,那么兩種或多種算法就不能在多功能系統(tǒng)中和平共處。這樣的問題在利用源代碼進(jìn)行再設(shè)計(jì)時(shí)可能相當(dāng)困難,但力圖集成目標(biāo)代碼的系統(tǒng)開發(fā)商對改變算法無能為力。而且,如果算法來自不同的第三方(事實(shí)常常如此),集成商將面臨不兼容性難題以及不可避免的相互指摘。

到20世紀(jì)90年代末為止,很明顯如果不就算法建立行為規(guī)則,那么 DSP 開發(fā)將停滯不前。因此,DSP 廠商開始發(fā)布這種規(guī)則,將其編寫為第三方軟件開發(fā)商必須遵循的標(biāo)準(zhǔn)代碼,以便保證算法的兼容性。盡管這些標(biāo)準(zhǔn)是具有所有權(quán)的,但它們都具有相同的目標(biāo),并且許多規(guī)則都是一樣的。由于某些規(guī)則反映了硬件實(shí)施,并且僅針對某些個(gè)體廠商,因此對所有權(quán)而不是業(yè)界標(biāo)準(zhǔn)進(jìn)行保留。此外,當(dāng)標(biāo)準(zhǔn)出現(xiàn)時(shí),廠商為了跟上 DSP 的開發(fā)步伐被迫響應(yīng)當(dāng)時(shí)的需求,而不是將問題交給漫長的業(yè)界標(biāo)準(zhǔn)化進(jìn)程來解決。

示范標(biāo)準(zhǔn)

最初建立的標(biāo)準(zhǔn)之一是 TI 的 TMS320 DSP Algorithm Standard?,也稱作XDAIS。TI 推出了該標(biāo)準(zhǔn)作為其 eXpressDSP? 軟件戰(zhàn)略的基本元素,并同時(shí)推出了實(shí)施內(nèi)核、集成開發(fā)環(huán)境 (IDE) 及第三方網(wǎng)絡(luò),這表明算法標(biāo)準(zhǔn)化將在 DSP 軟件開發(fā)中發(fā)揮關(guān)鍵性作用。TMS320 Algorithm Standard 是各種 DSP 算法標(biāo)準(zhǔn)的一個(gè)示范,事實(shí)上它成了隨后推出的某些標(biāo)準(zhǔn)的一個(gè)模型。

XDAIS 是在 TMS320 DSP 底層軟件架構(gòu)基礎(chǔ)之上建立起來的。圖1顯示了 DSP 系統(tǒng)的組織方式,這樣簡單數(shù)據(jù)傳感器算法從 I/O 功能以及底層核心運(yùn)行時(shí)環(huán)境中分離出來。圖2顯示了 XpressDSP 環(huán)境中算法正常運(yùn)行的必備系列事件。 <!-- 圖1. XDAIS 與 DSP 系統(tǒng) 圖2. XDAIS 算法事件 -->

XDAIS 算法規(guī)則

XDAIS 規(guī)則分外四組,具備基本的校驗(yàn)機(jī)制以保證符合標(biāo)準(zhǔn)。

常識(shí)性編程規(guī)則。本組規(guī)則的作用在于加強(qiáng)算法的便攜性、可預(yù)測性及易用性。由于大多數(shù) DSP 系統(tǒng)運(yùn)行于 C 環(huán)境中,因此頂層的算法必須能在C中調(diào)用。算法不得干擾應(yīng)用程序的運(yùn)行時(shí)狀態(tài),并且代碼必須在搶占式環(huán)境中進(jìn)行重入以支持多個(gè)通道。必須對多實(shí)例共享的存儲(chǔ)器與全局變量進(jìn)行保護(hù)。所有代碼引用必須完全可再定位,不得采用硬編碼存儲(chǔ)器尋址,否則將干擾其他代碼。由于資源可能因系統(tǒng)而異,因此算法不得直接訪問外設(shè)。

取消任意選擇。如果需要以單一強(qiáng)制方法進(jìn)行某項(xiàng)工作的話,該標(biāo)準(zhǔn)指定了應(yīng)在各種不同方法中采用何種方法(就好像交通法規(guī)指定了在路上應(yīng)左行還是右行)。為避免命名沖突,信號命名必須遵循 DSP/BIOS? 規(guī)則,這是 TMS320 DSP 采用的實(shí)時(shí)內(nèi)核。為避免將代碼移植到不同操作系統(tǒng)環(huán)境中時(shí)發(fā)生沖突,算法必須封裝到遵循統(tǒng)一命名規(guī)則的檔案文件中。必須使外部引用符合來源,如C運(yùn)行支持庫函數(shù)或其他符合 eXpressDSP 的模塊。算法實(shí)例必須根據(jù)指定的程序調(diào)用并刪除,并且它們必須能夠獨(dú)立地進(jìn)行再定位。對 C6000? 平臺(tái)而言,算法必須至少支持由小到大的字節(jié)順序,或最好兩個(gè)都支持,以便為系統(tǒng)開發(fā)商提供選擇。

資源管理。由于算法一般比較貪婪,并且必須使其可以共享,因此本組位于該標(biāo)準(zhǔn)的核心。現(xiàn)在每個(gè)算法都有了強(qiáng)制的存儲(chǔ)器管理界面,而且所有算法都必須在設(shè)計(jì)時(shí)一次協(xié)調(diào)或在運(yùn)行時(shí)交互協(xié)調(diào)使用存儲(chǔ)器。本規(guī)則適用于外部及內(nèi)部存儲(chǔ)器,以及 DMA 通道等外設(shè)。本應(yīng)用同控制框架一樣收集所有存儲(chǔ)器請求,隨后向算法分配存儲(chǔ)器。算法可能不能獲得其全部請求,但應(yīng)用框架能夠在競爭請求間進(jìn)行很好的判斷,并優(yōu)化地劃分系統(tǒng)資源。

統(tǒng)一規(guī)范。本組規(guī)則有助于系統(tǒng)集成商衡量算法并評估其在系統(tǒng)中的兼容性。所有的兼容性算法必須表現(xiàn)最壞情況的中斷傳輸時(shí)間、典型與最壞情況的執(zhí)行,以及程序、堆陣、靜態(tài)和堆棧存儲(chǔ)器要求等方面的特點(diǎn)。例如,算法供應(yīng)商可能不再隱瞞會(huì)讓算法獨(dú)占內(nèi)核幾秒鐘的中斷傳輸時(shí)間。現(xiàn)在,必須根據(jù)已確定的方式在算法技術(shù)描述中指定并包含傳輸時(shí)間要求。

校驗(yàn)與 eXpressDSP 一致性。算法開發(fā)商不能簡單地說它滿足了 TMS320 Algorithm Standard 的要求。開發(fā)商必須通過 TI 的 XDAIS 一致性測試工具加以證明,該工具可校驗(yàn)代碼是否符合規(guī)則。此外,第三方必須書面同意在開發(fā)算法時(shí)遵循了標(biāo)準(zhǔn)規(guī)定。當(dāng)滿足了這些要求時(shí),第三方可以聲明其算法符合 eXpressDSP,并在廣告宣傳中使用圖3所示的標(biāo)志。一致性工具可適用于第三方及 DSP 客戶,以便使他們在開發(fā)自身軟件時(shí)對這些軟件進(jìn)行檢查。系統(tǒng)集成商還可以利用該工具保證他們購買的代碼在獲得eXpressDSP一致性稱號后沒有經(jīng)過修改。 <!-- 圖3. eXpressDSP 一致性標(biāo)志 -->

XDAIS 的發(fā)展

XDAIS 在5年前推出時(shí),其規(guī)則還不到30條。現(xiàn)在它已有了46條規(guī)則,這反映出對標(biāo)準(zhǔn)的需求不斷發(fā)展,但其發(fā)展是以認(rèn)真、受控的方式進(jìn)行的。新規(guī)則的添加(以及一些改動(dòng))出于以下幾點(diǎn)原因:

新硬件功能。添加某些規(guī)則是為了涵蓋硅技術(shù)的開發(fā)。例如,隨著將高級 DMA 功能集成到芯片中,XDAIS 也添加了新的規(guī)則以涵蓋 DMA 通道的分配。未來,XDAIS還可能包括有關(guān)硬件加速器作為共享資源使用的規(guī)則。

性能優(yōu)化。為優(yōu)化性能,DMA規(guī)則已進(jìn)行了修訂,在此,這些規(guī)則也展示了XDAIS 標(biāo)準(zhǔn)中的另一個(gè)變化領(lǐng)域。由于早期規(guī)則解決了重大沖突,因此一些較新的指導(dǎo)方針傾向于幫助開發(fā)商更好地發(fā)揮系統(tǒng)優(yōu)勢。

新應(yīng)用領(lǐng)域。XDAIS的最初指導(dǎo)方針主要是為了處理帶有數(shù)據(jù)流應(yīng)用的單功能DSP,如語音及音視頻等。但今天的多功能系統(tǒng)常常必須處理突發(fā)數(shù)據(jù),如 IP 數(shù)據(jù)包或更復(fù)雜的調(diào)制解調(diào)器標(biāo)準(zhǔn)中類似框架的編碼。這些應(yīng)用的核心和系統(tǒng)要求有時(shí)與流應(yīng)用的不同,而XDAIS 規(guī)則必須包括兩種類型的數(shù)據(jù)吞吐量。

有一個(gè)沒有改變的特性,即需要將開銷保持在較低水平。經(jīng)驗(yàn)顯示,DSP 客戶與第三方將接受不超過一至兩個(gè)百分點(diǎn)的性能及存儲(chǔ)器干擾。這對于通用微處理器而言是一個(gè)較小的開銷百分比,該微處理器可通過中斷來驅(qū)動(dòng)控制任務(wù),并不十分受限于內(nèi)存的高效利用。但是,通常每個(gè)性能MIP對DSP都是非常關(guān)鍵的,因此 TI 已努力將 XDAIS 開銷保持在限定范圍內(nèi)。

算法標(biāo)準(zhǔn)的接受

盡管一直就軟件規(guī)則向第三方進(jìn)行咨詢,但有些第三方最初對他們能否從算法標(biāo)準(zhǔn)中獲益是抱有懷疑態(tài)度的。許多第三方將算法的開發(fā)看作完全是其自身的業(yè)務(wù),不歡迎 DSP 廠商參與,認(rèn)為這是一種干擾。此外,為了使算法符合新的標(biāo)準(zhǔn),一些重復(fù)工作是不可避免的,而第三方則反對承擔(dān)他們認(rèn)為是不必要負(fù)擔(dān)的工作。而且,對與標(biāo)準(zhǔn)相關(guān)的開銷懲罰也有反對的聲音。

與第三方形成對比的是,DSP 系統(tǒng)集成商幾乎立即對標(biāo)準(zhǔn)表示歡迎。一些較大型DSP 開發(fā)商已經(jīng)在努力建立其自身規(guī)則,而 DSP 標(biāo)準(zhǔn)的到來節(jié)省了他們的工作。系統(tǒng)集成商還認(rèn)識(shí)到,與算法標(biāo)準(zhǔn)相關(guān)的少量開銷能幫助他們避免大量時(shí)間耗費(fèi)與麻煩,這種節(jié)約的價(jià)值大大超過了他們所必須接受的存儲(chǔ)器與性能權(quán)衡。

一旦他們熟悉了這些標(biāo)準(zhǔn),DSP 系統(tǒng)集成商就開始要求算法一致性,這樣即便是最不情愿的第三方也不得不遵照行事。為了應(yīng)付對額外開發(fā)工作的反對意見,出現(xiàn)了幫助第三方開發(fā)一致性算法的工具,圖4所示的 Hyperception Component Wizard 便是其中一個(gè)實(shí)例,它可幫助創(chuàng)建 XDAIS 算法。 <!-- 圖4. Hyperception Component Wizard -->

今天,標(biāo)準(zhǔn)已得到普遍接受,即便最不情愿的算法開發(fā)商也認(rèn)同標(biāo)準(zhǔn)化使得出售軟件的商機(jī)大大增加。根據(jù)標(biāo)準(zhǔn)進(jìn)行設(shè)計(jì)還意味著能夠最小化支持需求,從而節(jié)省第三方的開支。TMS320 Algorithm Standard 就是體現(xiàn)標(biāo)準(zhǔn)有多么成功的一個(gè)代表:目前,符合 eXpressDSP 算法的第三方開發(fā)商達(dá)110個(gè),且數(shù)量還在不斷增加。其他 DSP 廠商也認(rèn)識(shí)到算法標(biāo)準(zhǔn)的需求,并為其各自的平臺(tái)和第三方算法提供了相似的產(chǎn)品。由于標(biāo)準(zhǔn)涵蓋了可互操作性編程的基本問題,因此其規(guī)則在許多方面都與最初推出的標(biāo)準(zhǔn) TMS320 Algorithm Standard 相似。

新興產(chǎn)業(yè)

事實(shí)上,DSP 算法標(biāo)準(zhǔn)帶來了一種前所未有的國際產(chǎn)業(yè)。今天,某個(gè)地區(qū)的系統(tǒng)集成商可以通過網(wǎng)站從另一個(gè)地區(qū)的第三方處購買 DSP 算法,只要該算法通過認(rèn)證,符合算法標(biāo)準(zhǔn),那么該系統(tǒng)開發(fā)商就知道此代碼在應(yīng)用框架中可正常發(fā)揮作用。對 DSP 系統(tǒng)集成商而言,一致性算法已簡化了對第三方目標(biāo)代碼進(jìn)行評估并集成的工作,從而簡化了開發(fā)進(jìn)程并縮短了產(chǎn)品上市時(shí)間 。

由于我們最終控制了算法,現(xiàn)在業(yè)界中存在的問題就在于對其他軟件組件(如庫、驅(qū)動(dòng)程序、內(nèi)核以及通訊棧等)進(jìn)行標(biāo)準(zhǔn)化會(huì)帶來什么優(yōu)勢。DSP 廠商甚至在改進(jìn)現(xiàn)有算法標(biāo)準(zhǔn)的同時(shí),就已經(jīng)在考慮有關(guān)對上述組件的標(biāo)準(zhǔn)化工作進(jìn)行擴(kuò)展的問題了。

隨著 DSP 產(chǎn)業(yè)繼續(xù)圍繞著組件軟件模型進(jìn)行開發(fā),算法標(biāo)準(zhǔn)的價(jià)值正變得越來越明顯。標(biāo)準(zhǔn)提供了一系列規(guī)則,根據(jù)設(shè)計(jì),實(shí)際上這些規(guī)則能夠保證組件在任何應(yīng)用中與來自不同廠商的算法實(shí)現(xiàn)進(jìn)行互操作。因此,代碼的便攜性與可重復(fù)使用性得到加強(qiáng),而算法的衡量與評估更為直接,并且算法也更易于集成到系統(tǒng)之中。總體系統(tǒng)開發(fā)變得更快、更靈活,從而為市場中的最終用戶帶來了更健碩、更廉價(jià)的產(chǎn)品。

]]>
基于DSP的Bluetooth嵌入式系統(tǒng)應(yīng)用http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1589&Page=1wangxinxin2010-11-22 9:35:44摘要:以TI的TMS302VC54x數(shù)字信號處理器(DSP)為嵌入式控制器、ERICSSON的藍(lán)牙模塊為例,在藍(lán)牙電纜替代協(xié)議應(yīng)用模塊的基礎(chǔ)上,提出一種將電纜替代協(xié)議進(jìn)行擴(kuò)展的嵌入式藍(lán)牙應(yīng)用模式及其硬、軟件的實(shí)現(xiàn)。
   
關(guān)鍵詞:Bluetooth
嵌入式系統(tǒng)
DSP
協(xié)議藍(lán)牙(Bluetooth)協(xié)議標(biāo)準(zhǔn)是由藍(lán)牙特別興趣小組(Bluetooth
SIG)發(fā)布的,1999年發(fā)布了Bluetooth
1.0版,2001年2月發(fā)布了Bluetooth1.1版。目前SIG成員已經(jīng)發(fā)展到3000家左右。藍(lán)牙協(xié)議規(guī)定的無線通信標(biāo)準(zhǔn),基于免申請的2.4GHz的ISM頻段,采用GFSK跳頻技術(shù)和時(shí)分雙工(TDD)技術(shù),通信距離為10米左右,Blue
tooth
1.0版標(biāo)準(zhǔn)規(guī)定的數(shù)據(jù)傳輸速率為1Mbps。主要適用于各種短距離的無線設(shè)備互連應(yīng)用場合。可以提供點(diǎn)到點(diǎn)或點(diǎn)到多點(diǎn)的無線連接。1
基于電纜替代的藍(lán)牙協(xié)議簡析1.1
藍(lán)牙協(xié)議體系藍(lán)牙協(xié)議規(guī)范所措述的協(xié)議棧模式如圖1所示。藍(lán)牙體系結(jié)構(gòu)中的協(xié)議可分為四層:核心協(xié)議:基帶控制協(xié)議(Baseband)、鏈路管理協(xié)議(LMP)、邏輯鏈路控制應(yīng)用協(xié)議(L2CAP)、服務(wù)發(fā)現(xiàn)協(xié)議(SDP);   
電纜替代協(xié)議:RFCOMM;電話傳送控制協(xié)議:TCS二進(jìn)制、AT命令集;可選協(xié)議:PPP、UDP/TCP/IP、OBEX、WAP、vCard、vCal、IrMC、WAE。在協(xié)議中,規(guī)定了為基帶控制器、LMP、硬件狀態(tài)及控制寄存器提供命令接口的主機(jī)控制器接口(HCI)。在不同的應(yīng)用模式下,HCI所處的位置不同。它可以位于L2CAP的下面,也可以在L2CAP之上。1.2
電纜替代協(xié)議應(yīng)用模式基于ETSI標(biāo)準(zhǔn)的TS07.10信令的RFCOMM協(xié)議,提供了一個(gè)基于L2CAP協(xié)議之上的串口仿真應(yīng)用模式。藍(lán)牙協(xié)議1.0版中,RFCOMM提供的上層服務(wù)模式主要有三種:對9針RS-232接口仿真模式、空Modem仿真模式和多串口仿真模式。典型的RFCOMM應(yīng)用模式框圖如圖2所示。   
1.3
藍(lán)牙嵌入式應(yīng)用模式僅僅以RFCOMM協(xié)議為基礎(chǔ),作為串口的電纜替代應(yīng)用,無形中限制了藍(lán)牙設(shè)備的應(yīng)用范圍,降低了藍(lán)牙設(shè)備的應(yīng)用價(jià)值。目前計(jì)算機(jī)與外部設(shè)備的接口種類繁多,比較常見的有RS-232、RS-485、Parallel
Port、CAN總線、SPI總線、I2C總線等。如果要使藍(lán)牙設(shè)備在各種場合發(fā)揮作用,必須使藍(lán)牙設(shè)備具備適合這些應(yīng)用場合的多種接口功能。使用DSP數(shù)字信號處理器作為嵌入式控制器,不僅實(shí)現(xiàn)藍(lán)牙物理設(shè)備的初始化、藍(lán)牙高層協(xié)議,而且利用其接口靈活的特點(diǎn),可以方便地對藍(lán)牙電纜替代協(xié)議進(jìn)行有效擴(kuò)展。具體應(yīng)用模式如圖3所示。2
系統(tǒng)硬件結(jié)構(gòu)本系統(tǒng)的構(gòu)成在硬件上分為兩個(gè)部分,藍(lán)牙基帶和射頻部分采用愛立信(ERICSSON)公司提供的藍(lán)牙模塊ROK101007;嵌入式控制器采用美國TI公司的TMS320VC54X系列的DSP數(shù)字信號處理器。   
2.1
ERICSSON藍(lán)牙模塊ROK101007是根據(jù)藍(lán)牙規(guī)范1.0版(Bluetooth
1.0B
Version)而設(shè)計(jì)的短距離藍(lán)牙通信模塊,它包括三個(gè)主上部分:基帶控制芯片、Flash存儲(chǔ)器和Radio芯片。它工作在2.4GHz~2.5GHz的ISM頻段,支持聲音和數(shù)據(jù)的傳輸,其主上功能參數(shù)有:Bluetooth
1.0B預(yù)認(rèn)證;2級RF射頻功率輸出;提供FCC和ETSI糾錯(cuò)處理;最大460
KB/s
UART數(shù)據(jù)傳輸速率;提供UART、USB、PCM、I2C等多種HCI接口;提供內(nèi)部晶振;內(nèi)部預(yù)制HCI框架;點(diǎn)到點(diǎn)、點(diǎn)到多點(diǎn)操作;嵌入式屏蔽保護(hù)。   
ROK101007特別適合計(jì)算機(jī)及外圍設(shè)備、手持設(shè)備、端口設(shè)備使用。其內(nèi)含的藍(lán)牙協(xié)議構(gòu)架及內(nèi)部系統(tǒng)框圖如圖4、圖5所示。2.2
DSP處理器TMS320C54X是16-bit定點(diǎn)DSP,適合無線通信等實(shí)時(shí)嵌入式應(yīng)用的需要。C54x使用了改進(jìn)的哈佛結(jié)構(gòu)。CPU具有專用硬件算術(shù)運(yùn)算邏輯,大量的片內(nèi)存儲(chǔ)器、增強(qiáng)的片內(nèi)外設(shè)以及高度專業(yè)化的指令集,使其具有高度的操作靈活性和運(yùn)行速度。主要特點(diǎn)如下:運(yùn)算速度快:指令周期為25/20/15/12.5/10ns,運(yùn)算能力為40/50/66/80/100MIPS;優(yōu)化的CPU結(jié)構(gòu):內(nèi)含1個(gè)40位的算術(shù)運(yùn)算邏輯單元,2個(gè)40位的累加器,2個(gè)40位的加法器,1個(gè)17×17的硬件乘法器和1個(gè)40位的桶形移位器。有4條內(nèi)部總線和2個(gè)地址產(chǎn)生器等。先進(jìn)的CPU優(yōu)化結(jié)構(gòu)可以使DSP高效地實(shí)現(xiàn)無線通信系統(tǒng)中的各種功能。   
低功耗方式:54x系列DSP可以在3.3V或2.7V電壓下工作,而有些DSP內(nèi)核采用1.8V電壓工作以減小功耗。智能外設(shè):除了標(biāo)準(zhǔn)的串行口和分時(shí)復(fù)用(TDM)串口外,54x還提供了多路緩沖串口(McBSP)和外部處理器通信的HPI并行接口。2.3
系統(tǒng)構(gòu)成本系統(tǒng)中,采用單5V電源供電,嵌入式系統(tǒng)控制器與藍(lán)牙模塊之間的HCI接口采用UART方式。硬件構(gòu)成框圖如圖6所示。整個(gè)系統(tǒng)分為四個(gè)部分:發(fā)射機(jī)、嵌入式控制器、電源管理、接口邏輯。(1)發(fā)射機(jī)由藍(lán)牙模塊ROK101007和阻抗為50Ω的天線構(gòu)成。初始化階段,模塊接收控制器通過UART發(fā)送的HCI命令,實(shí)現(xiàn)藍(lán)牙設(shè)備的復(fù)位、啟動(dòng)、地址查詢、跳頻算法、自動(dòng)尋呼等初始化操作,與附近的藍(lán)牙設(shè)備建立可靠的物理鏈路,并對物理鏈路進(jìn)行相應(yīng)的加密。在數(shù)據(jù)傳送階段,接收控制器(HCI驅(qū)動(dòng)模塊)送來的HCI數(shù)據(jù)包,經(jīng)過模塊中HCI固件(HCI
Firmwire)轉(zhuǎn)化為基帶數(shù)據(jù)包并送給基帶協(xié)議層(Baseband)處理,基帶對上層送來的數(shù)據(jù)進(jìn)行解碼,將其變?yōu)榭梢园l(fā)送的位數(shù)據(jù)流,按照設(shè)定的跳頻算法,采用高斯頻移鍵控(GFSK)編碼方式通過天線送出去。接收數(shù)據(jù)時(shí),以相反的過程將接收到的數(shù)據(jù)進(jìn)行編碼,組合成HCI數(shù)據(jù)包格式并通過UART口送給控制器。具體的收發(fā)執(zhí)行過程可以參考ROK101007數(shù)據(jù)及應(yīng)用手冊以及藍(lán)牙協(xié)議相關(guān)部分。(2)嵌入式控制器由TI的定點(diǎn)數(shù)字信號處理器TMS320C54x、Flash
Memory、SRAM組成,完成對藍(lán)牙模塊的初始化、數(shù)據(jù)傳送、協(xié)議實(shí)現(xiàn)等功能。   
(3)接口控制邏輯包括應(yīng)用接口和控制接口。控制接口為控制器的HPI接口,主要實(shí)現(xiàn)系統(tǒng)的在線特殊控制和Flash在線編程數(shù)據(jù)傳送口。HPI控制接口通過DSP的HPI主機(jī)接口實(shí)現(xiàn)。應(yīng)用接口包括RS-232/RS-485串行接口邏輯、并行接口邏輯(如IEEE488總線)、SI同步串口邏輯,在不同的嵌入式應(yīng)用中,分別通過不同的接口形式實(shí)現(xiàn)本嵌入式系統(tǒng)與主設(shè)備控制器的接口。應(yīng)用接口通過DSP的片內(nèi)外設(shè)(enhanced
peripherals)或者通用I/O端口模擬實(shí)現(xiàn)。(4)電源管理。系統(tǒng)通過單5V電源供電,可以簡單地從主設(shè)備接口中獲取電源,無須另加電源器件。電源管理模塊采用TI專用電路,提供兩路電壓輸出,+3.3V工作電壓和+1.8V控制器內(nèi)核工作電壓。3
系統(tǒng)軟件設(shè)計(jì)系統(tǒng)采用TI提供的DSP5000系列專用集成開發(fā)工具CCS1.2開發(fā)。系統(tǒng)軟件構(gòu)成包括應(yīng)用端口通信及協(xié)議模塊、L2CAP協(xié)議模塊、HCI接口驅(qū)動(dòng)模塊、HPI通信模塊和Flash編程模塊。主要任務(wù)可分為:系統(tǒng)初始化、Flash編程、建立物理鏈路、數(shù)據(jù)傳送和接收等。整個(gè)軟件流程如圖7。由于藍(lán)牙模塊本身具有線路加密功能,因此在本系統(tǒng)設(shè)計(jì)中沒有考慮軟件加密功能。在實(shí)際的設(shè)計(jì)和應(yīng)用過程中,可以視其實(shí)際應(yīng)用環(huán)境和系統(tǒng)處理速度而添加軟件加密模塊。由于跳頻通信本身具有高抗干擾性的特點(diǎn),本嵌入式藍(lán)牙應(yīng)用系統(tǒng)不僅可以應(yīng)用于各種終端設(shè)備和手持設(shè)備間的中低速無線數(shù)據(jù)交換,而且可廣泛地應(yīng)用于各種工業(yè)設(shè)備、軍事裝備的檢測和控制領(lǐng)域。

]]>
幾個(gè)DSP高手的經(jīng)驗(yàn)介紹http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1588&Page=1wangxinxin2010-11-22 9:27:06 一. 我是已經(jīng)從事DSP開發(fā)有幾年了,看到許多朋友對DSP的開發(fā)非常感興取,我結(jié)合這
幾年對DSP的開發(fā)寫一寫自己的感受,一家之言,歡迎指教。我上研究生的第一天起根據(jù)
老板的安排就開始接觸DSP,那時(shí)DSP開發(fā)在國內(nèi)高校剛剛開始,一臺(tái)DSP開發(fā)器接近一萬
還是ISA總線的,我從206開始240、2407A都作過產(chǎn)品,對5402、2812、5471在產(chǎn)品方案
規(guī)劃制定和論證時(shí)也研究過。由于方向所限對6X、8X系列沒有接觸。  

我發(fā)現(xiàn)在國內(nèi)無論在公司或高校許多地方為了加快開發(fā)周期往往把一個(gè)產(chǎn)品開發(fā)分為硬
件和軟件兩個(gè)相對獨(dú)立部分,由不同的人完成。這在具有一定技術(shù)和管理基礎(chǔ)的公司,
由總設(shè)計(jì)師統(tǒng)一規(guī)劃協(xié)調(diào),分任務(wù)并行完成的情況下是可行的,也是符合現(xiàn)代產(chǎn)品開發(fā)
規(guī)律的。但是在高校人員的流動(dòng)很大,研究生的有效科研時(shí)間很短、基礎(chǔ)差(許多研究
生起步時(shí)對電熔、電阻、三極管的分類和選型都很困難,我也是這樣過來的)更不用說
系統(tǒng)規(guī)劃設(shè)計(jì)了,況且許多老板自己也不太懂,師兄有自己的任務(wù),他們搞明白時(shí)也畢
業(yè)了。在許多高校做DSP就是找一個(gè)算法加到自己的主程序里,在板子上跑一下,基本達(dá)
到效果就可以了,至于可靠性是次要的,產(chǎn)業(yè)化無從談起,這已經(jīng)算不錯(cuò)的了。

其實(shí)我覺得一個(gè)系統(tǒng)的完成,系統(tǒng)的規(guī)劃是最重要的,在規(guī)劃時(shí)對硬件設(shè)計(jì)的知識(shí)和認(rèn)
識(shí)是決定性的,它可以讓你知道什么是可行的,什么是不可行的,當(dāng)你同時(shí)具有軟件設(shè)
計(jì)能力時(shí),就可以合理的分配系統(tǒng)功能,完成使用VHDL進(jìn)行系統(tǒng)行為描述-—系統(tǒng)功能
劃分—— 系統(tǒng)子結(jié)構(gòu)設(shè)計(jì)這樣的自頂向下的設(shè)計(jì)規(guī)劃流程,成為系統(tǒng)設(shè)計(jì)專家、項(xiàng)目經(jīng)
理,否則只是硬件工程師、軟件工程師。無論作51、196、還是DSP都是這樣。

下面分別談?wù)勎覍τ布蛙浖O(shè)計(jì)的感受

硬件設(shè)計(jì)是系統(tǒng)設(shè)計(jì)的關(guān)鍵,國內(nèi)和國外產(chǎn)品的差距往往是硬件設(shè)計(jì)水平高低決定的,
任何軟件設(shè)計(jì)思想沒有可靠的物理載體都是空中樓閣,紙上談兵。學(xué)校的研究生很多都
想避開硬件設(shè)計(jì),對于一個(gè)全新的設(shè)計(jì)與其說不屑不如說不敢。試想一下燒幾個(gè)片子的
壓力要比跑飛幾段程序的壓力大的多,尤其是功率器件,一旦燒掉,弄不好火光沖天,
人的自信都沒了。況且改一次板周期長,經(jīng)費(fèi)高,還不知行不行。其實(shí)在國外實(shí)力一般
的公司也是盡量避免硬件的更新設(shè)計(jì),產(chǎn)品一旦定型往往通過軟件升級,這是公司的發(fā)
展策略,對個(gè)人而言物以希為貴,培養(yǎng)一個(gè)硬件設(shè)計(jì)師往往要比軟件設(shè)計(jì)師時(shí)間長花費(fèi)
多。在設(shè)計(jì)dsp硬件時(shí),開始設(shè)計(jì)最小系統(tǒng)板,系統(tǒng)按功能分板設(shè)計(jì)調(diào)試,注意分板電路
的穩(wěn)定性可能不如整板電路,要多加入抗干擾環(huán)節(jié),分板間的引線包括電源線地線要短
,盡量在10公分以內(nèi),實(shí)在不行加入光耦隔離、采用隔離電源。切記電源線、地線的干
擾遠(yuǎn)比信號干擾對系統(tǒng)的危害大得多,又常常被人忽視。電路板工作正常的先決條件就
是電源正常!當(dāng)分板電路正常后再更居情況設(shè)計(jì)整板電路。在調(diào)試時(shí)發(fā)現(xiàn)的問題一定要
找到原因解決,即使是飛線,割線,不要寄希望于下一板改了再看,除非原理性錯(cuò)誤。
每一個(gè)功能環(huán)節(jié)多準(zhǔn)備幾套方案。DSP的選型要根據(jù)系統(tǒng)功能而定,2000是一個(gè)功能比較
全的控制器,但運(yùn)算性能相對低,但目前大部分控制類、家電類包括中低層次的工業(yè)總
線通信產(chǎn)品足夠了,281X不錯(cuò)但太貴,而且開發(fā)技術(shù)不成熟。54XX更像一個(gè)協(xié)處理器,
其實(shí)高端產(chǎn)品5471就很好,功能完*,但BGA封裝對產(chǎn)品的開發(fā)有一定難度。如果沒有從
事過嵌入式系統(tǒng)開發(fā)的朋友其實(shí)可以從51看起,許多思想是共通的,51很經(jīng)典沒有哪一
款微處理器像51那樣使用持久和普遍。在硬件設(shè)計(jì)時(shí)更多的精力放在外圍電路設(shè)計(jì)上,
外圍電路設(shè)計(jì)的靈活性要比DSP本身高得多,難度大得多。建議多考慮CPLD。

軟件設(shè)計(jì)上,著眼點(diǎn)不要僅局限于某種算法和控制策略,而是軟件系統(tǒng)框架的制定,即
操作系統(tǒng)的選擇和實(shí)現(xiàn),算法和控制策略只是其中技巧性很強(qiáng)的子程序和子程序間參數(shù)
相互關(guān)系,建議設(shè)計(jì)軟件時(shí)能具有操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)和編譯原理方面的知識(shí),特別是
使用C。對DSP的內(nèi)部硬件結(jié)構(gòu)一定要掌握,特別是中斷結(jié)構(gòu)和流程、流水線操作,不然
飛都不知道怎么飛的。在語言選擇上我當(dāng)時(shí)是這么給自己規(guī)定的先編20個(gè)左右的匯編程
序,每個(gè)代碼量超過4K,使用語句范圍覆蓋全部語句的60%-70%,在此基礎(chǔ)上使用C。
現(xiàn)在發(fā)現(xiàn)用C構(gòu)建程序的主體框架(操作系統(tǒng))比較快而其不容易出錯(cuò),(我現(xiàn)在正在用
ASM根據(jù)UCOSII的思想重寫自己的操作系統(tǒng))但對系統(tǒng)實(shí)時(shí)性影響比較大的運(yùn)算算法一般
采用MATLAB——C——ASM的辦法仿真調(diào)試優(yōu)化,這里的優(yōu)化不單單是利用優(yōu)化器優(yōu)化,
而是根據(jù)數(shù)據(jù)的特點(diǎn)改變運(yùn)算方法,以除法為例C里的/號其實(shí)掩蓋了許多技巧,當(dāng)除數(shù)
為常數(shù)時(shí)就可以放大倒數(shù)移位相乘移位的辦法進(jìn)行,精度高速度快。這些辦法只有掌握
了ASM語言并用ASM語言思考才會(huì)熟練應(yīng)用。另外我想告訴一些作算法特別是控制算法的
朋友,千萬不要隨意評判一個(gè)算法的優(yōu)劣,在程序中程序和代碼優(yōu)化的程度往往影響了
控制效果好壞,而不是算法本身的思想。其實(shí)在實(shí)際中往往PID甚至PI、PD就夠了,神經(jīng)
元、模糊、小波適用于研究和寫論文,模糊在實(shí)際中用的多一點(diǎn),主要是小日本用的比
較成熟,我再恨日本人,這點(diǎn)也服氣,小日本就是滑,許多物理現(xiàn)象搞不透,就用這法
,還管用,題外話。

最后我想說的是,當(dāng)我們面對市場要求時(shí),產(chǎn)品往往考慮的是可靠性、性能、價(jià)格而不
是你用的什么芯片,在滿足性能的基礎(chǔ)上結(jié)構(gòu)越簡單就越可靠,芯片越通用價(jià)格就越低
,能用51就不用196,能用2407就不用2812,除非把芯片本身作買點(diǎn)利用高成本贏取高利
潤。無論2000還是5000、6000系列都有市場前景,關(guān)鍵是要做深做透

獲取知識(shí)的方法、處理項(xiàng)目的能力是相通的,具體的說就是不要把目光盯在做硬件還是
做軟件上,用ASM還是C,要勤動(dòng)手打好基礎(chǔ),提高自己對系統(tǒng)總體設(shè)計(jì)的能力,從系統(tǒng)
的眼光看問題。為什么都是做DSP的有的畢業(yè)拿3000,有的5000、8000,除了運(yùn)氣和關(guān)系
外,重要的是你對事物的認(rèn)識(shí)深度和高度。我一直都記住這句話:有前途的人做什么都
有前途,沒前途的人做什么都沒前途。  


二. 與其說是鉆在里面,畢業(yè)設(shè)計(jì)是搞240,在老師的壓力做出了一點(diǎn)東西,這期間主要
是對DSP的各種基礎(chǔ)知識(shí)的熟悉與理解,對DSP的真正深入是在公司工作以后。當(dāng)初進(jìn)公
司,因?yàn)檎幸粋(gè)項(xiàng)目需要用5410要我接手。說實(shí)話,在學(xué)校期間我5000的書都沒有看
過一眼,可沒辦法,只能靠自己了。不過好的是我2000DSP的基礎(chǔ)很好。接過項(xiàng)目后,我
第一個(gè)星期就全部看的是5000的指令,DSP的結(jié)構(gòu)倒沒怎么看,因?yàn)轫?xiàng)目硬件已成型,主
要是算法。這樣,花了一個(gè)星期熟悉指令與項(xiàng)目相關(guān)的程序,第二個(gè)星期也就開始編程
了。半個(gè)月以后我對5410也就用很熟了的,當(dāng)然主要還是講在算法方面。這個(gè)項(xiàng)目太概
做了四個(gè)月吧,系統(tǒng)程序是我編寫的,主要有如64位加減乘除乘方開方、及時(shí)域方面的
一些算法。現(xiàn)在又做一個(gè)控制系統(tǒng),用2407開發(fā)的,硬件主要有直交變頻,并把2407的
所有外設(shè)資源全部用到了。現(xiàn)在我可以這樣自夸一句吧:TI的2000系列與5000系列的我
都熟悉,要我去以此做個(gè)系統(tǒng),沒問題。上面是把我搞DSP的經(jīng)歷簡單說了一下的吧,在
這里我想對正在學(xué)及想學(xué)DSP的難兄們說一句的是,DSP并不是很難。當(dāng)然,這個(gè)前提是
你的基礎(chǔ)要好,我單片機(jī),接口都還行,當(dāng)初就是從單片機(jī)改成DSP的。有了單片機(jī)的基
礎(chǔ)再去學(xué)2000第列的DSP(下面的DSP單指2000系列,另有說明為止),你就可以把DSP看
成一個(gè)super microcontroller了。相比之下,DSP除了比單片機(jī)多了更豐的外設(shè)接口(
SPI,SCI、CAN、PWM、CAP、QEP等等),他就是一塊單片機(jī),只不過在單片機(jī)來說你要另
加芯片的工作,DSP全部把它做在一塊芯片去了,我現(xiàn)在看DSP也真就這么簡單。前面有
人提到DSP主要是做算法,這句話有一定的片面性: TI有很多系列的DSP,現(xiàn)在主流的D
SP主要為2000系列、3000系列、4000系列、5000系列、6000系列。除了2000與5000系列
是定點(diǎn)DSP外,其余的均為浮點(diǎn)系列。 TI的2000系列主要長處是在用于控制系統(tǒng),因?yàn)?
它的資源非常豐富,前面提到,在控制系統(tǒng)中用到的一些外設(shè)2000系列均在片內(nèi)集成了
。 TI的5000系列主要長處是用于數(shù)字信號的算法處理,這里所講算法處理主要是指在數(shù)
字信號處理時(shí)的一些算法,如FIR、IIR、FFT等等。5000系列的DSP的速度比2000快,24
07最快只能到40M,2800系列除外,5410的DSP可以達(dá)到160M,如現(xiàn)在我們主要用來做數(shù)
字信號方面的處理以及簡單的靜態(tài)圖像處理等這樣一些在資源需要處于中等的一些算法
。 TI的6000系列主要是用在實(shí)時(shí)圖像處理,這個(gè)就更則重于算法處理。一般的硬件很少
自制,我們是用TI的DSK板再加上自主板相結(jié)合。  


三. 使用C/C++語言編寫基于DSP程序的注意事項(xiàng) 1、 不影響執(zhí)行速度的情況下,可以使
用c或c/c++語言提供的函數(shù)庫,也可以自己設(shè)計(jì)函數(shù),這樣更易于使用“裁縫師”優(yōu)化
處理,例如:進(jìn)行絕對值運(yùn)算,可以調(diào)用fabs()或abs()函數(shù),也可以使用if...else..
.判斷語句來替代。 2、 要非常謹(jǐn)慎地使用局部變量,根據(jù)自己項(xiàng)目開發(fā)的需要,應(yīng)盡
可能多地使用全局變量和靜態(tài)變量。 3、 一定要非常重視中斷向量表的問題,很多朋友
對中斷向量表的調(diào)用方式不清楚。其實(shí)中斷向量表中的中斷名是任意取定的,dsp是不認(rèn)
名字的,它只認(rèn)地址!!中斷向量表要重新定位。這一點(diǎn)很重要。 4、 要明確dsp軟件
開發(fā)的第一步是對可用存儲(chǔ)空間的分析,存儲(chǔ)空間分配好壞關(guān)系到一個(gè)dsp程序員的水平
。對于dsp,我們有兩種名稱的存儲(chǔ)空間,一種是物理空間,另一種是映射空間。物理空
間是dsp上可以存放數(shù)據(jù)和程序的實(shí)際空間(包括外部存儲(chǔ)器),我們的數(shù)據(jù)和程序最終
放到物理空間上,但我們并不能直接訪問它們。我們要訪問物理空間,必須借助于映射
空間才行!!但是映射空間本身是個(gè)“虛”空間,是個(gè)不存在的空間。所以,往往是映
射空間遠(yuǎn)遠(yuǎn)大于實(shí)際的物理空間,有些映射空間,如io映射空間,它本身還代表了一種
接口。只有那些物理空間映射到的映射空間才是我們真正可訪問(讀或?qū)懀┑拇鎯?chǔ)空間
。 5、 盡可能地減少除法運(yùn)算,而盡可能多地使用乘法和加法運(yùn)算代替。 6、 如果ti
公司或第三方軟件合作商提供了dsplib或其他的合法子程序庫供調(diào)用,應(yīng)盡可能地調(diào)用
使用。這些子程序均使用用匯編寫成,更為重要之處是通過了tms320算法標(biāo)準(zhǔn)測試。而
且,常用的數(shù)字信號處理算法均有包括!! 7、 盡可能地采用內(nèi)聯(lián)函數(shù)!!而不用一般
的函數(shù)!!可以提高代碼的集成度。 8、 編程風(fēng)格力求簡煉!!盡可能用c語言而不用
c++語言。我個(gè)人感到雖然c++終代碼長了一些,好象對執(zhí)行速度沒有影響。 9、 因?yàn)樵?
c5000中double型和float型均占有2個(gè)字,所以都可以使用,而且,可以直接將int型賦
給float型或double型,但,盡可能地多使用int數(shù)據(jù)類型代替!這一點(diǎn)需要注意!! 1
0、 程序最后至少要加上一個(gè)空行,編譯器當(dāng)這個(gè)空行為結(jié)尾提示符。 11、 大膽使用
位運(yùn)算符,非常好用!! 12、 2003年6月份從ti的網(wǎng)站上下到了關(guān)于tms320c67x系列d
sp的快速算法庫,于是,tms320c5000和c6000全系列的快速算法庫都問世了,這些算法
庫均可供c/c++語言直接調(diào)用,優(yōu)化程度100%,實(shí)際編程時(shí)盡可能地使用(下載時(shí)可以同
時(shí)下載到說明文檔和ascii源程序,可以根據(jù)自己需要作出修改,修改前最好做個(gè)備份)]]>
DSP技術(shù)的應(yīng)用現(xiàn)狀和發(fā)展http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1587&Page=1wangxinxin2010-11-22 9:23:50數(shù)字信號處理器是在模擬信號變換為數(shù)字信號后對數(shù)字信號進(jìn)行高速實(shí)時(shí)處理的專用處理器,它具有計(jì)算速度快、體積小、功耗低等優(yōu)點(diǎn),是實(shí)現(xiàn)數(shù)字信號處理的強(qiáng)大工具。近年來,隨著半導(dǎo)體技術(shù)的進(jìn)步,處理器芯片的處理能力越來越強(qiáng)大,使得信號處理的研究可以主要放在算法和軟件方面,不再像過去那樣需要過多考慮硬件。由于它的出色性能,DSP目前被廣泛應(yīng)用于數(shù)字通信、信號處理、工業(yè)控制、圖像處理等領(lǐng)域。
1 DSP的發(fā)展歷程
在數(shù)字信號處理技術(shù)發(fā)展的初期(上世紀(jì)50~60年代),人們只能在微處理器上完成數(shù)字信號的處理。一般認(rèn)為,世界上第一個(gè)單片DSP芯片是1978年AMI公司發(fā)布的S2811。1980年,日本NEC公司推出的D7720是第一個(gè)具有硬件乘法器的商用DSP芯片,從而被認(rèn)為是第一塊單片DSP器件。
隨著大規(guī)模集成電路技術(shù)的發(fā)展,1982年美國德州儀器公司柜櫥世界上第一代DSP芯片TMS32010及其系列產(chǎn)品,標(biāo)志著實(shí)時(shí)數(shù)字信號處理領(lǐng)域的重大突破。TI公司隨后推出了第二代DSP芯片TMS32020及其系列,至今,TI公司已經(jīng)推出了其第六代DSP芯片TMS320C62X/C67X、TMS320C64X等芯片。
美國Analog Device公司在DSP芯片市場也有一定的份額,推出了一系列具有自己特色的DSP芯片,如其定點(diǎn)的DSP芯片ADSP2101/2103/2105,ADSP2111/2115,ADSP2161/62/64,浮點(diǎn)DSP有ADSP21000/020、ADSP21060/21062等。
20世紀(jì)80年代以來,DSP芯片得到了突飛猛進(jìn)的發(fā)展,從運(yùn)算速度來看,MAC(一次乘加運(yùn)算)時(shí)間已經(jīng)從80年代初期的400 ns降到了10 ns以下(如TI公司的TMS32054X、TMS320C62X/67X等),處理能力提高了幾十倍。DSP芯片的引腳數(shù)量從1980年的64個(gè)增加到現(xiàn)在的200個(gè)以上,引腳數(shù)量的增加也加強(qiáng)了結(jié)構(gòu)的靈活性[1>。
2 DSP系統(tǒng)和芯片的基本結(jié)構(gòu)
2.1 DSP系統(tǒng)的基本結(jié)構(gòu)
系統(tǒng)所需要處理的信號一般為自然條件下的模擬信號,這就需要首先將輸入的信號轉(zhuǎn)換為數(shù)字的電信號。這就需要A/D(模數(shù)轉(zhuǎn)換)模塊,A/D模塊將模擬信號轉(zhuǎn)換為數(shù)字的比特流,輸入給DSP系統(tǒng),DSP系統(tǒng)對數(shù)字信號進(jìn)行某種處理之后,一般還需要輸出為模擬信號來供人們使用,所以又用到了D/A(數(shù)模轉(zhuǎn)換)模塊,將處理后的數(shù)字信號轉(zhuǎn)換為模擬值。整個(gè)系統(tǒng)的構(gòu)成如圖1所示。

圖片點(diǎn)擊可在新窗口打開查看
數(shù)字信號處理結(jié)構(gòu)穩(wěn)定性好,可重復(fù)性好,可以大規(guī)模集成,使得信號處理功能更復(fù)雜,手段更靈活,精度更高。
2.2 DSP芯片的結(jié)構(gòu)特點(diǎn)[2>
DSP處理芯片,為了適應(yīng)信號處理運(yùn)算的需要,結(jié)構(gòu)與通用的其他計(jì)算機(jī)或控制處理器相比,有較大的不同,主要的幾點(diǎn)為:
(1)具有專用的算術(shù)單元,如硬件乘法器,DSP內(nèi)部設(shè)有硬件乘法器來完成乘法操作,以提高乘法速度。
(2)具有特殊的總線結(jié)構(gòu)——哈佛結(jié)構(gòu)。這種結(jié)構(gòu)使DSP具有獨(dú)立的地址總線和數(shù)據(jù)總線,可以同時(shí)取地址和操作數(shù)。
(3)流水處理。流水技術(shù)使多個(gè)不同的操作可以同時(shí)執(zhí)行,處理器內(nèi)將每條指令的執(zhí)行分為取址、解碼、執(zhí)行等階段,不同的階段并行執(zhí)行,提高了程序執(zhí)行的效率和速度。
(4)高速的片內(nèi)存儲(chǔ)器。DSP芯片一般內(nèi)部集成有程序和數(shù)據(jù)存儲(chǔ)器,訪問速度快,緩解總線接口的壓力,提高程序執(zhí)行的速度。
一些其他特殊功能的DSP芯片還具有一些專用的設(shè)計(jì)結(jié)構(gòu),這里不一一列出。總之,DSP功能上的特點(diǎn)很大程度上是針對數(shù)字信號處理算法的特點(diǎn),針對性地組成專用的結(jié)構(gòu),以滿足處理的需要。
3 DSP芯片的產(chǎn)品和市場
3.1 應(yīng)用領(lǐng)域和市場
在近20多年的時(shí)間里,DSP芯片的應(yīng)用已經(jīng)從軍事、航空航天領(lǐng)域擴(kuò)大到信號處理、通信、雷達(dá)、消費(fèi)等許多領(lǐng)域。主要應(yīng)用有:信號處理、通信、語音、圖像、軍事、儀器儀表、自動(dòng)控制、醫(yī)療、家用電器等。
DSP主要應(yīng)用市場為3C(communication、computer、consumer——通信、計(jì)算機(jī)、消費(fèi)類)領(lǐng)域,所占市場比例超過90%,并且總體市場規(guī)模在不斷擴(kuò)大。在數(shù)字化、個(gè)人化和網(wǎng)絡(luò)化的推動(dòng)下,預(yù)計(jì)未來的年均增長率高達(dá)40%。在全球的DSP市場中,TI公司獨(dú)占鰲頭,占世界市場的45%份額,其次是朗訊(28%)、ADI(12%)、摩托羅拉(12%)、其他公司(3%) [3> 。
3.2 世界主要的DSP芯片制造公司及其產(chǎn)品
(1)TI公司。
TI(Texas Instruments)公司在業(yè)界一直處于領(lǐng)先的地位。近年,TI在原來的TMS320C1X、TMS320C25、TMS320C3X/4X、TMS320C5X、TMS320C8X的基礎(chǔ)上又推出了3種高性價(jià)比的DSP系列:TMS320C2000、TMS320C5000和TMS320C6000系列。這3種芯片,在我國的信號處理硬件領(lǐng)域應(yīng)用也是非常廣泛,下面作些簡要介紹:
TMS320C2000系列主要用于工業(yè)控制領(lǐng)域,提供了全系列的高性能控制芯片,代碼運(yùn)行效率高。除了較強(qiáng)的控制功能之外,還提供了方便的接口與高性能外圍器件相連。主要型號有TMS320C24X和28X系列。
TMS320C5000系列為高性能的低功耗定點(diǎn)DSP芯片。處理速度最高可以達(dá)到900 MIPS,功耗很低,可以達(dá)到0.33 mA/MHz。非常適合移動(dòng)和手持系統(tǒng)的應(yīng)用。主要有TMS320C54X和55X系列。
TMS320C6000系列為新一代高性價(jià)比DSP芯片,是高端DSP處理器的代表。C6000系列的DSP定點(diǎn)運(yùn)算可以達(dá)到1200到8 000 MIPS(百萬條指令/秒),浮點(diǎn)運(yùn)算可以達(dá)到600到 1 800 MFLOPS(百萬次浮點(diǎn)操作/秒)的運(yùn)算速度。主要有定點(diǎn)系列的TMS320C62X和浮點(diǎn)系列的TMS320C67X。TMS320C64X為TI最新推出的高性能定點(diǎn)DSP處理器,時(shí)鐘速度提高到1 GHz,單片處理能力可達(dá)到8 000 MIPS。
(2)Analog Device公司。
ADI公司的DSP目前主要分為3個(gè)系列:SHARC、Blackfin、TigerSHARC。
SHARC系列一直在雷達(dá)、聲納信號處理等領(lǐng)域享有很高的聲譽(yù),很多商用、軍用的信號處理機(jī)中都可以看到SHARC的身影。單片處理能力有限的SHARC之所以能夠在通信信號處理領(lǐng)域有這么高的聲譽(yù),完全是由于ADI優(yōu)秀的片間互連技術(shù)(LINK口),利用這個(gè)LINK口可以很方便地將幾片、幾十片SHARC連接起來組成DSP陣列,從而在單片處理能力達(dá)不到要求的場所利用DSP陣列就很容易達(dá)到了。
Blackfin是近幾年推出的針對性能要求比較高,同時(shí)功耗要求又比較低的場所。它所具備的優(yōu)點(diǎn)很適合在便攜式通信產(chǎn)品中應(yīng)用。
TigerSHARC是從SHARC改進(jìn)的高端DSP,它的出現(xiàn)是ADI公司的DSP在高端領(lǐng)域應(yīng)用開創(chuàng)了歷史性的局面。新推出的第二代TigerSHARC ADSP-TS201S主頻高達(dá)600 MHz,處理能力高達(dá)14.4 GOPS,還有超大容量的RAM,使它一出世就在高端領(lǐng)域脫穎而出。尤其適合軟件無線電的應(yīng)用。
DSP已經(jīng)發(fā)展成為了一種成熟的技術(shù),也是一種成熟的產(chǎn)品,它在數(shù)字信息時(shí)代占據(jù)越來越重要的位置,所以其市場的擴(kuò)展還存在著巨大的空間。DSP的性能、價(jià)格和功耗是決定其市場的三個(gè)重要因素。挑戰(zhàn)更高的性能,盡可能降低價(jià)格和功耗,一直是DSP追求的目標(biāo)。
4 DSP處理系統(tǒng)的發(fā)展現(xiàn)狀
4.1 國際發(fā)展現(xiàn)狀
簡略國際DSP處理發(fā)展的現(xiàn)狀,國外的商業(yè)化信號處理設(shè)備一直保持著快速的發(fā)展勢頭。歐美等科技大國保持著國際領(lǐng)先的地位。例如美國DSP research公司,Pentek公司,Motorola公司,加拿大Dy4公司等,他們很多已經(jīng)發(fā)展到相當(dāng)大的規(guī)模,競爭也愈發(fā)激烈。我們從國際知名DSP技術(shù)公司發(fā)布的產(chǎn)品中就可以了解一些當(dāng)今世界先進(jìn)的數(shù)字信號處理系統(tǒng)的情況。
以Pentek公司一款處理板4293為例,使用8片TI公司 300 MHz的TMS320C6203芯片,具有19 200 MIPS的處理能力,同時(shí)集成了8片32 MB的SDRAM,數(shù)據(jù)吞吐600 MB/s。該公司另一款處理板4294集成了4片Motorola MPC7410 G4 PowerPC處理器,工作頻率400/500 MHz,兩級緩存256K×64 bit,最高具有16MB的SDRAM。
ADI公司的TigerSHARC芯片也由于其出色的協(xié)同工作能力,可以組成強(qiáng)大的處理器陣列,在諸多領(lǐng)域(特別是軍事領(lǐng)域)獲得了廣泛的應(yīng)用。以英國Transtech DSP公司的TP-P36N為例,它由4~8片TS101b(TigerSharc)芯片構(gòu)成,時(shí)鐘 250 MHz,具有6~12 GFLOPS的處理能力。
DSP應(yīng)用產(chǎn)品獲得成功的一個(gè)標(biāo)志就是進(jìn)入產(chǎn)業(yè)化。在以往的20年中,這一進(jìn)程在不斷重復(fù)進(jìn)行,而且周期在不斷縮小。在數(shù)字信息時(shí)代,更多的新技術(shù)和新產(chǎn)品需要快速地推上市場,因此,DSP的產(chǎn)業(yè)化進(jìn)程還是需要加速進(jìn)行。隨著競爭的加劇,DSP生產(chǎn)商隨時(shí)調(diào)整發(fā)展規(guī)劃,以全面的市場規(guī)劃和完善的解決方案,加上新的開發(fā)歷年,不斷深化產(chǎn)業(yè)化進(jìn)程。
4.2 我國發(fā)展現(xiàn)狀
隨著我國信息產(chǎn)業(yè)的發(fā)展,近年來我國的數(shù)字信號處理學(xué)科發(fā)展較快。DSP處理器已經(jīng)在我國的數(shù)字通信、信號處理、雷達(dá)、電子對抗、圖像處理等方面得到了廣泛的應(yīng)用,為科學(xué)技術(shù)和國民經(jīng)濟(jì)建設(shè)創(chuàng)造了很大價(jià)值。全國有很多高校、科研機(jī)構(gòu)的信號處理實(shí)驗(yàn)室都在大力研究性能更高的數(shù)字信號處理設(shè)備,取得了很多研究成果。我國的科研人員通過對先進(jìn)的DSP芯片的研究,已經(jīng)研制出一些高性能處理設(shè)備的解決方案,并且在板級PCB設(shè)計(jì)方面,也取得了寶貴的設(shè)計(jì)經(jīng)驗(yàn)。
以我國某電子技術(shù)研究所研制的DSP雷達(dá)數(shù)字信號處理通用模塊為例,它使用了6片ADSP21060和大規(guī)模可編程器件構(gòu)成通用處理模塊。通過信號處理算法并行設(shè)計(jì)、系統(tǒng)多數(shù)據(jù)流設(shè)計(jì)、處理任務(wù)分配調(diào)度程序設(shè)計(jì),實(shí)現(xiàn)高速實(shí)時(shí)雷達(dá)數(shù)字信號處理 [4> 。以FFT算法為例,將任務(wù)分為3個(gè)流水處理過程:FFT、復(fù)數(shù)乘法、IFFT,實(shí)現(xiàn)多片DSP組成并行處理。在33 MHz時(shí)鐘下,1 024點(diǎn)處理通過時(shí)間為0.7 ms,可以實(shí)現(xiàn)單通道數(shù)據(jù)率為1 MHz,雙通道并行工作為2 MHz。
國內(nèi)的某大學(xué)所研制的基于TMS320C6201的高速實(shí)時(shí)數(shù)字信號處理平臺(tái),實(shí)現(xiàn)基-2的復(fù)數(shù)FFT,允許輸入數(shù)據(jù)的動(dòng)態(tài)范圍16-bit,可以實(shí)現(xiàn)59 μs內(nèi)完成512點(diǎn)的FFT,130 μs內(nèi)可以完成1 024點(diǎn)的FFT。
但是,應(yīng)該看到,我國在信號處理理論、高速高性能處理器設(shè)計(jì)和制造方面與國際先進(jìn)水平還有較大差距。而且,主要的核心處理器件基本完全依賴進(jìn)口,這也是我國半導(dǎo)體研究領(lǐng)域需要大力加強(qiáng)的工作之一。復(fù)雜的大型處理機(jī)PCB板級設(shè)計(jì)和制造也存在一定困難,也是需要我國科研人員發(fā)揚(yáng)勇于拼搏的精神,繼續(xù)的刻苦努力。
5 DSP技術(shù)展望
5.1 向著集成DSP方向發(fā)展
目前的DSP多數(shù)基于RISC(精簡指令集)結(jié)構(gòu),這種結(jié)構(gòu)的優(yōu)點(diǎn)是尺寸小、功耗低、性能高。現(xiàn)在各DSP廠紛紛采用新工藝,將幾個(gè)DSP核、MPU核、專用處理單元、外圍電路單元和存儲(chǔ)單元集成在一個(gè)芯片上,成為DSP系統(tǒng)級集成電路。
5.2 內(nèi)核結(jié)構(gòu)進(jìn)一步改善
多通道結(jié)構(gòu)和單指令多重?cái)?shù)據(jù)(SIMD)、超長指令字結(jié)構(gòu)(VLIM)、超標(biāo)量結(jié)構(gòu)、超流水結(jié)構(gòu)、多處理、多線程及可并行擴(kuò)展的超級哈佛結(jié)構(gòu)在高性能處理器將占據(jù)主導(dǎo)地位。
5.3 進(jìn)一步降低功耗和幾何尺寸
DSP的應(yīng)用范圍已經(jīng)擴(kuò)大到人們工作生活的各個(gè)領(lǐng)域,特別是便攜式手持產(chǎn)品對于低功耗和尺寸的要求很高,所以DSP有待于進(jìn)一步降低功耗。隨著CMOS的發(fā)展,提高DSP的運(yùn)算速度和降低功耗尺寸是完全可能的。
5.4 與可編程器件結(jié)合
DSP在許多新的領(lǐng)域的應(yīng)用要求它借助PLD或FPGA來滿足日益增長的處理要求。與常規(guī)DSP器件相比,F(xiàn)PGA器件配合傳統(tǒng)DSP器件可以處理更多的信道,來滿足無線通信、多媒體等領(lǐng)域的多功能和高性能的需要。

]]>
TMS320C67x DSP Library在程序開發(fā)中的應(yīng)用http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1586&Page=1wangxinxin2010-11-22 9:22:08FFT、FIR濾波等),完成這些操作的程序的效率直接影響整個(gè)軟件部分的效率。為此,TI公司提供了一系列庫函數(shù)(TI DSP Library,以下簡稱DSP Lib)來完成這些操作。這些庫函數(shù)既可減少程序員的工作量,又可提高程序效率,因此,在程序開發(fā)中,合理地使用這些庫函數(shù),將大大提高系統(tǒng)性能。

1 TI DSP Library簡介
1.1 TI DSP Library的特點(diǎn)

    DSP Lib的核心實(shí)際上是一系列經(jīng)過手工優(yōu)化的匯編程序代碼,這些代碼封裝在后綴名為.lib的文件中,可用于完成各種運(yùn)算。它們對外是不可見的。這些程序(庫函數(shù),routines)可被C程序調(diào)用。由于經(jīng)過了手工優(yōu)化,它們的效率都非常高。由于不同系列DSP芯片的指令集不同,因此,不同系列DSP芯片的DSP Lib也是不同的,如TMS320C5000的DSP LIb就不能用于TMS320C6000。但是,各個(gè)系列DSP Lib的基本組成是相同的,一個(gè)完整的DSP Lib通常由Lib文件夾、include文件夾和其它輔助文件組成。其中l(wèi)ib文件夾用于存放*.lib文件,其內(nèi)部封裝著手工優(yōu)化的匯編程序代碼,是一個(gè)DSP Lib的核心部分。有的DSP Lib還有*.src文件,這些*.src文件主要是用C語言和匯編語言編寫的程序源代碼。使用歸檔器可從中提取出這些源代碼;而include文件夾用于存放各個(gè)庫函數(shù)的頭文件,通常這些文件分為C程序頭文件和匯編程序頭文件兩部分。
1.2 TI DSP Library的下載和安裝
   
由于DSP Lib種類繁多,且屬可選模塊,通常的DSP開發(fā)環(huán)境(CCS,Code Composer Studio)并沒有配備DSP Lib。因此,使用一個(gè)DSP Lib之前,必須進(jìn)行DSP Lib的下載和安裝。
    所謂下載,就是在TI公司網(wǎng)站W(wǎng)WW.ti.com上免費(fèi)下載各種DSP Lib;而所謂安裝,就是在DSP Lib下載完畢后,雙擊安裝文件,以將它安裝在計(jì)算機(jī)中選定的位置(默認(rèn)位置為C:\ti)。安裝之后,即可在程序開發(fā)中使用DSP Lib的庫函數(shù)。
1.3 TI DSP Library的使用
   
按處理數(shù)據(jù)類型的不同,TI DSP分為定點(diǎn)(fixed-point)DSP和浮點(diǎn)(floating-point)DSP。由于浮點(diǎn)DSP既有定點(diǎn)指令集,又有浮點(diǎn)指令集,因此,本文選取浮點(diǎn)DSP系列TMS320C67x的DSP Lib,并且選取了TMS320C67x DSP Library和TMS320C67x FastRTS Library兩個(gè)DSP Lib,前者主要針對數(shù)字信號處理的常用操作,后者則針對一般數(shù)學(xué)運(yùn)算的通用操作。

2 TMS320C67x DSP Library的應(yīng)用
   
當(dāng)DSP進(jìn)行數(shù)據(jù)處理時(shí),卷積、FFT、FIR濾波等操作頻繁出現(xiàn),故在程序開發(fā)中,使用DSP Lib來完成這些操作將大大提高整個(gè)程序的效率并簡化編程。TMS320C67x DSP Library就是這樣的一個(gè)DSP Lib,它的lib文件夾內(nèi)含庫文件dsp67x.lib和源文件dsp67x.sr、dsp67x_C.sr-c、dsp67x_sa.src。TMS320C67x DSP Library主要用于TMS320C67x系列DSP芯片的程序開發(fā),使用它可完成FFT運(yùn)算。
2.1 TMS320C67x DSP Library的使用
   
使用TMS320C67x DSP Library的第一步是將其核心文件“dsp67x.lib”加入到當(dāng)前工程中,相關(guān)編譯鏈接參數(shù)為“-ldsp67x.lib”;接著,將存儲(chǔ)頭文件的include目錄所在路徑添加到工程搜索路徑中,其相關(guān)編譯鏈接參數(shù)為“-i pathname”,具體操作可參考TI公司的有關(guān)文獻(xiàn)。選取該DSP Lib中的庫函數(shù)“DSPF_sp_cfftr2_dit()”可完成FFT運(yùn)算,它使用的是基2的時(shí)間抽取算法,具體形式如下:
圖片點(diǎn)擊可在新窗口打開查看
    同時(shí),該庫函數(shù)還有一個(gè)對應(yīng)的頭文件“dspf_sp_cfftr2_dit.h”,使用時(shí)可將其包含到調(diào)用該庫函數(shù)的程序中。此時(shí),該庫函數(shù)就可以像一般子程序一樣被其他程序調(diào)用,具體使用代碼如下:
圖片點(diǎn)擊可在新窗口打開查看
    為了便于比較,可使用歸檔器指令“ar6x”從該DSP Lib的源文件“dsp67x_c.src”中提取出庫函數(shù)的源代碼,以得到文件“sp_cfftr2_ dit.c”。所有歸檔器指令的命令文件都存儲(chǔ)在CCS的安裝目錄下,這里,“ar6x”的使用格式為:
     ar6x-x dsp67x_c.src sp_cfftr2_dit.c
    從“sp_cfftr2_dit.c”中可得到庫函數(shù)“DSPF_sp_cfftr2_dit()”的C語言源代碼,相應(yīng)的C程序?yàn)椤皏oid sp_cfftr2_dit(float*x,float*w,short n)”,該程序可以像一般子程序一樣被主程序調(diào)用。源函數(shù)和庫函數(shù)的形式完全相同。實(shí)際上,庫函數(shù)就是對源函數(shù)的程序代碼進(jìn)行手工優(yōu)化的結(jié)果。
2.2 性能分析
   
分別使用庫函數(shù)和源函數(shù)可完成FFT運(yùn)算。并可用CCS自帶的剖析工具“Profiler”來分析兩個(gè)函數(shù)由于編程方式的不同所帶來的運(yùn)行時(shí)間上的差異。改變輸入數(shù)組的長度,可得到如表1所列的一組數(shù)據(jù)。由表1可以看出,庫函數(shù)的效率遠(yuǎn)遠(yuǎn)高于源函數(shù),其效率的提高量隨著輸入數(shù)據(jù)長度的變化而變化,最高的效率可提高40倍(40.98-1=39.98),最低仍在25倍左右,而且該DSP Lib的其他庫函數(shù)也有相近的測試結(jié)果。雖然用該DSP Lib的庫函數(shù)后,程序效率可以提高一個(gè)數(shù)量級,對于時(shí)間限制較為嚴(yán)格的系統(tǒng),特別是實(shí)時(shí)系統(tǒng),這仍然是非常有用的。
庫函數(shù)和源函數(shù)相比,其效率有了很大提高,但這種提高是有代價(jià)的。它主要表現(xiàn)為通用性降低。其原因是為了最大限度的提高效率,在對代碼進(jìn)行手工優(yōu)化的過程中,引入了一些強(qiáng)假設(shè),同時(shí),使用了大量的操作合并、并行處理等簡化手段,這必然導(dǎo)致庫函數(shù)的通用性降低。例如,庫函數(shù)“DSPF_sp_cfftr2_dit()”使用時(shí)就會(huì)受到以下條件的限制:
    (1)輸入數(shù)組的長度必須是2的冪級數(shù),且不得小于32;
    (2)輸入數(shù)組x和旋轉(zhuǎn)因子數(shù)組w必須按雙字對齊方式存儲(chǔ),即數(shù)組起始地址的末3位必須是零;
    (3)數(shù)據(jù)的存儲(chǔ)格式必須是小端模式(Little Endian);
    (4)執(zhí)行期間可接收中斷,但不予響應(yīng),這可能導(dǎo)致一些實(shí)時(shí)事件得不到及時(shí)響應(yīng)。

圖片點(diǎn)擊可在新窗口打開查看


    如果使用“DSPF_sp_cfftr2_dit()”時(shí)不考慮到這些限制,就有可能導(dǎo)致程序運(yùn)行異常。因此,庫函數(shù)的效率雖然高,但不能盲目的濫用,在程序開發(fā)時(shí),必須根據(jù)實(shí)際情況在通用性和效率之間進(jìn)行折衷,以合理的使用庫函數(shù)。

3 TMS320C67x Fast RTS Library的應(yīng)用
   
在DSP進(jìn)行數(shù)據(jù)處理時(shí),除了一些典型的操作外,還存在大量常規(guī)的操作,如除法操作、對數(shù)運(yùn)算、三角函數(shù)等,這些操作也是很費(fèi)時(shí)的,提高這些操作的代碼效率,也能顯著提高整個(gè)軟件的效率。TMS320C67x FastRTS Library就是這樣的一個(gè)DSP Lib,它通常由Lib文件夾、include文件夾和doc文件夾組成。其中l(wèi)ib文件夾內(nèi)含庫文件fastrts67x.lib(Little Endian)、fastrts67xe.lib(Big Endian)和源文件fastrts67x.src;include文件夾內(nèi)含頭文件fastrts67x.h和recip.h;而doc文件夾內(nèi)含幫助文件。
3.1 TMS320C67x FastRTS Library的使用
   
TMS320C67x FastRTS Library(以下簡稱FastRTS Library)主要用于處理一些常規(guī)的操作。由于在通常情況下,CCS已經(jīng)有一個(gè)RTSLib-rary來完成這些操作(例如,“rts6700.lib”就是一個(gè)適用于TMS320C67x的RTS Library文件),因此,如果要使用FastRTS Library,就必須在編譯鏈接過程中先于“rts6700.lib”來編譯鏈接“fastrts67x.lib(或fastrts67xe.lib)”,相應(yīng)的編譯鏈接命令選項(xiàng)為:
    -l fastrts67x.lib - rts6700.lib或 -l fastrts67xe.lib - rts6700.lib
    FastRTS Library同樣需要注意頭文件的使用,它有兩個(gè)頭文件: “fastrts67x.h”和“recip.h”。如果使用FastRTS Library中的特殊函數(shù)(三角函數(shù),對數(shù)函數(shù)等),則必須包含“fastrts67x.h”;而如果使用求倒數(shù)操作,則必須包含“recip.h”。FastRTS Library的使用方式如下:
圖片點(diǎn)擊可在新窗口打開查看
3.2 性能分析
   
分別使用FastRTS Library和RTS Library可完成一些常用操作,使用剖析工具可得到各個(gè)操作所需的時(shí)鐘周期個(gè)數(shù),具體如表2所列(所有的操作均處理單精度浮點(diǎn)數(shù))。對比表2中的數(shù)據(jù)可以發(fā)現(xiàn),和RTS Library相比,F(xiàn)astRTS Library大大提高了程序的效率。

圖片點(diǎn)擊可在新窗口打開查看



4 DSP Lib的編寫
   
事實(shí)上,程序員并非只能被動(dòng)的使用DSP Lib。只要遵循相應(yīng)的規(guī)則,程序員也可以自己編寫一個(gè)DSP Lib。編寫一個(gè)最簡單的DSP Lib的步驟如下:
    (1)新建一個(gè)工程newLibrary,將其屬性設(shè)為“Library(.lib)”,圖l所示是新工程設(shè)置示意圖;

圖片點(diǎn)擊可在新窗口打開查看


    (2)編寫高效率代碼文件myLibl.a(chǎn)sm、myLib2.a(chǎn)sm、myLib3.a(chǎn)sm,……
    (3)將myLibl.a(chǎn)sm、myLib2.a(chǎn)sm、myLib3.a(chǎn)sm,……等文件添加到工程new Library中;
    (4)編譯鏈接工程new Library;
    完成上面4步后,工程中就會(huì)出現(xiàn)庫文件newLibrary.lib,這樣,一個(gè)DSP Lib就制作成功了。為了使DSP Lib具有保密性,通常情況下,只需保留工程中的newLibrary.lib文件,而將其他文件,特別是源代碼文件*.a(chǎn)sm刪除或保密存放。這樣,用戶就只能使用庫文件,而無法從中得到源代碼的信息。

5 結(jié)束語
   
本文以TMS320C67x DSP Library和TMS320C67x FastRTS Library為例,詳細(xì)介紹了如何在程序開發(fā)中使用TI DSP Library,并分析了使用TI DSP Library所帶來的程序效率的提高。最后,還給出了編寫TI DSP Library的一個(gè)應(yīng)用實(shí)例。

]]>
使用TMS320C542構(gòu)成數(shù)據(jù)采集處理系統(tǒng)http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1585&Page=1wangxinxin2010-11-22 9:19:53使用TMS320C542構(gòu)成數(shù)據(jù)采集處理系統(tǒng) 摘要:使用TI公司C5000系列DSP中的TMS320C542構(gòu)成了一個(gè)數(shù)據(jù)采集處理系統(tǒng),介紹了系統(tǒng)的結(jié)構(gòu)、性能、工作流程及設(shè)計(jì)的注意事項(xiàng)。 關(guān)鍵詞:TMS320C542 數(shù)據(jù)采集處理 CPLD 近年來,隨著DSP技術(shù)的普及,一大批低價(jià)格、高性能DSP芯片的出現(xiàn),越來越多的電子工程技術(shù)人員開始使用DSP來進(jìn)行系統(tǒng)設(shè)計(jì)。本文以TI公司C5000系列DSP中的TMS320C542為例,構(gòu)成一種數(shù)據(jù)采集處理系統(tǒng)。文中詳細(xì)地分析了系統(tǒng)的結(jié)構(gòu)、設(shè)計(jì)的注意事項(xiàng)、HPI接口的工作原理與連接方法、系統(tǒng)的工作流程以及軟件編制中的注意事項(xiàng)。

1 TMS320C542結(jié)構(gòu)及應(yīng)用

TMS320C542是TI公司C5000系列DSP中的一種,C5000系列共有的特點(diǎn)如下:

·改進(jìn)的哈佛結(jié)構(gòu),包含一條程序總線,三條數(shù)據(jù)總線和四條地址總線

·高度并行的CPU和針對應(yīng)用優(yōu)化的硬件

·針對算法和高級語言優(yōu)化的指令集

·先進(jìn)的IC技術(shù)使其既高性能又低功耗

C5000系列內(nèi)部硬件功能塊如圖1所示。其中,有:40bit算數(shù)邏輯單元(ALU);兩個(gè)40bit累加器A和B;17×17bit乘加單元(40bitMAC,可作64級FIR運(yùn)算而不必考慮溢出;計(jì)算、選擇、存儲(chǔ)單元(CCSU),特別適合Viterbi等算法;40bit桶型移位寄存器;片上雙存取RAM,每機(jī)器周期可存取兩次;片上單存取RAM,可同時(shí)訪問兩塊片上存儲(chǔ)區(qū);片上外圍接口,包括串口、定時(shí)器、PLL、HPI接口等。

TMS320C542自身特點(diǎn)如下:

·25ns單周期定點(diǎn)指令執(zhí)行時(shí)間,5V供電

·10K Words16bit片上雙存取RAM

·64K Words程序,64K Words數(shù)據(jù),64K Words I/O存儲(chǔ)空間

·2K Words HPI接口,可通過此接口方便地與主設(shè)備進(jìn)行信息交換,主設(shè)備也可通過此接口下載DSP程序

·一個(gè)自動(dòng)緩沖的串口和一個(gè)TDM串口,且都可用作標(biāo)準(zhǔn)同步串口

此外,C5000系列DSP可使用JTAG接口進(jìn)行調(diào)試,可完全控制DSP上的所有資源,使用方便可靠。

2 系統(tǒng)結(jié)構(gòu)

由TMS320C542構(gòu)成的數(shù)據(jù)采集處理系統(tǒng)的結(jié)構(gòu)如圖2所示,以DSP為中心,帶有64K程序RAM,64K數(shù)據(jù)RAM,并通過16K×16的FIFO將數(shù)據(jù)送到DA,16K×16的FIFO將AD采集的數(shù)據(jù)送到DSP。與主機(jī)通過HPI接口進(jìn)行數(shù)據(jù)交換。對SRAM、FIFO、AD、DA的控制,DSP所需各種狀態(tài)信息的獲取,以及與主機(jī)的其它一些聯(lián)系,都通過CPLDA和CPLDB來實(shí)現(xiàn)。

C5000系列DSP關(guān)鍵的外部接口信號如下:

·A0~A15,地址總線

·D0~D15,數(shù)據(jù)總線

·/MSTRB,外部存儲(chǔ)器存取閘

·/IOSTRB,I/O存取閘

·R/W,讀寫信號

·/PS,程序空間選擇

·/DS,數(shù)據(jù)空間選擇

·/IS,I/O空間選擇

·READY,數(shù)據(jù)準(zhǔn)備好

此外,還有/HOLD、/HOLDA等,本系統(tǒng)未用。

2.1 存儲(chǔ)器控制

程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器各使用一片64K×16的SRAM,為了使DSP對外存的操作盡量快,其速度等級為12ns。使用/PS作程序存儲(chǔ)器的片選,/DS作數(shù)據(jù)存儲(chǔ)器的片選,而兩片存儲(chǔ)器的讀寫信號如下:

/OE=not(not(/MSTRB) and not(R/W))

/WR=notnot(/MSTRB) and (R/W)

出于高速的需要,采用了Xilinx公司的XC9536生成邏輯(CPLDA)。XC9536管腳至管腳的延遲為5ns,內(nèi)部有36個(gè)宏單元,可用管腳34個(gè),可在線編程,使用起來有很多優(yōu)點(diǎn)。通過這些措施,系統(tǒng)可零等待地存取程序和數(shù)據(jù)RAM,也就是說,存儲(chǔ)器讀可達(dá)40M×16bit,寫可達(dá)20M×16bit。

2.2 FIFO控制

用于DAFIFO的寫和ADFIFO的讀都由CPLDA產(chǎn)生,其邏輯方程為:

/ADFIFOR=not(not(/IOSTRB) and not(R/W) and ADDR0x0)

/DAFIFOW=not(not/IOSTRB) and R/W and ADDR0x0)

其中,ADDR0X0指DSP的A15~A13為零。

DIFIFO由兩片容量16K×9bit、速度10ns的FIFO構(gòu)成,ADFIFO亦如此。由于控制信號的低延遲和FIFO的高速,對FIFO的存取也達(dá)到了零等待,即:使用RPT或RPTZ指令時(shí),可達(dá)20M×16bit/s。

2.3 A/D和D/A控制

A/D轉(zhuǎn)換器負(fù)責(zé)將外部模擬信號變換成DSP可處理的數(shù)字量,是DSP進(jìn)行處理的基礎(chǔ),在系統(tǒng)中具有十分重要的地位,采用的是10M采樣率、12bit分辨率的AD9220,如果需要,可在不改板的情況下?lián)Q成20M或40M采樣率的A/D。而D/A則將DSP生成的數(shù)字信號變成模擬量,完成信號的輸出或?qū)ο到y(tǒng)其他部分的控制,采用了100M速度的AD9762。A/D和D/A的控制信號如下:

·ADCLK和DACLK,分別是A/D轉(zhuǎn)換器和D/A轉(zhuǎn)換器的時(shí)鐘

·ADFIFOW,將A/D轉(zhuǎn)換的數(shù)據(jù)寫入ADFIFO

·DAFIFOR,從DAFIFO讀出數(shù)據(jù)以供D/A轉(zhuǎn)換

·DAFIFOMR和DAFIFORT,用于DAFIFO的清零和重傳

·ADFIFOMR和ADFIFORT,用于ADFIFO的清零和重傳

此六個(gè)信號都由CPLDB產(chǎn)生,CPLDB采用的是Xilinx公司的XC95108,速度為10ns,有108個(gè)宏單元,可在線編程,因而有較高的靈活性。使用24MHz的晶振為CPLDB提供時(shí)鐘,由DSP通過I/O口向CPLDB寫入數(shù)據(jù)以控制ADCLK和DACLK的開關(guān)和頻率,并以I/O寫的方式產(chǎn)生FIFO的清零和重傳信號。

2.4 CPLDA和CPLDB的應(yīng)用

由以上介紹可以看出,整個(gè)系統(tǒng)的邏輯都由CPLDA和CPLDB產(chǎn)生。此外,它還有以下功能:

·FIFO的所有狀態(tài)信號,系統(tǒng)外部送入的各種控制和狀態(tài)信號,都送入了CPLDB,可由DSP通過I/O方式讀取

·DSP的四個(gè)外部中斷、NMI中斷都連至CPLDB,可通過I/O口實(shí)時(shí)控制哪個(gè)信號接入哪個(gè)中斷,具有較大的靈活性

·DSP的通用I/O管腳BIO和XF連至CPLDA,可以查詢方式快速響應(yīng)外部信號

·主機(jī)對DSP的復(fù)位和其它一些特征的控制,對DSP的某些信息的讀取

·DSP對其它一些外圍電路的控制

由于在硬件設(shè)計(jì)時(shí),對實(shí)際應(yīng)用的要求并不能完全了解,因此需要使系統(tǒng)有足夠的冗余和靈活性,使用CPLD可以達(dá)到這一要求。通過將可能需要的各種控制和狀態(tài)信號引入CPLD,并利用CPLD的大容量和現(xiàn)場可編程性,可根據(jù)不同的要求進(jìn)行現(xiàn)場修改,從而使系統(tǒng)設(shè)計(jì)的成功率更大,并且有很大的靈活性。

系統(tǒng)中使用了兩片CPLD,而沒有用一片大容量的CPLD代替,是出于系統(tǒng)性能的考慮。因?yàn)榇鎯?chǔ)器和FIFO的讀寫信號需要較低的延遲才可滿足零等待的要求,而大容量的CPLD延遲大且價(jià)格高,因而用XC9536滿足系統(tǒng)對速度的要求,而用XC95108滿足系統(tǒng)復(fù)雜邏輯對容量的要求。

2.5 HPI接口

DSP可使用HPI(Host Port Interface接口方便地與主設(shè)備或主處理器交換數(shù)據(jù),而幾乎不需增加額外的器件。對40MHz主頻的320C542而言,通信速度最快可達(dá)64Mbps。而且C5000系列DSP通過某種連線方式,可利用HPI接口下載程序,從而使系統(tǒng)具有更大的靈活性。HPI接口的框圖如圖3所示,有HPIA(HPI地址寄存器)、HPID(數(shù)據(jù)寄存器)、HPIC(控制寄存器)三個(gè)16bit寄存器,主設(shè)備就是通過這些專用寄存器與HPI通信。在C542的10K內(nèi)部RAM中,有2K字屬于HPI存儲(chǔ)塊。系統(tǒng)框圖如圖4所示,HD0~HD7是8位數(shù)據(jù)線,直接連到主設(shè)備的數(shù)據(jù)線上;HCS為片選信號;HDS1和HDS2為數(shù)據(jù)鎖存信號,在主設(shè)備的存取周期控制數(shù)據(jù)的傳輸,一般連至主設(shè)備的數(shù)據(jù)選通;HR/W決定當(dāng)前操作是讀還是寫,可根據(jù)主設(shè)備的具體情況決定與何種信號相連;HCNTL0/1用于主設(shè)備選擇存取HPI的哪一個(gè)寄存器和對寄存器的存取類型,連至主設(shè)備的地址線;由于HPI寄存器是16位,而HPI與主設(shè)備僅以8位數(shù)據(jù)線相連,因而用HBIL決定當(dāng)前存取的是一個(gè)字的第一還是第二字節(jié),連至主設(shè)備的地址線。

對HPI進(jìn)行操作,首先要將控制字寫入HPIC,然后將要存取的地址寫入HPIA,最后存取HPID,就可從HPI存儲(chǔ)塊讀數(shù)或?qū)?shù)據(jù)寫入HPI存儲(chǔ)塊。此外,還可選擇HPIA自動(dòng)增加方式,將初始地址寫入HPIA后,可不再操作HPIA,每存取一次數(shù)據(jù),地址都會(huì)自動(dòng)加一,因而大大加快了存取速度。

在本系統(tǒng)中,主設(shè)備是AMD186構(gòu)成的嵌入式系統(tǒng),AMD與HPI的連接如圖5所示。由以上介紹可以看出,使用HPI也可與PC機(jī)的ISA總線方便地連接,用PC機(jī)作為主設(shè)備,通過PC機(jī)向DSP下載程序完成各種功能。

要使用HPI下載程序,只需在DSP復(fù)位時(shí)將程序通過HPI接口寫入HPI存儲(chǔ)塊從0X1000開始的存儲(chǔ)區(qū),并在上電復(fù)位后的一段時(shí)間將HINT管腳的信號引至INT2管腳,DSP在Boot程序中檢測到后,就會(huì)自動(dòng)跳轉(zhuǎn)至0X1000處開始執(zhí)行。

3 系統(tǒng)工作流程及設(shè)計(jì)注意事項(xiàng)

系統(tǒng)通過實(shí)際測試,運(yùn)行速度為40MIPS,程序和數(shù)據(jù)存儲(chǔ)器、所有I/O口都能全速運(yùn)行,工作穩(wěn)定可靠。其工作流程如下:

(1)根據(jù)要求編寫DSP程序并調(diào)試通過。

(2)復(fù)位DSP,并由主設(shè)備通過HPI接口向DSP下載程序。

(3)復(fù)位信號失效,DSP在主設(shè)備的控制下開始工作。

由于系統(tǒng)工作于較高的頻率下(CPU為40MHz,外圍設(shè)備一般為20MHz,最高為40MHz),因而在系統(tǒng)設(shè)計(jì)中,必須注意高頻影響。

首先,系統(tǒng)要盡量簡單,要選擇大容量、表面封裝的元器件,以使元件數(shù)量少、體積小,降低信號反射并有利于布線。

其次,在設(shè)計(jì)PCB板時(shí),要采用四層板,中間兩層作電源和地,并多加一些去耦電容。布線時(shí)不可用90度的拐彎,過孔要盡量少。數(shù)據(jù)和地址最好成組布線,以降低對其它信號的影響。一些關(guān)鍵的控制線,如存儲(chǔ)器讀寫信號和FIFO讀寫信號,最好在其兩邊加地線保護(hù)。特別是FIFO的讀寫信號,由于其對干擾特別敏感,要特別注意。對一些較長的引線,可串接一個(gè)30Ω的小電阻或加終端匹配以減小反射。

4 C5000系列DSP的軟件編程和調(diào)試

C5000系列DSP的編程工具,有C語言和匯編語言兩種,而匯編語言又有兩種指令集,一種叫記憶指令集(Mnemonic Instruction Set,類似8086的匯編語言;一種叫代數(shù)指令集(Algebraic Instruction Set,類似于C語言,使用起來比記憶指令集方便很多。

實(shí)際應(yīng)用中,一般都是C和匯編混合編程,混合編程的方法,可查閱C5000系列DSP的手冊得到。TI公司還提供了一個(gè)運(yùn)行庫(Runtime Lib,用TI公司的JTAG調(diào)試器進(jìn)行調(diào)試時(shí),在DSP程序中調(diào)用運(yùn)行庫的函數(shù),可以打開PC機(jī)上的文件獲取數(shù)據(jù),或?qū)ⅲ模樱械臄?shù)據(jù)傳入PC機(jī)并存入文件,或通過PC機(jī)鍵盤向DSP傳遞信息和發(fā)送命令,總之,可以為調(diào)試帶來極大的方便。

在本系統(tǒng)中,由于既有A/D,又有D/A,構(gòu)成了一個(gè)閉環(huán),自發(fā)自收。可以由D/A生成模擬波形,由A/D實(shí)時(shí)采集,由DSP處理,對算法的設(shè)計(jì)和調(diào)試可帶來很大的幫助。

]]>
采用DSP的聲音采集系統(tǒng)硬件原理及設(shè)計(jì)http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1584&Page=1wangxinxin2010-11-22 9:18:45

聲音信號無處不在,同時(shí)也包含著大量的信息。在日常的生產(chǎn)生活中,我們分析聲音信號,便可以簡化過程,得到我們想要的結(jié)果。隨著 DSP芯片的性價(jià)比不斷攀升,使 DSP得以從軍用領(lǐng)域拓展到民用領(lǐng)域,由于 TI公司 DSP5000系列強(qiáng)大的音頻壓縮能力,語音應(yīng)用得到了較大的發(fā)展。因此,基于 DSP的聲音采集系統(tǒng)的設(shè)計(jì)與開發(fā)具有重要的現(xiàn)實(shí)意義。

1系統(tǒng)總體介紹

該系統(tǒng)主要應(yīng)用于工業(yè)生產(chǎn)中,通過采集的聲音信號與數(shù)據(jù)庫中的數(shù)據(jù)相比較,來檢測生產(chǎn)設(shè)備的運(yùn)行狀態(tài)等。本系統(tǒng)主要分為以下幾個(gè)部分:電平轉(zhuǎn)換電路、 AD轉(zhuǎn)換電路、靜態(tài)存儲(chǔ)與動(dòng)態(tài)存儲(chǔ)、USB接口以及 JTAG部分。

該系統(tǒng)通過采集聲音信號來檢測器械的裂紋、密合度等。將 DSP高速處理數(shù)字信號的能力與 USB高速傳輸數(shù)據(jù)的能力結(jié)合起來,使其服務(wù)于工業(yè)生產(chǎn),是該系統(tǒng)的主要設(shè)計(jì)目的。系統(tǒng)選用了 TI公司的TMS320VC5402作為該塊 PCB的 CPU,并將 PHILIPS公司的 PDIUSBD12作為接口芯片,使用 USB1.1協(xié)議進(jìn)行 DSP與電腦的通信。 2硬件設(shè)計(jì)思想人類可以聽到的聲音信號是范圍在 20-20kHz的模擬信號,所以首先需要傳感器接收該聲音信號,接著需要進(jìn)行轉(zhuǎn)換,使聲音信號由模擬信號變?yōu)閿?shù)字信號。之后通過分析噪聲產(chǎn)生的原因和規(guī)律,利用被測信號的特點(diǎn)和相干性,檢測被覆蓋的聲音信號。在檢測方法上有頻域信號的相干檢測、時(shí)域信號的積累平均、離散信號的計(jì)數(shù)技術(shù)、并行檢測等方法。

由于 5402片內(nèi)的 ROM和 DRAM資源有限,所以該系統(tǒng)需要外部存儲(chǔ)設(shè)備,本設(shè)計(jì)選擇一片 SRAM作為靜態(tài)存儲(chǔ)器,一片 FLASH作為動(dòng)態(tài)存儲(chǔ)設(shè)備。5402的 CPU電壓為 3.3伏,外設(shè)電壓為 1.8伏,所以該系統(tǒng)還需要一個(gè)供電的電源模塊,可以將一般的輸入電壓 5伏轉(zhuǎn)化為 3.3與 1.8伏的電壓為 DSP供電,該 5V電壓還可為除 DSP以外的其他設(shè)備供電。

DSP與計(jì)算機(jī)的通信,通常采用 USB、RS232、PCI或 ISA卡等方式。RS232的主要缺點(diǎn)是:速度慢,不支持熱插拔; PCI與 ISA卡的主要缺點(diǎn)是:受計(jì)算機(jī)卡槽數(shù)量、地址等資源的限制,可擴(kuò)展性差。而利用 USB通訊的主要優(yōu)點(diǎn),便是傳輸速度快,支持熱插拔,占用資源少,可擴(kuò)展性強(qiáng)。該設(shè)計(jì)利用 USB接口芯片直接與 DSP相連,通過 DSP的程序?qū)崿F(xiàn) USB的協(xié)議,最大的優(yōu)點(diǎn)就是可以保障數(shù)據(jù)交換的速度。綜上,在本系統(tǒng)中,幾個(gè)基本環(huán)節(jié)就是:電平轉(zhuǎn)換電路:將 5V電源轉(zhuǎn)換為 3.3V與 1.8V,分別為 DSP芯片的片上外設(shè)以及 CPU供電; AD信號轉(zhuǎn)換電路:將傳感器接收到的模擬信號轉(zhuǎn)換為數(shù)字信號,供 DSP進(jìn)行處理;信號的存儲(chǔ)電路:儲(chǔ)存 DSP處理的信號;信號傳輸電路:將經(jīng)過處理的信號上傳至電腦;仿真電路:用于測試 DSP芯片。整體架構(gòu)如圖 1所示。

3模塊介紹

3.1 DSP

1、 DSP技術(shù)簡介

數(shù)字信號處理器,簡稱 DSP,是專業(yè)進(jìn)行信號處理的芯片,目前在通信、自控領(lǐng)域具有廣泛的應(yīng)用。在信息資源大大豐富的今天,數(shù)字化程度已經(jīng)越來越高。而 DSP作為這一技術(shù)的重要組成部分,對我們的生活已經(jīng)產(chǎn)生了越來越深刻的影響。自從 1978年 AMI公司發(fā)布了“單處理設(shè)備”開始,從基于 Harvard結(jié)構(gòu)但使用不同數(shù)據(jù)與程序總線的第一代通用DSP,到進(jìn)行了改進(jìn)的第二代增強(qiáng)型通用DSP,再到包含了 GPP結(jié)構(gòu)的第三代DSP,今天的DSP的發(fā)展趨勢已經(jīng)趨向于混合結(jié)構(gòu),DSP產(chǎn)品與計(jì)算機(jī)之間的差別已經(jīng)越來越模糊。在數(shù)字化時(shí)代背景下,DSP已成為各種電子產(chǎn)品等領(lǐng)域的基礎(chǔ)器件,而其在電機(jī)控制、聲音識(shí)別與圖像識(shí)別領(lǐng)域中的應(yīng)用則是更為廣泛。

2、聲音采集系統(tǒng)中采用的 DSP

本系統(tǒng)中 DSP采用的是 TI公司的 TMS320VC5402(以下簡稱 5402),其操作速率達(dá) 100 MIPS,由于其具有改進(jìn)的哈佛結(jié)構(gòu),所以它可以在一個(gè)指令周期內(nèi)完成 32x32bit的乘法,亦可以迅速完成數(shù)學(xué)運(yùn)算最常用的乘加運(yùn)算。它有 4條地址總線、3條 16位數(shù)據(jù)存儲(chǔ)器總線和 1條程序存儲(chǔ)器總線, 40位算術(shù)邏輯單元 (AIU),一個(gè) 17×17乘法器和一個(gè) 40位專用加法器。8個(gè)輔助寄存器及一個(gè)軟件棧,允許使用最先進(jìn)的定點(diǎn) DSP的 C語言編譯器,內(nèi)置可編程等待狀態(tài)發(fā)生器、鎖相環(huán)(PLL)時(shí)鐘產(chǎn)生器、兩個(gè)多通道緩沖串行口、一個(gè) 8位并行與外部處理器通信的 HPI口、2個(gè) 16位定時(shí)器以及 6通道 DMA控制器,特別適合電池供電設(shè)備.

]]>
code composer studio5000軟件應(yīng)用http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1583&Page=1wangxinxin2010-11-22 9:12:51
CCS(Code Composer Studio)代碼調(diào)試器是一種集成開發(fā)環(huán)境(IDE,Integrated Development  Environment)。 CCS是一種針對標(biāo)準(zhǔn)TMS320調(diào)試器接口的交互式方法。CCS目前有CCS1.1 CCS1.2 CCS2.0等三個(gè)不同的版本,每個(gè)版本應(yīng)有CC2000(針對C2XX)
CCS5000(針對C54XX)CCS6000(針對C6X)等三個(gè)不同的型號。我們所使用的是CC2000、1.2的版本。這里所說明的CCS的一切問題都是基于CC2000所討論,對其他版本的使用其差別不是很大,請參考其他有關(guān)資料

1.CC2000的特點(diǎn)

CC2000具有以下特性:

lTI編譯器的完全集成的環(huán)境
CC2000目標(biāo)管理系統(tǒng),內(nèi)建編輯器,所有的調(diào)試和分析能力集成在一個(gè)Windows環(huán)境中。
l對C和DSP匯編文件的目標(biāo)管理
目標(biāo)編輯器保持對所有文件及相關(guān)內(nèi)容的跟蹤。它只對最近一次編譯中改變過的文件重新編譯,以節(jié)省編譯時(shí)間。  
l高集成的編輯器調(diào)整C和DSP匯編代碼  
CC2000的內(nèi)建編輯器支持C和匯編文件的動(dòng)態(tài)語法加亮顯示,使用戶能很容易地閱讀代碼和當(dāng)場發(fā)現(xiàn)語法錯(cuò)誤。                           
l編輯和調(diào)試時(shí)的后臺(tái)編輯   
用戶在使用編譯器和匯編器時(shí)沒有必要退出系統(tǒng)到DOS環(huán)境中,因?yàn)镃C2000會(huì)自動(dòng)將這些工具裝載在它的環(huán)境中。在其窗口中,錯(cuò)誤會(huì)加亮顯示,只要雙擊錯(cuò)誤就可以直接到達(dá)出錯(cuò)處。
l在含有浮點(diǎn)并行調(diào)試管理器(PDM)的原有的MS窗口下支持多處理器,CC2000在 Windows95和Windows-me中支持多處理器。PDM允許將命令傳播給所有的或所選擇的處理器。
l在任何算法點(diǎn)觀察信號的圖形窗口探針
圖形顯示窗口使用戶能夠觀察時(shí)域或者頻域的信號。對于頻域圖,F(xiàn)FT在主機(jī)內(nèi)執(zhí)行,這樣就可以觀察所感興趣的部分而無須改變它的DSP代碼。圖形顯示也可以同探針連接,當(dāng)前顯示窗口被更新時(shí),探針被指定,這樣當(dāng)代碼執(zhí)行到達(dá)該點(diǎn)時(shí),就可以迅速地觀察到信號。                           
l文件探針在算法處通過文件提取或加入信號或數(shù)據(jù)               
CC2000允許用戶從PC機(jī)讀或?qū)懶盘柫鳌6皇菍?shí)時(shí)的讀信號,這就可以用已知的例子來仿真算法。
l圖形分析                                                      
CC2000的圖形分析能力在其環(huán)境中是集成的。
l在后臺(tái)(系統(tǒng)命令)執(zhí)行用戶的DOS程序                             
用戶可以執(zhí)行CC2000中的DOS程序,并將其輸出以流水方式送到CC2000的輸出窗口。且允許用戶將應(yīng)用集成到CC2000。
l技術(shù)狀態(tài)觀察窗口                                             
CC2000的可視窗口允許用戶鍵入C表達(dá)式及相關(guān)變量。結(jié)構(gòu)、數(shù)組、指針都能很簡單地遞歸擴(kuò)展和減少,以便進(jìn)入復(fù)雜結(jié)構(gòu)。
l代數(shù)分解窗口               
允許用戶選擇查看寫成代數(shù)表達(dá)式的C格式,從而容易讀懂操作碼。   
l目標(biāo)DSP上的幫助
    DSP結(jié)構(gòu)和寄存器上的在線幫助可以使用戶不必查看技術(shù)手冊
l用戶擴(kuò)展  
擴(kuò)展語言(GEL)使得用戶可以將自己的菜單項(xiàng)加到CC2000的菜單欄中。
l完全的開發(fā)環(huán)境
CC2000將TI的編譯器、匯編器、連接工具都集成到它的開發(fā)環(huán)境中。用戶可以從菜單欄中選用TI的工具,并可以看到直接流水輸出到窗口的編譯結(jié)果。同時(shí),出錯(cuò)信息加亮顯示,雙擊出錯(cuò)信息可以打開源文件,光標(biāo)停在出錯(cuò)處。基于DOS的TI的工具是多任務(wù)的。而在Windows環(huán)境中,用戶可以很方便的同時(shí)編輯、調(diào)試、編譯源程序。代碼編譯器可以跟蹤一個(gè)項(xiàng)目中所有的文件及相關(guān)內(nèi)容。用戶可以選擇編譯單個(gè)的文件、或?qū)⑺形募ǖ揭粋(gè)項(xiàng)目中,或是逐步建項(xiàng)目。在編譯器、匯編器、和連接器選項(xiàng)中有容易使用的對話框。      
CC2000的可視化窗口使用戶能夠容易理解復(fù)雜的結(jié)構(gòu)。只要將光標(biāo)放在相關(guān)變量處并按ENTER鍵,諸如數(shù)組、結(jié)構(gòu)、指針的變量就可以遞歸的增加或減少。另外,添加到可視窗口的變量也可以通過雙擊該變量來編輯。C表達(dá)式和GEL函數(shù)也可以添加到可視窗口。將GEL函數(shù)添加到可視窗口,就可以在每個(gè)斷點(diǎn)處執(zhí)行。由GEL函數(shù),可以執(zhí)行更復(fù)雜的任務(wù),將結(jié)果輸出到窗口。   
探針允許用戶觀察信號或在算法上加入或提取數(shù)據(jù)。它可以連接到結(jié)構(gòu)點(diǎn)或存儲(chǔ)空間。到達(dá)算法里的指定點(diǎn)時(shí),已連接的信號探針就會(huì)從目標(biāo)DSP中提取出數(shù)據(jù)并顯示。如果將文件同指定點(diǎn)相連,數(shù)據(jù)就會(huì)在指定的存儲(chǔ)空間與文件間傳輸。操作一結(jié)束,執(zhí)行就開始。這種特性使得開發(fā)者能夠很快地觀察到目標(biāo)內(nèi)存并通過文件在特定的算法點(diǎn)增加或提取數(shù)據(jù)。利用動(dòng)畫特性,開發(fā)者可以通過使用PC機(jī)磁盤中的實(shí)信號細(xì)致地觀察和執(zhí)行信號,而不用改變源代碼。]]>
TMS320C5000性能介紹http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1582&Page=1wangxinxin2010-11-22 9:02:08           
                           圖1 TMS320C5000性能發(fā)展?fàn)顩r及應(yīng)用領(lǐng)域

       TMS320系列的同一代芯片具有相同的CPU結(jié)構(gòu),但根據(jù)市場的不同需要,形成新的存儲(chǔ)器與外設(shè)的不同組合,產(chǎn)生了多種派生器件。


       TMS320C54x關(guān)鍵特性

       圖2是C54x功能結(jié)構(gòu)圖,它的主要性能如下:

               

                                    圖2 TMS320C54x功能結(jié)構(gòu)框圖

       ⒈ CPU

       先進(jìn)的多總線結(jié)構(gòu):一組程序總線(PAB、PB),三組數(shù)據(jù)總線(CAB、CB,DAB、DB,EAB、EB)

       40位的數(shù)學(xué)邏輯單元(ALU):包括40位的桶形移位寄存器和兩個(gè)獨(dú)立的40位累加器

       17 17位并行乘法器和40位專用加法器,單周期完成乘法/累加(MAC)

       適于Viterbi運(yùn)算的比較、選擇、存儲(chǔ)單元(CSSU)

       指數(shù)編碼器,可在單周期內(nèi)計(jì)算(40位)累加器中數(shù)值的指數(shù)

       兩個(gè)地址產(chǎn)生器,包括八個(gè)輔助寄存器和兩個(gè)的算術(shù)單元

       ⒉ 存儲(chǔ)器

       可尋址存儲(chǔ)空間達(dá)192K字(程序、數(shù)據(jù)及I/O各64 64bit),C548還可擴(kuò)展程序存儲(chǔ)器(8兆字)

       典型C5400芯片存儲(chǔ)器

       ⒊ 片內(nèi)外設(shè)

       軟件可編程等待狀態(tài)產(chǎn)生器

       可編程的塊交換

       片內(nèi)鎖相環(huán)時(shí)鐘產(chǎn)生器

       禁止外部總線的控制機(jī)制

       ⒋ 指令集

       重復(fù)單條指令與重復(fù)指令塊

    &nbs

p;  存儲(chǔ)器塊移動(dòng)指令

       32位數(shù)運(yùn)算指令

       可同時(shí)讀取2或3個(gè)操作數(shù)的指令

       具有并行保存和并行加載的算術(shù)指令

       條件保存指令

       ⒌ 功耗控制

       IDLE1、IDLE2和IDLE3指令可控制其進(jìn)入降功耗模式

       可控制是否輸出CLKOUT信號

       ⒍ IEEE標(biāo)準(zhǔn)的1149.1邊界掃描邏輯接口


       TMS320C54x結(jié)構(gòu)概述

       ''C54x由中央處理器CPU、存儲(chǔ)器和片內(nèi)外設(shè)組成,采用哈佛結(jié)構(gòu),有獨(dú)立的程序空間、數(shù)據(jù)空間和I/O空間。圖3是''C54x的內(nèi)部硬件框圖。

       對所有的''C54x器件來說,圖中下半部所示的中央處理單元(CPU)是通用的。

       總線結(jié)構(gòu)

       一組程序總線(PAB、PB)和三組數(shù)據(jù)總線CAB、CB,DAB、DB,EAB、EB)將內(nèi)部各部件聯(lián)系起來。

           

                                   圖3 TMS320C54x內(nèi)部硬件框圖

       PB- 程序總線,傳送程序代碼或存在程序空間的數(shù)據(jù);

       CB、DB、EB- 數(shù)據(jù)總線,連接CPU、數(shù)據(jù)地址產(chǎn)生邏輯、程序地址產(chǎn)生邏輯、片內(nèi)外設(shè)及存儲(chǔ)器等各部件;

       CB和DB- 傳送從存儲(chǔ)器讀出的數(shù)據(jù),即“讀”操作使用的數(shù)據(jù)總線;

       EB-傳送向存儲(chǔ)器寫入的數(shù)據(jù),即"寫"操作使用的數(shù)據(jù)總線;

       PAB、CAB、DAB、EAB- 各對應(yīng)的地址總線;

            

                                          圖4 ALU功能框圖

       中央處理單元(CPU)

       ALU:算術(shù)邏輯運(yùn)算單元

       主要由40位ALU和兩個(gè)40位累加器(ACCA和ACCB)組成,如圖4所示。

&

nbsp;      ALU和兩個(gè)累加器用來完成40位二進(jìn)制補(bǔ)碼的算術(shù)運(yùn)算,也能完成布爾運(yùn)算。當(dāng)狀態(tài)寄存儲(chǔ)器ST1的C16位置1時(shí),可做兩個(gè)16位ALU,同時(shí)完成兩個(gè)16位運(yùn)算。

       輸入:

       16位立即數(shù);

       來自數(shù)據(jù)存儲(chǔ)器的16位數(shù);

       來自暫存器T的16位數(shù);

       來自數(shù)據(jù)存儲(chǔ)器讀出的兩個(gè)16位數(shù);

       來自數(shù)據(jù)存儲(chǔ)器讀出的一個(gè)32位數(shù);

       來自累加器(A和B)的40位數(shù);

                     

                                圖5 桶形移位器功能框圖

       輸出:ALU的40位輸出被送往累加器A或B。

 

      

                                      圖6 乘/加模塊功能方框圖

       桶形移位器:將輸入數(shù)據(jù)左移0~31位或右移0~16位,經(jīng)常用作數(shù)字定標(biāo)、位提取、擴(kuò)展算術(shù)和溢出保護(hù)等操作。 輸入40位:來自累加器或經(jīng)DB、CB的 數(shù)據(jù)存儲(chǔ)器;

       輸出40位:連到ALU或經(jīng)EB連到數(shù)據(jù)存儲(chǔ)器;

       所移位數(shù)由指令中移位字段、ST1的ASM字段或T寄存器指定移位位數(shù)決定。

  

                              圖7 比較、選擇與保存單元(CSSU)功能框圖

       乘/加模塊:由乘法器、加法器、輸入數(shù)據(jù)的符號控制邏輯、小數(shù)控制邏輯、零檢測、舍入、溢出/飽和邏輯和16位暫存寄存器T等組成。乘法器和ALU在一個(gè)指令周期內(nèi)共同完成(17 17補(bǔ)碼)乘/加(40位)運(yùn)算,且可并行地作ALU運(yùn)算,這些功能可用來做Euclidean距離及LMS濾波等復(fù)雜運(yùn)算。乘/加模塊功能方框圖如圖6所示。

       比較、選擇與保存單元(CSSU):可以完成累加器的高位字和低位字之間的最大值比較(CMPS指令)。另一功能是利用優(yōu)化的片內(nèi)硬件資源完成數(shù)據(jù)通信、模式識(shí)別等領(lǐng)域中經(jīng)常用到的Viterbi蝶形運(yùn)算。

       &

nbsp;            

                                                圖8 指數(shù)編碼器

       指數(shù)編碼器:用于支持單周期指令EXP的專用硬件,如圖8所示。

       累加器中數(shù)值的指數(shù)值,以二進(jìn)制補(bǔ)碼形式(-8~31)存放于暫存器T中;

       CPU狀態(tài)和控制寄存器:

       ''C54x共有3個(gè)16位狀態(tài)和控制寄存器(PMST、ST0、ST1)它們都是存儲(chǔ)器映象寄存器,可以方便地寫入數(shù)據(jù)、或由數(shù)據(jù)存儲(chǔ)器對它們加載。

       內(nèi)部存儲(chǔ)器

       ·''C54x的存儲(chǔ)器分為三個(gè)可獨(dú)立選擇的空間:程序空間、數(shù)據(jù)空間和I/O空間;

       ·''C54x的片內(nèi)存儲(chǔ)器包括ROM和RAM,其中RAM又可分為SARAM和DARAM:SARAM為單尋址寄存儲(chǔ)器,DARAM為雙尋址寄存儲(chǔ)器(一周期內(nèi)可以訪問兩次)。

       ROM一般配置成程序存儲(chǔ)空間,用于存放要執(zhí)行的指令、系數(shù)表等固定操作數(shù)。也可以部分地安排到數(shù)據(jù)存儲(chǔ)空間,由PMST的狀態(tài)位 和DROM決定;RAM 一般安排到數(shù)據(jù)存儲(chǔ)空間,存放執(zhí)行指令所要用的數(shù)據(jù)。但也可以安排到程序空間,由PMST的狀態(tài)位OVLY決定。不同''C54x系列內(nèi)部存儲(chǔ)器配置各不相同。

       ''C54x的尋址方式

       TMS320C54x的指令可能含有1個(gè)存儲(chǔ)器操作數(shù)(指令說明中用Smem表示),也可能有2個(gè)存儲(chǔ)器操作數(shù)(指令說明中用Xmem、Ymem表示),分別稱為單存儲(chǔ)器操作數(shù)和雙存儲(chǔ)器操作數(shù)。單存儲(chǔ)器操作數(shù)有7種尋址方式,它們是:

       立即尋址: 操作數(shù)(常數(shù))含在指令中;

       絕對尋址: 指令中含有操作數(shù)的16位地址;

       累加器尋址: 操作數(shù)地址在累加器中(A);

       直接尋址: 指令中含有操作數(shù)地址的低7 位;

       間接尋址: 操作數(shù)的地址在輔助寄存器中,支持倒位序?qū)ぶ贰⒀h(huán)尋址等功能;

       存儲(chǔ)器映像的寄存器尋址:

       訪問存儲(chǔ)器映像寄存器,

       又不影響DP或SP;

       堆棧尋址: 訪問堆棧;

       雙存儲(chǔ)器操作數(shù)支持一些特殊指令:

       如MAC、FIR等復(fù)雜指令。

       ''C54x的六級指令流水線

 &nb

sp;     ''C54x CPU的指令流水線有六級,每個(gè)周期有六條指令在工作,它們處于整個(gè)執(zhí)行過程的不同階段,如圖9所示。

              

                          圖9 流水線不同工作階段操作內(nèi)容

       流水線的工作全部為單字指令連續(xù)執(zhí)行時(shí)(理想情況)如圖10 所示。

            

                                         圖10 流水線正常工作時(shí)做業(yè)情況

]]>
一個(gè)DSP高手的成長之路http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1581&Page=1wangxinxin2010-11-22 9:01:20一. 我是已經(jīng)從事DSP開發(fā)有幾年了,看到許多朋友對DSP的開發(fā)非常感興取,我結(jié)合這幾年對DSP的開發(fā)寫一寫自己的感受,一家之言,歡迎指教。我上研究生的第一天起根據(jù)老板的安排就開始接觸DSP,那時(shí)DSP開發(fā)在國內(nèi)高校剛剛開始,一臺(tái)DSP開發(fā)器接近一萬還是ISA總線的,我從206開始240、2407A都作過產(chǎn)品,對5402、2812、5471在產(chǎn)品方案規(guī)劃制定和論證時(shí)也研究過。由于方向所限對6X、8X系列沒有接觸。 @r ^9_5^,  
我發(fā)現(xiàn)在國內(nèi)無論在公司或高校許多地方為了加快開發(fā)周期往往把一個(gè)產(chǎn)品開發(fā)分為硬件和軟件兩個(gè)相對獨(dú)立部分,由不同的人完成。這在具有一定技術(shù)和管理基礎(chǔ)的公司,由總設(shè)計(jì)師統(tǒng)一規(guī)劃協(xié)調(diào),分任務(wù)并行完成的情況下是可行的,也是符合現(xiàn)代產(chǎn)品開發(fā)規(guī)律的。但是在高校人員的流動(dòng)很大,研究生的有效科研時(shí)間很短、基礎(chǔ)差(許多研究生起步時(shí)對電熔、電阻、三極管的分類和選型都很困難,我也是這樣過來的)更不用說系統(tǒng)規(guī)劃設(shè)計(jì)了,況且許多老板自己也不太懂,師兄有自己的任務(wù),他們搞明白時(shí)也畢業(yè)了。在許多高校做DSP就是找一個(gè)算法加到自己的主程序里,在板子上跑一下,基本達(dá)到效果就可以了,至于可靠性是次要的,產(chǎn)業(yè)化無從談起,這已經(jīng)算不錯(cuò)的了。 Mlaql6q  
其實(shí)我覺得一個(gè)系統(tǒng)的完成,系統(tǒng)的規(guī)劃是最重要的,在規(guī)劃時(shí)對硬件設(shè)計(jì)的知識(shí)和認(rèn)識(shí)是決定性的,它可以讓你知道什么是可行的,什么是不可行的,當(dāng)你同時(shí)具有軟件設(shè)計(jì)能力時(shí),就可以合理的分配系統(tǒng)功能,完成使用VHDL進(jìn)行系統(tǒng)行為描述-—系統(tǒng)功能劃分—— 系統(tǒng)子結(jié)構(gòu)設(shè)計(jì)這樣的自頂向下的設(shè)計(jì)規(guī)劃流程,成為系統(tǒng)設(shè)計(jì)專家、項(xiàng)目經(jīng)理,否則只是硬件工程師、軟件工程師。無論作51、196、還是DSP都是這樣。 f27)<}>W6  
下面分別談?wù)勎覍τ布蛙浖O(shè)計(jì)的感受 OQ>r&{^aYQ  
硬件設(shè)計(jì)是系統(tǒng)設(shè)計(jì)的關(guān)鍵,國內(nèi)和國外產(chǎn)品的差距往往是硬件設(shè)計(jì)水平高低決定的,任何軟件設(shè)計(jì)思想沒有可靠的物理載體都是空中樓閣,紙上談兵。學(xué)校的研究生很多都想避開硬件設(shè)計(jì),對于一個(gè)全新的設(shè)計(jì)與其說不屑不如說不敢。試想一下燒幾個(gè)片子的壓力要比跑飛幾段程序的壓力大的多,尤其是功率器件,一旦燒掉,弄不好火光沖天,人的自信都沒了。況且改一次板周期長,經(jīng)費(fèi)高,還不知行不行。其實(shí)在國外實(shí)力一般的公司也是盡量避免硬件的更新設(shè)計(jì),產(chǎn)品一旦定型往往通過軟件升級,這是公司的發(fā)展策略,對個(gè)人而言物以希為貴,培養(yǎng)一個(gè)硬件設(shè)計(jì)師往往要比軟件設(shè)計(jì)師時(shí)間長花費(fèi)多。在設(shè)計(jì)dsp硬件時(shí),開始設(shè)計(jì)最小系統(tǒng)板,系統(tǒng)按功能分板設(shè)計(jì)調(diào)試,注意分板電路的穩(wěn)定性可能不如整板電路,要多加入抗干擾環(huán)節(jié),分板間的引線包括電源線地線要短,盡量在10公分以內(nèi),實(shí)在不行加入光耦隔離、采用隔離電源。切記電源線、地線的干擾遠(yuǎn)比信號干擾對系統(tǒng)的危害大得多,又常常被人忽視。電路板工作正常的先決條件就是電源正常!當(dāng)分板電路正常后再更居情況設(shè)計(jì)整板電路。在調(diào)試時(shí)發(fā)現(xiàn)的問題一定要找到原因解決,即使是飛線,割線,不要寄希望于下一板改了再看,除非原理性錯(cuò)誤。每一個(gè)功能環(huán)節(jié)多準(zhǔn)備幾套方案。DSP的選型要根據(jù)系統(tǒng)功能而定,2000是一個(gè)功能比較全的控制器,但運(yùn)算性能相對低,但目前大部分控制類、家電類包括中低層次的工業(yè)總線通信產(chǎn)品足夠了,281X不錯(cuò)但太貴,而且開發(fā)技術(shù)不成熟。54XX更像一個(gè)協(xié)處理器,其實(shí)高端產(chǎn)品5471就很好,功能完*,但BGA封裝對產(chǎn)品的開發(fā)有一定難度。如果沒有從事過嵌入式系統(tǒng)開發(fā)的朋友其實(shí)可以從51看起,許多思想是共通的,51很經(jīng)典沒有哪一款微處理器像51那樣使用持久和普遍。在硬件設(shè)計(jì)時(shí)更多的精力放在外圍電路設(shè)計(jì)上,外圍電路設(shè)計(jì)的靈活性要比DSP本身高得多,難度大得多。建議多考慮CPLD。 O-aKyn  
軟件設(shè)計(jì)上,著眼點(diǎn)不要僅局限于某種算法和控制策略,而是軟件系統(tǒng)框架的制定,即操作系統(tǒng)的選擇和實(shí)現(xiàn),算法和控制策略只是其中技巧性很強(qiáng)的子程序和子程序間參數(shù)相互關(guān)系,建議設(shè)計(jì)軟件時(shí)能具有操作系統(tǒng)、數(shù)據(jù)結(jié)構(gòu)和編譯原理方面的知識(shí),特別是使用C。對DSP的內(nèi)部硬件結(jié)構(gòu)一定要掌握,特別是中斷結(jié)構(gòu)和流程、流水線操作,不然飛都不知道怎么飛的。 l(vB6*;L  
在語言選擇上我當(dāng)時(shí)是這么給自己規(guī)定的先編20個(gè)左右的匯編程序,每個(gè)代碼量超過4K,使用語句范圍覆蓋全部語句的60%-70%,在此基礎(chǔ)上使用C。現(xiàn)在發(fā)現(xiàn)用C構(gòu)建程序的主體框架(操作系統(tǒng))比較快而其不容易出錯(cuò),(我現(xiàn)在正在用ASM根據(jù)UCOSII的思想重寫自己的操作系統(tǒng))但對系統(tǒng)實(shí)時(shí)性影響比較大的運(yùn)算算法一般采用MATLAB——C——ASM的辦法仿真調(diào)試優(yōu)化,這里的優(yōu)化不單單是利用優(yōu)化器優(yōu)化,而是根據(jù)數(shù)據(jù)的特點(diǎn)改變運(yùn)算方法,以除法為例C里的/號其實(shí)掩蓋了許多技巧,當(dāng)除數(shù)為常數(shù)時(shí)就可以放大倒數(shù)移位相乘移位的辦法進(jìn)行,精度高速度快。這些辦法只有掌握了ASM語言并用ASM語言思考才會(huì)熟練應(yīng)用。另外我想告訴一些作算法特別是控制算法的朋友,千萬不要隨意評判一個(gè)算法的優(yōu)劣,在程序中程序和代碼優(yōu)化的程度往往影響了控制效果好壞,而不是算法本身的思想。其實(shí)在實(shí)際中往往PID甚至PI、PD就夠了,神經(jīng)元、模糊、小波適用于研究和寫論文,模糊在實(shí)際中用的多一點(diǎn),主要是小日本用的比較成熟,我再恨日本人,這點(diǎn)也服氣,小日本就是滑,許多物理現(xiàn)象搞不透,就用這法,還管用,題外話。 .0@F[d"  
最后我想說的是,當(dāng)我們面對市場要求時(shí),產(chǎn)品往往考慮的是可靠性、性能、價(jià)格而不是你用的什么芯片,在滿足性能的基礎(chǔ)上結(jié)構(gòu)越簡單就越可靠,芯片越通用價(jià)格就越低,能用51就不用196,能用2407就不用2812,除非把芯片本身作買點(diǎn)利用高成本贏取高利潤。無論2000還是5000、6000系列都有市場前景,關(guān)鍵是要做深做透 Dtfqn  
獲取知識(shí)的方法、處理項(xiàng)目的能力是相通的,具體的說就是不要把目光盯在做硬件還是做軟件上,用ASM還是C,要勤動(dòng)手打好基礎(chǔ),提高自己對系統(tǒng)總體設(shè)計(jì)的能力,從系統(tǒng)的眼光看問題。為什么都是做DSP的有的畢業(yè)拿3000,有的5000、8000,除了運(yùn)氣和關(guān)系外,重要的是你對事物的認(rèn)識(shí)深度和高度。我一直都記住這句話:有前途的人做什么都有前途,沒前途的人做什么都沒前途。 pW=ia/  
二. 與其說是鉆在里面,畢業(yè)設(shè)計(jì)是搞240,在老師的壓力做出了一點(diǎn)東西,這期間主要是對DSP的各種基礎(chǔ)知識(shí)的熟悉與理解,對DSP的真正深入是在公司工作以后。當(dāng)初進(jìn)公司,因?yàn)檎幸粋(gè)項(xiàng)目需要用5410要我接手。說實(shí)話,在學(xué)校期間我5000的書都沒有看過一眼,可沒辦法,只能靠自己了。不過好的是我2000DSP的基礎(chǔ)很好。接過項(xiàng)目后,我第一個(gè)星期就全部看的是5000的指令,DSP的結(jié)構(gòu)倒沒怎么看,因?yàn)轫?xiàng)目硬件已成型,主要是算法。這樣,花了一個(gè)星期熟悉指令與項(xiàng)目相關(guān)的程序,第二個(gè)星期也就開始編程了。半個(gè)月以后我對5410也就用很熟了的,當(dāng)然主要還是講在算法方面。這個(gè)項(xiàng)目太概做了四個(gè)月吧,系統(tǒng)程序是我編寫的,主要有如64位加減乘除乘方開方、及時(shí)域方面的一些算法。現(xiàn)在又做一個(gè)控制系統(tǒng),用2407開發(fā)的,硬件主要有直交變頻,并把2407的所有外設(shè)資源全部用到了。現(xiàn)在我可以這樣自夸一句吧:TI的2000系列與5000系列的我都熟悉,要我去以此做個(gè)系統(tǒng),沒問題。上面是把我搞DSP的經(jīng)歷簡單說了一下的吧,在這里我想對正在學(xué)及想學(xué)DSP的難兄們說一句的是,DSP并不是很難。當(dāng)然,這個(gè)前提是你的基礎(chǔ)要好,我單片機(jī),接口都還行,當(dāng)初就是從單片機(jī)改成DSP的。有了單片機(jī)的基礎(chǔ)再去學(xué)2000第列的DSP(下面的DSP單指2000系列,另有說明為止),你就可以把DSP看成一個(gè)super microcontroller了。相比之下,DSP除了比單片機(jī)多了更豐的外設(shè)接口(SPI,SCI、CAN、PWM、CAP、QEP等等),他就是一塊單片機(jī),只不過在單片機(jī)來說你要另加芯片的工作,DSP全部把它做在一塊芯片去了,我現(xiàn)在看DSP也真就這么簡單。前面有人提到DSP主要是做算法,這句話有一定的片面性: TI有很多系列的DSP,現(xiàn)在主流的DSP主要為2000系列、3000系列、4000系列、5000系列、6000系列。除了2000與5000系列是定點(diǎn)DSP外,其余的均為浮點(diǎn)系列。 TI的2000系列主要長處是在用于控制系統(tǒng),因?yàn)樗馁Y源非常豐富,前面提到,在控制系統(tǒng)中用到的一些外設(shè)2000系列均在片內(nèi)集成了。 TI的5000系列主要長處是用于數(shù)字信號的算法處理,這里所講算法處理主要是指在數(shù)字信號處理時(shí)的一些算法,如FIR、IIR、FFT等等。5000系列的DSP的速度比2000快,2407最快只能到40M,2800系列除外,5410的DSP可以達(dá)到160M,如現(xiàn)在我們主要用來做數(shù)字信號方面的處理以及簡單的靜態(tài)圖像處理等這樣一些在資源需要處于中等的一些算法。 TI的6000系列主要是用在實(shí)時(shí)圖像處理,這個(gè)就更則重于算法處理。一般的硬件很少自制,我們是用TI的DSK板再加上自主板相結(jié)合。 ]\*.i[H  
三. 使用C/C++語言編寫基于DSP程序的注意事項(xiàng) 1、不影響執(zhí)行速度的情況下,可以使用c或c/c++語言提供的函數(shù)庫,也可以自己設(shè)計(jì)函數(shù),這樣更易于使用“裁縫師”優(yōu)化處理,例如:進(jìn)行絕對值運(yùn)算,可以調(diào)用fabs()或abs()函數(shù),也可以使用if...else...判斷語句來替代。 2、 要非常謹(jǐn)慎地使用局部變量,根據(jù)自己項(xiàng)目開發(fā)的需要,應(yīng)盡可能多地使用全局變量和靜態(tài)變量。 3、一定要非常重視中斷向量表的問題,很多朋友對中斷向量表的調(diào)用方式不清楚。其實(shí)中斷向量表中的中斷名是任意取定的,dsp是不認(rèn)名字的,它只認(rèn)地址!!中斷向量表要重新定位。這一點(diǎn)很重要。 4、要明確dsp軟件開發(fā)的第一步是對可用存儲(chǔ)空間的分析,存儲(chǔ)空間分配好壞關(guān)系到一個(gè)dsp程序員的水平。對于dsp,我們有兩種名稱的存儲(chǔ)空間,一種是物理空間,另一種是映射空間。物理空間是dsp上可以存放數(shù)據(jù)和程序的實(shí)際空間(包括外部存儲(chǔ)器),我們的數(shù)據(jù)和程序最終放到物理空間上,但我們并不能直接訪問它們。我們要訪問物理空間,必須借助于映射空間才行!!但是映射空間本身是個(gè)“虛”空間,是個(gè)不存在的空間。所以,往往是映射空間遠(yuǎn)遠(yuǎn)大于實(shí)際的物理空間,有些映射空間,如io映射空間,它本身還代表了一種接口。只有那些物理空間映射到的映射空間才是我們真正可訪問(讀或?qū)懀┑拇鎯?chǔ)空間。 5、 盡可能地減少除法運(yùn)算,而盡可能多地使用乘法和加法運(yùn)算代替。 6、如果ti公司或第三方軟件合作商提供了dsplib或其他的合法子程序庫供調(diào)用,應(yīng)盡可能地調(diào)用使用。這些子程序均使用用匯編寫成,更為重要之處是通過了tms320算法標(biāo)準(zhǔn)測試。而且,常用的數(shù)字信號處理算法均有包括!! 7、 盡可能地采用內(nèi)聯(lián)函數(shù)!!而不用一般的函數(shù)!!可以提高代碼的集成度。 8、編程風(fēng)格力求簡煉!!盡可能用c語言而不用c++語言。我個(gè)人感到雖然c++終代碼長了一些,好象對執(zhí)行速度沒有影響。 9、因?yàn)樵赾5000中double型和float型均占有2個(gè)字,所以都可以使用,而且,可以直接將int型賦給float型或double型,但,盡可能地多使用int數(shù)據(jù)類型代替!這一點(diǎn)需要注意!! 10、 程序最后至少要加上一個(gè)空行,編譯器當(dāng)這個(gè)空行為結(jié)尾提示符。 11、 大膽使用位運(yùn)算符,非常好用!! 12、 2003年6月份從ti的網(wǎng)站上下到了關(guān)于tms320c67x系列dsp的快速算法庫,于是,tms320c5000和c6000全系列的快速算法庫都問世了,這些算法庫均可供c/c++語言直接調(diào)用,優(yōu)化程度100%,實(shí)際編程時(shí)盡可能地使用(下載時(shí)可以同時(shí)下載到說明文檔和ascii源程序,可以根據(jù)自己需要作出修改,修改前最好做個(gè)備份)。

]]>
一種TI 5000系列DSP C/C++語言和匯編語言混合編程的方法http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1580&Page=1wangxinxin2010-11-22 8:52:545000 系列DSP的三種主要軟件開發(fā)方法的優(yōu)缺點(diǎn),提出了C/C++與匯編語言混合編程方法的優(yōu)越性所在。之后在比較了幾種典型混合編程方法的基礎(chǔ)上,提出了一種結(jié)構(gòu)化的混合編程方法并詳細(xì)闡述了其函數(shù)調(diào)用規(guī)則和寄存器規(guī)則。最后給出了一個(gè)經(jīng)過驗(yàn)證的混合編程程序,該程序?qū)SP軟件開發(fā)有較大參考價(jià)值。
  關(guān)鍵詞:DSP;混合編程;函數(shù)調(diào)用規(guī)則;寄存器規(guī)則


1引言
  
TI 公司的5000系列低功耗16 b定點(diǎn)DSP,因其良好的性價(jià)比,在國內(nèi)獲得了很大的普及。如何對5000系列DSP進(jìn)行軟件開發(fā)也一直是業(yè)界關(guān)注的熱點(diǎn)。5000系列DSP的軟件設(shè)計(jì)通常有3種方法。

1.1用C/C++語言開發(fā)
  TI公司提供了用于C/C++語言開發(fā)的CCS平臺(tái)。該平臺(tái)包括優(yōu)化ANSI C/C++ 編譯器,從而可以在源程序級進(jìn)行開發(fā)調(diào)試。這種方法大大提高了軟件的開發(fā)速度和可讀性,方便了軟件的修改和移植。但是,C/C++代碼的效率還是無法與手工編寫的匯編代碼效率相比,如FFT程序。因?yàn)榧词故亲罴训腃/C++編譯器,也無法在所有的情況下都能合理的利用DSP芯片提供的各種資源。此外,用C/C++語言實(shí)現(xiàn)DSP芯片某些硬件控制也不如匯編方便,有些甚至無法用C/C++語言實(shí)現(xiàn)。
1.2全匯編語言開發(fā)

  TI公司提供了用于匯編語言開發(fā)的針對5000系列DSP的匯編語言。用戶可以用他進(jìn)行軟件開發(fā)。這種方式可以更為合理的利用芯片提供的硬件資源,其代碼效率高,程序執(zhí)行速度快。但是用匯編語言編寫程序是比較復(fù)雜的,一般來說,不同公司的芯片匯編語言是不同的,即使是同一公司的芯片,由于芯片的類型不同(如定點(diǎn)和浮點(diǎn))、芯片的升級換代,其匯編語言也不同。因此,用匯編語言開發(fā)基于某種芯片的產(chǎn)品周期較長,并且軟件的修改和升級較困難。而且匯編語言的可讀性和可移植性較差。

1.3C/C++語言和匯編語言混合編程開發(fā)
  為了充分利用DSP芯片的硬件資源,更好發(fā)揮C/C++語言和匯編語言進(jìn)行軟件開發(fā)的各自優(yōu)點(diǎn),可以將兩者有機(jī)的結(jié)合起來,兼顧兩者優(yōu)點(diǎn),避免其弊端。因此,在很多情況下,采用混合編程方法能更好地達(dá)到設(shè)計(jì)要求,完成設(shè)計(jì)任務(wù)。

2 C/C++語言和匯編語言混合編程方法討論
  
C/C++語言和匯編語言混合編程的具體方法有以下幾種:
  (1)獨(dú)立編寫C/C++程序和匯編程序,分開編譯或匯編形成各自的目標(biāo)模塊,再用鏈接器將C/C++模塊和匯編模塊鏈接起來,這是一種靈活性較大的方法。但用戶必須自己維護(hù)各匯編模塊的入口和出口代碼,自己計(jì)算傳遞參數(shù)在堆棧中的偏移量,工作量稍大,但能做到對程序的絕對控制,也能滿足軟件設(shè)計(jì)結(jié)構(gòu)化的要求。這是本文主要講述的方法。
  (2)在C/C++程序中使用匯編程序中定義的變量和常量。
  (3)在C/C++程序中直接內(nèi)嵌匯編語句。這種方法可以在C/C++程序中實(shí)現(xiàn)C/C++語言無法實(shí)現(xiàn)的硬件控制功能,如修改中斷控制寄存器、中斷標(biāo)志寄存器等。
  (4)在C/C++源程序中使用內(nèi)部函數(shù)直接調(diào)用匯編語言語句。
  后3種方法由于在C/C++語言中直接嵌入了匯編語言的成分,容易造成程序混亂,C/C++環(huán)境被破壞,甚至導(dǎo)致程序崩潰,而編程者又很難對不良結(jié)果進(jìn)行預(yù)期和有效控制。而如果采用第一種方法,只要遵循有關(guān)C/C++語言函數(shù)調(diào)用規(guī)則和寄存器規(guī)則,就能預(yù)見到程序運(yùn)行的結(jié)果,保證程序正確。下面分別講述函數(shù)調(diào)用規(guī)則和寄存器規(guī)則,最后給出編程實(shí)例。

3函數(shù)調(diào)用規(guī)則
  
C/C++編譯器對函數(shù)調(diào)用強(qiáng)加了一組嚴(yán)格的原則。除了特殊的運(yùn)行時(shí)間支持庫函數(shù)外,任何調(diào)用函數(shù)和被C/C++函數(shù)調(diào)用的函數(shù)都必須遵守這些原則。不遵守這些原則可能破壞C/C++環(huán)境并導(dǎo)致程序失敗。

  圖1說明了典型的函數(shù)調(diào)用。在這個(gè)例子中,參數(shù)被傳遞到堆棧中調(diào)用者的參數(shù)塊,函數(shù)再使用這些參數(shù)調(diào)用被調(diào)用函數(shù)。注意,第一個(gè)參數(shù)是在A累加器中傳遞的。這個(gè)例子還說明了匯編器對被調(diào)用函數(shù)的局部幀的分配。局部幀包括局部變量塊和局部參數(shù)塊兩部分,其中局部參數(shù)塊是局部幀中用來傳遞參數(shù)到其他函數(shù)的部分。如果被調(diào)用函數(shù)沒有局部變量并且不再調(diào)用其他函數(shù)或需要調(diào)用的函數(shù)沒有參數(shù),則不分配局部幀。對于混合編程而言,由于被調(diào)用函數(shù)是手工編寫的匯編程序,則局部幀由編程者自己完成分配,也不需要在堆棧中進(jìn)行,而編譯器分配局部幀。

圖片點(diǎn)擊可在新窗口打開查看

  (1)函數(shù)如何調(diào)用
  函數(shù)(調(diào)用者)在調(diào)用被調(diào)用函數(shù)時(shí)執(zhí)行以下任務(wù)。
  ①調(diào)用者將第一個(gè)(最左邊)的參數(shù)值放進(jìn)累加器A。調(diào)用者將剩下的參數(shù)按相反的順序傳進(jìn)參數(shù)塊,剩下的最左邊的參數(shù)在最低的地址。
  ②若函數(shù)返回一個(gè)結(jié)構(gòu),則調(diào)用者為該結(jié)構(gòu)分配空間,然后用累加器A傳遞返回空間的地址給調(diào)用的函數(shù)。
  ③調(diào)用者調(diào)用函數(shù)。
  (2)被調(diào)用函數(shù)如何響應(yīng)。
  被調(diào)用函數(shù)執(zhí)行以下任務(wù):
  注意:如果被調(diào)用函數(shù)是C/C++函數(shù),則下面步驟都是由匯編器自動(dòng)完成。如果是混合編程,則如下步驟都是由編程者在被調(diào)用的匯編函數(shù)中完成的。
  ①若被調(diào)用函數(shù)修改AR1,AR2或AR7,則將他們壓入堆棧。
  ②被調(diào)用函數(shù)通過從SP減去一個(gè)常數(shù),為局部變量塊和局部參數(shù)塊分配存儲(chǔ)器。該常數(shù)按以下公式計(jì)算,即:
  局部變量塊的大小+局部參數(shù)塊的大小+padding
  padding值是為了保證SP對準(zhǔn)偶數(shù)邊界而可能要求補(bǔ)充的一個(gè)字。之所以SP要對準(zhǔn)偶數(shù)邊界,是因?yàn)?000系列DSP指令可一次讀寫存儲(chǔ)器的32 b,例如DLD,DADD等。這樣,編譯器必須保證所有32 b的目標(biāo)都駐留在偶數(shù)邊界。
  對于混合編程而言可以在匯編函數(shù)中,按本步驟的方法在堆棧中分配局部幀,但本方法相對比較麻煩,尤其該匯編函數(shù)還要調(diào)用其他函數(shù)時(shí),所以,一般而言編程者通常用其他方法分配局部幀,比如用bss偽指令定義局部變量供函數(shù)使用。
  ③被調(diào)用函數(shù)為調(diào)用函數(shù)執(zhí)行代碼。
  ④若函數(shù)返回一個(gè)值,則被調(diào)用函數(shù)將該值放在累加器A中;若函數(shù)返回一個(gè)結(jié)構(gòu),則被 調(diào)用函數(shù)將該結(jié)構(gòu)復(fù)制到累加器A指到的存儲(chǔ)器塊;若調(diào)用者不返回函數(shù)值,則A被置0。
  ⑤被調(diào)用函數(shù)給SP上加上第二步計(jì)算的常數(shù),釋放為局部變量和局部參數(shù)分配的存儲(chǔ)空間。對混合編程而言,如果編程者沒有在堆棧中分配局部幀,則本步驟省略。
  ⑥被調(diào)用函數(shù)恢復(fù)所有保存的寄存器。
  ⑦被調(diào)用函數(shù)執(zhí)行返回。

4寄存器規(guī)則
  
(1)必須保存任何被函數(shù)修正的專用寄存器。專用寄存器包括:
  ①AR1,AR6,AR7
  ②堆棧指針(SP)
  若對SP正常使用,不需要明顯的保存。換句話說,只要任何壓入堆棧的東西在函數(shù)返回之 前被彈回(因而保存了SP),匯編函數(shù)就可以自由的使用堆棧。任何非專用的寄存器都可以自由地使用而無需將他們保存。
  (2)中斷函數(shù)必須保存他使用的所有寄存器。
  (3)ARP在函數(shù)進(jìn)入和返回時(shí),必須為0,即當(dāng)前輔助寄存器為AR0。函數(shù)執(zhí)行時(shí)可以為其 他值。
  (4)在默認(rèn)的情況下,編譯器總是認(rèn)為OVM為0。因此,若在匯編程序中將OVM置為1,則返回C/C++環(huán)境時(shí),必須將其恢復(fù)為0。
  (5)在默認(rèn)的情況下,編譯器總是認(rèn)為CPL為1。因此,若在匯編程序中將CPL清0,則在返回C/C++環(huán)境時(shí),必須將其恢復(fù)為1。
  (6)長整數(shù)和浮點(diǎn)數(shù)存儲(chǔ)在存儲(chǔ)器中的方法是最高有效字在低位地址。
  (7)函數(shù)必須按前面有關(guān)被調(diào)用函數(shù)響應(yīng)中所述的方法返回值。
  (8)除了全局變量的初始化外,匯編語言模塊不能以任何目的使用cinit段。在boot asm中的C/C++啟動(dòng)程序假定cinit段完全由初始化表組成。將其他的信息放入cin it中將使初始化表產(chǎn)生混亂,并將產(chǎn)生不可預(yù)期的結(jié)果。
  (9)在匯編語言模塊中,對可以從C/C++中訪問的變量和函數(shù)名需加上前綴“_”。對于僅用于匯編語言模塊中的標(biāo)識(shí)符,應(yīng)不得用下劃線開始。
  (10)任何在匯編語言模塊中聲明的將要從C/C++訪問或調(diào)用的對象或函數(shù),都必須在匯編語言中用global偽指令聲明為全局變量。

5編程實(shí)例
  
以32 b乘法運(yùn)算為例。雖然用C/C++語言表達(dá)32 b乘法運(yùn)算較為方便和明了,但由于C/C++語言無法很好利用DSP匯編語言為實(shí)現(xiàn)各種乘法運(yùn)算而提供的指令,而使得C/C++程序效率低下。所以這里用匯編語言完成32 b乘法運(yùn)算,再用C/C++程序調(diào)用他。

5.1算法簡介
  由于16 b定點(diǎn)DSP中沒有32 b乘法指令,所以一定要用幾種16 b乘法指令結(jié)合一定算法來進(jìn)行32 b乘法運(yùn)算。一個(gè)32 b數(shù)在存儲(chǔ)器中是分開存儲(chǔ)的。高16位存放在低地址,他在進(jìn)行乘法運(yùn)算是可以看作一個(gè)16 b有符號數(shù);低16位存放在相鄰的低地址,他進(jìn)行乘法運(yùn)算時(shí)可以看作一個(gè)16 b無符號數(shù)。于是算式如下:  
  圖片點(diǎn)擊可在新窗口打開查看
其中:S代表符號數(shù);U代表無符號數(shù)。
  由上算式可見,在32 b乘法運(yùn)算中,實(shí)際上包含了3種乘法運(yùn)算:U*U,S*U和S*S 。一般的乘法運(yùn)算指令都是兩個(gè)帶符號數(shù)相乘,即S*S。所以在編程時(shí),還要用到以下兩條乘法指令:
 圖片點(diǎn)擊可在新窗口打開查看
5.2C語言主程序

圖片點(diǎn)擊可在新窗口打開查看
  
在主程序中進(jìn)行MPY32函數(shù)調(diào)用時(shí),函數(shù)傳遞情形如圖2所示。

圖片點(diǎn)擊可在新窗口打開查看

  從圖2可以看出,函數(shù)MPY32的第一參數(shù)存放在A累加器中,第二個(gè)參數(shù)在堆棧中,高16位在堆棧中的低地址,低16位在堆棧中的高地址。由于MPY32是匯編語言函數(shù),所以編譯器不為其分配局部幀,局部幀的分配在匯編程序中進(jìn)行。

5.3匯編程序
  可以看出,在匯編程序中至少要為局部幀分配8個(gè)單元,其中4個(gè)單元用來存放參數(shù)值,4個(gè)單元用來存放運(yùn)算結(jié)果,如圖3所示。
  匯編函數(shù):
 圖片點(diǎn)擊可在新窗口打開查看
 圖片點(diǎn)擊可在新窗口打開查看
 圖片點(diǎn)擊可在新窗口打開查看
 圖片點(diǎn)擊可在新窗口打開查看


圖片點(diǎn)擊可在新窗口打開查看

6結(jié)語
  本文介紹的混合編程方法不但適用于TI 5000系列DSP,同樣也適用于TI其他系列的DSP,如2000系列、6000系列,甚至對其他芯片,如51系列單片機(jī),實(shí)現(xiàn)混合編程也有很大參考價(jià)值。值得注意的是,為了使混合編程不破壞C語言的結(jié)構(gòu)性,在匯編語言中不要設(shè)置除函數(shù)名之外的任何全局變量。

]]>
TMS320C5000http://www.55716723.cn/bbs/dispbbs.asp?BoardID=28&ID=1579&Page=1wangxinxin2010-11-22 8:51:11
   16-bit定點(diǎn)DSP

   C55x有雙MAC單元;C54x有單MAC單元

   C55的指令長度可變,且沒有排隊(duì)的限制

   C55x有12組總線;C54x有8組總線

二、綜合介紹

   C5000是16-bit定點(diǎn)DSP系列,包括舊有的C5x、當(dāng)前主流的C54x和最新的C55x。

   C55x和C54x源代碼兼容,而C5x和C2x源代碼兼容。C54x關(guān)注于低功耗,而C55x則將低功耗提到一個(gè)新水平:300MHz的C55x和120MHz的C54x相比,性能提高5倍,而功耗則降到六分之一。盡管C5x還在全線生產(chǎn),但公司已經(jīng)將新設(shè)計(jì)轉(zhuǎn)向C54x 和C55x。C54x 和C55x采用改進(jìn)的哈佛結(jié)構(gòu)。

   C55x 具有12組獨(dú)立的總線,而C54x則有8組。它們都有一組程序總線和相應(yīng)的程序地址總線。C54x總線的寬度為16-bit,而C55x總線的寬度為32-bit。C55x有三組數(shù)據(jù)讀總線和兩組數(shù)據(jù)寫總線,而C54x有兩組數(shù)據(jù)讀總線和一組數(shù)據(jù)寫總線。每組數(shù)據(jù)總線都有其相應(yīng)的地址總線。C55x的數(shù)據(jù)地址總線的寬度為24-bit,而C54x的數(shù)據(jù)地址總線的寬度為16-bit。

   C54x使用兩個(gè)輔助寄存器算術(shù)單元,在每個(gè)周期內(nèi)產(chǎn)生一個(gè)或兩個(gè)數(shù)據(jù)存儲(chǔ)器地址。這四組內(nèi)部總線和兩個(gè)地址發(fā)生器使其可以進(jìn)行多操作數(shù)運(yùn)算。

   C55x的地址-數(shù)據(jù)流單元(ADFU)包含了專門的硬件來管理五組數(shù)據(jù)總線。該ADFU也可以作為通用的16-bit ALU,用于簡單的算術(shù)運(yùn)算。該ALU從指令緩沖單元(IU)接收立即數(shù),和存儲(chǔ)器、ADFU寄存器、數(shù)據(jù)計(jì)算單元(DCU)寄存器、程序流單元(PFU)寄存器作雙向通信。無論是ALU,還是三個(gè)地址寄存器ALU(ARAU)中的一個(gè),都可以修改作間接尋址的九個(gè)地址寄存器。這三個(gè)ARAU為C55x的三組數(shù)據(jù)讀總線提供獨(dú)立的地址。這種并行性保證了在每個(gè)CPU周期內(nèi)DCU去讀兩個(gè)16-bit的操作數(shù)和一個(gè)16-bit的系數(shù)。

   C55x的DCU包含了兩個(gè)MAC單元,在單周期內(nèi)作兩個(gè)17217-bit的MAC運(yùn)算。它還包含了一個(gè)40-bit的ALU和四個(gè)40-bit的累加器寄存器、一個(gè)桶型移位器、以及專門的Viterbi算法硬件。每個(gè)MAC單元包含一個(gè)乘法器和帶32-或40-bit飽和邏輯的加法器。三個(gè)數(shù)據(jù)讀總線將兩個(gè)數(shù)據(jù)流和一個(gè)公共系數(shù)流送給兩個(gè)MAC單元。用戶可以用ALU作32-bit的運(yùn)算,或分開作兩個(gè)16-bit的運(yùn)算。除開接受從DCU的40-bit Acc寄存器來的輸入外,ALU還從IU接受立即數(shù),并和存儲(chǔ)器、ADFU寄存器、PFU寄存器作雙向通信。

   C54x是單17217-bit MAC機(jī)器,有一個(gè)40-bit的加法器、兩個(gè)40-bit的Acc和一個(gè)分開的40-bit的ALU。與C55x相類似,C54x的ALU也可以作成兩個(gè)16-bit的配置,完成兩個(gè)單周期運(yùn)算。乘法器輸出處的40-bit的加法器允許作非流水的MAC運(yùn)算,以及并行的兩個(gè)加法和乘法。單周期歸一化和指數(shù)編碼支持浮點(diǎn)數(shù)運(yùn)算。

   兩個(gè)系列的結(jié)構(gòu)都支持一個(gè)桶型移位器,將40-bit的Acc的值左移或右移最多達(dá)31bit。該桶型移位器將移位后的值送給DCU的ALU,以便作進(jìn)一步的運(yùn)算。指令集中關(guān)于二操作數(shù)、三操作數(shù)和32-bit操作數(shù)的指令,支持結(jié)構(gòu)的并行性。八個(gè)可以獨(dú)立尋址的輔助寄存器和軟件堆棧提高了C編譯器的效率。

   C55x可以執(zhí)行可變長度的指令,這和C54x有顯著的不同。C54x的指令長度為固定的16-bit,而C55x的指令長度則從8到48 bit。C55x的IU緩存64 byte的代碼,且有一個(gè)解碼邏輯來確認(rèn)可變長度指令中各指令的區(qū)別。局部循環(huán)指令使用指令緩沖隊(duì)列來循環(huán)執(zhí)行代碼塊。指令緩沖隊(duì)列還可以在執(zhí)行條件程序流控制指令的條件測試時(shí),推測性地提取指令。指令解碼器按排列順序?qū)χ噶罱獯a,而不是執(zhí)行動(dòng)態(tài)時(shí)序,從而可以在預(yù)定的時(shí)間得到結(jié)果。

   C55x的PFU跟蹤程序的執(zhí)行點(diǎn),并為多達(dá)16Mbyte的程序存儲(chǔ)器產(chǎn)生24-bit的地址。該單元的硬件,可用于循環(huán)、靈活性轉(zhuǎn)移、條件執(zhí)行、以及流水保護(hù)。單獨(dú)的程序計(jì)數(shù)器可以保證從子程序或中斷服務(wù)子程序快速返回。該P(yáng)FU還包括管理指令流水和四個(gè)CPU狀態(tài)寄存器的邏輯。它以硬件方式可以提供四層塊循環(huán)嵌套。其硬件還支持條件循環(huán)。PFU處理流水控制冒險(xiǎn),并對讀后寫及寫后讀提供保護(hù)。當(dāng)在指令流中這種冒險(xiǎn)發(fā)生時(shí),流水保護(hù)邏輯就插入一些周期,保證程序的正確執(zhí)行。集成的軟件等待狀態(tài)發(fā)生器使用戶可以使用較慢的外部存儲(chǔ)器。

   該系列的所有DSP都支持片內(nèi)雙訪問RAM(DARAM),用戶可以將其配置為程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器。C55x還有擴(kuò)展的同步突發(fā)性RAM、同步DRAM和異步SRAM及DRAM。片內(nèi)的鎖相環(huán)(PLL)允許用戶抑制時(shí)鐘,但C55x核還可以激活與自動(dòng)管理片內(nèi)外設(shè)和存儲(chǔ)器的功耗。當(dāng)程序不再訪問片內(nèi)存儲(chǔ)器時(shí),它們就會(huì)被切換到低功率模式。處理器對片內(nèi)外設(shè)也提供類似的控制。

   C55x還設(shè)置了用戶可控的低功率IDLE域,包括CPU、DMA、外設(shè)、外部存儲(chǔ)器接口、指令隊(duì)列、以及時(shí)鐘發(fā)生電路

三、尋址模式

   C54x支持單數(shù)據(jù)存儲(chǔ)器操作數(shù)尋址和32-bit操作數(shù)尋址,還使用并行指令支持雙數(shù)據(jù)存儲(chǔ)器操作數(shù)尋址。它也提供立即數(shù)尋址、存儲(chǔ)器映射尋址、循環(huán)尋址和位倒序?qū)ぶ贰?

   在C54x的基礎(chǔ)上,C55x還支持絕對值尋址、寄存器間接尋址、直接尋址,即位移模式。C55x的ADFU包括專門的寄存器,支持使用間接尋址指令的循環(huán)尋址。可以同時(shí)使用五個(gè)獨(dú)立的循環(huán)緩沖器和三個(gè)獨(dú)立的緩沖器長度。這些循環(huán)緩沖器沒有地址排隊(duì)的限制。C54x支持兩個(gè)任意長度的循環(huán)緩沖器。

四、特殊指令

   C54x有專門功能指令,如FIR濾波器、單指令或塊指令循環(huán)、八個(gè)并行指令(如并行存儲(chǔ)或乘加)、乘法累加和減(十個(gè)乘法指令)、八個(gè)雙操作數(shù)存儲(chǔ)器搬移。C55x還有專門的指令,充分利用增加的功能單元和并行能力的優(yōu)點(diǎn)。用戶定義的并行機(jī)制,允許將執(zhí)行兩個(gè)操作的指令加以組合。

五、開發(fā)支持

   eXpressDSP軟件技術(shù)包括DSP集成開發(fā)工具:可升級的實(shí)時(shí)軟件基礎(chǔ)、可重復(fù)使用的應(yīng)用軟件接口標(biāo)準(zhǔn)、以及不斷增加的第三方的軟件模塊。Code Composer Studio是一個(gè)集成的DSP開發(fā)工具套件,包括C5000的C編譯器、DSP/BIOS、實(shí)時(shí)數(shù)據(jù)交換技術(shù)等]]>
主站蜘蛛池模板: 欧美精品欧美精品系列 | 免费一级欧美在线观看视频 | 一区二区三区中文字幕 | 日韩欧美成人一区二区三区 | 欧美一区二区在线 | 免费成人国产 | 亚洲欧美国产毛片在线 | 午夜欧美| 一区二区免费 | 国产在线小视频 | 欧美三级免费观看 | 欧美日韩一区二区在线 | 秋霞在线一区二区 | 天天综合天天 | 天天天天操| 男女在线免费观看 | 在线亚州 | 国产在线观看福利 | 日韩国产中文字幕 | 国产高清无av久久 | 日韩高清黄色 | 国产精品日韩一区二区 | 久久久精品一区二区 | 伊人网站在线观看 | 国产精品夜夜春夜夜爽久久电影 | 凹凸日日摸日日碰夜夜 | 免费在线观看一区二区三区 | 亚洲成av人片在线观看 | 亚洲第一视频 | 激情小说综合网 | 射久久 | 久久久精品一区 | 日韩精品一区二区三区在线观看 | 国产精品一区视频 | 国产一级视频在线 | 欧美在线一二三 | 国色天香综合网 | 欧美在线激情 | 夜夜草| 亚洲成人福利视频 | 日日干干 |