KR102582152B1 - Pam 3 신호를이용한 데이터 반전 회로 - Google Patents

Pam 3 신호를이용한 데이터 반전 회로 Download PDF

Info

Publication number
KR102582152B1
KR102582152B1 KR1020220151585A KR20220151585A KR102582152B1 KR 102582152 B1 KR102582152 B1 KR 102582152B1 KR 1020220151585 A KR1020220151585 A KR 1020220151585A KR 20220151585 A KR20220151585 A KR 20220151585A KR 102582152 B1 KR102582152 B1 KR 102582152B1
Authority
KR
South Korea
Prior art keywords
data
auxiliary signal
load
encoding
pam
Prior art date
Application number
KR1020220151585A
Other languages
English (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 한양대학교 산학협력단
Priority to KR1020220151585A priority Critical patent/KR102582152B1/ko
Application granted granted Critical
Publication of KR102582152B1 publication Critical patent/KR102582152B1/ko
Priority to PCT/KR2023/018205 priority patent/WO2024106888A1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/4917Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems using multilevel codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Dc Digital Transmission (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Abstract

PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로는, PAM 3 신호에 기초한 입력 데이터를 생성하는 데이터 생성부 및 상기 입력 데이터에 포함되어 있는 복수 개의 데이터 심볼들을 분석하여 상기 입력 데이터에 대한 인코딩 여부를 결정하는 보조 신호를 생성하는 보조 신호 생성부, 복수 개의 데이터 라인을 포함하는 채널 및 상기 보조 신호에 기초하여 상기 데이터에 대해 DBI(Data Bus Inversion) 인코딩을 수행하여 인코딩 데이터를 생성하고, 생성된 인코딩 데이터를 상기 채널을 통해 데이터 수신부로 송신하는 데이터 인코딩부를 포함하는 데이터 송신부를 포함할 수 있다.

Description

PAM 3 신호를이용한 데이터 반전 회로{Data inversion circuit using PAM 3 signal}
본 발명은 PAM 3 신호를 이용한 데이터 반전 회로에 관한 발명으로서, 보다 상세하게는, 데이터를 송신하는데 사용되는 DBI 인코딩 방식을 PAM 3 신호에도 적용되도록 설계하여, 데이터의 송신 속도를 높임과 동시에 회로의 전력 소모를 감소시키는 기술에 관한 발명이다.
집적 회로 장치들 사이의 전송되는 데이터는, 중앙처리장치(CPU; Central Processing Unit) 또는 그래픽 처리 장치(GPU; Graphic Processing Unit)의 제어에 따라 반도체 집적회로에 데이터가 저장한다. 반도체 집적회로 즉, 메인 메모리 또는 그래픽 메모리의 성능을 좌우하는 요소 중에서 데이터 처리속도가 차지하는 비중이 가장 크다.
집적 회로 장치들 사이의 데이터 전송은, 데이터 버스의 병렬 채널들에 구동되는 데이터 신호들, 일명 데이터 비트들의 형태로 이루어진다. 데이터 비트들은 데이터의 상태나 데이터 천이의 주파수에 따라 크로스 토크(cross talk), 동시 스위칭 노이즈(Simultaneous Switching Noise: SSN), 상호 심볼 간섭(Inter-Symbol Interference: ISI), 및/또는 전력 소모에 민감할 수 있다. 이러한 부작용들(adverse effects)을 줄이기 위하여, 데이터 버스 반전(Data Bus Inversion: DBI)과 같은 데이터 인코딩 방법이 이용될 수 있다.
DBI 인코딩 기술은, 8개의 데이터 중에서 하이 값 또는 로우 값을 갖는 데이터의 수가 4개 이상이면 현재 데이터를 반전시켜 전송하고, 그렇지 않으면 현재의 데이터를 반전시키지 않고 전송하는 기술이다.
즉, DBI는 데이터 버스로 전송되는 데이터 비트들 사이의 관계를 먼저 평가하고(assess), 전송에 앞서 데이터 비트들을 일부 또는 전부 반전시키는 것이 데이터를 전송하는데 효율적인지 여부를 판단한다(decide). 만약, 효율적이라 판단되어 데이터 비트들이 반전되면, 데이터 비트들이 반전되었음을 나타내는 DBI 비트라는 추가 신호가 셋팅될 수 있으며, DBI 인코딩 기술이 적용되면 전력 소모 감소, 신호 충실도(Signal Integrity: SI) 개선, 발열 감소 등의 효과를 기대할 수 있다.
한편, 기술이 발전됨에 따라 초고속 유/무선 통신 IC, CPU/GPU 등의 프로세싱 유닛의 통신부, 메모리-CPU통신부 등 기타 고속 동작을 요하는 신호 처리 분야에서는 신호의 전달 효율을 높이기 위해 한 사이클 당 1bit의 데이터를 송신하는게 아니라 한 사이클 당 1.5bit(두 사이클 당 3bit)의 신호를 전달할 수 있는 PAM 3(Three-Level Pulse Amplitude Modulation) 기술이 적용되고 있다. PAM 3 신호의 경우 종래 일반적으로 사용된 NRZ신호와 달리 한 번에 전송할 수 있는 데이터의 양이 많아, 데이터의 전송 속도 및 전송 효율을 높일 수 있는 장점이 존재한다.
그러나, 현재까지는 PAM 3 신호를 이용한 데이터 처리 기술이 발전이 미미하다 보니, PAM 3 신호를 전송함에 있어서 데이터 전송의 효율을 높일 수 있는 데이터 인코딩 기술이 미미한 실정이다.
대한민국 공개특허 10-2018-0058478A호 - 반도체 장치, 이를 포함하는 반도체 시스템 및 반도체 장치의 리드 및 라이트 동작 방법 (2018.06.01) 대한민국 공개특허 10-2018-0057028A 호 - 데이터 반전 회로 (2018.05.30)
따라서, 일 실시예에 따른 PAM 3 신호를 이용한 데이터 반전 회로는, 상기 설명한 문제점을 해결하기 위해 고안된 발명으로서, PAM 3 신호를 이용하여 데이터를 전송함에 있어서, 데이터 인코딩을 상황에 맞게 효율적으로 실시함으로써, PAM 3 신호에 기반한 데이터 전송의 효율을 높일 수 있는 기술을 제공하는데 그 목적이 있다.
보다 구체적으로 일 실시예에 따른 PAM 3 신호를 이용한 데이터 반전 회로는, 입력되는 데이터의 데이터 심볼의 종류 및 개수를 분석하여, 데이터 송신의 효율을 높일 수 있는 PAM 3 신호에 대한 최적의 인코딩 기술을 제공하는데 그 목적이 있다.
PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로는, PAM 3 신호에 기초한 입력 데이터를 생성하는 데이터 생성부 및 상기 입력 데이터에 포함되어 있는 복수 개의 데이터 심볼들을 분석하여 상기 입력 데이터에 대한 인코딩 여부를 결정하는 보조 신호를 생성하는 보조 신호 생성부, 복수 개의 데이터 라인을 포함하는 채널 및 상기 보조 신호에 기초하여 상기 데이터에 대해 DBI(Data Bus Inversion) 인코딩을 수행하여 인코딩 데이터를 생성하고, 생성된 인코딩 데이터를 상기 채널을 통해 데이터 수신부로 송신하는 데이터 인코딩부를 포함하는 데이터 송신부를 포함할 수 있다.
상기 보조 신호 생성부는, 상기 복수 개의 데이터 심볼들의 종류별 개수 및 상기 채널과 연결되어 있는 부하들의 저항 값에 기초하여 상기 입력 데이터의 인코딩 여부를 결정할 수 있다.
상기 보조 신호 생성부는, 상기 복수 개의 데이터 심볼 중, 부하부에서 전력을 가장 많이 소모하는 데이터 심볼의 개수 및 전력을 가장 적게 소모하는 데이터 심볼의 개수에 기초하여 상기 입력 데이터의 인코딩 여부를 결정할 수 있다.
상기 보조 신호 생성부는, 상기 복수 개의 데이터 심볼 중, 부하부에서 전력을 가장 많이 소모하는 데이터 심볼의 개수의 개수가 전력을 가장 적게 소모하는 데이터 심볼의 개수보다 적은 경우, 상기 부하부에서 전력을 가장 많이 소모하는 데이터 심볼과 전력을 가장 적게 소모하는 데이터 심볼이 서로 반전되도록 하는 보조 신호를 생성할 수 있다.
상기 보조 신호 생성부는, 상기 보조 신호를 NRG(Non-Return to Zero) 신호로 생성하고, 상기 입력 데이터에 대해 인코딩을 결정한 한 경우 데이터 심볼이 0인 보조 신호를 생성하고, 상기 입력 데이터에 대해 인코딩을 하지 않기로 결정한 한 경우 데이터 심볼이 1인 보조 신호를 생성할 수 있다.
일 실시예에 따른 PAM 3 신호에 기초한 입력 데이터를 생성하는 데이터 생성부, 상기 입력 데이터에 포함되어 있는 복수 개의 데이터 심볼들을 분석하여 상기 입력 데이터에 대한 인코딩 여부를 결정하는 보조 신호를 생성하는 보조 신호 생성부; 복수 개의 데이터 라인을 포함하는 채널 및 상기 보조 신호에 기초하여 상기 데이터에 대해 DBI(Data Bus Inversion) 인코딩을 수행하여 인코딩 데이터를 생성하고, 생성된 인코딩 데이터를 상기 채널을 통해 데이터 수신부로 송신하는 데이터 인코딩부를 포함하는 데이터 송신부를 포함하며, 상기 보조 신호는 PAM 3 신호로 생성될 수 있다.
상기 보조 신호 생성부는, 상기 복수 개의 데이터 심볼들의 종류별 개수 및 상기 채널과 연결되어 있는 부하들의 저항 값에 기초하여 상기 입력 데이터의 인코딩 여부를 결정할 수 있다.
상기 보조 신호 생성부는, 상기 복수 개의 데이터 심볼 중, 부하부에서 전력을 가장 많이 소모하는 데이터 심볼의 개수가 가장 많지 않은 경우, 상기 복수 개의 데이터 심볼 중 가장 많은 개수를 가지고 있는 데이터 심볼과 상기 부하부에서 전력을 가장 많이 소모하는 데이터 심볼을 서로 반전시키는 보조 신호를 생성 할 수 있다.
상기 복수 개의 데이터 심볼 중, 상기 부하부에서 전력을 가장 적게 소모되도록, 상기 복수 개의 데이터 심볼 중 상기 부하부에서 전력을 가장 적게 소모하지 않는 데이터 심볼과 상기 부하부에서 전력을 가장 적게 소모하는 데이터 심볼을 서로 반전시키는 보조 신호를 생성 할 수 있다.
상기 보조 신호 생성부는, 상기 복수 개의 데이터 심볼 중, 가장 개수가 많은 데이터 심볼에 대해서는 상기 부하부에서 전력을 가장 적게 소모하는 데이터 심볼로 반전시키고, 그 다음 개수가 많은 데이터 심볼에 대해서는 상기 부하부에서 그 다음으로 전력을 적게 소모하는 데이터 심볼로 반전시키며, 가장 개수가 적은 데이터 심볼에 대해서는 상기 부하부에서 전력을 가장 많이 소모하는 데이터 심볼로 반전시키는 보조 신호를 생성할 수 있다.
상기 보조 신호 생성부는, 2개의 PAM 3 신호를 하나의 세트로 하여 상기 보조 신호를 생성할 수 있다.
일 실시예에 따른 PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로는, 복수 개의 데이터 라인을 포함하는 채널, 상기 채널과 연결되어 있는 복수 개의 부하를 포함하고, PAM 3 신호에 기초한 입력 데이터를 생성하는 데이터 생성부, 상기 입력 데이터에 포함되어 있는 복수 개의 데이터 심볼들을 분석하여 상기 입력 데이터에 대한 인코딩 여부를 결정하는 보조 신호를 생성하는 보조 신호 생성부 및 상기 보조 신호에 기초하여 상기 데이터에 대해 DBI(Data Bus Inversion) 인코딩을 수행하여 인코딩 데이터를 생성하고, 생성된 인코딩 데이터를 상기 채널을 통해 데이터 수신부로 송신하는 데이터 인코딩부;를 포함하는 데이터 송신부, 상기 보조 신호에 기초하여, 상기 데이터 송신부의 전체 부하 값이 변경되도록 상기 복수 개의 부하들의 연결 구조를 변경하는 제어부를 포함할 수 있다.
상기 데이터 수신부는, 상기 채널과 연결되어 있는 복수 개의 부하를 포함할 수 있다.
상기 데이터 수신부는, 제1부하, 제2부하, 제3부하 및 제4부하를 포함하며, 상기 제1부하와 상기 제2부하는 직렬 연결되어 있고, 상기 제3부하와 제4부하는 직렬 연결되어 있으며, 상기 제1부하 및 상기 제2부하는 상기 제3부하 및 상기 제4부하와 병렬 연결되어 있을 수 있다.
본 발명의 일 실시예에 따른 PAM 3 신호를 이용한 데이터 반전 회로는 PAM 3 신호를 이용한 데이터 전송 방법에 있어서, 입력된 데이터의 특성에 기초한 인코딩을 실행한 후 데이터를 전송함으로써, 보다 효율적으로 데이터를 전송할 수 있는 장점이 존재한다.
구체적으로, 일 실시예에 따른 PAM 3 신호를 이용한 데이터 반전 회로는 PAM 3 신호에 맞춘 DBI-DC 인코딩을 효과적으로 수행함으로써, 드라이버단에서의 전력 소모를 줄여, 회로 전체의 전력 소비 효율을 증가시킬 수 있는 장점이 존재한다.
본 발명의 효과들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재들로부터 당업자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 데이터 반전 회로의 일부 구성 요소들 도시한 블록도이다.
도 2는 본 발명의 일 실시예에 따른 데이터 반전 회로의 일부 구성 요소를 도시한 회로도이다.
도 3은 본 발명의 일 실시예에 따른 DBI-DC 인코딩 방법을 설명하기 위한 표이다.
도 4는 본 발명의 일 실시예에 따라 종단 방식이 POD 형태일 경우, 데이터 심볼이 0 과 1인 경우의 부하 소자들의 연결 형태를 도시한 도면이다.
도 5는 본 발명의 일 실시예에 따라 종단 방식이 POD 형태일 경우, 데이터 심볼이 2인 경우 부하 소자들의 연결 형태를 도시한 도면이다.
도 6은 본 발명의 일 실시예에 따라 종단 방식이 LVSTL 형태일 경우, 데이터 심볼이 0 과 1인 경우의 부하 소자들의 연결 형태를 도시한 도면이다.
도 7은 본 발명의 일 실시예에 따라 종단 방식이 LVSTL 형태일 경우, 데이터 심볼이 2인 경우 부하 소자들의 연결 형태를 도시한 도면이다.
도 8은 본 발명에 따른 인코딩 방법이 적용되는 경우, 실시예 별로 전력이 감소된 실험 결과를 도시한 도면이다.
본 명세서에 기재된 실시예와 도면에 도시된 구성은 개시된 발명의 바람직한 일 예에 불과할 뿐이며, 본 출원의 출원시점에 있어서 본 명세서의 실시예와 도면을 대체할 수 있는 다양한 변형 예들이 있을 수 있다.
본 명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 직접적으로 연결되어 있는 경우뿐 아니라, 간접적으로 연결되어 있는 경우를 포함하고, 간접적인 연결은 무선 통신망을 통해 연결되는 것을 포함한다.
또한, 본 명세서에서 사용한 용어는 실시예를 설명하기 위해 사용된 것으로, 개시된 발명을 제한 및/또는 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는다.
또한, 본 명세서에서 사용한 "제1", "제2" 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되지는 않으며, 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
또한, "~부", "~기", "~블록", "~부재", "~모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미할 수 있다. 예를 들어, 상기 용어들은 FPGA(field-programmable gate array) / ASIC(application specific integrated circuit) 등 적어도 하나의 하드웨어, 메모리에 저장된 적어도 하나의 소프트웨어 또는 프로세서에 의하여 처리되는 적어도 하나의 프로세스를 의미할 수 있다.
각 단계들에 붙여지는 부호는 각 단계들을 식별하기 위해 사용되는 것으로 이들 부호는 각 단계들 상호 간의 순서를 나타내는 것이 아니며, 각 단계들은 문맥상 명백하게 특정 순서를 기재하지 않는 이상 명기된 순서와 다르게 실시될 수 있다.
이하에서는 본 발명에 따른 실시예를 첨부된 도면을 참조하여 상세히 설명하며, 본 발명의 명칭은 'PAM 3 신호를 이용한 데이터 반전 회로'로 하였지만 이하 설명의 편의를 위해 '데이터 반전 회로'로 지칭하여 설명하도록 한다.
도 1은 본 발명의 일 실시예에 따른 데이터 반전 회로의 일부 구성 요소들 도시한 블록도이며, 도 2는 본 발명의 일 실시예에 따른 데이터 반전 회로의 일부 구성 요소를 도시한 회로도이다. 도 3은 본 발명의 일 실시예에 따른 DBI-DC 인코딩 방법을 설명하기 위한 표이고, 도 4는 본 발명의 일 실시예에 따라 종단 방식이 POD 형태일 경우, 데이터 심볼이 0 과 1인 경우의 부하 소자들의 연결 형태를 도시한 도면이다. 도 5는 본 발명의 일 실시예에 따라 종단 방식이 POD 형태일 경우, 데이터 심볼이 2인 경우 부하 소자들의 연결 형태를 도시한 도면이며, 도 6은 본 발명의 일 실시예에 따라 종단 방식이 LVSTL 형태일 경우, 데이터 심볼이 0 과 1인 경우의 부하 소자들의 연결 형태를 도시한 도면이고, 도 7은 본 발명의 일 실시예에 따라 종단 방식이 LVSTL 형태일 경우, 데이터 심볼이 2인 경우 부하 소자들의 연결 형태를 도시한 도면이다.
도 1을 참조하면, 일 실시예에 따른 데이터 반전 회로는 입력 데이터를 생성하는 데이터 생성부(110), 생성된 입력 데이터를 채널을 통해 송신하는 데이터 송신부(160), 데이터의 이동 경로로서 복수 개의 데이터 라인을 포함하는 채널(170), 채널(170)을 통해 데이터를 수신하는 데이터 수신부(180)를 포함할 수 있으며, 데이터 송신부(160)는 데이터 인코딩부(120), 보조 신호 생성부(130) 및 부하부(140)를 포함할 수 있다.
데이터 생성부(110)는 입력 데이터를 생성하는 구성요소로서, 생성된 입력 데이터는 데이터 송신부(160)로 송신되며, 생성된 데이터는 PAM 3 신호에 의해 송신될 수 있는 데이터를 의미한다.
데이터 송신부(160)는 데이터 생성부(110)에 의해 생성된 데이터를 PAM 3(Three-Level Pulse Amplitude Modulation) 신호를 사용하여 채널(170)을 통해 데이터 수신부(180)로 송신한다.
본 발명의 전반에 걸쳐 적용되는 PAM 3신호는 NRZ 신호 및 PAM 4 신호와 다르게 0,1,2 신호를 송신하는 신호로서, 총 3가지 레벨(0, 1, 2)을 가질 수 있다. 다만, 1 사이클 당 1bit 신호를 송신하는 NRZ 및 2bit를 송신하는 PAM 4 신호와 다르게 PAM 3 신호의 경우 2사이클에 거쳐 3 bit를 송신하게 된다. 따라서, PAM 3 신호는 1 사이클 당 1.5 bit의 신호를 보내는 것으로 이해할 수 있다.
한편, 도 1에서는 채널(170)을 단일한 구성 요소로 표현하였지만, 이는 설명의 편의를 위한 것이고 실제 채널(170)은 복수 개의 데이터 라인을 포함하고 있으며, 데이터 인코딩부(120)에 의해 인코딩된 데이터는 상기 복수 개의 데이터 라인을 통해 데이터 수신부(180)로 송신될 수 있다. 일 예로 채널(170)은 4개의 데이터 라인 또는 8개의 데이터 라인을 포함할 수 있다.
또한, 도면에서는 인코딩부(120)와 수신부(180)를 연결하는 채널을 한 개로 도시하였으나, 실시예에 따라 데이터를 송신하는 채널과 보조 신호를 송신하는 채널이 별도로 구성될 수 도 있다.
데이터 인코딩부(120)는 데이터 생성부(110)가 생성한 입력 데이터에 대해 보조 신호 생성부(130)가 생성한 보조 신호를 기초로 입력 데이터를 인코딩할 수 있다.
본 발명에서 인코딩이 의미하는 바는, 일반적으로 데이터 버스 반전 회로에 의해 이루어지는 인코딩을 말한다. 예를 들어 송신하는 데이터 중 과반수 이상의 데이터가 하이(High) 값을 가지는 경우, 현재 데이터를 반전시켜 전송하고, 그렇지 않은 경우에는 현재의 데이터를 반전하지 않고 그대로 송신하는 것을 의미한다.
데이터 인코딩부(120)가 수행하는 데이터 인코딩 방법은, 대표적으로 DBI(Data Bus Inversion) 인코딩 방식이 적용될 수 있다.
구체적으로 DBI 인코딩 방법에는, 송신하는 데이터의 0과 1을 반전하여, 데이터가 채널을 통과하기 이전 단에서 전력의 소모가 최소화 되도록 하는 DBI-DC 인코딩 방법이 적용될 수 있다. 따라서, 데이터 인코딩부(120)는 수행하는 인코딩 방식에 따라 DBI-DC 인코딩부로 호칭될 수 있다.
보조 신호 생성부(130)는 데이터 생성부(110)에 의해서 생성된 데이터의 패턴을 분석하여, 데이터 인코딩부(120)가 수행해야 하는 인코딩 정보를 포함하고 있는 보조 정보를 생성하고, 생성된 보조 정보를 데이터 인코딩부(120)로 송신할 수 있다.
일 예로, 보조 신호 생성부(130)가 생성하는 보조 신호는, 데이터 인코딩부(120)가 입력된 데이터에 대해 DBI 인코딩을 수행하는 경우, 데이터 인코딩부(120)가 DBI 인코딩 방식 중 어떠한 방식의 DBI 인코딩을 수행해야 할지 경정하는 정보를 포함할 할 수 있다. 보조 신호는 그 성격에 따라 DBI 플래그(Flag) 정보로 지칭될 수 있다.
보조 신호 생성부(130)가 생성되는 보조 신호는 NRZ 신호로 생성되거나, PAM 3 신호로 생성될 수 있다.
보조 신호가 NRZ 신호로 생성되는 경우 신호의 값은 0 또는 1이나, 보조 신호가 PAM 3 신호로 생성되는 경우 신호의 값은 0, 1, 2 총 3종류의 3레벨을 가지는 신호로 생성될 수 있다. 한편, 이하 명세서에서 설명이 되는 PAM 3 신호의 경우 PAM 3 신호를 구성하는 신호를 0, 1, 2를 기준으로 설명하나, 이는 예시에 불과할 뿐 다양한 형식의 신호로 표현될 수 있다. 일 예로 PAM 3 신호에서의 레벨은 -1, 0, 1 신호로 설명될 수 도 있다.
또한, 도 1에서는 설명의 편의를 위해 데이터 인코딩부(120)와 보조 신호 생성부(130)를 별도의 구성 요소로 도시하여 설명하였지만, 이는 설명의 편의를 위한 것이고, 다른 실시예에 따라 데이터 인코딩부(120)가 보조 신호 생성부(130)가 하는 역할을 동시에 수행할 수 있도록 구현될 수 있다.
부하부(140)는 복수 개의 부하를 포함하고 있으며, 채널(170)을 통해 송신되는 데이터의 성격에 따라 부하부(140)에 있는 부하들의 연결 형태가 달라질 수 있다.
일 예로, 채널과 연결되어 있는 부하가 2개이고, NRZ 방식으로 데이터가 송신되는 경우, 데이터 심볼은 '0'과 '1'이므로 POD (Pseudo Open Drain) termination에 따라 입력 데이터의 데이터 심볼이 0인 경우, 그라운드와 연결되어 있는 부하가 채널과 연결되어 전압(VDD)으로부터 그라운드(GND)까지 채널을 통해 전류가 흐르게 된다.
이와 반대로 데이터 심볼이 1인 경우 그라운드가 아닌 인가 전압과 연결되어 있는 부하가 채널과 연결되므로 전류가 흐르지 않아 전력이 소모되지 않는 특징을 가지고 있다.
따라서, 데이터 반전 회로는 데이터 심볼이 1인 경우 부하부에서 전력이 소모되고, 데이터 심볼이 0인 경우 부하부에서 전력이 소모되지 않는 특성을 가지게 되므로, DBI-인코딩은 이러한 특징을 이용하여 인코딩을 수행할 수 있다. 즉, 도 3에 도시된 바와 같이 입력되는 데이터의 데이터 심볼을 분석하여 일정 개수 기준으로 1의 개수가 0의 개수보다 적은 경우, 데이터를 반전시켜 1의 개수가 0의 개수보다 많게 만들어 전체 회로에서 소비되는 전력을 작게 만들 수 있다.
한편, 데이터 인코딩부(120)가 입력 데이터에 대해 PAM 3 신호에 기초한 인코딩을 하는 경우, PAM 3 신호는 앞서 살펴본 바와 같이 데이터 심볼이 총 '0', '1', '2' 총 3종류의 신호로 생성되므로, 각각의 신호에 따라 채널과 연결되는 부하들의 연결 형태가 NRZ 신호 때와 다르게 형성될 수 있다.
일 예로, 도 4에 도시된 바와 같이 부하부(140)에는 4개의 부하(M1, M2, M3. M4)를 포함할 수 있는데, 4개의 부하들은 제어부(150)의 스위치(S1, S2)들에 대한 온/오프 방법에 따라, 채널(170)과 연결되는 부하들의 연결 형태가 변경될 수 있다. 도 4에서는 일 예로 스위치를 2개 도시하였을 뿐, 본 발명의 스위치의 개수가 2개로 한정되는 것은 아니다.
도 4를 참고하여 데이터 심볼의 종류에 따라 부하부(140)의 부하들이 채널(170)과 연결되는 연결 형태를 살펴보면, 데이터 심볼이 '0'인 경우 도 4의 (a)에 도시된 바와 같이 제어부(150)의 제어에 의해 제1부하(M1)와 제3부하(M3)만 채널(170)에 연결되는 구조를 가지게 된다. 그리고 이러한 경우 전체 부하 값은 (M1//M3)+M0가 되므로 전체 소비 전력은 (Vdd^2)/((M1//M3)+M0) 이 된다.
만약, 도 4의 (a)에서 M0이 50옴(ohm)이고, M1이 100옴, M3가 100옴인 경우 전체 저항은 100옴이 된다. 이하 설명의 편의를 위해 데이터 심볼이 0인 경우 소비되는 전력을 제1소비전력이라 지칭한다.
데이터 심볼이 '1'인 경우 도 4의 (b)에 도시된 바와 같이 제어부(150)의 제어에 의해 제3부하(M3)와 제4부하(M4)만 채널(170)에 연결되는 구조를 가지게 된다. 그리고 이러한 경우 전체 부하 값은 (M0//M4)+M3가 되므로 전체 소비 전력은 (Vdd^2)/((M0//M2)+M3) 가 된다.
만약, 도 4의 (b)에서 M0이 50옴이고, M3가 100옴, M4가 100옴인 경우 전체 저항은 400/3 옴이 된다. 이하 설명의 편의를 위해 데이터 심볼이 01인 경우 소비되는 전력을 제2소비전력이라 지칭한다.
데이터 심볼이 '2'인 경우 도 5의 (a)에 도시된 바와 같이 제어부(150)의 제어에 의해 제2부하(M2)와 제4부하(M4)만 채널(170)에 연결되는 구조를 가지게 된다. 그리고 이러한 경우 전체 부하 값은 (M0//M2//M4)가 되는데, 이러한 경우 어느 부하도 그라운드와 연결되는 구조를 취하고 있지 않기 때문에 전압의 차이가 없어 전류가 흐르지 않게 된다. 따라서, 이러한 경우 전체 소비 전력은 0이 된다. 이하 설명의 편의를 위해 데이터 심볼이 11인 경우 소비되는 전력을 제3소비전력이라 지칭한다.
즉, 살펴본 바와 같이 데이터 심볼에 따른 전력 소모는 데이터 심볼이 0인 경우 가장 크고, 데이터 심볼이1, 2 순서로 갈수록 전력이 작게 소모되는 특징을 가지고 있다. 따라서, 본 발명에 따른 데이터 반전 회로는 입력된 데이터를 분석하여 데이터 심볼의 개수 및 종류를 분석하여, 데이터를 반전시키는 것이 전력을 적게 소모한다고 판단된 경우, 데이터를 반전하는 인코딩을 수행함으로써, 회로 전체의 전력 효율을 높일 수 있다.
한편, 도 4와 도 5에서 데이터 인코딩 방법에서 POD 방식이 적용되는 경우에, 인코딩 방법에 따라 부하들이 변경되는 모습에 대해 도시하였지만, 본 발명의 데이터 인코딩 방법은 POD 방식이 아닌 다른 방식에도 적용될 수 있다. 일 예로 , 도 6과 도 7에 도시된 바와 같이 데이터 인코딩 방법이 LVSTL(Low Voltage Swing Terminated Logic)이 적용되는 경우에도 동일하게 적용될 수 있다. 이하 POD 방식으로 구현되는 데이터 반전 회로를 기준으로 본 발명의 여러 인코딩 방법에 대해 자세히 알아보도록 한다.
본 발명에 따른 제1인코딩 방법은, 입력되는 데이터는 PAM 3 신호에 기초한 데이터이나, 인코딩을 하는데 기준이 되는 보조 신호는 NRZ 신호인 경우, 보조 신호 생성부(130)에서 생성된 보조 신호를 기초로 데이터 인코딩부(120)에서 입력 데이터에 대해 인코딩을 하는 방법을 의미한다.
앞서 살펴본 바와 같이, 데이터 심볼이 2인 경우 전력이 소모되지 않고, 0인 경우 전력이 가장 많이 소모되므로, 제1인코딩 방법은 전송되는 데이터의 데이터 심볼들의 종류 및 개수를 파악하여 1의 개수를 고려하지 않고 오직 0의 개수와 2의 개수를 비교하여, 0의 개수보다 2의 개수가 많도록 인코딩을 하는 방법을 의미한다.
따라서, 제1인코딩 방법의 보조 신호는, 데이터를 반전시키는 신호와 데이터를 변화시키지 않는 신호 2가지 신호만 필요하게 되므로 보조 신호는 NRZ 신호로 구현될 수 있다. 일 예로 보조 신호 '0'은 데이터를 반전하지 않는 경우 보조 신호를 의미하고, 보조 신호 '1'은 데이터를 반전해야 하는 보조 신호를 의미할 수 있다.
일 예로, 제1인코딩 방법은, 입력 데이터가 0의 개수 4개, 1의 개수 3개, 2의 개수가 1개를 가지고 있는 경우, 0의 개수가 2의 개수보다 작으므로, 0과 2의 개수를 교환 시켜, 0의 개수는 1개, 1의 개수는 3개, 2의 개수는 4개로 인코딩 할 수 있다. 이 경우 결론적으로 전력을 많이 소모하는 0의 개수는 적어지고, 전력을 소모하지 않은 2의 개수는 많아졌기 때문에, 제1인코딩을 적용하여 데이터를 송신하는 경우 전력을 감소시킬 수 있는 장점이 존재한다.
만약 이와 반대로 입력 데이터가 0의 개수 1개, 1의 개수 3개, 2의 개수 4개를 가지고 있는 경우, 2의 개수가 이미 0의 개수보다 많기 때문에 인코딩을 하지 않고 그대로 데이터를 전송한다.
제1인코딩 방법의 경우 0과 2만을 반전시키기 때문에, 보조 신호인 DBI FLAG 정보는 2개의 레벨만이 필요하다. 따라서, 보조 신호는 NRZ 신호로 구현될 수 있다.
본 발명에 따른 제2인코딩 방법은, 입력되는 데이터는 PAM 3 신호에 기초한 데이터이고, 인코딩을 하는데 기준이 되는 보조 신호 또한 PAM 3 신호인 경우에 수행되는 인코딩 방법으로서, 입력 데이터에 포함되어 있는 데이터 심볼 중에서 2의 개수가 가장 많도록 데이터를 변화하는 인코딩 방법을 의미한다.
제2인코딩 방법은 입력 데이터에서 2의 개수가 가장 많도록 입력 데이터를 변화시키는데 목적이 있다. 따라서, 일 예로 보조 신호 '0'은 0을 2로 반전시키고 2를 0으로 반전시키는 보조 신호를 의미하며, 보조 신호 '1'은 1을 2로 반전시키고 2를 1로 반전시키는 보조 신호를 의미하고, 보조 신호 '2'는 어떤 신호도 반전을 하지 않는 보조 신호를 의미한다.
제2인코딩 방법에서 보조 신호를 생성하는 기준에 대해 설명하면, 입력 데이터에서 0의 개수, 1의 개수, 2의 개수를 계산한 다음, 0의 개수가 가장 많은 경우 2를 0으로 반전하고, 0을 2로 반전하는 보조 신호 '0'을 생성하고, 1의 개수가 가장 많은 경우 2를 1로 반전하고, 1을 2로 반전하는 보조 신호 '1'을 생성하며, 2의 개수가 가장 많으면 데이터를 반전하지 않는 보조 신호 '2'를 생성하는 방법으로 인코딩을 진행한다.
일 예로, 입력 데이터가 0의 개수 4개, 1의 개수 3개, 2의 개수 1개를 가지고 있는 경우, 0의 개수가 가장 많으므로, 0을 2로 반전하고, 2를 0으로 반전하는 보조 신호 '0'을 생성한다.
또한, 입력 데이터가 0의 개수 2개, 1의 개수 4개, 2의 개수가 2개를 가지고 있는 경우, 1의 개수가 가장 많으므로, 1을 2로 반전하고, 2를 1로 반전하는 보조 신호 '1'을 생성한다.
또한, 입력 데이터가 0의 개수 2개, 1의 개수 2개, 2의 개수가 4개를 가지고 있는 경우, 2의 개수가 가장 많으므로, 인코딩을 하지 않고 그대로 데이터를 전송하는 보조 신호 '2'를 생성한다.
즉, 제2인코딩 방법에 의해 인코딩이 수행되면, 결론적으로 전력을 소모하지 않는 데이터 심볼 '2'의 개수가 인코딩 되기 전의 데이터보다 많아지므로 제2인코딩을 적용하여 데이터를 송신하는 경우 전력을 감소시킬 수 있는 장점이 존재한다.
제2인코딩 방법에 따른 보조 신호는, 데이터를 반전시키지 않는 보조 신호 '2', 1과 2를 서로 반전시키는 보조 신호 '1', 0과 2를 서로 반전시키는 보조 신호 '0', 이렇게 총 3가지 보조 신호가 필요하므로, 보조 신호인 DBI FLAG 정보는 3개의 레벨이 필요하다. 따라서, 보조 신호는 PAM 3 신호로 구현될 수 있다.
본 발명에 따른 제3인코딩 방법은, 입력되는 데이터를 분석하여, 전력 소모를 얼마나 발생하는지를 각각 계산을 한 후, 데이터를 반전하기 이전의 회로 전체의 전력 소모량과 데이터를 반전한 후의 회로 전체의 전력 소모량을 비교하여 이를 기초로 인코딩을 수행하는 방법을 의미한다.
만약, 데이터를 반전한 경우의 전력 소모량이 반전하기 전의 전력 소모량보다 작은 경우 데이터를 반전하고, 데이터를 반전한 경우의 전력 소모량이 반전한 후의 전력 소모량보다 큰 경우에는 데이터를 반전하지 않고 입력된 데이터를 그대로 송신할 수 있다.
따라서, 제3인코딩 방법에서 보조 신호 '0'은 0을 2로 반전시키고 2를 0으로 반전시키는 보조 신호를 의미하며, 보조 신호 '1'은 1을 2로 반전시키고 2를 1로 반전시키는 보조 신호를 의미하고, 보조 신호 '2'는 어떤 신호도 반전을 하지 않는 보조 신호를 의미한다.
이를 식을 이용하여 표현하면, 입력된 데이터에 대해 데이터 심볼을 분석하여, '0'의 개수를 x로, '1'의 개수를 y로, '2'의 개수를 z로 정의하고, 데이터를 반전하지 않는 경우 회로 소비 전력 W1은 아래 식 (1)과 같이 정의 될 수 있다.
수학식 (1) - W1 = 제1소비전력*x + 제2소비전력*y + 제3소비전력*z +
그리고, 일 예로 M0이 50옴이고, 제1부하(M1) 내지 제4부하(M4)가 모두 100옴이며, 보조 신호가 아무 반전을 하지는 않는 2로 생성되는 경우(이하 나오는 아래 식들의 부하 값도 동일한 부하 값인 것을 가정하여 설명한다), 보조 신호 2가 적용된 회로 소비 전력 W2는 아래 수학식 (2)와 같이 표현될 수 있다.
수학식 (2) - W2 = x·(1/100) + y·(0.75/100) + z·(0)
이와 반대로, 입력된 데이터에 대해 1을 2로 반전하고 2를 1로 반전하는 보조 신호 '1'에 따라 인코딩이 되는 경우, 회로 소비 전력 W3는 아래 수학식 (3)와 같이 표현될 수 있다.
수학식 (3) - W3 = x·(1/100) + z·(0.75/100) + y·(0)
이와 반대로, 입력된 데이터에 대해 0을 2로 반전하고 2를 0으로 반전하는 보조 신호 '2'에 따라 인코딩이 되는 경우, 회로 소비 전력 W4는 아래 수학식 (3)와 같이 표현될 수 있다.
수학식 (4) - W4 = z·(1/100)+y·(0.75/100)+x·(0)
즉, 제3인코딩 방법은 W2 내지 W4를 비교하여 가장 작은 전력이 소모될 수 있도록 하는 보조 신호를 생성하여 인코딩을 수행할 수 있다.
일 예로, 제3인코딩 방법은 비교 결과 W2값이 가장 작은 경우, 어떤 데이터도 반전하지 않도록 보조 신호 0을 생성할 수 있다. 만약 비교 결과 W3의 값이 가장 작은 경우 1이 2로 반전되고, 2가 1로 반전되도록 하는 보조 신호 '1'을 생성하고, W4 값이 가장 작은 경우 0이 2로 반전되고, 2가 0으로 반전되도록 하는 보조 신호 '0'을 생성하는 방법으로 인코딩을 진행한다.
본 발명에 따른 제3인코딩 방법은, 모든 경우의 수를 가정하여 가장 적은 전력을 소모하는 방법으로 인코딩을 수행하므로, 데이터를 송신함에 있어서 최소의 전력 소모가 발생하는 방법으로 데이터를 전송시킬 수 있다는 장점이 존재한다.
제3인코딩 방법에 따른 보조 신호는 데이터를 반전시키지 않는 보조 신호 '2', 1과 2를 서로 반전시키는 보조 신호 '1', 0과 2를 서로 반전시키는 보조 신호 '0', 이렇게 총 3가지 신호가 필요하므로, 보조 신호인 DBI FLAG 정보는 3개의 레벨이 필요하다. 따라서, 보조 신호는 PAM 3 신호로 구현될 수 있다.
본 발명에 따른 제4인코딩 방법은, 입력되는 데이터를 분석하여, 데이터 심볼의 개수가 많은 순서대로 전력을 적게 소모하는 데이터 심볼에 재정렬하는 인코딩 방식을 의미한다.
구체적으로, 데이터 심볼의 종류 및 개수를 판단한 후, 가장 많은 데이터 심볼을 가지고 있는 데이터 심볼에 대해서는 전력 소모가 가장 적은 데이터 심볼을 매칭시키고, 2번째 많은 데이터 심볼을 가지고 있는 데이터 심볼에 대해서는 전력 소모가 그 다음으로 적은 데이터 심볼을 매칭시키고, 가장 적은 데이터 심볼을 가지고 있는 데이터 심볼에 대해서는 전력 소모가 가장 많은 데이터 심볼을 매칭시키는 방법이다.
일 예로, 제4인코딩 방법은 입력 데이터가 0의 개수 4개, 1의 개수 1개, 2의 개수 3개를 가지고 있는 경우, 0이 가장 많으므로 0을 전력을 소모하지 않는 2로 반전시키고, 그 다음으로는 2가 많으므로 2를 0 다음으로 데이터를 많이 소모하는 1로 반전시키고, 최종적으로 1을 0으로 반전시킬 수 있다.
따라서, 제4인코딩 방법의 경우 보조 신호는 0을 1로 반전시키는 보조 신호, 0을 2로 반전시키는 보조 신호, 1을 0으로 반전시키는 보조 신호, 1을 2로 반전시키는 보조 신호, 2를 0으로 반전시키는 보조 신호 및 2를 1로 반전시키는 보조 신호까지 해서 총 6가지 신호가 필요하다. 따라서, 제4인코딩 방법에 따른 보조 신호는 6개의 레벨이 필요하므로 2개의 PAM 3 신호를 이용하여 구성될 수 있다.
도 8은 본 발명에 따른 인코딩 방법이 적용되는 경우, 실시예 별로 전력이 감소된 실험 결과를 도시한 도면이다.
도 8을 참조하면, 본 발명에 따른 4가지 인코딩 방법 모두 인코딩을 적용하지 않았을 경우와 비교하여 전력 소모의 감소 효과가 발생한 것을 알 수 있으며, 제4인코딩 방법, 제3인코딩 방법, 제2인코딩 방법 및 제1인코딩 방법 순으로 전력 소모의 감소 효과가 큰 것을 알 수 있다.
지금까지 도면을 통해 일 실시예에 따른 PAM 3 신호를 이용한 데이터 반전 회로의 구성 및 효과에 대해 구체적으로 알아보았다.
본 발명의 일 실시예에 따른 PAM 3 신호를 이용한 데이터 반전 회로는 PAM 3 신호를 이용한 데이터 전송 방법에 있어서, 입력된 데이터에 대해 상황에 맞춘 인코딩을 실행한 후 데이터를 전송함으로써, 보다 효율적으로 데이터를 전송할 수 있는 장점이 존재한다.
구체적으로, 일 실시예에 따른 PAM 3 신호를 이용한 데이터 반전 회로는 PAM 3 신호에 맞춘 DBI-DC 인코딩을 효과적으로 수행함으로써, 드라이버단에서의 전력 소모를 줄여, 회로 전체의 전력 소비 효율을 증가시킬 수 있는 장점이 존재한다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치에 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
100: 데이터 반전 회로
110: 데이터 생성부
120: 인코딩부
121: 제1인코딩부
122: 제2인코딩부
130: 보조 신호 생성부
131: 제1보조 신호 생성부
132: 제2보조 신호 생성부
140: 부하부
150: 제어부
160: 데이터 송신부
170: 채널
180: 데이터 수신부

Claims (15)

  1. PAM 3 신호에 기초한 입력 데이터를 생성하는 데이터 생성부; 및
    상기 입력 데이터에 포함되어 있는 복수 개의 데이터 심볼들을 분석하여 상기 입력 데이터에 대한 인코딩 여부를 결정하는 보조 신호를 생성하는 보조 신호 생성부;
    복수 개의 데이터 라인을 포함하는 채널; 및
    상기 보조 신호에 기초하여 상기 데이터에 대해 DBI(Data Bus Inversion) 인코딩을 수행하여 인코딩 데이터를 생성하고, 생성된 인코딩 데이터를 상기 채널을 통해 데이터 수신부로 송신하는 데이터 인코딩부;를 포함하는 데이터 송신부;를 포함하며,
    상기 보조 신호 생성부는,
    상기 복수 개의 데이터 심볼들의 종류별 개수 및 상기 채널과 연결되어 있는 부하들의 저항 값에 기초하여 상기 입력 데이터의 인코딩 여부를 결정하고,
    상기 복수 개의 데이터 심볼 중, 부하부에서 전력을 가장 많이 소모하는 데이터 심볼의 개수 및 전력을 가장 적게 소모하는 데이터 심볼의 개수에 기초하여 상기 입력 데이터의 인코딩 여부를 결정하는,
    PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 보조 신호 생성부는,
    상기 복수 개의 데이터 심볼 중, 부하부에서 전력을 가장 많이 소모하는 데이터 심볼의 개수의 개수가 전력을 가장 적게 소모하는 데이터 심볼의 개수보다 적은 경우, 상기 부하부에서 전력을 가장 많이 소모하는 데이터 심볼과 전력을 가장 적게 소모하는 데이터 심볼이 서로 반전되도록 하는 보조 신호를 생성하는,
    PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로.
  5. 제4항에 있어서,
    상기 보조 신호 생성부는,
    상기 보조 신호를 NRG(Non-Return to Zero) 신호로 생성하고,
    상기 입력 데이터에 대해 인코딩을 결정한 한 경우 데이터 심볼이 0인 보조 신호를 생성하고, 상기 입력 데이터에 대해 인코딩을 하지 않기로 결정한 한 경우 데이터 심볼이 1인 보조 신호를 생성하는,
    PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로.
  6. PAM 3 신호에 기초한 입력 데이터를 생성하는 데이터 생성부;
    상기 입력 데이터에 포함되어 있는 복수 개의 데이터 심볼들을 분석하여 상기 입력 데이터에 대한 인코딩 여부를 결정하는 보조 신호를 생성하는 보조 신호 생성부;
    복수 개의 데이터 라인을 포함하는 채널; 및
    상기 보조 신호에 기초하여 상기 데이터에 대해 DBI(Data Bus Inversion) 인코딩을 수행하여 인코딩 데이터를 생성하고, 생성된 인코딩 데이터를 상기 채널을 통해 데이터 수신부로 송신하는 데이터 인코딩부;를 포함하는
    상기 보조 신호는 PAM 3 신호로 생성되며,
    상기 보조 신호 생성부는,
    상기 복수 개의 데이터 심볼들의 종류별 개수 및 상기 채널과 연결되어 있는 부하들의 저항 값에 기초하여 상기 입력 데이터의 인코딩 여부를 결정하는,
    PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로.
  7. 삭제
  8. 제6항에 있어서,
    상기 보조 신호 생성부는,
    상기 복수 개의 데이터 심볼 중, 부하부에서 전력을 가장 많이 소모하는 데이터 심볼의 개수가 가장 많지 않은 경우, 상기 복수 개의 데이터 심볼 중 가장 많은 개수를 가지고 있는 데이터 심볼과 상기 부하부에서 전력을 가장 많이 소모하는 데이터 심볼을 서로 반전시키는 보조 신호를 생성 하는,
    PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로.
  9. 제6항에 있어서,
    상기 복수 개의 데이터 심볼 중, 부하부에서 전력을 가장 적게 소모되도록, 상기 복수 개의 데이터 심볼 중 상기 부하부에서 전력을 가장 적게 소모하지 않는 데이터 심볼과 상기 부하부에서 전력을 가장 적게 소모하는 데이터 심볼을 서로 반전시키는 보조 신호를 생성 하는,
    PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로.
  10. 제6항에 있어서,
    상기 보조 신호 생성부는,
    상기 복수 개의 데이터 심볼 중, 가장 개수가 많은 데이터 심볼에 대해서는 부하부에서 전력을 가장 적게 소모하는 데이터 심볼로 반전시키고, 그 다음 개수가 많은 데이터 심볼에 대해서는 상기 부하부에서 그 다음으로 전력을 적게 소모하는 데이터 심볼로 반전시키며, 가장 개수가 적은 데이터 심볼에 대해서는 상기 부하부에서 전력을 가장 많이 소모하는 데이터 심볼로 반전시키는 보조 신호를 생성하는,
    PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로.
  11. 제6항에 있어서,
    상기 보조 신호 생성부는,
    2개의 PAM 3 신호를 하나의 세트로 하여 상기 보조 신호를 생성하는,
    PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로.
  12. 복수 개의 데이터 라인을 포함하는 채널;
    상기 채널과 연결되어 있는 복수 개의 부하를 포함하고, PAM 3 신호에 기초한 입력 데이터를 생성하는 데이터 생성부; 및
    상기 입력 데이터에 포함되어 있는 복수 개의 데이터 심볼들을 분석하여 상기 입력 데이터에 대한 인코딩 여부를 결정하는 보조 신호를 생성하는 보조 신호 생성부; 및
    상기 보조 신호에 기초하여 상기 데이터에 대해 DBI(Data Bus Inversion) 인코딩을 수행하여 인코딩 데이터를 생성하고, 생성된 인코딩 데이터를 상기 채널을 통해 데이터 수신부로 송신하는 데이터 인코딩부;를 포함하는 데이터 송신부; 및
    상기 보조 신호에 기초하여, 부하부의 전체 부하 값이 변경되도록 상기 복수 개의 부하들의 연결 구조를 변경하는 제어부;를 포함하고,
    상기 보조 신호 생성부는,
    상기 복수 개의 데이터 심볼 중, 부하부에서 전력을 가장 많이 소모하는 데이터 심볼의 개수 및 전력을 가장 적게 소모하는 데이터 심볼의 개수에 기초하여 상기 입력 데이터의 인코딩 여부를 결정하는,
    PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로.
  13. 삭제
  14. 제12항에 있어서,
    상기 데이터 수신부는,
    상기 채널과 연결되어 있는 복수 개의 부하를 포함하는,
    PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로.
  15. 제12항에 있어서,
    상기 데이터 수신부는,
    제1부하, 제2부하, 제3부하 및 제4부하를 포함하며,
    상기 제1부하와 상기 제2부하는 직렬 연결되어 있고, 상기 제3부하와 제4부하는 직렬 연결되어 있으며, 상기 제1부하 및 상기 제2부하는 상기 제3부하 및 상기 제4부하와 병렬 연결되어 있는,
    PAM 3 신호를 이용하여 DBI-DC 인코딩을 수행하는 데이터 반전 회로.
KR1020220151585A 2022-11-14 2022-11-14 Pam 3 신호를이용한 데이터 반전 회로 KR102582152B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220151585A KR102582152B1 (ko) 2022-11-14 2022-11-14 Pam 3 신호를이용한 데이터 반전 회로
PCT/KR2023/018205 WO2024106888A1 (ko) 2022-11-14 2023-11-13 Pam 3 신호를이용한 데이터 반전 회로

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220151585A KR102582152B1 (ko) 2022-11-14 2022-11-14 Pam 3 신호를이용한 데이터 반전 회로

Publications (1)

Publication Number Publication Date
KR102582152B1 true KR102582152B1 (ko) 2023-09-22

Family

ID=88189944

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220151585A KR102582152B1 (ko) 2022-11-14 2022-11-14 Pam 3 신호를이용한 데이터 반전 회로

Country Status (2)

Country Link
KR (1) KR102582152B1 (ko)
WO (1) WO2024106888A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024106888A1 (ko) * 2022-11-14 2024-05-23 한양대학교 산학협력단 Pam 3 신호를이용한 데이터 반전 회로

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180057028A (ko) 2016-11-21 2018-05-30 에스케이하이닉스 주식회사 데이터 반전 회로
KR20180058478A (ko) 2016-11-24 2018-06-01 에스케이하이닉스 주식회사 반도체 장치, 이를 포함하는 반도체 시스템 및 반도체 장치의 리드 및 라이트 동작 방법
KR102257233B1 (ko) * 2020-01-31 2021-05-28 고려대학교 산학협력단 접지 신호 전송법 기반의 3레벨 펄스 진폭 송수신 장치
KR20210063011A (ko) * 2019-11-22 2021-06-01 홍익대학교 산학협력단 저전력 투-버스트 데이터 전송을 위한 or-네트워크 버스 인코딩 장치 및 방법
KR20230030803A (ko) * 2021-08-26 2023-03-07 한양대학교 산학협력단 Pam 4 신호를 이용하여 dbi-dc 인코딩을 수행하는 데이터 반전 회로

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11159153B2 (en) * 2018-03-29 2021-10-26 Nvidia Corp. Data bus inversion (DBI) on pulse amplitude modulation (PAM) and reducing coupling and power noise on PAM-4 I/O
KR20210149543A (ko) * 2020-06-02 2021-12-09 삼성전자주식회사 메모리 장치 및 이를 포함하는 메모리 시스템
JP2022010484A (ja) * 2020-06-29 2022-01-17 凸版印刷株式会社 無線給電用送信装置、無線給電用受信装置、及び無線給電システム
KR102582152B1 (ko) * 2022-11-14 2023-09-22 한양대학교 산학협력단 Pam 3 신호를이용한 데이터 반전 회로

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180057028A (ko) 2016-11-21 2018-05-30 에스케이하이닉스 주식회사 데이터 반전 회로
KR20180058478A (ko) 2016-11-24 2018-06-01 에스케이하이닉스 주식회사 반도체 장치, 이를 포함하는 반도체 시스템 및 반도체 장치의 리드 및 라이트 동작 방법
KR20210063011A (ko) * 2019-11-22 2021-06-01 홍익대학교 산학협력단 저전력 투-버스트 데이터 전송을 위한 or-네트워크 버스 인코딩 장치 및 방법
KR102257233B1 (ko) * 2020-01-31 2021-05-28 고려대학교 산학협력단 접지 신호 전송법 기반의 3레벨 펄스 진폭 송수신 장치
KR20230030803A (ko) * 2021-08-26 2023-03-07 한양대학교 산학협력단 Pam 4 신호를 이용하여 dbi-dc 인코딩을 수행하는 데이터 반전 회로

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024106888A1 (ko) * 2022-11-14 2024-05-23 한양대학교 산학협력단 Pam 3 신호를이용한 데이터 반전 회로

Also Published As

Publication number Publication date
WO2024106888A1 (ko) 2024-05-23

Similar Documents

Publication Publication Date Title
US9673969B2 (en) Transcoding method for multi-wire signaling that embeds clock information in transition of signal state
KR101752157B1 (ko) 파티셔닝된 데이터 버스에 대한 인코딩
CN104995612B (zh) 低同步开关噪声芯片间通信方法和系统
JP4617039B2 (ja) 一定重みで符号化および復号するための方法および装置
KR102582152B1 (ko) Pam 3 신호를이용한 데이터 반전 회로
EP2454672A2 (en) Encoding data using combined data mask and data bus inversion
US20230073629A1 (en) Data inversion circuit to perform dbi-dc encoding using pam 4 signal
US10747695B2 (en) Methods of performing multiple data bus inversion (DBI) and memory devices performing the methods
EP3072238B1 (en) Devices and methods for facilitating data inversion to limit both instantaneous current and signal transitions
US20230244630A1 (en) Computing device and computing system
KR102109591B1 (ko) 천이 검출을 통한 적응형 보상 pam-4 송신기
EP4322488A1 (en) Method and device for data transmission with reduced supply noise
KR20230030804A (ko) Pam 4 신호를 이용하여 dbi-ac 인코딩을 수행하는 데이터 반전 회로
KR102505205B1 (ko) 삼진 논리 회로 장치
CN117596107A (zh) 用于具有降低的电源噪声的数据发送的方法和设备
CN114142964A (zh) 一种多芯片模块中芯片间的超短距离数据传输方法及装置
CN110688813A (zh) 降低芯片逻辑翻转率的方法及结构
KR20240070129A (ko) 고속용 샘플러 및 이를 이용한 데이터 전송 방법
CN105302764A (zh) 模式选择平衡编码互连
Su et al. Energy-Efficient Bus Encoding Techniques for Next-Generation PAM-4 DRAM Interfaces
Sim Segmented group-inversion coding for parallel links
KR20240061851A (ko) 논리 회로, 이를 포함하는 인코더, 및 이를 이용한 제어 신호 생성 방법
CN110581705B (zh) 一种三种高低电平接电情况下的逻辑电路
US10924204B2 (en) Signal transmission device and method, and signal reception device
JP3101030B2 (ja) プライオリティエンコード回路

Legal Events

Date Code Title Description
GRNT Written decision to grant