




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
精品文檔-下載后可編輯一種新DCS模擬量數(shù)據(jù)的分部壓縮方法-基礎(chǔ)電子導(dǎo)讀:傳統(tǒng)壓縮方法對(duì)DCS模擬量進(jìn)行壓縮效果不佳。要得到較好的壓縮效果就要從模擬量在計(jì)算機(jī)中表示的方法入手。本文分析了DCS模擬量在計(jì)算機(jī)中存儲(chǔ)和表示方法及其特點(diǎn),對(duì)原始數(shù)據(jù)進(jìn)行預(yù)處理,使數(shù)據(jù)表現(xiàn)出較明顯的冗余信息,然后對(duì)數(shù)據(jù)的不同部分,采用不同的壓縮方法,每種壓縮算法壓縮模擬量數(shù)據(jù)的一部分。
與DCS接口中,串行通訊是常見的接口方式。為了提高通訊效率,需要對(duì)通訊的數(shù)據(jù)進(jìn)行壓縮處理。DCS模擬量的壓縮方法中,常用整數(shù)表示工程量,即將模擬量的按其量程線性化處理為兩字節(jié)正整數(shù)(0~65535),應(yīng)用時(shí)再轉(zhuǎn)換為工程量。這種方法由于要維護(hù)模擬量的量程表,不便于通信;另一類常用的壓縮方法是采用LZW等基于字典模型的壓縮算法。模擬量數(shù)據(jù)是以單精度浮點(diǎn)數(shù)存放的,數(shù)據(jù)的冗余度很小,傳統(tǒng)的壓縮處理方法的壓縮效果都不理想。
本文從模擬量在計(jì)算機(jī)中的表示方法入手,首先將模擬量預(yù)處理,再針對(duì)數(shù)據(jù)的不同部分采用不同的方法進(jìn)行壓縮,將壓縮后數(shù)據(jù)組合起來。這樣既充分考慮到了數(shù)據(jù)的特點(diǎn),又充分利用了壓縮方法的適應(yīng)性。
1模擬量的表示方法及特點(diǎn)
1.1模擬量的表示方法
DCS模擬量用單精度浮點(diǎn)數(shù)表示,占用4個(gè)字節(jié),可以到7位有效數(shù)字。按文獻(xiàn)[3]標(biāo)準(zhǔn)(以下簡稱標(biāo)準(zhǔn))表示。設(shè)一個(gè)浮點(diǎn)數(shù)R,可使用三元組{S,E,M}來表示:S為符號(hào)位,用1位表示。
S=0表示R為正數(shù),S=1表示R為負(fù)數(shù);E為指數(shù),用8bits表示。實(shí)際指數(shù)要經(jīng)E-127計(jì)算后得到;M為尾數(shù),用23bits表示。浮點(diǎn)數(shù)R為S×1.ME(1為隱含的一位尾數(shù),不在M中表示)。
1.2模擬量的特點(diǎn)
數(shù)據(jù)壓縮需要信息有足夠的冗余度。以標(biāo)準(zhǔn)表示的模擬量不利于壓縮。即便差值很小的數(shù)據(jù),在計(jì)算機(jī)中表示結(jié)果差別很大,如1234.5在計(jì)算機(jī)中用四字節(jié)表示為:68154800,而1234.6表示為:681548351,僅有符號(hào)位和指數(shù)位表示相同,尾數(shù)完全不同,這樣就造成了壓縮的難度。
現(xiàn)以200個(gè)模擬量數(shù)據(jù)為樣本分析其特點(diǎn)。樣本數(shù)據(jù)隨機(jī)產(chǎn)生,其范圍為[0.0,1000.0].按照標(biāo)準(zhǔn)存儲(chǔ)的數(shù)據(jù)從字符概率分布較平均,若用通用數(shù)據(jù)壓縮方法壓縮這些數(shù)據(jù),得不到很好的效果。
雖然浮點(diǎn)數(shù)的信息冗余度很小,但若用其表示DCS模擬量,仍有以下特點(diǎn):
(1)各工程量數(shù)值多數(shù)大于零,因此標(biāo)準(zhǔn)表示中,符號(hào)位S大多為零;
(2)各工程量的量程相差約為0.0001~10000倍,因此標(biāo)準(zhǔn)表示中,指數(shù)差值約為-4~4;
(3)從數(shù)據(jù)精度考慮,工程量一般保留5位有效數(shù)字即可。因此標(biāo)準(zhǔn)表示中,尾數(shù)部分有可壓縮的信息。
2模擬量的預(yù)處理
模擬量預(yù)處理的目的是為了產(chǎn)生更多的冗余信息,獲得更好的壓縮效果。通信時(shí)一般將模擬量按測點(diǎn)表以自然順序排列。根據(jù)1.2節(jié)的分析可知,若將模擬量按其三元組順序排列,即:N個(gè)模擬量數(shù)據(jù),其自然排列順序?yàn)閧S1,E1,M1}、{S2,E2,M2}、…、{SN,EN,MN},共占用4N字節(jié)。壓縮前將模擬量序列按字節(jié)重新排列為:
S1S2…SNE1E2…ENM1M2…MN.因符號(hào)位S為1位,重新排列后將8個(gè)模擬量的符號(hào)位合并為1字節(jié)。故重新排列后N個(gè)模擬量共占用字節(jié)數(shù)為4N+N/8(+1)字節(jié)。(括號(hào)中+1字節(jié)表示N不是8的整數(shù)倍時(shí)總字節(jié)數(shù)+1)。
圖1(a)為樣本數(shù)據(jù)經(jīng)重新排列后字節(jié)分布情況??梢钥闯鰯?shù)據(jù)已呈現(xiàn)明顯的規(guī)律性:部分?jǐn)?shù)據(jù)[1,25]為數(shù)據(jù)的符號(hào),是樣本數(shù)據(jù)的符號(hào)。樣本數(shù)據(jù)均為正,因此由符號(hào)位構(gòu)成的這部分?jǐn)?shù)據(jù)全為零;第二部分?jǐn)?shù)據(jù)[26,225]為N個(gè)樣本數(shù)據(jù)的指數(shù),根據(jù)1.2節(jié)分析可知,各數(shù)據(jù)的指數(shù)差值大約在-4~4之間,故有較大的壓縮空間;一部分?jǐn)?shù)據(jù)[226,825]為N個(gè)樣本的尾數(shù),呈隨機(jī)分布。
次預(yù)處理是數(shù)據(jù)無損的。考慮到DCS模擬量精度要求有5位有效數(shù)字即可。根據(jù)信息理論,1位十進(jìn)制數(shù)可以表示log210≈3.32位二進(jìn)制數(shù)。單精度浮點(diǎn)數(shù)表示模擬量時(shí),4位二進(jìn)制約可表示1位十進(jìn)制。因此,在精度滿足DCS系統(tǒng)要求的情況下,可以減少一個(gè)字節(jié)尾數(shù)。第二次預(yù)處理將尾數(shù)的字節(jié)置零,進(jìn)一步提高數(shù)據(jù)的冗余信息。圖1(b)為第二次預(yù)處理后的字節(jié)分布情況。可以看出,相比次預(yù)處理,數(shù)據(jù)一部分[626,825]全為零,可以更好地被壓縮。
3壓縮算法的選擇
3.1壓縮算法選擇原則
壓縮算法要根據(jù)原始數(shù)據(jù)的特點(diǎn)以及對(duì)速度、性能的綜合要求來選擇。模擬量的壓縮應(yīng)用在數(shù)據(jù)通信中,對(duì)速度的要求較高。
因此壓縮算法不能過于復(fù)雜,運(yùn)算量要小。
從預(yù)處理后的樣本數(shù)據(jù)可以看出,每一部分?jǐn)?shù)據(jù)的特點(diǎn)不同,因此選擇壓縮算法時(shí)應(yīng)針對(duì)不同特點(diǎn)的數(shù)據(jù)采用不同的壓縮算法來處理。部分?jǐn)?shù)據(jù)(由符號(hào)位組成)為零(或絕大部分為零),可以采用游程編碼(RunLengthEncoding);第二部分?jǐn)?shù)據(jù)(由指數(shù)組成)數(shù)值間相差不大,可用差分編碼(DifferentialEncoding);第三部分?jǐn)?shù)據(jù)(由部分尾數(shù)組成)隨機(jī)性較大,壓縮效果不明顯,因此不進(jìn)行壓縮;第四部分?jǐn)?shù)據(jù)(由字節(jié)尾數(shù)組成)均為零,可采用游程編碼。
3.2差分編碼
差分編碼又稱相關(guān)編碼。當(dāng)源數(shù)據(jù)之間差值不大時(shí),用數(shù)據(jù)間的差值代替源數(shù)據(jù)序列。較小的差值可以用較少的位數(shù)表示。本文用4位二進(jìn)制表示一個(gè)差值。
源數(shù)據(jù)中序列E1E2…EN為數(shù)據(jù)的指數(shù),其差值約在-4~4之間,用4位二進(jìn)制表示此差值:位用來表示差值的符號(hào),其余三位表示差值,-7保留??杀硎镜牟钪捣秶鸀?6~+7;若差值大于此范圍,則不壓縮,用原碼輸出。為了區(qū)分是差值輸出還是原碼輸出,用保留的-7表示下一字節(jié)為原碼輸出。N字節(jié)源序列,若每一字節(jié)都可以用相鄰差值來表示,其理想壓縮比為1:(N/2+1)/N=1:0.5+1/N.
圖2為樣本數(shù)據(jù)差分編碼壓縮后字節(jié)分布。可以看到,源數(shù)據(jù)中表示指數(shù)的部分已經(jīng)被有效壓縮。樣本數(shù)據(jù)由825字節(jié)壓縮到726字節(jié),實(shí)際壓縮率為88.0%.
3.3游程編碼
游程編碼的思路是:若數(shù)據(jù)項(xiàng)d在源數(shù)據(jù)中連續(xù)出現(xiàn)n次(n稱為重復(fù)因子),則在輸出流中以nd代替n個(gè)重復(fù)項(xiàng)d.游程編碼也可能出現(xiàn)壓縮比大于1的情況。為了區(qū)分輸出項(xiàng)是重復(fù)因子還是被壓縮數(shù)據(jù),規(guī)定當(dāng)重復(fù)因子n≥3時(shí),輸出ddd(n-3);n3時(shí),輸出n個(gè)d,即不壓縮輸出。另外重復(fù)因子3≤n≤255,若數(shù)據(jù)項(xiàng)d重復(fù)次數(shù)大于255,則要重新進(jìn)行游程編碼。設(shè)源數(shù)據(jù)長度為N,包含M次重復(fù),每次重復(fù)平均長度L,則游程編碼壓縮比為1:(N-M×(L-4))/N.
樣本數(shù)據(jù)經(jīng)預(yù)處理后部分(由符號(hào)位組成)和第四部分(由位尾數(shù)組成)可以用游程編碼。這部分?jǐn)?shù)據(jù)可以獲得很高的壓縮比。部分理想壓縮比為1:4/25=1:0.16;第四部分理想壓縮比為1:4/200=1:0.015.
圖3為經(jīng)游程編碼壓縮后的數(shù)據(jù)分布圖。由上差分編碼壓縮后的726字節(jié)壓縮至510字節(jié),實(shí)際壓縮比為1:0.70.
4結(jié)論
200個(gè)樣本數(shù)據(jù)經(jīng)預(yù)處理,對(duì)一部分?jǐn)?shù)據(jù)進(jìn)行差分編碼、對(duì)另一部分?jǐn)?shù)據(jù)進(jìn)行游程編碼,終有510個(gè)字節(jié)。因此綜合壓縮比為1:510/800≈1:0.64,節(jié)省約36%的空間。由于樣本數(shù)據(jù)的隨機(jī)性,因此可以推廣到一般情況。得到以下結(jié)論:
(1)分部壓縮方法可以獲
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 保險(xiǎn)公司上門維修合同范本
- 涼山項(xiàng)目保潔合同范本
- 光伏 安裝合同范本
- 出售豬籠車廂合同范本
- 一個(gè)人房子出售合同范本
- 農(nóng)機(jī)銷售合同范本
- 公司合同范本模板
- 不可抗力 合同范本
- 代理加盟協(xié)議合同范本
- 農(nóng)村衛(wèi)浴維修合同范本
- 畢業(yè)設(shè)計(jì)鋼筋彎曲機(jī)的結(jié)構(gòu)設(shè)計(jì)
- 工程結(jié)構(gòu)質(zhì)量特色介紹
- 巴馬格紡絲控制系統(tǒng)軟件說明書(共46頁)
- 肺結(jié)核患者管理ppt課件
- 清華大學(xué)MBA課程——運(yùn)籌學(xué)
- 《計(jì)量經(jīng)濟(jì)學(xué)》超全題庫及答案(完整版)
- 濕法冶金浸出凈化和沉積PPT課件
- 生產(chǎn)現(xiàn)場作業(yè)十不干PPT課件
- 雨污水管網(wǎng)勞務(wù)施工分包合同
- 通信桿路工程施工
- 初中物理光學(xué)經(jīng)典題(共23頁)
評(píng)論
0/150
提交評(píng)論