KR100299339B1 - Synchronizing device - Google Patents

Synchronizing device Download PDF

Info

Publication number
KR100299339B1
KR100299339B1 KR1019980002525A KR19980002525A KR100299339B1 KR 100299339 B1 KR100299339 B1 KR 100299339B1 KR 1019980002525 A KR1019980002525 A KR 1019980002525A KR 19980002525 A KR19980002525 A KR 19980002525A KR 100299339 B1 KR100299339 B1 KR 100299339B1
Authority
KR
South Korea
Prior art keywords
data
signal
unit
synchronization
state
Prior art date
Application number
KR1019980002525A
Other languages
Korean (ko)
Other versions
KR19990006331A (en
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 KR19990006331A publication Critical patent/KR19990006331A/en
Application granted granted Critical
Publication of KR100299339B1 publication Critical patent/KR100299339B1/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/4302Content synchronisation processes, e.g. decoder synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/041Speed or phase control by synchronisation signals using special codes as synchronising signal
    • H04L7/042Detectors therefor, e.g. correlators, state machines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/08Speed or phase control by synchronisation signals the synchronisation signals recurring cyclically
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/10Arrangements for initial synchronisation

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

종래 장치에서 필수적인 FIFO를 제거하여 장치의 소형화, 저렴화를 실현한다. 204개의 8 비트 길이의 단위 데이터의 열로 구성되는 패킷을 단위로 하는 MPEG 규격의 데이터 신호가 6 비트 길이의 단위 데이터의 열로 할당되어 이루어지는 입력 데이터 신호 Data_In으로부터 본래의 패킷 단위의 데이터 신호가 재구성된다. 버퍼 BS1, BS2에 순차적으로 유지되는 2개의 6 비트 길이의 단위 데이터로부터 순차적으로 8 비트 길이의 데이터가 추출된다. 패킷의 선두어를 표시하는 동기 코드 Cd가 패킷의 주기로 반복하여 나타나는지 여부에 근거하여, 선두어의 위치의 정당성이 검증된다. 추출 신호 Dout에 동기하여 카운트되는 카운트 값에 근거하여, 패킷의 주기가 경과했는지에 대한 여부가 판단되기 때문에, 종래 장치에서 필요로 했던 FIFO가 불필요하게 된다.The miniaturization and cost reduction of the device are realized by eliminating the FIFO, which is essential in the conventional device. The original packet unit data signal is reconstructed from the input data signal Data_In, in which an MPEG standard data signal in which a packet composed of 204 8-bit long unit data columns is allocated to a 6-bit long unit data column. 8-bit long data is sequentially extracted from two 6-bit long unit data sequentially held in buffers BS1 and BS2. The validity of the position of the head word is verified based on whether or not the sync code Cd indicating the head word of the packet appears repeatedly in the period of the packet. Since it is determined whether the packet cycle has elapsed based on the count value counted in synchronization with the extraction signal Dout, the FIFO required by the conventional apparatus becomes unnecessary.

Description

동기화 장치{SYNCHRONIZING DEVICE}Synchronizer {SYNCHRONIZING DEVICE}

본 발명은 동기화 장치에 관한 것으로, 특히, 종래의 장치에서 필요로 했던 FIFO(First-In-First-Out)를 제거하여, 장치의 소형화를 실현하기 위한 개량된 동기화 장치에 관한 것이다.The present invention relates to a synchronization device, and more particularly, to an improved synchronization device for realizing miniaturization of a device by eliminating the first-in-first-out (FIFO) required in the conventional device.

도 40은 본 발명의 배경이 되는 종래의 동기화 장치의 구성을 도시한 블럭도이다. 이 동기화 장치(150)는 1 비트 길이의 단위 데이터의 열로 구성되는 입력 데이터 신호 Data_In을 L 비트 길이의 단위 데이터의 열로 구성되는 출력 데이터 신호 Data_0ut으로 변환하는 장치이다. 동기화 장치(150)에는 동기 제어부(151), L 비트 시프트 레지스터(152, 154), FIFO(153) 및 비교기(155, 156)가 구비되어 있다.40 is a block diagram showing the configuration of a conventional synchronization device that is the background of the present invention. The synchronization device 150 converts an input data signal Data_In consisting of a column of unit data of 1 bit length into an output data signal Data_0ut consisting of a column of unit data of L bit length. The synchronization device 150 includes a synchronization control unit 151, L bit shift registers 152 and 154, a FIFO 153 and a comparators 155 and 156.

입력 데이터 신호 Data_In을 구성하는 1 비트 길이의 단위 데이터는 클록 신호 Clk의 펄스에 동기하여(즉, 1 클록 사이클마다) L 비트 시프트 레지스터(152)에 입력된다. L 비트 시프트 레지스터(152)는 현재에서 과거로 거슬러 올라가는 L 클록 사이클 기간에 입력된 L 개의 단위 데이터를 항상 유지한다. 즉, L 비트 시프트 레지스터(152)는 직렬 데이터(serial data)를 병렬 데이터(parallel data)로 변환하는 직렬·병렬 변환 장치에 해당한다.The unit data of one bit length constituting the input data signal Data_In is input to the L bit shift register 152 in synchronization with the pulse of the clock signal Clk (that is, every one clock cycle). The L bit shift register 152 always keeps the L unit data input in the L clock cycle period going back from the present to the past. That is, the L bit shift register 152 corresponds to a serial-parallel conversion device that converts serial data into parallel data.

1 클록 사이클마다, L 비트 시프트 레지스터(152)에 유지되는 L 개의 단위 데이터 중에서 가장 오래된 단위 데이터가 FIFO(153)에 전송된다. 출력 데이터 신호 Data_Out이 MPEG 규격의 데이터 신호, 즉, 8 비트 길이의 단위 데이터가 204개 연속해 있는 패킷을 단위로 하여 구성되는 데이터 신호인 경우를 예로든다.Every one clock cycle, the oldest unit data among the L unit data held in the L bit shift register 152 is transmitted to the FIFO 153. An example is a case where the output data signal Data_Out is an MPEG standard data signal, that is, a data signal composed of 204 consecutive packets of unit data of 8 bits in length.

이 경우, FIFO(153)는 8×204 비트의 기억 용량을 갖는다. 따라서, FIFO(153)에 입력된 단위 데이터는 8×204 클록 사이클 후에 출력된다. 1 클록 사이클마다, FIFO(153)를 통과한 1 비트 길이의 단위 데이터는 L 비트 시프트 레지스터(154)에 입력된다. L 비트 시프트 레지스터(154)는 L 비트 시프트 레지스터(152)와 동일하게 구성된다.In this case, the FIFO 153 has a storage capacity of 8 x 204 bits. Therefore, the unit data input to the FIFO 153 is output after 8 x 204 clock cycles. Every one clock cycle, one bit long unit data that has passed through the FIFO 153 is input to the L bit shift register 154. L bit shift register 154 is configured in the same manner as L bit shift register 152.

동기 제어부(l51)는 비교기(155, 156) 등의 동작을 제어하는 기능을 하는 장치 부분이다. 동기 제어부(151)에는 패킷의 선두어를 표시하는 L 비트 길이의 동기 코드 Cd가 입력된다. 그리고, 비교기(155)는 동기 제어부(151)로부터 전송되는 동기 코드 Cd의 값과, L 비트 시프트 레지스터(152)에 유지되는 L 비트의 데이터를 비교한다. 마찬가지로, 비교기(156)는 동기 제어부(151)로부터 전송되는 동기 코드 Cd의 값과, L 비트 시프트 레지스터(154)에 유지되는 L 비트의 데이터를 비교한다.The synchronization controller l51 is a device portion that functions to control the operations of the comparators 155 and 156 and the like. The synchronization control unit 151 is input with a synchronization code Cd of L bit length indicating the head of the packet. The comparator 155 compares the value of the sync code Cd transmitted from the sync control unit 151 with the L bit data held in the L bit shift register 152. Similarly, the comparator 156 compares the value of the sync code Cd transmitted from the sync control unit 151 with the L bit data held in the L bit shift register 154.

비교기(155, 156)에 의해서, L 비트 시프트 레지스터(152)의 L 비트의 데이터와 L 비트 시프트 레지스터(154)의 L 비트의 데이터가, 동시에, 동기 코드 Cd와 일치한다는 것이 검출되면, 동기 제어부(151)에서는 이 동기 코드 Cd가 패킷의 선두어(head word)로서 인식된다. 그리고, L 비트 길이의 선두어에 후속하도록, 1 비트 길이의 단위 데이터의 열이 L 비트 단위로 구분된다. 그 결과, L 비트 길이의 단위 데이터가 출력 데이터 신호 Data_Out으로서 출력된다. 이것은 동기 제어부(151)에 의해, L 비트 시프트 레지스터(154)에 유지되는 L 비트의 데이터가, L 클록 사이클마다 출력 데이터 신호 Data_Out으로서 출력됨으로써 실현된다.When the comparators 155 and 156 detect that the L bit data of the L bit shift register 152 and the L bit data of the L bit shift register 154 coincide with the synchronization code Cd, the synchronization controller At 151, this sync code Cd is recognized as a head word of a packet. Then, the column of unit data of one bit length is divided into L bit units so as to follow the head word of the L bit length. As a result, unit data of L bit length is output as the output data signal Data_Out. This is realized by the synchronization control unit 151 by outputting the L bit data held in the L bit shift register 154 as the output data signal Data_Out every L clock cycles.

종래의 동기화 장치는 이상과 같이 구성되어 있기 때문에, FIFO(153)에 있어서 큰 기억 용량을 필요로 하고 있었다. 그리고, 이것은 장치를 구성하는 소자의 개수를 줄임으로써 장치를 소형화하고 제조 비용을 절감하는 데에 있어서, 장해 요소가 되었다.Since the conventional synchronization device is configured as described above, a large storage capacity is required in the FIFO 153. This has been an obstacle in reducing the size and manufacturing cost of the device by reducing the number of elements constituting the device.

본 발명의 목적은 종래의 장치에 있어서의 상기 문제점을 해소하기 위한 것으로, FIFO를 필요 없게 함으로써, 소자의 개수를 줄여 장치의 소형화 및 제조 비용의 절감을 실현할 수 있는 동기화 장치를 제공하는 것이다.SUMMARY OF THE INVENTION An object of the present invention is to solve the above problems in the conventional apparatus, and to provide a synchronization apparatus capable of realizing miniaturization of the apparatus and reduction in manufacturing cost by eliminating the need for a FIFO.

도 1은 각 실시예에 따른 장치의 사용형태의 예를 도시한 블럭도,1 is a block diagram showing an example of usage of the apparatus according to each embodiment;

도 2는 각 실시예에 따른 장치의 개략 동작을 도시한 설명도,2 is an explanatory diagram showing a schematic operation of the apparatus according to each embodiment;

도 3은 실시예 1의 장치의 전체 블럭도,3 is an overall block diagram of the apparatus of Example 1;

도 4는 도 3의 데이터 추출부의 블럭도,4 is a block diagram of a data extraction unit of FIG. 3;

도 5는 도 4의 시프트 레지스터의 동작의 흐름도,5 is a flowchart of an operation of the shift register of FIG. 4;

도 6은 단위 데이터의 할당 패턴을 도시한 모식도,6 is a schematic diagram showing an allocation pattern of unit data;

도 7은 도 4의 패턴 데이터 추출부의 동작 설명도,7 is an operation explanatory diagram of the pattern data extraction unit of FIG. 4;

도 8은 도 4의 패턴 데이터 추출부의 동작 설명도,8 is an explanatory diagram of the operation of the pattern data extraction unit of FIG. 4;

도 9는 도 4의 패턴 데이터 추출부의 동작 설명도,9 is an explanatory diagram of the operation of the pattern data extraction unit of FIG. 4;

도 10은 도 4의 상태 천이 제어부 등의 동작의 흐름도,10 is a flowchart of an operation of the state transition controller of FIG. 4, and the like;

도 11은 도 4의 비교부의 동작 설명도,11 is an explanatory view of the operation of the comparator of FIG. 4;

도 12는 도 4의 비교부의 동작 설명도,12 is an operation explanatory diagram of a comparison unit of FIG. 4;

도 13은 도 4의 비교부의 동작 설명도,13 is an explanatory diagram of the operation of the comparator of FIG. 4;

도 14는 도 4의 상태 천이 제어부의 동작 설명도,14 is an operation explanatory diagram of the state transition controller of FIG. 4;

도 15는 도 4의 상태 천이 제어부의 동작 설명도,15 is an operation explanatory diagram of the state transition controller of FIG. 4;

도 16은 도 4의 상태 천이 제어부의 동작 설명도,16 is an operation explanatory diagram of the state transition controller of FIG. 4;

도 17은 도 4의 상태 천이 제어부의 동작 설명도,17 is an explanatory diagram of the operation of the state transition controller of FIG. 4;

도 18은 도 3의 동기 제어부의 블럭도,18 is a block diagram of a synchronization controller of FIG. 3;

도 19는 도 18의 동기 검출부의 블럭도,19 is a block diagram of a synchronization detector of FIG. 18;

도 20은 도 19의 동기 검출부의 동작의 흐름도,20 is a flowchart of an operation of a synchronization detector of FIG. 19;

도 21은 도 19의 동기 검출부의 동작 설명도,21 is an explanatory diagram of the operation of the synchronization detector of FIG. 19;

도 22는 도 19의 동기 검출부의 동작 설명도,22 is an explanatory diagram of the operation of the synchronization detector of FIG. 19;

도 23은 도 18의 선두 신호 생성부의 동작의 흐름도,23 is a flowchart of an operation of a head signal generator of FIG. 18;

도 24는 도 18의 최종 신호 생성부의 동작의 흐름도,24 is a flowchart of an operation of a final signal generator of FIG. 18;

도 25는 도 18의 동기 신호 생성부의 동작의 흐름도,25 is a flowchart of an operation of a synchronization signal generator of FIG. 18;

도 26은 도 18의 데이터 출력부의 동작의 흐름도,26 is a flowchart of an operation of a data output unit of FIG. 18;

도 27은 도 4의 클록 변조부의 블럭도,27 is a block diagram of a clock modulator of FIG. 4;

도 28은 도 27의 클록 변조부 등의 동작 설명도,28 is an explanatory diagram of the operation of the clock modulator of FIG. 27;

도 29는 실시예 2의 동기 검출부의 블럭도,29 is a block diagram of a synchronization detector according to the second embodiment;

도 30은 도 29의 록(lock) 레벨 변경부의 블럭도,30 is a block diagram of a lock level changing unit of FIG. 29;

도 31은 도 30의 태그 메모리의 기억 공간을 도시한 모식도,FIG. 31 is a schematic diagram showing a storage space of the tag memory of FIG. 30;

도 32는 도 30의 태그 메모리의 기억 공간을 도시한 모식도,32 is a schematic diagram showing a storage space of the tag memory of FIG. 30;

도 33은 도 30의 록 레벨 변경부의 동작의 흐름도,33 is a flowchart of an operation of the lock level changing unit of FIG. 30;

도 34는 도 29의 동기 검출부의 동작의 흐름도,34 is a flowchart of an operation of a synchronization detector of FIG. 29;

도 35는 도 34의 단계 S150의 흐름도,35 is a flowchart of step S150 of FIG. 34;

도 36은 도 29의 동기 검출부의 동작 설명도,36 is an operation explanatory diagram of a synchronization detector of FIG. 29;

도 37은 실시예 3의 동기 제어부의 블럭도,37 is a block diagram of a synchronization controller according to the third embodiment;

도 38은 도 37의 데이터 출력부의 동작의 흐름도,38 is a flowchart of an operation of a data output unit of FIG. 37;

도 39는 도 37의 동기 검출부의 동작 설명도,39 is an operation explanatory diagram of a synchronization detector of FIG. 37;

도 40은 종래의 동기화 장치의 블럭도.40 is a block diagram of a conventional synchronization device.

도면의 주요 부분에 대한 부호의 설명Explanation of symbols for the main parts of the drawings

3 : 클록 변조부 11 : 시프트 레지스터3: clock modulator 11: shift register

12 : 패턴 데이터 추출부 16 : 비교부(제 1 비교부)12: pattern data extraction unit 16: comparison unit (first comparison unit)

18 : 상태 천이 제어부 19 : 모드 변경부18: state transition control unit 19: mode change unit

22 : 모드 시프트부 23 : 패턴 선택부22: mode shifter 23: pattern selector

32 : 선두 신호 생성부 33 : 최종 신호 생성부32: leading signal generator 33: final signal generator

35 : 데이터 출력부 41 : 비교부35: data output section 41: comparison section

42 : 록 레벨 생성부 43 : 처리 번호 생성부42: lock level generator 43: process number generator

62 : 태그 메모리(태그 기억부)62: tag memory (tag storage)

63 : Np 카운터(처리 번호 생성부)63: Np counter (process number generation unit)

BS1, BS2 : 버퍼 Data_In : 입력 데이터 신호BS1, BS2: Buffer Data_In: Input Data Signal

Dout : 추출 신호 H : 선두어Dout: Extraction signal H: Leading word

LL : 록 레벨 MClk : 변조 클록 신호(클록 신호)LL: Lock level MClk: Modulated clock signal (clock signal)

Np, Pd : 처리 번호Np, Pd: Processing Number

본 발명 장치는 P(≥2)개의 L(≥1) 비트 길이의 제 1 단위 데이터의 열을 갖는 패킷을 단위로 하여 구성되는 제 1 데이터 신호가 m(≥1) 비트 길이의 제 2 단위 데이터의 열로 할당되어 이루어지는 제 2 데이터 신호를 입력 데이터 신호로서 입력하고, 해당 입력 데이터 신호로부터 상기 제 1 데이터 신호를 재구성하여 출력하는 동기화 장치에 관한 것이다.According to an embodiment of the present invention, a first data signal configured on the basis of a packet having a column of first unit data having P (≧ 2) L (≥1) bits in length is a second unit data of m (≧ 1) bit length. A synchronization device for inputting a second data signal, which is allocated in the column of, as an input data signal, and reconstructing and outputting the first data signal from the input data signal.

그리고, 제 1 발명의 장치는 각각이 m 비트의 기억 용량을 갖고, 상기 입력 데이터 신호를 구성하는 상기 제 2 단위 데이터를 순차적으로 유지하는 복수개의버퍼를 구비하는 시프트 레지스터와, 상기 제 1 단위 데이터가 상기 제 2 데이터 신호에 순차적으로 할당되는 제 1 내지 제 K(≥1) 패턴에 상응하고, 상기 시프트 레지스터에 유지되는 데이터 중에서, 각각 L 비트 길이의 데이터를 추출함으로써, 제 1 내지 제 K 추출 데이터를 얻는 패턴 데이터 추출부와, 상기 제 1 내지 제 K 추출 데이터의 각각을 상기 패킷의 선두어의 표식(indication)으로서의 동기 코드와 비교하는 제 1 비교부와, 상기 제 1 내지 제 K 추출 데이터 중 어느 하나를 추출 신호로서 선택하여 출력하는 패턴 선택부와, 동기 상태 및 비동기 상태에 따라, 상기 패턴 선택부의 선택 동작을 제어하는 상태 천이 제어부와, 상기 동기 상태 및 상기 비동기 상태 중 어느 상태에 있는지를 결정하는 동기 판정부를 구비한다.The apparatus of the first aspect of the invention also has a shift register having a plurality of buffers each having an m-bit storage capacity and sequentially holding the second unit data constituting the input data signal, and the first unit data. Corresponds to the first through K (≥1) patterns sequentially assigned to the second data signal, and extracts data of L bit length from the data held in the shift register, thereby extracting the first through Kth. A pattern data extraction unit for acquiring data, a first comparison unit for comparing each of the first to Kth extracted data with a synchronization code as an indication of a head word of the packet, and the first to Kth extracted data A pattern selection unit for selecting and outputting any one of the extracted signals as an extraction signal, and controlling the selection operation of the pattern selection unit according to the synchronous state and the asynchronous state. And a state transition and the controller, the synchronization determination section for determining whether the synchronous state and any state of the asynchronous state.

또한, 상기 상태 천이 제어부는 상기 입력 데이터 신호로부터 연속한 L 비트 단위의 데이터를 순차적으로 추출하도록, 상기 패턴 선택부에 상기 제 1 내지 제 K 추출 데이터를 순환적으로 순차 선택시키는 모드 시프트부와, 비동기 상태에 한해서는, 상기 제 1 비교부에 의한 비교에 있어서, 제 k(1≤k≤K) 추출 데이터만이 상기 동기 코드와 일치할 때마다 상기 모드 시프트부가 상기 패턴 선택부에 지시하는 추출 데이터의 순차적인 선택을 해당 제 k 패턴에 대응하는 제 k 추출 신호를 상기 선두어의 후보로서 설정하고, 이것을 기점으로 한 순차 선택으로 변경시키는 모드 변경부를 구비한다.The state transition control unit may further include: a mode shift unit configured to sequentially select the first to K th extraction data sequentially into the pattern selection unit so as to sequentially extract data in units of L bits from the input data signal; In the asynchronous state only, in the comparison by the first comparison unit, extraction data instructed by the mode shift unit to the pattern selector whenever only the k (1 ≦ k ≦ K) extracted data matches the synchronization code. And a mode changer for setting the sequential selection of k as the candidate for the leading word by setting the kth extracted signal corresponding to the kth pattern, and changing this to sequential selection starting from the start.

또한, 상기 동기 판정부는 상기 추출 신호가 출력되는 때에 동기하여, P 개의 정수를 처리 번호로서 순환적으로 카운트할 수 있는 처리 번호 생성부와, 상기 추출 신호를 상기 동기 코드와 비교하는 제 2 비교부와, 상기 처리 번호 및 상기제 2 비교부에서의 비교의 결과에 근거하여 상기 동기 상태 및 상기 비동기 상태 사이의 천이를 결정하는 상태 판정부를 구비한다.Further, the synchronization determination unit is a process number generation unit capable of cyclically counting P integers as process numbers in synchronization with the extraction signal when outputted, and a second comparison unit for comparing the extraction signal with the synchronization code. And a state determination unit that determines a transition between the synchronous state and the asynchronous state based on the processing number and the result of the comparison in the second comparison unit.

또, 해당 상태 판정부는 상기 비동기 상태에서는, 상기 제 2 비교부에서의 비교에 있어서, 상기 후보에 상당하는 상기 추출 신호와 상기 동기 코드와의 일치가 제 1 소정의 빈도 이상으로 반복하여 얻어지면, 상기 동기 상태로의 이행을 결정함과 동시와 일치가 얻어진 해당 후보를 확정 선두어로서 결정하고, 상기 동기 상태에서는, 상기 제 2 비교부에서의 비교에 있어서, 상기 확정 선두어에 상당하는 상기 추출 신호와 상기 동기 코드와의 불일치가 제 2 소정의 빈도 이상으로 반복하여 얻어지면, 상기 비동기 상태로의 이행을 결정하고, 또한, 상기 추출 신호가 상기 후보 또는 상기 확정 선두어에 상당하는지 여부의 판단을 상기 처리 번호에 근거하여 실행한다.In the asynchronous state, if the correspondence between the extracted signal corresponding to the candidate and the synchronization code is repeatedly obtained at a first frequency or more in the comparison in the second comparison unit, The candidate for which the coincidence and concurrency is determined is determined as a determinant leader word, and in the synchronous state, the extraction corresponding to the definite leader word is compared in the second comparison unit. If a discrepancy between the signal and the sync code is repeatedly obtained at a second predetermined frequency or more, the transition to the asynchronous state is determined, and the determination is made as to whether or not the extracted signal corresponds to the candidate or the definitive headword. Is executed based on the process number.

제 2 발명의 장치에서는 제 1 발명의 동기화 장치에 있어서, 상기 처리 번호 생성부는 상기 비동기 상태에서는, 상기 제 2 비교부에서의 비교에 있어서, 상기 추출 신호와 상기 동기 코드와의 일치를 얻을 수 있을 때마다 상기 처리 번호를 소정값으로 복귀시키고, 상기 상태 판정부는 상기 처리 번호가 상기 소정값의 하나 이전의 값을 경과한 후에 상기 소정값으로 복귀했을 때, 상기 추출 신호가 상기 후보 또는 상기 확정 선두어에 상당한다고 판단한다.In the apparatus of the second invention, in the synchronization apparatus of the first invention, in the asynchronous state, the process number generation unit can obtain a match between the extracted signal and the synchronization code in the comparison in the second comparison unit. Each time the processing number is returned to a predetermined value, and the state determining unit returns to the predetermined value after the processing number has passed one previous value of the predetermined value, the extraction signal is the candidate or the determined head. We judge that it is equivalent to language.

제 3 발명의 장치에서는 제 1 발명의 동기화 장치에 있어서, 상기 상태 판정부는 태그 기억부를 더 구비하고, 상기 상태 판정부는 비동기 상태에 있어서, 상기 후보가 설정된 상기 추출 신호가 출력되었을 때의 상기 처리 번호를, 태그로서 상기 태그 기억부에 기억시키고, 그 후, 상기 처리 번호를 상기 태그 기억부에 기억되는 상기 태그와 비교함으로써, 상기 추출 신호가 상기 후보에 상당하는지 여부를 판단한다.In the apparatus of the third aspect of the invention, in the synchronization apparatus of the first aspect of the invention, the state determination unit further includes a tag storage unit, and the state determination unit is an asynchronous state, wherein the processing number when the extraction signal to which the candidate is set is output. Is stored as the tag in the tag storage section, and then the processing number is compared with the tag stored in the tag storage section to determine whether the extracted signal corresponds to the candidate.

발명의 실시예Embodiment of the Invention

<1. 개론><1. Introduction>

도 1은 이하에 서술하는 각 실시예의 동기화 장치의 사용형태의 일례를 도시한 블럭도이다. 이 예에서 동기화 장치(101)는 64 QAM형의 복조기(121)와 RS(Reed Solomon)형의 복호기(122) 사이에 마련되어 있다. 이들 장치는 예컨대, 동화상의 압축 처리에 있어서의 대표적인 규격인 MPEG 규격에 근거하여 부호화된 데이터 신호를 처리 대상으로 한다.FIG. 1 is a block diagram showing an example of usage of the synchronization device of each embodiment described below. In this example, the synchronization device 101 is provided between the 64 QAM type demodulator 121 and the RS (Reed Solomon) type decoder 122. These apparatuses, for example, target data signals encoded on the basis of the MPEG standard, which is a representative standard in moving picture compression processing.

도 2는 도 1의 장치의 동작의 개략을 도시한 동작 설명도이다. MPEG 규격에 근거하여 화상 데이터를 부호화함으로써 얻어진 데이터 신호 D1은 「패킷(packet)」이라고 불리는 일정한 수의 데이터 열을 단위로 하여 구성된다. 또한, 이 패킷 Pkt는 8 비트(=1 바이트) 길이의 단위 데이터의 열로서 구성되어 있고, 하나의 패킷 Pkt에는 204개의 단위 데이터가 포함된다. 또한, 하나의 패킷 Pkt의 선두(즉, 패킷 Pkt의 구획(break)의 직후)에 위치하는 단위 데이터인 선두어 H에는 식별 표식으로서의 동기 코드 Cd가 할당된다. 동기 코드 Cd는, 예컨대, 16진수에 있어서의 값 "47"(=2진수의 경우 "01000111"이고, "8'h47"로도 표기된다)로 설정되어 있다.2 is an operation explanatory diagram showing an outline of the operation of the apparatus of FIG. The data signal D1 obtained by encoding image data based on the MPEG standard is configured in units of a certain number of data strings called "packets". The packet Pkt is configured as a column of unit data of 8 bits (= 1 byte) in length, and one packet Pkt contains 204 unit data. In addition, the synchronization code Cd as an identification mark is assigned to the head word H, which is the unit data located at the head of one packet Pkt (that is, immediately after the break of the packet Pkt). The sync code Cd is set to, for example, the value "47" in hexadecimal ("01000111" in the case of = binary, and is also expressed as "8'h47").

데이터 신호 D1은 도시하지 않은 64 QAM형의 변조기에 의해서 변조된 후에, 전송로에 전송된다. 전송로를 통하여 수신된 신호는 복조기(121)(도 1)에 의해서 복조된다. 복조기(121)로부터 출력되는 데이터 신호 D2는 본래의 데이터 신호 D1과는 달리, 6 비트 길이의 단위 데이터 열로서 구성된다.The data signal D1 is modulated by a 64 QAM type modulator (not shown) and then transmitted to the transmission path. The signal received through the transmission path is demodulated by demodulator 121 (FIG. 1). Unlike the original data signal D1, the data signal D2 output from the demodulator 121 is configured as a six-bit unit data string.

데이터 신호 D2는 데이터 신호 D1을 구성하는 데이터 열이 6 비트씩 재구성된 것과 동등하다. 즉, 데이터 신호 D2는 데이터 신호 D1의 패킷 Pkt의 구성 단위인 8 비트 길이의 단위 데이터가 복수의 6 비트 길이의 단위 데이터에 걸치도록 할당되어 있다. 데이터 신호 D1 하나의 패킷 Pkt의 선두어 H에 할당된 동기 코드 Cd(=47)를 예로 들면, 이 동기 코드 Cd는 데이터 신호 D2 중에서는, 예컨대 도 2에 도시한 바와 같이, 인접하는 2단위의 데이터까지 확장된다.The data signal D2 is equivalent to that in which the data string constituting the data signal D1 is reconstructed by six bits. That is, the data signal D2 is allocated such that the 8-bit length unit data, which is a structural unit of the packet Pkt of the data signal D1, spans a plurality of 6-bit length unit data. Data signal D1 Taking sync code Cd (= 47) assigned to head H of one packet Pkt as an example, this sync code Cd is divided into two adjacent units of data signal D2, for example, as shown in FIG. Extends to data.

동기화 장치(101)의 역할은 동기화, 즉, 데이터 신호 D1을 데이터 신호 D2로 재구성하는 것에 있다. 동기화 장치(101)는 동기 코드 Cd를 기준으로, 데이터 신호 D2 내에 포함되어 있는 패킷 Pkt의 선두어 H를 탐색하여, 패킷 Pkt의 열로 구성되는 데이터 신호 D1을 재구성한다. 재구성된 데이터 신호 D1은 데이터 신호 D3으로서, 동기화 장치(101)로부터 복호기(122)에 전송된다. 복호기(122)는 데이터 신호 D3을 복호화하여 부호화되기 전의 화상 데이터를 복원한다.The role of the synchronization device 101 lies in synchronization, that is, reconstruction of the data signal D1 into the data signal D2. The synchronization device 101 searches for the head word H of the packet Pkt included in the data signal D2 on the basis of the synchronization code Cd, and reconstructs the data signal D1 composed of the columns of the packet Pkt. The reconstructed data signal D1 is a data signal D3, which is transmitted from the synchronization device 101 to the decoder 122. The decoder 122 decodes the data signal D3 and restores the image data before encoding.

본 발명의 동기화 장치는 일반적으로, m(≥1) 비트 길이의 단위 데이터의 열로서 구성되는 데이터 신호를 L(>m) 비트 길이의 단위 데이터의 열로서 구성되는 데이터 신호로 변환함과 동시에, 패킷 형식의 데이터 신호를 재구성하는 기능을 갖는 장치이다. 이하의 각 실시예에서는, 도 2에 예시한 MPEG 규격의 데이터 신호D1을 취급하는 예, 즉, 6 비트 길이의 단위 데이터의 열로 구성되는 데이터 신호 D2를 8 비트 길이의 단위 데이터의 열로 구성되는 데이터 신호 D3으로 변환하는 예가 기술된다(m=6, L=8의 예). 그러나, m, L(>m)의 일반적인 조합에 대응한 동기화 장치도 마찬가지로 구성할 수 있다.The synchronization device of the present invention generally converts a data signal configured as a column of unit data of m (≥1) bit length into a data signal configured as a column of unit data of L (> m) bit length, A device having a function of reconstructing a data signal in a packet form. In each of the following embodiments, an example of handling the data signal D1 of the MPEG standard illustrated in FIG. 2, that is, a data signal D2 composed of a column of 6-bit long unit data and a data composed of 8-bit long unit data An example of conversion to the signal D3 is described (example of m = 6 and L = 8). However, the synchronization device corresponding to the general combination of m and L (> m) can be configured similarly.

<2. 실시예 1><2. Example 1

도 3은 실시예 1의 동기화 장치(101)의 전체 구성을 도시한 블럭도이다. 이 동기화 장치(101)에는 데이터 추출부(1), 동기 제어부(2) 및 클록 변조부(3)가 구비되어 있다. 동기화 장치(101)에는 입력 신호로서, 입력 데이터 신호 Data_In, 클록 신호 Clk, 동기 코드 Cd 및 리셋 신호 RST가 입력된다.3 is a block diagram showing the overall configuration of the synchronization device 101 according to the first embodiment. This synchronization device 101 is provided with a data extraction unit 1, a synchronization control unit 2, and a clock modulator 3. An input data signal Data_In, a clock signal Clk, a synchronization code Cd, and a reset signal RST are input to the synchronization device 101 as an input signal.

입력 데이터 신호 Data_In은 도 2에 도시한 데이터 신호 D2에 상당하는 데이터 신호, 즉, 6 비트 길이의 단위 데이터의 열로 구성되는 데이터 신호이다. 클록 신호 Clk는 입력 데이터 신호 Data_In에 포함되는 6 비트 길이의 단위 데이터에 동기하여 입력되는 클록 신호이다. 즉, 입력 데이터 신호 Data_In으로서 6 비트 길이의 단위 데이터가 입력될 때마다 클록 신호 Clk로서 하나의 펄스가 입력된다.The input data signal Data_In is a data signal corresponding to the data signal D2 shown in FIG. 2, that is, a data signal composed of a column of unit data having a length of 6 bits. The clock signal Clk is a clock signal input in synchronization with the 6-bit unit data included in the input data signal Data_In. That is, whenever a 6-bit unit data is input as the input data signal Data_In, one pulse is input as the clock signal Clk.

동기 코드 Cd는 처리 대상이 되는 데이터의 종별(種別)에 따라 처리 개시 시에, 예컨대 복조기(121)로부터 동기화 장치(101)에 세트되는 일정한 값이다. 도 2에 예시한 MPEG에 근거하는 부호화 데이터를 처리 대상으로 할 경우, 동기 코드 Cd로서 예컨대, "47"의 값이 부여된다. 리셋 신호 RST는, 예컨대 오퍼레이터(조작자)의 리셋 조작에 의해서 입력되는 신호이고, 동기화 장치(101)의 각부의 상태를초기화를 지시하는 신호로서 기능한다.The synchronization code Cd is a constant value set in the synchronization device 101 from the demodulator 121, for example, at the start of processing in accordance with the type of data to be processed. When the encoded data based on MPEG illustrated in FIG. 2 is the processing target, a value of "47" is given, for example, as the sync code Cd. The reset signal RST is a signal input by, for example, a reset operation of an operator (operator), and functions as a signal for instructing initialization of the state of each part of the synchronization device 101.

동기화 장치(101)는 이들 입력 신호에 근거하여 연산을 실행하여 출력 신호로서 출력 데이터 신호 Data_Out, 대기 상태 표시 신호 Wt, 변조 클록 신호 MClk, 동기 신호 Sync, 선두 신호 Sync_Head 및 최종 신호 Sync_Tai1을 출력한다. 출력 데이터 신호 Data_Out은 도 2에 도시한 데이터 신호 D3에 상당하는 데이터 신호, 즉, 8 비트 길이의 단위 데이터의 열로서 구성되고, 또한 패킷 Pkt의 형식을 갖는 데이터 신호이다.The synchronizing device 101 performs an operation based on these input signals and outputs an output data signal Data_Out, a standby state display signal Wt, a modulated clock signal MClk, a synchronization signal Sync, a leading signal Sync_Head, and a final signal Sync_Tai1 as output signals. The output data signal Data_Out is a data signal corresponding to the data signal D3 shown in Fig. 2, that is, a data signal that is configured as a column of unit data of 8 bits in length and has a format of a packet Pkt.

데이터 추출부(1)는 클록 신호 Clk의 펄스에 동기하여, 입력 데이터 신호 Data_In으로부터 패킷 Pkt를 구성하는 8 비트 길이의 단위 데이터를 순차적으로 추출하고, 그 추출 신호 Dout을 동기 제어부(2)에 전송한다. 또한, 데이터 추출부(1)는 주기적으로 발생하는 추출 불가능한 클록 사이클(클록 신호 Clk의 1주기)에 있어서, 추출의 일시 휴지 상태, 즉「대기 상태」를 표시하는 대기 상태 표시 신호 Wt를 출력한다.The data extraction unit 1 sequentially extracts 8-bit unit data constituting the packet Pkt from the input data signal Data_In in synchronization with the pulse of the clock signal Clk, and transmits the extraction signal Dout to the synchronization control unit 2. do. In addition, the data extraction unit 1 outputs a standby state display signal Wt indicating a pause state of extraction, that is, a "standby state" in a non-extractable clock cycle (one cycle of the clock signal Clk) that occurs periodically. .

동기 제어부(2)는 데이터 추출부(1)의 제어를 주요한 임무로 하는 장치 부분이며, 특히, 동기 상태의 가능성의 정도를 표현하는 변수인 록 레벨(Lock Level) LL 및 패킷 Pkt의 구간을 표시하는 동기 신호 Sync를 산출하여 데이터 추출부(1)에 전송한다. 데이터 추출부(1)는 이들 록 레벨 LL 및 동기 신호 Sync에 근거하여 추출 동작을 실행한다. 또한, 동기 제어부(2)는 패킷 Pkt의 선두를 표시하는 선두 신호 Sync_Head 및 패킷 Pkt의 최종을 표시하는 최종 신호 Sync_Tail을 출력함과 동시에, 대기 상태 표시 신호 Wt의 값에 따라, 추출 신호 Dout을 출력 데이터 신호Data_Out으로서 출력한다.The synchronization control unit 2 is a device portion whose main task is to control the data extraction unit 1, and in particular, displays the intervals of the lock level LL and the packet Pkt which are variables representing the degree of possibility of the synchronization state. The sync signal Sync is calculated and transmitted to the data extraction unit 1. The data extraction section 1 performs the extraction operation based on these lock level LL and synchronization signal Sync. The synchronization control unit 2 also outputs the leading signal Sync_Head for indicating the beginning of the packet Pkt and the final signal Sync_Tail for indicating the end of the packet Pkt, and outputs the extraction signal Dout in accordance with the value of the standby state display signal Wt. Output as data signal Data_Out.

클록 변조부(3)는 클록 신호 Clk 및 대기 상태 표시 신호 Wt에 근거하여, 변조 클록 신호 MClk를 생성한다. 변조 클록 신호 MClk는 클록 사이클이「대기 상태」에 있는 기간, 즉, 대기 상태 표시 신호 Wt가 액티브인 기간에 있어서 펄스가 누락된(lacking) 클록 신호이다. 즉, 변조 클록 신호 MClk의 펄스는 출력 데이터 신호 Data_Out으로서, 패킷 Pkt를 구성하는 유효한 데이터가 출력될 때마다 출력된다. 출력 신호 Wt, Sync_Head, Sync_Tail, MClk는 출력 데이터 신호 Data_Out과 함께 복호기(122)에 공급된다.The clock modulator 3 generates a modulated clock signal MClk based on the clock signal Clk and the standby state display signal Wt. The modulated clock signal MClk is a clock signal that is missing a pulse in a period in which the clock cycle is in the "standby state", that is, the period in which the standby state display signal Wt is active. That is, the pulse of the modulated clock signal MClk is output data signal Data_Out, which is output whenever valid data constituting the packet Pkt is output. The output signals Wt, Sync_Head, Sync_Tail, and MClk are supplied to the decoder 122 together with the output data signal Data_Out.

<2-1. 데이터 추출부><2-1. Data Extractor>

도 4는 데이터 추출부(1)의 구성을 도시한 블럭도이다. 데이터 추출부(1)에는 시프트 레지스터(11), 패턴 데이터 추출부(12), 비교부(16), 록 레벨 체크부(17), 상태 천이 제어부(18) 및 패턴 선택부(23)가 구비되어 있다. 또한, 상태 천이 제어부(18)에는 모드 변경부(19) 및 모드 시프트부(22)가 구비되어 있다.4 is a block diagram showing the configuration of the data extraction unit 1. The data extraction section 1 includes a shift register 11, a pattern data extraction section 12, a comparison section 16, a lock level check section 17, a state transition control section 18 and a pattern selection section 23. It is. In addition, the state transition control unit 18 is provided with a mode change unit 19 and a mode shift unit 22.

시프트 레지스터(11)는 2단으로 접속된 버퍼 BS1, BS2를 구비하고 있다. 이들 버퍼 BS1, BS2는 각각 6 비트의 기억 용량을 갖고 있다. 그리고, 버퍼 BS1, BS2의 각각이 기억하는 데이터 신호는 패턴 데이터 추출부(12)로 출력된다. 또한, 시프트 레지스터(11)에는 입력 신호로서 입력 데이터 신호 Data_In, 클록 신호 Clk 및 리셋 신호 RST가 입력되고 있고, 시프트 레지스터(11)는 이들 입력 신호에 근거하여 동작한다.The shift register 11 has buffers BS1 and BS2 connected in two stages. These buffers BS1 and BS2 each have a storage capacity of 6 bits. The data signal stored in each of the buffers BS1 and BS2 is output to the pattern data extraction section 12. In addition, input data signal Data_In, clock signal Clk, and reset signal RST are input to the shift register 11 as an input signal, and the shift register 11 operates based on these input signals.

도 5는 시프트 레지스터(11)의 동작의 흐름을 도시한 흐름도이다. 시프트 레지스터(11)가 동작을 개시하면 우선, 단계 S1에 있어서, 클록 신호 Clk의 펄스가 상승하는지 여부가 판정된다. 상승이 얻어질 때까지 단계 S1의 프로세스가 반복되고, 상승이 얻어지면, 프로세스는 단계 S2로 이행한다. 즉, 단계 S1은 클록 신호 Clk의 상승 에지에 동기하여 단계 S2 이하의 프로세스가 시작되도록 타이밍 조정을 하는 단계이다.5 is a flowchart showing the flow of operation of the shift register 11. When the shift register 11 starts to operate, first, in step S1, it is determined whether the pulse of the clock signal Clk rises. The process of step S1 is repeated until a rise is obtained, and if a rise is obtained, the process proceeds to step S2. That is, step S1 is a step of timing adjustment so that the process of step S2 or less starts in synchronization with the rising edge of the clock signal Clk.

단계 S2는 리셋 신호 RST가 액티브(이하의 예에서는, 값 "0")인지의 여부를 판정한다. 리셋 신호 RST가 액티브이면, 단계 S3의 리셋 프로세스가 실행된다. 즉, 한 쌍의 버퍼 BS1, BS2에서의 각 비트의 기억값이 "0"으로 설정된다. 한편, 리셋 신호 RST가 정상 상태(즉, 값 "1")이면, 통상 프로세스인 단계 S4의 프로세스가 실행된다. 즉, 버퍼 BS2에는 버퍼 BS1에 기억되는 6 비트 길이의 단위 데이터가 기록되고, 버퍼 BS1에는 입력 데이터 신호 Data_In의 6 비트 길이의 단위 데이터가 기록된다. 즉, 버퍼 BS1, BS2가 시프트 동작을 한다.Step S2 determines whether the reset signal RST is active (in the following example, the value "0"). If the reset signal RST is active, the reset process of step S3 is executed. That is, the stored value of each bit in the pair of buffers BS1, BS2 is set to " 0 ". On the other hand, if the reset signal RST is in the normal state (ie, the value " 1 "), the process of step S4, which is a normal process, is executed. In other words, six bits of unit data stored in the buffer BS1 are recorded in the buffer BS2, and six bits of unit data of the input data signal Data_In are recorded in the buffer BS1. In other words, the buffers BS1 and BS2 perform a shift operation.

단계 S3 또는 S4의 프로세스가 종료되면, 단계 S5에 있어서, 프로세스를 종료할 것인 지의 여부가 판정된다. 예컨대, 통신이 종료되었을 때, 혹은, 전원을 오프해야 할 때 등, 프로세스를 종료해야 한다고 판정되면 프로세스는 종료된다. 반대로, 프로세스를 종료해서는 안된다고 판정되면, 프로세스는 단계 S1로 리턴한다. 이상과 같이, 프로세스를 종료해야 한다는 판정이 얻어질 때까지 단계 S1 내지 S5의 프로세스 루프가 반복적으로 실행된다.When the process of step S3 or S4 ends, in step S5, it is determined whether or not the process is to be terminated. For example, when it is determined that the process should be terminated, for example, when communication is terminated or when the power supply must be turned off, the process is terminated. In contrast, if it is determined that the process should not be terminated, the process returns to step S1. As described above, the process loop of steps S1 to S5 is repeatedly executed until the determination that the process should be terminated is obtained.

<2-2. 패턴 데이터 추출부><2-2. Pattern Data Extraction Unit>

도 4를 다시 참조하면, 패턴 데이터 추출부(12)에는 제 1 내지 제 3 패턴 데이터 추출부(13, 14, 15)가 구비되어 있다. 이들 제 1 내지 제 3 패턴 데이터 추출부(13, 14, 15)의 각각에는, 버퍼 BS1, BS2의 쌍방에 기억되는 데이터 신호가 입력된다.Referring back to FIG. 4, the pattern data extractor 12 includes first to third pattern data extractors 13, 14, and 15. To each of these first to third pattern data extracting units 13, 14 and 15, data signals stored in both of the buffers BS1 and BS2 are input.

도 6은 패킷 Pkt를 구성하는 8 비트 길이의 단위 데이터가 6 비트의 단위 데이터의 열로서 구성되는 입력 데이터 신호 Data_In 중에 할당되는 패턴을 도시한 설명도이다. 도 6에 도시한 바와 같이, 입력 데이터 신호 Data_In는 최하위 비트(LSB)에 상당하는 제 0 비트로부터 최상위 비트(MSB)에 상당하는 제 5 비트까지의 6 비트로 구성되는 단위 데이터가 시간 축을 따라 배열되어 있다. 이 입력 데이터 신호 Data_In에 8 비트 길이의 단위 데이터가 할당되는 패턴으로서, 도 6에 도시한 패턴 PTl, PT2, PT3의 3 종류가 존재한다.FIG. 6 is an explanatory diagram showing a pattern in which 8-bit length unit data constituting the packet Pkt is allocated among the input data signal Data_In configured as a string of 6-bit unit data. As shown in Fig. 6, the input data signal Data_In is composed of unit data consisting of six bits from the zeroth bit corresponding to the least significant bit (LSB) to the fifth bit corresponding to the most significant bit (MSB). have. There are three types of patterns PTl, PT2 and PT3 shown in Fig. 6 as a pattern to which unit data of 8 bits length is assigned to the input data signal Data_In.

이들 패턴 PT1, PT2, PT3 모두는 서로 인접하는 두 개의 6 비트 길이의 단위 데이터에 걸치고 있다. 그리고, 패턴 PT1은 하나의 단위 데이터의 제 0 내지 제 5 비트의 전부와, 다음의 단위 데이터의 제 4 및 제 5 비트로 구성된다. 패턴 PT2는 하나의 단위 데이터의 제 0 내지 제 3 비트와, 다음의 단위 데이터의 제 2 내지 제 5 비트로 구성된다. 또한, 패턴 PT3은 하나의 단위 데이터의 제 0 및 제 1 비트와, 다음의 단위 데이터의 제 0 내지 제 5 비트의 모두로 구성된다.These patterns PT1, PT2, PT3 all span two 6-bit long unit data adjacent to each other. The pattern PT1 consists of all of the zeroth to fifth bits of one unit data and the fourth and fifth bits of the next unit data. The pattern PT2 consists of the 0th to 3rd bits of one unit data and the 2nd to 5th bits of the next unit data. Further, the pattern PT3 is composed of both the zeroth and first bits of one unit data and the zeroth to fifth bits of the next unit data.

패킷 Pkt를 구성하는 8 비트 길이의 단위 데이터는 패턴 PTl, PT2, PT3, PTl, PT2, ····의 순으로, 입력 데이터 신호 Data_In에 빈틈없이(비어 있는 비트를 발생하지 않도록) 할당된다. 그리고, 제 1 내지 제 3 패턴 데이터 추출부(13, 14, 15)는 버퍼 BS1, BS2에 기억되는 입력 데이터 신호 Data_In의 2단위의 데이터로부터, 각각, 패턴 PTl, PT2, PT3에 상당하는 8 비트의 데이터를 추출한다.The 8-bit-long unit data constituting the packet Pkt are allocated to the input data signal Data_In tightly (to avoid empty bits) in the order of the patterns PTl, PT2, PT3, PTl, PT ... The first to third pattern data extracting units 13, 14, and 15 each have 8 bits corresponding to patterns PTl, PT2, PT3, respectively, from data of two units of input data signal Data_In stored in buffers BS1, BS2. Extract the data from.

즉, 제 1 패턴 데이터 추출부(13)는 도 7에 도시한 바와 같이, 버퍼 BS1, BS2에 기억되는 서로 인접하는 두개의 6 비트 길이의 단위 데이터로부터, 패턴 PT1에 상당하는 8 비트의 데이터를 추출한다. 또한, 제 2 패턴 데이터 추출부(14)는, 도 8에 도시한 바와 같이, 버퍼 BS1, BS2에 기억되는 서로 인접하는 두개의 6 비트 길이의 단위 데이터로부터, 패턴 PT2에 상당하는 8 비트의 데이터를 추출한다. 마찬가지로, 제 3 패턴 데이터 추출부(15)는, 도 9에 도시한 바와 같이, 패턴 PT3에 상당하는 8 비트의 데이터를 추출한다.That is, as shown in FIG. 7, the first pattern data extracting unit 13 extracts 8-bit data corresponding to the pattern PT1 from two adjacent 6-bit unit data stored in the buffers BS1 and BS2. Extract. In addition, as shown in Fig. 8, the second pattern data extracting unit 14 includes 8-bit data corresponding to the pattern PT2 from two adjacent 6-bit unit data stored in the buffers BS1 and BS2. Extract Similarly, the third pattern data extraction unit 15 extracts 8 bits of data corresponding to the pattern PT3 as shown in FIG. 9.

이 경우, 제 1 내지 제 3 패턴 데이터 추출부(13, 14, 15)가 추출하는 8 비트의 데이터 중에서, 추출할 가치가 있는 참(true)의 8 비트 길이의 단위 데이터는 많더라도 하나밖에 존재하지 않는다는 것은 당연하다. 즉, 제 1 내지 제 3 패턴 데이터 추출부(13, 14, 15)는 버퍼 BS1, BS2에 기억되는 2열의 6 비트 길이의 단위 데이터 중에서, 그것들에 할당된 8 비트 길이의 단위 데이터일 가능성이 있는 후보를 전부 추출하는 기능을 한다. 제 1 내지 제 3 패턴 데이터 추출부(13, 14, 15)에 의해서 각각 추출된 8 비트의 데이터는 비교부(16) 및 패턴 선택부(23)에 전송된다.In this case, among the 8-bit data extracted by the first to third pattern data extracting units 13, 14 and 15, there is only one true 8-bit unit data worth extracting. Of course not. That is, the first to third pattern data extracting units 13, 14, and 15 may be 8-bit long unit data allocated to them among the two columns of 6-bit long unit data stored in the buffers BS1, BS2. This function extracts all candidates. The 8-bit data extracted by the first to third pattern data extractors 13, 14, and 15 are transmitted to the comparator 16 and the pattern selector 23, respectively.

<2-3. 상태 천이 제어부 등><2-3. State Transition Control, etc.>

도 10은 비교부(16), 록 레벨 체크부(17), 상태 천이 제어부(18) 및 패턴 선택부(23)의 동작의 흐름을 도시한 흐름도이다. 이 동작 흐름에 있어서도, 시프트 레지스터(11)의 동작 흐름에 관한 도 5의 단계 S1, S5에 각각 상당하는 단계 S11, S26이 구비되어 있고, 프로세스를 종료해야 한다고 판정될 때까지 단계 S11 내지 S26의 프로세스 루프가 반복적으로 실행된다. 또한, 단계 S12 이하의 프로세스는, 클록 신호 Clk의 상승 에지에 동기하여 시작된다.10 is a flowchart showing the flow of operations of the comparison unit 16, the lock level check unit 17, the state transition control unit 18, and the pattern selection unit 23. As shown in FIG. Also in this operation flow, steps S11 and S26 corresponding to steps S1 and S5 of Fig. 5 relating to the operation flow of the shift register 11 are provided, and the steps S11 to S26 are determined until it is determined that the process should be terminated. The process loop runs repeatedly. In addition, the process of step S12 and below is started in synchronization with the rising edge of the clock signal Clk.

단계 S12, S13의 비교 처리는 록 레벨 체크부(l7)에 의해서 수행된다. 이들 단계 S12, S13에서는, 동기 제어부(2)로부터 전송되는 동기 신호 Sync 및 록 레벨 LL의 값이 각각 소정의 값과 비교된다. 또한, 단계 S14 내지 S16의 비교 처리는 비교부(16)에 의해서 수행된다. 이들 단계 S14 내지 S16에서는, 제 l 내지 제 3 패턴 데이터 추출부(13∼15)에서 각각 추출된 패턴 PT1 내지 PT3의 데이터가 동기 코드 Cd와 비교된다.The comparison process of steps S12 and S13 is performed by the lock level check unit l7. In these steps S12 and S13, the values of the synchronization signal Sync and the lock level LL transmitted from the synchronization control unit 2 are compared with predetermined values, respectively. In addition, the comparison process of steps S14 to S16 is performed by the comparison unit 16. In these steps S14 to S16, the data of the patterns PT1 to PT3 extracted by the first to third pattern data extraction units 13 to 15, respectively, are compared with the synchronization code Cd.

상태 천이 제어부(18)는 이들 비교 결과에 따라, 단계 S17 이하의 프로세스에 의해서 모드 결정을 실행한다. 여기서 모드란, 후술하는 바와 같이, 패턴 선택부(23)(도 4)에 있어서의 선택 동작의 종별을 표현하는 것으로, 제 1 내지 제 4 모드의 4종류의 모드가 정의된다.The state transition control unit 18 executes the mode decision by the process of step S17 or less in accordance with these comparison results. Here, the mode expresses the type of the selection operation in the pattern selection unit 23 (FIG. 4), as will be described later, and four types of modes of the first to fourth modes are defined.

동기 신호 Sync가 액티브(이하의 예에서는, 값 "1")일 때, 즉, 클록 사이클이 패킷 Pkt의 구획에 상당할 때, 또는 록 레벨 LL의 값이 "0"일 때, 즉, 장치가 동기 상태에 도달하지 않은 비동기 상태에 있을 때는 단계 S14 내지 S16에 있어서의 비교 결과를 참조하여 그들 결과에 따라, 단계 S17 내지 S20 중 어느 것인가가 선택적으로 실행된다. 반대로, 클록 사이클이 패킷 Pkt의 구획도 아니고, 더구나, 록 레벨 LL이 동기 상태에 대응하는 "1" 이상의 값일 때는 단계 S14 내지 S16에 있어서의 비교 결과는 참조되는 일 없이 단계 S20의 프로세스가 실행된다.When the synchronization signal Sync is active (value "1" in the following example), that is, when the clock cycle corresponds to the division of the packet Pkt, or when the value of the lock level LL is "0", that is, the device is When it is in the asynchronous state which has not reached the synchronous state, any of steps S17 to S20 is selectively executed according to those results with reference to the comparison result in steps S14 to S16. On the contrary, when the clock cycle is not a partition of the packet Pkt, and when the lock level LL is a value of "1" or more corresponding to the synchronous state, the process of step S20 is executed without referring to the comparison result in steps S14 to S16. .

단계 S14 내지 S16의 비교 처리에 있어서, 3 종류의 패턴 PTl, PT2, PT3의 데이터 중 어느 하나만이 동기 코드 Cd와 일치한다고 판정되면, 단계 S17 내지 S19에 있어서, 현재의 모드가 어느 쪽의 모드인지에 관계없이 모드가 제 1 내지 제 3 모드로 각각 설정된다. 이 프로세스는 상태 천이 제어부(18)에 구비되는 모드 변경부(19)에 의해서 실행된다.In the comparison processing of steps S14 to S16, if it is determined that only one of the data of the three types of patterns PTl, PT2, PT3 matches the synchronization code Cd, in which of the modes is the current mode in steps S17 to S19? Regardless, the mode is set to the first to third modes, respectively. This process is executed by the mode change unit 19 provided in the state transition control unit 18.

한편, 단계 S14 내지 S16의 비교 처리에 있어서, 3 종류의 패턴 PTl, PT2, PT3의 데이터 중 모두가 동기 코드 Cd와 일치하지 않든지 또는, 두개 이상이 일치한다고 판정되면, 단계 S20에 있어서, 모드가 현재의 모드로부터 다음 모드로 시프트된다. 단계 S14 내지 S16의 비교 처리가 참조되지 않은 경우도 마찬가지이다. 모드의 시프트란, 제 1, 2, 3, 4, 1, 2, ····의 순서로, 모드를 순환적으로 하나씩 이행시키는 것을 의미한다.On the other hand, in the comparison processing of steps S14 to S16, if all of the data of the three types of patterns PTl, PT2, PT3 do not match the synchronization code Cd or if two or more match, it is determined that the mode is in step S20. Is shifted from the current mode to the next mode. The same applies to the case where the comparison process of steps S14 to S16 is not referred to. The shift of the mode means that the modes are cyclically shifted one by one in the order of the first, the second, the third, the fourth, the first, the second, the ...

단계 S20의 프로세스가 종료되면, 프로세스는 단계 S21로 이행되고 새로운 모드가 제 4 모드인지의 여부를 판정한다. 만일, 제 4 모드가 아니면, 단계 S22에 있어서, 대기 상태 표시 신호 Wt를 정상 상태(이하의 예에서는, 값 "0")로 설정한다. 반대로, 제 4 모드라고 판정되면, 단계 S23에 있어서, 대기 상태 표시 신호 Wt를 액티브(값 "1")로 설정한다. 단계 S17 내지 S19 중 어떠한 프로세스가 경과하였을 때에도, 새로운 모드는 제 4 모드가 아니기 때문에 단계 S22의 프로세스가 실행된다. 이들 단계 S20 내지 S23의 프로세스는 상태 천이 제어부(18)에 구비되는 모드 시프트부(22)에 의해서 수행된다.When the process of step S20 ends, the process proceeds to step S21 to determine whether the new mode is the fourth mode. If not in the fourth mode, in step S22, the standby state display signal Wt is set to a steady state (in the following example, the value "0"). On the contrary, if it is determined that it is the fourth mode, in step S23, the standby state display signal Wt is set to active (value "1"). When any process in steps S17 to S19 has passed, the process of step S22 is executed because the new mode is not the fourth mode. The processes of these steps S20 to S23 are performed by the mode shift unit 22 provided in the state transition control unit 18.

단계 S22를 경과했을 때에는 단계 S24의 프로세스가 실행된다. 즉, 새로이 설정된 제 1 내지 제 3 모드에 대응하여 패턴 PTl, PT2, PT3의 데이터가 각각 선택되어, 추출 신호 Dout으로서 출력된다. 단계 S23을 경과했을 때에는 단계 S25의 프로세스가 실행된다. 즉, 현재의 추출 신호 Dout이 갱신되지 않고 그대로 유지된다. 단계 S24, S25 중 어느 하나의 프로세스가 종료되면, 프로세스는 단계 S26으로 이행한다.When step S22 has passed, the process of step S24 is executed. That is, the data of the patterns PTl, PT2, PT3 are selected in correspondence with the newly set first to third modes, respectively, and are output as the extraction signal Dout. When step S23 has passed, the process of step S25 is executed. In other words, the current extraction signal Dout is maintained without being updated. When either of the processes of steps S24 and S25 ends, the process proceeds to step S26.

단계 S24 및 S25의 프로세스는 패턴 선택부(23)에 의해서 수행된다. 따라서, 패턴 선택부(23)는, 도 4에 모식적으로 도시하는 바와 같이, 모드 시프트부(22)가 출력하는 모드 신호, 즉 모드를 표현하는 신호에 응답하여, 제 1 내지 제 3 패턴 데이터 추출부(13, 14, 15)의 출력 신호 또는, 래치에 유지되는 현재의 값 중 어느 것을 선택하여 출력하는 스위치 회로로서 구성할 수 있다.The process of steps S24 and S25 is performed by the pattern selector 23. Therefore, as shown schematically in FIG. 4, the pattern selection unit 23 responds to the mode signal output from the mode shift unit 22, that is, the signal representing the mode, to form the first to third pattern data. It can be comprised as a switch circuit which selects and outputs the output signal of the extraction part 13, 14, 15, or the present value hold | maintained in a latch.

도 11 내지 도 17은 도 10의 동작 흐름에 근거하여 선택된 추출 신호 Dout과 입력 데이터 신호 Data_In과의 관계를 도시한 동작 설명도이다. 우선, 임의의 클록 사이클에 있어서, 비동기 상태에 있다(록 레벨 LL=0)든지 또는, 클록 사이클이 패킷 Pkt의 구획에 상당(동기 신호 Sync=1)할 때, 시프트 레지스터(11)에 기억되는 2열의 단위 데이터에 관한 3 종류의 추출 패턴 PTl, PT2, PT3 중에서, 패턴 PT1만이 동기 코드 Cd와 일치할 경우, 즉, 도 11에 도시한 예에 해당하고, 도 12 및 도13에는 해당하지 않는 경우를 예로 상정한다.11 to 17 are diagrams illustrating the relationship between the extraction signal Dout selected based on the operation flow of FIG. 10 and the input data signal Data_In. First, in any clock cycle, it is stored in the shift register 11 when it is in an asynchronous state (lock level LL = 0) or when the clock cycle corresponds to the division of the packet Pkt (synchronization signal Sync = 1). Of the three types of extraction patterns PTl, PT2 and PT3 relating to the unit data of two columns, when only the pattern PT1 coincides with the synchronization code Cd, that is, the example shown in FIG. 11 and does not correspond to FIGS. 12 and 13. Assume the case as an example.

이 경우에는, 그 클록 사이클에 있어서, 모드가 제 1 모드로 설정되기 때문에, 추출 신호 Dout으로서 도 14에 도시한 패턴 PT1의 데이터(동기 코드 Cd와 일치하고 있다)가 출력된다. 이것은 이 클록 사이클에서, 패킷 Pkt를 구성하는 8 비트 길이의 단위 데이터는 패턴 PT1의 형태로 입력 데이터 신호 Data_In에 할당되고, 또한 그 값이 동기 코드 Cd와 일치하는 것으로 판단됨을 의미한다.In this case, since the mode is set to the first mode in the clock cycle, the data of the pattern PT1 (which coincides with the sync code Cd) shown in Fig. 14 is output as the extraction signal Dout. This means that in this clock cycle, 8-bit-long unit data constituting the packet Pkt is assigned to the input data signal Data_In in the form of a pattern PT1, and its value is determined to match the sync code Cd.

이 판단이 정당하면, 8 비트 길이의 단위 데이터는 그 후, 패턴 PT2, PT3, PTl, PT2, ····의 순서로 할당된다. 이에 대응하여, 클록 사이클이 하나씩 진행할 때마다(즉, 클록 신호 Clk가 상승할 때마다), 모드는 제 2, 제 3 모드로 순차적으로 시프트하고 그에 따라, 추출 신호 Dout으로서 출력되는 데이터는 도 15, 도 16에 각각 표시되는 패턴 PT2, PT3의 데이터로 이행한다.If this judgment is justified, the 8-bit unit data is then allocated in the order of patterns PT2, PT3, PTl, PT2, ... Correspondingly, each time the clock cycle advances one by one (i.e. each time the clock signal Clk rises), the mode shifts sequentially to the second and third modes, and accordingly, the data output as the extraction signal Dout is shown in FIG. 15. The data is shifted to the data of the patterns PT2 and PT3 shown in Fig. 16, respectively.

다음의 클록 사이클에서, 도 17에 도시한 바와 같이, 시프트 레지스터(11)에는 정당하게 추출되어야 할 데이터는 존재하지 않는다. 이 때, 모드는 제 4 모드로 시프트하고 있고, 시프트 레지스터(11)로부터 추출된 패턴 PTl, PT2, PT3의 데이터 모두가 추출 신호 Dout으로서는 선택되지 않아, 바로 전의 클록 사이클에서의 추출 신호 Dout의 값이 유지된다. 즉, 이 클록 사이클에서, 데이터 추출부(1)는 일시 휴지 상태, 즉「대기 상태」에 놓여진다. 이「대기 상태」에 한해서, 대기 상태 표시 신호 Wt가 액티브로 된다. 즉, 대기 상태 표시 신호 Wt는 「대기 상태」를 표시하는 신호로서 기능한다.In the next clock cycle, as shown in Fig. 17, there is no data to be duly extracted in the shift register 11. At this time, the mode is shifted to the fourth mode, and all of the data of the patterns PTl, PT2, PT3 extracted from the shift register 11 are not selected as the extraction signal Dout, and thus the value of the extraction signal Dout in the immediately preceding clock cycle. Is maintained. That is, in this clock cycle, the data extraction section 1 is placed in a pause state, that is, a "wait state". Only in this "standby state", the standby state display signal Wt becomes active. That is, the standby state display signal Wt functions as a signal for displaying the "standby state".

다음의 클록 사이클에서, 모드는 제 1 모드로 복귀하고, 도 14에 표시된 패턴 PT1의 데이터가 추출 신호 Dout으로서 출력된다. 이 경우, 패턴 PTl의 데이터는 일반적으로는 동기 코드 Cd가 아닌 것은 물론이다. 이하, 클록 사이클마다 모드가 제 1 내지 제 4 모드 사이를 순환적이고 또한 순차적으로 이행(즉, 시프트)함에 따라서, 패턴 PTl, PT2, PT3의 선택 및 「대기 상태」의 4 종류가 순차적으로 전개된다.In the next clock cycle, the mode returns to the first mode, and the data of the pattern PT1 shown in Fig. 14 is output as the extraction signal Dout. In this case, it goes without saying that the data of the pattern PTl is generally not the sync code Cd. Hereinafter, four modes of the selection of the patterns PTl, PT2, PT3 and the "standby state" are sequentially developed as the mode cyclically and sequentially shifts (i.e., shifts) between the first to fourth modes every clock cycle. .

이 시프트 동작은 비동기 상태가 발생하든지(록 레벨 LL이 "0"이 되든지), 또는, 클록 사이클이 패킷 Pkt의 구획에 상당할(동기 신호 Sync가 "1"로 될) 때까지 반복적으로 행해진다. 록 레벨 LL이 "0"이 되든지 또는, 동기 신호 Sync가 "1"이 되었을 때, 도 11 내지 도 13 중 어디에 상당하는지가 판정되고, 예컨대 도 12에만 해당한다고 판정되면, 현재의 모드와는 무관하게 모드가 제 2 모드로 변경되고, 그 후의 모드는 제 3, 4, 1, 2, 3 모드의 순서로 순환적으로 시프트하게 된다.This shift operation is performed repeatedly until an asynchronous state occurs (lock level LL becomes "0"), or until the clock cycle corresponds to the segment of packet Pkt (synchronized signal Sync becomes "1"). . When the lock level LL becomes "0" or when the synchronization signal Sync becomes "1", it is determined which one of Figs. 11 to 13 corresponds to, for example, only in Fig. 12, regardless of the current mode. The mode is changed to the second mode, and the subsequent modes are cyclically shifted in the order of the third, fourth, one, two, and three modes.

또한, 도 13에만 해당한다고 판정되면, 모드는 제 3 모드로 변경되고, 그 후의 모드는 제 4, 1, 2, 3, 4 모드의 순서로 순환적으로 시프트하게 된다. 또, 도 11 내지 도 13 중 어느 것에도 해당하지 않는다든지 또는, 복수개에 해당할 때에는 순환적인 시프트 동작이 그대로 유지된다.In addition, if it determines with FIG. 13 only, a mode is changed to a 3rd mode, and subsequent modes are cyclically shifted in order of 4th, 1, 2, 3, 4 mode. In addition, when it does not correspond to any of FIGS. 11-13, or when it corresponds to several, cyclic shift operation is maintained as it is.

즉, 통상적으로는 패턴 PTl, PT2, PT3의 선택 및 「대기 상태」에 대응하는 제 1 내지 제 4 모드의 동작이 이러한 순서로 순환적으로 전개된다. 그리고, 록 레벨 LL이 "0"이 된다든지 또는, 동기 신호 Sync가 "1"로 되었을 때에, 패턴 PTl, PT2, PT3의 데이터 중 어느 하나만이 동기 코드 Cd와 일치한다면, 그 결과에 따라, 모드는 제 1 내지 제 3 모드 중 어느 하나로 점프한다.That is, normally, the operations of the first to fourth modes corresponding to the selection of the patterns PTl, PT2 and PT3 and the "standby state" are cyclically developed in this order. If only one of the data of the patterns PTl, PT2, PT3 coincides with the sync code Cd when the lock level LL becomes "0" or the sync signal Sync becomes "1", the mode is determined according to the result. Jumps to any one of the first to third modes.

패킷 Pkt를 구성하는 8 비트 길이의 단위 데이터는 임의의 6 비트 길이의 단위 데이터의 위치를 기준으로 하여, 패턴 PTl, PT2, PT3, PTl, PT2, ····의 순으로 입력 데이터 신호 Data_In에 빈틈없이 할당되어 있다. 데이터 추출부(1)가 8 비트 길이의 단위 데이터의 열을 입력 데이터 신호 Data_In으로부터 추출하는 순서로는 정당한 패턴 PTl, PT2, PT3, PTl, PT2, ····의 순서 뿐만아니라, 정당하지 않은 2 종류의 패턴 PT2, PT3, PTl, PT2, PTl, ····의 순서 및 패턴 PT3, PTl, PT2, PTl, PT2, ····의 순서를 부가한 총 3 종류의 추출 순서가 있을 수 있다.The 8-bit long unit data constituting the packet Pkt is input to the input data signal Data_In in the order of patterns PTl, PT2, PT3, PTl, PT2, ... on the basis of the position of any 6-bit unit data. It is allocated tightly. In order for the data extracting unit 1 to extract the 8-bit long unit data string from the input data signal Data_In, not only the order of the patterns PTl, PT2, PT3, PTl, PT2, ... There can be a total of three types of extraction sequence with the order of two types of pattern PT2, PT3, PTl, PT2, PTl, ... and the pattern PT3, PTl, PT2, PTl, PT2, ... have.

패턴 PT1, PT2, PT3의 데이터와 동기 코드 Cd와의 비교 결과에 따라, 모드가 제 1 내지 제 3 모드 중 어느 하나로 점프하는 것은 입력 데이터 신호 Data_In 중에서 판독된 동기 코드 Cd가 3 종류의 패턴 PTl, PT2, PT3 중 어느 것에 할당되어 있는가에 근거하여, 그 후의 추출 순서로서, 3 종류의 순서 중 하나를 선택하는 것에 상당한다. 이 때, 동기 코드 Cd가 할당되어 있는 패턴을 포함하는 순서가 선택된다. 통상의 기간에 있어서, 모드가 점프하지 않고 계속 시프트해 가는 것은 선택된 순서에서의 추출이 계속되는 것을 의미한다.According to the comparison result of the data of the patterns PT1, PT2, PT3 and the synchronization code Cd, the mode jumps to any one of the first to third modes, so that the synchronization code Cd read out of the input data signal Data_In is the three types of patterns PTl, PT2. On the basis of which PT3 is assigned, it is equivalent to selecting one of three types of order as a subsequent extraction order. At this time, the order including the pattern to which the sync code Cd is assigned is selected. In the normal period, continuous shifting of the mode without jumping means that extraction in the selected order is continued.

일단, 선택된 순서가 반드시 정당한 순서라고는 할 수 없다. 입력 데이터 신호 Data_In 중에는 3 종류의 패턴 PTl, PT2, PT3 중 정당한 패턴과는 상이한 패턴으로 추출된 8 비트의 데이터가 때때로 동기 코드 Cd와 동일한 값을 가지는 경우도 있을 수 있다. 장치가 비동기 상태에 있을 때 혹은, 패킷 Pkt의 구획에 도달했다고 판단되었을 때, 동기 코드 Cd를 기준으로 하여, 모드가 제 1 내지 제 3 모드중 어느 하나로 점프하는 것은 선택되어 있는 추출 순서가 오류였을 때, 정당한 순서로 수정할 수 있게 하기 위해서이다.First, the selected order is not necessarily a valid order. In the input data signal Data_In, 8-bit data extracted in a pattern different from a legitimate pattern among three types of patterns PTl, PT2 and PT3 may sometimes have the same value as the sync code Cd. When the device is in an asynchronous state or when it is determined that the partition of the packet Pkt has been reached, jumping from one of the first to the third modes to the mode based on the sync code Cd was an error in the selected extraction order. This is to allow modifications in the proper order.

<2-4. 동기 제어부와 동기 검출부><2-4. Synchronization Control Unit and Synchronization Detector>

도 18은 동기 제어부(2)의 구성을 도시한 블럭도이다. 동기 제어부(2)에는 동기 검출부(31), 선두 신호(헤드 신호) 생성부(32), 최종 신호(테일(tail) 신호) 생성부(33), 동기 신호 생성부(34) 및 데이터 출력부(35)가 구비되어 있다. 동기 검출부(31)와 록 레벨 체크부(17)(도 4)에 의해, 본 발명의 동기 판정부가 구성된다.18 is a block diagram showing the configuration of the synchronization control unit 2. The synchronization controller 2 includes a synchronization detector 31, a head signal (head signal) generator 32, a final signal (tail signal) generator 33, a synchronization signal generator 34, and a data output unit. 35 is provided. The synchronization detection unit 31 and the lock level check unit 17 (FIG. 4) constitute a synchronization determination unit of the present invention.

동기 제어부(2)에는 입력 신호로서, 동기 코드 Cd, 클록 신호 Clk, 리셋 신호 RST, 대기 상태 표시 신호 Wt 및 추출 신호 Dout이 입력된다. 대기 상태 표시 신호 Wt 및 추출 신호 Dout은 데이터 추출부(1)로부터 공급된다. 동기 검출부(31)는, 데이터 추출부(1)에서 참조되는 록 레벨 LL을 산출함과 동시에, 선두 신호 생성부(32)에서 참조되는 처리 번호 Pd를 산출한다. 선두 신호 생성부(32), 최종 신호 생성부(33) 및 동기 신호 생성부(34)는 각각 선두 신호 Sync_Head, 최종 신호 Sync_Tai1 및 동기 신호 Sync를 생성하여 출력한다. 또한, 데이터 출력부(35)는 추출 신호 Dout에 근거하여, 출력 데이터 신호 Data_Out을 출력한다.As the input signal, the synchronization control unit 2 receives the synchronization code Cd, the clock signal Clk, the reset signal RST, the standby state display signal Wt and the extraction signal Dout. The standby state indication signal Wt and the extraction signal Dout are supplied from the data extraction section 1. The synchronization detection unit 31 calculates the lock level LL referred to by the data extraction unit 1 and also calculates the process number Pd referred to by the head signal generation unit 32. The head signal generator 32, the final signal generator 33, and the sync signal generator 34 generate and output the head signal Sync_Head, the last signal Sync_Tai1, and the sync signal Sync, respectively. In addition, the data output unit 35 outputs the output data signal Data_Out based on the extraction signal Dout.

도 19는 동기 검출부(31)의 내부 구성을 도시한 블럭도이다. 동기 검출부(31)에는 비교부(41), 록 레벨 생성부(42), 처리 번호 생성부(43), 리셋 판정부(44) 및 대기 상태 판정부(45)가 구비되어 있다. 록 레벨 생성부(42)와 록 레벨 체크부(17)(도 4)에 의해서, 본 발명의 상태 판정부가 구성된다.19 is a block diagram showing the internal configuration of the synchronization detector 31. As shown in FIG. The synchronization detector 31 includes a comparison unit 41, a lock level generator 42, a process number generator 43, a reset determination unit 44, and a standby state determination unit 45. The lock level generator 42 and the lock level check unit 17 (FIG. 4) constitute a state determination unit of the present invention.

도 20은 동기 검출부(31)의 동작의 흐름을 도시한 흐름도이다. 이 동작 흐름에 있어서도, 시프트 레지스터(11)의 동작 흐름에 관한 도 5의 단계 S1, S5에 각각 상당하는 단계 S41, S62가 구비되어 있고, 프로세스를 종료해야 한다는 판정이 얻어질 때까지 단계 S41 내지 S62의 프로세스 루프가 반복적으로 실행된다. 또한, 단계 S42 이하의 프로세스는 클록 신호 Clk의 상승 에지에 동기하여 개시된다.20 is a flowchart showing the flow of the operation of the synchronization detector 31. Also in this operation flow, steps S41 and S62 corresponding to steps S1 and S5 of Fig. 5 relating to the operation flow of the shift register 11 are provided, respectively, and from steps S41 to S until the determination is made that the process should be terminated. The process loop of S62 is repeatedly executed. In addition, the process of step S42 and below is started in synchronization with the rising edge of the clock signal Clk.

단계 S42는 리셋 신호 RST가 액티브("0")인지의 여부를 판정한다. 리셋 신호 RST가 액티브이면, 단계 S43, S44의 리셋 처리가 실행된다. 즉, 록 레벨 LL 및 처리 번호 Pd의 쌍방이 초기값 "0"으로 설정된다. 한편, 리셋 신호 RST가 정상 상태("1")이면, 통상적 프로세스인 단계 S45 이하의 프로세스가 실행된다.Step S42 determines whether the reset signal RST is active ("0"). If the reset signal RST is active, the reset processing of steps S43 and S44 is executed. That is, both the lock level LL and the process number Pd are set to the initial value "0". On the other hand, if the reset signal RST is in the normal state (" 1 "), processes below step S45, which are ordinary processes, are executed.

단계 S45는 대기 상태 표시 신호 Wt가 정상 상태("0")인지의 여부를 판정한다. 대기 상태 표시 신호 Wt가 정상 상태가 아닌 경우, 즉, 현재의 클록 사이클이「대기 상태」인 경우의 프로세스는 직접 단계 S62로 이행한다. 즉, 「대기 상태」에서는 어떤 프로세스도 실행되지 않는다.Step S45 determines whether the standby state display signal Wt is in the normal state ("0"). When the wait state display signal Wt is not in the normal state, that is, when the current clock cycle is the "standby state", the process goes directly to step S62. In other words, no process is executed in the "standby state."

한편, 대기 상태 표시 신호 Wt가 정상 상태이면, 단계 S46에 있어서, 추출 신호 Dout의 값이 동기 코드 Cd와 비교된다. 그리고, 추출 신호 Dout이 동기 코드 Cd와 일치하고 있으면, 단계 S47 내지 S55의 프로세스가 행하여지고, 반대로 일치하지 않으면, 단계 S56 내지 S61의 프로세스가 행하여진다.On the other hand, if the standby state display signal Wt is in the normal state, the value of the extraction signal Dout is compared with the synchronization code Cd in step S46. If the extraction signal Dout coincides with the synchronization code Cd, the processes of steps S47 to S55 are performed, and if not, otherwise, the processes of steps S56 to S61 are performed.

단계 S47 내지 S55에서는, 처리 번호 Pd와 록 레벨 LL의 현재값에 근거하여, 처리 번호 Pd 및 록 레벨 LL의 값이 갱신된다. 즉, 처리 번호 Pd가 "0"일 때에는처리 번호 Pd는 값 "1"만큼 증가(increment)된다. 이 때, 록 레벨 LL이 상한값(이하의 예에서는 값 "7")에 도달해 있지 않으면, 록 레벨 LL도 값 "1"만큼 증가된다.In steps S47 to S55, the values of the process number Pd and the lock level LL are updated based on the current value of the process number Pd and the lock level LL. That is, when the process number Pd is "0", the process number Pd is incremented by the value "1". At this time, if the lock level LL does not reach the upper limit value (value "7" in the following example), the lock level LL is also increased by the value "1".

반대로, 처리 번호 Pd가 "0"이 아닐 때(즉, Pd=1 내지 203), 록 레벨 LL 및 처리 번호 Pd는 다음과 같이 설정된다. 즉, 록 레벨 LL이 "0"이면, 처리 번호 Pd는 "1"로 설정된다. 록 레벨 LL이 "0"이 아니고(즉, LL=1 내지 7) 또한, 처리 번호 Pd가 "203"이 아닐 때(즉, Pd=1 내지 202), 처리 번호 Pd는 "1"만큼 증가된다. 록 레벨 LL이 "0"이 아니고(즉, LL=1 내지 7) 또한, 처리 번호 Pd가 "203"일 때, 처리 번호 Pd는 초기값 "0"으로 복귀된다.In contrast, when the process number Pd is not " 0 " (i.e., Pd = 1 to 203), the lock level LL and the process number Pd are set as follows. In other words, when the lock level LL is "0", the process number Pd is set to "1". When the lock level LL is not "0" (i.e., LL = 1 to 7) and the process number Pd is not "203" (ie, Pd = 1 to 202), the process number Pd is increased by "1". . When the lock level LL is not "0" (ie, LL = 1 to 7) and the process number Pd is "203", the process number Pd is returned to the initial value "0".

단계 S56 내지 S61에 있어서도, 처리 번호 Pd와 록 레벨 LL의 현재값에 근거하여, 처리 번호 Pd 및 록 레벨 LL의 값이 갱신된다. 즉, 처리 번호 Pd가 "203"이 아니면, 처리 번호 Pd는 "1"만큼 증가된다. 반대로 처리 번호 Pd가 "203"이면, 처리 번호 Pd는 "0"으로 초기화된다. 록 레벨 LL은 처리 번호 Pd가 "0"이고 더구나, 록 레벨 LL이 "0"이 아닐(즉, LL=1 내지 7) 때에 한해서, "1"만큼 감소(decrement)된다.Also in steps S56 to S61, the values of the process number Pd and the lock level LL are updated based on the current value of the process number Pd and the lock level LL. That is, if the process number Pd is not "203", the process number Pd is increased by "1". In contrast, when the process number Pd is "203", the process number Pd is initialized to "0". The lock level LL is decremented by "1" only when the process number Pd is "0" and the lock level LL is not "0" (that is, LL = 1 to 7).

이상의 프로세스가 종료하면, 프로세스는 단계 S62로 이행한다. 단계 S41 내지 단계 S62의 프로세스가 반복하여 실행됨으로써, 처리 번호 Pd는 "0" 내지 "203"의 범위에서 변화하고, 록 레벨 LL은 "0" 내지 "7"의 범위에서 변화한다. 또한, 단계 S42의 리셋 신호 RST의 판정은 리셋 판정부(44)에서 실행되고, 단계 S45의 대기 상태 표시 신호 Wt의 판정은 대기 상태 판정부(45)에서 실행된다.When the above process ends, the process proceeds to step S62. By repeatedly executing the process of steps S41 to S62, the process number Pd changes in the range of "0" to "203", and the lock level LL changes in the range of "0" to "7". In addition, determination of the reset signal RST of step S42 is performed by the reset determination part 44, and determination of the standby state display signal Wt of step S45 is performed by the standby state determination part 45. FIG.

또한, 단계 S47, S50, S56, S58에 있어서의 처리 번호 Pd의 현재값의 판정및 단계 S48, S53, S59에 있어서의 록 레벨 LL의 현재값의 판정은 록 레벨 생성부(42)와 처리 번호 생성부(43)의 쌍방에서 실행된다. 단계 S44, S49, S51, S52, S55, S57, S61에 있어서의 처리 번호 Pd의 설정 처리는 처리 번호 생성부(43)에서 실행된다. 또한, 단계 S43, S50, S54, S60에 있어서의 록 레벨 LL의 설정 처리는 록 레벨 생성부(42)에 의해서 실행된다.In addition, the determination of the present value of the process number Pd in steps S47, S50, S56, and S58 and the determination of the present value of the lock level LL in steps S48, S53, and S59 are performed by the lock level generator 42 and the process number. It is executed by both of the generation parts 43. The process number generation unit 43 executes the process of setting the process number Pd in the steps S44, S49, S51, S52, S55, S57, and S61. The lock level generator 42 executes the setting process of the lock level LL in steps S43, S50, S54, and S60.

<2-5. 동기 검출부의 동작예><2-5. Operation Example of Synchronization Detector>

도 21 및 도 22는 동기 검출부(31)의 동작예를 도시한 동작 설명도이다. 이들 도면에 있어서, 하나의 패킷 Pkt에 대응하는 기간은 부호 "Pkt"로 표시되어 있다. 또한, 빗금친 직사각형 테두리는 동기 코드 Cd와 동일한 값을 갖는 추출 신호 Dout을 나타내고, 하얗게 비어있는 직사각형 테두리는 동기 코드 Cd와는 일치하지 않는 값을 갖는 추출 신호 Dout을 나타내고 있다. 추출 신호 Dout은 추출 순서가 잘못되지 않고 또한, 통신 과정 중에서 데이터 신호에 오류가 발생하지 않으면, 패킷 Pkt의 구획마다 선두어의 위치에 동기 코드 Cd가 나타난다.21 and 22 are operation explanatory diagrams showing an operation example of the synchronization detection unit 31. In these figures, the period corresponding to one packet Pkt is indicated by the symbol "Pkt". In addition, the hatched rectangular frame represents the extraction signal Dout having the same value as the sync code Cd, and the white empty rectangle frame represents the extraction signal Dout having a value that does not match the sync code Cd. In the extraction signal Dout, if the extraction order is not wrong, and no error occurs in the data signal during the communication process, the synchronization code Cd appears at the position of the leading word for each section of the packet Pkt.

동기 검출부(31)가 동작을 개시한 시점에서는 리셋 신호 RST가 액티브이기 때문에, 처리 번호 Pd 및 록 레벨 LL의 모두가 초기값 "0"으로 설정되어 있다. 리셋이 해제된(즉, 리셋 신호 RST가 정상 상태(normal)로 설정된) 후에, 추출 신호 Dout의 입력이 시작된다. 동기 검출부(31)에서는 최초로 동기 코드 Cd가 나타나면, 단계 S55에 있어서 처리 번호 Pd가 "1"로 설정되고 동시에, 단계 S54에 있어서 록 레벨 LL이 "1"로 설정된다.Since the reset signal RST is active at the time when the synchronization detector 31 starts to operate, both the process number Pd and the lock level LL are set to the initial value "0". After the reset is released (i.e., the reset signal RST is set to normal), the input of the extraction signal Dout is started. When the synchronization code Cd first appears in the synchronization detector 31, the process number Pd is set to "1" in step S55, and at the same time, the lock level LL is set to "1" in step S54.

그 후, 클록 사이클마다, 단계 S55, S56, S61을 경유함으로써, 처리 번호 Pd가 "1"씩 증가하여 간다. 패킷 Pkt의 선두어 이외의 위치에 동기 코드 Cd와 동일한 값이 나타나더라도, 록 레벨 LL이 "0"이 아닌 즉, "1" 이상인 한, 단계 S48, S50, S52의 프로세스가 행해지므로, 록 레벨 LL은 갱신되지 않고, 처리 번호 Pd는 "203"까지 차차 증가되어 간다.Thereafter, the processing number Pd increases by " 1 " for each clock cycle via the steps S55, S56, and S61. Even if the same value as the sync code Cd appears in a position other than the head word of the packet Pkt, as long as the lock level LL is not "0", that is, "1" or more, the processes of steps S48, S50, and S52 are performed. The LL is not updated, and the process number Pd gradually increases to "203".

처리 번호 Pd가 "203"에 도달하면, 단계 S56, S57 또는 단계 S48, S50, S52를 경유함으로써, 처리 번호 Pd는 "0"으로 복귀된다. 다음의 클록 사이클에서, 도 21에 도시한 바와 같이, 패킷 Ptk의 선두어로서 동기 코드 Cd가 정상으로 나타났을 때에는 단계 S47, S53, S54, S55를 경유함으로써 처리 번호 Pd가 "1"로 증가됨과 동시에, 록 레벨 LL도 "2"로 증가된다.When the process number Pd reaches "203", the process number Pd returns to "0" by way of step S56, S57 or via steps S48, S50, S52. In the next clock cycle, as shown in Fig. 21, when the synchronization code Cd is found to be normal as the leading word of the packet Ptk, the process number Pd is increased to " 1 " by way of steps S47, S53, S54 and S55. At the same time, the lock level LL is also increased to "2".

이하 마찬가지로, 패킷 Pkt의 선두어로서 동기 코드 Cd가 정상으로 나타날 때마다 록 레벨 LL은 "3", "4", ····와 같이 순차적으로 상승하여 간다. 록 레벨 LL이 상한값 "7"에 도달하면, 패킷 Pkt의 선두어에 동기 코드 Cd가 나타나더라도 단계 S47, S53, S55를 경유함으로써, 처리 번호 Pd만이 "1"로 증가되고, 록 레벨 LL은 더 이상 변경되지 않고 상한값 "7"로 유지된다. 즉, 록 레벨 LL은 어떠한 경우에도 미리 설정된 상한값을 초과하는 경우는 없다.Similarly, each time the sync code Cd appears as a leading word of the packet Pkt, the lock level LL rises sequentially as "3", "4", ... When the lock level LL reaches the upper limit value "7", only the process number Pd is increased to "1" by way of steps S47, S53 and S55 even though the synchronization code Cd appears in the head word of the packet Pkt, and the lock level LL is further increased. It remains unchanged and remains at the upper limit value "7". In other words, the lock level LL does not exceed the preset upper limit in any case.

한편, 도 21에 도시한 바와 같이, 록 레벨 LL이 예컨대 "3"일 때, 다음의 패킷 Pkt의 선두어에 동기 코드 Cd가 나타나지 않았을 때, 동기 검출부(31)의 처리는 단계 S56, S58, S59, S60, S61을 경유하게 된다. 그 결과, 처리 번호 Pd가 "1"로 증가됨과 동시에 록 레벨 LL은 "1"만큼 감소된다. 즉, 록 레벨 LL은 "3"에서 "2"로 하강한다.On the other hand, as shown in Fig. 21, when the lock level LL is " 3 ", for example, when the synchronization code Cd does not appear in the head of the next packet Pkt, the process of the synchronization detection unit 31 performs steps S56, S58, Via S59, S60, S61. As a result, the process number Pd is increased to " 1 " and the lock level LL is decreased by " 1 ". That is, the lock level LL falls from "3" to "2".

다음의 패킷 Pkt의 선두어에 동기 코드 Cd가 나타나면, 록 레벨 LL은 다시 "1"만큼 상승하지만, 반대로 도 21에 예시한 바와 같이, 동기 코드 Cd가 나타나지 않으면, 록 레벨 LL은 더 감소되어 "1"로 된다. 또한 다음의 패킷 Pkt의 선두어에 있어서도, 동기 코드 Cd가 나타나지 않으면, 록 레벨 LL은 감소되므로 초기값 "0"으로 복귀한다.If the sync code Cd appears at the head of the next packet Pkt, the lock level LL rises again by " 1 ", whereas, as illustrated in FIG. 21, if the sync code Cd does not appear, the lock level LL is further reduced to " 1 ". Also, even in the head of the next packet Pkt, if the sync code Cd does not appear, the lock level LL is reduced and returns to the initial value " 0 ".

록 레벨 LL이 "0"일 때에는 추출 신호 Dout 중에 동기 코드 Cd와 일치하는 것이 나타나지 않는 한, 단계 S56, S58, S61 또는 단계 S56, S57 중 어느 처리 경로를 통해서, 처리 번호 Pd는 "0"에서 "20"까지의 상승을 반복하고, 록 레벨 LL은 값 "0"을 계속 유지한다.When the lock level LL is " 0 ", the process number Pd is set to " 0 " through any of the processing paths of steps S56, S58, S61, or steps S56, S57, unless a match with the sync code Cd appears in the extraction signal Dout. The rise to "20" is repeated, and the lock level LL keeps the value "0".

도 22는 도 21에 후속하는 동작을 도시하고, 도 21 및 도 22에 있어서 공통으로 표시되는 부호(A)가 동일한 시점을 나타내고 있다. 록 레벨 LL이 "0"일 때는 최초에 나타난 동기 코드 Cd가 잠정적으로 패킷 Pkt의 선두어로서 취급된다. 도 22에 예시한 바와 같이, 처리 번호 Pd가 값 "k"일 때에 동기 코드 Cd가 나타나면, 단계 S48, S49에 의해서, 처리 번호 Pd는 "l"로 설정되지만, 록 레벨 LL은 변화하지 않고 "0"을 유지한다. 처리 번호 Pd가 "1"로 설정된 것은 입력된 동기 코드 Cd가 패킷 Pkt의 선두어라고 잠정적으로 간주된 것 즉, 패킷 Pkt의 구획의 위치가 잠정적으로 정해진 것에 상당한다.FIG. 22 shows the operation subsequent to FIG. 21, and indicates the same point in time in which symbols A commonly displayed in FIGS. 21 and 22 are the same. When the lock level LL is "0", the first synchronization code Cd is tentatively treated as the leading word of the packet Pkt. As illustrated in Fig. 22, when the synchronization code Cd appears when the process number Pd is the value "k", the process number Pd is set to "l" by steps S48 and S49, but the lock level LL does not change. Keep 0 ". The process number Pd set to " 1 " corresponds to the fact that the input sync code Cd is tentatively regarded as the head of the packet Pkt, that is, the position of the partition of the packet Pkt is tentatively determined.

잠정적인 패킷 Pkt의 다음의 선두어가 나타나기 전에 즉, 처리 번호 Pd가 "203"을 경유하여 "0"으로 초기화되기 전에(도 22에 있어서, 처리 번호 Pd가 값"i"일 때) 동기 코드 Cd와 동일한 데이터가 나타나면, 록 레벨 LL은 "0"인 상태이므로 단계 S48, S49에 의해서 처리 번호 Pd는 재차 "1"로 설정된다. 즉, 잠정적인 패킷 Pkt의 선두어의 위치가 새로운 동기 코드 Cd의 위치로 수정된다.Before the next leading word of the tentative packet Pkt appears, i.e., before the process number Pd is initialized to "0" via "203" (when the process number Pd is the value "i" in FIG. 22), the synchronization code Cd When the same data as is shown, since the lock level LL is in a state of "0", the process number Pd is set again to "1" by steps S48 and S49. That is, the position of the head of the tentative packet Pkt is corrected to the position of the new sync code Cd.

이하 마찬가지로, 처리 번호 Pd가 "2O3"을 지나서 "0"으로 되돌아가기 전에(도 22에 있어서, 처리 번호 Pd가 값 "j", "p", "q"일 때) 동기 코드 Cd가 나타날 때마다, 처리 번호 Pd는 "1"로 설정되어 잠정적인 패킷 Pkt의 선두어의 위치가 수정된다. 그 기간에는 록 레벨 LL은 "0"으로 유지된 상태이다.Likewise below, when the synchronization code Cd appears before the process number Pd returns to "0" past "2O3" (in FIG. 22, when the process number Pd is the values "j", "p", "q"). Each time, the process number Pd is set to " 1 " so that the position of the head of the tentative packet Pkt is corrected. In that period, the lock level LL remains at " 0 ".

처리 번호 Pd가 "2O3"을 경유하여 "0"으로 초기값으로 복귀될 때까지 동기 코드 Cd가 나타나지 않고 더구나, 처리 번호 Pd가 "0"이 되었을 때, 즉, 잠정적인 패킷 Pkt의 다음의 선두어의 위치에 동기 코드 Cd가 나타나면, 단계 S47, S53, S54, S55에 의해서 처리 번호 Pd가 "1"로 증가됨과 동시에 록 레벨 LL이 "1"로 증가된다.The sync code Cd does not appear until the process number Pd returns to the initial value to "0" via "2O3". Moreover, when the process number Pd becomes "0", that is, the next head of the tentative packet Pkt. When the synchronization code Cd appears at the position of the word, the processing number Pd is increased to " 1 " and the lock level LL is increased to " 1 " at step S47, S53, S54 and S55.

록 레벨 LL이 "1" 이상이면, 이미 설명한 바와 같이, 패킷 Pkt의 선두어 이외의 위치에 동기 코드 Cd가 나타나더라도, 처리 번호 Pd는 "1"로 설정되는 일은 없다. 즉, 록 레벨 LL이 "0"으로부터 "1"로 상승하면, 잠정적인 패킷 Pkt의 구획의 위치가 확정적으로 취급되게 된다. 록 레벨 LL이 "0"으로 복귀되지 않는 한, 패킷 Pkt의 구획의 위치는 변화하지 않는다. 이 때의 동기화 장치(101)의 동작 상태는 「동기 상태」라고 불린다. 이에 대하여, 록 레벨 LL이 "0"이면, 패킷 Pkt의 구획은 잠정적으로 취급되어 항상 새로운 구획이 탐색되게 된다. 이 때의 동기화 장치(101)의 동작 상태는 「비동기 상태」라고 불린다.If the lock level LL is "1" or more, as described above, even if the synchronization code Cd appears at a position other than the head word of the packet Pkt, the process number Pd is not set to "1". That is, when the lock level LL rises from "0" to "1", the position of the partition of the tentative packet Pkt is treated definitely. As long as the lock level LL does not return to " 0 ", the position of the partition of the packet Pkt does not change. The operation state of the synchronization device 101 at this time is called "synchronization state". In contrast, if the lock level LL is &quot; 0 &quot;, the partition of the packet Pkt is tentatively handled so that a new partition is always searched for. The operation state of the synchronization device 101 at this time is called "asynchronous state".

록 레벨 LL이 "1" 이상일 때는 패킷 Pkt의 선두어에 동기 코드 Cd가 나타날 때마다 그 패킷 Pkt의 구획이 정당할 가능성이 높음을 반영하여, 록 레벨 LL은 상한값에 이를 때까지 "1"씩 상승하여 비동기 상태에 대응하는 "0"으로부터 멀어진다. 반대로, 패킷 Pkt의 선두어에 동기 코드 Cd 이외의 값이 나타날 때마다 그 패킷 Pkt의 구획이 정당할 가능성이 낮음을 반영하여, 록 레벨 LL은 "1"씩 하강하여 비동기 상태에 대응하는 "0"에 접근한다. 그리고, 록 레벨 LL이 "0"에 이르면, 동작 상태는 비동기 상태로 복귀한다. 이와 같이, 록 레벨 LL은 패킷 Pkt의 구획이 정당할 가능성(likelihood)을 표현하는 변수라고 말할 수 있다.When the lock level LL is "1" or more, whenever the sync code Cd appears in the leading word of the packet Pkt, the division of the packet Pkt is likely to be justified, and the lock level LL is "1" until the upper limit is reached. Raise and move away from "0" corresponding to the asynchronous state. On the contrary, each time a value other than the sync code Cd appears in the leading word of the packet Pkt, the lock level LL is lowered by "1" and "0" corresponding to the asynchronous state, reflecting that the partition of the packet Pkt is unlikely to be justified. Approach. When the lock level LL reaches "0", the operation state returns to the asynchronous state. As such, it can be said that the lock level LL is a variable representing the likelihood of the partitioning of the packet Pkt.

본 실시예에서는, 록 레벨 LL이 "0"인지 "1" 이상인지에 따라, 비동기 상태와 동기 상태를 구분하고 있지만, 두개의 상태를 분리하는 록 레벨 LL의 기준값은 "0"으로부터 상한값까지의 임의의 값으로 설정 가능하다. 예컨대, 록 레벨 LL이 "2" 이하이면 비동기 상태로 되고, "2"를 초과하는 값이면 동기 상태가 되도록 기준값을 "2"로 설정하는 것이 가능하다. 이 경우에는, 단계 S13(도 10), 단계 S42, S48, S59(도 20)에 있어서, 비교의 기준값을 "0"으로부터 "2"로 변경하면 무방하다.In this embodiment, the asynchronous state and the synchronous state are distinguished according to whether the lock level LL is "0" or "1" or more, but the reference value of the lock level LL separating the two states is from "0" to the upper limit. Can be set to any value. For example, it is possible to set the reference value to "2" so as to be asynchronous when the lock level LL is "2" or less and to be in a synchronous state when the lock level LL is "2" or less. In this case, in step S13 (FIG. 10), steps S42, S48, and S59 (FIG. 20), the reference value of the comparison may be changed from "0" to "2".

이 때에는, 잠정적으로 결정된 패킷 Pkt의 선두어에만 동기 코드 Cd가 3번 나타난 후에야 비로써 잠정적인 패킷 Pkt의 구획이 확정되어, 비동기 상태에서 동기 상태로 이행한다. 즉, 비동기 상태와 동기 상태를 구분하는 기준값이 높게 설정될수록 패킷 Pkt의 구획이 정당할 가능성이 보다 높아졌을 때에, 비동기 상태에서 동기 상태로의 이행이 행해진다. 즉, 기준값이 높을수록 패킷 Pkt의 구획의 정당성에 관해서 보다 신중한 판단이 행해지게 된다.At this time, only after the synchronization code Cd appears three times in the head word of the tentatively determined packet Pkt, the partition of the tentative packet Pkt is finally determined, and the transition from the asynchronous state to the synchronous state is performed. That is, when the reference value for distinguishing the asynchronous state from the synchronous state is set higher, the transition from the asynchronous state to the synchronous state is performed when the partition of the packet Pkt is more likely to be legitimate. In other words, the higher the reference value, the more careful judgment is made regarding the validity of the division of the packet Pkt.

동기화 장치의 목적은 입력 데이터 신호 Data_In에 할당된, 예컨대 8 비트 길이의 단위 데이터를 정당하게 추출함과 동시에, 패킷 Pkt의 구획을 식별하여 패킷 Pkt 형식의 데이터 신호를 재구성하는 데에 있다. 동기화 장치(101)에 록 레벨 LL이라는 변수를 도입함으로써, 패킷 Pkt의 구획에 대한 정당성의 가능성이 수량화(數量化)되고 또한, 그 정당성은 계속해서 시험되어, 실적에 따라 가능성이 증가 또는 저하된다. 그리고, 가능성의 정도에 따라, 패킷 Pkt의 구획을 잠정적인 것으로 하여 취급하는 「비동기 상태」와, 확정적인 것으로 하여 취급하는「동기 상태」로 동작 상태가 구분된다. 이 때문에 낭비 시간을 줄임으로써 오류가 적은 동기화가 고능률로 실행될 수 있게 된다.The purpose of the synchronization device is to legitimately extract, for example, 8-bit unit data assigned to the input data signal Data_In, and to reconstruct the data signal of the packet Pkt format by identifying the partition of the packet Pkt. By introducing a variable called lock level LL into the synchronization device 101, the probability of justification for the partition of the packet Pkt is quantified, and its validity is continuously tested, and the probability increases or decreases depending on the performance. . According to the degree of possibility, the operation state is divided into "asynchronous state" which treats the division of the packet Pkt as provisional, and "synchronous state" which treats as definite. This reduces waste time and allows for less error-prone synchronization.

<2-6. 선두 신호 생성부 등><2-6. Lead signal generator, etc.>

도 23은 선두 신호 생성부(32)의 동작의 흐름을 도시한 흐름도이다. 이 동작 흐름에 있어서, 단계 S78은 프로세스를 종료해야 한다는 판정이 이루어질 때까지 단계 S71 내지 S78의 프로세스 루프가 반복적으로 실행된다. 또한, 단계 S71이 구비되므로, 단계 S72 이하의 프로세스는 클록 신호 Clk의 상승 에지에 동기하여 시작된다.23 is a flowchart showing the flow of the operation of the head signal generator 32. In this operation flow, the process loops of steps S71 to S78 are repeatedly executed until a determination is made that step S78 should terminate the process. In addition, since step S71 is provided, the process under step S72 is started in synchronization with the rising edge of the clock signal Clk.

단계 S72는 리셋 신호 RST가 액티브("0")인지의 여부를 판정한다. 리셋 신호 RST가 액티브이면, 단계 S73의 리셋 처리가 실행되고, 선두 신호 Sync_Head가 정상 상태인 초기값 "1"로 설정된다. 그 후, 프로세스는 단계 S78로 이행한다.한편, 리셋 신호 RST가 정상 상태("1")이면, 통상 프로세스인 단계 S74 이하의 프로세스가 실행된다.Step S72 determines whether the reset signal RST is active ("0"). If the reset signal RST is active, the reset process in step S73 is executed, and the initial signal Sync_Head is set to an initial value " 1 " Thereafter, the process proceeds to step S78. On the other hand, if the reset signal RST is in the normal state ("1"), the process of step S74 or less, which is a normal process, is executed.

단계 S74는 대기 상태 표시 신호 Wt가 정상 상태("0")인지의 여부를 판정한다. 대기 상태 표시 신호 Wt가 정상 상태가 아닌 경우, 즉, 현재의 클록 사이클이 「대기 상태」인 경우, 프로세스는 직접 단계 S78로 이행한다. 즉, 「대기 상태」에서는 어떠한 프로세스도 실행되지 않는다.Step S74 determines whether the standby state display signal Wt is in the normal state ("0"). If the wait state display signal Wt is not in the normal state, that is, the current clock cycle is the "standby state", the process goes directly to step S78. In other words, no process is executed in the "standby state".

한편, 단계 S75에 있어서, 대기 상태 표시 신호 Wt가 정상 상태이면, 처리 번호 Pd의 값이 "0"인지의 여부가 판정된다. 그리고, 단계 S76에 있어서, 처리 번호 Pd가 출력 "0"이 아니면, 선두 신호 Sync_Head는 정상 상태("1")로 설정되고, 반대로, 단계 S77에 있어서, 처리 번호 Pd가 "0"과 일치하면, 선두 신호 Sync_head는 액티브("0")로 설정된다. 단계 S76 또는 S77이 종료하면, 프로세스는 단계 S78로 이행된다.On the other hand, in step S75, if the wait state display signal Wt is in a normal state, it is determined whether or not the value of the process number Pd is "0". If the process number Pd is not an output "0" in step S76, the head signal Sync_Head is set to a steady state ("1"). On the contrary, if the process number Pd coincides with "0" in step S77, , The head signal Sync_head is set to active ("0"). When step S76 or S77 ends, the process proceeds to step S78.

도 24는 최종 신호 생성부(33)의 동작의 흐름을 도시한 흐름도이다. 최종 신호 생성부(33)는 도 23에 도시한 선두 신호 생성부(32)와 같은 처리 경로를 따라 동작한다. 즉, 단계 S88에 있어서, 프로세스를 종료해야 한다는 판정이 이루어질 때까지, 단계 S81 내지 S88의 프로세스 루프가 반복적으로 실행된다. 또한, 단계 S82 이하의 프로세스는 클록 신호 Clk의 상승 에지에 동기하여 개시된다.24 is a flowchart showing the flow of operation of the final signal generator 33. The final signal generator 33 operates along the same processing path as the leading signal generator 32 shown in FIG. That is, in step S88, the process loops of steps S81 to S88 are repeatedly executed until a determination is made that the process should be terminated. In addition, the process of step S82 and below is started in synchronization with the rising edge of the clock signal Clk.

단계 S82는 리셋 신호 RST가 액티브("0")인지의 여부를 판정한다. 리셋 신호 RST가 액티브이면, 단계 S83에 있어서, 최종 신호 Sync_Tai1이 정상 상태인 초기값 "1"로 설정된다. 그 후, 프로세스는 단계 S88로 이행한다. 한편, 리셋 신호RST가 정상 상태("1")이면, 통상 프로세스인 단계 S84 이하의 프로세스가 실행된다.Step S82 determines whether the reset signal RST is active ("0"). If the reset signal RST is active, in step S83, the final signal Sync_Tai1 is set to an initial value "1" in a normal state. The process then proceeds to step S88. On the other hand, if the reset signal RST is in the normal state (" 1 "), the process of step S84 or lower which is a normal process is executed.

단계 S84는 대기 상태 표시 신호 Wt가 정상 상태("0")인지의 여부를 판정한다. 대기 상태 표시 신호 Wt가 정상 상태가 아닌 경우 즉, 현재의 클록 사이클이「대기 상태」인 경우의 프로세스는 직접 단계 S88로 이행한다. 즉, 「대기 상태」에서는 어떠한 프로세스도 실행되지 않는다.Step S84 determines whether the standby state display signal Wt is in the normal state ("0"). When the wait state display signal Wt is not in the normal state, that is, when the current clock cycle is the "standby state", the process goes directly to step S88. In other words, no process is executed in the "standby state".

한편, 단계 S85에 있어서, 대기 상태 표시 신호 Wt가 정상 상태이면, 처리 번호 Pd의 값이 "203"인지의 여부가 판정된다. 그리고, 단계 S86에 있어서, 처리 번호 Pd가 "203"이 아니면, 최종 신호 Sync_Tai1은 정상 상태("1")로 설정되고, 반대로, 단계 S87에 있어서, 처리 번호 Pd가 "203"으로 일치되어 있으면, 최종 신호 Sync_Tai1은 액티브("0")로 설정된다. 단계 S86 또는 S87이 종료하면, 프로세스는 단계 S88로 이행한다.On the other hand, in step S85, if the wait state display signal Wt is in a normal state, it is determined whether or not the value of the process number Pd is "203". If the process number Pd is not "203" in step S86, the final signal Sync_Tai1 is set to a steady state ("1"). On the contrary, if the process number Pd is matched to "203" in step S87. The final signal Sync_Tai1 is set to active ("0"). When step S86 or S87 ends, the process proceeds to step S88.

도 25는 동기 신호 생성부(34)의 동작의 흐름을 도시한 흐름도이다. 동기 신호 생성부(34)도 도 23에 도시한 선두 신호 생성부(32)와 같은 처리 경로를 따라 동작한다. 즉, 단계 S98에 있어서, 프로세스를 종료해야 한다는 판정이 이루어질 때까지, 단계 S91 내지 S98의 프로세스 루프가 반복적으로 실행된다. 또한, 단계 S92 이하의 프로세스는 클록 신호 Clk의 상승 에지에 동기하여 시작된다.25 is a flowchart showing the flow of operation of the synchronization signal generator 34. The synchronization signal generator 34 also operates along the same processing path as the head signal generator 32 shown in FIG. That is, in step S98, the process loops of steps S91 to S98 are repeatedly executed until a determination is made that the process should be terminated. Also, the process of step S92 and below is started in synchronization with the rising edge of the clock signal Clk.

단계 S92는 리셋 신호 RST가 액티브("0")인지의 여부를 판정한다. 단계 S93에 있어서, 리셋 신호 RST가 액티브이면, 동기 신호 Sync가 정상 상태인 초기값 "0"으로 설정된다. 그 후, 프로세스는 단계 S98로 이행된다. 한편, 리셋 신호RST가 정상 상태("1")이면, 통상 프로세스인 단계 S94 이하의 프로세스가 실행된다.Step S92 determines whether the reset signal RST is active ("0"). In step S93, if the reset signal RST is active, the synchronization signal Sync is set to an initial value "0" in a normal state. Thereafter, the process proceeds to step S98. On the other hand, if the reset signal RST is in the normal state (" 1 "), a process of step S94 or lower which is a normal process is executed.

단계 S94는 대기 상태 표시 신호 Wt가 정상 상태("0")인지의 여부를 판정한다. 대기 상태 표시 신호 Wt가 정상 상태가 아닌 경우, 즉, 현재의 클록 사이클이「대기 상태」인 경우, 프로세스는 직접 단계 S98로 이행된다. 즉, 「대기 상태」에서는 어떠한 프로세스도 실행되지 않는다.Step S94 determines whether the standby state display signal Wt is in the normal state ("0"). If the wait state display signal Wt is not in the normal state, that is, the current clock cycle is the "standby state", the process proceeds directly to step S98. In other words, no process is executed in the "standby state".

한편, 단계 S95에 있어서, 대기 상태 표시 신호 Wt가 정상 상태이면, 처리 번호 Pd의 값이 "203"인지의 여부가 판정된다. 그리고, 단계 S96에 있어서, 처리 번호 Pd가 "203"이 아니면, 동기 신호 Sync는 정상 상태("0")로 설정되고, 반대로, 단계 S97에 있어서, 처리 번호 Pd가 "203"으로 일치되어 있으면, 동기 신호 Sync는 액티브("1")로 설정된다. 단계 S96 또는 S97이 종료하면, 프로세스는 단계 S98로 이행된다.On the other hand, in step S95, if the wait state display signal Wt is in a normal state, it is determined whether or not the value of the process number Pd is "203". If the process number Pd is not "203" in step S96, then the synchronization signal Sync is set to a steady state ("0"). On the contrary, if the process number Pd coincides with "203" in step S97. The sync signal Sync is set to active ("1"). When step S96 or S97 ends, the process proceeds to step S98.

<2-7. 데이터 출력부와 클록 변조부><2-7. Data Output and Clock Modulator>

도 26은 데이터 출력부(35)의 동작의 흐름을 도시한 흐름도이다. 데이터 출력부(35)도 도 23에 도시한 선두 신호 생성부(32)와 마찬가지로, 단계 S106에 있어서, 프로세스를 종료해야 한다는 판정이 이루어질 때까지, 단계 S101 내지 S106의 프로세스 루프가 반복적으로 실행된다. 또한, 단계 S102 이하의 프로세스는 클록 신호 Clk의 상승 에지에 동기하여 개시된다.26 is a flowchart showing the flow of operation of the data output unit 35. Similarly to the head signal generation unit 32 shown in FIG. 23, the data output unit 35 also repeatedly executes the process loops of steps S101 to S106 until a determination is made that the process should be terminated in step S106. . In addition, the process of step S102 and below is started in synchronization with the rising edge of the clock signal Clk.

단계 S102는 리셋 신호 RST가 액티브("0")인지의 여부를 판정한다. 리셋 신호 RST가 액티브이면, 단계 S103에 있어서, 출력 데이터 신호 Data_Out이 초기값 "0"으로 설정된다. 그 후, 프로세스는 단계 S106으로 이행된다. 한편, 리셋 신호 RST가 정상 상태("1")이면, 통상 프로세스인 단계 S104 이하의 프로세스가 실행된다.Step S102 determines whether the reset signal RST is active ("0"). If the reset signal RST is active, in step S103, the output data signal Data_Out is set to an initial value "0". Thereafter, the process proceeds to step S106. On the other hand, if the reset signal RST is in the normal state (" 1 "), the process up to step S104, which is a normal process, is executed.

단계 S104는 대기 상태 표시 신호 Wt가 정상 상태("0")인지의 여부를 판정한다. 대기 상태 표시 신호 Wt가 정상 상태가 아닌 경우 즉, 현재의 클록 사이클이「대기 상태」인 경우, 프로세스는 직접 단계 S106으로 이행된다. 즉, 「대기 상태」에서는 어떠한 프로세스도 실행되지 않는다. 한편, 단계 S105에 있어서, 대기 상태 표시 신호 Wt가 정상 상태이면, 출력 데이터 신호 Data_Out에 추출 신호 Dout이 인가된다. 단계 S105가 종료하면, 프로세스는 단계 S106으로 이행된다.Step S104 determines whether the standby state indication signal Wt is in the normal state ("0"). If the wait state display signal Wt is not a normal state, that is, the current clock cycle is the "standby state", the process proceeds directly to step S106. In other words, no process is executed in the "standby state". On the other hand, in step S105, if the standby state display signal Wt is in a normal state, the extraction signal Dout is applied to the output data signal Data_Out. When step S105 ends, the process proceeds to step S106.

클록 사이클이「대기 상태」일 때, 단계 S105의 프로세스가 행하여지지 않기 때문에, 출력 데이터 신호 Data_Out으로서, 직전의 출력 데이터 신호 Data_Out의 값, 즉 1 클록 사이클 전의 값이 그대로 유지된다. 따라서, 「대기 상태」의 클록 사이클에 있어서, 추출 신호 Dout이 어떠한 값이더라도, 출력 데이터 신호 Data_Out에는 영향이 없다.When the clock cycle is in the "standby state", the process of step S105 is not performed. Therefore, as the output data signal Data_Out, the value of the previous output data signal Data_Out, that is, the value one clock cycle ago, is maintained as it is. Therefore, in the clock cycle of the "waiting state", the output data signal Data_Out is not affected even if the extraction signal Dout is any value.

이 때문에, 「대기 상태」에 있어서, 패턴 선택부(23)(도 4)는 직전의 추출 신호 Dout을 반드시 유지하지 않아도 된다. 바꿔 말하면, 도 10의 단계 S25는 필수가 아니고, 「대기 상태」에서는 추출 신호 Dout으로서 어떠한 값이 출력되어도 된다. 혹은, 도 26의 흐름도에 있어서, 단계 S25가 마련되면, 단계 S104의 비교 처리를 삭제하고, 리셋 신호 RST가 해제되어 있으면, 대기 상태 표시 신호 Wt의 값과는 무관하게 단계 S105의 프로세스가 항상 실행되도록 데이터 출력부(35)를 구성하여도 무방하다.For this reason, in the "standby state", the pattern selector 23 (Fig. 4) does not necessarily have to hold the immediately preceding extraction signal Dout. In other words, step S25 of FIG. 10 is not essential, and any value may be output as the extraction signal Dout in the "standby state". Alternatively, in the flowchart of FIG. 26, if step S25 is provided, the comparison process of step S104 is deleted, and if the reset signal RST is released, the process of step S105 is always executed regardless of the value of the wait state display signal Wt. The data output part 35 may be comprised as much as possible.

도 27은 클록 변조부(3)의 구성을 도시한 회로도이다. 클록 변조부(3)에는 플립플롭(51) 및 논리 소자(52)가 구비되어 있다. 플립플롭(51)의 데이터 입력 단자에는 대기 상태 표시 신호 Wt가 입력되고, 클록 입력 단자에는 클록 신호 Clk가 입력되어 있다. 그리고, 논리 소자(52)의 반전 입력 단자에는 플립플롭(51)의 출력 데이터가 입력되고, 비반전 입력 단자에는 클록 신호 Clk가 입력된다. 논리 소자(52)의 출력 데이터는 변조 클록 신호 MClk로서 외부로 출력된다.FIG. 27 is a circuit diagram showing the configuration of the clock modulator 3. FIG. The clock modulator 3 includes a flip-flop 51 and a logic element 52. The standby state display signal Wt is input to the data input terminal of the flip-flop 51, and the clock signal Clk is input to the clock input terminal. The output data of the flip-flop 51 is input to the inverting input terminal of the logic element 52, and the clock signal Clk is input to the non-inverting input terminal. The output data of the logic element 52 is output externally as the modulation clock signal MClk.

플립플롭(51)은 클록 신호 Clk의 하강에 동기하여, 대기 상태 표시 신호 Wt를 출력 신호로 유지한다. 논리 소자(52)는 비반전 입력 단자와 반전 입력 단자를 갖는 AND 회로이고, 플립플롭(51)의 출력 신호의 값이 "0"일 때에 한해서 클록 신호 Clk를 변조 클록 신호 MClk로서 출력하는 논리 스위치로서 기능한다.The flip-flop 51 holds the standby state display signal Wt as an output signal in synchronization with the falling of the clock signal Clk. The logic element 52 is an AND circuit having a non-inverting input terminal and an inverting input terminal, and a logic switch for outputting the clock signal Clk as the modulated clock signal MClk only when the value of the output signal of the flip-flop 51 is "0". Function as.

<2-8. 동기화 장치(101)의 출력 신호><2-8. Output signal of synchronization device 101>

도 28은 동기화 장치(101)가 출력하는 각종 출력 신호의 타이밍 차트이다. 출력 데이터 신호 Data_Out을 구성하는 단위인 1개의 패킷 Pkt에는 204 바이트의 신호, 즉, 204개의 8 비트 길이의 단위 데이터가 포함되어 있다. 이들 단위 데이터는 클록 신호 Clk의 펄스에 동기하여 출력된다. 그리고, 클록 신호 Clk의 4 주기(4 클록 사이클)마다 1 주기(1 클록 사이클)분의「대기 상태」가 나타난다. 따라서, 272 클록 사이클에서 1개의 패킷 Pkt의 출력이 종료된다.28 is a timing chart of various output signals output by the synchronization device 101. One packet Pkt, which is a unit constituting the output data signal Data_Out, contains a signal of 204 bytes, that is, 204 eight-bit unit data. These unit data are output in synchronization with the pulse of the clock signal Clk. Then, the "standby state" for one cycle (one clock cycle) appears every four cycles (four clock cycles) of the clock signal Clk. Thus, the output of one packet Pkt is terminated in 272 clock cycles.

도 28에 있어서, 출력 데이터 신호 Data_Out 중에 주기적으로 나타나는 "NOP"는 「대기 상태」에 있어서의 단위 데이터로서, 직전의 단위 데이터와 동일한 값이다. 변조 클록 신호 MClk는 클록 신호 Clk로부터「대기 상태」에 한해서 펄스를 누락시킨(lacking) 클록 신호로서 얻어진다. 바꿔 말하면, 변조 클록 신호 MClk는 "N0P"를 제외한 단위 데이터, 즉, 의미가 있는 단위 데이터에만 동기한 펄스로서 출력된다.In Fig. 28, " NOP " periodically appearing in the output data signal Data_Out is unit data in the "wait state" and is the same value as the previous unit data. The modulated clock signal MClk is obtained from the clock signal Clk as a clock signal which is missing a pulse only in the "waiting state". In other words, the modulated clock signal MClk is output as a pulse synchronized with only the unit data except for "N0P", that is, meaningful unit data.

동기화 장치(101)에 후속하는 복호기(122)(도 1)는 이 변조 클록 신호 MClk를 클록 신호로 이용함에 따라, 의미가 있는 단위 데이터만의 처리를 원활히 실행할 수 있다. 이를 위해서는, 변조 클록 신호 MClk로서, 클록 신호 Clk의 상승으로부터 반주기 지연된 하강 에지가 이용되는 것이 바람직하다. 이러한 목적에 부합하도록, 변조 클록 신호 MClk는 "NOP"의 출현으로부터 반주기 지연되어 휴지하고 있다.The decoder 122 (FIG. 1) following the synchronization device 101 uses this modulated clock signal MClk as a clock signal, so that only meaningful unit data can be processed smoothly. For this purpose, as the modulated clock signal MClk, it is preferable to use the falling edge which is delayed half the period from the rise of the clock signal Clk. To meet this purpose, the modulated clock signal MClk is paused by a half cycle delay from the appearance of " NOP. &Quot;

클록 사이클이「대기 상태」에 있을 때, 액티브로 되는 대기 상태 표시 신호 Wt는 동기화 장치(101)의 내부에서 이용될 뿐만 아니라, 외부에도 출력됨으로써, 「대기 상태」를 외부의 복호기(122) 등에 통지하는 역할도 한다. 선두 신호 Sync_Head는 패킷 Pkt의 선두어 H가 나타날 때에 액티브로 된다. 따라서, 선두 신호 Sync_Head는 패킷 Pkt의 선두어 H의 출현을 외부에 알리는 역할을 한다.When the clock cycle is in the "standby state", the standby state display signal Wt, which becomes active, is not only used inside the synchronization device 101 but also output to the outside, so that the "standby state" is transmitted to the external decoder 122 or the like. It also serves to inform. The leading signal Sync_Head is activated when the leading word H of the packet Pkt appears. Therefore, the head signal Sync_Head serves to inform the outside of the appearance of the head word H of the packet Pkt.

최종 신호 Sync_Tai1은 패킷 Pkt의 최종어 T가 나타날 때에 액티브로 된다. 도 28의 예에서는, 최종어 T의 직후에 "NOP"가 나타나고 있기 때문에, 최종 신호 Sync_Tai1은 2 클록 사이클에 걸쳐 액티브로 되어 있다. 이미 설명한 각종의 흐름도로부터 알 수 있듯이, 각종의 출력 신호 모두가 「대기 상태」에서는 변화하지 않는다. 최종 신호 Sync_Tai1은 패킷 Pkt의 최종어 T의 출현을 외부에 알리는 역할을 한다. 동기 신호 Sync는 동기화 장치(1O1)의 내부에서 참조되는 신호로서, 최종 신호 Sync_Tai1과는 단지 논리값이 반대로 되어 있는 것에 불과하다.The last signal Sync_Tai1 becomes active when the last word T of the packet Pkt appears. In the example of FIG. 28, since "NOP" appears immediately after the final word T, the final signal Sync_Tai1 is active over two clock cycles. As can be seen from the various flow charts described above, all of the various output signals do not change in the "standby state". The final signal Sync_Tai1 serves to inform the outside of the appearance of the final word T of the packet Pkt. The synchronization signal Sync is a signal referred to inside the synchronization device 101 and merely has a logic value opposite to the final signal Sync_Tai1.

또, 장치의 동작 상태가 비동기 상태에 있고, 패킷 Pkt의 구획이 잠정적이더라도, 각종 출력 신호가 도 28에 도시한 타이밍으로 출력되는 점에는 변함이 없다.In addition, even if the operation state of the apparatus is in the asynchronous state and the division of the packet Pkt is tentative, there is no change in the point at which the various output signals are output at the timing shown in FIG.

이상의 설명에서 명백하듯이, 동기화 장치(101)에서는 종래 동기화 장치(150)에 구비되는 FIFO(153)를 필요로 하지 않는다. 이미 언급했듯이, FIFO(153)는 1개의 패킷 Pkt 데이터를 기억하는 데 필요한 기억 용량, 즉, 8×204 비트의 기억 용량을 필요로 한다. 동기화 장치(101)는 이 과대한 기억 용량을 갖는 FIFO(153)를 구비할 필요가 없기 때문에, 동기화 장치의 소형화, 저렴화가 실현된다.As is apparent from the above description, the synchronization device 101 does not require the FIFO 153 provided in the conventional synchronization device 150. As already mentioned, the FIFO 153 needs a storage capacity for storing one packet Pkt data, that is, a storage capacity of 8 x 204 bits. Since the synchronization device 101 does not need to include the FIFO 153 having this excessive storage capacity, the synchronization device 101 can be made smaller and inexpensive.

<3. 실시예 2><3. Example 2

도 29는 실시예 2의 동기화 장치의 동기 검출부(31)의 구성을 도시한 블럭도이다. 본 실시예에서는 동기 검출부(31)에 록 레벨 변경부(60)가 구비되는 점에서 실시예 1의 동기 검출부(3l)와는 특징적으로 다르다. 록 레벨 변경부(60)는 비교부(41)에서의 비교 결과에 근거하여, 록 레벨 생성부(42)에 록 레벨 LL의 변경을 지시한다.Fig. 29 is a block diagram showing the configuration of the synchronization detector 31 of the synchronization device of the second embodiment. This embodiment is distinctly different from the synchronization detection unit 3l of the first embodiment in that the lock level changing unit 60 is provided in the synchronization detection unit 31. The lock level changing unit 60 instructs the lock level generating unit 42 to change the lock level LL based on the comparison result in the comparing unit 41.

도 30은 록 레벨 변경부(60)의 내부 구성을 도시한 블럭도이다. 록 레벨 변경부(60)에는 컨트롤러(61), 태그 메모리(tag memory)(62) 및 Np 카운터(또 하나의 처리 번호 생성부)(63)가 구비되어 있다. Np 카운터(63)는 처리 번호 Pd와는 다른 제 2 처리 번호로서의 처리 번호 Np를 카운트한다 . 처리 번호 Np는 "0"에서 "203"까지의 범위의 값을 갖는다.30 is a block diagram showing an internal configuration of the lock level changing unit 60. As shown in FIG. The lock level changing unit 60 is provided with a controller 61, a tag memory 62, and an Np counter (another processing number generation unit) 63. The Np counter 63 counts the process number Np as the second process number different from the process number Pd. The process number Np has a value ranging from "0" to "203".

태그 메모리(62)는 재기록 가능한(rewritable) 반도체 메모리를 갖고 있어, 후술하는 태그를 기억한다. 컨트롤러(61)는 태그 메모리(62) 및 Np 카운터(63)에 대하여 데이터 교환을 행하면서, 비교부(41)에서의 비교 결과를 참조하여 록 레벨 생성부(42)에 록 레벨 LL의 변경을 지시하는 신호를 출력한다.The tag memory 62 has a rewritable semiconductor memory and stores tags which will be described later. While the controller 61 exchanges data with respect to the tag memory 62 and the Np counter 63, the controller 61 changes the lock level LL to the lock level generator 42 by referring to the comparison result in the comparator 41. Outputs the signal indicated.

도 31은 태그 메모리(62)의 메모리 공간의 한 형태를 도시한 모식도이다. 이 형태에서, 태그 메모리(62)는 N(≥1)개의 처리 번호 Np의 값을 저장 가능한 메모리 공간을 준비하고 있다. 처리 번호 Np는 1 바이트로 표현되기 때문에, 이 형태의 태그 메모리(62)는 8×N 비트의 기억 용량을 갖는다. 도 31의 예에서는 5개의 메모리 공간이 준비되어 있고, "0", "tl", "t2", "t3"의 4개의 수치가 태그로서 기억되어 있다.31 is a schematic diagram showing one form of the memory space of the tag memory 62. As shown in FIG. In this form, the tag memory 62 prepares a memory space capable of storing N (≧ 1) process number Np values. Since the process number Np is represented by one byte, the tag memory 62 of this type has a storage capacity of 8 x N bits. In the example of FIG. 31, five memory spaces are prepared, and four numerical values of "0", "tl", "t2", and "t3" are stored as tags.

도 32는 태그 메모리(62)의 메모리 공간의 또 하나의 형태를 도시한 모식도이다. 이 형태의 태그 메모리(62)는 "0" 내지 "203"의 204개의 어드레스 각각에 1 비트 길이의 데이터를 저장할 수 있도록 구성되어 있다. 따라서, 기억 용량은 204 비트이다. 그리고, 각 데이터의 값은 통상적으로는 정상 상태(본 예에서는 "0")이고, 태그로서 기억해야 할 처리 번호 Np에 대응하는 어드레스 데이터에 한해서 액티브("1")로 설정된다. 이에 따라, 실질적으로 태그가 기억된다. 즉, 이 형태의태그 메모리(62)는 플래그 레지스터로서 구성된다.32 is a schematic diagram illustrating another form of the memory space of the tag memory 62. The tag memory 62 of this type is configured to store data of 1 bit length in each of 204 addresses of "0" to "203". Thus, the storage capacity is 204 bits. The value of each data is normally in a steady state (" 0 " in this example), and is set to active (" 1 ") only for address data corresponding to the process number Np to be stored as a tag. As a result, the tag is substantially stored. That is, the tag memory 62 of this type is configured as a flag register.

패킷 Pkt를 구성하는 단위 데이터의 개수가 증가하면, 보다 적은 메모리 용량으로 충분하기 때문에 도 32보다도 도 31의 형태가 유리하다. 반대로, 단위 데이터의 개수가 적으면, 도 31보다도 도 32의 형태가 유리하다고 할 수 있다.If the number of unit data constituting the packet Pkt is increased, the form of Fig. 31 is more advantageous than Fig. 32 because less memory capacity is sufficient. On the contrary, when the number of unit data is small, it can be said that the form of FIG. 32 is more advantageous than FIG.

<3-1. 록 레벨 변경부의 동작><3-1. Operation of Lock Level Changer>

도 33은 록 레벨 변경부(60)의 동작의 흐름을 도시한 흐름도이다. 록 레벨 변경부(60)도 도 23에 도시한 선두 신호 생성부(32)와 마찬가지로, 단계 S140에 있어서, 프로세스를 종료해야 한다는 판정이 이루어질 때까지 단계 S121 내지 S140의 프로세스 루프가 반복적으로 실행된다. 또한, 단계 S122 이하의 프로세스는 클록 신호 Clk의 상승 에지에 동기하여 개시된다.33 is a flowchart showing the flow of operation of the lock level changing unit 60. Similarly to the head signal generation unit 32 shown in FIG. 23, the lock level changing unit 60 also repeatedly executes the process loops of steps S121 to S140 until it is determined in step S140 that the process should be terminated. . In addition, the process of step S122 and below is started in synchronization with the rising edge of the clock signal Clk.

단계 S122는 리셋 신호 RST가 액티브("0")인지의 여부를 판정한다. 단계 S123에 있어서, 리셋 신호 RST가 액티브이면, 태그 메모리(62)로부터 모든 태그가 소거된다. 즉, 태그 메모리(62)의 기억 데이터가 초기화된다. 또한, 단계 S124에 있어서, Np 카운터(63)에 있어서의 카운트 값인 처리 번호 Np가 "0"으로 초기화된다. 그 후, 프로세스는 단계 S140으로 이행된다.Step S122 determines whether the reset signal RST is active ("0"). In step S123, if the reset signal RST is active, all tags are erased from the tag memory 62. That is, the stored data of the tag memory 62 is initialized. In addition, in step S124, the process number Np which is the count value in the Np counter 63 is initialized to "0". Thereafter, the process proceeds to step S140.

한편, 리셋 신호 RST가 정상 상태("1")이면, 통상 프로세스인 단계 S125 이하의 프로세스가 실행된다. 단계 S125는 대기 상태 표시 신호 Wt가 정상 상태("0")인지의 여부를 판정한다. 대기 상태 표시 신호 Wt가 정상 상태가 아닌 경우, 즉, 현재의 클록 사이클이「대기 상태」인 경우, 프로세스는 직접 단계 S140으로 이행된다. 즉, 「대기 상태」에서는 어떠한 프로세스도 실행되지 않는다. 한편, 단계 S126에 있어서, 대기 상태 표시 신호 Wt가 정상 상태이면, 태그 메모리(62)에 태그가 기억되어 있는지 여부가 판정된다.On the other hand, if the reset signal RST is in the normal state (" 1 "), the process of step S125 or lower which is a normal process is executed. Step S125 determines whether the standby state indication signal Wt is in the normal state ("0"). If the wait state display signal Wt is not in the normal state, that is, the current clock cycle is the "standby state", the process proceeds directly to step S140. In other words, no process is executed in the "standby state". On the other hand, in step S126, if the wait state display signal Wt is in the normal state, it is determined whether the tag is stored in the tag memory 62.

만일, 단계 S127에 있어서, 어떠한 태그도 기억되어 있지 않으면, 추출 신호 Dout이 동기 코드 Cd와 일치하는지의 여부가 판정된다. 그리고, 일치하지 않으면, 프로세스는 단계 S140으로 이행되고, 일치하면, 후술하는 단계 S137로 이행된다.If no tag is stored in step S127, it is determined whether the extraction signal Dout matches the sync code Cd. If there is no match, the process proceeds to step S140. If there is a match, the process proceeds to step S137 described later.

단계 S126의 판정에 있어서, 태그 메모리(62)에 태그가 기억되어 있으면, 우선, 단계 S128 내지 S130에 있어서, 처리 번호 Np의 갱신이 행하여진다. 즉, 처리 번호 Np가 "0" 내지 "203"의 범위에서 순환적으로 증가된다. 그 후, 단계 S131에 있어서, 현재의 처리 번호 Np의 값과 일치하는 태그가 존재하는지 여부가 판정된다.In the determination of step S126, if a tag is stored in the tag memory 62, first, the process number Np is updated in steps S128 to S130. Namely, the process number Np is cyclically increased in the range of "0" to "203". After that, in step S131, it is determined whether or not there is a tag that matches the value of the current process number Np.

이 판정에 있어서, 일치하는 태그가 존재하면, 단계 S132에 있어서, 추출 신호 Dout이 동기 코드 Cd와 일치하는지의 여부가 판정된다. 추출 신호 Dout이 동기 코드 Cd와 일치하지 않으면, 단계 S133에 있어서, 현재의 처리 신호 Np의 값과 일치하는 태그가 태그 메모리(62)로부터 소거된다. 그 후, 프로세스는 단계 S140으로 이행된다.In this determination, if there is a matching tag, it is determined in step S132 whether the extraction signal Dout matches the synchronization code Cd. If the extraction signal Dout does not coincide with the synchronization code Cd, in step S133, the tag corresponding to the value of the current processing signal Np is erased from the tag memory 62. Thereafter, the process proceeds to step S140.

반대로, 단계 S132의 판정에 있어서, 추출 신호 Dout이 동기 코드 Cd와 일치하면, 단계 S134에 있어서, 모든 태그가 소거된다. 즉, 태그 메모리(62)는 초기화된다. 계속해서, 단계 S135에 있어서, 록 레벨 생성부(42)에 대하여 록 레벨 LL의 변경이 지시된다. 다음에, 단계 S136에 있어서, 처리 번호 Np의 값이 초기값 "0"으로 복귀된다. 그 후, 단계 S137에 있어서, 처리 번호 Np의 값 "0"의 태그가 태그 메모리(62)에 기억된다. 단계 S127을 경유했을 때에도, 처리 번호 Np의 값은 "0"이기 때문에, 단계 S137에서는 항상 값 "0"의 태그가 태그 메모리(62)에 기억된다. 그 후, 프로세스는 단계 S140으로 이행된다.In contrast, in the determination of step S132, if the extraction signal Dout coincides with the synchronization code Cd, in step S134, all the tags are erased. In other words, the tag memory 62 is initialized. Subsequently, in step S135, the lock level generator 42 is instructed to change the lock level LL. Next, in step S136, the value of the process number Np is returned to the initial value "0". After that, in step S137, the tag with the value "0" of the process number Np is stored in the tag memory 62. Even when passing through step S127, since the value of the process number Np is "0", the tag of the value "0" is always stored in the tag memory 62 in step S137. Thereafter, the process proceeds to step S140.

단계 S131의 판정에 있어서, 처리 번호 Np와 일치하는 태그가 존재하지 않으면, 단계 S138에 있어서, 추출 신호 Dout이 동기 코드 Cd와 일치하는지의 여부가 판정된다. 만일, 일치하면, 단계 S139에 있어서, 처리 번호 Np의 값과 일치하는 태그가 태그 메모리(62)에 기억된 후, 프로세스는 단계 S140으로 이행된다. 반대로, 일치하지 않으면, 프로세스는 직접 단계 S140으로 이행된다.In the determination of step S131, if no tag matching the process number Np exists, it is determined in step S138 whether the extraction signal Dout matches the synchronization code Cd. If there is a match, in step S139, after the tag matching the value of the process number Np is stored in the tag memory 62, the process proceeds to step S140. In contrast, if there is no match, the process proceeds directly to step S140.

이상의 프로세스 중에서, 태그의 기억 및 소거에 관계되는 단계 S123, S133, S134, S137, S139는 컨트롤러(61)의 지시에 근거하여, 태그 메모리(62)에 의해서 실행된다. 또한, 처리 번호 Np의 설정에 관계되는 단계 S124, S128, S129, S130, S136은 컨트롤러(61)의 지시에 근거하여 Np 카운터(63)에 의해서 실행된다.In the above processes, steps S123, S133, S134, S137, and S139 related to storing and erasing of tags are executed by the tag memory 62 based on the instruction of the controller 61. Further, steps S124, S128, S129, S130, and S136 related to the setting of the process number Np are executed by the Np counter 63 based on the instruction of the controller 61.

<3-2. 록 레벨 변경부의 동작><3-2. Operation of Lock Level Changer>

도 34는 동기 검출부(31) 중에서, 록 레벨 변경부(60)를 제외한 장치 부분의 동작의 흐름을 도시한 흐름도이다. 단계 S62의 직전에 단계 S150이 삽입되어 있는 점이 도 20의 동작의 흐름과는 특징적으로 다르다. 단계 S150의 프로세스는 록 레벨 생성부(42)에 의해서 수행된다.34 is a flowchart showing the flow of operation of the device portion excluding the lock level changing unit 60 in the synchronization detecting unit 31. As shown in FIG. The fact that step S150 is inserted immediately before step S62 is characteristically different from the flow of the operation of FIG. 20. The process of step S150 is performed by the lock level generating unit 42.

도 35는 단계 S150의 내부 처리 경로를 도시한 흐름도이다. 단계 S150의 프로세스가 시작되면, 우선 단계 S151에 있어서, 록 레벨 LL이 "0"인지의 여부가 판정된다. 록 레벨 LL이 "0"이 아니면, 단계 S150의 프로세스를 종료하고, 프로세스는 단계 S62로 이행된다. 반대로, 록 레벨 LL이 "0"과 일치하고 있으면, 단계 S152에 있어서, 록 레벨 변경부(60)로부터의 록 레벨 LL을 변경해야 한다는 취지의 지시가 있는지의 여부가 판정된다.35 is a flowchart showing an internal processing path of step S150. When the process of step S150 starts, first in step S151, it is determined whether the lock level LL is "0". If the lock level LL is not "0", the process of step S150 ends, and the process proceeds to step S62. On the contrary, if the lock level LL coincides with "0", it is determined in step S152 whether there is an instruction indicating that the lock level LL from the lock level changing unit 60 should be changed.

변경의 지시가 없으면, 단계 S150의 프로세스는 종료한다. 반대로, 변경의 지시가 있으면, 단계 S153에 있어서, 록 레벨 LL이 "1"만큼 증가된다. 즉, 단계 S135(도 33)에 의해서 실행되는 변경의 지시는 록 레벨 LL을 "1"만큼 상승시키는 취지의 지시를 의미한다. 단계 S153이 종료하면, 단계 S150 전체가 종료한다.If there is no indication of a change, the process of step S150 ends. In contrast, if a change instruction is given, the lock level LL is increased by " 1 " in step S153. In other words, the change instruction executed by step S135 (Fig. 33) means an instruction to raise the lock level LL by " 1 ". When step S153 ends, the entire step S150 ends.

도 36은 동기 검출부(31)의 동작예를 도시한 동작 설명도이다. 이 도면은 추출 신호 Dout으로서, 도 21 및 도 22와 같은 데이터가 같은 타이밍으로 입력되었을 때의 시점(A) 이후의 동작을 도시하고 있다. 따라서, 추출 신호 Dout 및 처리 번호 Pd는 도 22와 동일한 타이밍으로 동일하게 변화하고 있다.36 is an operation explanatory diagram showing an operation example of the synchronization detection unit 31. This figure shows the operation after the time point A when the data as shown in Figs. 21 and 22 were input at the same timing as the extraction signal Dout. Therefore, the extraction signal Dout and the process number Pd are changed in the same timing as in FIG.

록 레벨 LL의 값이 "0"이고, 또한, 동기 코드 Cd가 나타나지 않은 기간이, 시점(A)에 있어서, 이미 1개의 패킷 Pkt에 상당하는 기간보다도 길게 지속되고 있다. 이 때문에, 시점(A)에서는 태그 메모리(62)에 기억되는 태그는 존재하지 않는다. 즉, 태그 메모리(62)는 초기 상태로 되어 있다.The period in which the value of the lock level LL is "0" and the sync code Cd does not appear lasts longer than the period corresponding to one packet Pkt at the time point A. FIG. For this reason, the tag stored in the tag memory 62 does not exist at the time point A. That is, the tag memory 62 is in the initial state.

이 상태에서 최초에 동기 코드 Cd가 나타나면, 단계 S126, S127, S137을 경유함으로써, 처리 번호 Np("0")와 일치하는 태그가 태그 메모리(62)에 기억된다. 태그가 기억된다는 것은 그 태그에 대응하는 처리 번호 Np에 있어서 출현한 동기코드 Cd가 패킷 Pkt의 선두어일 가능성이 있다고 판단되어, 선두어의 후보 위치가 기억되는 것에 상당한다. 즉, 태그란, 선두어의 후보 위치 즉, 패킷 Pkt의 구획의 후보를 처리 번호 Pd로 표현한 것이라고 할 수 있다. 도 36에 있어서, 부호 "Tg"는 태그 메모리(62)의 기억 데이터를 표현하고 있다.When the synchronization code Cd first appears in this state, the tag corresponding to the process number Np ("0") is stored in the tag memory 62 by way of steps S126, S127, and S137. The fact that the tag is stored means that the sync code Cd that has appeared in the process number Np corresponding to the tag may be the leading word of the packet Pkt, and corresponds to the candidate position of the leading word. That is, a tag can be said to represent the candidate position of a head word, ie, the candidate of the division of the packet Pkt, by process number Pd. In Fig. 36, reference numeral "Tg" represents stored data in the tag memory 62. Figs.

다음의 클록 사이클에서는 단계 S126, S128, S129를 경유함으로써, 처리 번호 Pd가 "1"로 증가된다. 또한, S131, S138, S140을 경유하기 때문에, 태그 메모리(62)의 기억 데이터는 변경되지 않는다. 이하 마찬가지로, 다음의 동기 코드 Cd가 나타날 때까지, 클록 사이클마다 처리 번호 Pd는 순차적으로 계속 상승하지만, 태그 메모리(62)의 기억 데이터는 변경되지 않는다. 이 동작은 이 기간에 있어서, 패킷 Pkt의 구획의 후보가 출현하지 않는 것을 반영하고 있다.In the next clock cycle, the process number Pd is increased to " 1 " by way of steps S126, S128, and S129. In addition, since the data passes through S131, S138, and S140, the stored data of the tag memory 62 is not changed. In the same manner below, the process number Pd continues to rise sequentially for each clock cycle until the next sync code Cd appears, but the stored data of the tag memory 62 is not changed. This operation reflects that no candidate of the partition of the packet Pkt appears in this period.

다음의 동기 코드 Cd가 나타나면, 단계 S126, S128, S129를 경유함으로써, 처리 번호 Np는 그 상태로 계속 상승하여 값 "t1"로 된다. 그리고, S131, S138, S139를 경유함으로써, 값 "t1"의 태그가 태그 메모리(62)에 기억된다. 즉, 이 시점에서, 태그 메모리(62)에 기억되는 태그는 "0"과 "1"의 2개로 된다. 이것은 패킷 Pkt의 구획의 후보가 새롭게 출현한 것에 상응하여, 새로운 후보가 추가적으로 기억된 것을 의미한다. 마찬가지로, 다음의 동기 코드 Cd가 나타나면, 처리 번호 Np의 값 "t2"가 태그 메모리(62)에 추가된다.When the next sync code Cd appears, the process number Np continues to rise to the value "t1" by going through steps S126, S128, and S129. And the tag of the value "t1" is memorize | stored in the tag memory 62 via S131, S138, and S139. That is, at this point in time, there are two tags stored in the tag memory 62, "0" and "1". This means that a new candidate is additionally stored, corresponding to a new appearance of a candidate of the partition of the packet Pkt. Similarly, when the next sync code Cd appears, the value "t2" of the process number Np is added to the tag memory 62.

처리 번호 Np가 "203"으로 된 클록 사이클의 다음의 클록 사이클에서는 단계 S128 및 S130에 의해서 처리 번호 Np는 "0"으로 복귀된다. 이 때, 최초로 동기 코드 Cd가 출현하고 나서, 204 클록 사이클이 경과하고 있다. 이 때문에, 처리 번호Np(="0")와 일치하는 태그(="0")가 태그 메모리(62)에 존재한다. 따라서, 단계 S131의 판정 후에 단계 S132가 실행된다.In the next clock cycle after the clock cycle in which the process number Np becomes "203", the process number Np returns to "0" by step S128 and S130. At this time, 204 clock cycles have elapsed since the synchronization code Cd first appeared. For this reason, a tag (= "0") corresponding to the process number Np (= "0") exists in the tag memory 62. Therefore, step S132 is executed after the determination of step S131.

이 클록 사이클에 있어서, 동기 코드 Cd는 출현하지 않는다. 따라서, 단계 S133이 실행됨으로써, 값 "0"의 태그가 소거된다. 태그가 소거되었다는 것은 그 태그에 대응하는 처리 번호 Pd가 패킷 Pkt의 구획일 가능성이 소실된 것 즉, 구획의 후보로서의 자격을 상실한 것을 반영하고 있다. 도 36에 있어서, 태그 메모리(62)의 기억 데이터 Tg 중에 도시된 화살표는 태그가 존속하고 있는 기간을 나타내고, 부호 "X"는 태그가 소거된 것을 나타내고 있다.In this clock cycle, the sync code Cd does not appear. Thus, by executing step S133, the tag with the value "0" is erased. The deletion of a tag reflects the loss of the possibility that the process number Pd corresponding to the tag is a partition of the packet Pkt, that is, the loss of qualification as a candidate for the partition. In Fig. 36, the arrow shown in the stored data Tg of the tag memory 62 indicates the period in which the tag remains, and the symbol " X " indicates that the tag has been erased.

그 후, 새롭게 동기 코드 Cd가 나타나면, 처리 번호 Np의 값 "t3"이 태그 메모리(62)에 기억된다. 즉, 이 시점에서, 태그 메모리(62)에 기억되는 태그, 즉 구획의 후보는 "t1", "t2", "t3"의 3개로 된다.After that, when the synchronization code Cd is newly displayed, the value "t3" of the process number Np is stored in the tag memory 62. That is, at this point in time, the tags stored in the tag memory 62, i.e., the candidates of the partitions, are three of "t1", "t2", and "t3".

처리 번호 Np가 "t1"로 되는 클록 사이클에서는, 처리 번호 Np가 태그 메모리(62)에 기억되는 태그 중 하나의 값 "t1"과 일치한다. 따라서, 단계 S131의 판정 후에 단계 S132가 실행된다. 이 클록 사이클에 있어서도, 동기 코드 Cd는 출현하지 않는다. 따라서, 단계 S133이 실행됨으로써, 태그 "t1"도 태그 메모리(62)로부터 소거된다.In the clock cycle in which the process number Np becomes "t1", the process number Np coincides with the value "t1" of one of the tags stored in the tag memory 62. Therefore, step S132 is executed after the determination of step S131. Also in this clock cycle, the sync code Cd does not appear. Thus, by executing step S133, the tag " t1 " is also erased from the tag memory 62.

처리 번호 Np가 "t2"로 되는 클록 사이클(처리 번호 Np="t2-1"의 다음 사이클)에서는, 처리 번호 Np가 태그 메모리(62)에 기억되는 태그 중 하나의 값 "t2"와 일치한다. 이 때문에, 단계 S131의 판정 후에, 단계 S132가 실행된다. 이 클록 사이클에서는 동기 코드 Cd가 출현하고 있다. 따라서, 단계 S134가 실행됨으로써,우선, 모든 태그가 태그 메모리(62)로부터 소거된다. 이와 같이 하여, 단계 S135에 있어서, 록 레벨 LL의 변경이 지시된다.In the clock cycle in which the process number Np becomes "t2" (next cycle of the process number Np = "t2-1"), the process number Np coincides with the value "t2" of one of the tags stored in the tag memory 62. . For this reason, after determination of step S131, step S132 is executed. In this clock cycle, the sync code Cd appears. Therefore, by executing step S134, first, all tags are erased from the tag memory 62. FIG. In this manner, in step S135, the change of the lock level LL is instructed.

또한, 단계 S136에 있어서, 처리 번호 Np가 "t2"에서 초기값 "0"으로 변경된다. 이것은 태그의 기준이 변경된 것에 상당한다. 그렇게 하여, 단계 S137에 있어서, 새롭게 설정된 처리 번호 Np의 값 "0"이 태그로서 태그 메모리(62)에 기억된다. 즉, 이 시점에서, 태그 메모리(62)에 기억되는 태그의 값은 "0" 뿐이다.In addition, in step S136, the process number Np is changed from "t2" to the initial value "0". This corresponds to a change in the criteria of the tag. Thus, in step S137, the newly set value "0" of the process number Np is stored in the tag memory 62 as a tag. That is, at this time, the value of the tag stored in the tag memory 62 is only "0".

록 레벨 LL을 변경해야 한다는 취지의 지시가 행하여지기 때문에, 단계 S150(도 35)에 의해서, 록 레벨 LL의 값이 "0"에서 "1"로 증가된다. 따라서, 그 후에, 동기화 장치(101)는 동기 상태와 마찬가지로 동작한다. 즉, 이 클록 사이클에 있어서, 태그 메모리(62)에 기억되는 복수의 후보 중에서, 태그 "t2"에 대응하는 후보가 패킷 Pkt의 구획으로서 확정적으로 취급되게 된다. 후보로부터 확정이라고 승격(昇格)된 태그 이외의 태그는 태그 메모리(62)에서 소거된다.Since an instruction to change the lock level LL is given, the value of the lock level LL is increased from " 0 " to " 1 " by step S150 (Fig. 35). Thus, after that, the synchronization device 101 operates similarly to the synchronization state. That is, in this clock cycle, among the plurality of candidates stored in the tag memory 62, the candidates corresponding to the tag "t2" are decidedly treated as the division of the packet Pkt. Tags other than the tag promoted to be confirmed by the candidate are erased in the tag memory 62.

이와 같이, 후보로서의 태그의 정당성이 태그 발생으로부터 1패킷 Pkt를 경과한 시점에서 시험되고, 정당성이 충족되지 않으면, 태그는 즉시 소거된다. 반대로, 정당성이 충족되었을 때에는 충족된 태그만이 남고 또한, 태그의 기준이 변경된다. 이 때 이외에는, 처리 번호 Pd는 언제나 "0" 내지 "203"의 범위에서의 순환적인 증가를 계속한다.In this way, the validity of the tag as a candidate is tested at the time point when one packet Pkt has passed from tag generation, and if the validity is not satisfied, the tag is immediately deleted. On the contrary, when justification is satisfied, only the satisfied tags remain and also the criteria of the tags are changed. Except at this time, the process number Pd always continues to cyclically increase in the range of "0" to "203".

록 레벨 변경부(60)는 록 레벨 LL이 "1" 이상의 값으로 되더라도 무관하게 마찬가지의 동작을 계속한다. 예컨대, 처리 번호 Pd가 "203"을 경과하여, 다시 "0"으로 되었을 때에, 도 36에 도시한 바와 같이, 기대한 대로 동기 코드 Cd가 출현하면, 단계 S126, S131, S132, S134 내지 S137에 의해서 가령, 다른 태그가 존재하고 있었다고 하더라도 값 "0"의 태그만이 태그 메모리(62)에 유지된다.The lock level changing unit 60 continues the same operation regardless of whether the lock level LL becomes a value of "1" or more. For example, when the process number Pd passes "203" and becomes "0" again, as shown in Fig. 36, if the sync code Cd appears as expected, the process proceeds to steps S126, S131, S132, S134 to S137. For example, even if another tag exists, only a tag having a value of "0" is retained in the tag memory 62.

이 때, 단계 S135에 의해서 록 레벨 LL의 변경 지시가 행하여지지만, 단계 S150(도 35)에서는 록 레벨 LL이 "0"이 아니기 때문에, 록 레벨 LL의 증가는 실행되지 않는다. 즉, 변경의 지시는 무시된다. 이 클록 사이클에서 록 레벨 LL이 "1"에서 "2"로 증가되는 것은 단계 S54(도 34)에 의한 것이며, 단계 S150에 유래하는 것은 아니다.At this time, the instruction to change the lock level LL is issued in step S135, but since the lock level LL is not " 0 " in step S150 (Fig. 35), the increase of the lock level LL is not executed. In other words, the change instruction is ignored. It is by step S54 (Fig. 34) that the lock level LL is increased from " 1 " to " 2 " in this clock cycle, not from step S150.

또한, 도 36에 도시한 바와 같이, 록 레벨 LL이 "2"인 기간 중에서 처리 번호 Pd가 값 "t4"일 때에 새롭게 동기 코드 Cd가 나타나면, 태그 "t4"가 태그 메모리(62)에 기억된다. 이와 같이, 록 레벨 변경부(60) 자체의 동작은 록 레벨 LL이 "0"이더라도, "1" 이상이더라도 변함은 없다.As shown in Fig. 36, when the synchronization code Cd newly appears when the process number Pd is the value "t4" in the period in which the lock level LL is "2", the tag "t4" is stored in the tag memory 62. . In this way, the operation of the lock level changing unit 60 itself is not changed even if the lock level LL is " 0 " or more than " 1 ".

이상과 같이, 실시예 2의 동기화 장치에서는 처리 번호 Pd가 "203"에 도달하기 전에 동기 코드 Cd가 출현하면, 출현한 동기 코드 Cd의 위치를 패킷 Pkt의 구획의 후보로서 상정하여, 1개의 패킷 Pkt에 상당하는 기간이 경과했을 때에 그 정당성이 시험된다. 그리고, 정당성이 높다고 판단되면, 후보로서의 구획을 확정시켜 동작 상태가 비동기 상태에서 동기 상태로 이행된다. 이 때문에, 도 22와 도 33을 비교하면 명백하듯이, 비동기 상태에서 동기 상태로의 이행 시기가 불필요하게 지연되지 않는다고 하는 이점이 얻어진다.As described above, in the synchronization device of the second embodiment, if the synchronization code Cd appears before the process number Pd reaches " 203 ", the position of the appeared synchronization code Cd is assumed as a candidate for the division of the packet Pkt, and one packet is received. The validity is tested when the period corresponding to Pkt has passed. If it is judged that the validity is high, the partition as a candidate is determined and the operation state is shifted from the asynchronous state to the synchronous state. For this reason, as apparent from the comparison between Fig. 22 and Fig. 33, the advantage that the transition time from the asynchronous state to the synchronous state is not unnecessarily delayed is obtained.

실시예 2의 동기화 장치에서는 태그 메모리(62)를 필요로 하지만, 예컨대 도 32의 예에서는, 8×204 비트를 필요로 하는 FIFO(153)보다는 훨씬 적은 204 비트의기억 용량으로도 충분하다. 또한, 도 31의 예에 있어서도 예컨대, N을 10으로 설정하면, 8×10=80 비트로 충분하다. 이와 같이, 실시예 1의 동기화 장치와 마찬가지로 종래 장치에 비교하여 훨씬 소형이고 저렴한 장치가 실현된다.Although the synchronization device of the second embodiment requires the tag memory 62, for example, in the example of FIG. 32, a much smaller 204 bit storage capacity is sufficient than the FIFO 153 requiring 8x204 bits. Also in the example of Fig. 31, for example, if N is set to 10, 8x10 = 80 bits is sufficient. In this manner, a device which is much smaller and cheaper than that of the conventional device is realized as in the synchronization device of the first embodiment.

<4. 실시예 3><4. Example 3

도 37은 실시예 3의 동기화 장치의 동기 제어부(2)의 구성을 도시한 블럭도이다. 본 실시예에서는 데이터 출력부(35)가 동기 코드 Cd, 록 레벨 LL 및 동기 신호 Sync를 참조하여 동작하는 점에서 실시예 1의 동기 제어부(2)와는 특징적으로 다르다.37 is a block diagram showing the configuration of the synchronization control unit 2 of the synchronization device of the third embodiment. In the present embodiment, the data output unit 35 differs from the synchronization control unit 2 of the first embodiment in that the data output unit 35 operates with reference to the synchronization code Cd, the lock level LL, and the synchronization signal Sync.

도 38은 도 37의 데이터 출력부(35)의 동작의 흐름을 도시한 흐름도이다. 이 동작의 흐름은 단계 S104에서 대기 상태 표시 신호 Wt가 "0"이라고 판정되었을 때, 단계 S161 내지 S164의 프로세스가 실행되는 점에서, 도 26의 동작의 흐름과는 특징적으로 다르다.FIG. 38 is a flowchart showing the flow of operation of the data output unit 35 of FIG. The flow of this operation is characteristically different from the flow of the operation in Fig. 26 in that the process of steps S161 to S164 is executed when it is determined in step S104 that the wait state display signal Wt is " 0 ".

단계 S104의 판단에 있어서, 현재의 클록 사이클이「대기 상태」가 아닌(즉, Wt= O) 때는 동기 신호 Sync가 "1"과 일치하지 않는 경우, 즉, 현재의 클록 사이클이 패킷 Pkt의 구획에 상당하지 않는다든지, 또는, 록 레벨 LL이 값 "0"일 때, 즉, 장치의 동작 상태가 비동기 상태일 때에는 단계 S105(도 26)와 마찬가지로, 출력 데이터 신호 Data_Out으로서 추출 신호 Dout이 출력된다.In the determination of step S104, when the current clock cycle is not " standby " (i.e., Wt = O), when the synchronization signal Sync does not match " 1 ", i.e., the current clock cycle is a division of the packet Pkt. When the lock level LL is equal to the value &quot; 0 &quot;, i.e., when the operation state of the apparatus is asynchronous, the extraction signal Dout is outputted as the output data signal Data_Out as in step S105 (Fig. 26). .

그러나, 그와는 반대로 동기 신호 Sync가 "1"과 일치하는 경우, 즉, 현재의 클록 사이클이 패킷 Pkt의 구획에 상당하고, 또한, 록 레벨 LL이 값 "0"이 아닐때, 즉, 장치의 동작 상태가 동기 상태일 때는 단계 S105(도 26)와는 달리, 출력 데이터 신호 Data_Out으로서 본래의 기대값인 동기 코드 Cd가 출력된다.However, on the contrary, when the synchronization signal Sync coincides with " 1 ", that is, the current clock cycle corresponds to the division of the packet Pkt, and the lock level LL is not the value " 0 " In contrast to step S105 (FIG. 26), when the operation state of P is the synchronous state, the synchronization code Cd, which is the original expected value, is output as the output data signal Data_Out.

도 39는 동기 제어부(2)의 동작예를 도시한 동작 설명도이다. 이 도면은 추출 신호 Dout으로서, 도 21과 같은 데이터가 같은 타이밍으로 입력되었을 때의 동작을 도시하고 있다. 따라서, 추출 신호 Dout, 처리 번호 Pd 및 록 레벨 LL은 도 21과 동일한 타이밍으로 동일하게 변화하고 있다. 그러나, 출력 데이터 신호 Data_Out은 록 레벨 LL이 "1" 이상일 때는, 반드시 추출 신호 Dout과는 일치하지 않는다. 즉, 패킷 Pkt의 구획의 직후에 위치하는 선두어에는 추출 신호 Dout의 값이 동기 코드 Cd와 일치하는지 여부에 관계없이 항상 동기 코드 Cd가 출현한다.39 is an operation explanatory diagram showing an operation example of the synchronization control unit 2. This figure shows the operation when the data as shown in Fig. 21 is input at the same timing as the extraction signal Dout. Therefore, the extraction signal Dout, the process number Pd, and the lock level LL are changed in the same timing as in FIG. However, the output data signal Data_Out does not necessarily coincide with the extraction signal Dout when the lock level LL is "1" or more. That is, the synchronization code Cd always appears in the head word immediately after the division of the packet Pkt regardless of whether the value of the extraction signal Dout matches the synchronization code Cd.

패킷 Pkt의 구획이 정당하면, 선두어에는 동기 코드 Cd가 출현해야만 한다. 동기 상태에 있어서는, 패킷 Pkt의 구획은 일정 비율 이상의 신뢰성을 갖는 것으로서 확정되어 있다. 따라서, 동기 상태에 있어서, 선두어에 동기 코드 Cd가 출현하지 않을 때에는 어떠한 원인에 의해서 데이터 신호에 오류가 발생하고 있을 가능성이 높다.If the division of the packet Pkt is justified, the sync code Cd must appear in the leading word. In the synchronous state, the division of the packet Pkt is determined as having a certain ratio or more reliability. Therefore, in the synchronous state, when the synchronous code Cd does not appear in the leading word, it is highly likely that an error has occurred in the data signal for some reason.

본 실시예의 데이터 출력부(35)에서는 선두어에 상당하는 추출 신호 Dout의 값이 어떠한 값이더라도 패킷 Pkt의 구획이 확정되어 있으면, 선두어에 상당하는 출력 데이터 신호 Data_Out에는 동기 코드 Cd가 부여된다. 이 때문에, 오류가 수정되어 출력 데이터 신호 Data_Out으로서 올바른 값이 얻어진다고 하는 이점이 있다.In the data output unit 35 of the present embodiment, even if the value of the extracted signal Dout corresponding to the head word is any value, if the division of the packet Pkt is determined, the synchronization code Cd is given to the output data signal Data_Out corresponding to the head word. This has the advantage that the error is corrected and a correct value is obtained as the output data signal Data_Out.

<5. 변형예><5. Variation>

(1) 이미 언급한 바와 같이, 일반적으로 m(≥1) 비트 길이의 단위 데이터의 열로 구성되는 입력 데이터 신호 Data_In에 할당된 L(>m) 비트 길이의 단위 데이터를 추출하여, 패킷 Pkt 형식의 데이터 신호를 출력 데이터 신호 Data_Out으로서 출력하는 장치를 마찬가지로 구성하는 것이 가능하다. 이 때, 시프트 레지스터(11)는 m 비트를 기억 가능한 버퍼를 구비하고 있고, 그 개수는 m 및 K의 값의 조합에 의해 일의로(uniquely) 결정된다.(1) As already mentioned, in general, the L (> m) bit length unit data allocated to the input data signal Data_In composed of a column of unit data of m (≥1) bit length is extracted, and the packet Pkt format is extracted. It is possible to similarly configure the apparatus for outputting the data signal as the output data signal Data_Out. At this time, the shift register 11 has a buffer capable of storing m bits, and the number thereof is uniquely determined by a combination of the values of m and K.

L 비트 길이의 단위 신호가 복수의 m 비트 길이의 단위 데이터에 할당되는 패턴의 개수 K도 m 및 L의 조합에 의해서 정해진다. 패턴 데이터 추출부(12)에는 일반적으로 제 1 내지 제 K 패턴 데이터 추출부가 구비된다. K 종류의 패턴 중에서 하나씩을 클록 신호 Clk에 동기하여 순차적으로 추출하고, 추출 신호 Dout으로서 출력할 때, 삽입되어야 할 「대기 상태」의 개수도 m 및 L의 조합에 의해서 정해진다.The number K of patterns in which L-bit length unit signals are allocated to a plurality of m-bit length unit data is also determined by a combination of m and L. The pattern data extractor 12 generally includes first to K-th pattern data extractors. When one of the K types of patterns is sequentially extracted in synchronization with the clock signal Clk and output as the extraction signal Dout, the number of "wait states" to be inserted is also determined by the combination of m and L.

(2) 특히, 도 40에 예시한 종래 동기화 장치(150)와 마찬가지로 m=1일 때, 시프트 레지스터(11)는 1 비트의 데이터를 기억 가능한 버퍼를 8개만 구비하여도 된다. 즉, 시프트 레지스터(11)는 종래 동기화 장치(150)에 구비되는 L 비트 시프트 레지스터(152)와 동일한 구조로 충분하다. 할당 패턴은 1 종류이기 때문에, 패턴 데이터 추출부의 개수 K는 "1"로 충분하다.(2) In particular, as in the conventional synchronization device 150 illustrated in FIG. 40, when m = 1, the shift register 11 may include only eight buffers capable of storing one bit of data. That is, the shift register 11 is sufficient to have the same structure as the L bit shift register 152 provided in the conventional synchronization device 150. Since there is one type of allocation pattern, the number K of the pattern data extraction units is sufficient to be "1".

클록 사이클마다 패턴 데이터 추출부(12)에서 추출되는 8 비트의 단위 데이터는 8 클록 사이클 중에서 1 클록 사이클에 있어서만 추출 신호 Dout으로서 선택되고, 나머지의 7 주기의 기간은 「대기 상태」로 된다. 즉, 8 종류의 모드가 정의되고, 그 중 하나만이 패턴 데이터 추출부(12)에서 추출된 데이터를 추출 신호 Dout으로서 선택하는 모드이고, 다른 7개의 모드는「대기 상태」에 대응한다.The 8-bit unit data extracted by the pattern data extraction section 12 for each clock cycle is selected as the extraction signal Dout only in one clock cycle out of the eight clock cycles, and the remaining seven cycles are in the "wait state". That is, eight types of modes are defined, and only one of them is a mode for selecting the data extracted by the pattern data extraction unit 12 as the extraction signal Dout, and the other seven modes correspond to the "waiting state".

(3) 또한, 단위 데이터의 개수 m 및 L의 관계가 m≥L인 장치를 구성하는 것도 마찬가지로 가능하다. 이 때, 시프트 레지스터(11)가 구비하는 m 비트를 기억 가능한 버퍼의 개수는 2개로 충분하다. 또한, 「대기 상태」는 필요 없고, 출력 데이터 신호 Data_Out으로서 L 비트 길이의 단위 데이터를 출력하는 주기는 입력 데이터 신호 Data_In으로서 m 비트 길이의 단위 데이터를 입력하는 주기 이하의 길이로 설정된다.(3) It is also possible to configure a device in which the relationship between the number m and L of unit data is m≥L. At this time, the number of buffers that can store the m bits included in the shift register 11 is two. The "waiting state" is not necessary, and the period for outputting the L bit length unit data as the output data signal Data_Out is set to a length equal to or less than the period for inputting the m bit length unit data as the input data signal Data_In.

제 1 발명의 장치에서는 동기 코드 Cd에 근거하여 선두어의 위치, 즉 패킷의 구획의 위치가 판정되고, 선두어에 동기 코드가 반복하여 나타나는지 여부 등의 각각의 빈도에 따라 구획의 위치의 정당성이 검증된다. 비동기 상태에서는 항상 새로운 구획의 위치가 탐색되고, 동기 상태에서는 구획의 위치는 확정되어 변경되지 않는다. 추출 신호가 선두어에 상당하는지 여부가 처리 번호 생성부가 생성하는 처리 번호에 근거하여 판단되기 때문에, 종래 장치에서 필요로 했던 1 패킷 분의 데이터를 기억하는 FIFO를 필요로 하지 않는다. 이 때문에, 장치를 구성하는 소자의 개수가 줄어들어 장치의 소형화 및 제조 비용의 절감이 실현된다.In the apparatus of the first aspect of the invention, the position of the head is determined based on the synchronization code Cd, that is, the position of the section of the packet, and the validity of the position of the partition is determined according to each frequency, such as whether the synchronization code appears repeatedly in the head. Verified. In the asynchronous state, the position of the new compartment is always searched. In the synchronous state, the position of the compartment is determined and does not change. Since it is determined based on the process number generated by the process number generation unit, whether or not the extracted signal corresponds to the head word does not require a FIFO for storing one packet of data required by the conventional apparatus. For this reason, the number of elements constituting the apparatus is reduced, so that the apparatus can be miniaturized and the manufacturing cost can be reduced.

제 2 발명의 장치에서는 비동기 상태에 있어서, 추출 신호와 동기 코드가 일치할 때마다 처리 번호는 소정값으로 복귀한다. 그리고, 처리 번호가 소정값의 하나 이전의 값을 거쳐 소정값으로 복귀하였을 때에, 추출 신호가 선두어의 후보 또는 확정 선두어에 상당한다고 판단된다. 이 때문에, 선두어의 후보 또는 확정 선두어의 위치를 기억시키기 위한 메모리를 필요로 하지 않는다. 즉, 장치가 가장 간소하게 구성된다고 하는 효과를 얻을 수 있다.In the apparatus of the second aspect of the invention, in an asynchronous state, the processing number returns to a predetermined value whenever the extraction signal and the synchronization code coincide. Then, when the process number returns to the predetermined value via one previous value of the predetermined value, it is determined that the extracted signal corresponds to the candidate or the determined leading word of the leading word. For this reason, a memory for storing the positions of the candidates or the determined leader words of the leading word is not required. In other words, it is possible to obtain the effect that the device is the simplest.

제 3 발명의 장치에서는 비동기 상태에 있어서, 선두어의 후보가 설정된 추출 신호에 부가되는 처리 번호가 태그로서 기억되고, 그 후, 기억되는 태그와 처리 번호가 비교됨으로써, 추출 신호가 선두어의 후보에 상당하는지 여부가 판단된다. 이 때문에, 1 패킷 길이의 사이에 복수개의 동기 코드가 출현할 때일지라도 정당한 후보를 탐색하여 동기 상태로 이행할 수 있다.In the apparatus of the third aspect of the invention, in an asynchronous state, the process number added to the extracted signal to which the candidate of the leading word is set is stored as a tag, and then the stored tag and the process number are compared, whereby the extracted signal is the candidate of the leading word. It is determined whether or not Therefore, even when a plurality of sync codes appear between one packet length, a valid candidate can be searched for and shifted to the sync state.

Claims (3)

P(≥2)개의 L(≥1) 비트 길이의 제 1 단위 데이터의 열을 갖는 패킷을 단위로 하여 구성되는 제 1 데이터 신호가 m(≥1) 비트 길이의 제 2 단위 데이터의 열로 할당되어 이루어지는 제 2 데이터 신호를 입력 데이터 신호로서 입력하고, 해당 입력 데이터 신호로부터 상기 제 1 데이터 신호를 재구성하여 출력하는 동기화 장치에 있어서,A first data signal configured on the basis of a packet having a column of first unit data of P (≥2) L (≥1) bit lengths is allocated to a column of second unit data of m (≥1) bit length A synchronization device for inputting a second data signal formed as an input data signal, and reconstructing and outputting the first data signal from the input data signal. 각각이 m 비트의 기억 용량을 갖고, 상기 입력 데이터 신호를 구성하는 상기 제 2 단위 데이터를 순차적으로 유지하는 복수개의 버퍼를 구비하는 시프트 레지스터와,A shift register each having a storage capacity of m bits and having a plurality of buffers sequentially holding the second unit data constituting the input data signal; 상기 제 1 단위 데이터가 상기 제 2 데이터 신호에 순차적으로 할당되는 제 1 내지 제 K(≥1) 패턴에 상응하여, 상기 시프트 레지스터에 유지되는 데이터 중에서 각각 L 비트 길이의 데이터를 추출함으로써 제 1 내지 제 K 추출 데이터를 얻는 패턴 데이터 추출부와,Corresponding to the first through K (≥1) patterns in which the first unit data is sequentially assigned to the second data signal, the L bit length data is extracted from the data held in the shift register, respectively. A pattern data extraction unit for obtaining K-th extraction data; 상기 제 1 내지 제 K 추출 데이터의 각각을 상기 패킷의 선두어 표식으로서의 동기 코드와 비교하는 제 1 비교부와,A first comparison section for comparing each of the first to K th extraction data with a synchronization code as a headword mark of the packet; 상기 제 1 내지 제 K 추출 데이터 중에서 하나를 추출 신호로서 선택하여 출력하는 패턴 선택부와,A pattern selector configured to select and output one of the first to K th extracted data as an extracted signal; 동기 상태 및 비동기 상태에 따라 상기 패턴 선택부의 선택 동작을 제어하는 상태 천이 제어부와,A state transition control unit controlling a selection operation of the pattern selection unit according to a synchronous state and an asynchronous state; 상기 동기 상태 및 상기 비동기 상태 중 어느 것인지 결정하는 동기 판정부를 포함하고,And a synchronization determining unit for determining which of the synchronous state and the asynchronous state, 상기 상태 천이 제어부는The state transition control unit 상기 입력 데이터 신호로부터 연속한 L 비트 단위의 데이터를 순차적으로 추출하도록, 상기 패턴 선택부에 상기 제 1 내지 제 K 추출 데이터를 순환적으로 순차적 선택시키는 모드 시프트부와,A mode shift unit configured to cyclically select the first to K th extraction data sequentially into the pattern selection unit so as to sequentially extract data in units of consecutive L bits from the input data signal; 비동기 상태에 한해서는 상기 제 1 비교부에 의한 비교에 있어서, 제 k(1≤k≤K)추출 데이터만이 상기 동기 코드와 일치할 때마다 상기 모드 시프트부가 상기 패턴 선택부에 지시하는 추출 데이터의 순차적인 선택을 해당 제 k 패턴에 대응하는 제 k 추출 신호를 상기 선두어의 후보로 설정하여, 이것을 기점으로 한 순차적인 선택으로 변경시키는 모드 변경부를 포함하고,In the comparison by the first comparator only in the asynchronous state, whenever only the k (1 ≦ k ≦ K) extraction data matches the sync code, the mode shift unit instructs the pattern selection unit to extract the extracted data. A mode changer for setting the sequential selection to the k-th extraction signal corresponding to the k-th pattern as a candidate of the leading word, and changing the sequential selection to sequential selection based on the starting point; 상기 동기 판정부는The synchronization determining unit 상기 추출 신호가 출력되는 것에 동기하여, P 개의 정수를 처리 번호로서 순환적으로 카운트 가능한 처리 번호 생성부와,A processing number generation unit capable of cyclically counting P integers as processing numbers in synchronization with the output of the extracted signals; 상기 추출 신호를 상기 동기 코드와 비교하는 제 2 비교부와,A second comparator for comparing the extracted signal with the sync code; 상기 처리 번호 및 상기 제 2 비교부에서의 비교의 결과에 근거하여 상기 동기 상태 및 상기 비동기 상태 사이의 천이를 결정하는 상태 판정부를 포함하고,A state determination unit that determines a transition between the synchronous state and the asynchronous state based on the processing number and the result of the comparison in the second comparison unit, 상기 상태 판정부는 상기 비동기 상태에서는, 상기 제 2 비교부에서의 비교에 있어서, 상기 후보에 상당하는 상기 추출 신호와 상기 동기 코드와의 일치가 제 1 소정의 빈도 이상으로 반복하여 얻어지면, 상기 동기 상태로의 이행을 결정함과동시에 일치가 얻어진 해당 후보를 확정 선두어로 하고, 상기 동기 상태에서는, 상기 제 2 비교부에서의 비교에 있어서, 상기 확정 선두어에 상당하는 상기 추출 신호와 상기 동기 코드와의 불일치가 제 2 소정의 빈도 이상으로 반복하여 얻어지면, 상기 비동기 상태로의 이행을 결정하고 또한, 상기 추출 신호가 상기 후보 또는 상기 확정 선두어에 상당하는지 여부의 판단을 상기 처리 번호에 근거하여 실행하는 동기화 장치.In the asynchronous state, the state determining unit is configured to synchronize the extracted signal corresponding to the candidate with the synchronization code if it is repeatedly obtained at a first predetermined frequency or more in the comparison in the second comparing unit. The candidate to be matched at the same time as the determination of the transition to the state is defined as a definite leader, and in the synchronous state, the extraction signal and the synchronization code corresponding to the definite leader are compared in the second comparison unit. If the inconsistency with is repeatedly obtained more than a second predetermined frequency, the transition to the asynchronous state is determined, and the determination of whether the extracted signal corresponds to the candidate or the definite headword is made based on the process number. Synchronization device running by. 제 1 항에 있어서,The method of claim 1, 상기 처리 번호 생성부는 상기 비동기 상태에서는, 상기 제 2 비교부에서의 비교에 있어서, 상기 추출 신호와 상기 동기 코드와의 일치가 얻어질 때마다 상기 처리 번호를 소정값으로 복귀시키고,In the asynchronous state, the process number generation unit returns the process number to a predetermined value every time a match between the extraction signal and the synchronization code is obtained in the comparison in the second comparison unit, 상기 상태 판정부는 상기 처리 번호가 상기 소정값의 하나 전의 값을 거친 뒤에 상기 소정값으로 복귀했을 때, 상기 추출 신호가 상기 후보 또는 상기 확정 선두어에 상당한다고 판단하는 동기화 장치.And the state determining unit judges that the extracted signal corresponds to the candidate or the determined headword when the process number returns to the predetermined value after passing the value before one of the predetermined values. 제 1 항에 있어서,The method of claim 1, 상기 상태 판정부는 태그 기억부를 더 포함하고,The state determination unit further includes a tag storage unit, 상기 상태 판정부는 비동기 상태에 있어서, 상기 후보가 설정된 상기 추출신호가 출력되었을 때의 상기 처리 번호를 태그로서 상기 태그 기억부에 기억시킨 후, 상기 처리 번호를 상기 태그 기억부에 기억되는 상기 태그와 비교함으로써 상기 추출 신호가 상기 후보에 상당하는지의 여부를 판단하는 동기화 장치.The state judging section stores the process number when the extraction signal to which the candidate is set is output in the tag storage unit as a tag in an asynchronous state, and then stores the process number with the tag stored in the tag storage unit. And a comparison device determines whether the extracted signal corresponds to the candidate.
KR1019980002525A 1997-06-18 1998-01-30 Synchronizing device KR100299339B1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP16131597A JP3616981B2 (en) 1997-06-18 1997-06-18 Synchronizer
JP97-161315 1997-06-18

Publications (2)

Publication Number Publication Date
KR19990006331A KR19990006331A (en) 1999-01-25
KR100299339B1 true KR100299339B1 (en) 2001-09-06

Family

ID=15732770

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019980002525A KR100299339B1 (en) 1997-06-18 1998-01-30 Synchronizing device

Country Status (4)

Country Link
US (1) US6047004A (en)
JP (1) JP3616981B2 (en)
KR (1) KR100299339B1 (en)
DE (1) DE19758046C2 (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6501810B1 (en) * 1998-10-13 2002-12-31 Agere Systems Inc. Fast frame synchronization
SE517547C2 (en) * 1998-06-08 2002-06-18 Ericsson Telefon Ab L M Signal synchronization in signal quality measurement
JP3765931B2 (en) * 1998-10-15 2006-04-12 富士通株式会社 Buffer control method and buffer control apparatus
US7646831B2 (en) * 2001-10-19 2010-01-12 Nokia Corporation Method and a device for controlling data extraction from a data stream containing at lease one data packet
US20030182472A1 (en) * 2002-03-20 2003-09-25 Mark Duffy Synchronization scheme
EP1525694A2 (en) * 2002-07-31 2005-04-27 Tellabs Operations, Inc. Methods and apparatus for improved communications networks
US7814376B2 (en) * 2004-03-01 2010-10-12 Exar Corporation Method and apparatus for frame delineation
JP7208448B2 (en) * 2019-02-01 2023-01-19 富士通株式会社 Information processing device, information processing program, and information processing method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NZ220548A (en) * 1986-06-18 1990-05-28 Fujitsu Ltd Tdm frame synchronising circuit
JP2970717B2 (en) * 1992-03-17 1999-11-02 三菱電機株式会社 Frame synchronization circuit
US5557614A (en) * 1993-12-22 1996-09-17 Vlsi Technology, Inc. Method and apparatus for framing data in a digital transmission line
DE4429595C1 (en) * 1994-08-20 1995-06-29 Philips Patentverwaltung Digital data transmission system for ATM cells transporting 34 368 Kbit/s PDH signals
JP2713252B2 (en) * 1995-07-21 1998-02-16 株式会社日立製作所 Packet phase synchronization circuit
JPH08111672A (en) * 1995-07-21 1996-04-30 Hitachi Ltd Packet phase synchronizing circuit

Also Published As

Publication number Publication date
DE19758046A1 (en) 1998-12-24
KR19990006331A (en) 1999-01-25
JP3616981B2 (en) 2005-02-02
JPH118613A (en) 1999-01-12
DE19758046C2 (en) 2002-03-07
US6047004A (en) 2000-04-04

Similar Documents

Publication Publication Date Title
US4506372A (en) Method and apparatus for recognizing in a receiver the start of a telegram signal consisting of a bit impulse sequence
US4414676A (en) Signal synchronization system
US5173695A (en) High-speed flexible variable-length-code decoder
US4347606A (en) Method of frame synchronization of a digital TDM communication system and arrangement for performing the method
KR100299339B1 (en) Synchronizing device
US5483539A (en) Programmable PCM/TDM demultiplexer
US4072987A (en) Digital storage systems
US4920547A (en) Stuff synchronization circuit
US5123020A (en) Phase synchronization pull-in system in bit error detecting apparatus
US5274647A (en) Elastic buffer with error detection using a hamming distance circuit
JP4012907B2 (en) Asynchronous transmission method and circuit thereof
CN109952739B (en) Data processing apparatus
EP0297918B1 (en) Digital synchronisation
JP2679487B2 (en) Frame synchronization circuit
KR100503532B1 (en) Apparatus and method for correcting error
US6094741A (en) Viterbi decoding apparatus, method for controlling slip state of convolutional code in viterbi decoding apparatus, and slip state control apparatus
RU2001105943A (en) EQUIPPED WITH CACHE MEMORY, OPERATING ON THE PRINCIPLE OF REVERSE SEQUENCE, A REMEMBERING DEVICE WITH AN ARBITRARY SELECTION FOR A SERIAL VITERBIE DECODER
US6763039B1 (en) Method and arrangement for locating a synchronization sequence in a serial bit stream
JP3978898B2 (en) Multiframe synchronization detection method and apparatus
US20030072328A1 (en) Framing data in a control circuit
KR100209881B1 (en) Memory controller in high speed variable length decoder
KR100270335B1 (en) Frame synchronization apparatus for rounding synchronization protection information
EP1199809A1 (en) Encoding rate detection method and encoding rate detection device
KR19990015370A (en) Clock signal generator for synchronization of systems that process digital data packets.
JP2007201802A (en) Data transfer circuit

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment
FPAY Annual fee payment

Payment date: 20140530

Year of fee payment: 14

LAPS Lapse due to unpaid annual fee