女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式硬件
[導(dǎo)讀]DSP結(jié)構(gòu)可以分為定點(diǎn)和浮點(diǎn)型兩種。其中,定點(diǎn)型DSP可以實(shí)現(xiàn)整數(shù)、小數(shù)和特定的指數(shù)運(yùn)算,它具有運(yùn)算速度快、占用資源少、成本低等特點(diǎn);靈活地使用定點(diǎn)型DSP進(jìn)行浮點(diǎn)運(yùn)算能夠提高運(yùn)算的效率。目前對(duì)定點(diǎn)DSP結(jié)構(gòu)支持下的浮點(diǎn)需求也在不斷增長(zhǎng),主要原因是:實(shí)現(xiàn)算法的代碼往往是采用C/C++編寫,如果其中有標(biāo)準(zhǔn)型的浮點(diǎn)數(shù)據(jù)處理,又必須采用定點(diǎn)DSP器件,那么就需要將浮點(diǎn)算法轉(zhuǎn)換成定點(diǎn)格式進(jìn)行運(yùn)算。同時(shí),定點(diǎn)DSP結(jié)構(gòu)下的浮點(diǎn)運(yùn)算有很強(qiáng)的可行性,因?yàn)镃語(yǔ)言和匯編語(yǔ)言分別具有可移植性強(qiáng)和運(yùn)算效率高的特點(diǎn),因此在定點(diǎn)D

引 言

DSP結(jié)構(gòu)可以分為定點(diǎn)和浮點(diǎn)型兩種。其中,定點(diǎn)型DSP可以實(shí)現(xiàn)整數(shù)、小數(shù)和特定的指數(shù)運(yùn)算,它具有運(yùn)算速度快、占用資源少、成本低等特點(diǎn);靈活地使用定點(diǎn)型DSP進(jìn)行浮點(diǎn)運(yùn)算能夠提高運(yùn)算的效率。目前對(duì)定點(diǎn)DSP結(jié)構(gòu)支持下的浮點(diǎn)需求也在不斷增長(zhǎng),主要原因是:實(shí)現(xiàn)算法的代碼往往是采用C/C++編寫,如果其中有標(biāo)準(zhǔn)型的浮點(diǎn)數(shù)據(jù)處理,又必須采用定點(diǎn)DSP器件,那么就需要將浮點(diǎn)算法轉(zhuǎn)換成定點(diǎn)格式進(jìn)行運(yùn)算。同時(shí),定點(diǎn)DSP結(jié)構(gòu)下的浮點(diǎn)運(yùn)算有很強(qiáng)的可行性,因?yàn)镃語(yǔ)言和匯編語(yǔ)言分別具有可移植性強(qiáng)和運(yùn)算效率高的特點(diǎn),因此在定點(diǎn)DSP中結(jié)合C語(yǔ)言和匯編語(yǔ)言的混合編程技術(shù)將大大提高編程的靈活度,以及運(yùn)算速度。

大多數(shù)DSP的開(kāi)發(fā)工具只是在C語(yǔ)言的基礎(chǔ)上支持標(biāo)準(zhǔn)的浮點(diǎn)運(yùn)算,而定點(diǎn)DSP硬件一般都是面向定點(diǎn)的運(yùn)算,不支持標(biāo)準(zhǔn)的浮點(diǎn)運(yùn)算,缺乏硬件的支持極大地限制了浮點(diǎn)的應(yīng)用,因而標(biāo)準(zhǔn)的浮點(diǎn)運(yùn)算在實(shí)際定點(diǎn)DSP應(yīng)用中并不多見(jiàn)。C5509是一款16位定點(diǎn)DSP。在本文中,對(duì)C5509輸入FTSK信號(hào),用C語(yǔ)言和匯編語(yǔ)言混合編程的方式對(duì)輸入浮點(diǎn)型的FTSK信號(hào)進(jìn)行相關(guān)運(yùn)算,并輸出浮點(diǎn)運(yùn)算結(jié)果。這種方法的特點(diǎn)是:在C語(yǔ)言中方便地進(jìn)行數(shù)據(jù)格式轉(zhuǎn)化,在匯編語(yǔ)言中進(jìn)行乘法和加法運(yùn)算,既達(dá)到很高的運(yùn)算精度,又極大地提高了運(yùn)算效率。

1 定點(diǎn)DSP C語(yǔ)言開(kāi)發(fā)環(huán)境中的浮點(diǎn)數(shù)據(jù)格式

在定點(diǎn)DSP中,整型數(shù)是用16位二進(jìn)制格式來(lái)存儲(chǔ)的,但是DSP的C語(yǔ)言和匯編語(yǔ)言中定義的單精度浮點(diǎn)型數(shù)據(jù)都是標(biāo)準(zhǔn)C語(yǔ)言浮點(diǎn)表示格式。這種格式在C55X中,符合IEEE754標(biāo)準(zhǔn)。它定義了單精度32位和雙精度64位的格式。32位IEEE754單精度標(biāo)準(zhǔn)中,第一位是符號(hào)位,其后8位用來(lái)存放指數(shù),最后23位用來(lái)存放小數(shù)尾數(shù),如下:


在IEEE754單精度浮點(diǎn)標(biāo)準(zhǔn)中,明確包含了符號(hào)位,第32位用作符號(hào)位。尾數(shù)進(jìn)行了歸一化,以產(chǎn)生一個(gè)1.f格式的數(shù),f是小數(shù)部分,占用分配的23位。因?yàn)橐?guī)格化的數(shù)最左一位總是1,所以不需要存儲(chǔ)該位,在該格式中它是隱式的。這樣一個(gè)n位的尾數(shù)實(shí)際上存放了一個(gè)n+l位數(shù)。為使尾數(shù)規(guī)格化,指數(shù)被適當(dāng)增減,來(lái)跟蹤規(guī)格化所需的左右移位數(shù)以及小數(shù)點(diǎn)。

最常用的是用8位指數(shù)表示0~255,即O

其中:s是符號(hào)位,0為正數(shù),1為負(fù)數(shù);e是指數(shù)位,無(wú)符號(hào)8位;f是尾數(shù)的小數(shù)部分,23位。

例如:IEEE754格式下浮點(diǎn)正數(shù)00110001001111l000000001000000000的十進(jìn)制表示為:


2 相關(guān)運(yùn)算的實(shí)現(xiàn)

2.1 數(shù)據(jù)提取方式

在本軟件設(shè)計(jì)中,F(xiàn)TSK輸入數(shù)據(jù)的頻率包含800Hz,1200Hz、1600Hz、2020Hz,通過(guò)相關(guān)運(yùn)算提取800Hz信號(hào)。具體參數(shù)是:FTSK輸入數(shù)據(jù)的采樣率為8000Hz。相關(guān)運(yùn)算輸入數(shù)據(jù):每次運(yùn)算對(duì)輸入數(shù)據(jù)先提取l600個(gè)點(diǎn),并分離出這些數(shù)據(jù)的最后40個(gè)點(diǎn);然后對(duì)下一個(gè)輸入數(shù)據(jù)提取1600個(gè)點(diǎn),并把剛才取的40個(gè)點(diǎn)加在這1600個(gè)點(diǎn)后面組成l640長(zhǎng)度的數(shù)組,作為相關(guān)運(yùn)算的輸入。這樣做的原因是,最大限度地消除每次提取的l600個(gè)點(diǎn)相鄰部分的影響,提高相關(guān)輸出的精準(zhǔn)度。相關(guān)運(yùn)算的輸入數(shù)據(jù)都為浮點(diǎn)型,而通過(guò)MATLAB仿真計(jì)算出來(lái)的系數(shù)也都為小于l的浮點(diǎn)數(shù)。通過(guò)在C語(yǔ)言中調(diào)用匯編語(yǔ)言,在定點(diǎn)C5509中實(shí)現(xiàn)此浮點(diǎn)運(yùn)算,并輸出用800Hz相關(guān)運(yùn)算提取出的波形。

2.2 C5509中實(shí)現(xiàn)浮點(diǎn)運(yùn)算方法

此相關(guān)運(yùn)算的輸人是浮點(diǎn)型數(shù)據(jù),相關(guān)系數(shù)是小于1的單精度浮點(diǎn)型數(shù)。對(duì)于定點(diǎn)DSP,由于不能直接進(jìn)行浮點(diǎn)數(shù)的乘法運(yùn)算,因此必須對(duì)輸入數(shù)據(jù)進(jìn)行類型轉(zhuǎn)換。首先,相關(guān)運(yùn)算的輸入數(shù)據(jù)是FTSK浮點(diǎn)數(shù)據(jù)。在C語(yǔ)言中,單精度浮點(diǎn)數(shù)據(jù)是以IEEE754標(biāo)準(zhǔn)存儲(chǔ)的32位數(shù)據(jù),而C5509中C語(yǔ)言調(diào)用匯編語(yǔ)言,是通過(guò)寄存器AR0從C語(yǔ)言傳遞給匯編語(yǔ)言的是數(shù)據(jù)指針,這個(gè)指針是指向16位數(shù)據(jù)的,所以相關(guān)的輸入32位浮點(diǎn)數(shù)要先轉(zhuǎn)化為16位整型數(shù)據(jù)。本文這樣實(shí)現(xiàn):C程序中先把浮點(diǎn)數(shù)據(jù)乘以10后(提高運(yùn)算精度),強(qiáng)制類型轉(zhuǎn)化為整型數(shù)據(jù),然后把此16位數(shù)據(jù)的指針賦給調(diào)用匯編的入口參數(shù),即通過(guò)寄存器AR0傳遞到匯編程序中。然后,在匯編程序中,相關(guān)的系數(shù)是小于l的小數(shù);在DSP中,匯編語(yǔ)言直接定義的格式是將其轉(zhuǎn)換為16位二進(jìn)制2的補(bǔ)碼表示形式(例如0.8用8×32 768/lO來(lái)表示)。從匯編程序入口進(jìn)入的、經(jīng)過(guò)強(qiáng)制類型轉(zhuǎn)換的整型數(shù)據(jù)也是以16位二進(jìn)制形式存儲(chǔ)的,通過(guò)與16位的小數(shù)相乘得到的是32位數(shù),存儲(chǔ)在累加器A中。其中,前16位是運(yùn)算結(jié)果的整數(shù)部分,后16位是小數(shù)部分。由于從匯編語(yǔ)言程序返回C程序的參數(shù)是16位的,故取運(yùn)算結(jié)果的高16位(此前已經(jīng)把輸入數(shù)據(jù)乘以lO,最大限度地提高了運(yùn)算精度,這里直接取高16位)。把這16位數(shù)據(jù)返回C程序,得到整型數(shù)據(jù),再?gòu)?qiáng)制類型轉(zhuǎn)化為單精度浮點(diǎn)型數(shù)據(jù),再除以10,即得到了最后相關(guān)運(yùn)算的結(jié)果。經(jīng)實(shí)際運(yùn)算檢驗(yàn),通過(guò)這種方法在C5509里進(jìn)行浮點(diǎn)運(yùn)算,最終結(jié)果實(shí)現(xiàn)了很高的精度,而且通過(guò)調(diào)用匯編語(yǔ)言,極大地提高了運(yùn)算的效率。

2.3 仿真

實(shí)際在用戶板上用TI公司提供的CCS Emulator調(diào)試程序,實(shí)現(xiàn)了硬件仿真;而對(duì)此DSP算法來(lái)說(shuō),也可用TI公司提供的軟件仿真器(Simulator)實(shí)現(xiàn)軟件仿真。

TI公司提供的軟件CCS中有一項(xiàng)強(qiáng)大的探測(cè)點(diǎn)功能。它是一個(gè)開(kāi)發(fā)算法的工具,將計(jì)算機(jī)數(shù)據(jù)文件傳送到目標(biāo)板或計(jì)算機(jī)的緩沖區(qū)中提供DSP軟件應(yīng)用,而且可以通過(guò)CCS提供的圖形窗口觀察輸入/輸出數(shù)據(jù)波形。

本次算法設(shè)計(jì)中利用CCS的斷點(diǎn)和探測(cè)點(diǎn)進(jìn)行數(shù)據(jù)的輸入,利用圖形窗口觀察輸入/輸出的波形。

2.4 實(shí)際運(yùn)算的結(jié)果分析

從輸入波形可以看到,有4種不同的頻率,可以算出最低頻率是800 Hz,經(jīng)過(guò)800 Hz相關(guān)運(yùn)算得出的輸入波形與輸出波形對(duì)比如圖1所示。


在圖l中,可以看到輸入波形中頻率最低的波形。2個(gè)波峰時(shí)間差(即周期)是0.0054-0.00416=0.00124s,取倒數(shù)是806.45,所以此波形是800Hz部分;再看輸出波形,4個(gè)尖峰正好分別對(duì)應(yīng)輸入4個(gè)800 Hz頻率分量。如果在后面再加上低通濾波器。就可以濾出更平滑的曲線,如圖2所示。


2.5 測(cè)試程序運(yùn)行時(shí)間

CCS中提供了~種評(píng)價(jià)器(profiler)。它通過(guò)收集在指定代碼區(qū)間程序執(zhí)行的統(tǒng)計(jì)性能,確定程序中各段所花費(fèi)的處理器時(shí)間,從而識(shí)別并消除性能發(fā)揮的瓶頸,縮短程序的執(zhí)行時(shí)間,使程序更有效;利用評(píng)價(jià)器分析可以確定執(zhí)行某個(gè)特殊的函數(shù)花費(fèi)了多少個(gè)時(shí)鐘周期,以及對(duì)它調(diào)用的頻繁度等。

本設(shè)計(jì)中相關(guān)浮點(diǎn)運(yùn)算通過(guò)C語(yǔ)言編程和C、匯編語(yǔ)言混合編程兩種方式的對(duì)比,用CCS提供的評(píng)價(jià)器可以測(cè)出,調(diào)用匯編語(yǔ)言的方式比純C語(yǔ)言編程方式,速度提高了51.2%。

結(jié)語(yǔ)

在定點(diǎn)DSP中進(jìn)行浮點(diǎn)運(yùn)算,要經(jīng)過(guò)復(fù)雜的數(shù)據(jù)格式轉(zhuǎn)化,因此用定點(diǎn)DSP取代浮點(diǎn)DSP,在降低設(shè)備成本的情況下,必定會(huì)提高研發(fā)的成本。

如果直接把IEEE754標(biāo)準(zhǔn)的32位單精度浮點(diǎn)數(shù)據(jù)轉(zhuǎn)化為16位整型數(shù),要經(jīng)過(guò)相當(dāng)復(fù)雜的過(guò)程,在滿足一定精度的前提下,可以使用本文的轉(zhuǎn)化方式。使用C語(yǔ)言和匯編語(yǔ)言混合編程的方法,達(dá)到了大大提高運(yùn)算效率的目的,不失為很靈活的編程方法。

發(fā)布者:小宇

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: 驅(qū)動(dòng)電源

在工業(yè)自動(dòng)化蓬勃發(fā)展的當(dāng)下,工業(yè)電機(jī)作為核心動(dòng)力設(shè)備,其驅(qū)動(dòng)電源的性能直接關(guān)系到整個(gè)系統(tǒng)的穩(wěn)定性和可靠性。其中,反電動(dòng)勢(shì)抑制與過(guò)流保護(hù)是驅(qū)動(dòng)電源設(shè)計(jì)中至關(guān)重要的兩個(gè)環(huán)節(jié),集成化方案的設(shè)計(jì)成為提升電機(jī)驅(qū)動(dòng)性能的關(guān)鍵。

關(guān)鍵字: 工業(yè)電機(jī) 驅(qū)動(dòng)電源

LED 驅(qū)動(dòng)電源作為 LED 照明系統(tǒng)的 “心臟”,其穩(wěn)定性直接決定了整個(gè)照明設(shè)備的使用壽命。然而,在實(shí)際應(yīng)用中,LED 驅(qū)動(dòng)電源易損壞的問(wèn)題卻十分常見(jiàn),不僅增加了維護(hù)成本,還影響了用戶體驗(yàn)。要解決這一問(wèn)題,需從設(shè)計(jì)、生...

關(guān)鍵字: 驅(qū)動(dòng)電源 照明系統(tǒng) 散熱

根據(jù)LED驅(qū)動(dòng)電源的公式,電感內(nèi)電流波動(dòng)大小和電感值成反比,輸出紋波和輸出電容值成反比。所以加大電感值和輸出電容值可以減小紋波。

關(guān)鍵字: LED 設(shè)計(jì) 驅(qū)動(dòng)電源

電動(dòng)汽車(EV)作為新能源汽車的重要代表,正逐漸成為全球汽車產(chǎn)業(yè)的重要發(fā)展方向。電動(dòng)汽車的核心技術(shù)之一是電機(jī)驅(qū)動(dòng)控制系統(tǒng),而絕緣柵雙極型晶體管(IGBT)作為電機(jī)驅(qū)動(dòng)系統(tǒng)中的關(guān)鍵元件,其性能直接影響到電動(dòng)汽車的動(dòng)力性能和...

關(guān)鍵字: 電動(dòng)汽車 新能源 驅(qū)動(dòng)電源

在現(xiàn)代城市建設(shè)中,街道及停車場(chǎng)照明作為基礎(chǔ)設(shè)施的重要組成部分,其質(zhì)量和效率直接關(guān)系到城市的公共安全、居民生活質(zhì)量和能源利用效率。隨著科技的進(jìn)步,高亮度白光發(fā)光二極管(LED)因其獨(dú)特的優(yōu)勢(shì)逐漸取代傳統(tǒng)光源,成為大功率區(qū)域...

關(guān)鍵字: 發(fā)光二極管 驅(qū)動(dòng)電源 LED

LED通用照明設(shè)計(jì)工程師會(huì)遇到許多挑戰(zhàn),如功率密度、功率因數(shù)校正(PFC)、空間受限和可靠性等。

關(guān)鍵字: LED 驅(qū)動(dòng)電源 功率因數(shù)校正

在LED照明技術(shù)日益普及的今天,LED驅(qū)動(dòng)電源的電磁干擾(EMI)問(wèn)題成為了一個(gè)不可忽視的挑戰(zhàn)。電磁干擾不僅會(huì)影響LED燈具的正常工作,還可能對(duì)周圍電子設(shè)備造成不利影響,甚至引發(fā)系統(tǒng)故障。因此,采取有效的硬件措施來(lái)解決L...

關(guān)鍵字: LED照明技術(shù) 電磁干擾 驅(qū)動(dòng)電源

開(kāi)關(guān)電源具有效率高的特性,而且開(kāi)關(guān)電源的變壓器體積比串聯(lián)穩(wěn)壓型電源的要小得多,電源電路比較整潔,整機(jī)重量也有所下降,所以,現(xiàn)在的LED驅(qū)動(dòng)電源

關(guān)鍵字: LED 驅(qū)動(dòng)電源 開(kāi)關(guān)電源

LED驅(qū)動(dòng)電源是把電源供應(yīng)轉(zhuǎn)換為特定的電壓電流以驅(qū)動(dòng)LED發(fā)光的電壓轉(zhuǎn)換器,通常情況下:LED驅(qū)動(dòng)電源的輸入包括高壓工頻交流(即市電)、低壓直流、高壓直流、低壓高頻交流(如電子變壓器的輸出)等。

關(guān)鍵字: LED 隧道燈 驅(qū)動(dòng)電源
關(guān)閉