KR102298275B1 - 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템 - Google Patents

디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템 Download PDF

Info

Publication number
KR102298275B1
KR102298275B1 KR1020190135350A KR20190135350A KR102298275B1 KR 102298275 B1 KR102298275 B1 KR 102298275B1 KR 1020190135350 A KR1020190135350 A KR 1020190135350A KR 20190135350 A KR20190135350 A KR 20190135350A KR 102298275 B1 KR102298275 B1 KR 102298275B1
Authority
KR
South Korea
Prior art keywords
data
value
bit
command
input
Prior art date
Application number
KR1020190135350A
Other languages
English (en)
Other versions
KR20210050836A (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 KR1020190135350A priority Critical patent/KR102298275B1/ko
Publication of KR20210050836A publication Critical patent/KR20210050836A/ko
Application granted granted Critical
Publication of KR102298275B1 publication Critical patent/KR102298275B1/ko

Links

Images

Classifications

    • 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/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • G06F13/4256Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using a clocked protocol
    • 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/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Abstract

디바이스는, 상기 디바이스의 입력 단자로부터 입력된 직렬 입력 데이터를 시프트하여 출력하는 시프트 레지스터; 및 상기 시프트 레지스터의 출력을 제어하는 제어 회로;를 포함하되, 상기 시프트 레지스터는, 입력된 직렬 데이터를, 1 비트 시프트하여 출력하고, 상기 제어 회로는, 상기 직렬 입력 데이터가 상기 디바이스의 아이디 할당 명령 및 아이디 필드를 포함하고 있는 경우 상기 아이디 필드에 포함된 데이터의 비트 중 미리 설정된 제 1 값이 탐색되면, 해당 직렬 입력 데이터의 제 1 값이 탐색된 비트를 미리 설정된 제 2 값으로 변경하여 1 비트 시프트하여 출력하고, 다른 비트는 그대로 1 비트 시프트하여 출력하도록 상기 시프트 레지스터를 제어한다.

Description

디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템{ID ALLOCATION METHOD OF DEVICE, THE DEVICE AND SYSTEM INCLUDING THE DEVICE}
본 발명은 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템에 관한 것으로, 더욱 상세하게는 체인 구조로 연결된 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템에 관한 것이다.
도 1은 일반적인 SPI(Serial-to-Parallel Interface) 통신을 이용하는 데이지 체인 구조로 연결된 여러 디바이스가 포함된 시스템(100)의 구성도를 나타낸다. 참고로, 도 1에서 'SEL'은 셀렉터 신호를 나타내고, 'SCLK'는 클록 신호를 나타낸다. 또한, SDI는 직렬 입력 데이터(Seral Data Input)을, SDO는 직렬 출력 데이터(Serial Data Output)를 각각 나타낸다.
다만, 도 1과 같이 데이지 체인(Daisy Chain) 구조로 슬래이브 디바이스(SD1, SD2, SD3, SD4)가 연결된 경우, 각 슬래이브 디바이스(SD1, SD2, SD3, SD4)별로 명령 프레임(Command Frame)을 개별적으로 인가해야 하므로, 전체 프레임이 길어진다.
예를 들면, 8 바이트(Byte)의 명령 구조를 갖는 경우, 4번째 슬래이브 디바이스(SD4)에 명령을 인가하기 위해서 4×8-바이트(32-바이트)의 데이터를 보내야 한다.
아울러, 반도체 칩의 아이디는 스태틱 칩 아이디(Static Chip ID)를 이용할 수 있다.
스태틱 칩 아이디를 사용하기 위해서는 해당 반도체 칩에 OTP 또는 Flash 등의 내부 메모리(Internal Memory)가 필요하고, IC 양산 과정에서 내부 메모리에 ㅆ쓰기(Write) 동작을 수행할 필요가 있다. 아울러, 할당된 아이디와 명령 프레임이 매칭되어야 하므로, ID별로 재고를 관리해야 한다. 또한, 스태틱 칩 아이디의 경우, 패키지 실크(Package Silk)에 디바이스 아이디(Device ID)를 확인할 수 있도록 하여야 하고, PCB(Printed Circuit Board) 제작이 어렵고, 부품 교체가 어렵다.
본 발명은 전술한 바와 같은 기술적 과제를 해결하는 데 목적이 있는 발명으로서, 빠른 데이터의 전송이 가능하고, 다이나믹 칩 아이디를 사용하는 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템을 제공하는 것에 그 목적이 있다.
본 발명의 디바이스는, 본 발명의 디바이스의 입력 단자로부터 입력된 직렬 입력 데이터를 시프트하여 출력하는 시프트 레지스터;를 포함하되, 상기 시프트 레지스터는, 입력된 직렬 데이터를, 1 비트 시프트하여 출력하는 것을 특징으로 한다.
아울러, 본 발명의 디바이스는, 상기 시프트 레지스터의 출력을 제어하는 제어 회로;를 더 포함하되, 상기 제어 회로는, 상기 직렬 입력 데이터가 상기 디바이스의 아이디 할당 명령 및 아이디 필드를 포함하고 있는 경우 상기 아이디 필드에 포함된 데이터의 비트 중 미리 설정된 제 1 값이 탐색되면, 해당 직렬 입력 데이터의 제 1 값이 탐색된 비트를 미리 설정된 제 2 값으로 변경하여 1 비트 시프트하여 출력하고, 다른 비트는 그대로 1 비트 시프트하여 출력하도록 상기 시프트 레지스터를 제어하되, 상기 아이디 필드는, 본 발명의 디바이스 또는 다른 디바이스의 아이디 정보를 포함하고 있는 데이터인 것이 바람직하다.
또한, 상기 제 1 값 및 상기 제 2 값 중 하나는 로직 하이(Logic High)값이고, 다른 하나는 로직 로우(Logic Low)값인 것을 특징으로 한다.
바람직하게는, 본 발명의 디바이스의 아이디는, 상기 아이디 필드에 포함된 데이터의 비트 중 미리 설정된 제 1 값이 탐색된 경우, 해당 비트의 자릿수 정보를 이용하여 설정되는 것을 특징으로 한다.
아울러, 본 발명의 디바이스는, 아이디 데이터 및 명령 데이터로 구성된 명령 프레임을 입력받은 경우, 본 발명의 디바이스의 아이디가 지시하는 비트에 대응하는 비트 정보가, 입력된 아이디 데이터 중 있는 경우에만, 해당 명령 데이터를 실시하되, 상기 아이디 데이터는, 상기 명령 데이터를 실시할 디바이스의 아이디 정보인 것이 바람직하다.
본 발명의 디바이스의 아이디 할당 방법은, (a) 상기 디바이스로 입력된 직렬 데이터를 1 비트 시프트하여 출력하는 단계; (b) 상기 디바이스로 입력된 직렬 데이터가, 상기 디바이스의 아이디 할당 명령인 지를 판단하는 단계; (c) 상기 (b) 단계에서의 판단 결과, 상기 디바이스의 아이디 할당 명령인 경우, 아이디 할당 플래그를 이용하여 아이디가 이미 할당되어 있는 지를 판단하는 단계; 및 (d) 상기 (c) 단계에서의 판단 결과, 아이디가 할당되어 있지 않은 경우, 아이디의 초기값을 설정하는 단계;를 포함하는 것을 특징으로 한다.
아울러, 본 발며의 아이디 할당 방법은, 상기 (d) 단계 이후에, (e) 상기 아이디 할당 명령 이후에 입력되는 아이디 필드의 해당 비트가 미리 설정된 제 1 값인지를 판단하는 단계; 및 (f) 상기 (e) 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값인 경우, 해당 디바이스의 아이디를 설정하는 단계;를 더 포함하되,상기 아이디 필드는, 상기 디바이스 또는 다른 디바이스의 아이디 정보를 포함하고 있는 데이터인 것이 바람직하다.
또한, 본 발명의 아이디 할당 방법은, (g) 상기 (e) 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값인 경우, 아이디가 할당 완료된 것으로 아이디 할당 플래그를 설정하는 단계; 및 (h) 상기 (e) 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값인 경우, 해당 비트를 제 2 값으로 변경하는 단계;를 더 포함하되, 상기 (a) 단계는, 상기 (h) 단계에서 변경된 값을 출력하는 것을 특징으로 한다. 아울러, 상기 제 1 값 및 상기 제 2 값 중 하나는 로직 하이(Logic High)값이고, 다른 하나는 로직 로우(Logic Low)값인 것이 바람직하다.
아울러, 본 발명의 아이디 할당 방법은, (i) 상기 (e) 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값이 아닌 경우, 아이디의 값을 하나 증가시키는 단계;를 더 포함하되, 상기 (e) 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값이 아닌 경우, 상기 (a) 단계는, 해당 비트를 출력하는 것을 특징으로 한다.
아울러, 본 발명의 아이디 할당 방법에 의해 아이디가 할당된 디바이스의 명령 데이터 실시 방법은, 아이디 데이터 및 명령 데이터로 구성된 명령 프레임을 입력받는 명령 프레임 입력 단계; 및 상기 명령 프레임 입력 단계에서, 상기 디바이스의 아이디가 지시하는 비트에 대응하는 비트 정보가, 입력된 아이디 데이터 중 있는 경우에만, 해당 명령 데이터를 실시하는 단계;를 포함하되, 상기 아이디 데이터는, 상기 명령 데이터를 실시할 디바이스의 아이디 정보인 것이 바람직하다.
본 발명의 하나의 마스터 디바이스와 N개의 슬래이브 디바이스가 체인 구조로 연결된 시스템은, 상기 N개의 슬래이브 디바이스는 각각, 입력된 직렬 데이터를 1 비트 시프트하여 출력하되, 상기 N은, 2보다 큰 자연수인 것을 특징으로 한다.
아울러, 상기 N개의 슬래이브 디바이스는 각각, 입력된 직렬 데이터가 해당 디바이스의 아이디 할당 명령 및 아이디 필드를 포함하고 있는 경우, 상기 직렬 입력 데이터가 해당 디바이스의 아이디 할당 명령 및 아이디 필드를 포함하고 있는 경우 상기 아이디 필드에 포함된 데이터의 비트 중 미리 설정된 제 1 값이 탐색되면, 해당 직렬 입력 데이터의 제 1 값이 탐색된 비트를 미리 설정된 제 2 값으로 변경하여 1 비트 시프트하여 출력하고, 다른 비트는 그대로 1 비트 시프트하여 출력하되, 상기 아이디 필드는, 상기 N개의 슬래이브 디바이스 중 적어도 하나의 아이디 정보를 포함하고 있는 데이터인 것이 바람직하다.
또한, 상기 제 1 값 및 상기 제 2 값 중 하나는 로직 하이(Logic High)값이고, 다른 하나는 로직 로우(Logic Low)값인 것을 특징으로 한다.
아울러, 상기 N개의 슬래이브 디바이스는 각각, 상기 아이디 필드에 포함된 데이터의 비트 중 미리 설정된 제 1 값이 탐색된 경우, 해당 비트의 자릿수 정보를 이용하여 설정되는 것이 바람직하다.
또한, 상기 N개의 슬래이브 디바이스는 각각, 아이디 데이터 및 명령 데이터로 구성된 명령 프레임을 입력받은 경우, 상기 디바이스의 아이디가 지시하는 비트에 대응하는 비트 정보가, 입력된 아이디 데이터 중 있는 경우에만, 해당 명령 데이터를 실시하되, 상기 아이디 데이터는, 상기 명령 데이터를 실시할 디바이스의 아이디 정보인 것을 특징으로 한다.
본 발명의 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템에 따르면, 빠른 데이터의 전송이 가능하고, 다이나믹 칩 아이디를 사용할 수 있다.
도 1은 일반적인 SPI 통신을 이용하는 데이지 체인 구조로 연결된 여러 디바이스가 포함된 시스템의 구성도.
도 2는 본 발명의 바람직한 일실시예에 따른 체인 구조로 디바이스가 연결된 시스템의 구성도.
도 3은 N개의 슬래이브 디바이스의 타이밍도.
도 4는 슬래이브 디바이스의 아이디 할당 방법의 흐름도.
도 5는 슬래이브 디바이스를 위한 명령 프레임의 예시도.
도 6은 도 5의 명령 프레임에 의한 각 슬래이브 디바이스의 동작 예시도
도 7은 아이디 할당 예시도.
도 8a 및 도 8b는 각각, 종래의 체인 구조로 디바이스가 연결된 시스템의 동작 타이밍도 및 본 발명의 체인 구조로 디바이스가 연결된 시스템의 동작 타이밍도.
이하, 첨부된 도면을 참조하면서 본 발명의 실시예에 따른 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템에 대해 상세히 설명하기로 한다. 본 발명의 하기의 실시예는 본 발명을 구체화하기 위한 것일 뿐 본 발명의 권리 범위를 제한하거나 한정하는 것이 아님은 물론이다. 본 발명의 상세한 설명 및 실시예로부터 본 발명이 속하는 기술 분야의 전문가가 용이하게 유추할 수 있는 것은 본 발명의 권리 범위에 속하는 것으로 해석된다.
먼저, 도 2는 본 발명의 바람직한 일실시예에 따른 체인 구조로 디바이스가 연결된 시스템(200)의 구성도를 나타낸다. 아울러, 도 3은 N개의 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 타이밍도이다. 도 3에서 클록이외의 상측의 8개의 데이터는 각 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 입력이지만, 마지막 데이터는 여덟번째 슬래이브 디바이스(SD8)의 출력을 나타낸다.
구체적으로 도 2와 같이 연결된 구조를, 데이지 체인(Daisy Chain) 구조라고 한다. 도 2의 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 셀렉터 신호 및 클록 신호는 도 1과 마스터 디바이스(MD)로부터 출력되지만, 도 3에서의 도시는 생략되었다. 또한, SDI는 직렬 입력 데이터(Seral Data Input)를, SDO는 직렬 출력 데이터(Serial Data Output)를 각각 나타낸다.
도 2 및 도 3에 의해 본 발명의 바람직한 일실시예에 따른 체인 구조로 디바이스가 연결된 시스템(200)의 동작에 대해 설명하기로 한다.
본 발명의 바람직한 일실시예에 따른 체인 구조로 디바이스가 연결된 시스템(200)은, 하나의 마스터 디바이스(MD)와 N개의 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)가 체인 구조로 연결된 것을 특징으로 한다. 아울러, 본 시스템(200) 내에서의 통신은, SPI(Serial-to-Parallel Interface) 방식을 이용한다.
N개의 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8) 각각은, 시프트 레지스터(SR)와 제어 회로(CC)를 포함한다.
시프트 레지스터(SR)는, 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 입력 단자로부터 입력된 직렬 입력 데이터를 시프트하여 출력한다. 구체적으로 시프트 레지스터(SR)는, 입력된 직렬 데이터를, 1 비트 시프트하여 출력하는 것이 바람직하다.
아울러, 제어 회로(CC)는, 시프트 레지스터(SR)의 출력을 제어한다. 구체적으로, 제어 회로(CC)는, 직렬 입력 데이터가 해당 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 아이디 할당 명령 및 아이디 필드를 포함하고 있는 경우, 아이디 필드에 포함된 데이터의 비트 중 미리 설정된 제 1 값이 탐색되면, 해당 직렬 입력 데이터의 제 1 값이 탐색된 비트를 미리 설정된 제 2 값으로 변경하여 1 비트 시프트하여 출력하고, 다른 비트는 그대로 1 비트 시프트하여 출력하도록 시프트 레지스터(SR)를 제어하는 것을 특징으로 한다. 여기서 아이디 필드는, 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 아이디 정보를 포함하고 있는 데이터를 의미한다. 즉, 아이디 필드는, 해당 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8) 또는 다른 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 아이디 정보를 포함하고 있는 데이터이다. 다른 말로 표현하면, 아이디 필드는, N개의 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8) 중 적어도 하나의 아이디 정보를 포함하고 있는 데이터이다.
제 1 값 및 제 2 값 중 하나는 로직 하이(Logic High)값이고, 다른 하나는 로직 로우(Logic Low)값인 것을 특징으로 한다.
예를 들면, 해당 슬래이브 디바이스(SD1)가 첫번째 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)이고, 아이디 필드에 '11111111'이 순차적으로 입력되면, 시프트 레지스터(SR)는 입력 데이터를 1 비트 시프트하여 출력하되, '01111111'이 출력되게 된다. 이 경우, 제 1 값은 로직 하이로 '1'이고, 제 2 값은 로직 로우로 '0'이 된다.
아울러 경우에 따라서는, 해당 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)가 첫번째 슬래이브 디바이스(SD1)이고, 아이디 필드에 '00000000'이 순차적으로 입력되면, 시프트 레지스터(SR)는 입력 데이터를 1 비트 시프트하여 출력하되, '10000000'이 출력하도록 설계할 수도 있다. 이 경우, 제 1 값은 로직 로우로 '0'이고, 제 2 값은 로직 하이로 '1'이 된다.
참고로, 도 3에서는, 첫번째 슬래이브 디바이스(SD1)로 아이디 필드 '11111111'가 입력되고, 두번째 슬래이브 디바이스(SD2)로부터 아이디 필드 '01111111'가 입력되어, 최종적으로 여덟번째 슬래이브 디바이스(SD8)로부터 '00000000'가 출력되는 과정을 보여주고 있다.
해당 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 아이디는, 아이디 필드에 포함된 데이터의 비트 중 미리 설정된 제 1 값이 탐색된 경우, 해당 비트의 자릿수 정보를 이용하여 설정되는 것을 특징으로 한다. 예를 들어, 해당 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)가 첫번째 슬래이브 디바이스(SD1)이고, 아이디 필드에 '10101111'이 순차적으로 입력된 경우, 해당 슬래이브 디바이스(SD1)의 아이디는, MSB(Most Significant Bit)의 '1'을 이용하여 '0'으로 설정될 수 있다. 또한, 해당 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)가 두번째 슬래이브 디바이스(SD2)이고, 아이디 필드에 '10101111'이 순차적으로 입력된 경우, 해당 슬래이브 디바이스(SD2)의 아이디는, 3번째 비트의 '1'을 이용하여, '2'로 설정될 수 있다. 또한, 아울러, 해당 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)가 세번째 슬래이브 디바이스(SD3)이고, 아이디 필드에 '10101111'이 순차적으로 입력된 경우, 해당 슬래이브 디바이스(SD3)의 아이디는, 5번째 비트의 '1'을 이용하여, '4'로 설정될 수 있다.
하기에, 본 발명의 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)에 의한 아이디 할당 방법에 대해 구체적으로 설명하기도 한다.
도 4는 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 아이디 할당 방법의 흐름도를 나타낸다.
도 4로부터 알 수 있는 바와 같이, 본 발명의 아이디 할당 방법은, 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)로 입력된 직렬 데이터를 1 비트 시프트하여 출력하는 단계(S10); 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)로 입력된 직렬 데이터가, 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 아이디 할당 명령인 지를 판단하는 단계(S20); S20 단계에서의 판단 결과, 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 아이디 할당 명령인 경우, 아이디 할당 플래그를 이용하여 아이디가 이미 할당되어 있는 지를 판단하는 단계(S30); 및 S30 단계에서의 판단 결과, 아이디가 할당되어 있지 않은 경우, 아이디의 초기값을 설정하는 단계(S40);를 포함한다.
아울러, 본 발명의 아이디 할당 방법은, 아이디 할당 명령 이후에 입력되는 아이디 필드의 해당 비트가 미리 설정된 제 1 값인지를 판단하는 단계(S50); S50 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값인 경우, 해당 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 아이디를 설정하는 단계(S60); S50 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값인 경우, 아이디가 할당 완료된 것으로 아이디 할당 플래그를 설정하는 단계(S70); 및 S50 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값인 경우, 해당 비트를 제 2 값으로 변경하는 단계(S80);를 더 포함하되,
S10 단계는, S80 단계에서 변경된 값을 출력하는 것을 특징으로 한다. 아울러, 제 1 값 및 제 2 값 중 하나는 로직 하이(Logic High)값이고, 다른 하나는 로직 로우(Logic Low)값이 된다.
또한, 본 발명의 아이디 할당 방법은, S50 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값이 아닌 경우, 아이디의 값을 하나 증가시키는 단계(S90); 및 S50 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값이 아닌 경우, 해당 비트를 그대로 유지하는 단계(S100);를 더 포함하는 것을 특징으로 한다.
즉, S50 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값이 아닌 경우, S10 단계는, 해당 비트를 출력하게 된다.
아울러, 본 발명의 아이디 할당 방법은, S90 단계 및 S100 단계의 완료 후, S50 단계로 돌아가는 것이 바람직하다.
도 5는 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)를 위한 명령 프레임(Command Frame)의 예시도이다.
아이디 할당이 완료된 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)는, 도 5와 같은 명령 프레임을 직렬로 입력받을 수 있다. 즉, 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)가 아이디 데이터 및 명령 데이터로 구성된 명령 프레임을 입력받은 경우, 해당 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 아이디가 지시하는 비트에 대응하는 비트 정보가, 입력된 아이디 데이터 중 있는 경우에만, 해당 명령 데이터를 실시하는 것을 특징으로 한다. 즉, 아이디 데이터는, 명령 데이터를 실시할 디바이스의 아이디 정보이다.
도 6은 도 5의 명령 프레임에 의한 각 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 동작 예시도이다.
예를 들어 8개의 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)를 위해 마스터 디바이스(MD)가 아이디 필드로 '11111111'을 출력하게 되면, 각 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)는 도 7과 같이 아이디가 할당될 수 있다.
도 6으로부터 알 수 있는 바와 같이, 도 7과 같이 아이디가 할당된 후, 명령 프레임의 아이디 데이터로 '10100001'가 입력된 경우, 첫번째, 세번째 및 여덟번째 슬래이브 디바이스(SD1, SD3, SD8)만이 명령 프레임의 명령 데이터에 따라 동작하게 된다. 즉, 도 7에서 첫번째 슬래이브 디바이스(SD1)의 아이디가 지시하는 비트는 MSB이고, 아이디 데이터의 MSB가 1인 경우 첫번째 슬래이브 디바이스(SD1)가 명령 데이터를 실시하게 된다.
또한, 예를 들어 8개의 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)를 위해 마스터 디바이스(MD)가 아이디 필드로 '10100001'을 출력하게 되면, 8개의 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8) 중 첫번째 슬래이브 디바이스(SD1), 두번째 슬래이브 디바이스(SD2) 및 세번째 슬래이브 디바이스(SD3)에 아이디가 할당된다. 아울러, 명령 프레임의 아이디 데이터로 '10100000'가 입력된 경우, 첫번째 및 두번째 슬래이브 디바이스(SD1, SD2)만이 명령 프레임의 명령 데이터에 따라 동작하게 된다.
즉, 상술한 바와 같이 아이디가 할당된 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 명령 데이터 실시 방법은, 아이디 데이터 및 명령 데이터로 구성된 명령 프레임을 입력받는 명령 프레임 입력 단계; 및 명령 프레임 입력 단계에서, 슬래이브 디바이스(SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8)의 아이디가 지시하는 비트에 대응하는 비트 정보가, 입력된 아이디 데이터 중 있는 경우에만, 해당 명령 데이터를 실시하는 단계;를 포함하는 것을 특징으로 한다.
도 8a 및 도 8b는 각각, 도 1의 종래의 체인 구조로 디바이스가 연결된 시스템(100)의 동작 타이밍도 및 본 발명의 체인 구조로 디바이스가 연결된 시스템(200)의 동작 타이밍도를 나타낸다.
도 8a 및 도 8b로부터 알 수 있는 바와 같이, 종래의 체인 구조로 디바이스가 연결된 시스템(100)은, 1 바이트의 데이터를 전송시, 세번째 슬래이브 디바이스(SD3)까지 24 클록(Clock)이 필요하다. 본 발명의 체인 구조로 디바이스가 연결된 시스템(200)의 경우에는, 1 비트로 데이터를 전송하므로, 세번째 슬래이브 디바이스(SD3)까지 10 클록이 필요하여, 종래 대비 14 클록이 감소함을 알 수 있다.
즉, 본 발명에 따르면, 종래 시스템(100) 대비 빠른 데이터의 전송이 가능함을 알 수 있다. 아울러, 본 발명에 따르면, 다이나믹(Dynamic) 칩 아이디를 사용할 수 있음을 알 수 있다.
100, 200 : 체인 구조로 디바이스가 연결된 시스템
MD : 마스터 디바이스
SD1, SD2, SD3, SD4, SD5, SD6, SD7, SD8 : 슬래이브 디바이스
SR : 시프트 레지스터
CC : 제어 회로

Claims (17)

  1. 디바이스에 있어서,
    상기 디바이스의 입력 단자로부터 입력된 직렬 입력 데이터를 시프트하여 출력하는 시프트 레지스터; 및
    상기 시프트 레지스터의 출력을 제어하는 제어 회로;를 포함하되,
    상기 시프트 레지스터는,
    입력된 직렬 데이터를, 1 비트 시프트하여 출력하고,
    상기 제어 회로는,
    상기 직렬 입력 데이터가 상기 디바이스의 아이디 할당 명령 및 아이디 필드를 포함하고 있는 경우 상기 아이디 필드에 포함된 데이터의 비트 중 미리 설정된 제 1 값이 탐색되면, 해당 직렬 입력 데이터의 제 1 값이 탐색된 비트를 미리 설정된 제 2 값으로 변경하여 1 비트 시프트하여 출력하고, 다른 비트는 그대로 1 비트 시프트하여 출력하도록 상기 시프트 레지스터를 제어하되,
    상기 아이디 필드는,
    상기 디바이스 또는 다른 디바이스의 아이디 정보를 포함하고 있는 데이터인 것을 특징으로 하는 디바이스.
  2. 삭제
  3. 제1항에 있어서,
    상기 제 1 값 및 상기 제 2 값 중 하나는 로직 하이(Logic High)값이고, 다른 하나는 로직 로우(Logic Low)값인 것을 특징으로 하는 디바이스.
  4. 제1항에 있어서,
    상기 디바이스의 아이디는,
    상기 아이디 필드에 포함된 데이터의 비트 중 미리 설정된 제 1 값이 탐색된 경우, 해당 비트의 자릿수 정보를 이용하여 설정되는 것을 특징으로 하는 디바이스.
  5. 제4항에 있어서,
    상기 디바이스는,
    아이디 데이터 및 명령 데이터로 구성된 명령 프레임을 입력받은 경우, 상기 디바이스의 아이디가 지시하는 비트에 대응하는 비트 정보가, 입력된 아이디 데이터 중 있는 경우에만, 해당 명령 데이터를 실시하되,
    상기 아이디 데이터는,
    상기 명령 데이터를 실시할 디바이스의 아이디 정보인 것을 특징으로 하는 디바이스.
  6. 디바이스의 아이디 할당 방법에 있어서,
    (a) 상기 디바이스로 입력된 직렬 데이터를 1 비트 시프트하여 출력하는 단계;
    (b) 상기 디바이스로 입력된 직렬 데이터가, 상기 디바이스의 아이디 할당 명령인 지를 판단하는 단계;
    (c) 상기 (b) 단계에서의 판단 결과, 상기 디바이스의 아이디 할당 명령인 경우, 아이디 할당 플래그를 이용하여 아이디가 이미 할당되어 있는 지를 판단하는 단계;
    (d) 상기 (c) 단계에서의 판단 결과, 아이디가 할당되어 있지 않은 경우, 아이디의 초기값을 설정하는 단계;
    (e) 상기 아이디 할당 명령 이후에 입력되는 아이디 필드의 해당 비트가 미리 설정된 제 1 값인지를 판단하는 단계; 및
    (f) 상기 (e) 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값인 경우, 해당 디바이스의 아이디를 설정하는 단계;를 포함하되,
    상기 아이디 필드는,
    상기 디바이스 또는 다른 디바이스의 아이디 정보를 포함하고 있는 데이터인 것을 특징으로 하는 아이디 할당 방법.
  7. 삭제
  8. 제6항에 있어서,
    상기 아이디 할당 방법은,
    (g) 상기 (e) 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값인 경우, 아이디가 할당 완료된 것으로 아이디 할당 플래그를 설정하는 단계;를 더 포함하는 것을 특징으로 하는 아이디 할당 방법.
  9. 제6항에 있어서,
    상기 아이디 할당 방법은,
    (h) 상기 (e) 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값인 경우, 해당 비트를 제 2 값으로 변경하는 단계;를 더 포함하되,
    상기 (a) 단계는,
    상기 (h) 단계에서 변경된 값을 출력하는 것을 특징으로 하는 아이디 할당 방법.
  10. 제9항에 있어서,
    상기 제 1 값 및 상기 제 2 값 중 하나는 로직 하이(Logic High)값이고, 다른 하나는 로직 로우(Logic Low)값인 것을 특징으로 하는 아이디 할당 방법.
  11. 제6항에 있어서,
    상기 아이디 할당 방법은,
    (i) 상기 (e) 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값이 아닌 경우, 아이디의 값을 하나 증가시키는 단계;를 더 포함하되,
    상기 (e) 단계에서의 판단 결과, 해당 비트가 미리 설정된 제 1 값이 아닌 경우, 상기 (a) 단계는, 해당 비트를 출력하는 것을 특징으로 하는 아이디 할당 방법.
  12. 제6항, 제8항, 제9항, 제10항 및 제11항 중 어느 한 항에 의해 아이디가 할당된 디바이스의 명령 데이터 실시 방법에 있어서,
    아이디 데이터 및 명령 데이터로 구성된 명령 프레임을 입력받는 명령 프레임 입력 단계; 및
    상기 명령 프레임 입력 단계에서, 상기 디바이스의 아이디가 지시하는 비트에 대응하는 비트 정보가, 입력된 아이디 데이터 중 있는 경우에만, 해당 명령 데이터를 실시하는 단계;를 포함하되,
    상기 아이디 데이터는,
    상기 명령 데이터를 실시할 디바이스의 아이디 정보인 것을 특징으로 하는 디바이스의 명령 데이터 실시 방법.
  13. 하나의 마스터 디바이스와 N개의 슬래이브 디바이스가 체인 구조로 연결된 시스템에 있어서,
    상기 N개의 슬래이브 디바이스는 각각, 입력된 직렬 데이터를 1 비트 시프트하여 출력하되,
    상기 N은, 2보다 큰 자연수이고,
    상기 N개의 슬래이브 디바이스는 각각,
    입력된 직렬 데이터가 해당 디바이스의 아이디 할당 명령 및 아이디 필드를 포함하고 있는 경우, 상기 직렬 입력 데이터가 해당 디바이스의 아이디 할당 명령 및 아이디 필드를 포함하고 있는 경우 상기 아이디 필드에 포함된 데이터의 비트 중 미리 설정된 제 1 값이 탐색되면, 해당 직렬 입력 데이터의 제 1 값이 탐색된 비트를 미리 설정된 제 2 값으로 변경하여 1 비트 시프트하여 출력하고, 다른 비트는 그대로 1 비트 시프트하여 출력하되,
    상기 아이디 필드는,
    상기 N개의 슬래이브 디바이스 중 적어도 하나의 아이디 정보를 포함하고 있는 데이터인 것을 특징으로 하는 시스템.
  14. 삭제
  15. 제13항에 있어서,
    상기 제 1 값 및 상기 제 2 값 중 하나는 로직 하이(Logic High)값이고, 다른 하나는 로직 로우(Logic Low)값인 것을 특징으로 하는 시스템.
  16. 제13항에 있어서,
    상기 N개의 슬래이브 디바이스는 각각,
    상기 아이디 필드에 포함된 데이터의 비트 중 미리 설정된 제 1 값이 탐색된 경우, 해당 비트의 자릿수 정보를 이용하여 설정되는 것을 특징으로 하는 시스템.
  17. 제16항에 있어서,
    상기 N개의 슬래이브 디바이스는 각각,
    아이디 데이터 및 명령 데이터로 구성된 명령 프레임을 입력받은 경우, 상기 디바이스의 아이디가 지시하는 비트에 대응하는 비트 정보가, 입력된 아이디 데이터 중 있는 경우에만, 해당 명령 데이터를 실시하되,
    상기 아이디 데이터는,
    상기 명령 데이터를 실시할 디바이스의 아이디 정보인 것을 특징으로 하는 시스템.
KR1020190135350A 2019-10-29 2019-10-29 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템 KR102298275B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190135350A KR102298275B1 (ko) 2019-10-29 2019-10-29 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190135350A KR102298275B1 (ko) 2019-10-29 2019-10-29 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템

Publications (2)

Publication Number Publication Date
KR20210050836A KR20210050836A (ko) 2021-05-10
KR102298275B1 true KR102298275B1 (ko) 2021-09-06

Family

ID=75917252

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190135350A KR102298275B1 (ko) 2019-10-29 2019-10-29 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템

Country Status (1)

Country Link
KR (1) KR102298275B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230089771A (ko) 2021-12-14 2023-06-21 주식회사 엘엑스세미콘 직렬통신 기반의 데이터 전송 시스템 및 데이터 전송 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008117306A (ja) * 2006-11-07 2008-05-22 New Japan Radio Co Ltd インターフェースシステム
KR101582020B1 (ko) * 2007-12-14 2015-12-31 노바칩스 캐나다 인크. 플렉시블 데이터 정렬을 가진 다수의 디바이스 및 메모리 제어기를 갖는 시스템에서의 클록 재생 및 타이밍 방법
KR101890030B1 (ko) * 2016-09-02 2018-08-20 주식회사 아이닉스 체인 형태로 연결된 디바이스 및 그 설정 방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008117306A (ja) * 2006-11-07 2008-05-22 New Japan Radio Co Ltd インターフェースシステム
KR101582020B1 (ko) * 2007-12-14 2015-12-31 노바칩스 캐나다 인크. 플렉시블 데이터 정렬을 가진 다수의 디바이스 및 메모리 제어기를 갖는 시스템에서의 클록 재생 및 타이밍 방법
KR101890030B1 (ko) * 2016-09-02 2018-08-20 주식회사 아이닉스 체인 형태로 연결된 디바이스 및 그 설정 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230089771A (ko) 2021-12-14 2023-06-21 주식회사 엘엑스세미콘 직렬통신 기반의 데이터 전송 시스템 및 데이터 전송 방법

Also Published As

Publication number Publication date
KR20210050836A (ko) 2021-05-10

Similar Documents

Publication Publication Date Title
US6996644B2 (en) Apparatus and methods for initializing integrated circuit addresses
US8010710B2 (en) Apparatus and method for identifying device type of serially interconnected devices
US7348798B2 (en) Programmable logic device, configuration apparatus, and configuration method
US9673824B2 (en) Techniques and circuitry for configuring and calibrating an integrated circuit
KR102298275B1 (ko) 디바이스의 아이디 할당 방법, 그 디바이스 및 그 디바이스를 포함하는 시스템
JP2006004079A (ja) 記憶装置
US20190138680A1 (en) Modular Periphery Tile for Integrated Circuit Device
CN108268676B (zh) 管脚复用的验证方法及装置
CN110597743A (zh) 半导体装置
US5375218A (en) DMA channel control apparatus capable of assigning independent DMA transfer control line to respective expansion slots
KR100787054B1 (ko) I2c 통신을 이용한 공통 어드레스를 가지는 부품의 제어장치
US11308021B2 (en) Methods and apparatus for using an addressable serial peripheral interface
US8407684B2 (en) Memory card and method of updating memory card program
US20110018888A1 (en) Addressing method and structure for multiple chips and display system thereof
US6912601B1 (en) Method of programming PLDs using a wireless link
JP2017162011A (ja) メモリデバイス用テスト回路及びこれを含む半導体集積装置
JP2008117306A (ja) インターフェースシステム
US5926398A (en) Semiconductor device layout method capable of arranging functional cells with data signal lines and control signal lines having a proper length and configuration
US7652503B2 (en) Semiconductor device
US8327108B2 (en) Slave and a master device, a system incorporating the devices, and a method of operating the slave device
US20070150781A1 (en) Apparatus with programmable scan chains for multiple chip modules and method for programming the same
CN113535602A (zh) 硬件单板的逻辑地址空间的配置方法、设备和存储介质
US7036054B2 (en) Memory bus checking procedure
JP4684579B2 (ja) シリアル通信による制御システム
CN109219928B (zh) 数据处理装置、数据处理方法及计算机可读取的存储介质

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant