KR102452621B1 - 선형 피드백 쉬프트 레지스터를 이용하여 데이터를 복구하는 장치 및 이를 포함하는 데이터 송수신 시스템 - Google Patents

선형 피드백 쉬프트 레지스터를 이용하여 데이터를 복구하는 장치 및 이를 포함하는 데이터 송수신 시스템 Download PDF

Info

Publication number
KR102452621B1
KR102452621B1 KR1020180064478A KR20180064478A KR102452621B1 KR 102452621 B1 KR102452621 B1 KR 102452621B1 KR 1020180064478 A KR1020180064478 A KR 1020180064478A KR 20180064478 A KR20180064478 A KR 20180064478A KR 102452621 B1 KR102452621 B1 KR 102452621B1
Authority
KR
South Korea
Prior art keywords
seed
data
shift register
feedback shift
linear feedback
Prior art date
Application number
KR1020180064478A
Other languages
English (en)
Other versions
KR20190138194A (ko
Inventor
최동철
강성호
이준희
임한결
조병욱
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020180064478A priority Critical patent/KR102452621B1/ko
Priority to US16/427,856 priority patent/US10943524B2/en
Priority to CN201910480298.3A priority patent/CN110557242B/zh
Publication of KR20190138194A publication Critical patent/KR20190138194A/ko
Application granted granted Critical
Publication of KR102452621B1 publication Critical patent/KR102452621B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/20Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G3/00Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes
    • G09G3/20Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix no fixed position being assigned to or needed to be assigned to the individual characters or partial characters
    • G09G3/2092Details of a display terminals using a flat panel, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • G06F7/582Pseudo-random number generators
    • G06F7/584Pseudo-random number generators using finite field arithmetic, e.g. using a linear feedback shift register
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/005Adapting incoming signals to the display format of the display terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03828Arrangements for spectral shaping; Arrangements for providing signals with specified spectral properties
    • H04L25/03866Arrangements for spectral shaping; Arrangements for providing signals with specified spectral properties using scrambling
    • H04L25/03872Parallel scrambling or descrambling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0625Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation with splitting of the data block into left and right halves, e.g. Feistel based algorithms, DES, FEAL, IDEA or KASUMI
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2310/00Command of the display device
    • G09G2310/02Addressing, scanning or driving the display screen or processing steps related thereto
    • G09G2310/0264Details of driving circuits
    • G09G2310/027Details of drivers for data electrodes, the drivers handling digital grey scale data, e.g. use of D/A converters
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2310/00Command of the display device
    • G09G2310/02Addressing, scanning or driving the display screen or processing steps related thereto
    • G09G2310/0264Details of driving circuits
    • G09G2310/0286Details of a shift registers arranged for use in a driving circuit
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2310/00Command of the display device
    • G09G2310/08Details of timing specific for flat panels, other than clock recovery
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2330/00Aspects of power supply; Aspects of display protection and defect management
    • G09G2330/06Handling electromagnetic interferences [EMI], covering emitted as well as received electromagnetic radiation
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2358/00Arrangements for display data security
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/12Details relating to cryptographic hardware or logic circuitry
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

선형 피드백 쉬프트 레지스터를 이용하여 데이터를 복구하는 장치 및 이를 포함하는 데이터 송수신 시스템이 개시된다. 본 개시에 따른 스크램블 데이터를 디스크램블링함으로써 복호 데이터를 생성하는 장치는 복수의 엣지들을 포함하는 클럭을 수신하고, 제1 엣지 내지 제N-1 엣지에 각각 대응하는 제1 씨드 내지 제N-1 씨드(N은 2 이상의 자연수)를 포함하는 복수의 씨드들을 순차적으로 생성하는 선형 피드백 쉬프트 레지스터(Linear Feedback Shift Register), 상기 제1 씨드를 이용하여 제N 엣지에 대응하는 제N 씨드를 계산하는 씨드 계산기 및 상기 선형 피드백 쉬프트 레지스터가 생성한 상기 복수의 씨드들 및 상기 씨드 계산기가 계산한 상기 제N 씨드를 이용하여 상기 스크램블 데이터를 디스크램블링 하는 디스크램블러;를 포함하고, 상기 선형 피드백 쉬프트 레지스터는 상기 제N 씨드를 이용하여 제N+1 씨드를 생성하는 것을 특징으로 할 수 있다.

Description

선형 피드백 쉬프트 레지스터를 이용하여 데이터를 복구하는 장치 및 이를 포함하는 데이터 송수신 시스템{DEVICE RESTORING DATA BY USING LINEAR FEEDBACK SHIFT REGISTER AND DATA TRANCEIVING SYSTEM COMPRISING THE SAME}
본 개시의 기술적 사상은 데이터를 수신하는 장치 및 이를 포함하는 데이터송수신 시스템에 관한 것으로서, 더욱 상세하게는 선형 피드백 쉬프트 레지스터를 이용하여 수신한 데이터에 대한 디스크램블링을 수행함으로써 원본 데이터를 복구하는 장치 및 이를 포함하는 데이터 송수신 시스템에 관한 것이다.
최근 사용자 장치는 경량화 및 저전력화가 요구된다. 이러한 요구를 충족시키기 위해서, 음극선관(CRT: cathode-ray tube) 대신에 액정 디스플레이 장치(LCD: liquid crystal display)와 같은 플랫 패널(flat panel) 디스플레이 장치가 널리 사용되고 있다. 플랫 패널 디스플레이 장치는 영상을 디스플레이하기 위한 디스플레이 패널을 포함하며, 디스플레이 패널은 복수 개의 픽셀들(pixels)로 구성된다. 픽셀들은 픽셀들의 게이트를 선택하기 위한 다수의 게이트 라인들과 색상 데이터(즉, 계조 데이터)를 전달하기 위한 다수의 소스 라인들이 교차하는 영역들에 각각 형성된다.
디스플레이 패널에 영상이 디스플레이되려면, 게이트 라인에 제어 신호가 인가되어야 하고, 소스 라인에 이미지 데이터가 인가된다. 디스플레이 구동 회로(Display Driver Integrated circuit;DDI) 또는 시스템 온 칩(System On Chip;SOC)은 이러한 제어 신호와 이미지 데이터를 디스플레이 패널에 제공한다. 디스플레이 패널에 있어서, 디스플레이 패널에 제공되는 제어 신호와 이미지 데이터는 복수의 전송 선로를 통해 전달될 수 있고, 복수의 전송 선로를 이용하여 전송되는 제어 신호가 중첩되는 경우에는 전자기파 간섭(electromagnetic interference; EMI)으로 인한 오류가 발생할 수 있다. 이러한 전자기파 간섭(EMI)은 디스플레이 패널뿐 만 아니라, 데이터를 송수신하는 각종 장치(예를 들면, PCI(Peripheral Component Interconnect), MODEM(Modulator-Demodulator) 등)에서도 문제가 될 수 있다.
본 개시의 기술적 사상이 해결하고자 하는 과제는 전자기파 간섭에도 불구하고 데이터를 효율적으로 송수신할 수 있는 장치 및 이를 포함하는 데이터 송수신 시스템을 제공하는데 있다.
상기와 같은 목적을 달성하기 위하여, 본 개시의 기술적 사상의 일측면에 따른 스크램블 데이터를 디스크램블링함으로써 복호 데이터를 생성하는 장치는, 복수의 엣지들을 포함하는 클럭을 수신하고, 제1 엣지 내지 제N-1 엣지에 각각 대응하는 제1 씨드 내지 제N-1 씨드(N은 2 이상의 자연수)를 포함하는 복수의 씨드들을 순차적으로 생성하는 선형 피드백 쉬프트 레지스터(Linear Feedback Shift Register), 상기 제1 씨드를 이용하여 제N 엣지에 대응하는 제N 씨드를 계산하는 씨드 계산기 및 상기 선형 피드백 쉬프트 레지스터가 생성한 상기 복수의 씨드들 및 상기 씨드 계산기가 계산한 상기 제N 씨드를 이용하여 상기 스크램블 데이터를 디스크램블링 하는 디스크램블러를 포함하고, 상기 선형 피드백 쉬프트 레지스터는 상기 제N 씨드를 이용하여 제N+1 씨드를 생성하는 것을 특징으로 할 수 있다.
본 개시의 기술적 사상의 일측면에 따른 데이터 송수신 시스템은 원본 데이터를 스크램블링함으로써 제1 데이터 내지 제N 데이터(N은 2 이상의 자연수)를 포함하는 스크램블 데이터를 생성하고 출력하는 제1 장치 및 상기 스크램블된 데이터를 수신하고, 상기 스크램블된 데이터를 디스크램블링함으로써 상기 원본 데이터로 복호하는 제2 장치를 포함하고, 상기 제2 장치는, 복수의 엣지들을 포함하는 클럭을 수신하고, 제1 엣지 내지 제N-1 엣지에각각 대응하는 제1 씨드 내지 제N-1 씨드(N은 2 이상의 자연수)를 포함하는 복수의 씨드들을 순차적으로 생성하는 선형 피드백 쉬프트 레지스터(Linear Feedback Shift Register), 상기 제1 씨드를 이용하여 제N 엣지에 대응하는 제N 씨드를 계산하는 씨드 계산기 및 상기 선형 피드백 쉬프트 레지스터가 생성한 상기 복수의 씨드들 및 상기 씨드 계산기가 계산한 상기 제N 씨드를 이용하여 상기 스크램블 데이터를 디스크램블링 하는 디스크램블러;를 포함하고, 상기 선형 피드백 쉬프트 레지스터는 상기 제N 씨드를 이용하여 제N+1 씨드를 생성하는 것을 특징으로 할 수 있다.
본 개시의 기술적 사상의 일측면에 따른 제1 데이터 내지 제N 데이터(N은 자연수)를 포함하는 스크램블된 데이터를 디스크램블링 함으로써 원본 데이터를 복호하는 데이터 디스크램블링 방법은 선형 피드백 쉬프트 레지스터(Linear Feedback Shift Register)를 이용하여 상기 제1 데이터 내지 제k-1 데이터(k는 N 이하의 자연수)에 대응하는 제1 씨드 내지 제k-1 씨드를 생성하는 단계, 상기 제1 씨드를 이용하여 제k 씨드를 계산하는 단계, 상기 제k 씨드를 메모리에 저장하는 단계, 상기 제1 씨드 내지 제k-1 씨드를 이용하여 상기 제1 데이터 내지 제k-1 데이터를 디스크램블링 하는 단계, 상기 메모리로부터 수신한 제k 씨드를 이용하여 상기 제N 데이터를 디스크램블링 하는 단계 및 상기 선형 피드백 쉬프트 레지스터를 이용하여 상기 메모리로부터 수신한 상기 제k 씨드로부터 제k+1씨드 내지 제N 씨드를 생성하는 단계 를 포함하고, 상기 선형 피드백 쉬프트 레지스터는 제1 함수를 이용하여 상기 제1 씨드 내지 제k-1 씨드를 생성하고, 상기 계산하는 단계는 상기 제1 씨드를 상기 제1 함수에 k-1번 거듭 대입함으로써 상기 제k 씨드를 계산하는 것을 특징으로 할 수 있다.
본 개시의 기술적 사상에 따른 장치는 선형 피드백 쉬프트 레지스터를 이용한 디스크램블링 동작에서 미리 예측한 씨드를 기초로 데이터를 외부의 개입 없이 복구함으로써 전자기파 간섭으로 인한 데이터 손실을 최소화할 수 있다.
도 1은 본 개시의 예시적 실시예에 따른 데이터 송수신 시스템을 나타내는 블록도이다.
도 2는 본 개시의 예시적 실시예에 따른 장치를 나타내는 블록도이다.
도 3은 본 개시의 예시적 실시예에 따른 장치를 나타내는 블록도이다.
도 4는 본 개시의 예시적 실시예에 따른 선형 피드백 쉬프트 레지스터의 동작을 나타내는 순서도이다.
도 5는 본 개시의 예시적 실시예에 따른 씨드 계산기의 동작을 나타내는 순서도이다.
도 6은 본 개시의 예시적 실시예에 따른 예측 씨드를 계산하는 방법을 나타내는 도면이다.
도 7a 및 도 7b는 본 개시의 예시적 실시예에 따른 데이터 송수신을 나타내는 타이밍도이다.
도 8은 본 개시의 예시적 실시예에 따른 장치를 나타내는 블록도이다.
도 9a 내지 도 9c는 본 개시의 예시적 실시예에 따른 씨드 계산기의 동작 일 예시를 나타내는 도면이다.
도 10은 본 개시의 예시적 실시예에 따른 장치를 나타내는 블록도이다.
도 11은 본 개시의 예시적 실시예에 따른 유효성 체커의 동작을 나타내는 순서도이다.
도 12는 본 개시의 예시적 실시예에 따른 장치를 나타내는 블록도이다.
도 13은 본 개시의 예시적 실시예에 따른 유효성 체커의 동작을 나타내는 순서도이다.
도 14는 본 개시의 예시적 실시예에 따른 데이터 송수신 시스템을 나타내는 블록도이다.
도 15은 본 개시의 예시적 실시예에 따른 컴퓨팅 시스템에서 사용되는 인터페이스를 나타내는 블록도이다.
도 1은 본 개시의 예시적 실시예에 따른 데이터 송수신 시스템을 나타내는 블록도이다.
도 1을 참조하면, 데이터 송수신 시스템(1)은 제1 장치(10) 및 제2 장치(20)를 포함할 수 있고, 제1 장치(10)는 스크램블러(110) 및 제1 선형 피드백 쉬프트 레지스터(Linear Feedback Shift Register;LFSR)(120)를 포함할 수 있다.
제1 선형 피드백 쉬프트 레지스터(120)는 클럭에 기초하여 스크램블링 씨드(Sd_s)를 순차적으로 생성할 수 있다. 스크램블러(110)는 제1 선형 피드백 쉬프트 레지스터(120)로부터 수신한 스크램블링 씨드(Sd_s)를 기초로 원본 데이터를 스크램블링할 수 있다. 일 실시예에서, 스크램블러(110)는 스크램블링 씨드(Sd_s) 및 원본 데이터에 대한 XOR 연산을 통해서 원본 데이터를 스크램블링할 수 있다. 스크램블러(110)는 원본 데이터를 스크램블링함으로써 생성한 스크램블 데이터(D_Scr)를 제2 장치(20)에 출력할 수 있다.
제2 장치(20)는 디스크램블러(210), 제2 선형 피드백 쉬프트 레지스터(220) 및 씨드 계산기(230)를 포함할 수 있다. 제2 선형 피드백 쉬프트 레지스터(220)는 클럭에 기초하여 디스크램블링 씨드(Sd_d)를 순차적으로 생성할 수 있고, 디스크램블러(210)는 제2 선형 피드백 쉬프트 레지스터(220)로부터 수신한 디스크램블링 씨드(Sd_d)를 기초로 스크램블 데이터(D_Scr)를 디스크램블링할 수 있다. 일 실시예에서, 디스크램블러(210)는 디스크램블링 씨드(Sd_d) 및 스크램블 데이터(D_Scr)에 대한 XOR 연산을 통해 스크램블 데이터(D_Scr)를 디스크램블링할 수 있다.
일 실시예에서, 제2 선형 피드백 쉬프트 레지스터(220)는 클럭에 기초하여 스크램블링 씨드(Sd_s)와 동일한 디스크램블링 씨드(Sd_d)를 생성할 수 있다. 자세하게는, 제2 선형 피드백 쉬프트 레지스터(220)는 클럭의 상승 엣지 또는 하강 엣지에 기초하여 스크램블링 씨드(Sd_s)와 동일한 디스크램블링 씨드(Sd_d)를 순차적으로 생성할 수 있다. 일 예시에서, 스크램블러(110)는 제1 선형 피드백 쉬프트 레지스터(120)로부터 수신한 제1 스크램블링 씨드를 이용하여 원본 데이터를 스크램블링함으로써 제1 스크램블 데이터를 생성하고, 디스크램블러(210)는 제2 선형 피드백 쉬프트 레지스터(220)로부터 수신한 제1 디스크램블링 씨드를 이용하여 제1 스크램블 데이터를 디스크램블링함으로써 복구 데이터를 생성할 수 있다. 제1 스크램블링 씨드와 제1 디스크램블링 씨드가 동일하기 때문에, 원본 데이터와 동일한 복구 데이터가 생성될 수 있다.
씨드 계산기(230)는 유효 씨드를 기초로 예측 씨드(Sd_p)를 계산하고, 계산한 예측 씨드(Sd_p)를 제2 선형 피드백 쉬프트 레지스터(220)에 출력할 수 있다. 전자기파 간섭(EMI) 등과 같은 현상으로 인해 제2 선형 피드백 쉬프트 레지스터(220)가 디스크램블링 씨드(Sd_d)를 생성할 때 사용되는 클럭에 오류가 발생할 수 있다. 제1 선형 피드백 쉬프트 레지스터(120) 및 제2 선형 피드백 쉬프트 레지스터(220)는 서로 다른 클럭 생성기로부터 생성된 클럭에 기초하여 동작 하기 때문에, 제2 선형 피드백 쉬프트 레지스터(220)가 사용하는 클럭이 오작동 하는 경우, 디스크램블러(210)는 스크램블링 씨드(Sd_d)와 다른 디스크램블링 씨드(Sd_d)를 이용하여 디스크램블 데이터(D_Scr)를 디스크램블링 할 수 있다. 이에 따라서 제1 장치(10)에서 스크램블링을 수행한 원본 데이터와 제2 장치(20)에서 디스크램블링을 통해 생성한 복구 데이터가 달라지는 오류가 발생할 수 있다.
또한 복수의 엣지들을 포함하는 클럭에 대하여, 제2 선형 피드백 쉬프트 레지스터(220)는 클럭의 제1 엣지에 대응하는 디스크램블링 씨드(Sd_d)를 기초로 그 다음 엣지에 대응하는 디스크램블링 씨드(Sd_d)를 생성할 수 있다. 따라서, 클럭의 제1 엣지에서 오류가 발생한 경우 제1 엣지 이후의 디스크램블링 씨드(Sd_d) 역시 스크램블링 씨드(Sd_s)와 다를 수 있다. 결과적으로 오류가 발생한 제1 엣지 이후에 디스크램블러(210)가 디스크램블링한 복구 데이터는 원본 데이터와 상이할 수 있다.
본 개시의 기술적 사상에 따르면, 씨드 계산기(230)가 유효 씨드를 기초로 예측 씨드(Sd_p)를 계산하고, 제2 선형 피드백 쉬프트 레지스터(220)가 예측 씨드(Sd_p)를 기초로 이후 클럭에 대한 디스크램블링 씨드(Sd_d)를 생성할 수 있다. 이에 따라서, 예측 씨드(Sd_d) 이후의 디스크램블링 씨드(Sd_d)는 클럭이 오류가 발생한 제1 엣지 이후라고 하더라도 제1 장치(10)의 개입 없이도 스크램블링 씨드(Sd_s)와 같은 값을 가질 수 있고, 원본 데이터와 동일한 값을 갖는 복구 데이터가 생성될 수 있다.
도 2는 본 개시의 예시적 실시예에 따른 장치를 나타내는 블록도이다. 도 1과 중복되는 내용은 생략한다.
도 2를 참조하면, 장치(20a)는 디스크램블러(210), 선형 피드백 쉬프트 레지스터(220), 씨드 계산기(230) 및 클럭 생성기(240)를 포함할 수 있다. 장치(20a)는 도 1의 제2 장치(20)에 대응될 수 있다.클럭 생성기(240)는 제1 엣지 내지 제n 엣지(Eg1~Egn)를 순차적으로 포함하는 클럭(Clk)을 생성하여 선형 피드백 쉬프트 레지스터(220)에 출력할 수 있다. 제1 엣지 내지 제n 엣지(Eg1~Egn)는 클럭 생성기(240)로부터 생성되는 클럭(Clk)의 하강 엣지 또는 상승 엣지를 의미할 수 있고, 선형 피드백 쉬프트 레지스터(220)는 제1 엣지 내지 제n 엣지(Eg1~Egn)에 대응하여 제1 씨드 내지 제n 씨드(Sd1~Sdn)를 순차적으로 생성할 수 있다.
선형 피드백 쉬프트 레지스터(220)는 이전 엣지에 대응하는 씨드를 기초로 그 다음 엣지에 대응하는 씨드를 생성할 수 있다. 일 예시로써, 선형 피드백 쉬프트 레지스터(220)는 제1 엣지(Eg1)에 대응하는 제1 씨드(Sd1)를 이용하여 제2 엣지(Eg2)에 대응하는 제2 씨드(Sd2)를 생성하고, 제2 씨드(Sd2)를 이용하여 제3 엣지(Eg3)에 대응하는 제3 씨드(Sd3)를 생성할 수 있다. 일 실시예에서, 선형 피드백 쉬프트 레지스터(220)는 제1 씨드(Sd1)를 미리 결정된 제1 함수에 대입함으로써 제2 씨드(Sd2)를 생성하고, 제2 씨드(Sd2)를 미리 결정된 제1 함수에 대입함으로써 제3 씨드(Sd3)를 생성할 수 있다. 선형 피드백 쉬프트 레지스터(220)는 생성한 제1 씨드 내지 제n 씨드(Sd1~Sdn)를 제1 엣지 내지 제n 엣지(Eg1~Egn)에 대응하여 디스크램블러(210)에 순차적으로 출력할 수 있다.
또한, 선형 피드백 쉬프트 레지스터(220)는 유효 씨드(Sd_v)를 씨드 계산기(230)에 출력하고, 씨드 계산기(230)는 유효 씨드(Sd_v)를 기초로 예측 씨드(Sd_p)를 계산할 수 있다. 일 실시예에서, 씨드 계산기(230)는 유효 씨드(Sd_v)를 미리 결정된 제1 함수에 반복 대입함으로써 예측 씨드(Sd_p)를 계산할 수 있다. 씨드 계산기(230)는 계산한 예측 씨드(Sd_p)를 선형 피드백 쉬프트 레지스터(220)에 출력할 수 있다. 일 실시예에서, 선형 피드백 쉬프트 레지스터(220)는 복수의 레지스터로 구성될 수 있고, 씨드 계산기(230)는 예측 씨드(Sd_p)를 대응되는 레지스터에 저장할 수 있다.
유효 씨드(Sd_v)는 선형 피드백 쉬프트 레지스터(220)에서 생성된 복수의 씨드들 중에서 오류가 발생하지 않고, 디스크램블링 데이터(D_Scr)를 송신하는 장치(예를 들면, 도 1의 제1 장치(10))의 스크램블링 씨드와 동일한 값을 갖는 디스크램블링 씨드일 수 있다. 일 실시예에서, 씨드 계산기(230)는 복수의 유효 씨드들을 수신하고, 복수의 유효 씨드들 중 적어도 일부를 이용하여 복수의 예측 씨드들을 생성할 수 있다.
선형 피드백 쉬프트 레지스터(220)는 예측 씨드(Sd_p)를 씨드 계산기(230)로부터 수신하면, 예측 씨드(Sd_p)에 대응하는 제k 씨드에 대해서 그 전 엣지에 대응하는 제k-1 씨드를 이용하여 생성하지 않고, 예측 씨드(Sd_p)의 값으로 사용할 수 있다. 따라서, 선형 피드백 쉬프트 레지스터(220)는 예측 씨드(Sd_p)의 값을 디스크램블러(210)에 출력하고, 예측 씨드(Sd_p)의 값을 이용하여 제k+1 씨드를 생성할 수 있다. 디스크램블러(210)는 외부(예를 들면, 도 1의 제1 장치(10))로부터 제1 데이터 내지 제n 데이터(D1~Dn)를 포함하는 스크램블 데이터(D_Scr)를 수신할 수 있다. 제1 데이터 내지 제n 데이터(D1~Dn)는 제1 씨드 내지 제n 씨드(Sd1~Sdn)에 각각 대응할 수 있으므로, 디스크램블러(210)는 클럭(Clk)에 기초하여 제1 데이터 내지 제n 데이터(D1~Dn) 및 제1 씨드 내지 제n 씨드(Sd1~Sdn) 각각에 대한 XOR 연산을 통해 복구 데이터(D_Rst)를 생성할 수 있다.
도 2에서는 씨드 계산기(230)가 예측 씨드(Sd_p)를 선형 피드백 쉬프트 레지스터(220)에 저장하는 것으로 도시되어 있으나, 이는 일 실시예이고 또 다른 실시예에서, 씨드 계산기(230)는 예측 씨드(Sd_p)를 직접 디스크램블러(210)에 출력하고, 디스크램블러(210)는 수신한 예측 씨드(Sd_p)를 이용하여 스크램블 데이터(D_Scr)에 대한 디스크램블링을 수행할 수 있다.
도 3은 본 개시의 예시적 실시예에 따른 장치를 나타내는 블록도이다. 도 2와 중복되는 내용은 생략한다.
도 3을 참조하면, 장치(20b)는 디스크램블러(210), 선형 피드백 쉬프트 레지스터(220), 씨드 계산기(230), 클럭 생성기(240) 및 메모리(250)를 포함할 수 있다. 장치(20b)는 도 1의 제2 장치(20)에 대응될 수 있다.
씨드 계산기(230)는 선형 피드백 쉬프트 레지스터(220)로부터 수신한 유효 씨드(Sd_v)를 기초로 예측 씨드(Sd_p)를 계산하고, 계산한 예측 씨드(Sd_p)를 메모리(250)에 저장할 수 있다. 일 실시예에서, 씨드 계산기(230)는 예측 씨드(Sd_p)의 계산시에 유효 씨드(Sd_v)와 예측 씨드(Sd_p) 간의 클럭(Clk)을 기초로 한 엣지 수 차이를 기초로 계산할 수 있다. 씨드 계산기(230)는 유효 씨드(Sd_v)를 선형 피드백 쉬프트 레지스터(220)에서 사용되는 제1 함수에 유효 씨드(Sd_v)와 예측 씨드(Sd_p) 간의 엣지 수 차이만큼 반복 대입함으로써 예측 씨드(Sd_p)를 생성할 수 있다.
일 실시예에서, 씨드 계산기(230)는 유효 씨드(Sd_v)와 예측 씨드(Sd_p) 간의 엣지 수 차이를 카운팅할 때 클럭 생성기(240)가 아닌 별도의 클럭(Clk’)을 이용할 수 있다. 별도의 클럭(Clk’)은 클럭 생성기(240)로부터 생성된 것이 아니므로, 클럭 생성기(240)가 전자기파 간섭(EMI)에 의해 오작동을 하는 경우에도 별도의 클럭(Clk’)에는 오류가 발생하지 않을 수 있다. 이에 따라서 클럭 생성기(240)에 전자기파 간섭(EMI)이 발생한 경우에도 예측 씨드(Sd_p)는 오류가 발생하지 않은 정확한 값을 가질 수 있다.
또 다른 실시예에서, 씨드 계산기(230)는 예측 씨드(Sd_p)의 계산 시에 미리 결정된 자연수 N을 기초로 계산할 수 있다. 씨드 계산기는 유효 씨드(Sd_v)를 선형 피드백 쉬프트 레지스터(220)에서 사용되는 제1 함수에 미리 결정된 자연수 N번 만큼 반복 대입함으로써 예측 씨드(Sd_p)를 생성할 수 있다.
씨드 계산기(230)는 예측 씨드(Sd_p)를 메모리(250)에 저장할 수 있다. 또한 씨드 계산기(230)는 별도의 클럭(Clk’)에 기초하여, 예측 씨드(Sd_p)에 대응되는 엣지에서 메모리(250)에 저장된 예측 씨드(Sd_p)를 선형 피드백 쉬프트 레지스터(220)에 출력할 수 있다. 선형 피드백 쉬프트 레지스터(220)는 예측 씨드(Sd_p)를 수신하면, 예측 씨드(Sd_p)에 대응하는 제k 씨드는 그 전 엣지에 대응하는 제k-1 씨드를 이용하여 생성하지 않고, 예측 씨드(Sd_p)의 값을 사용할 수 있다. 따라서, 선형 피드백 쉬프트 레지스터(220)는 예측 씨드(Sd_p)의 값을 디스크램블러(210)에 출력하고, 예측 씨드(Sd_p)의 값을 이용하여 제k+1 씨드를 생성할 수 있다.
일 실시예에서, 씨드 계산기(230)는 선형 피드백 쉬프트 레지스터(220)로부터 수신한 유효 씨드(Sd_v)가 유효한 지 여부를 판단하고, 유효 씨드(Sd_v)가 유효한 경우, 유효 씨드(Sd_v)를 메모리(250)에 저장할 수 있다. 이에 관해서는 도 10에서 후술한다.
도 4는 본 개시의 예시적 실시예에 따른 선형 피드백 쉬프트 레지스터의 동작을 나타내는 순서도이다.
도 2 및 도 4를 참조하면, 플래그값(i)에는 초기값인 ‘1’이 대입되고(S110), 선형 피드백 쉬프트 레지스터(220)는 클럭의 제i 엣지를 수신할 수 있다(S120). 선형 피드백 쉬프트 레지스터(220)는 씨드 계산기(230)로부터 예측 씨드(Sd_p)로써 클럭의 제i 엣지에 대응하는 제i 씨드를 수신하였는지 판단할 수 있다(S130). 일 예시에서, 선형 피드백 쉬프트 레지스터(220)는 복수의 레지스터들을 포함할 수 있고, 씨드 계산기(230)는 복수의 레지스터들 중 제i 씨드에 대응되는 레지스터에 예측 씨드(Sd_p)를 저장할 수 있다. 선형 피드백 쉬프트 레지스터(220)는 제i 씨드에 대응되는 레지스터에 예측 씨드(Sd_p)가 저장되어 있는지 여부를 기초로 씨드 계산기(230)로부터 제i 씨드를 수신하였는지 판단할 수 있다.
씨드 계산기(230)로부터 예측 씨드(Sd_p)로써 제i 씨드를 수신한 경우, 선형 피드백 쉬프트 레지스터(220)는 수신한 제i 씨드를 디스크램블러(210)에 출력할 수 있다(S140).
씨드 계산기(230)로부터 예측 씨드(Sd_p)로써 제i 씨드를 수신하지 않은 경우, 선형 피드백 쉬프트 레지스터(220)는 이전 씨드인 제i-1 씨드를 이용하여 제i 씨드를 생성할 수 있다(S150). 선형 피드백 쉬프트 레지스터(220)는 생성한 제i 씨드를 디스크램블러(210)에 출력할 수 있다(S160). 선형 피드백 쉬프트 레지스터(220)는 모든 스크램블 데이터(D_Scr)에 대한 디스크램블이 완료되었는지 판단할 수 있고(S170), 모든 스크램블 데이터(D_Scr)에 대한 디스크램블이 완료되지 않은 경우, i를 1만큼 증가시킨뒤 S120~S170 단계를 다시 수행할 수 있다.
모든 스크램블 데이터(D_Scr)에 대한 디스크램블이 완료된 경우, 선형 피드백 쉬프트 레지스터(220)는 동작을 종료할 수 있다. 일 예시에서, 클럭 생성기(240)는 모든 스크램블 데이터에 대한 디스크램블이 종료하는 경우 더 이상 클럭(Clk)을 선형 피드백 쉬프트 레지스터(220)에 출력하지 않을 수 있고, 선형 피드백 쉬프트 레지스터(220)는 클럭 생성기(240)로부터 클럭이 수신되지 않는 경우 디스크램블이 완료된 것으로 판단할 수 있다.
스크램블 데이터(D_Scr)로써 제1 데이터 내지 제3 데이터를 수신하고, 씨드 계산기(230)로부터 수신한 씨드가 제2 씨드인 예시에서, 선형 피드백 쉬프트 레지스터(220)는 클럭의 제1 엣지를 수신할 수 있다(S120). 선형 피드백 쉬프트 레지스터(220)는 씨드 계산기(230)로부터 예측 씨드(Sd_p)로써 제1 엣지에 대응하는 제1 씨드를 수신하였는지 판단할 수 있다(S130).
씨드 계산기(230)로부터 예측 씨드(Sd_p)로써 제1 씨드를 수신하지 않았으므로, 선형 피드백 쉬프트 레지스터(220)는 이전 씨드를 이용하여 제1 씨드를 생성할 수 있다(S150). 선형 피드백 쉬프트 레지스터(220)는 생성한 제1 씨드를 디스크램블러(210)에 출력할 수 있다(S160). 선형 피드백 쉬프트 레지스터(220)는 모든 스크램블 데이터(D_Scr)에 대한 디스크램블이 완료되었는지 판단할 수 있다(S170). 모든 스크램블 데이터(D_Scr)에 대한 디스크램블이 완료되지 않았으므로, 선형 피드백 쉬프트 레지스터(220)는 클럭의 제2 엣지를 수신할 수 있다(S120). 선형 피드백 쉬프트 레지스터(220)는 씨드 계산기(230)로부터 예측 씨드(Sd_p)로써 제2 엣지에 대응하는 제2 씨드를 수신하였는지 판단할 수 있다(S130). 씨드 계산기(230)로부터 예측 씨드(Sd_p)로써 제2 씨드를 수신하였으므로, 선형 피드백 쉬프트 레지스터(220)는 수신한 제2 씨드를 디스크램블러(210)에 출력할 수 있다(S160). 선형 피드백 쉬프트 레지스터(220)는 모든 스크램블 데이터(D_Scr)에 대한 디스크램블이 완료되었는지 판단할 수 있다(S170).모든 스크램블 데이터(D_Scr)에 대한 디스크램블이 완료되지 않았으므로, 선형 피드백 쉬프트 레지스터(220)는 클럭의 제3 엣지를 수신할 수 있다(S120). 선형 피드백 쉬프트 레지스터(220)는 씨드 계산기(230)로부터 예측 씨드(Sd_p)로써 제3 엣지에 대응하는 제3 씨드를 수신하였는지 판단할 수 있다(S130). 씨드 계산기(230)로부터 예측 씨드(Sd_p)로써 제3 씨드를 수신하지 않았으므로, 선형 피드백 쉬프트 레지스터(220)는 이전 씨드인 씨드 계산기(230)로부터 수신한 제2 씨드를 이용하여 제3 씨드를 생성할 수 있다(S150). 선형 피드백 쉬프트 레지스터(220)는 생성한 제3 씨드를 디스크램블러(210)에 출력할 수 있다(S160). 선형 피드백 쉬프트 레지스터(220)는 모든 스크램블 데이터(D_Scr)에 대한 디스크램블이 완료되었는지 판단할 수 있다(S170). 스크램블 데이터(D_Scr)인 제1 데이터 내지 제3 데이터에 대한 디스크램블이 모두 완료되었으므로, 선형 피드백 쉬프트 레지스터(220)는 동작을 종료할 수 있다.
도 5는 본 개시의 예시적 실시예에 따른 씨드 계산기의 동작을 나타내는 순서도이다.
도 3 및 도 5를 참조하면, 플래그 값(j)에는 초기값인 ‘1’이 대입되고(S210), 씨드 계산기(230)는 유효 씨드(Sd_v)로써 제j 씨드를 수신할 수 있다(S220). 씨드 계산기(230)는 수신한 제j 씨드가 유효한 씨드인지 판단할 수 있다(S230). 일 예시로써, 씨드 계산기(230)는 8비트-10비트 에러(8b10b error), 심볼락(Symbol Lock)등의 방법을 이용하여 씨드 계산기(230)는 수신한 제j 씨드가 유효한 씨드인지 판단할 수 있다. 제j 씨드가 유효한 씨드가 아닌 경우, 플래그 값(j)을 1만큼 증가시킨 후, 씨드 계산기(230)는 다시 제j 씨드를 수신하고(S220), 제j 씨드가 유효한 씨드인지 판단할 수 있다(S230)
제j 씨드가 유효한 씨드인 경우, 씨드 계산기(230)는 제j 씨드를 메모리(250)에 저장하고, 별도의 클럭에 기초하여 제j 씨드로부터 예측 씨드(Sd_p)를 계산할 수 있다(S260). 일 실시예에서, 씨드 계산기(230)는 제j 씨드와 예측 씨드(Sd_p) 간의 클럭의 엣지 수 차이를 기초로 예측 씨드(Sd_p)를 계산할 수 있다. 씨드 계산기(230)는 제j 씨드를 선형 피드백 쉬프트 레지스터(220)에서 사용되는 제1 함수에 제j 씨드와 예측 씨드(Sd_p) 간의 엣지 수 차이만큼 반복 대입함으로써 예측 씨드(Sd_p)를 생성할 수 있다. 또 다른 실시예에서, 씨드 계산기(230)는 제j 씨드를 선형 피드백 쉬프트 레지스터(220)에서 사용되는 제1 함수에 미리 결정된 자연수 N번 만큼 반복 대입함으로써 예측 씨드(Sd_p)를 생성할 수 있다.
씨드 계산기(230)는 계산한 예측 씨드(Sd_p)를 메모리(250)에 저장할 수 있다(S270). 씨드 계산기(230)는 별도의 클럭에 기초하여 예측 씨드(Sd_p)를 선형 피드백 쉬프트 레지스터(220)에 출력할 수 있다(S280).
도 6은 본 개시의 예시적 실시예에 따른 예측 씨드를 계산하는 방법을 나타내는 도면이다.
도 2 및 도 6을 참조하면, 선형 피드백 쉬프트 레지스터(LFSR)(220)는 클럭의 제1 엣지에 대응되는 제1 씨드를 제1 함수(f)에 대입함으로써 그 다음 엣지인 제2 엣지에 대응되는 제2 씨드를 생성할 수 있다. 또한, 선형 피드백 쉬프트 레지스터(220)는 제2 엣지에 대응되는 제2 씨드를 제1 함수(f)에 대입함으로써 그 다음 클럭인 제3 엣지에 대응되는 제3 씨드를 생성할 수 있다. 상술한 바와 같이 선형 피드백 쉬프트 레지스터(220)는 이전 엣지에 대응되는 씨드를 제1 함수에 대입하는 방식으로 제1 씨드 내지 제n 씨드를 생성할 수 있다.
씨드 계산기(230)는 제1 씨드를 제1 함수(f)에 n-1번 반복 대입함으로써 제n 씨드를 생성할 수 있다. 일 예시에서 제1 함수(f)는 제1 씨드에 곱해지는 행렬의 형태로 구현될 수 있고, 씨드 계산기(230)는 제1 함수(f)에 대응되는 행렬을 n-1 거듭 제곱한 제2 함수(g)에 제1 씨드를 곱함으로써 제n 씨드를 계산할 수 있다.
도 7a 및 도 7b는 본 개시의 예시적 실시예에 따른 데이터 송수신을 나타내는 타이밍도이다. 자세하게는, 도 7a는 제1 장치에서 원본 데이터(D_Org)를 스크램블링 씨드(Sd_s)에 기초하여 스크램블링하는 실시예를 나타내고, 도 7b는 제2 장치에서 스크램블 데이터를 디스크램블링 씨드(Sd_d)에 기초하여 디스크램블링함으로써 복구 데이터(D_Rst)를 생성하는 실시예를 나타낸다.
도 1 및 도 7a를 참조하면, 스크램블러(110)는 원본 데이터(D_Org)와 스크램블링 씨드(Sd_s)에 대한 XOR 연산을 통해 스크램블 데이터(D_Scr)를 생성할 수 있다. 원본 데이터(D_Org)는 제1 원본 데이터 내지 제9 원본 데이터(O1~O9)를 포함할 수 있고, 스크램블링 씨드(Sd_s)는 송신 클럭(Clk_T)의 상승 엣지에 따라 순차적으로 변하는 제1 씨드 내지 제9 씨드(Sd1~Sd9)를 포함할 수 있다. 제1 선형 피드백 쉬프트 레지스터(120)는 제1 원본 데이터 내지 제9 원본 데이터(O1~O9) 및 제1 씨드 내지 제9 씨드(Sd1~Sd9) 각각에 대한 XOR 연산을 수행함으로써 제1 데이터 내지 제9 데이터(D1~D9)를 포함하는 스크램블 데이터(D_Scr)를 생성할 수 있다.
도 1 및 도 7b를 참조하면, 디스크램블러(210)는 스크램블 데이터(D_Scr)와 디스크램블링 씨드(Sd_d)에 대한 XOR 연산을 통해 복구 데이터(D_Rst)를 생성할 수 있다. 디스크램블링 씨드(Sd_s)는 수신 클럭(Clk_R)의 상승 엣지에 따라 순차적으로 변하는 제1 씨드 내지 제9 씨드(Sd1~Sd9)를 포함할 수 있다. 디스크램블링 씨드(Sd_s)는 클럭의 동일한 상승 엣지에 대응하여 스크램블링 씨드(Sd_d)와 동일한 값을 가질 수 있다. 디스크램블러(210)는 제1 데이터 내지 제3 데이터(D1~D3) 및 제1 씨드 내지 제3 씨드(Sd1~Sd3) 각각에 대한 XOR 연산을 통해 제1 복구 데이터 내지 제3 복구 데이터(R1~R3)를 생성할 수 있다. 제1 복구 데이터 내지 제3 복구 데이터(R1~R3)는 스크램블러(110)가 스크램블링을 수행할 때 사용한 스크램블링 씨드(Sd_s)와 동일한 제1 씨드 내지 제3 씨드(Sd1~Sd3)를 사용하여 디스크램블 됐기 때문에 제1 원본 데이터 내지 제3 원본 데이터(O1~O3)와 동일한 값을 가질 수 있다.
제4 데이터(D4)에 대한 디스크램블링 과정에서 전자기파 간섭(EMI)이 발생할 수 있고, 이에 따라서 2개의 상승 엣지가 제4 데이터(D4)에 대한 디스크램블링 과정에서 발생할 수 있다. 결과적으로 전자기파 간섭(EMI)이 일어나기 전에는 제4 데이터(D4)가 제4 씨드(Sd4)에 의해 디스크램블링 됨에 따라서 제4 복구 데이터(R4)가 생성되었으나, 전자기파 간섭(EMI)이 일어난 후에는 제4 데이터(D4)가 제5 씨드(Sd5)에 의해 디스크램블링 됨에 따라서 제4 에러 데이터(R4’)가 생성될 수 있다. 제4 에러 데이터(R4’)는 제5 씨드(Sd5)를 이용하여 제4 데이터(D4)를 디스크램블링한 값이므로, 제4 씨드(Sd4)를 이용하여 스크램블링한 제4 원본 데이터(O4)와 상이할 수 있다.
또한, 이후의 상승 엣지마다 디스크램블링 씨드(Sd_d)는 순차적으로 달라지므로, 제5 데이터(D5)는 제6 씨드(Sd6)에 의해 디스크램블링 되고, 제6 데이터(D6)는 제7 씨드(Sd7)에 의해 디스크램블링될 수 있다. 이에 따라서, 제5 원본 데이터(O5)와 상이한 제5 에러 데이터(R5’)가 생성되고, 제6 원본 데이터(O6)와 상이한 제6 에러 데이터(R6’)가 생성될 수 있다.
본 개시의 기술적 사상에 따르면, 씨드 계산기(230)는 별도의 클럭에 기초하여 예측 씨드(Sd_p)를 계산하고, 디스크램블러(210)는 예측 씨드(Sd_p)를 기초로 스크램블 데이터(D_Scr)를 디스크램블링할 수 있다. 도 7b의 예시에서, 유효 씨드(Sd_v)는 제1 씨드(Sd1)일 수 있고 예측 씨드(Sd_p)는 제7 씨드(Sd7)일 수 있다. 씨드 계산기(230)는 별도의 클럭에 기초하여 제7 씨드(Sd7)와 제1 씨드(Sd1)에 대응하는 엣지를 기초로 제1 씨드(Sd1)부터 제7 씨드(Sd7)까지의 엣지 수인 ‘7’을 카운팅 할 수 있고, 제1 씨드(Sd1)를 미리 결정된 함수에 ‘7-1’번 대입함으로써 예측 씨드(Sd_p)로써 제7 씨드(Sd7)를 계산할 수 있다. 제2 선형 피드백 쉬프트 레지스터(220)는 예측 씨드(Sd_p)로써 제7 씨드(Sd7)를 수신하고, 디스크램블러(210)는 수신한 예측 씨드(Sd_p)인 제7 씨드(Sd7)를 기초로 제7 데이터(D7)를 디스크램블링할 수 있다. 이에 따라서 이전에 있었던 전자기파 간섭(EMI)에도 불구하고, 제7 데이터(D7)는 제7 씨드(Sd7)에 의해 제7 원본 데이터(O7)와 동일한 값을 갖는 제7 복구 데이터(R7)로 디스크램블링될 수 있다.
또한, 제2 선형 피드백 쉬프트 레지스터(220)는 예측 씨드(Sd_p)를 기초로 이후 디스크램블링 씨드(Sd_d)를 생성하므로, 제8 데이터(D8) 및 제9 데이터(D9) 역시 제8 원본 데이터(O8)와 동일한 값을 갖는 제8 복구 데이터(R8) 및 제9 원본 데이터(O9)와 동일한 값을 갖는 제9 복구 데이터(R9)로 디스크램블링될 수 있다. 상술한 바와 같이 본 개시의 기술적 사상에 따르면, 전자기파 간섭(EMI)에도 불구하고, 예측 씨드(Sd_p)를 이용하여 디스크램블링함에 따라서 효율적인 데이터 디스크램블링이 가능하다.
도 8은 본 개시의 예시적 실시예에 따른 장치를 나타내는 블록도이다. 자세하게는, 도 8은 씨드 계산기(230)가 복수의 예측 씨드들(Sd_p1~Sd_pm)을 포함하는 예측 씨드 그룹(SdG)을 계산하는 실시예를 나타낸다. 도 3과 중복되는 내용은 생략한다.
도 8을 참조하면, 장치(20c)는 디스크램블러(210), 선형 피드백 쉬프트 레지스터(220), 씨드 계산기(230), 클럭 생성기(240) 및 메모리(250)를 포함할 수 있다. 장치(20c)는 도 1의 제2 장치(20)에 대응될 수 있다.
씨드 계산기(230)는 선형 피드백 쉬프트 레지스터(220)로부터 수신한 유효 씨드(Sd_v)를 기초로 복수의 예측 씨드들(Sd_p1~Sd_pm)을 포함하는 예측 씨드 그룹(SdG)을 계산하고, 계산한 예측 씨드 그룹(SdG)을 메모리(250)에 저장할 수 있다. 씨드 계산기(230)는 별도의 클럭(Clk’)을 기초로 예측 씨드 그룹(SdG)에 포함되는 제1 예측 씨드 내지 제m 예측 씨드(Sd_p1~Sd_pm)를 선형 피드백 쉬프트 레지스터(220)에 출력할 수 있다. 선형 피드백 쉬프트 레지스터(220)는 수신한 제1 예측 씨드 내지 제m 예측 씨드(Sd_p1~Sd_pm)를 디스크램블러(210)에 출력할 수 있고, 제1 예측 씨드 내지 제m 예측 씨드(Sd_p1~Sd_pm)를 기초로 복수의 디스크램블링 씨드들을 생성할 수 있다.
도 9a 내지 도 9c는 본 개시의 예시적 실시예에 따른 씨드 계산기의 동작 의일 예시를 나타내는 도면이다. 자세하게는, 도 9a는 데이터 순서에 따른 디스크램블링 씨드를 나타내는 표이고, 도 9b 및 도 9c는 서로 다른 방법에 따라서 예측 씨드 그룹을 생성하는 실시예를 나타내는 도면이다.
도 8, 도 9a 및 도 9b를 참조하면, 디스크램블링 씨드는 데이터의 순서에 따라서 순차적으로 제1 씨드(Sd1) 내지 제3n 씨드(Sd3n)를 포함할 수 있다. 씨드 계산기(230)는 제1 씨드(Sd1)를 제1 함수(f)에 n-1번 반복 대입함으로써 제n 씨드(Sdn)를 계산할 수 있다. 또한, 씨드 계산기(230)는 제1 함수(f)를 n번 거듭 제곱한 제2 함수(fn)를 계산할 수 있고, 제2 함수(fn)에 제n 씨드(Sdn)를 대입함으로써 제2n 씨드(Sd2n)를 계산할 수 있다. 또한, 씨드 계산기(230)는 제2 함수(fn)에 계산한 제2n 씨드(Sd2n)를 대입함으로써 제3n 씨드(Sd3n)를 계산할 수 있다. 씨드 계산기(230)는 제1 예측 씨드 그룹(SdG1)로써 제n 씨드(Sdn), 제2n 씨드(Sd2n) 및 제3n 씨드(Sd3n)를 생성하고, 생성된 제1 예측 씨드 그룹(SdG1)을 메모리(250)에 저장할 수 있다.
도 8, 도 9a 및 도 9c를 참조하면, 씨드 계산기(230)는 제1 씨드(Sd1)를 제1 함수(f)에 n-1번 반복 대입함으로써 제n 씨드(Sdn)를 계산할 수 있다. 또한, 씨드 계산기(230)는 제1 함수(f)에 제n 씨드(Sdn)를 대입함으로써 제n+1 씨드(Sdn+1)를 계산할 수 있다. 또한, 씨드 계산기(230)는 제1 함수(f)에 계산한 제n+1 씨드(Sdn+1)를 대입함으로써 제n+2 씨드(Sdn+2)를 계산할 수 있다. 씨드 계산기(230)는 제2 예측 씨드 그룹(SdG2)로써 제n 씨드(Sdn), 제n+1 씨드(Sdn+1) 및 제n+2 씨드(Sdn+2)를 생성하고, 생성된 제2 예측 씨드 그룹(SdG2)을 메모리(250)에 저장할 수 있다.
도 9b 및 도 9c에서는 일정한 간격으로 배열된 3개의 씨드를 예측 씨드 그룹으로 생성하는 실시예가 도시되어 있으나 이는 예시일 뿐이고, 예측 씨드 그룹은 3개보다 많거나 적을 수 있고, 일정한 간격으로 배열되지 않은 복수 개의 씨드들을 포함할 수 있다.
도 10은 본 개시의 예시적 실시예에 따른 장치를 나타내는 블록도이다. 자세하게는 도 10은 예측 씨드가 유효한지 여부를 판단하는 실시예를 나타낸다. 도 3과 중복되는 내용은 생략한다.
도 10을 참조하면, 장치(20d)는 디스크램블러(210), 선형 피드백 쉬프트 레지스터(220), 씨드 계산기(230) 및 유효성 체커(260)를 포함할 수 있다. 씨드 계산기(230)는 유효 씨드(Sd_v)를 기초로 예측 씨드(Sd_p)를 생성하고, 생성한 예측 씨드(Sd_p)를 유효성 체커(260)에 출력할 수 있다. 유효성 체커(260)는 외부(예를 들면, 도 1의 제1 장치(10))로부터 예측 씨드(Sd_p)에 대응하는 스크램블 데이터(Dp)를 수신하고, 스크램블 데이터(Dp)를 예측 씨드(Sd_p)를 이용하여 디스크램블링함으로써 복구 데이터를 생성할 수 있다. 일 실시예에서, 예측 씨드(Sd_p)에 대응되는 복구 데이터는 미리 결정된 데이터일 수 있고, 장치(20d)는 복구 데이터에 대응하는 데이터 패턴을 미리 알고 있을 수 있다. 일 예시로써 디스플레이 패널에서 블랭크 영역(Blank Area)의 데이터일 수 있고, 디스플레이 패널의 블랭크 영역은 사용자에게 보여지지 않는 영역으로써 그 데이터 패턴이 미리 결정될 수 있다. 따라서, 장치(20d)는 블랭크 영역의 데이터를 이용하여 예측 씨드의 유효성을 판단할 수 있다.
유효성 체커(260)는 스크램블 데이터(Dp) 및 예측 씨드(Sd_p)를 이용하여 생성한 복구 데이터가 미리 결정된 데이터와 같은지 판단할 수 있다. 복구 데이터가 미리 결정된 데이터와 같은 경우 예측 씨드(Sd_p)는 오류가 없는 유효한 씨드이므로 유효성 체커(260)는 예측 씨드(Sd_p)를 선형 피드백 쉬프트 레지스터(120)에 출력할 수 있다.
일 실시예에서, 유효성 체커(260)는 선형 피드백 쉬프트 레지스터(220)로부터 예측 씨드(Sd_p)에 대응되는 씨드를 수신하고, 선형 피드백 쉬프트 레지스터(220)로부터 수신한 씨드와 유효성을 체크한 예측 씨드(Sd_p)를 비교할 수 있다. 유효성 체커(260)는 비교 결과에 기초하여 예측 씨드(Sd_p)를 선형 피드백 쉬프트 레지스터(220)에 출력할 지 여부를 결정할 수 있다.
일 예시에서, 선형 피드백 쉬프트 레지스터(220)로부터 수신한 씨드와 예측 씨드(Sd_p)가 동일한 경우, 선형 피드백 쉬프트 레지스터(220)에 대한 오류가 발생하지 않은 것을 의미할 수 있고, 이 경우에 유효성 체커(260)는 예측 씨드(Sd_p)를 선형 피드백 쉬프트 레지스터(220)에 출력하지 않을 수 있다.
또 다른 예시에서, 선형 피드백 쉬프트 레지스터(220)로부터 수신한 씨드와 예측 씨드(Sd_p)가 서로 상이한 경우, 선형 피드백 쉬프트 레지스터(220)에 대한 오류가 발생한 것을 의미할 수 있고, 이 경우에 유효성 체커(260)는 예측 씨드(Sd_p)를 선형 피드백 쉬프트 레지스터(220)에 출력할 수 있다.
도 11은 본 개시의 예시적 실시예에 따른 유효성 체커의 동작을 나타내는 순서도이다.
도 10 및 도 11을 참조하면, 유효성 체커(260)는 씨드 계산기(230)로부터 예측 씨드(Sd_p) 및 예측 씨드(Sd_p)에 대응되는 제1 스크램블 데이터(Dp)를 수신할 수 있다(S310). 유효성 체커(260)는 예측 씨드(Sd_p)를 이용하여 제1 스크램블 데이터(Dp)를 디스크램블링함으로써 복구 데이터를 생성할 수 있다(S320). 유효성 체커(260)는 복구 데이터가 예측 씨드(Sd_p)에 대응되는 미리 결정된 데이터와 동일한지 판단할 수 있다(S330). 복구 데이터가 예측 씨드(Sd_p)에 대응되는 미리 결정된 데이터와 동일한 경우, 유효성 체커(260)는 예측 씨드(Sd_p)를 선형 피드백 쉬프트 레지스터(220)에 출력할 수 있다(S340). 복구 데이터가 예측 씨드(Sd_p)에 대응되는 미리 결정된 데이터와 동일하지 않은 경우, 유효성 체커(260)는 동작을 종료할 수 있다.
도 12는 본 개시의 예시적 실시예에 따른 장치를 나타내는 블록도이다. 도 8 및 도 10과 중복되는 내용은 생략한다.
도 12를 참조하면, 장치(20e)는 디스크램블러(210), 선형 피드백 쉬프트 레지스터(220), 씨드 계산기(230), 메모리(250) 및 유효성 체커(260)를 포함할 수 있다. 씨드 계산기(230)는 유효 씨드(Sd_v)를 기초로 복수의 예측 씨드들(Sd_p1~Sd_pm)을 포함하는 예측 씨드 그룹(SdG)을 생성하고, 생성한 예측 씨드 그룹(SdG)을 메모리(250)에 저장할 수 있다.
유효성 체커(260)는 외부(예를 들면, 도 1의 제1 장치(10))로부터 복수의 예측 씨드들(Sd_p1~Sd_pm)에 대응하는 복수의 스크램블 데이터들(Dp1~Dpm)을 수신하고, 복수의 스크램블 데이터들(Dp1~Dpm)을 복수의 예측 씨드들(Sd_p1~Sd_pm)을 이용하여 디스크램블링함으로써 복수의 복구 데이터들을 생성할 수 있다. 일 실시예에서, 복수의 예측 씨드들(Sd_p1~Sd_pm)에 대응되는 복수의 복구 데이터들은 미리 결정된 데이터일 수 있다.
유효성 체커(260)는 복수의 스크램블 데이터들(Dp1~Dpm) 및 복수의 스크램블 데이터들(Dp1~Dpm)을 이용하여 생성한 복수의 복구 데이터들이 미리 결정된 데이터와 같은지 각각 판단할 수 있다. 복수의 복구 데이터들 중 미리 결정된 데이터와 같은 복구 데이터에 대응되는 예측 씨드(Sd_p)는 오류가 없는 유효한 씨드이므로 유효성 체커(260)는 예측 씨드(Sd_p)를 선형 피드백 쉬프트 레지스터(120)에 출력할 수 있다.
도 13은 본 개시의 예시적 실시예에 따른 유효성 체커의 동작을 나타내는 순서도이다.
도 12 및 도 13을 참조하면, 유효성 체커(260)는 씨드 계산기(230)로부터 예측 씨드 그룹(SdG) 및 예측 씨드 그룹(SdG) 각각에 대응되는 제1 스크램블 데이터 내지 제m 스크램블 데이터(Dp1~Dpm)를 수신할 수 있다(S410). 플래그 값(k)에 초기값으로 ‘1’이 대입되고(S420), 유효성 체커(260)는 제k 예측 씨드(Sd_pk)를 이용하여 제k 스크램블 데이터(Dpk)를 디스크램블링함으로써 복구 데이터를 생성할 수 있다(S430). 유효성 체커(260)는 복구 데이터가 제k 예측 씨드(Sd_pk)에 대응되는 미리 결정된 데이터와 동일한지 판단할 수 있다(S440).
복구 데이터가 제k 예측 씨드(Sd_pk)에 대응되는 미리 결정된 데이터와 동일한 경우, 유효성 체커(260)는 예측 씨드(Sd_p)를 선형 피드백 쉬프트 레지스터(220)에 출력할 수 있다(S450). 복구 데이터가 제k 예측 씨드(Sd_pk)에 대응되는 미리 결정된 데이터와 동일하지 않은 경우, 플래그 값(k)에 1을 더한 뒤(S460), S430 및 S440 단계를 반복할 수 있다.
도 14는 본 개시의 예시적 실시예에 따른 데이터 송수신 시스템을 나타내는 블록도이다. 도 1과 중복되는 내용은 생략한다.
도 14를 참조하면, 데이터 송수신 시스템(1f)은 제1 장치(10f) 및 제2 장치(20f)를 포함할 수 있고, 제1 장치(10f)는 스크램블러(110f), 제1 선형 피드백 쉬프트 레지스터(120f) 및 제1 씨드 계산기(130f)를 포함할 수 있다. 제1 씨드 계산기(130f)는 별도의 클럭에 기초하여 계산한 제1 예측 씨드(Sd_p1)를 제1 선형 피드백 쉬프트 레지스터(120f)에 출력할 수 있다. 제1 선형 피드백 쉬프트 레지스터(120f)는 제1 예측 씨드(Sd_p1)에 기초하여 그 다음 클럭에 대응하는 스크램블링 씨드(Sd_s)를 생성할 수 있다. 스크램블러(110f)는 제1 예측 씨드(Sd_p1) 및 제1 예측 씨드(Sd_p1)에 기초하여 생성된 스크램블링 씨드(Sd_s)를 이용하여 원본 데이터를 스크램블링함으로써 스크램블 데이터(D_Scr)를 생성할 수 있다. 스크램블러(110f)는 생성한 스크램블 데이터(D_Scr)를 제2 장치(20f)에 출력할 수 있다.
제2 장치(20f)는 디스크램블러(210f), 제2 선형 피드백 쉬프트 레지스터(220f) 및 제2 씨드 계산기(230f)를 포함할 수 있다. 제2 장치(20f)는 도 1의 제2 장치(20)와 실질적으로 동일하거나 유사할 수 있는 바 그 설명은 생략한다.
도 15은 본 개시의 예시적 실시예에 따른 컴퓨팅 시스템에서 사용되는 인터페이스를 나타내는 블록도이다.
도 15을 참조하면, 컴퓨팅 시스템(160)은 다양한 고속 시리얼 인터페이스(예를 들면, MIPI(Mobile Industry Processor Interface), eDP(electronic Data Processor) 인터페이스, DP(Digital Processor) 인터페이스, RGB 인터페이스 등)를 사용 또는 지원할 수 있는 데이터 처리 장치로 구현될 수 있고, AP(Application Processor, 1600), 이미지 센서(1620) 및 디스플레이(1630) 등을 포함할 수 있다. AP(1600)의 CSI 호스트(Camera Serial Interface Host, 1602)는 CSI를 통하여 이미지 센서(1620)의 CSI 장치(1621)와 시리얼 통신을 수행할 수 있다. 일 실시예에서, CSI 호스트(1602)는 디스크램블러(Descrambler;DES)를 포함할 수 있고, CSI 장치(1621)는 스크램블러(Scrambler;SCR)를 포함할 수 있다.
AP(1600)의 DSI 호스트(Display Serial Interface Host, 1602)는 DSI를 통하여 디스플레이 장치(1630)의 DSI 장치(1631)와 시리얼 통신을 수행할 수 있다. DSI 호스트(1601)는 GPU(Graphic Processor Unit) 또는 GPU로부터 수신된 이미지 데이터를 DSI 장치(1631)로 전송하는 드라이버와 같은 이미지 데이터 소스를 의미할 수 있다. 일 실시 예에서, DSI 호스트(1601)는 스크램블러(SCR)를 포함할 수 있고, DSI 장치(1631)는 디스크램블러(DES)를 포함할 수 있다. 디스플레이(1630)는 도 1 내지 도 15에서 상술한 장치를 포함하여 구현될 수 있다. 즉, 디스플레이(1630)는 예측 씨드를 계산하고, AP(1600)로부터 수신한 스크램블 데이터를 디스크램블링 할 때 계산한 예측 씨드를 이용할 수 있다. 디스플레이(1630)뿐 만 아니라 스크램블링/디스크램블링을 이용하는 모든 구성에 본 개시의 기술적 사상이 적용될 수 있음은 당연하다.
컴퓨팅 시스템(160)은 AP(1600)와 통신을 수행할 수 있는 RF(Radio Frequency) 칩(1640)을 더 포함할 수 있다. AP(1600)의 PHY(1603)와 RF 칩(1640)의 PHY(1641)는 MIPI(Mobile Industry Processor Interface) DigRF에 따라 데이터 송수신을 수행할 수 있다. 또한, AP(1600)는 PHY(1603)의 MIPI DigRF에 따른 데이터 송수신을 제어하는 DigRF MASTER(1604)를 더 포함할 수 있다.
컴퓨팅 시스템(160)은 GPS(Global Positioning System, 1610), 스토리지(1650), 마이크(1660), DRAM(Dynamic Random Access Memory, 1670) 및 스피커(1680)를 포함할 수 있다. 또한, 컴퓨팅 시스템(160)은 UWB(Ultra WideBand, 1693), WLAN(Wireless Local Area Network, 1692) 및 WIMAX (Worldwide Interoperability for Microwave Access, 1691) 등을 이용하여 통신을 수행할 수 있다. 다만, 컴퓨팅 시스템(160)의 구조 및 인터페이스는 하나의 예시로서 이에 한정되는 것이 아니다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 특허청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (10)

  1. 스크램블 데이터를 디스크램블링함으로써 복호 데이터를 생성하는 장치에 있어서,
    복수의 엣지들을 포함하는 클럭을 수신하고, 제1 엣지 내지 제N-1 엣지에 각각 대응하는 제1 씨드 내지 제N-1 씨드(N은 2 이상의 자연수)를 포함하는 복수의 씨드들을 순차적으로 생성하는 선형 피드백 쉬프트 레지스터(Linear Feedback Shift Register);
    상기 제1 씨드를 이용하여 제N 엣지에 대응하는 제N 씨드를 계산하는 씨드 계산기; 및
    상기 선형 피드백 쉬프트 레지스터가 생성한 상기 복수의 씨드들 및 상기 씨드 계산기가 계산한 상기 제N 씨드를 이용하여 상기 스크램블 데이터를 디스크램블링 하는 디스크램블러;를 포함하고,
    상기 선형 피드백 쉬프트 레지스터는 상기 제N 씨드를 이용하여 제N+1 씨드를 생성하는 것을 특징으로 하는 장치.
  2. 제1항에 있어서,
    상기 선형 피드백 쉬프트 레지스터에 상기 제1 엣지 내지 제N 엣지를 순차적으로 포함하는 클럭을 출력하는 클럭 생성기;를 더 포함하고
    상기 씨드 계산기는 상기 클럭 생성기와 별도로 수신한 클럭을 기초로 상기 제N 씨드를 계산하는 것을 특징으로 하는 장치.
  3. 제2항에 있어서,
    상기 선형 피드백 쉬프트 레지스터는 제k 엣지(k는 N 이하의 자연수)에 대응하는 제k 씨드를 미리 결정된 제1 함수에 대입함으로써 제k+1 엣지에 대응하는 제k+1 씨드를 생성하고,
    상기 씨드 계산기는 상기 별도로 수신한 클럭을 기초로 상기 제1 씨드에 대응하는 상기 제1 엣지부터 상기 제N 씨드에 대응하는 상기 제N 엣지까지의 엣지 갯수인 N을 카운팅하고, 상기 제1 씨드를 상기 제1 함수에 N-1번 반복 대입함으로써 상기 제N 씨드를 계산하는 것을 특징으로 하는 장치.
  4. 제2항에 있어서,
    상기 씨드 계산기로부터 수신한 상기 제N 씨드를 저장하는 메모리;를 더 포함하고,
    상기 선형 피드백 쉬프트 레지스터는 상기 메모리로부터 수신한 상기 제N 씨드를 기초로 상기 제N+1 씨드를 생성하는 것을 특징으로 하는 장치.
  5. 제4항에 있어서,
    상기 씨드 계산기는 상기 제1 씨드가 에러가 일어나지 않은 유효 씨드인지 여부를 판별하고, 상기 제1 씨드가 상기 유효 씨드인 경우 상기 제1 씨드를 상기 메모리에 저장하는 것을 특징으로 하는 장치.
  6. 제1항에 있어서,
    상기 씨드 계산기가 계산한 상기 제N 씨드 및 상기 제N 씨드에 대응되는 제N 데이터를 이용하여 제N 복호 데이터를 생성하고, 상기 제N 복호 데이터가 미리 결정된 데이터와 동일한지 판단하는 유효성 체커;를 더 포함하고,
    상기 제N 복호 데이터가 상기 미리 결정된 데이터와 동일한 경우, 상기 유효성 체커는 상기 제N 씨드를 상기 선형 피드백 쉬프트 레지스터에 출력하는 것을 특징으로 하는 장치.
  7. 원본 데이터를 스크램블링함으로써 제1 데이터 내지 제N 데이터(N은 2 이상의 자연수)를 포함하는 스크램블 데이터를 생성하고 출력하는 제1 장치; 및
    상기 스크램블된 데이터를 수신하고, 상기 스크램블된 데이터를 디스크램블링함으로써 상기 원본 데이터로 복호하는 제2 장치를 포함하고,
    상기 제2 장치는,
    복수의 엣지들을 포함하는 클럭을 수신하고, 제1 엣지 내지 제N-1 엣지에각각 대응하는 제1 씨드 내지 제N-1 씨드(N은 2 이상의 자연수)를 포함하는 복수의 씨드들을 순차적으로 생성하는 선형 피드백 쉬프트 레지스터(Linear Feedback Shift Register);
    상기 제1 씨드를 이용하여 제N 엣지에 대응하는 제N 씨드를 계산하는 씨드 계산기; 및
    상기 선형 피드백 쉬프트 레지스터가 생성한 상기 복수의 씨드들 및 상기 씨드 계산기가 계산한 상기 제N 씨드를 이용하여 상기 스크램블 데이터를 디스크램블링 하는 디스크램블러;를 포함하고,
    상기 선형 피드백 쉬프트 레지스터는 상기 제N 씨드를 이용하여 제N+1 씨드를 생성하는 것을 특징으로 하는 데이터 송수신 시스템.
  8. 제7항에 있어서,
    상기 제2 장치는 상기 선형 피드백 쉬프트 레지스터에 상기 제1 엣지 내지 제N 엣지를 순차적으로 포함하는 상기 클럭을 출력하는 클럭 생성기;를 더 포함하고
    상기 선형 피드백 쉬프트 레지스터는 제k 엣지(k는 N 이하의 자연수)에 대응하는 제k 씨드를 미리 결정된 제1 함수에 대입함으로써 제k+1 엣지에 대응하는 제k+1 씨드를 생성하고,
    상기 씨드 계산기는 상기 클럭 생성기와 별도로 수신한 클럭을 기초로 상기 제1 씨드에 대응하는 제1 엣지부터 상기 제N 씨드에 대응하는 상기 제N 엣지까지의 엣지 개수인 N을 카운팅하고, 상기 제1 씨드를 상기 제1 함수에 N-1번 반복 대입함으로써 상기 제N 씨드를 계산하는 것을 특징으로 하는 데이터 송수신 시스템.
  9. 제8항에 있어서,
    상기 씨드 계산기는 상기 제1 엣지에 대응되는 상기 제1 씨드가 에러가 일어나지 않은 유효 씨드인지 여부를 판단하고, 상기 제1 씨드가 상기 유효 씨드인 경우 상기 제1 씨드를 메모리에 저장하는 것을 특징으로 하는 데이터 송수신 시스템.
  10. 제7항에 있어서,
    상기 씨드 계산기가 계산한 상기 제N 씨드 및 상기 제N 씨드에 대응하는 상기 제N 데이터를 이용하여 제N 복호 데이터를 생성하고, 상기 제N 복호 데이터가 미리 결정된 데이터와 동일한지 판단하는 유효성 체커;를 더 포함하고,
    상기 제N 복호 데이터가 상기 미리 결정된 데이터와 동일한 경우, 상기 유효성 체커는 상기 제N 씨드를 상기 선형 피드백 쉬프트 레지스터에 출력하는 것을 특징으로 하는 데이터 송수신 시스템.
KR1020180064478A 2018-06-04 2018-06-04 선형 피드백 쉬프트 레지스터를 이용하여 데이터를 복구하는 장치 및 이를 포함하는 데이터 송수신 시스템 KR102452621B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020180064478A KR102452621B1 (ko) 2018-06-04 2018-06-04 선형 피드백 쉬프트 레지스터를 이용하여 데이터를 복구하는 장치 및 이를 포함하는 데이터 송수신 시스템
US16/427,856 US10943524B2 (en) 2018-06-04 2019-05-31 Device for restoring data by using a linear feedback shift register and data tranceiving system including the device
CN201910480298.3A CN110557242B (zh) 2018-06-04 2019-06-04 用于恢复数据的装置、数据收发系统和数据解扰方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180064478A KR102452621B1 (ko) 2018-06-04 2018-06-04 선형 피드백 쉬프트 레지스터를 이용하여 데이터를 복구하는 장치 및 이를 포함하는 데이터 송수신 시스템

Publications (2)

Publication Number Publication Date
KR20190138194A KR20190138194A (ko) 2019-12-12
KR102452621B1 true KR102452621B1 (ko) 2022-10-07

Family

ID=68693610

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180064478A KR102452621B1 (ko) 2018-06-04 2018-06-04 선형 피드백 쉬프트 레지스터를 이용하여 데이터를 복구하는 장치 및 이를 포함하는 데이터 송수신 시스템

Country Status (3)

Country Link
US (1) US10943524B2 (ko)
KR (1) KR102452621B1 (ko)
CN (1) CN110557242B (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11150985B2 (en) * 2019-10-02 2021-10-19 SK Hynix Inc. Decoder for memory system and method thereof
KR20210081866A (ko) * 2019-12-24 2021-07-02 주식회사 실리콘웍스 디스플레이 구동 장치 및 이를 포함하는 디스플레이 장치
US11777770B1 (en) 2022-04-22 2023-10-03 Microsoft Technology Licensing, Llc Dynamic shift in outputs of serial and parallel scramblers and descramblers

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5530959A (en) 1994-05-18 1996-06-25 At&T Corp. Self-synchronizing scrambler/descrambler without error multiplication
US7317735B1 (en) 2002-06-27 2008-01-08 Broadcom Corporation Scrambler initialization in a wireless local area network
US7035412B2 (en) 2002-07-03 2006-04-25 Infineon Technologies Ag WLAN error control
US8000404B2 (en) * 2006-03-28 2011-08-16 Advanced Micro Devices, Inc. Method and apparatus to reduce the effect of crosstalk in a communications interface
US8810560B2 (en) 2010-12-13 2014-08-19 Apple Inc. Methods and apparatus for scrambler synchronization
US20120237036A1 (en) 2011-03-15 2012-09-20 Texas Instruments Incorporated Communicating scrambling seed information
US9210010B2 (en) * 2013-03-15 2015-12-08 Apple, Inc. Methods and apparatus for scrambling symbols over multi-lane serial interfaces
US9432187B2 (en) 2014-04-24 2016-08-30 Avago Technologies General Ip (Singapore) Pte. Ltd. Data scrambling initialization
US9792246B2 (en) * 2014-12-27 2017-10-17 Intel Corporation Lower-power scrambling with improved signal integrity
US10121013B2 (en) 2015-05-07 2018-11-06 Samsung Electronics Co., Ltd. XOR-based scrambler/descrambler for SSD communication protocols
US9515813B1 (en) 2015-05-26 2016-12-06 International Business Machines Corporation Initializing a descrambler
US9497020B1 (en) * 2015-05-26 2016-11-15 International Business Machines Corporation Initializing a descrambler
US9872068B2 (en) * 2015-07-24 2018-01-16 Nxp Usa, Inc. Interconnecting system, video signal transmitter and video signal receiver for transmitting an N-symbol data signal
KR102436561B1 (ko) * 2017-12-26 2022-08-26 엘지디스플레이 주식회사 디스플레이 장치 및 그 구동 방법

Also Published As

Publication number Publication date
US10943524B2 (en) 2021-03-09
US20190371227A1 (en) 2019-12-05
CN110557242B (zh) 2023-11-03
KR20190138194A (ko) 2019-12-12
CN110557242A (zh) 2019-12-10

Similar Documents

Publication Publication Date Title
KR102452621B1 (ko) 선형 피드백 쉬프트 레지스터를 이용하여 데이터를 복구하는 장치 및 이를 포함하는 데이터 송수신 시스템
US8060813B2 (en) Apparatus and method for generating error detection codes
CN107430759B (zh) 用于图像信号处理器的虚拟行缓冲区
US11270614B2 (en) Data transmission method, timing controller, source driver and display device
US20090244303A1 (en) Imager, imaging circuit, and image processing circuit
KR20150090634A (ko) 디스플레이 구동 집적회로, 디스플레이 장치 및 디스플레이 구동 집적회로의 동작 방법
US9832421B2 (en) Apparatus and method for converting a frame rate
CN111669517B (zh) 一种视频叠加方法
US8462270B2 (en) Digital image transmission apparatus for transmitting video signals having varied clock frequencies
KR20150084564A (ko) 디스플레이 장치, 디스플레이 장치의 드라이버, 이를 포함하는 전자 장치 및 디스플레이 시스템
US20200402479A1 (en) Display controller to prevent visual artifacts with spread spectrum clocking
KR20160030106A (ko) 전환-최소화된 차동 신호 코딩을 이용하여 통신 인터페이스를 통한 송신을 위한 가드 밴드 데이터 인코딩
US20080224976A1 (en) Method and apparatus for temporally/spatially randomly dithering and liquid crystal display using the same
WO2022193570A1 (zh) 扰码装置及扰码方法
JP2001237826A (ja) パラレルランダムパタン生成回路及びそれを用いたスクランブル回路並びにデスクランブル回路
JPH0683298A (ja) 電波盗視防止方式
US10096297B2 (en) Display device, display panel driver, and image data signal transmission method
TWI422226B (zh) 視訊信號的手持行動顯示裝置
CN110875003A (zh) 显示系统以及显示系统运作方法
US6587584B1 (en) Apparatus for gamma correcting image data
US8299817B2 (en) Circuit and method for adding dither to vertical droop compensation using linear feedback shift registers
US10810955B2 (en) Data encoding method, data decoding method, and display device for improving communication reliability
EP4319155A1 (en) System and method for dynamic entropy coding
US20230367359A1 (en) Delay synchronization processing device and signal processing device including same
Belokurov Implementation of affine transform for image rotation using a HLS language

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