新聞中心

        EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > DSP處理器與通用處理器的比較

        DSP處理器與通用處理器的比較

        作者: 時(shí)間:2016-12-21 來(lái)源:網(wǎng)絡(luò) 收藏

        DSP處理器通用處理器的比較

        1 對(duì)密集的乘法運(yùn)算的支持

        GPP不是設(shè)計(jì)來(lái)做密集乘法任務(wù)的,即使是一些現(xiàn)代的GPP,也要求多個(gè)指令周期來(lái)做一次乘法。而DSP處理器使用專門的硬件來(lái)實(shí)現(xiàn)單周期乘法。DSP處理器還增加了累加器寄存器來(lái)處理多個(gè)乘積的和。累加器寄存器通常比其他寄存器寬,增加稱為結(jié)果bits的額外bits來(lái)避免溢出。
        同時(shí),為了充分體現(xiàn)專門的乘法-累加硬件的好處,幾乎所有的DSP的指令集都包含有顯式的MAC指令。

        2 存儲(chǔ)器結(jié)構(gòu)
        傳統(tǒng)上,GPP使用馮.諾依曼存儲(chǔ)器結(jié)構(gòu)。這種結(jié)構(gòu)中,只有一個(gè)存儲(chǔ)器空間通過一組總線(一個(gè)地址總線和一個(gè)數(shù)據(jù)總線)連接到處理器核。通常,做一次乘法會(huì)發(fā)生4次存儲(chǔ)器訪問,用掉至少四個(gè)指令周期。
        大多數(shù)DSP采用了哈佛結(jié)構(gòu),將存儲(chǔ)器空間劃分成兩個(gè),分別存儲(chǔ)程序和數(shù)據(jù)。它們有兩組總線連接到處理器核,允許同時(shí)對(duì)它們進(jìn)行訪問。這種安排將處理器存貯器的帶寬加倍,更重要的是同時(shí)為處理器核提供數(shù)據(jù)與指令。在這種布局下,DSP得以實(shí)現(xiàn)單周期的MAC指令。
        還有一個(gè)問題,即現(xiàn)在典型的高性能GPP實(shí)際上已包含兩個(gè)片內(nèi)高速緩存,一個(gè)是數(shù)據(jù),一個(gè)是指令,它們直接連接到處理器核,以加快運(yùn)行時(shí)的訪問速度。從物理上說,這種片內(nèi)的雙存儲(chǔ)器和總線的結(jié)構(gòu)幾乎與哈佛結(jié)構(gòu)的一樣了。然而從邏輯上說,兩者還是有重要的區(qū)別。
        GPP使用控制邏輯來(lái)決定哪些數(shù)據(jù)和指令字存儲(chǔ)在片內(nèi)的高速緩存里,其程序員并不加以指定(也可能根本不知道)。與此相反,DSP使用多個(gè)片內(nèi)存儲(chǔ)器和多組總線來(lái)保證每個(gè)指令周期內(nèi)存儲(chǔ)器的多次訪問。在使用DSP時(shí),程序員要明確地控制哪些數(shù)據(jù)和指令要存儲(chǔ)在片內(nèi)存儲(chǔ)器中。程序員在寫程序時(shí),必須保證處理器能夠有效地使用其雙總線。
        此外,DSP處理器幾乎都不具備數(shù)據(jù)高速緩存。這是因?yàn)镈SP的典型數(shù)據(jù)是數(shù)據(jù)流。也就是說,DSP處理器對(duì)每個(gè)數(shù)據(jù)樣本做計(jì)算后,就丟棄了,幾乎不再重復(fù)使用。

        3 零開銷循環(huán)
        如果了解到DSP算法的一個(gè)共同的特點(diǎn),即大多數(shù)的處理時(shí)間是花在執(zhí)行較小的循環(huán)上,也就容易理解,為什么大多數(shù)的DSP都有專門的硬件,用于零開銷循環(huán)。所謂零開銷循環(huán)是指處理器在執(zhí)行循環(huán)時(shí),不用花時(shí)間去檢查循環(huán)計(jì)數(shù)器的值、條件轉(zhuǎn)移到循環(huán)的頂部、將循環(huán)計(jì)數(shù)器減1。
        與此相反,GPP的循環(huán)使用軟件來(lái)實(shí)現(xiàn)。某些高性能的GPP使用轉(zhuǎn)移預(yù)報(bào)硬件,幾乎達(dá)到與硬件支持的零開銷循環(huán)同樣的效果。

        4 定點(diǎn)計(jì)算
        大多數(shù)DSP使用定點(diǎn)計(jì)算,而不是使用浮點(diǎn)。雖然DSP的應(yīng)用必須十分注意數(shù)字的精確,用浮點(diǎn)來(lái)做應(yīng)該容易的多,但是對(duì)DSP來(lái)說,廉價(jià)也是非常重要的。定點(diǎn)機(jī)器比起相應(yīng)的浮點(diǎn)機(jī)器來(lái)要便宜(而且更快)。為了不使用浮點(diǎn)機(jī)器而又保證數(shù)字的準(zhǔn)確,DSP處理器在指令集和硬件方面都支持飽和計(jì)算、舍入和移位。

        5 專門的尋址方式
        DSP處理器往往都支持專門的尋址模式,它們對(duì)通常的信號(hào)處理操作和算法是很有用的。例如,模塊(循環(huán))尋址(對(duì)實(shí)現(xiàn)數(shù)字濾波器延時(shí)線很有用)、位倒序?qū)ぶ罚▽?duì)FFT很有用)。這些非常專門的尋址模式在GPP中是不常使用的,只有用軟件來(lái)實(shí)現(xiàn)。

        6 執(zhí)行時(shí)間的預(yù)測(cè)
        大多數(shù)的DSP應(yīng)用(如蜂窩電話和調(diào)制解調(diào)器)都是嚴(yán)格的實(shí)時(shí)應(yīng)用,所有的處理必須在指定的時(shí)間內(nèi)完成。這就要求程序員準(zhǔn)確地確定每個(gè)樣本需要多少處理時(shí)間,或者,至少要知道,在最壞的情況下,需要多少時(shí)間。
        如果打算用低成本的GPP去完成實(shí)時(shí)信號(hào)處理的任務(wù),執(zhí)行時(shí)間的預(yù)測(cè)大概不會(huì)成為什么問題,應(yīng)為低成本GPP具有相對(duì)直接的結(jié)構(gòu),比較容易預(yù)測(cè)執(zhí)行時(shí)間。然而,大多數(shù)實(shí)時(shí)DSP應(yīng)用所要求的處理能力是低成本GPP所不能提供的。
        這時(shí)候,DSP對(duì)高性能GPP的優(yōu)勢(shì)在于,即便是使用了高速緩存的DSP,哪些指令會(huì)放進(jìn)去也是由程序員(而不是處理器)來(lái)決定的,因此很容易判斷指令是從高速緩存還是從存儲(chǔ)器中讀取。DSP一般不使用動(dòng)態(tài)特性,如轉(zhuǎn)移預(yù)測(cè)和推理執(zhí)行等。因此,由一段給定的代碼來(lái)預(yù)測(cè)所要求的執(zhí)行時(shí)間是完全直截了當(dāng)?shù)摹亩钩绦騿T得以確定芯片的性能限制。

        7 定點(diǎn)DSP指令集
        定點(diǎn)DSP指令集是按兩個(gè)目標(biāo)來(lái)設(shè)計(jì)的:
        使處理器能夠在每個(gè)指令周期內(nèi)完成多個(gè)操作,從而提高每個(gè)指令周期的計(jì)算效率。
        將存貯DSP程序的存儲(chǔ)器空間減到最小(由于存儲(chǔ)器對(duì)整個(gè)系統(tǒng)的成本影響甚大,該問題在對(duì)成本敏感的DSP應(yīng)用中尤為重要)。
        為了實(shí)現(xiàn)這些目標(biāo),DSP處理器的指令集通常都允許程序員在一個(gè)指令內(nèi)說明若干個(gè)并行的操作。例如,在一條指令包含了MAC操作,即同時(shí)的一個(gè)或兩個(gè)數(shù)據(jù)移動(dòng)。在典型的例子里,一條指令就包含了計(jì)算FIR濾波器的一節(jié)所需要的所有操作。這種高效率付出的代價(jià)是,其指令集既不直觀,也不容易使用(與GPP的指令集相比)。
        GPP的程序通常并不在意處理器的指令集是否容易使用,因?yàn)樗麄円话闶褂孟驝或C++等高級(jí)語(yǔ)言。而對(duì)于DSP的程序員來(lái)說,不幸的是主要的DSP應(yīng)用程序都是用匯編語(yǔ)言寫的(至少部分是匯編語(yǔ)言優(yōu)化的)。這里有兩個(gè)理由:首先,大多數(shù)廣泛使用的高級(jí)語(yǔ)言,例如C,并不適合于描述典型的DSP算法。其次,DSP結(jié)構(gòu)的復(fù)雜性,如多存儲(chǔ)器空間、多總線、不規(guī)則的指令集、高度專門化的硬件等,使得難于為其編寫高效率的編譯器。
        即便用編譯器將C源代碼編譯成為DSP的匯編代碼,優(yōu)化的任務(wù)仍然很重。典型的DSP應(yīng)用都具有大量計(jì)算的要求,并有嚴(yán)格的開銷限制,使得程序的優(yōu)化必不可少(至少是對(duì)程序的最關(guān)鍵部分)。因此,考慮選用DSP的一個(gè)關(guān)鍵因素是,是否存在足夠的能夠較好地適應(yīng)DSP處理器指令集的程序員。

        8 開發(fā)工具的要求
        因?yàn)镈SP應(yīng)用要求高度優(yōu)化的代碼,大多數(shù)DSP廠商都提供一些開發(fā)工具,以幫助程序員完成其優(yōu)化工作。例如,大多數(shù)廠商都提供處理器的仿真工具,以準(zhǔn)確地仿真每個(gè)指令周期內(nèi)處理器的活動(dòng)。無(wú)論對(duì)于確保實(shí)時(shí)操作還是代碼的優(yōu)化,這些都是很有用的工具。
        GPP廠商通常并不提供這樣的工具,主要是因?yàn)镚PP程序員通常并不需要詳細(xì)到這一層的信息。GPP缺乏精確到指令周期的仿真工具,是DSP應(yīng)用開發(fā)者所面臨的的大問題:由于幾乎不可能預(yù)測(cè)高性能GPP對(duì)于給定任務(wù)所需要的周期數(shù),從而無(wú)法說明如何去改善代碼的性能。


        微處理器(Microprocessor)的分類

        通用處理器(GPP)

        采用馮.諾依曼結(jié)構(gòu),程序和數(shù)據(jù)的存儲(chǔ)空間合二而一
        8-bit Apple(6502),NEC PC-8000(Z80)
        8086/286/386/486/Pentium/Pentium II/ Pentium III
        PowerPc 64-bit CPU(SUN Sparc,DEC Alpha, HP)
        CISC 復(fù)雜指令計(jì)算機(jī), RISC 精簡(jiǎn)指令計(jì)算機(jī)
        采取各種方法提高計(jì)算速度,提高時(shí)鐘頻率,高速總線,多級(jí)Cashe,協(xié)處理器等

        Single Chip Computer/ Micro Controller Unit(MCU)

        除開通用CPU所具有的ALU和CU,還有存儲(chǔ)器(RAM/ROM)寄存器,時(shí)鐘,計(jì)數(shù)器,定時(shí)器,串/并口,有的還有A/D,D/A
        INTEL MCS/48/51/96(98)
        MOTOROLA HCS05/011

        DSP

        采用哈佛結(jié)構(gòu),程序和數(shù)據(jù)分開存儲(chǔ)
        采用一系列措施保證數(shù)字信號(hào)的處理速度,如對(duì)FFT的專門優(yōu)化


        MCU與DSP的簡(jiǎn)單比較

        MCU DSP
        低檔 高檔 低檔 高檔
        指令周期(ns) 600 40 50 5
        乘加時(shí)間(ns) 1900 80 50 5
        US$/MIPS 1.5 0.5 0.15 0.1


        飛速發(fā)展的數(shù)字信號(hào)處理器
          由于超大規(guī)模集成電路技術(shù)的迅猛發(fā)展,過去二十年中,數(shù)字信號(hào)處理技術(shù),即DSP(Digital Signal Processor)技術(shù)也得到了突飛猛進(jìn)的發(fā)展,這種發(fā)展趨勢(shì)在今后十年內(nèi)仍將保持下去。據(jù)世界半導(dǎo)體貿(mào)易統(tǒng)計(jì)組織發(fā)布的統(tǒng)計(jì)與預(yù)測(cè)報(bào)告,2001~2006年可編程DSP市場(chǎng)的預(yù)期增長(zhǎng)率為27.2%。預(yù)期2006年DSP市場(chǎng)將達(dá)到141.9億美元,且增長(zhǎng)率是逐年遞增的,2005年的增長(zhǎng)率預(yù)期為34%。到2010年,DSP芯片的集成度將會(huì)提高11倍,單個(gè)芯片上將會(huì)集成5億只晶體管。目前DSP的生產(chǎn)工藝正在由0.35μm轉(zhuǎn)向0.25μm、0.18μm、0.13μm,到2005年可能達(dá)到0.075μm。

           集成度的提高使得硅片的面積進(jìn)一步縮小,從而導(dǎo)致DSP芯片成本降低,價(jià)格下降。價(jià)格下降促使需求的上升和應(yīng)用領(lǐng)域的擴(kuò)展。DSP已從軍用轉(zhuǎn)向民用,在計(jì)算機(jī)、通信、消費(fèi)類電子產(chǎn)品方面即所謂3C領(lǐng)域得到了廣泛的應(yīng)用。DSP在通信領(lǐng)域應(yīng)用最多,占72%,計(jì)算機(jī)占3%,消費(fèi)類、辦公自動(dòng)化各占2%,從趨勢(shì)上看,工業(yè)(特別是變頻電機(jī)控制)中的應(yīng)用,以及消費(fèi)類產(chǎn)品中應(yīng)用的份額會(huì)有所上升。
          在通信領(lǐng)域,DSP產(chǎn)品涵蓋了從3G無(wú)線基站到無(wú)線局域網(wǎng)的廣泛應(yīng)用,數(shù)字化電視也離不開DSP。DSP在語(yǔ)言處理中的應(yīng)用也是盡人皆知的,包括語(yǔ)言的壓縮與解壓,語(yǔ)言的合成,語(yǔ)言的識(shí)別等。
          計(jì)算機(jī)的硬盤驅(qū)動(dòng)器在使用DSP技術(shù)以后可大大提高存取速度,提高容量和縮小體積,以至于今后有可能用于掌上電腦。在PC機(jī)中,DSP可加速圖形處理功能。以后的PC機(jī),可能每臺(tái)PC中含有不只一顆DSP芯片。在計(jì)算機(jī)外設(shè)中,激光打印機(jī)、掃描儀、光盤機(jī)等需要大量數(shù)據(jù)傳輸?shù)脑O(shè)備,都有可能用到DSP技術(shù)。
          DSP技術(shù)發(fā)展的另一趨勢(shì)是速度更快,功耗更低,DSP片外的速度能達(dá)到幾十兆赫已經(jīng)近于極限,為了降低系統(tǒng)的噪聲,提高系統(tǒng)抗干擾能力,片外時(shí)鐘有進(jìn)一步降低的趨勢(shì),即外部使用幾兆赫的振蕩器就夠了,而片內(nèi)則用壓控振蕩器加鎖相環(huán)的技術(shù),把片內(nèi)時(shí)鐘速度提高到100MHz、200MHz乃至更高,會(huì)有更多的DSP片內(nèi)時(shí)鐘達(dá)到1GHz。預(yù)期到2010年,同類水平的DSP的功耗將降到原來(lái)的1/3。
        DSP與CPU
          如果用普通計(jì)算機(jī)中的CPU來(lái)處理算法,做乘法和加法都要調(diào)用相應(yīng)的乘法、加法函數(shù),如果是浮點(diǎn)數(shù)運(yùn)算,通常CPU需要將浮點(diǎn)運(yùn)算交給協(xié)處理處理,雖然協(xié)處理器的浮點(diǎn)運(yùn)算速度可能很快,但加上CPU將輸入?yún)?shù)傳出,再將運(yùn)算結(jié)果取回的時(shí)間,會(huì)顯得速度很慢;做循環(huán)時(shí),要有循環(huán)變量,每次循環(huán)變量加1后再判斷是否已經(jīng)循環(huán)了n次,這一過程是比較慢的。

          而DSP則在硬件設(shè)計(jì)上針對(duì)這類計(jì)算采取了一些獨(dú)特的設(shè)計(jì),以求最快的運(yùn)算速度,以至于趨于模擬電路的延遲時(shí)間。
          DSP能在一個(gè)時(shí)鐘周期內(nèi)完成乘法和加法運(yùn)算,并能并行地同時(shí)將下面運(yùn)算要用到的兩個(gè)參數(shù)傳入相應(yīng)的運(yùn)算用寄存器。在乘法及乘加指令的執(zhí)行方式上,DSP的小數(shù)乘法在算法上分定點(diǎn)算法DSP與浮點(diǎn)算法DSP。在定點(diǎn)類DSP中,小數(shù)點(diǎn)的位置是固定的,不論定點(diǎn)的DSP還是浮點(diǎn)的DSP,乘法器都是用硬件邏輯完成的,乘法可以在一個(gè)指令周期內(nèi)完成。
          在循環(huán)方面,DSP有諸如重復(fù)n次(Repeat n),或循環(huán)n次(DO Loop n)等指令,使DSP能迅速完成n次循環(huán),而不必每次都檢查是不是已經(jīng)循環(huán)n次了。這就是DSP在做數(shù)字信號(hào)處理方面的優(yōu)勢(shì)與獨(dú)到之處。也是DSP區(qū)別于CPU的地方。
          DSP與CPU在結(jié)構(gòu)方面的另一區(qū)別是,DSP往往采用哈佛結(jié)構(gòu),而傳統(tǒng)的CPU多為馮.諾曼結(jié)構(gòu)(Von Neuman)。馮.諾曼結(jié)構(gòu)指的是將程序與數(shù)據(jù)統(tǒng)一編址,不區(qū)分存儲(chǔ)器的程序空間和數(shù)據(jù)空間。而哈佛結(jié)構(gòu)指將程序空間與數(shù)據(jù)空間分開編址,這樣在DSP處理數(shù)據(jù)空間運(yùn)算與數(shù)據(jù)傳輸?shù)耐瑫r(shí)可以并行地從程序空間讀取下一條指令。采用哈佛結(jié)構(gòu),將程序空間與數(shù)據(jù)空間分開編址的好處是速度快,讀程序和讀寫數(shù)據(jù)可以同時(shí)進(jìn)行。
          DSP在內(nèi)核設(shè)計(jì)方面還有一個(gè)特點(diǎn)是采用多重流水線結(jié)構(gòu),流水線結(jié)構(gòu)的層次深度可以從3級(jí)到6級(jí)。程序的執(zhí)行過程大致可分為讀指令、指令譯碼、指令執(zhí)行等幾個(gè)階段。DSP在第一個(gè)時(shí)鐘周期內(nèi)讀第一條指令,在第二個(gè)周期譯碼第一條指令同時(shí)在第二個(gè)周期內(nèi)讀入第二條指令,在第三個(gè)時(shí)鐘周期內(nèi)執(zhí)行第一條指令,譯碼第二條指令,同時(shí)讀入第三條指令,這樣雖然執(zhí)行一條指令仍需要三個(gè)周期,可是由于并行的流水線處理,看起來(lái)好像每條指令都是在一個(gè)周期內(nèi)完成的,這就是流水線結(jié)構(gòu)。
        DSP的特點(diǎn)

        DSP在體系結(jié)構(gòu)上與通用微處理器有很大的區(qū)別。下面是幾個(gè)關(guān)鍵的不同點(diǎn):
        單周期指令:大多數(shù)DSP都擁有流水結(jié)構(gòu),它可以在一個(gè)時(shí)鐘周期內(nèi)執(zhí)行一條語(yǔ)句。
        快速乘法器:信號(hào)處理算法往往大量用到乘加(multiply-accumulate,MAC)運(yùn)算。DSP有專用的硬件乘法器,它可以在一個(gè)時(shí)鐘周期內(nèi)完成MAC運(yùn)算。硬件乘法器占用了DSP芯片面積的很大一部分。(與之相反,通用微處理器采用一種較慢的、迭代的乘法技術(shù),它可以在多個(gè)時(shí)鐘周期內(nèi)完成一次乘法運(yùn)算,但是占用了較少了硅片資源)。
        多總線:DSP有分開的代碼和數(shù)據(jù)總線(一般用術(shù)語(yǔ)“哈佛結(jié)構(gòu)”表示),這樣在同一個(gè)時(shí)鐘周期內(nèi)可以進(jìn)行多次存儲(chǔ)器訪問——這是因?yàn)閿?shù)據(jù)總線也往往有好幾組。有了這種體系結(jié)構(gòu),DSP就可以在單個(gè)時(shí)鐘周期內(nèi)取出一條指令和一個(gè)或者兩個(gè)(或者更多)的操作數(shù)。
        地址發(fā)生器:DSP有專用的硬件地址發(fā)生單元,這樣它可以支持許多信號(hào)處理算法所要求的特定數(shù)據(jù)地址模式。這包括前(后)增(減)、環(huán)狀數(shù)據(jù)緩沖的模地址以及FFT的比特倒置地址。地址發(fā)生器單元與主ALU和乘法器并行工作,這就進(jìn)一步增加了DSP可以在一個(gè)時(shí)鐘周期內(nèi)可以完成的工作量。
        硬件輔助循環(huán):信號(hào)處理算法常常需要執(zhí)行緊密的指令循環(huán)。對(duì)硬件輔助循環(huán)的支持,可以讓DSP高效的循環(huán)執(zhí)行代碼塊而無(wú)需讓流水線停轉(zhuǎn)或者讓軟件來(lái)測(cè)試循環(huán)終止條件。
        數(shù)據(jù)格式:除了標(biāo)準(zhǔn)的整數(shù)型格式外,DSP一般支持定點(diǎn)和(或)浮點(diǎn)數(shù)。對(duì)數(shù)據(jù)格式和精度的選擇取決于應(yīng)用程序所需,例如:
        16位定點(diǎn)DSP可以滿足語(yǔ)音信號(hào)處理和控制所需
        24位和32位定點(diǎn)DSP可以滿足高質(zhì)量音頻信號(hào)處理所需
        32位浮點(diǎn)DSP可以滿足圖形和圖像處理所需

        DSP的特點(diǎn):
        DSP處理器采用哈佛結(jié)構(gòu)和改進(jìn)的哈佛結(jié)構(gòu)。
        哈佛結(jié)構(gòu)就是將程序代碼和數(shù)據(jù)的存儲(chǔ)空間分開,各有自己的地址和數(shù)據(jù)總線。之所以采用哈佛結(jié)構(gòu),是為了并行進(jìn)行指令和數(shù)據(jù)處理,從而可以大大地提高運(yùn)算的速度。為了進(jìn)一步提高信號(hào)處理的效率,在哈佛結(jié)構(gòu)的基礎(chǔ)上,又加以改善。使得程序代碼和數(shù)據(jù)存儲(chǔ)空間之間可以進(jìn)行數(shù)據(jù)的傳輸,稱為改善的哈佛結(jié)構(gòu)。

        采用流水技術(shù)。
        流水技術(shù)是將各指令的各個(gè)步驟重疊起來(lái)執(zhí)行。DSP處理器所采用的將程序存儲(chǔ)空和數(shù)據(jù)存儲(chǔ)空間的地址與數(shù)據(jù)總線分開的哈佛結(jié)構(gòu),為采用流水技術(shù)提供了很大的方便。

        為了提高DSP處理器的運(yùn)算速度,它們無(wú)例外地設(shè)置了硬件乘法器,以及MAC(乘并且累加)一類的指令。
        DSP處理器都為DMA單獨(dú)設(shè)置了完全獨(dú)立的總線和控制器,這是和通用的CPU很不相同,其目的是在進(jìn)行數(shù)據(jù)傳輸是完全不影響CPU及其相關(guān)總線的工作。
        在DSP處理器中,設(shè)置了專門的數(shù)據(jù)地址發(fā)生器來(lái)產(chǎn)生所需的數(shù)據(jù)地址。數(shù)據(jù)地址的產(chǎn)生與CPU的工作是并行的,從而節(jié)省CPU的時(shí)間,提高信號(hào)的處理速度。
        DSP處理器為了自身工作的需要和外部環(huán)境的協(xié)調(diào)工作。往往都設(shè)置了豐富的外設(shè)。如時(shí)鐘發(fā)生器。定時(shí)器等。
        定點(diǎn)DSP處理器和浮點(diǎn)DSP處理器。定點(diǎn)DSP中經(jīng)常要考慮溢出問題,在浮點(diǎn)DSP基本上可以不考慮。與定點(diǎn)DSP處理器相比,浮點(diǎn)DSP處理器的速度更快,尤其是作浮點(diǎn)運(yùn)算。在實(shí)時(shí)性要求很到的場(chǎng)合。往往考慮浮點(diǎn)DSP處理器。而浮點(diǎn)DSP處理器的價(jià)格比較高,開發(fā)難度更大。

        本文引用地址:http://www.104case.com/article/201612/332415.htm

        為什么CCS需要安裝Driver?
        CCS是開放的軟件平臺(tái),它可以支持不同的硬件接口,因此不同的硬件接口必須通過標(biāo)準(zhǔn)的Driver同CCS連接。
        Driver安裝的常見問題?
        請(qǐng)認(rèn)真閱讀“安裝手冊(cè)”和Driver盤中的Readme。 1)對(duì)于SEED-XDS,安裝Readme中的步驟,將I/O口設(shè)為240/280/320/340。 2)對(duì)于SEED-XDSPP,安裝Readme中的步驟,將I/O口設(shè)為378或278。3)對(duì)于SEED-XDSUSB,必須連接目標(biāo)板,安裝Readme中的步驟,將I/O口設(shè)為A,USB連接后,主機(jī)將自動(dòng)激活相應(yīng)的Driver。 4)對(duì)于SEED-XDSPCI,安裝Readme中的步驟,將I/O口設(shè)為240,PCI接口板插入主機(jī)后,主機(jī)將自動(dòng)激活相應(yīng)的Driver。 5)對(duì)于Simulator,需要選擇不同的CFG文件,以模擬不同的DSP。 6)對(duì)于C5402 DSK,將I/O口設(shè)為請(qǐng)認(rèn)真閱讀“安裝手冊(cè)”和Driver盤中的Readme。 1)對(duì)于SEED-XDS,安裝Readme中的步驟,將I/O口設(shè)為240/280/320/340。 2)對(duì)于SEED-XDSPP,安裝Readme中的步驟,將I/O口設(shè)為378或278。注意主機(jī)BIOS中并口的型式必須同xds510pp.ini中一致。 3)對(duì)于SEED-XDSUSB,必須連接目標(biāo)板,安裝Readme中的步驟,將I/O口設(shè)為240/280/320/340,USB連接后,主機(jī)將自動(dòng)激活相應(yīng)的Driver。 4)對(duì)于SEED-XDSPCI,安裝Readme中的步驟,將I/O口設(shè)為240/280/320/340,PCI接口板插入主機(jī)后,主機(jī)將自動(dòng)激活相應(yīng)的Driver。 5)對(duì)于Simulator,需要選擇不同的CFG文件,以模擬不同的DSP。 6)對(duì)于C5402 DSK,將I/O口設(shè)為378或278。 7)對(duì)于C6211/6711 DSK,將I/O口設(shè)為378或278。 8)對(duì)于C6201/C6701 EVM,將I/O口設(shè)為0。

        Link的cmd文件的作用是什么?
        Link的cmd文件用于DSP代碼的定位。由于DSP的編譯器的編譯結(jié)果是未定位的,DSP沒有操作系統(tǒng)來(lái)定位執(zhí)行代碼,每個(gè)客戶設(shè)計(jì)的DSP系統(tǒng)的配置也不盡相同,因此需要用戶自己定義代碼的安裝位置。以C5000為例,基本格式為:
        -o sample.out
        -m sample.map
        -stack 100
        sample.obj meminit.obj
        -l rts.lib
        MEMORY {
        PAGE 0: VECT: origin = 0xff80, length 0x80
        PAGE 0: PROG: origin = 0x2000, length 0x400
        PAGE 1: DATA: origin = 0x800, length 0x400
        }
        SECTIONS {
        .vectors : {} >PROG PAGE 0
        .text : {} >PROG PAGE 0
        .data : {} >PROG PAGE 0
        .cinit : {} >PROG PAGE 0
        .bss : {} >DATA PAGE 1
        }
        如何將OUT文件轉(zhuǎn)換為16進(jìn)制的文件格式?
        DSP的開發(fā)軟件集成了一個(gè)程序,可以從執(zhí)行文件OUT轉(zhuǎn)換到編程器可以接受的格式,使得編程器可以用次文件燒寫EPROM或Flash。對(duì)于C2000的程序?yàn)镈SPHEX;對(duì)于C3x程序?yàn)镠EX30;對(duì)于C54x程序?yàn)镠EX500;對(duì)于C55x程序?yàn)镠EX55;對(duì)于C6x程序?yàn)镠ex6x。以C32為例,基本格式為:
        sample.out
        -x
        -memwidth 8
        -bootorg 900000h
        -iostrb 0h
        -strb0 03f0000h
        -strb1 01f0000h
        -o sample.hex
        ROMS {
        EPROM: org = 0x900000,len=0x02000,romwidth=8
        }
        SECTIONS {
        .text: paddr="boot"
        .data: paddr="boot"
        }



        關(guān)鍵詞: DSP處理器通用處理

        評(píng)論


        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 佛坪县| 元谋县| 万载县| 北安市| 铁岭县| 武定县| 钦州市| 肃宁县| 霍邱县| 察雅县| 福州市| 奉节县| 棋牌| 苏州市| 桂阳县| 平塘县| 乐业县| 云梦县| 获嘉县| 慈溪市| 鄂托克旗| 逊克县| 新昌县| 囊谦县| 巴南区| 文成县| 疏附县| 大新县| 丰顺县| 化德县| 咸阳市| 明光市| 库车县| 大庆市| 息烽县| 伊宁县| 杭锦后旗| 凤庆县| 肃宁县| 丹东市| 安图县|