JP3593244B2 - Data compression device - Google Patents

Data compression device Download PDF

Info

Publication number
JP3593244B2
JP3593244B2 JP26445797A JP26445797A JP3593244B2 JP 3593244 B2 JP3593244 B2 JP 3593244B2 JP 26445797 A JP26445797 A JP 26445797A JP 26445797 A JP26445797 A JP 26445797A JP 3593244 B2 JP3593244 B2 JP 3593244B2
Authority
JP
Japan
Prior art keywords
node
dictionary
data
level
link information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP26445797A
Other languages
Japanese (ja)
Other versions
JPH11110187A (en
Inventor
修 萬羽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharp Corp
Original Assignee
Sharp Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sharp Corp filed Critical Sharp Corp
Priority to JP26445797A priority Critical patent/JP3593244B2/en
Publication of JPH11110187A publication Critical patent/JPH11110187A/en
Application granted granted Critical
Publication of JP3593244B2 publication Critical patent/JP3593244B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、連続するデータを圧縮するデータ圧縮装置、特にデータ通信などのために、リアルタイムで文字列データなどを圧縮伸長するシステムのためのデータ圧縮装置に関する。
【0002】
【従来の技術】
従来から、データ通信の分野では、CCITTと略称される国際電信電話諮問委員会からのVシリーズ勧告に基づくデータ回線終端装置(DCE)がモデムとして用いられている。図5は、CCITT勧告V.42bisに基づくデータ圧縮機能とエラー訂正制御機能とを有するデータ回線終端装置1の概略的な構成を示す。データ回線終端端装置1は、ワークステーションやパーソナルコンピュータなどのデータ終端装置2と、公衆電話網3との間に設けられる。DTEと略称されるデータ終端装置2との接続は、相互接続回路4を介して行われる。公衆電話網3との間の信号の変換は、信号変換部5によって行われる。エラー訂正およびデータ圧縮は、制御部6によって制御されるエラー訂正部7およびデータ圧縮部8によってそれぞれ行われる。
【0003】
データ圧縮部8は、辞書9を有し、文字列の符号化による圧縮と、符号化されたデータの復号による伸長とを行う。
【0004】
図6は、辞書9のデータ構造を示す。辞書9はツリー構造10によって表現される。このツリー構造10は、複数の節点を有し、アルファベットA,B,C,D,…に対応するルート節点11a,11b,11c,11d,…が最上位となって、複数の節点が連なって文字列を表現する。図6は、「A」、「B」、「BA」、「BAG」、「BAR」、「BAT」、「BI」、「BIN」、「C」、「D」、「DE」、「DO」および「DOG」の各文字列を表現している状態を示す。節点12ba,12bi,12doは、ツリー構造10の途中にあり、文字列の最後の文字を示すリーフ節点12de,13bag,13bar,13bat,13bin,13dogは中間の節点12ba,12bi,12doよりも下位レベルの階層にある。各節点には、節点を識別するための符号語が割当てられる。このツリー構造10の辞書9の内容は、公衆電話網3を介してデータ通信を行う相手側の辞書9における符号語の割当てと一致させる。
【0005】
図6(b)に示すように、一般に、ツリー構造10の途中にある節点14に対しては、1つの親15と1または複数の子16が存在する。図6(a)に示すルート節点11a〜11dに対しては親は存在しない。またルート節点11a,11cは子も存在せず、独立した節点となっている。したがって、図6(b)に示すツリー構造10上の各節点14では、自己に対応する符号語と、自己に対応する文字と、親15の符号語と、子供16の有無を示す情報とを備えている必要がある。
【0006】
図7は、CCITT勧告V.42bisに従って文字列検索を行って圧縮する手順を示す。ステップa0から手順を開始し、ステップa1では文字列の最初の文字に対応するルート節点の情報を獲得する。ステップa2では対象とする節点に対し、子供となる節点が存在しているか否かを判断する。子供が存在していると判定されれば、ツリー構造10でこの節点から次の符号語の情報を獲得する。ステップa4では、獲得された次の符号語の情報のうち、文字が一致するか否かを判断する。文字が一致するときには、ステップa2に戻り、さらに子供の有無を判断する。ステップa4で文字が一致しないときには、ステップa5で子供となる節点についての辞書の範囲を一周しているか否かを判断する。一周していないと判断されるときには、ステップa3に戻り、次の子供の符号語の情報を獲得する。ステップa5で辞書を一周して、文字が一致する子供の符号語がないと判断されるときには、ステップa6で、一致しない文字を辞書に追加する処理を行う。ステップa2で子供がいないと判断されるときには、ステップa8で文字の辞書への追加を行う。ステップa6またはステップa7の辞書への追加が終了すると、ステップa8で文字列が一致した範囲の符号語の出力を行い、ステップa9で手順を終了する。
【0007】
図7の手順に従って、データ通信用の信号ストリームを圧縮する典型的な先行技術は、たとえば特公平5−68893に開示されている。また辞書を用いてデータ圧縮を行う考え方は、特開昭60−241157、特開昭61−232724、特開平1−102613、特開平2−144661、特開平3−038772、特開平4−116690、特開平4−123619、特開平4−217021、特開平4−223556、特開平4−340156および特開平7−23238などにも開示されている。
【0008】
【発明が解決しようとする課題】
従来からの図6に示すようなツリー構造10の辞書は、各節点の親となる節点へのリンクでツリー構造10を表現しているので、文字列検索時には辞書内に記憶されている符号語を端から端まで確認する必要があり、時間がかかっている。そのためリアルタイム処理を行う場合には、高速な演算装置等が必要となる。
【0009】
本発明の目的は、CCITTの勧告V.42bis等の圧縮伸長処理に高速な演算装置等を必要とせず、辞書構造の変更による記憶容量の増加を可能な限り抑えることができる辞書構造を有するデータ圧縮装置を提供することである。
【0010】
【課題を解決するための手段】
本発明は、入力されるデータ列の圧縮伸長用に、予め設定される規格に従うツリー構造を有し、最上位レベルの節点から各節点までの経路に応じて見出しデータが表現され、各節点毎に上位レベルの節点に対するリンク情報と下位レベルの節点の有無情報とを有する辞書を検索し、見出しデータに一致する入力データの部分列の符号化と、見出しデータに一致しない入力データの辞書への追加とを繰返すデータ圧縮装置において、
辞書の各節点には、自分のレベルの次のレベルでの最初の節点、および自分と同一のレベルでの次の節点へのリンク情報が付加されており、
付加されたリンク情報も使用して辞書の検索を行う辞書検索手段と、
入力データの辞書への追加の際に、予め定められる範囲の複数レベルで、節点に対するリンク情報を付加するリンク付加手段とを含むことを特徴とするデータ圧縮装置である。
【0011】
本発明に従えば、ツリー構造の辞書の最上位レベルの節点から各節点までの経路に応じて見出しデータが表現され、入力されるデータ列が見出しデータに一致する範囲で符号化されてデータ圧縮が行われる。辞書の各節点には、自分のレベルの次のレベルでの最初の節点、および自分と同一のレベルでの次の節点へのリンク情報が付加され、辞書検索手段は付加されたリンク情報も使用して辞書の検索を行うので、データ列が辞書に記憶されている見出しデータに一致するか否かの判断を行う際の検索時間を短縮することができる。リンク付加手段は、入力データの辞書への追加の際に、予め定められる範囲の複数レベルで節点に対するリンク情報を付加するので、追加されたデータを含む見出しデータの検索でも、付加されたリンク情報を用いて迅速な検索を行うことができる。辞書の検索が高速化されるので、高速な演算装置等を必要とせずに圧縮伸長処理を高速化することができる。ツリー構造の辞書に対して付加するリンク情報を少なくすることができるので、辞書の記憶容量の増大を抑えることができる。
【0012】
また本発明で前記データ列は、データ通信用の文字列であり、
前記予め設定される規格に従って、前記辞書を用いて文字列を符号化して通信路に送信し、通信路から受信される信号を辞書を用いて復号化する処理手段を備えることを特徴とする。
【0013】
本発明に従えば、データ通信の際に、文字列を圧縮伸長するための辞書の検索が高速となり、高速度の通信速度に対しても辞書を用いる圧縮伸長処理を充分に対応させることができる。
【0014】
また本発明で前記付加されるリンク情報は、
ツリー構造で親となる上位レベルの節点から最初に追加された下位レベルの子である長男の節点へのリンク情報と、
同一の節点を親として共有する同一レベルの節点間で、追加された順序が連続し、先行する兄の節点から後続の弟の節点へのリンク情報とであることを特徴とする。
【0015】
本発明に従えば、親から長男へのリンク情報と、兄弟間で兄から弟へのリンク情報とが付加されるので、文字列の検索の際に次の節点を探す時間が短縮され、迅速な検索を行うことができ、圧縮または伸長に要する時間の短縮を図ることができる。
【0016】
また本発明で前記予め設定される規格は、国際電信電話諮問委員会の勧告V.42bisであることを特徴とする。
【0017】
本発明に従えば、国際電信電話諮問委員会の勧告V.42bisに基づくデータ圧縮を、辞書の検索時間を短縮して高速化することができる。
【0018】
【発明の実施の形態】
図1は、本発明の実施の一形態としてのデータ回線終端装置21の概略的な電気的構成を示す。データ回線終端装置21は、DCEとして、DTEであるデータ終端装置22と公衆電話網23との間に設けられる。データ終端装置22は、パーソナルコンピュータやPEDと称される各種形態情報端末装置などである。公衆電話網23は、公衆電話回線やISDN、あるいはPHSなどの無線公衆電話網である。
【0019】
データ回線終端装置21には、データ終端装置22との間に相互接続回路24、公衆電話網23との間に信号変換部25、内部の制御用に制御部26、エラー訂正用にエラー訂正部27、およびデータの圧縮伸長用にデータ圧縮部28を含む。データ圧縮部28は、ツリー構造の辞書29、辞書検索手段30およびリンク付加手段31を含む。
【0020】
図2は、図1の辞書29の基本的なツリー構造40を示す。図2(a)は、ツリー構造40の表現例を示し、図2(b)は各節点に対応して記憶されている符号語情報の内容を示す。ツリー構造40の途中の節点が自分41である場合を想定すると、ツリー構造40の上位側のレベルに親42となる節点が存在する。自分41から親42へは、親へのリンク43でさかのぼることができる。同一の親42からは、自分41および弟44を含む複数の子が分岐し得る。親42に対する複数の子は、辞書に追加された順に従って兄弟の関係を有し、自分41に対して弟41が存在するときには、弟へのリンク45で参照可能である。自分41が、リーフ節点でないときには、1または複数個の子となる節点が存在する。そのうち最初に追加される節点は、長男46であり、次男以降の子供48が存在することもある。次男以降の子供48が存在するときには、長男46には弟へのリンクが設けられるので、自分41からは長男46へのリンクである長男へのリンク47を記憶しておくだけで、複数の長男46および子供48を順に示すことができる。
【0021】
図2(b)は、各節点に記憶されている符号語情報の内容の例を示す。図2(a)に示す自分41についての符号語情報の場合、先頭12ビットは自分41に対応する符号語41aであり、次の8ビットは自分41に対応する文字41bであり、次の12ビットは親42の符号語42aであり、次の1ビットで長男46あるいは子供48など、子供がいるか否かを示すフラグ41cとなる。符号語41a、文字41b、親の符号語42aおよび子供がいるか否かのフラグ41cは、従来からV.42bis用の辞書には記憶されている。本実施形態のツリー構造40に対応する辞書では、網かけを施して示す次の12ビットの長男の符号語46a、1ビットの弟がいるか否かを示すフラグ41d、および12ビットの弟の符号語44aを付加する。この結果、従来は33ビットであった符号語情報が、25ビット付加され、58ビットに増大する。しかしながら、辞書29に記憶する容量の増加は2倍には達していない。
【0022】
図3は、図5と同様な文字列に対応する辞書29のツリー構造50を示す。図3(a)は、ツリー構造50による表現例を示し、図3(b)は各節点に記憶されている符号語情報の内容例を示す。図3(b)で、本発明による付加情報の部分は、網かけを施して示す。
【0023】
図3(a)に示すツリー構造50では、ルート節点51a,51b,51c,51dでアルファベットのA,B,C,Dに対応させ、途中の節点52ba,52bi,52doからリーフ節点52de,53bag,53bar,53bat,53bin,53dogに対し、従来からの親へのリンク43に加えて、弟へのリンク45および長男へのリンク47を付加している。
【0024】
図4は、図3に示すようなツリー構造50の辞書で文字列検索を行ってデータ圧縮を行う手順を示す。ステップb0から手順を開始し、ステップb1で文字列の最初の文字に対応するルート節点51a〜51dの情報を獲得する。ステップb2では、図2(b)の子供がいるか否かのフラグ41cに従って、子供の有無を判断する。子供がいると判断されるときには、長男の符号語46aを長男へのリンク47として用いて、長男の情報を獲得する。ステップb4では、長男の節点についての文字41bが、入力された文字列で検索の対象となっている文字と一致しているか否かを判断する。一致していないと判断されるときには、ステップb5で長男の節点に対して弟となる節点がいるか否かのフラグ41dを参照し、弟がいればステップb6で次の弟の情報を獲得する。ステップb5で弟がいないと判断されるときには、ステップb7で一致しない文字を辞書に追加する処理を行う。ステップb5で子供がいないと判断されるときには、ステップb8で最後の文字についての辞書への追加を行う。この追加の際に、リンク付加手段31は、新たな節点に文字を割当て、その節点の直前の兄となる節点に対応する節点の符号語情報に対し、弟がいるか否かのフラグ41dと弟の符号語48aとを変更する。
【0025】
ステップb8の辞書追加では、新たに長男となる節点を追加し、長男の符号語46aを設定するとともに、子供がいるか否かのフラグ41cを変更する。ステップb7またはステップb8が終了すると、ステップb9で辞書と一致する範囲の文字列に対応して符号語を出力し、ステップb10で手順を終了する。
【0026】
以下具体的に、図4の手順で「BIN」という文字列を検索する状態を示す。ステップb1では図3(a)のルート節点51bから、「B」の情報を獲得する。CCITTの勧告V.42bisから、ルート節点「B」は符号語「045」であることが分かるので、図3(b)から符号語「045」の情報を獲得する。図4のステップb2では、ルート節点「045」に子供がいるか否かを確認する。図3(b)では符号語「045」に対する子供がいるか否かのフラグが○印になっているので、子供がいることが確認される。ステップb3では、長男に対応する符号語として「符号語2」が検索文字の2番目の文字である「I」と一致しているか否か確認される。この場合長男の文字は、「A」であるので、検索文字の2文字目「I」とは一致していないことが確認される。ステップb5では、弟がいるか否かのフラグを確認する。図3(b)では○印となっているので、弟がいることが確認される。ステップb6では、「符号語2」の弟の情報から「符号語8」の情報を獲得する。次にステップb4に戻り、「符号語8」が検索文字の2文字目「I」と一致していることを確認する。さらにステップb2に戻り、「符号語8」に子供がいるかを確認する。図3(b)では○印であるので子供がいることを確認する。ステップb3で、「符号語8」の長男の情報を、「符号語6」として獲得する。ステップb4では、「符号語6」が検索文字の3文字目「N」と一致していることを確認し、文字列「BIN」の検索を終了する。したがって文字列「BIN」の符号語は「符号語6」となる。
【0027】
【発明の効果】
以上のように本発明によれば、データ列の圧縮伸長用の辞書にリンク情報を付加して検索を高速化することができ、演算装置等の高速化を図る必要がないので消費電力の増加を抑えることができる。このため、携帯情報端末装置等の電源の負担を軽減し、小形軽量化を図ることができる。
【0028】
また本発明によれば、辞書を用いて文字列の圧縮伸長を伴って、高い伝送速度でデータ通信を容易に行うことができる。
【0029】
また本発明によれば、親から長男へのリンク情報と、兄から弟へのリンク情報とを付加することで辞書の検索の際の高速化を図るので、辞書の記憶容量の増加を抑え、携帯情報端末装置等に組込む際の小形化に対する障害となることを防ぐことができる。
【0030】
また本発明によれば、国際電信電話諮問委員会の勧告V.42bisに従うデータ通信の際の辞書の検索を迅速に行うことができる。
【図面の簡単な説明】
【図1】本発明の実施の一形態の概略的な電気的構成を示すブロック図である。
【図2】図1の辞書29の基本的なツリー構造10を示す図および図表である。
【図3】図2のツリー構造40に対し、特定の文字列を対応させている状態を示すツリー構造50の図および図表である。
【図4】図1の辞書29を検索してデータ圧縮処理を行う手順を示すフローチャートである。
【図5】従来からのデータ圧縮装置の概略的な電気的構成を示すブロック図である。
【図6】図5に示す辞書9のツリー構造を示す図である。
【図7】図5の辞書9を検索してデータ圧縮を行う手順を示すフローチャートである。
【符号の説明】
21 データ回線終端装置
22 データ終端装置
23 公衆電話網
26 制御部
28 データ圧縮部
29 辞書
30 辞書検索手段
31 リンク付加手段
40,50 ツリー構造
41 自分
42 親
43 親へのリンク
44 弟
45 弟へのリンク
46 長男
47 長男へのリンク
48 子供
51a,51b,51c,51d ルート節点
52ba,52bi,52do 節点
52de,53bag,53bar,53bat,53bin,53dog リーフ節点
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a data compression apparatus for compressing continuous data, and more particularly to a data compression apparatus for a system for compressing and expanding character string data in real time for data communication and the like.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, in the field of data communication, a data circuit-terminating equipment (DCE) based on a V series recommendation from the International Telegraph and Telephone Consultative Committee, abbreviated as CCITT, has been used as a modem. FIG. 1 shows a schematic configuration of a data line termination device 1 having a data compression function and an error correction control function based on 42bis. The data line terminal device 1 is provided between a data terminal device 2 such as a workstation or a personal computer and a public telephone network 3. The connection with the data termination device 2, abbreviated as DTE, is made via an interconnection circuit 4. The signal conversion between the public telephone network 3 and the public telephone network 3 is performed by the signal converter 5. Error correction and data compression are performed by an error correction unit 7 and a data compression unit 8 controlled by the control unit 6, respectively.
[0003]
The data compression section 8 has a dictionary 9 and performs compression by encoding a character string and decompression by decoding encoded data.
[0004]
FIG. 6 shows the data structure of the dictionary 9. The dictionary 9 is represented by a tree structure 10. This tree structure 10 has a plurality of nodes, and root nodes 11a, 11b, 11c, 11d,... Corresponding to alphabets A, B, C, D,. Represents a character string. FIG. 6 shows “A”, “B”, “BA”, “BAG”, “BAR”, “BAT”, “BI”, “BIN”, “C”, “D”, “DE”, “DO”. "And" DOG "are shown. The nodes 12ba, 12bi, and 12do are located in the middle of the tree structure 10, and the leaf nodes 12de, 13bag, 13bar, 13bat, 13bin, and 13dog that indicate the last character of the character string are at lower levels than the intermediate nodes 12ba, 12bi, and 12do. In the hierarchy. Each node is assigned a codeword for identifying the node. The contents of the dictionary 9 of the tree structure 10 are matched with the code word assignment in the dictionary 9 of the other party that performs data communication via the public telephone network 3.
[0005]
As shown in FIG. 6B, generally, for a node 14 in the middle of the tree structure 10, one parent 15 and one or more children 16 exist. There is no parent for the root nodes 11a to 11d shown in FIG. The root nodes 11a and 11c have no children and are independent nodes. Therefore, at each node 14 on the tree structure 10 shown in FIG. 6B, the code word corresponding to the self, the character corresponding to the self, the code word of the parent 15, and the information indicating the presence or absence of the child 16 are stored. Must have.
[0006]
FIG. A procedure for performing a character string search and compressing according to 42bis will be described. The procedure starts from step a0. In step a1, information on the root node corresponding to the first character of the character string is obtained. In step a2, it is determined whether a child node exists for the target node. If it is determined that a child is present, the information of the next codeword is obtained from this node in the tree structure 10. At step a4, it is determined whether or not the characters of the acquired information of the next codeword match. If the characters match, the process returns to step a2, and it is further determined whether or not there is a child. If the characters do not match in step a4, it is determined in step a5 whether or not the node around the child node has made one round of the dictionary. When it is determined that one round has not been made, the process returns to step a3 to acquire the information of the code word of the next child. In step a5, when it is determined that there is no child code word that matches the character after making a round of the dictionary, a process of adding a non-matching character to the dictionary is performed in step a6. If it is determined in step a2 that there are no children, characters are added to the dictionary in step a8. When the addition to the dictionary in step a6 or step a7 is completed, a code word in a range where the character strings match is output in step a8, and the procedure ends in step a9.
[0007]
A typical prior art for compressing a signal stream for data communication according to the procedure of FIG. 7 is disclosed in, for example, Japanese Patent Publication No. 5-68893. The concept of performing data compression using a dictionary is described in JP-A-60-241157, JP-A-61-232724, JP-A-1-102613, JP-A-2-144661, JP-A-3-038772, JP-A-4-116690, It is also disclosed in JP-A-4-123719, JP-A-4-217021, JP-A-4-223556, JP-A-4-340156 and JP-A-7-23238.
[0008]
[Problems to be solved by the invention]
In a conventional dictionary having a tree structure 10 as shown in FIG. 6, the tree structure 10 is expressed by a link to a parent node of each node. You need to check from end to end, which is time consuming. Therefore, when real-time processing is performed, a high-speed arithmetic device or the like is required.
[0009]
The purpose of the present invention is to provide CCITT recommendation An object of the present invention is to provide a data compression device having a dictionary structure that does not require a high-speed arithmetic device or the like for compression / expansion processing of 42 bis or the like and can suppress an increase in storage capacity due to a change in the dictionary structure as much as possible.
[0010]
[Means for Solving the Problems]
The present invention has a tree structure according to a preset standard for compressing and decompressing an input data sequence, in which heading data is represented according to a path from a node at the highest level to each node, and A dictionary having link information for the upper-level node and information on the presence / absence of the lower-level node, encoding a subsequence of the input data that matches the heading data, and converting the input data that does not match the heading data into the dictionary. In a data compression device that repeats addition,
Each node in the dictionary has the first node at the next level after your level and the link information to the next node at the same level as yourself.
Dictionary search means for searching the dictionary using the added link information;
A data compression apparatus comprising: link addition means for adding link information to nodes at a plurality of levels within a predetermined range when input data is added to a dictionary.
[0011]
According to the present invention, heading data is represented according to a path from the highest level node of the tree-structured dictionary to each node, and an input data sequence is encoded in a range matching the heading data, and data compression is performed. Is performed. For each node in the dictionary, the link information to the first node at the level next to your level and the link to the next node at the same level as you are added, and the dictionary search means also uses the added link information Then, the dictionary is searched, so that it is possible to reduce the search time when determining whether or not the data string matches the index data stored in the dictionary. The link adding means adds the link information to the nodes at a plurality of levels within a predetermined range when adding the input data to the dictionary. Therefore, even when searching for the index data including the added data, the link information is added. Can be used to perform a quick search. Since the retrieval speed of the dictionary is increased, the compression / decompression processing can be accelerated without requiring a high-speed operation device or the like. Since the link information added to the tree-structured dictionary can be reduced, an increase in the storage capacity of the dictionary can be suppressed.
[0012]
In the present invention, the data string is a character string for data communication,
According to the present invention, the apparatus further comprises processing means for encoding a character string using the dictionary according to the preset standard, transmitting the encoded character string to a communication path, and decoding a signal received from the communication path using the dictionary.
[0013]
According to the present invention, at the time of data communication, a dictionary search for compressing / expanding a character string is performed at high speed, and the compression / expansion processing using the dictionary can be sufficiently supported even at a high communication speed. .
[0014]
Further, the link information added in the present invention is:
Link information from the parent high-level node in the tree structure to the first-lower-level child eldest node added first,
It is characterized in that the order of addition is continuous between nodes of the same level sharing the same node as a parent, and is link information from the node of the preceding brother to the node of the subsequent brother.
[0015]
According to the present invention, the link information from the parent to the eldest son and the link information from the brother to the younger brother are added between the siblings. Search can be performed, and the time required for compression or decompression can be reduced.
[0016]
In the present invention, the previously set standard is defined in Recommendation V.4 of the International Telegraph and Telephone Consultative Committee. 42 bis.
[0017]
According to the present invention, the recommendation V.1 of the International Telegraph and Telephone Consultative Committee. Data compression based on 42bis can be speeded up by shortening the dictionary search time.
[0018]
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 shows a schematic electrical configuration of a data line termination device 21 according to an embodiment of the present invention. The data line terminating device 21 is provided as a DCE between the data terminating device 22 which is a DTE and the public telephone network 23. The data terminating device 22 is a personal computer or various types of information terminals called PED. The public telephone network 23 is a public telephone line, a wireless public telephone network such as ISDN or PHS.
[0019]
The data line terminating device 21 includes an interconnecting circuit 24 with the data terminating device 22, a signal converting unit 25 with the public telephone network 23, a control unit 26 for internal control, and an error correcting unit for error correction. 27, and a data compression unit 28 for compressing and expanding data. The data compression unit 28 includes a tree-structured dictionary 29, a dictionary search unit 30, and a link addition unit 31.
[0020]
FIG. 2 shows a basic tree structure 40 of the dictionary 29 of FIG. FIG. 2A shows an expression example of the tree structure 40, and FIG. 2B shows the contents of codeword information stored corresponding to each node. Assuming that a node in the middle of the tree structure 40 is the self 41, there is a node serving as a parent 42 at an upper level of the tree structure 40. From the user 41 to the parent 42, a link 43 to the parent can be traced. A plurality of children including the self 41 and the younger brother 44 can branch from the same parent 42. The plurality of children with respect to the parent 42 have sibling relationships according to the order in which they are added to the dictionary. When the user 41 is not a leaf node, there is one or more child nodes. The first node added is the eldest son 46, and there may be children 48 following the second son. When there is a child 48 after the second son, the eldest son 46 is provided with a link to the younger brother. 46 and children 48 can be shown in sequence.
[0021]
FIG. 2B shows an example of the content of the codeword information stored at each node. In the case of the code word information about the user 41 shown in FIG. 2A, the first 12 bits are the code word 41a corresponding to the user 41, the next 8 bits are the character 41b corresponding to the user 41, and the next 12 bits. The bit is the code word 42a of the parent 42, and the next one bit becomes a flag 41c indicating whether or not there is a child such as the eldest son 46 or the child 48. The code word 41a, the character 41b, the parent code word 42a, and the flag 41c indicating whether or not there is a child are conventionally used in the V.264. It is stored in the dictionary for 42bis. In the dictionary corresponding to the tree structure 40 of the present embodiment, the next 12-bit eldest son code word 46a indicated by shading, a flag 41d indicating whether or not there is a 1-bit younger brother, and a 12-bit younger brother code Add the word 44a. As a result, the code word information, which was 33 bits in the past, is added to 25 bits, and is increased to 58 bits. However, the increase in the storage capacity in the dictionary 29 has not yet doubled.
[0022]
FIG. 3 shows a tree structure 50 of the dictionary 29 corresponding to a character string similar to FIG. FIG. 3A shows an example of expression using the tree structure 50, and FIG. 3B shows an example of the content of codeword information stored at each node. In FIG. 3B, the portion of the additional information according to the present invention is shown with shading.
[0023]
In the tree structure 50 shown in FIG. 3A, root nodes 51a, 51b, 51c, and 51d correspond to alphabetical letters A, B, C, and D, and intermediate nodes 52ba, 52bi, 52do to leaf nodes 52de, 53bag, and 52do. For 53 bar, 53 bat, 53 bin, and 53 dog, a link 45 to the younger brother and a link 47 to the eldest son are added in addition to the conventional link 43 to the parent.
[0024]
FIG. 4 shows a procedure for performing data compression by performing a character string search in a dictionary having a tree structure 50 as shown in FIG. The procedure is started from step b0, and information on the root nodes 51a to 51d corresponding to the first character of the character string is obtained in step b1. In step b2, the presence or absence of a child is determined according to the flag 41c in FIG. When it is determined that there is a child, the information of the eldest son is acquired using the codeword 46a of the eldest son as the link 47 to the eldest son. In step b4, it is determined whether or not the character 41b of the eldest node matches the character to be searched in the input character string. When it is determined that they do not match, in step b5, the flag 41d is referred to as to whether or not there is a node to be a younger brother with respect to the eldest node. If there is a younger brother, information of the next younger brother is obtained in step b6. If it is determined in step b5 that there is no younger brother, a process of adding a character that does not match to the dictionary is performed in step b7. When it is determined in step b5 that there are no children, the last character is added to the dictionary in step b8. At the time of this addition, the link adding means 31 assigns a character to the new node, and adds a flag 41d indicating whether or not there is a younger brother to the codeword information of the node corresponding to the older brother node immediately before the new node. Is changed to the code word 48a.
[0025]
In the dictionary addition in step b8, a node which is the eldest son is newly added, the code word 46a of the eldest son is set, and the flag 41c as to whether or not there is a child is changed. When step b7 or step b8 ends, a code word is output in step b9 corresponding to a character string in a range that matches the dictionary, and the procedure ends in step b10.
[0026]
Hereinafter, a state in which a character string “BIN” is searched for in the procedure of FIG. 4 will be specifically described. In step b1, information of "B" is obtained from the root node 51b of FIG. Recommendation V. CCITT. Since 42bis indicates that the root node “B” is the code word “045”, the information of the code word “045” is obtained from FIG. 3B. In step b2 of FIG. 4, it is confirmed whether or not a child exists at the root node "045". In FIG. 3B, since the flag indicating whether or not there is a child corresponding to the code word “045” is indicated by a circle, it is confirmed that there is a child. In step b3, it is determined whether or not “codeword 2” as the codeword corresponding to the eldest son matches “I” which is the second character of the search character. In this case, since the character of the eldest son is "A", it is confirmed that the character does not match the second character "I" of the search character. In step b5, a flag indicating whether or not there is a younger brother is checked. In FIG. 3 (b), the circle mark indicates that there is a younger brother. In step b6, the information of "codeword 8" is obtained from the information of the younger brother of "codeword 2". Next, returning to step b4, it is confirmed that "code word 8" matches the second character "I" of the search character. Further, returning to step b2, it is confirmed whether or not "codeword 8" has a child. In FIG. 3B, since it is indicated by a circle, it is confirmed that a child is present. In step b3, information on the eldest son of “codeword 8” is obtained as “codeword 6”. In step b4, it is confirmed that "code word 6" matches the third character "N" of the search character, and the search for the character string "BIN" is completed. Therefore, the code word of the character string “BIN” is “code word 6”.
[0027]
【The invention's effect】
As described above, according to the present invention, it is possible to increase the search speed by adding the link information to the dictionary for compressing and expanding the data string, and it is not necessary to increase the speed of the arithmetic unit or the like, thereby increasing the power consumption. Can be suppressed. Therefore, the burden on the power source of the portable information terminal device or the like can be reduced, and the size and weight can be reduced.
[0028]
Further, according to the present invention, it is possible to easily perform data communication at a high transmission rate with compression and decompression of a character string using a dictionary.
[0029]
According to the present invention, the link information from the parent to the eldest son and the link information from the brother to the younger brother are added to speed up the search of the dictionary, thereby suppressing an increase in the storage capacity of the dictionary. It is possible to prevent an obstacle to miniaturization when incorporated in a portable information terminal device or the like.
[0030]
According to the invention, the International Telegraph and Telephone Advisory Committee recommendation V. It is possible to quickly search a dictionary during data communication according to 42bis.
[Brief description of the drawings]
FIG. 1 is a block diagram showing a schematic electrical configuration of an embodiment of the present invention.
FIG. 2 is a diagram and a chart showing a basic tree structure 10 of the dictionary 29 of FIG. 1;
FIG. 3 is a diagram and a table of a tree structure 50 showing a state in which a specific character string is associated with the tree structure 40 of FIG. 2;
FIG. 4 is a flowchart showing a procedure for performing a data compression process by searching the dictionary 29 of FIG. 1;
FIG. 5 is a block diagram showing a schematic electrical configuration of a conventional data compression device.
6 is a diagram showing a tree structure of the dictionary 9 shown in FIG.
FIG. 7 is a flowchart showing a procedure for searching the dictionary 9 of FIG. 5 and performing data compression.
[Explanation of symbols]
21 data line terminator 22 data terminator 23 public telephone network 26 control unit 28 data compression unit 29 dictionary 30 dictionary search means 31 link addition means 40, 50 tree structure 41 own 42 parent 43 link to parent 44 brother 45 brother Link 46 eldest son 47 link to eldest son 48 children 51a, 51b, 51c, 51d root nodes 52ba, 52bi, 52do nodes 52de, 53bag, 53bar, 53bat, 53bin, 53dog leaf nodes

Claims (4)

入力されるデータ列の圧縮伸長用に、予め設定される規格に従うツリー構造を有し、最上位レベルの節点から各節点までの経路に応じて見出しデータが表現され、各節点毎に上位レベルの節点に対するリンク情報と下位レベルの節点の有無情報とを有する辞書を検索し、見出しデータに一致する入力データの部分列の符号化と、見出しデータに一致しない入力データの辞書への追加とを繰返すデータ圧縮装置において、
辞書の各節点には、自分のレベルの次のレベルでの最初の節点、および自分と同一のレベルでの次の節点へのリンク情報が付加されており、
付加されたリンク情報も使用して辞書の検索を行う辞書検索手段と、
入力データの辞書への追加の際に、予め定められる範囲の複数レベルで、節点に対するリンク情報を付加するリンク付加手段とを含むことを特徴とするデータ圧縮装置。
For compression and decompression of the input data string, it has a tree structure according to a preset standard, heading data is expressed according to the path from the highest level node to each node, and the upper level A dictionary having link information for nodes and presence / absence information of lower-level nodes is searched, and encoding of a substring of input data that matches heading data and addition of input data that does not match heading data to the dictionary are repeated. In a data compression device,
Each node in the dictionary has the first node at the next level after your level and the link information to the next node at the same level as yourself.
Dictionary search means for searching the dictionary using the added link information;
A data adding device for adding link information to nodes at a plurality of levels within a predetermined range when adding input data to the dictionary.
前記データ列は、データ通信用の文字列であり、
前記予め設定される規格に従って、前記辞書を用いて文字列を符号化して通信路に送信し、通信路から受信される信号を辞書を用いて復号化する処理手段を備えることを特徴とする請求項1記載のデータ圧縮装置。
The data string is a character string for data communication,
In accordance with the preset standard, the apparatus further comprises processing means for encoding a character string using the dictionary, transmitting the encoded character string to a communication path, and decoding a signal received from the communication path using the dictionary. Item 2. The data compression device according to Item 1.
前記付加されるリンク情報は、
ツリー構造で親となる上位レベルの節点から最初に追加された下位レベルの子である長男の節点へのリンク情報と、
同一の節点を親として共有する同一レベルの節点間で、追加された順序が連続し、先行する兄の節点から後続の弟の節点へのリンク情報とであることを特徴とする請求項1または2記載のデータ圧縮装置。
The added link information is:
Link information from the parent high-level node in the tree structure to the first-lower-level child eldest node added first,
The node added at the same level sharing the same node as a parent, the order of addition is continuous, and it is link information from the node of the preceding brother to the node of the subsequent brother. 2. The data compression device according to 2.
前記予め設定される規格は、国際電信電話諮問委員会の勧告V.42bisであることを特徴とする請求項1〜3のいずれかに記載のデータ圧縮装置。The previously set standard is described in Recommendation V.4 of the International Telegraph and Telephone Consultative Committee. 4. The data compression device according to claim 1, wherein the data compression device is 42 bis.
JP26445797A 1997-09-29 1997-09-29 Data compression device Expired - Fee Related JP3593244B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP26445797A JP3593244B2 (en) 1997-09-29 1997-09-29 Data compression device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP26445797A JP3593244B2 (en) 1997-09-29 1997-09-29 Data compression device

Publications (2)

Publication Number Publication Date
JPH11110187A JPH11110187A (en) 1999-04-23
JP3593244B2 true JP3593244B2 (en) 2004-11-24

Family

ID=17403482

Family Applications (1)

Application Number Title Priority Date Filing Date
JP26445797A Expired - Fee Related JP3593244B2 (en) 1997-09-29 1997-09-29 Data compression device

Country Status (1)

Country Link
JP (1) JP3593244B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104025080B (en) 2011-11-04 2017-05-03 富士通株式会社 Matching control program, matching control device, and matching control method
JP6296044B2 (en) * 2015-12-07 2018-03-20 富士通株式会社 Code processing program and data structure

Also Published As

Publication number Publication date
JPH11110187A (en) 1999-04-23

Similar Documents

Publication Publication Date Title
US20030020639A1 (en) Encoding and decoding apparatus using context
EP0732812B1 (en) Data compressing apparatus, data restoring apparatus and data compressing/restoring system
EP1397866B1 (en) Method and apparatus for adaptive data compression
EP2245836B1 (en) Determining a property of a communication device
US20100169441A1 (en) Text messaging system and method employing predictive text entry and text compression and apparatus for use therein
EP1122655A2 (en) Data compression apparatus, database system, data communication system, data compression method, storage medium and program transmission apparatus
JPH04500571A (en) Methods and apparatus for encoding, decoding and transmitting data in a compressed state
EP0127815B1 (en) Data compression method
JP4653381B2 (en) Structured document compression / decompression method
JP2979106B2 (en) Data compression
JP3593244B2 (en) Data compression device
US6112208A (en) Data compressing method and apparatus to generate bit maps in accordance with extracted data symbols
CN108573069B (en) Twins method for accelerating matching of regular expressions of compressed flow
EP0721699B1 (en) Method and apparatus for a unique and efficient use of a data structure for compressing data
CN115149962A (en) Deterministic finite automata compression method, device, equipment and storage medium
JP3199292B2 (en) Run-length extraction method, Huffman code conversion method, and MH coding processing method in Huffman code coding
JP3132774B2 (en) Data compression / decompression device
Mukherjee et al. Improving bandwidth of communication controllers
Klein et al. Parallel Lempel Ziv Coding
CN115103030A (en) Message processing method and device and computer readable storage medium
JPS62209948A (en) Data compressing and transmitting method
CN1111467A (en) Method and apparatus for encoding and decoding compressed data in data communication
CN115987973A (en) Method and system for realizing compressed assembly downloading based on file transmission multi-file stream
JPH10301959A (en) Data compressing/restoring device and its method
CN115438003A (en) Multi-site content acquisition method, equipment and storage medium

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040412

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20040824

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040827

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees