一種新DCS 模擬量數(shù)據(jù)的分部壓縮方法-基礎電子_第1頁
一種新DCS 模擬量數(shù)據(jù)的分部壓縮方法-基礎電子_第2頁
一種新DCS 模擬量數(shù)據(jù)的分部壓縮方法-基礎電子_第3頁
一種新DCS 模擬量數(shù)據(jù)的分部壓縮方法-基礎電子_第4頁
一種新DCS 模擬量數(shù)據(jù)的分部壓縮方法-基礎電子_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

精品文檔-下載后可編輯一種新DCS模擬量數(shù)據(jù)的分部壓縮方法-基礎電子導讀:傳統(tǒng)壓縮方法對DCS模擬量進行壓縮效果不佳。要得到較好的壓縮效果就要從模擬量在計算機中表示的方法入手。本文分析了DCS模擬量在計算機中存儲和表示方法及其特點,對原始數(shù)據(jù)進行預處理,使數(shù)據(jù)表現(xiàn)出較明顯的冗余信息,然后對數(shù)據(jù)的不同部分,采用不同的壓縮方法,每種壓縮算法壓縮模擬量數(shù)據(jù)的一部分。

與DCS接口中,串行通訊是常見的接口方式。為了提高通訊效率,需要對通訊的數(shù)據(jù)進行壓縮處理。DCS模擬量的壓縮方法中,常用整數(shù)表示工程量,即將模擬量的按其量程線性化處理為兩字節(jié)正整數(shù)(0~65535),應用時再轉(zhuǎn)換為工程量。這種方法由于要維護模擬量的量程表,不便于通信;另一類常用的壓縮方法是采用LZW等基于字典模型的壓縮算法。模擬量數(shù)據(jù)是以單精度浮點數(shù)存放的,數(shù)據(jù)的冗余度很小,傳統(tǒng)的壓縮處理方法的壓縮效果都不理想。

本文從模擬量在計算機中的表示方法入手,首先將模擬量預處理,再針對數(shù)據(jù)的不同部分采用不同的方法進行壓縮,將壓縮后數(shù)據(jù)組合起來。這樣既充分考慮到了數(shù)據(jù)的特點,又充分利用了壓縮方法的適應性。

1模擬量的表示方法及特點

1.1模擬量的表示方法

DCS模擬量用單精度浮點數(shù)表示,占用4個字節(jié),可以到7位有效數(shù)字。按文獻[3]標準(以下簡稱標準)表示。設一個浮點數(shù)R,可使用三元組{S,E,M}來表示:S為符號位,用1位表示。

S=0表示R為正數(shù),S=1表示R為負數(shù);E為指數(shù),用8bits表示。實際指數(shù)要經(jīng)E-127計算后得到;M為尾數(shù),用23bits表示。浮點數(shù)R為S×1.ME(1為隱含的一位尾數(shù),不在M中表示)。

1.2模擬量的特點

數(shù)據(jù)壓縮需要信息有足夠的冗余度。以標準表示的模擬量不利于壓縮。即便差值很小的數(shù)據(jù),在計算機中表示結(jié)果差別很大,如1234.5在計算機中用四字節(jié)表示為:68154800,而1234.6表示為:681548351,僅有符號位和指數(shù)位表示相同,尾數(shù)完全不同,這樣就造成了壓縮的難度。

現(xiàn)以200個模擬量數(shù)據(jù)為樣本分析其特點。樣本數(shù)據(jù)隨機產(chǎn)生,其范圍為[0.0,1000.0].按照標準存儲的數(shù)據(jù)從字符概率分布較平均,若用通用數(shù)據(jù)壓縮方法壓縮這些數(shù)據(jù),得不到很好的效果。

雖然浮點數(shù)的信息冗余度很小,但若用其表示DCS模擬量,仍有以下特點:

(1)各工程量數(shù)值多數(shù)大于零,因此標準表示中,符號位S大多為零;

(2)各工程量的量程相差約為0.0001~10000倍,因此標準表示中,指數(shù)差值約為-4~4;

(3)從數(shù)據(jù)精度考慮,工程量一般保留5位有效數(shù)字即可。因此標準表示中,尾數(shù)部分有可壓縮的信息。

2模擬量的預處理

模擬量預處理的目的是為了產(chǎn)生更多的冗余信息,獲得更好的壓縮效果。通信時一般將模擬量按測點表以自然順序排列。根據(jù)1.2節(jié)的分析可知,若將模擬量按其三元組順序排列,即:N個模擬量數(shù)據(jù),其自然排列順序為{S1,E1,M1}、{S2,E2,M2}、…、{SN,EN,MN},共占用4N字節(jié)。壓縮前將模擬量序列按字節(jié)重新排列為:

S1S2…SNE1E2…ENM1M2…MN.因符號位S為1位,重新排列后將8個模擬量的符號位合并為1字節(jié)。故重新排列后N個模擬量共占用字節(jié)數(shù)為4N+N/8(+1)字節(jié)。(括號中+1字節(jié)表示N不是8的整數(shù)倍時總字節(jié)數(shù)+1)。

圖1(a)為樣本數(shù)據(jù)經(jīng)重新排列后字節(jié)分布情況??梢钥闯鰯?shù)據(jù)已呈現(xiàn)明顯的規(guī)律性:部分數(shù)據(jù)[1,25]為數(shù)據(jù)的符號,是樣本數(shù)據(jù)的符號。樣本數(shù)據(jù)均為正,因此由符號位構(gòu)成的這部分數(shù)據(jù)全為零;第二部分數(shù)據(jù)[26,225]為N個樣本數(shù)據(jù)的指數(shù),根據(jù)1.2節(jié)分析可知,各數(shù)據(jù)的指數(shù)差值大約在-4~4之間,故有較大的壓縮空間;一部分數(shù)據(jù)[226,825]為N個樣本的尾數(shù),呈隨機分布。

次預處理是數(shù)據(jù)無損的。考慮到DCS模擬量精度要求有5位有效數(shù)字即可。根據(jù)信息理論,1位十進制數(shù)可以表示log210≈3.32位二進制數(shù)。單精度浮點數(shù)表示模擬量時,4位二進制約可表示1位十進制。因此,在精度滿足DCS系統(tǒng)要求的情況下,可以減少一個字節(jié)尾數(shù)。第二次預處理將尾數(shù)的字節(jié)置零,進一步提高數(shù)據(jù)的冗余信息。圖1(b)為第二次預處理后的字節(jié)分布情況??梢钥闯觯啾却晤A處理,數(shù)據(jù)一部分[626,825]全為零,可以更好地被壓縮。

3壓縮算法的選擇

3.1壓縮算法選擇原則

壓縮算法要根據(jù)原始數(shù)據(jù)的特點以及對速度、性能的綜合要求來選擇。模擬量的壓縮應用在數(shù)據(jù)通信中,對速度的要求較高。

因此壓縮算法不能過于復雜,運算量要小。

從預處理后的樣本數(shù)據(jù)可以看出,每一部分數(shù)據(jù)的特點不同,因此選擇壓縮算法時應針對不同特點的數(shù)據(jù)采用不同的壓縮算法來處理。部分數(shù)據(jù)(由符號位組成)為零(或絕大部分為零),可以采用游程編碼(RunLengthEncoding);第二部分數(shù)據(jù)(由指數(shù)組成)數(shù)值間相差不大,可用差分編碼(DifferentialEncoding);第三部分數(shù)據(jù)(由部分尾數(shù)組成)隨機性較大,壓縮效果不明顯,因此不進行壓縮;第四部分數(shù)據(jù)(由字節(jié)尾數(shù)組成)均為零,可采用游程編碼。

3.2差分編碼

差分編碼又稱相關編碼。當源數(shù)據(jù)之間差值不大時,用數(shù)據(jù)間的差值代替源數(shù)據(jù)序列。較小的差值可以用較少的位數(shù)表示。本文用4位二進制表示一個差值。

源數(shù)據(jù)中序列E1E2…EN為數(shù)據(jù)的指數(shù),其差值約在-4~4之間,用4位二進制表示此差值:位用來表示差值的符號,其余三位表示差值,-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é),實際壓縮率為88.0%.

3.3游程編碼

游程編碼的思路是:若數(shù)據(jù)項d在源數(shù)據(jù)中連續(xù)出現(xiàn)n次(n稱為重復因子),則在輸出流中以nd代替n個重復項d.游程編碼也可能出現(xiàn)壓縮比大于1的情況。為了區(qū)分輸出項是重復因子還是被壓縮數(shù)據(jù),規(guī)定當重復因子n≥3時,輸出ddd(n-3);n3時,輸出n個d,即不壓縮輸出。另外重復因子3≤n≤255,若數(shù)據(jù)項d重復次數(shù)大于255,則要重新進行游程編碼。設源數(shù)據(jù)長度為N,包含M次重復,每次重復平均長度L,則游程編碼壓縮比為1:(N-M×(L-4))/N.

樣本數(shù)據(jù)經(jīng)預處理后部分(由符號位組成)和第四部分(由位尾數(shù)組成)可以用游程編碼。這部分數(shù)據(jù)可以獲得很高的壓縮比。部分理想壓縮比為1:4/25=1:0.16;第四部分理想壓縮比為1:4/200=1:0.015.

圖3為經(jīng)游程編碼壓縮后的數(shù)據(jù)分布圖。由上差分編碼壓縮后的726字節(jié)壓縮至510字節(jié),實際壓縮比為1:0.70.

4結(jié)論

200個樣本數(shù)據(jù)經(jīng)預處理,對一部分數(shù)據(jù)進行差分編碼、對另一部分數(shù)據(jù)進行游程編碼,終有510個字節(jié)。因此綜合壓縮比為1:510/800≈1:0.64,節(jié)省約36%的空間。由于樣本數(shù)據(jù)的隨機性,因此可以推廣到一般情況。得到以下結(jié)論:

(1)分部壓縮方法可以獲

溫馨提示

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

評論

0/150

提交評論