KR20200070972A - 시간정보 기반 직렬통신 제어 방법 및 장치 - Google Patents

시간정보 기반 직렬통신 제어 방법 및 장치 Download PDF

Info

Publication number
KR20200070972A
KR20200070972A KR1020190038749A KR20190038749A KR20200070972A KR 20200070972 A KR20200070972 A KR 20200070972A KR 1020190038749 A KR1020190038749 A KR 1020190038749A KR 20190038749 A KR20190038749 A KR 20190038749A KR 20200070972 A KR20200070972 A KR 20200070972A
Authority
KR
South Korea
Prior art keywords
time
serial communication
data
mcu
information
Prior art date
Application number
KR1020190038749A
Other languages
English (en)
Other versions
KR102199072B1 (ko
Inventor
윤기하
김근용
유학
김량수
김재인
김철원
김희도
손병희
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Publication of KR20200070972A publication Critical patent/KR20200070972A/ko
Application granted granted Critical
Publication of KR102199072B1 publication Critical patent/KR102199072B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/4185Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the network communication
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25171Serial, RS232
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/31From computer integrated manufacturing till monitoring
    • G05B2219/31124Interface between communication network and process control, store, exchange data
    • 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
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • General Engineering & Computer Science (AREA)
  • Manufacturing & Machinery (AREA)
  • Quality & Reliability (AREA)
  • Information Transfer Systems (AREA)

Abstract

시간정보 기반 직렬통신 제어 방법이 개시된다. 본 발명에 따른 직렬통신 제어방법은, MCU(microcontroller unit)로부터 데이터의 전송시간 정보를 수신하여 설정 레지스터(register)에 설정하는 단계, 상기 MCU로부터 수신한 상기 데이터를 버퍼(buffer)에 저장하는 단계, 송신 제어부에서 상기 버퍼에의 상기 데이터 유무를 판별하는 단계 및 상기 데이터가 상기 버퍼에 존재하면 상기 설정 레지스터에 설정된 상기 데이터의 전송시간 정보에 기초하여 상기 버퍼에 저장된 데이터를 적어도 하나의 직렬통신 기반 통신장치로 전송하는 단계를 포함한다.

Description

시간정보 기반 직렬통신 제어 방법 및 장치{METHOD FOR CONTROLLING TIME INFORMATION BASED SERIAL COMMUNICATION AND APPARATUS FOR THE SAME}
본 발명은 직렬통신 방법 및 장치에 관한 것으로, 상세하게는 송수신 시간 정보 및 이에 대한 제어에 기초한 직렬통신 제어 방법 및 장치에 관한 것이다.
직렬 통신은 하나(또는 두 개)의 전송 라인(신호선)을 사용하여 서로 다른 두 장치 간 데이터를 직렬방식으로 송수신하는 통신 방법이다. 직렬 통신에서 데이터는 하나의 전송 라인을 사용하여 한번에 한 비트씩 전송되므로, 수신 측에서 데이터를 정확하게 수신하려면 송신 측에서 각 비트를 전송할 때의 속도를 알아야 된다.
UART(범용 비동기화 송수신기: universal asynchronous receiver/transmitter)는 병렬 데이터를 직렬화하여 통신하는 직렬통신을 위한 개별 집적 회로이다. UART는 비동기 통신이므로 동기 신호가 전달되지 않으므로, 수신 측에서 동기신호를 찾아내어 데이터의 시작과 끝을 알아내어 처리할 수 있도록 약속되어 있다.
또 다른 방식의 직렬통신 수단으로 자체의 클럭 신호를 추가로 사용하여 정해진 속도로 수신된 데이터로부터 비트 구간을 구분하고 그 비트의 논리 상태를 결정하여 직렬 통신을 수행하는 USRT(범용 동기화 송수신기: universal synchronous receiver/transmitter)도 있다.
UART 통신의 일종인 RS-485 표준과 같은 통신 방식을 적용해서 획득한 데이터를 원격으로 송수신을 하는 것이 가능한데, UART와 같은 직렬통신을 이용하는 통신장치(이하 직렬통신 기반 통신장치라 칭함)는 건물에 부착된 전력량계, 수도 미터 및 태양광과 같은 신재생 에너지 장치 제어 및 상태 모니터링 등에 사용될 수 있다.
한편, 사물인터넷의 확대로 원격지의 사물인터넷 장치로부터 얻어지는 데이터가 기하급수적으로 증가함에 따라 빅데이터 기반의 AI(artificial intelligence) 분석을 통해 사물인터넷 장치의 고장 예측과 같은 서비스를 제공하고자 하는 시도가 증가하고 있다.
그러나, 종래 직렬통신 방법을 적용한 직렬통신 기반 통신장치와의 직렬통신을 통해 획득(수신)된 데이터에는 해당 데이터가 획득된 시간에 대한 정보가 부재하므로, 해당 데이터에 대한 처리, 정밀분석, 추적관리 및 정밀제어를 함에 있어 빅데이터 기반의 AI 분석을 적용하는데 문제가 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 송수신 시간 정보 및 이에 대한 제어에 기초해서 직렬통신을 제어하는 방법을 제공하는데 있다.
본 발명의 다른 목적은, 송수신 시간 정보 및 이에 대한 제어에 기초해서 직렬통신을 수행하는 시간정보 기반 직렬통신 제어 장치를 제공하는데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법은, MCU(microcontroller unit)로부터 데이터의 전송시간 정보를 수신하여 설정 레지스터(register)에 설정하는 단계, 상기 MCU로부터 수신한 상기 데이터를 버퍼(buffer)에 저장하는 단계, 송신 제어부에서 상기 버퍼에의 상기 데이터 유무를 판별하는 단계 및 상기 데이터가 상기 버퍼에 존재하면 상기 설정 레지스터에 설정된 상기 데이터의 전송시간 정보에 기초하여 상기 버퍼에 저장된 데이터를 적어도 하나의 직렬통신 기반 통신장치로 전송하는 단계를 포함한다.
본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법은 상기 MCU로부터 수신한 시간 정보에 기초하여 데이터 처리 동작에 기준이 되는 내부 시간을 설정하는 단계를 더 포함한다.
본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법은 GPS, 시간 서버 및 상기 MCU 중 적어도 하나로부터 기준 시간을 수신하는 단계 및 상기 수신한 기준 시간에 기초하여 상기 내부 시간을 보정하는 단계를 더 포함한다.
또한, 상기 내부 시간을 보정하는 단계는 상기 MCU에서의 기설정 주기 및 상기 MCU의 사용자 요청 중 적어도 하나에 기초하여 수행된다.
또한, 상기 버퍼에 저장된 데이터를 직렬통신 기반 통신장치로 전송하는 단계는 상기 버퍼에 저장된 데이터를 직렬통신 변환기로 전송하는 단계, 상기 직렬통신 변환기에서 상기 데이터를 상기 직렬통신 기반 통신장치로 전송하기 위한 변환을 수행하는 단계 및 상기 직렬통신 변환기에서 상기 변환된 데이터를 상기 직렬통신 기반 통신장치로 전송하는 단계를 포함한다.
또한, 상기 데이터의 전송시간 정보는 클록(clock) 신호 반영 시점 정보를 포함한다.
또한, 상기 데이터의 전송시간 정보는 상기 데이터 및 상기 직렬통신 기반 통신장치 중 적어도 하나를 기준으로 변경된다.
상기 목적을 달성하기 위한 본 발명의 다른 실시예에 따른 시간정보 기반 직렬통신 제어방법은, MCU(microcontroller unit)로부터 수신한 시간 정보에 기초하여 내부 시간을 설정하는 단계, 적어도 하나의 직렬통신 기반 통신장치로부터의 데이터에 대한 수신 시점을 결정하는 수신 타이밍을 설정 레지스터에 설정하는 단계, 상기 수신 타이밍에 맞추어 수신한 데이터의 수신 시간에 대한 정보를 상기 MCU로 전송하기 위한 전송 경로를 상기 설정 레지스터에 설정하는 단계, 상기 설정 레지스터의 설정에 기초하여 상기 적어도 하나의 직렬통신 기반 통신장치로부터 데이터를 수신하여 버퍼에 저장하는 단계, 상기 수신 타이밍에 맞추어 수신한 상기 데이터에 대한 수신 시간을 획득하는 단계 및 상기 획득된 수신 시간에 대한 정보를 상기 전송 경로를 통해 상기 MCU에 전송하는 단계를 포함한다.
본 발명의 다른 실시예에 따른 시간정보 기반 직렬통신 제어방법은 GPS, 시간 서버 및 상기 MCU 중 적어도 하나로부터 기준 시간을 수신하는 단계 및 상기 수신한 기준 시간에 기초하여 상기 내부 시간을 보정하는 단계를 더 포함한다.
또한, 상기 내부 시간을 보정하는 단계는 상기 MCU에서의 기설정 주기 및 상기 MCU의 사용자 요청 중 적어도 하나에 기초하여 수행된다.
또한, 상기 수신 타이밍은 클록(clock) 신호 반영 시점이다.
또한, 상기 수신 시간에 대한 정보의 전송 경로는 제어 인터페이스부 및 상기 버퍼 중 적어도 하나이다.
또한, 상기 수신 타이밍 및 전송 경로 중 적어도 하나는 상기 데이터 및 상기 직렬통신 기반 통신장치 중 적어도 하나를 기준으로 변경된다.
또한, 상기 적어도 하나의 직렬통신 기반 통신장치로부터 수신된 데이터는 직렬통신 변환기에 의해 변환된 데이터이다.
본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치는, MCU(microcontroller unit) 및 적어도 하나의 직렬통신 기반 통신장치 중 적어도 하나 사이의 통신을 위한 데이터가 저장되는 버퍼(buffer), 클락(clock) 신호에 기초하여 내부 시간을 생성 및 관리하는 TOD(time-of-day), 상기 내부 시간의 정밀도 향상을 위한 내부 시간 보정을 수행하는 시간조절부, 상기 MCU가 지정한 전송 시간에 상기 버퍼에 저장된 상기 데이터를 상기 적어도 하나의 직렬통신 기반 통신장치로 전송하는 것을 제어하는 송신 제어부, 상기 데이터를 상기 직렬통신 기반 통신장치로부터 수신한 경우, 상기 내부 시간에 기초한 수신 시간을 획득하는 시간 태거(tagger)부, 상기 TOD, 시간조절부, 송신 제어부 및 시간 태거부 중 적어도 하나에 대한 제어 정보가 설정되는 설정 레지스터 및 상기 MCU와 상기 TOD, 시간조절부, 설정 레지스터 및 시간 태거부 중 적어도 하나 사이에서 상기 제어 정보, 전송 시간에 대한 정보, 수신 시간에 대한 정보 중 적어도 하나가 이동하는 제어 인터페이스부를 포함한다.
또한, 상기 송신 제어부는 상기 버퍼에 상기 데이터가 존재하는 지 여부를 판별한다.
또한, 상기 설정 레지스터는 상기 전송 시간 및 수신 시간의 결정에 필요한 클록 신호 반영 시점에 대한 정보가 더 설정된다.
또한, 상기 설정 레지스터는 상기 수신 시간에 대한 정보를 상기 MCU로 전송하는 전송 경로에 대한 정보가 더 설정된다.
또한, 상기 전송 경로는 상기 제어 인터페이스부 및 상기 버퍼 중 적어도 하나이다.
또한, 상기 시간조절부는 GPS, 시간 서버 및 상기 MCU 중 적어도 하나로부터 수신한 기준 시간에 기초하여 상기 내부 시간 보정을 수행한다.
본 발명에 의하면, 복수의 직렬통신 기반 통신장치와 송수신 시간 정보 및 이에 대한 제어를 바탕으로 직렬통신을 수행할 수 있고 이를 통해 복수의 직렬통신 기반 통신장치로부터 획득한 데이터에 대해 정밀분석, 추적관리 및 정밀제어에 기초한 빅데이터 기반의 AI 분석 서비스를 적용할 수 있다.
도 1은 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치를 설명하는 블록도임.
도 2는 본 발명의 일 실시예에 따른 UART 변환기를 이용한 통신을 설명하는 블록도임.
도 3은 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법에서의 데이터 전송을 설명하는 절차도임.
도 4는 본 발명의 다른 실시예에 따른 시간정보 기반 직렬통신 제어방법에서의 데이터 전송을 설명하는 절차도임.
도 5는 본 발명의 다른 실시예에 따른 시간정보 기반 직렬통신 제어장치를 설명하는 블록도임.
도 6은 본 발명의 또 다른 실시예에 따른 시간정보 기반 직렬통신 제어장치를 설명하는 블록도임.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 몇몇 실시예들을 도면에 예시하고 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 권리범위는 실시예들로부터 관념되는 본 발명의 기술적 사상에 속하는 모든 변경, 변형, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. 및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에만, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 제시되는 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
기술적이거나 과학적인 용어를 포함해서 본 명세서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있으며, 이상적이거나 과도하게 축소된 형식적인 의미로 해석되지 않아야 할 것이며, 본 명세서에서 어떤 용어의 의미를 정의할 경우 해 용어는 그 정의된 대로 해석되어야 한다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치를 설명하는 블록도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)는 데이터(패킷을 포함함)의 임시지정을 위한 버퍼(105), MCU(140)로부터 전송되어 버퍼(105)에 저장된 데이터에 대한 시간정보 기반 전송 제어를 수행하는 송신 제어부(TC; transmit controller)(110), 외부의 직렬통신 기반 통신장치인 UART장치(160)로부터 수신된 데이터에 대한 수신 시간을 저장하는 시간 태거(TT; time tagger)부(115) 및 클락(clock) 신호에 기초하여 내부 시간을 생성 및 관리하는 TOD(time-of-day)부(125)를 포함한다(이하의 실시예에서는 편의상 직렬통신 기반 통신장치 중 UART를 적용한 경우를 위주로 설명하나 USRT에도 적용이 가능하다).
또한, 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)는 내부 시간의 정밀도 향상을 위한 내부 시간 보정을 수행하는 시간조절부(130), 시간정보 기반 직렬통신 제어장치(100)에 대한 제어 정보가 설정되는 설정 레지스터(CR; configuration register)부(135) 및 시간정보 기반 직렬통신 제어장치(100) 내의 설정 정보, 시간 정보 및 제어 정보를 MCU와 주고받는 경로인 제어 인터페이스(120)를 포함한다.
본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)는 임베디드 장치나 컴퓨터와 같은 장치의 MCU(microcontroller unit)(140)와 주변기기에 해당하는 UART장치(160)사이의 데이터 통신 시 시간정보에 기반한 직렬통신에 의한 데이터 통신을 수행한다.
본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)는 FPGA (Field Programmable Gate Array) 혹은 주문형 반도체 (ASIC, Application-specific integration circuit) 형태로 구현될 수 있다.
본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100) 내 버퍼(105)는 MCU(140)와 UART장치(160)간 송수신되는 데이터를 임시 저장한다. UART장치(160)는 컴퓨터 주변기기나 외부의 사물인터넷 장치에 해당하고, MCU(140)는 해당 UART장치(160)와 직렬통신 방법으로 데이터 통신을 수행하는 장치(컴퓨터 또는 임베디드 장치)의 중앙처리장치(컨트롤러 포함)에 해당한다(이하의 본 발명의 일 실시예에서의 MCU는 UART장치(160)와 직렬통신을 수행하는 장치를 의미한다).
한편, UART는 병렬 데이터의 형태를 직렬 방식으로 전환하여 데이터를 전송하는 컴퓨터 하드웨어의 일종이다. UART는 일반적으로 EIA RS-232, RS-422, RS-485와 같은 통신 표준이 적용되어 구현될 수 있다. 일반적으로 MCU(140)를 탑재한 임베디드 시스템에서는 MCU로부터의 TTL 레벨 신호를 UART 통신에서 사용하는 신호 레벨로 변환하기 위해 드라이버 회로를 내장한 칩(chip)을 사용하여 메모리 또는 레지스터 내에 존재하는 군집형 데이터를 최대 8비트 단위로 한 비트씩 전송 및 수신할 수 있다.
이를 위해 일반적으로 직렬통신 시에는 MCU(140)의 TTL 레벨을 직렬통신에 적합한 UART 레벨로의 변환(또는 그 반대로의 변환)을 수행하거나, 다수의 UART장치와 MCU(140)간의 직렬통신을 위해 UART변환기(150)를 사용하기도 한다. 도 2에 도시된 바와 같이 종래 기술상의 UART변환기에서는 UART변환기와 외부 주변기기 UART장치 간에 데이터 송수신시 서로 다른 선로(220,230)를 이용하는 2선로 방식(210)과 데이터 송신 및 수신을 동일한 선로(250)를 사용하는 단일선로 방식(240)이 대표적인 구현예이다.
한편 MCU는 해당 MCU의 UART IO를 통해 UART장치와 직접 통신하거나, UART장치에 적용된 통신 표준에 기초하여 UART변환기를 통해 UART장치와 통신할 수 있다. UART장치에 적용되는 통신 표준 중 RS-485의 경우 멀티 드롭 (multi-drop)을 지원하고 공통된 단일선로(양방향성 선로)를 통해 최대 32개의 장치를 버스(BUS) 방식으로 연결할 수 있다. 또한 각 UART장치에 독립적으로 부여된 ID를 통해 통신 선로를 관리한다(멀티 드롭이란 하나의 회선을 여러 장치가 공유할 수 있도록 연결된 구조의 통신 환경을 의미함).
일반적으로 단일선로 방식(240)은 2회선의 차동(differential) 방식을 사용하고 주변환경에 의해 발생되는 잡음 차폐성능이 2선로 방식(210)보다 좋으나, 동일한 회선을 통해 데이터를 MCU로 송수신하므로 동시 데이터 송수신이 불가하기 때문에 MCU에서 시간 정보를 반영하는 직렬 통신을 수행하고자 하는 경우에서는 더욱 문제가 된다.
또한 2선로 방식(210)의 경우에도 MCU가 UART장치를 특정 시간에 제어하는 행위 및 UART장치로부터의 수신 데이터의 수신 시간정보 등에 의존한 처리를 수행하기 위해 직렬통신시 시간 정보를 접목하는 경우에도 MCU가 구동하는 프로그램의 부하, MCU 내 데이터의 전송 지연, UART 통신 지연 등으로 인해 시간 정보 반영 직렬 통신을 수행함에 문제가 있다.
TOD(125)는 클락(clock) 신호에 기초하여 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)의 내부 시간을 생성 및 관리한다.
송신 제어부(110)는 MCU(140)로부터 전송되어 버퍼(105)에 저장된 데이터를 UART장치(160)로 전송할 때 전송이 수행되어야 하는 시간 정보에 기반해서 전송을 하도록 제어한다. 구체적으로는 송신 제어부(110)에서 데이터를 특정 시간에 전송하거나, 일정 주기마다 전송하도록 제어할 수 있다.
시간조절부(130)는 TOD(125)로부터 발생하는 내부 시간의 정밀도 향상을 위한 보정 기능을 수행한다. 이를 위해 외부의 타임 서버, GPS 시간 정보 제공장치, 또는 MCU의 RTC(real time clock)로부터의 기준 시간을 제공받아 그와의 비교를 통한 시간 보정(동기화 포함) 등을 수행할 수 있다. 시간조절부(130)에서의 보정은 MCU(140)에서 설정된 일정 주기 간격으로 수행되거나, MCU 사용자의 요청에 의해 비주기적으로 수행될 수 있다.
시간 태거부(115)는 외부의 UART장치(160)로부터 MCU(140)로 전송된 데이터를 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)이 수신할 때 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)의 버퍼(105)에 수신된 시간을 확인하고 저장한다. 시간 태거부(115)에서 데이터 수신 시간을 확인하는 시점은 수신되는 데이터 중, MCU(140)의 설정으로 정해진 순서에 해당하는 비트를 기준으로 한다.
또한 데이터를 수신하는 시점(수신 타이밍(receive timing))에서의 클록 신호 반영 시점을 변경하여 수신 시간을 확인할 수 있다. 클록 신호 반영 시점의 일례로 상승에지(rising-edge), 하강에지(falling-edge) 등을 들 수 있다.
설정 레지스터(135)는 시간정보 기반 직렬통신 제어장치(100)에 대한 제어 정보가 설정된다. 일례로, 설정 레지스터는 데이터 송수신에 필요한 클록의 신호 반영 시점을 설정하거나 데이터 송수신 시간 설정 시 송수신 시작시점으로 설정할 지, 송수신 완료시점으로 설정할 지 여부 등을 설정할 수 있다.
또한, 설정 레지스터(135)는 시간 태거부(115)가 확인 및 기록한 데이터 수신 시간 정보를 MCU(140)로 전달할 경로를 설정할 수 있다. 즉, 수신 시간 정보는 버퍼(105)를 통해 MCU(140)로 전송(전달)될 수도 있고, 제어 인터페이스(120)를 통해 MCU(140)로 전송될 수도 있는데 설정 레지스터(135)에 이러한 전송 경로에 대한 정보가 설정될 수 있다.
한편, 설정 레지스터(135)에 설정된 시간정보 기반 직렬통신 제어장치(100)의 동작에 관한 정보는 UART장치(160)마다 다르게 설정되어 적용될 수 있고, 동일한 UART장치(160)이더라도 데이터마다 다르게 설정되어 적용될 수 있다. 즉, 특정 UART장치(160)와의 직렬통신 시 적용되는 클록 신호 반영 시점, 시간정보 전달경로, 데이터 전송 시점 등을 데이터마다 및/또는 대상이 되는 UART장치(160)마다 다르게 적용될 수 있다.
제어 인터페이스(120)는 시간정보 기반 직렬통신 제어장치(100) 내의 설정 정보, 시간정보 및 제어정보를 MCU와 주고받는다. 즉, 제어 인터페이스(120)는 MCU(140)와 설정정보, 제어 정보 및 시간 정보를 주고 받는 경로로서의 역할을 할 수 있다. 제어 인터페이스(120)를 통해 MCU(140)로부터 전달받은 데이터의 전송 시간에 대한 정보(전송 실행 시간, 전송 수행 시점, 클록 신호 반영 시점 등)를 설정 레지스터에 설정한 후 송신 제어부(110)가 이에 기초하여 버퍼(105)에 있는 데이터의 UART장치(160)으로의 전송을 제어할 수 있다.
또한 제어 인터페이스(120)를 통해 시간조절부(110)를 위한 내부 시간 보정용 기준 시간 정보를 MCU(140)으로부터 전달받을 수 있다. 다음으로 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)를 이용한 데이터 송수신 방법에 대해 설명한다.
도 3은 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법에서의 데이터 전송을 설명하는 절차도이다.
도 3을 참조하면, 도 1의 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치에 해당하는 시간정보 기반 직렬통신 제어장치(100)를 이용하여 MCU(140)에서 적어도 하나의 UART장치(컴퓨터 주변기기나 사물인터넷 장치에 해당)와 같은 직렬통신 기반 통신장치(100)로 데이터를 전송하는 경우를 나타낸다. 이하의 실시예들에서의 직렬통신 기반 통신장치란 외부장치와의 통신에 직렬통신을 사용하는 장치를 의미한다.
MCU(140)는 임베디드 장치나 컴퓨터와 같은 것으로서 적어도 하나의 직렬통신 기반 통신장치(160)와 직렬통신 방법으로 데이터를 송수신한다. MCU(140)에서 직렬통신 기반 통신장치(160)로 데이터를 전송할 시 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신에 기초한 전송을 하기 위한 시간정보 기반 직렬통신 제어장치(100)는 관련 설정이 되어있는 설정 레지스터에서 필요 설정 정보를 확인한다.
일례로 설정 레지스터에는 MCU(140)로부터 요청된(또는 시간정보 기반 직렬통신 제어장치(100)에서 스스로 설정)한 데이터 송수신에 필요한 클록의 신호 반영 시점을 설정하거나 데이터 송수신 시간 설정 시의 송수신 시작 시점(최초 데이터 송수신시를 기준으로 할지 또는 최종 데이터 송수신 완료 시를 기준으로 설정할 지) 등을 확인하여 이에 기초하여 직렬통신을 수행할 수 있다. 또한 MCU(140)로부터 직렬통신 기반 통신장치(160)로 데이터를 전송할 시점에 해당하는 데이터 전송시간 정보가 설정 레지스터에 저장되어 있을 수 있다.
본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)는 MCU(140)로부터 데이터 전송시간 정보 등 본 발명에 따른 시간정보 기반 직렬통신을 수행하기 위해 필요한 관련 정보를 제어 인터페이스를 통해 수신한다(S310). 본 발명에 따른 시간정보 기반 직렬통신 제어장치(100)는 수신한 해당 정보를 설정 레지스터에 설정(저장)한다(S320). 다음으로 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)는 MCU(140)로부터 데이터를 수신하여(S330) 시간정보 기반 직렬통신 제어장치(100)내 버퍼에 저장한다(S340).
여기서 버퍼에 저장되는 데이터에 대한 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신을 수행하기 위한 설정 정보간에는 다양한 맵핑(mapping)관계가 수립될 수 있다. 일례로, 특정 전송 시간, 클록 신호 반영 시점 등과 같은 설정 정보는 동일한 직렬통신 기반 통신장치(160)의 데이터 별로도 다르게 설정될 수도 있고, 직렬통신 기반 통신장치(160)별로도 다르게 설정될 수 있다. 이러한 정보는 설정 레지스터에 설정되거나 송수신 되는 데이터에 포함될 수 있다.
다음으로 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)의 송신 제어부에서 버퍼 내 전송이 필요한 데이터가 저장되어 있는지를 확인한다(S350). 송신 제어부에서 특정 직렬통신 기반 통신장치(160)로의 데이터가 버퍼에 저장되어 있음을 확인하면 해당 데이터에 대한 설정 레지스터 내 설정정보를 이용하여 해당 데이터를 직렬통신 기반 통신장치(160)로 전송한다(S360).
한편, 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법에 기초해서 시간정보 기반 직렬통신 제어장치(100)에서 적어도 하나의 직렬통신 기반 통신장치(160)로 데이터를 전송할 시 UART 변환기와 같은 직렬통신 변환기로 먼저 전송되도록 할 수 있다. 이후 직렬통신 변환기에서 적절한 변환(전압레벨 변환 및/또는 다수의 직렬통신 기반 통신장치 중 특정한 직렬통신 기반 통신장치로 전달되도록 경로 설정 등)이 수행된 후 해당 직렬통신 변환기에서 직렬통신 기반 통신장치(160)로 데이터가 전송되도록 할 수 있다.
또한, 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법에서는 시간정보 기반 직렬통신 제어장치(100)가 MCU로부터 제어 인터페이스를 통해 수신한 시간 정보에 기초하여 TOD에서 데이터 처리 동작에 기준이 되는 내부 시간을 설정할 수 있다. 또한, 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법에서는 시간정보 기반 직렬통신 제어장치(100)가 MCU, GPS 및 시간 서버 중 적어도 하나로부터 기준 시간을 제어 인터페이스를 통해 수신하고, 해당 기준 시간에 기초하여 내부 시간을 보정할 수 있다. 이때, 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법에서의 내부 시간 보정은 MCU에서 설정된 일정 주기간격으로 수행되거나 MCU 사용자의 요청(비주기 간격)에 의해 수행될 수 있다.
또한, 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법에서의 데이터 전송시간 정보는 해당 데이터 및 직렬통신 기반 통신장치(160) 중 적어도 하나를 기준으로 변경될 수 있다. 다음으로 본 발명의 다른 실시예에 따른 시간정보 기반 직렬통신 제어방법에서의 데이터 전송으로서 MCU가 적어도 하나의 직렬통신 기반 통신장치로부터 데이터를 수신하는 것을 설명한다.
도 4는 본 발명의 다른 실시예에 따른 시간정보 기반 직렬통신 제어방법에서의 데이터 전송을 설명하는 절차도이다.
도 4를 참조하면, 도 1의 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치에 해당하는 시간정보 기반 직렬통신 제어장치(100)를 이용하여 MCU(140)가 적어도 하나의 주변기기 UART장치(또는 사물인터넷 장치)와 같은 직렬통신 기반 통신장치(100)로부터 데이터를 수신하는 경우를 나타낸다.
MCU(140)는 임베디드 장치나 컴퓨터와 같은 것으로서 UART 주변주기(사물 인터넷 장치 포함)에 해당하는 적어도 하나의 직렬통신 기반 통신장치(160)와 직렬통신 방법으로 데이터를 송수신한다. 이때 적어도 하나의 직렬통신 기반 통신장치(160)로부터의 데이터를 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)를 통해 MCU(140)로 전송하기 위해서는 설정 레지스터에의 관련 동작을 위한 설정이 필요하다.
먼저, 시간정보 기반 직렬통신 제어장치(100)가 MCU로부터 제어 인터페이스를 통해 수신(S410)한 시간 정보에 기초하여 TOD에서 데이터 처리 동작에 기준이 되는 내부 시간을 설정할 수 있다(S420).
또한, 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법에서는 시간정보 기반 직렬통신 제어장치(100)가 MCU, GPS 및 시간 서버 중 적어도 하나로부터 제어 인터페이스를 통해 기준 시간을 수신하고, 해당 기준 시간에 기초하여 내부 시간을 보정할 수 있다. 이때, 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법에서의 내부 시간 보정은 MCU에서 설정된 일정 주기간격으로 수행되거나 MCU 사용자의 요청(비주기 간격)에 의해 수행될 수 있다.
그리고 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)에서 직렬통신 기반 통신장치(160)로의 데이터를 수신하는 시점인 수신 타이밍을 설정 레지스터에 설정한다(S430). 수신 타이밍은 수신되는 데이터의 특정 순서의 비트를 기초로 하고 상승 에지(rising-edge), 하강 에지(falling-edge) 등의 클락 시점으로 설정할 수 있다.
또한 설정 레지스터에는 후술할 시간 태거부에서 획득한 데이터 수신 시간에 대한 정보를 MCU(140)으로 전송하기 위한 전송 경로에 대한 정보도 설정된다(S440). 전송 경로로는 버퍼를 통해 전송하는 경로와 제어 인터페이스를 통해 전송하는 경로가 가능하다.
본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)의 시간 태거부에서는 설정된 수신 타이밍에 기초하여 직렬통신 기반 통신장치로부터 데이터를 수신하고(S450), 해당 데이터에 대한 수신 시간을 수신 타이밍과 내부시간 기준으로 획득할 수 있다(S460). 이와 동시에 수신한 해당 데이터를 시간정보 기반 직렬통신 제어장치(100)의 버퍼(105)에 저장한다(S460).
한편 버퍼에 저장되는 데이터에 대해 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신을 수행하기 위해 설정되는 설정 정보에는 다양한 맵핑(mapping)관계가 수립될 수 있다. 일례로, 특정 전송 경로, 클록 신호 반영 시점 등과 같은 설정 정보는 직렬통신 기반 통신장치(160)별로 다르게 설정될 수 있다.
본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치(100)는 버퍼에 저장된 데이터를 MCU(140)로 전송하고 해당 데이터에 대한 수신 시간에 대한 정보를 설정된 전송 경로(버퍼 또는 제어 인터페이스)를 통해 MCU(140)로 전송한다(S470).
한편, 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어방법에 기초해서 시간정보 기반 직렬통신 제어장치(100)에서 직렬통신 기반 통신장치(160)로부터 데이터를 수신할 시 UART 변환기와 같은 직렬통신 변환기에서 관련 변환이 수행된 데이터를 수신하는 것도 가능하다.
즉, 적어도 하나의 직렬통신 기반 통신장치(160)에서 전송되는 데이터가 먼저 직렬통신 변환기에 수신되어 필요한 변환(전압레벨 변환 등 등)이 수행된 후 시간정보 기반 직렬통신 제어장치(100)로 데이터가 전송되도록 할 수 있다. 다음으로 본 발명의 다른 실시예에 따른 적어도 하나의 시간정보 기반 직렬통신 제어장치를 관리하는 통합 직렬통신 관리부가 적용된 통합 시간정보 직렬통신 제어장치에 대해 설명한다.
도 5는 본 발명의 다른 실시예에 따른 통합 시간정보 기반 직렬통신 제어장치를 설명하는 블록도이다.
도 5를 참조하면, 본 발명의 다른 실시예에 따른 통합 시간정보 기반 직렬통신 제어장치(500)는 적어도 하나의 시간정보 기반 직렬통신 제어장치를 관리하는 통합 직렬통신 관리부(530) 및 고속 인터페이스(520)를 포함한다.
MCU(510)는 임베디드 장치나 컴퓨터와 같은 것으로서 UART 주변기기(사물 인터넷 장치 포함)에 해당하는 적어도 하나의 직렬통신 기반 통신장치(550-1, ... , 550-N)와 직렬통신 방법으로 데이터를 송수신한다.
일반적으로 직렬통신 기반 통신장치(UART 주변기기, 사물인터넷 장치, 센서, 모터 등을 포함)는 고정된 직렬통신 통신속도로 동작하게 되는데, 도 5에 도시된 바와 같이 하나의 MCU(510)에서 N개의 직렬통신 기반 통신장치(550-1, ... , 550-N)와 직렬통신을 수행하기 위해서는 MCU(510)과 연결된 직렬통신 기반 통신장치의 개수에 비례한 통신속도가 요구되므로 본 발명의 다른 실시예에 따른 통합 시간정보 기반 직렬통신 제어장치(500)에서는 고속 인터페이스(520)를 이용하여 고속 데이터 송수신을 수행할 수 있다.
본 발명의 다른 실시예에 따른 통합 시간정보 기반 직렬통신 제어장치(500)에서는 적어도 하나의 직렬통신 기반 통신장치(550-1, ... , 550-N)에서 서로 다른 속도로 MCU(510)로 데이터를 전송할 시, 시간정보 기반 직렬통신 제어장치(530-1, ... , 530-N) 중 하나와 직렬통신 기반 통신장치(550-1, ... , 550-N) 중 하나가 상호 요청된(허용된) 속도로 직렬통신을 수행하도록 제어하는 통합 직렬통신 관리부(530)를 포함한다.
본 발명의 다른 실시예에 따른 통합 시간정보 기반 직렬통신 제어장치(500)는 직렬통신 기반 통신장치(550-1, ... , 550-N)와 직렬통신시 필요한 변환(신호 레벨 변환 등 포함)을 수행하기 위한 직렬통신 변환기(540-1, ... , 540-N)를 포함할 수 있다. 이와 같은 직렬통신 변환기(540-1, ... , 540-N)는 본 발명의 다른 실시예에 따른 통합 시간정보 기반 직렬통신 제어장치(500)의 외부에 구현되거나, 장치 내외부에 전혀 구현되지 않을 수도 있다(즉, 직렬통신 변환기를 통한 관련 변환 없이 바로 직렬통신 기반 통신장치와 통합 시간정보 기반 직렬통신 제어장치가 연결될 수 있음). 다음으로 본 발명의 다른 실시예에 따른 통합 시간정보 기반 직렬통신 제어장치의 구체적인 적용예에 대해 설명한다.
도 6은 본 발명의 또 다른 실시예에 따른 통합 시간정보 기반 직렬통신 제어장치를 설명하는 블록도이다.
도 6을 참조하면, 본 발명의 또 다른 실시예에 따른 통합 시간정보 기반 직렬통신 제어장치(600)는 도 5에 도시된 통합 시간정보 기반 직렬통신 제어장치의 구체적인 일 실시예로서 적어도 하나의 직렬통신 기반 통신장치(620-1, ... , 620-N)와 MCU(610)간의 같거나 서로 다른 속도의 직렬통신에 의한 데이터 통신을 제어한다.
또한 본 발명의 또 다른 실시예에 따른 통합 시간정보 기반 직렬통신 제어장치(600)에서 통합 시간정보 기반 직렬통신 제어장치(600)에 포함된 시간정보 기반 직렬통신 제어장치 중 일부 기능을 공통으로 사용하면서(CR(SR), TOD, 시간조절부 등) 그 외 기능은 외부의 직렬통신 기반 통신장치(620-1, ... , 620-N)와의 일대일로 연결되고 고속 인터페이스 및 통합 직렬통신 관리부를 통해 직렬통신을 수행하도록 구현될 수 있다. 그러나 이에 한정되는 것은 아니고 모든 기능을 공통으로 사용하도록 구현되거나 별도의 블록으로 구현하는 것도 가능하다.
한편, 도 6의 CR(SR)은 설정 레지스터(CR; configuration register) 및 상태 레지스터(SR; status register)이다. CR(SR)은 도 1의 본 발명의 일 실시예에 따른 시간정보 기반 직렬통신 제어장치 내의 설정 레지스터 기능을 포함할 수 있고, 각 UART변환부마다의 연결상태, 연결속도, 시간 기반 송수신 등의 상태 정보 및 본 발명의 일 실시예에 따른 통합 시간정보 기반 직렬통신 제어장치 내 구현된 각종 장치의 동작을 위한 설정정보가 저장될 수 있다.
한편, 전술한 각 구성은 각각이 별도의 장치로 설명하였으나, 이는 설명의 편의와 이해의 증진을 위한 예시적 설명에 불과한 것으로서, 본 발명의 기술적 사상의 범주 내에서 다양한 형태로 구현될 수 있음은 물론이다. 예컨대, 송신 제어부 및 시간 태거부는 하나의 모듈로 통합되어 구현될 수도 있고, 둘이나 그 이상의 장치로 분할하여 구현될 수 있다.
본 발명에 따른 방법들은 다양한 컴퓨터 수단을 통해 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 매체에 기록되는 프로그램 명령은 본 발명을 위해 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수 있다.
컴퓨터 판독 가능 매체의 예에는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함한다. 상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 적어도 하나의 소프트웨어 모듈로 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상, 본 발명의 바람직한 실시예를 통해 본 발명의 구성에 대하여 상세히 설명하였다. 그러나 전술한 실시예는 예시에 불과한 것으로서, 본 발명의 권리범위를 제한하지 아니한다. 본 발명의 기술분야에 통상의 지식을 가진 자라면 본 명세서의 교시와 시사로부터 본 발명의 기술적 사상의 범주내의 다양한 변형과 변경이 가능할 것이다. 따라서, 본 발명의 보호범위는 이하의 특허청구범위의 기재에 의하여 정하여짐이 마땅하다.

Claims (20)

  1. 직렬통신 기반 장치의 제어방법으로서,
    MCU(microcontroller unit)로부터 데이터의 전송시간 정보를 수신하여 설정 레지스터(register)에 설정하는 단계;
    상기 MCU로부터 수신한 상기 데이터를 버퍼(buffer)에 저장하는 단계;
    송신 제어부에서 상기 버퍼에의 상기 데이터 유무를 판별하는 단계; 및
    상기 데이터가 상기 버퍼에 존재하면 상기 설정 레지스터에 설정된 상기 데이터의 전송시간 정보에 기초하여 상기 버퍼에 저장된 데이터를 적어도 하나의 직렬통신 기반 통신장치로 전송하는 단계를 포함하는 시간정보 기반 직렬통신 제어방법.
  2. 제1항에 있어서,
    상기 MCU로부터 수신한 시간 정보에 기초하여 데이터 처리 동작에 기준이 되는 내부 시간을 설정하는 단계를 더 포함하는 시간정보 기반 직렬통신 제어방법.
  3. 제2항에 있어서,
    GPS, 시간 서버 및 상기 MCU 중 적어도 하나로부터 기준 시간을 수신하는 단계; 및
    상기 수신한 기준 시간에 기초하여 상기 내부 시간을 보정하는 단계를 더 포함하는 시간정보 기반 직렬통신 제어방법.
  4. 제3항에 있어서,
    상기 내부 시간을 보정하는 단계는 상기 MCU에서의 기설정 주기 및 상기 MCU의 사용자 요청 중 적어도 하나에 기초하여 수행되는, 시간정보 기반 직렬통신 제어방법.
  5. 제1항에 있어서,
    상기 버퍼에 저장된 데이터를 직렬통신 기반 통신장치로 전송하는 단계는
    상기 버퍼에 저장된 데이터를 직렬통신 변환기로 전송하는 단계;
    상기 직렬통신 변환기에서 상기 데이터를 상기 직렬통신 기반 통신장치로 전송하기 위한 변환을 수행하는 단계; 및
    상기 직렬통신 변환기에서 상기 변환된 데이터를 상기 직렬통신 기반 통신장치로 전송하는 단계를 포함하는, 시간정보 기반 직렬통신 제어방법.
  6. 제1항에 있어서,
    상기 데이터의 전송시간 정보는 클록(clock) 신호 반영 시점 정보를 포함하는, 시간정보 기반 직렬통신 제어방법.
  7. 제6항에 있어서,
    상기 데이터의 전송시간 정보는 상기 데이터 및 상기 직렬통신 기반 통신장치 중 적어도 하나를 기준으로 변경되는, 시간정보 기반 직렬통신 제어방법.
  8. 직렬통신 기반 장치의 제어방법으로서,
    MCU(microcontroller unit)로부터 수신한 시간 정보에 기초하여 내부 시간을 설정하는 단계;
    적어도 하나의 직렬통신 기반 통신장치로부터의 데이터에 대한 수신 시점을 결정하는 수신 타이밍을 설정 레지스터에 설정하는 단계;
    상기 수신 타이밍에 맞추어 수신한 데이터의 수신 시간에 대한 정보를 상기 MCU로 전송하기 위한 전송 경로를 상기 설정 레지스터에 설정하는 단계;
    상기 설정 레지스터의 설정에 기초하여 상기 적어도 하나의 직렬통신 기반 통신장치로부터 데이터를 수신하여 버퍼에 저장하는 단계;
    상기 수신 타이밍에 맞추어 수신한 상기 데이터에 대한 수신 시간을 획득하는 단계; 및
    상기 획득된 수신 시간에 대한 정보를 상기 전송 경로를 통해 상기 MCU에 전송하는 단계를 포함하는 시간정보 기반 직렬통신 제어방법.
  9. 제8항에 있어서,
    GPS, 시간 서버 및 상기 MCU 중 적어도 하나로부터 기준 시간을 수신하는 단계; 및
    상기 수신한 기준 시간에 기초하여 상기 내부 시간을 보정하는 단계를 더 포함하는 시간정보 기반 직렬통신 제어방법.
  10. 제9항에 있어서,
    상기 내부 시간을 보정하는 단계는 상기 MCU에서의 기설정 주기 및 상기 MCU의 사용자 요청 중 적어도 하나에 기초하여 수행되는, 시간정보 기반 직렬통신 제어방법.
  11. 제8항에 있어서,
    상기 수신 타이밍은 클록(clock) 신호 반영 시점인, 시간정보 기반 직렬통신 제어방법.
  12. 제11항에 있어서,
    상기 수신 시간에 대한 정보의 전송 경로는 제어 인터페이스부 및 상기 버퍼 중 적어도 하나인, 시간정보 기반 직렬통신 제어방법.
  13. 제12항에 있어서,
    상기 수신 타이밍 및 전송 경로 중 적어도 하나는 상기 데이터 및 상기 직렬통신 기반 통신장치 중 적어도 하나를 기준으로 변경되는, 시간정보 기반 직렬통신 제어방법.
  14. 제8항에 있어서,
    상기 적어도 하나의 직렬통신 기반 통신장치로부터 수신된 데이터는 직렬통신 변환기에 의해 변환된 데이터인, 시간정보 기반 직렬통신 제어방법.
  15. MCU(microcontroller unit) 및 적어도 하나의 직렬통신 기반 통신장치 중 적어도 하나 사이의 통신을 위한 데이터가 저장되는 버퍼(buffer);
    클락(clock) 신호에 기초하여 내부 시간을 생성 및 관리하는 TOD(time-of-day);
    상기 내부 시간의 정밀도 향상을 위한 내부 시간 보정을 수행하는 시간조절부;
    상기 MCU가 지정한 전송 시간에 상기 버퍼에 저장된 상기 데이터를 상기 적어도 하나의 직렬통신 기반 통신장치로 전송하는 것을 제어하는 송신 제어부;
    상기 데이터를 상기 직렬통신 기반 통신장치로부터 수신한 경우, 상기 내부 시간에 기초한 수신 시간을 획득하는 시간 태거(tagger)부;
    상기 TOD, 시간조절부, 송신 제어부 및 시간 태거부 중 적어도 하나에 대한 제어 정보가 설정되는 설정 레지스터; 및
    상기 MCU와 상기 TOD, 시간조절부, 설정 레지스터 및 시간 태거부 중 적어도 하나 사이에서 상기 제어 정보, 전송 시간에 대한 정보, 수신 시간에 대한 정보 중 적어도 하나가 이동하는 제어 인터페이스부를 포함하는 시간정보 기반 직렬통신 제어장치.
  16. 제15항에 있어서,
    상기 송신 제어부는 상기 버퍼에 상기 데이터가 존재하는 지 여부를 판별하는, 시간정보 기반 직렬통신 제어장치.
  17. 제15항에 있어서,
    상기 설정 레지스터는 상기 전송 시간 및 수신 시간의 결정에 필요한 클록 신호 반영 시점에 대한 정보가 더 설정되는, 시간정보 기반 직렬통신 제어장치.
  18. 제15항에 있어서,
    상기 설정 레지스터는 상기 수신 시간에 대한 정보를 상기 MCU로 전송하는 전송 경로에 대한 정보가 더 설정되는, 시간정보 기반 직렬통신 제어장치.
  19. 제18항에 있어서,
    상기 전송 경로는 상기 제어 인터페이스부 및 상기 버퍼 중 적어도 하나인, 시간정보 기반 직렬통신 제어장치.
  20. 제15항에 있어서,
    상기 시간조절부는 GPS, 시간 서버 및 상기 MCU 중 적어도 하나로부터 수신한 기준 시간에 기초하여 상기 내부 시간 보정을 수행하는, 시간정보 기반 직렬통신 제어장치.
KR1020190038749A 2018-12-10 2019-04-02 시간정보 기반 직렬통신 제어 방법 및 장치 KR102199072B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20180158083 2018-12-10
KR1020180158083 2018-12-10

Publications (2)

Publication Number Publication Date
KR20200070972A true KR20200070972A (ko) 2020-06-18
KR102199072B1 KR102199072B1 (ko) 2021-01-06

Family

ID=71143360

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190038749A KR102199072B1 (ko) 2018-12-10 2019-04-02 시간정보 기반 직렬통신 제어 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102199072B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113253636A (zh) * 2021-04-09 2021-08-13 广东盛路通信科技股份有限公司 一种通信设备的数据采集器终端、远程监控方法及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001516286A (ja) * 1998-01-23 2001-09-25 スクウエアー ディー カンパニー 制御システム用の入出力サブシステム
US6940868B1 (en) * 1999-04-20 2005-09-06 Abb Inc. Digital serial communications hub

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001516286A (ja) * 1998-01-23 2001-09-25 スクウエアー ディー カンパニー 制御システム用の入出力サブシステム
US6940868B1 (en) * 1999-04-20 2005-09-06 Abb Inc. Digital serial communications hub

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113253636A (zh) * 2021-04-09 2021-08-13 广东盛路通信科技股份有限公司 一种通信设备的数据采集器终端、远程监控方法及系统
CN113253636B (zh) * 2021-04-09 2022-04-26 广东盛路通信科技股份有限公司 一种通信设备的数据采集器终端、远程监控方法及系统

Also Published As

Publication number Publication date
KR102199072B1 (ko) 2021-01-06

Similar Documents

Publication Publication Date Title
US9398080B2 (en) Control device, image processing device, control method, computer-readable recording medium, and program
US9571215B2 (en) Measuring time offsets between devices with independent silicon clocks
US9501446B2 (en) Control unit for the exchange of data with a peripheral unit, peripheral unit, and method for data exchange
CN110392084B (zh) 在分布式系统中管理地址的方法、设备和计算机程序产品
CN102541779B (zh) 一种提高多数据缓冲区dma效率的系统和方法
JP6523497B1 (ja) マスタ制御装置およびこれを用いた同期通信システム
CN105677605B (zh) 一种高效的可配置片上互联系统及其实现方法、装置
CN110635982B (zh) 通讯总线上双主机通讯方法、系统、工控网关及储存介质
EP0558433A2 (en) Independent computer storage addressing in input/output transfers
KR102199072B1 (ko) 시간정보 기반 직렬통신 제어 방법 및 장치
US10740031B2 (en) Interface scheduler for a distributed memory system
CN111884751A (zh) 一种基于ptp的智能电网时间同步方法和装置
CN203982361U (zh) 一种多路串口通信测试装置
JP4961589B2 (ja) ネットワークシステムおよびスレーブ同期方法
CN104915316A (zh) 通信设备
US8028112B2 (en) I/O device, network system with I/O device and communication method in network system with I/O device
CN104411010A (zh) 一种低开销的无线传感网络时间同步方法
CN104063351B (zh) 一种用于乒乓防冲突的高速复接器同步串行接口设计方法
US20200145486A1 (en) Computer network with a first and a second synchronizing signal transmitter
EP2687938A2 (en) Measuring time offsets between devices with independent silicon clocks
WO2011043011A1 (ja) 仮想サーバシステム、その自律制御サーバ、そのデータ処理方法およびコンピュータプログラム
KR20150129400A (ko) 배전 선로 자동화 단말장치
JP2015126314A (ja) クロック供給システム、クロックバッファ群および制御方法
CN113590526B (zh) 一种双工通讯信息传递方法、系统及应用
US20230281147A1 (en) Communication apparatus, communication method, and program

Legal Events

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