KR950004759A - 순차 데이터 압축 알고리즘 실행장치 및 방법과 데이터 압축장치 및 방법 - Google Patents

순차 데이터 압축 알고리즘 실행장치 및 방법과 데이터 압축장치 및 방법 Download PDF

Info

Publication number
KR950004759A
KR950004759A KR1019940013086A KR19940013086A KR950004759A KR 950004759 A KR950004759 A KR 950004759A KR 1019940013086 A KR1019940013086 A KR 1019940013086A KR 19940013086 A KR19940013086 A KR 19940013086A KR 950004759 A KR950004759 A KR 950004759A
Authority
KR
South Korea
Prior art keywords
symbols
algorithm
blocks
comparators
data compression
Prior art date
Application number
KR1019940013086A
Other languages
English (en)
Other versions
KR0166048B1 (ko
Inventor
아우렐리아노 하스너 마틴
도프 카르닌 에후드
슈바겔숀 우베
다무라 데쯔야
Original Assignee
윌리엄 티. 엘리스
인터내셔널 비지네스 머신즈 코포레이션
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 윌리엄 티. 엘리스, 인터내셔널 비지네스 머신즈 코포레이션 filed Critical 윌리엄 티. 엘리스
Publication of KR950004759A publication Critical patent/KR950004759A/ko
Application granted granted Critical
Publication of KR0166048B1 publication Critical patent/KR0166048B1/ko

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3084Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method
    • H03M7/3086Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction using adaptive string matching, e.g. the Lempel-Ziv method employing a sliding window, e.g. LZ77
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/3002Conversion to or from differential modulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • G06T9/005Statistical coding, e.g. Huffman, run length coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
  • Separation By Low-Temperature Treatments (AREA)
  • Eye Examination Apparatus (AREA)
  • Measuring Pulse, Heart Rate, Blood Pressure Or Blood Flow (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Measuring And Recording Apparatus For Diagnosis (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

디바이스(호스트와 구별되는 것) 제어기에서 데이터 압축이 필요할때 특히 사용하기에 적합한 순차 데이터 압축 알고리즘(a swquential data compression algorithm)을 실행하는 장치 및 방법이 기술되어 있다. 히스토라 버퍼는 i개의 동등형의 수평 슬라이스 유닛들의 배열을 압축한다. 각 슬라이스 유닛은 j개의 심볼들을 기억하여, 각 슬라이스 유닛에 있는 그 심볼들이 정확히 i개의 심볼들로 분리되는 j개의 독립 블럭들을 정의한다. i개의 진입 심볼들의 문자열에 있는 심볼들은 슬라이스 유닛들에 이미 기억되어 있는 심볼들과 병렬로 i개의 비교기들에 의해서 비교되어 심볼들의 매칭 순차들을 식별한다. 제어 유닛은 병렬로, 하지만 각각의 블럭들내에서 심볼들을 순차적으로 주사하기 위해 비교기들의 조건을 설정하기 위한 순차 알고리즘의 실행을 제어하고, 심볼들의 매칭 순차들과 비매칭 순차들이 그 배열로 기억되게 한다. 파라미터들 i 및 j는 알고리즘 실행 속도 대 하드웨어 비용의 취사선택에 근거하여 알고리즘을 실행하는데 있어서 소정의 효율성 정도를 달성하는데 요구되는 비교들의 수를 제한하도록 선택된다.
우선 순위 인코더는 출력 신호들로부터 매칭 순차가 식별되는 각 i,j 번지를 계산하지만, 그 번지들중 단 한개의 번지를 출력한다.

Description

순차 데이터 압축 알고리즘 실행장치 및 방법과 데이터 압축장치 및 방법
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제 1 도는 본 발명을 구체화하는 데이터 처리 방식의 블럭도, 제 2도는 본 발명을 구체화하고 동일형의 수평 슬라이스 유닛들(identical horizontal slice units)의 배열과 우선 순위 인코더(priority encoder)를 포함하는 데이터 압축/압축 해제 장치(data compression/decompression apparatus)의 구성도, 제3도는 제2도에 도시되어 있는 각 수평 슬라이스 유닛의 구조를 상세하게 도시하는 구성도.

Claims (13)

  1. 순차적인 데이터 압축 알고리즘을 실행하기 위한 장치(an apparatus for executing a sequential data compression algorithm)에 있어서, i개의 동등형의 수평 슬라이스 유닛들의 배열(an array of i identical horizontal slice units)과, 심볼들의 매칭 순차들(matching sequences of symbols)을 식별하기 위하여,i개의 진입 심볼들의 문자열에 있는 심볼들(symbols in a string of i incoming symbols)을 상기 슬라이스 유닛들에 미리 기억된 심볼들(symbols previously stored in said slice units)과 병렬로 비교하기 위한 i개의 비교기들(i comparators to compare) 및, 제어기 수단(controller means)을 포함하여, (i)병렬로, 하지만 각각의 상기 블럭들내에서(in parallel but in each of said blocks) 심볼들을 순차적으로 주사하기 위해 비교기들의 조건을 설정하기 위한 (to condition the comparators) 순차 알고리즘을 실행하고, (ii) 심볼들의 매칭 순차들과 비매칭 순차들(matching sequences and nonmatching sequences of symbols)이 상기 배열에 기억되게 하는 수단을 구비하며, 상기 i개의 동등형의 수평 슬라이스 유닛들 각각은 각 슬라이스 유닛에 있는 심볼들(the symbols in each slice unit)이 정확히 i개의 심볼들로(by exactly i symbols) 분리되는 j개의 분리 블럭들(j separate blocks)을 정의하기 위해 j개의 심볼들(j symbols)을 기억하는 것을 특징으로 하는 순차 데이터 압축 알고리즘 실행장치.
  2. 제 1항에 있어서, 상기 파라미터들(the parameters) i 및 j는 알고리즘 실행 속도 대 하이웨어 비용의 취사선택(a trede-off of algorithm execution speed versus hardware cost)에 근거하여 알고리즘을 실행하는데 있어서(in executing the algorithm)소정의 효율성 정도(a destired degree of officiency)를 달성하는데 요구되는 상기 비교기들의 수(the number of said comparators)를 제한하도록 선택되는 것을 특징으로 하는 순차 데이터 압축 알고리즘 실행장치.
  3. 제 1 항에 있어서, 각 슬라이스 유닛(each slice unit)은 매칭 순차가 식별되면 한가지 상태로 이루어지는 출력 신호(an output signal which is of one state if a matching sequence is indentified)를 제공하고, 상기 출력 신호들(said output signals)로부터 매칭 순차가 식별되는 각,j,i번지(each j,i address in which a matching sequence is identified)를 계산하지만 상기 번지들중 단 한개의 번지(the address of only one of said addresses)를 출력하는 우선 순위 인코더(a priority enconder)를 포함하는 것을 특징으로 하는 순차 데이터 압축 알고리즘 실행장치.
  4. 제 3항에 있어서, 상기 한가지 상태에 있을때의 각 출력 신호(each output signal when in said one state)는 진입 심볼들의 문자열에서 최근의 순차를 매치하는 이전에 기억된 순차의 이제까지의 최종 바이트(the thus oar last byte of alpreviously stored sequence that matches the most recent sequence in the string of incoming symbols)를 식별하는 것을 특징으로 하는 순차 데이터 압축 알고리즘 실행장치.
  5. 제 1 항에 있어서, 심볼들을 보유하고 있지 않은 어떠한 블럭들에도 알고리즘의 적용을 금지하는 수단(means for inhibiting application of the algorithm to any blocks which do not contain sybols)을 포함하는 것을 특징으로 하는 순차 데이터 압축 알고리즘 실행장치.
  6. 제 1항에 있어서, 랫치들이 직별로 접속되어 있고 조합적으로 시프트 래지스터를 구성하는 슬라이스 유닛들중 각 개개의 슬라이스 유닛(each respective one of the slice units, which latches are serially connected and in combination constitute a shift register)에 있는 단일의 랫치(a single latch) 및, 심볼들이 상기 배열에 있는 다른 장소에 기억되기 전에 매번(each time before symbols are stored in a different location in said array) 상기 랫치들 즉 상기 시프트 레지스터를 리셋하는 수단(means for resetting said latches and hence said shift register)을 포함하는 것을 특징으로 하는 순차 데이터 압축 알고리즘 실행 장치.
  7. j개의 블럭들로 구획된 히스토리 버퍼(a history buffer partitioned into j blocks)와, i개의 비교기들(i comparators)과, i개의 진입 심볼들의 분자열의 각 심볼(each symbol of astring of i incoming symbols)을 상기 i개의 비교기들(said i comparators)로 병렬로 방송하는 제어기(a controller for broadcasting in parallel)및, 모든 버퍼 위치들(all buffer positions)이 채워질때까지 연속하는 심볼 위치들(successive symbol positions)로 진입 심볼들이 직렬로 기입되게 하여, 버퍼에서 가장 오래된 심볼 문자열(the oldest symbol string in the buffer)이 진입 버퍼와 교체되게 하는 i개의 선택기 수단(i selector means)을 구비하고, 상기 각각의 j개의 블럭들은 해당 심볼 위치들(corresponding symblo positions)에 인접하는 블럭들에 있는 심볼들이 i개의 심볼들과 떨어져 있도록 i개의 연이온 심볼들(i consecutive symbols)을 기억할 수 있는 것을 특징이로 하는 데이터 압축 장치.
  8. 순차적인 데이터 압축 알고리즘을 실행하는 방법(a method of executing a sequential data compression algorithm)에 있어서, i개의 동등형의 수평 슬라이스 유닛들의 배열(an array of i identical horizontal slice units)을 제공하는 단계와, 심볼들의 매칭 순차들(matching sequences of symbols)을 식별하기 위하여, i개의 진입 심볼들의 문자열에 있는 심볼들(symbols in a string of i incoming symbols)을 상기 슬라이스 유닛들에 미리 기억된 심볼들(symbols previously stored in said slice units)과 병렬로 비교하기 위한 i개의 비교기들(i comparators)을 사용하는 단계 및, (i) 병렬로, 하지만 각각의 상기 블럭들 안에서 순차적으로 심볼들을 주사(scanning symbois in parallel but in each of said blocks sequentially)하고 (ii) 입력/출력 디바이스에 심볼들의 매칭 순차들과 비매칭 순차들을 기억(storing matching sequences and nonmatching sequences of symbols in an input/output device)함으로써 그 순차 알고리즘(the sequential algorithm)을 실행하는 단계를 포함하고, 상기 i개의 동등형의 수평 슬라이스 유닛들 각각은 각 슬라이스 유닛에 있는 심볼들(the symbols in each slice unit)이 정확히 i개의 심볼들로(by ecactly i symbols)분리되는 j개의 독립 블럭들(j separate blocks)을 정의하기 위해 j개의 심볼들(j symbols)을 기억하는 것을 특징으로 하는 순차 데이터 압축 알고리즘 실행방법.
  9. 제 8 항에 있어서, 알고리즘 실행 속도 대 하드웨어 비용의 취사선택(thade-off of algorithm execution speed versus hardware cost)에 근거하여 알고리즘을 실행하는데 있어서(in executing the algorithm) 소정의 효율성 정도(a desired degree of efficiency)를 달성하는데 요구되는 상기 비교기들의 수(the number of said comparators)를 제한하도록 파라미터들 i 및 j을 선택하는 단계를 포함하는 것을 특징으로 하는 순차 데이터 압축 알고리즘 실행방법.
  10. 제 9 항에 있어서, 매칭 순차가 식별되는 각 j,i번지(each j,i address in which a matching sequence is identified)를 계산하는 단계 및, 상기 번지들중 최정 번지만의 번지(the address of only the smallest one of said addresses)를 출력하는 단계를 포함하는 것을 특징으로 하는 순차 데이터 압축 알고리즘 실행방법.
  11. 제10항에 있어서, 진입 심볼들의 문자열에서 최근의 순차를 매치하는 이전에 기억된 순차중 이제까지의 최종 바이트(the thus far last byte of a previously stored sequence that matches the most recent sequence in the string of incoming symbols)를 식별하는 단계를 포함하는 것을 특징으로 하는 순차 데이터 압축 알고리즘 실행방법.
  12. 제 8 항에 있어서, 심볼들을 보유하고 있지 않은 어떠한 블럭들에도 알고리즘의 응용을 금지하는 단계를 포함하는 것을 특징으로 하는 순차 데이터 압축 알고리즘 실행방법.
  13. j개의 블럭들로 구획된 히스토리 버퍼를 제공하는 단계(providing a history buffer partitioned into j blocks)와, i개의 비교기들을 제공하는 단계와, i개의 진입 심볼들의 문자열의 각 심볼(each symbol of a string of i incoming symbols)을 상기 i개의 비교기들로 병렬로 방송하는 단계와, 모든 버퍼 위치들이 채워질때까지 버퍼에 있는 연속하는 심볼 위치들(successive symbol positions)로 진입 심볼들을 병렬로 기입하는 단계 및, 버퍼에 있는 가장 오래된 심볼 문자열을 진입 심볼로 교체하는 단계를 구비하며, 상기 각각의 j개의 블럭들은 해당 심볼 위치들(corresponding symbol positions)에 인접하는 블럭들에 있는 심볼들이 i개의 심볼들과 떨어져 있도록 i개의 연이은 심볼들을 기억할 수 있는 것을 특징으로 하는 데이터 압축방법.
    ※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
KR1019940013086A 1993-07-08 1994-06-08 순차데이타 압축 알고리즘 실행 장치 및 방법 KR0166048B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/089,211 US5384567A (en) 1993-07-08 1993-07-08 Combination parallel/serial execution of sequential algorithm for data compression/decompression
US089,211 1993-07-08

Publications (2)

Publication Number Publication Date
KR950004759A true KR950004759A (ko) 1995-02-18
KR0166048B1 KR0166048B1 (ko) 1999-03-20

Family

ID=22216343

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940013086A KR0166048B1 (ko) 1993-07-08 1994-06-08 순차데이타 압축 알고리즘 실행 장치 및 방법

Country Status (12)

Country Link
US (1) US5384567A (ko)
EP (1) EP0633668B1 (ko)
JP (1) JP3083708B2 (ko)
KR (1) KR0166048B1 (ko)
CN (1) CN1102812C (ko)
AT (1) ATE192614T1 (ko)
BR (1) BR9402666A (ko)
CA (1) CA2122170A1 (ko)
DE (1) DE69424229T2 (ko)
ES (1) ES2145100T3 (ko)
SG (1) SG45138A1 (ko)
TW (1) TW303549B (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5574834A (en) * 1992-01-09 1996-11-12 Matsushita Graphic Communications Systems, Inc. Image communication system for following a communication procedure to simultaneously transmit image code data
JP3242795B2 (ja) * 1994-10-17 2001-12-25 富士通株式会社 データ処理装置及びデータ処理方法
US5771010A (en) * 1995-03-22 1998-06-23 Ibm Corporation Apparatus for compressing data using a Lempel-Ziv-type algorithm
US5913216A (en) * 1996-03-19 1999-06-15 Lucent Technologies, Inc. Sequential pattern memory searching and storage management technique
US5771011A (en) * 1996-07-15 1998-06-23 International Business Machines Corporation Match detect logic for multi-byte per cycle hardware data compression
US5798718A (en) * 1997-05-12 1998-08-25 Lexmark International, Inc. Sliding window data compression method and apparatus
US6009372A (en) * 1997-10-01 1999-12-28 Cummins Engine Company, Inc. Management of programming and memory space for an internal combustion engine control system
EP0977152A3 (en) * 1998-07-28 2000-12-27 Xerox Corporation Data compression apparatus using matching string
KR100539862B1 (ko) * 2001-04-04 2005-12-28 삼성전자주식회사 부호분할다중접속 이동통신시스템에서 데이타 송/수신장치및 방법
US6657565B2 (en) * 2002-03-21 2003-12-02 International Business Machines Corporation Method and system for improving lossless compression efficiency
US7206962B2 (en) * 2003-11-25 2007-04-17 International Business Machines Corporation High reliability memory subsystem using data error correcting code symbol sliced command repowering
US7180433B1 (en) * 2005-09-22 2007-02-20 Tandberg Storage Asa Fast data compression and decompression system and method
US8179291B2 (en) * 2009-05-04 2012-05-15 International Business Machines Corporation Method and system for compression of logical data objects for storage
US8248279B2 (en) 2010-10-26 2012-08-21 Hewlett-Packard Development Company, L.P. History buffer apparatus and method for adaptive lossless data compression
KR20160070512A (ko) 2014-12-10 2016-06-20 삼성전자주식회사 반도체 장치 및 그 동작 방법
US10282205B2 (en) 2015-10-14 2019-05-07 International Business Machines Corporation Method and apparatus for execution of threads on processing slices using a history buffer for restoring architected register data via issued instructions
US10073699B2 (en) 2015-10-14 2018-09-11 International Business Machines Corporation Processing instructions in parallel with waw hazards and via a distributed history buffer in a microprocessor having a multi-execution slice architecture
US10289415B2 (en) 2015-10-14 2019-05-14 International Business Machines Corporation Method and apparatus for execution of threads on processing slices using a history buffer for recording architected register data
US10255071B2 (en) 2015-10-14 2019-04-09 International Business Machines Corporation Method and apparatus for managing a speculative transaction in a processing unit
CN107508602A (zh) * 2017-09-01 2017-12-22 郑州云海信息技术有限公司 一种数据压缩方法、系统及其cpu处理器
CN110311687B (zh) * 2019-07-09 2022-10-04 上海天数智芯半导体有限公司 一种基于集成算法的时序数据无损压缩方法
RU2729509C1 (ru) * 2019-12-23 2020-08-07 федеральное государственное автономное образовательное учреждение высшего образования "Национальный исследовательский ядерный университет МИФИ" (НИЯУ МИФИ) Устройство для распаковки данных
CN112783056B (zh) * 2021-01-04 2022-09-23 潍柴动力股份有限公司 Ecu的数据烧写方法、装置、设备及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3432686A (en) * 1966-05-02 1969-03-11 Sperry Rand Corp Search memory match logic detector
GB1378143A (en) * 1971-07-23 1974-12-18 Int Computers Ltd Data processors
FR2600223B1 (fr) * 1986-01-13 1988-08-19 Thomson Cgr Procede de formattage et de deformattage de donnees resultant du codage d'informations numeriques a l'aide d'un code a longueur variable, et dispositif de mise en oeuvre
GB2189970B (en) * 1986-05-01 1990-03-28 British Broadcasting Corp Data conversion
US5016009A (en) 1989-01-13 1991-05-14 Stac, Inc. Data compression apparatus and method
US5003307A (en) * 1989-01-13 1991-03-26 Stac, Inc. Data compression apparatus with shift register search means
EP0459703B1 (en) * 1990-05-31 2000-08-16 STMicroelectronics, Inc. Content addressable memory
US5179378A (en) * 1991-07-30 1993-01-12 University Of South Florida Method and apparatus for the compression and decompression of data using Lempel-Ziv based techniques
CA2077271C (en) * 1991-12-13 1998-07-28 David J. Craft Method and apparatus for compressing data

Also Published As

Publication number Publication date
SG45138A1 (en) 1998-01-16
ES2145100T3 (es) 2000-07-01
CN1102812C (zh) 2003-03-05
EP0633668A2 (en) 1995-01-11
BR9402666A (pt) 1995-05-02
JPH0795093A (ja) 1995-04-07
JP3083708B2 (ja) 2000-09-04
EP0633668B1 (en) 2000-05-03
DE69424229D1 (de) 2000-06-08
TW303549B (ko) 1997-04-21
EP0633668A3 (en) 1996-01-31
CN1106595A (zh) 1995-08-09
CA2122170A1 (en) 1995-01-09
KR0166048B1 (ko) 1999-03-20
US5384567A (en) 1995-01-24
DE69424229T2 (de) 2000-11-30
ATE192614T1 (de) 2000-05-15

Similar Documents

Publication Publication Date Title
KR950004759A (ko) 순차 데이터 압축 알고리즘 실행장치 및 방법과 데이터 압축장치 및 방법
CN106852185B (zh) 基于字典的并行压缩编码器
US5450562A (en) Cache-based data compression/decompression
US5936560A (en) Data compression method and apparatus performing high-speed comparison between data stored in a dictionary window and data to be compressed
US5343195A (en) Variable length codeword decoding apparatus
KR940006020A (ko) 가변장-코드로 엔코드된 신호의 디코딩 장치
KR930020997A (ko) 디지탈 통신시스템용 가변길이 코드워드 디코드
EP0180239A2 (en) Content-addressable memory
EP0628228A1 (en) Data compression using hashing
KR980701157A (ko) 조합 메모리 사용 LZW 자료 압축방법 및 그 장치(LZW Data Compression Using an Associative Memory)
KR20040039285A (ko) 메모리 엔진과, 데이터 조사 및 정정 방법
US9372887B2 (en) Compression ratio improvement by lazy match evaluation on the string search CAM
KR940010543A (ko) 허프만 부호(Huffman code)복호회로
Ord-Smith Generation of permutation sequences: part 1
US7764205B2 (en) Decompressing dynamic huffman coded bit streams
WO2018055160A1 (en) System level testing of entropy encoding
US5913216A (en) Sequential pattern memory searching and storage management technique
JPH05145770A (ja) 符号・復号化装置
US6708168B2 (en) Method and apparatus for searching a data stream for character patterns
USH570H (en) Fast Fourier transform data address pre-scrambler circuit
US7103750B2 (en) Method and apparatus for finding repeated substrings in pattern recognition
KR970072804A (ko) 암호화 장치 및 암호화 방법
KR100481204B1 (ko) 데이터 문자의 입력 스트림을 코드의 출력 스트림으로 압축시키기 위한 데이터 압축 방법 및 장치
EP0595539A1 (en) A sequential pattern memory searching and storage management technique
RU2220448C2 (ru) Параллельная система поиска произвольных вхождений

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
B701 Decision to grant
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20050812

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee