KR100750477B1 - Data communication method for real-time monitoring of embedded systems - Google Patents
Data communication method for real-time monitoring of embedded systems Download PDFInfo
- Publication number
- KR100750477B1 KR100750477B1 KR1020060020202A KR20060020202A KR100750477B1 KR 100750477 B1 KR100750477 B1 KR 100750477B1 KR 1020060020202 A KR1020060020202 A KR 1020060020202A KR 20060020202 A KR20060020202 A KR 20060020202A KR 100750477 B1 KR100750477 B1 KR 100750477B1
- Authority
- KR
- South Korea
- Prior art keywords
- bit
- monitoring data
- monitoring
- real
- communication
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/3003—Monitoring arrangements specially adapted to the computing system or computing system component being monitored
- G06F11/3013—Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
Landscapes
- Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
Abstract
Description
도 1은 본 발명에 따른 임베디드 시스템의 고속 실시간 모니터링 장치의 구성도.1 is a block diagram of a high speed real-time monitoring device of the embedded system according to the present invention.
도 2는 본 발명에 따른 모니터링 데이타 패킷 프로토콜의 구조.2 is a structure of a monitoring data packet protocol according to the present invention.
< 도면의 주요부분에 대한 부호의 설명 > <Description of Symbols for Major Parts of Drawings>
10: 타겟 임베디드 시스템 20: 실시간 모니터링 장비10: target embedded system 20: real-time monitoring equipment
22: 모니터 화면 24: 하드디스크 드라이브22: Monitor screen 24: Hard disk drive
26: 키보드26: keyboard
30: 8 비트 모니터링 데이타 패킷 프로토콜30: 8 bit monitoring data packet protocol
40: 16 비트 모니터링 데이타 패킷 프로토콜40: 16 bit monitoring data packet protocol
31,41: 패킷시작 데이타 32,42: 블록크기 데이타31,41: Packet start
33,43: 모니터링 데이타 블록 34,44: 체크섬33, 43: monitoring
35,45: 패킷종료 데이타 35,45: packet end data
본 발명은 임베디드 시스템의 실시간 모니터링 데이타 통신 방법에 관한 것으로서, 더욱 상세하게는 타겟 임베디드 시스템과 실시간 모니터링 장비가 고속 동기 직렬 통신방식을 이용하여 상호 규정된 프로토콜로 모니터링 데이타 패킷을 송수신함으로써, 타겟 임베디드 시스템의 전자회로와 CPU 펌웨어를 실시간으로 디버깅하거나 고속의 동작상태를 실시간으로 모니터링할 수 있는 임베디드 시스템의 실시간 모니터링 데이타 통신 방법에 관한 것이다.The present invention relates to a real-time monitoring data communication method of an embedded system, and more particularly, a target embedded system and a real-time monitoring device by transmitting and receiving a monitoring data packet by a mutually defined protocol using a high-speed synchronous serial communication method, a target embedded system The present invention relates to a real-time monitoring data communication method of an embedded system that can debug an electronic circuit and CPU firmware of a real time or monitor a high-speed operating state in real time.
유무선 통신시스템, 네트워크 장비, 산업용 자동화 기기, 의료용 전자기기, 사무용 기기, 가전기기, 오디오/비디오 기기, 차량용 전자장치, 우주항공기용 전자장치 등 대부분의 디지털 전자기기 및 전자장비와 같은 임베디드 시스템에서는 CPU로 사용되는 MCU(마이크로콘트롤러)나 DSP(디지털 신호 처리기)가 디지털 데이타의 고속 연산뿐만 아니라 신호처리 및 제어 등을 수행함으로써 임베디드 시스템의 작동을 가능하게 하는데, 임베디드 시스템의 모니터링은 그러한 임베디드 시스템을 개발할 때에 하드웨어적인 전자회로 또는 CPU의 펌웨어를 검증하고 디버깅하기 위하여 반드시 필요할 뿐만 아니라, 이미 설치되어 고유의 임무를 수행 중인 임베디드 시스템의 성능 및 동작상태를 주기적으로 평가하기 위해서도 필요하다. CPUs are embedded in embedded systems such as digital and electronic devices such as wired / wireless communication systems, network equipment, industrial automation equipment, medical electronics, office equipment, home appliances, audio / video equipment, automotive electronics, and aerospace electronics. Microcontrollers (DSPs) or Digital Signal Processors (DSPs), which are used as controllers, enable the operation of embedded systems by performing signal processing and control as well as high-speed operation of digital data. It is not only necessary for verifying and debugging hardware electronic circuits or CPU firmware, but also for periodically evaluating the performance and operation of an embedded system that is already installed and performing its own task.
그런데, 임베디드 시스템의 다양한 기능 추가 및 고성능의 필요성과 함께, CPU 제조기술의 발전에 따라서 MCU/DSP의 동작속도는 갈수록 빨라지고 있다. 예를들어, MCU/DSP의 동작속도가 100 MHz를 넘어서 수 백 MHz에 이르는 제품이 등장하고 있는 실정이다.However, with the addition of various functions of the embedded system and the need for high performance, the operation speed of the MCU / DSP is getting faster as the CPU manufacturing technology is developed. For example, MCUs / DSPs are operating at speeds of up to 100 MHz and hundreds of MHz.
종래 임베디드 시스템의 모니터링은 타겟 MCU/DSP의 외부핀에 연결되어져 있 는 어드레스 버스와 데이타 버스에 접속하여 타겟 임베디드 시스템의 동작상태를 검사하였으나, 최근에는 대용량 플래시 메모리가 MCU/DSP에 내장되어서 어드레스 버스와 데이타 버스가 연결된 외부핀이 MCU/DSP에 존재하지 않을 뿐만 아니라, MCU/DSP의 고속화에 따라서 이런 모니터링 방법이 매우 어려워지게 되었다.In the conventional embedded system monitoring, the operation status of the target embedded system was examined by connecting to the address bus and data bus connected to the external pins of the target MCU / DSP. However, recently, a large-capacity flash memory is embedded in the MCU / DSP to address the bus. Not only do external pins connected to the data bus exist on the MCU / DSP, but the monitoring method becomes very difficult due to the high speed of the MCU / DSP.
한편, 어드레스 버스와 데이타 버스에 접속하지 않고 MCU/DSP의 외부접속 주변모듈 중의 하나인 SCI 혹은 UART 모듈에서 제공하는 RS-232C 규격의 비동기 통신을 이용하는 모니터링 방법은, 타겟 임베디드 시스템에서 모니터링 장비로 모니터링 데이타를 전송할 수 있는 최대 전송속도가 대략 100 kBPS 수준에 불과하기 때문에, 고속으로 동작하는 고성능 임베디드 시스템을 실시간으로 모니터링하는데 많은 문제점이 있었다.On the other hand, monitoring method using RS-232C standard asynchronous communication provided by SCI or UART module, which is one of the external connection peripheral modules of MCU / DSP, without connecting to address bus and data bus, is monitored by monitoring equipment in target embedded system. Since the maximum data transfer rate is only about 100 kBPS, there are many problems in real time monitoring of high-performance embedded systems operating at high speed.
본 발명은 이와같은 종래의 문제점을 해결하기 위해 안출한 것으로서, 본 발명의 목적은, 실행 중인 타겟 임베디드 시스템이 고속 동기 직렬 통신방식을 이용하여 실시간 모니터링 장비와 상호 규정된 프로토콜로 모니터링 데이타 패킷을 전송함으로써, 타겟 CPU의 어드레스 버스와 데이타 버스에 접속하지 않고 실시간 모니터링 장비를 통해 타겟 임베디드 시스템의 CPU 펌웨어를 실시간으로 디버깅하거나 고속의 실행상태를 실시간으로 모니터링할 수 있는 임베디드 시스템의 실시간 모니터링 데이타 통신 방법을 제공하는 데 있다.SUMMARY OF THE INVENTION The present invention has been made to solve such a conventional problem, and an object of the present invention is that a running target embedded system transmits a monitoring data packet in a protocol that is mutually defined with a real-time monitoring device using a high speed synchronous serial communication method. Real-time monitoring data communication method of the embedded system that can debug the CPU firmware of the target embedded system in real time or monitor the high speed execution status in real time without connecting to the address bus and data bus of the target CPU. To provide.
이러한 목적을 달성하기 위한 본 발명의 임베디드 시스템의 실시간 모니터링 데이타 통신 방법은, 타겟 임베디드 시스템이 CPU 코어의 레지스터나 메모리 내용 또는 펌웨어 내의 변수에 해당하는 8 비트 또는 16 비트, 32 비트 모니터링 변수를 8 비트 또는 16 비트 데이타 요소로 분리하여 모니터링 데이타 블록을 구성하고, 이 모니터링 데이타 블록을 기준으로 하여 생성된 모니터링 데이타 패킷을 수십 MBPS의 전송속도가 가능한 고속 동기 직렬 통신방식으로 실시간 모니터링 장비에 전송하면, 실시간 모니터링 장비는 수신된 모니터링 데이타 패킷에 모니터링 변수가 정의되어 있는 입력 파일을 적용하여 모니터링 변수를 추출하고, 이 모니터링 변수를 모니터 화면에 실시간 그래프로 표시할 뿐만 아니라 하드디스크 드라이브에 저장함을 특징으로 한다.The real-time monitoring data communication method of the embedded system of the present invention to achieve this object is that the target embedded system 8-bit or 16-bit, 32-bit monitoring variables corresponding to the variables in the register or memory content or firmware of the CPU core Alternatively, if a monitoring data block is composed by separating 16-bit data elements and the monitoring data packet generated based on the monitoring data block is transmitted to the real-time monitoring device through a high speed synchronous serial communication method capable of a transmission rate of several tens of MBPS, The monitoring equipment extracts the monitoring variables by applying the input file in which the monitoring variables are defined to the received monitoring data packet, and displays the monitoring variables on the monitor screen as well as saving them in the hard disk drive. .
이하, 본 발명의 실시예를 첨부된 도면을 참고로 하여 상세히 설명하면 다음과 같다.Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명에 따른 임베디드 시스템의 실시간 모니터링 장치의 구성도로서, 타겟 임베디드 시스템(10)은 고속 동기 직렬 통신의 주형식으로 동작하며 실시간 모니터링 장비(20)는 고속 동기 직렬 통신의 종형식으로 동작하는데, 사용자가 키보드(26)를 통하여 모니터링 시작신호를 입력하면 실시간 모니터링 장비(20)는 모니터링 데이타 패킷 전송시작신호(2)를 긍정로직 수준으로 만들어 타겟 임베디드 시스템(10)으로 출력하고, 타겟 임베디드 시스템(10)은 고유의 임베디드 프로세스를 실행한 연후에 입력된 모니터링 데이타 패킷 전송시작신호(2)가 긍정로직 수준이면 CPU 코어의 레지스터나 메모리 내용 또는 펌웨어 내의 변수에 해당하는 모니터링 변수를 기준으로 이루어진 모니터링 데이타 패킷을 생성하여 이를 고속 동기 직렬 통신방식의 디지털 클럭신호(4)와 디지털 데이타신호(6)로서 실시간 모니터링 장비(20)로 출력하고, 실시간 모니터링 장비(20)는 입력되는 고속 동기 직렬 통신방식의 디지털 클럭신호(4)와 디지털 데이타신호(6)로부터 모니터링 데이타 패킷을 추출하여 모니터 화면(22)에 모니터링 변수를 실시간 그래프로 표시하고 하드디스크 드라이브(24)에 모니터링 변수를 저장한다. 한편, 사용자가 키보드(26)를 통하여 모니터링 종료신호를 입력하면 실시간 모니터링 장비(20)는 모니터링 데이타 패킷 전송시작신호(2)를 부정로직 수준으로 만들어 타겟 임베디드 시스템(10)으로 출력하고, 타겟 임베디드 시스템(10)은 입력된 모니터링 데이타 패킷 전송시작신호(2)가 부정로직 수준이면 고유의 임베디드 프로세스만 실행하고 모니터링 데이타 패킷을 생성하지 않는다. 1 is a block diagram of a real-time monitoring device of the embedded system according to the present invention, the target embedded
고속 동기 직렬 통신의 주형식으로 동작하는 타겟 임베디드 시스템(10)은 통신데이타 크기로서 8 비트 또는 16 비트를 사용할 수 있는데, 각각의 경우에 대한 모니터링 데이타 패킷 프로토콜은 도 2와 같이, 통신데이타 크기가 8 비트인 경우에 타겟 임베디드 시스템(10)과 실시간 모니터링 장비(20)는 모든 구성요소가 각각 8 비트 데이타인 8 비트 모니터링 데이타 패킷 프로토콜(30)로 통신하는 한편, 통신데이타 크기가 16 비트인 경우에 타겟 임베디드 시스템(10)과 실시간 모니터링 장비(20)는 모든 구성요소가 각각 16 비트 데이타인 16 비트 모니터링 데이타 패킷 프로토콜(40)로 통신한다.The target embedded
먼저, 8 비트 모니터링 데이타 패킷 프로토콜(30)은 패킷시작 데이타(31)와 블록크기 데이타(32), 모니터링 데이타 블록(33), 체크섬(34) 및 패킷종료 데이타 (35)로 이루어지는데, 패킷시작 데이타(31)와 패킷종료 데이타(35)는 타겟 임베디드 시스템(10)과 실시간 모니터링 장비(20)가 상호 규정한 8 비트 값으로 되며, 블록크기 데이타(32)는 모니터링 데이타 블록(33)을 이루는 8 비트 데이타의 개수(N)를 나타내고, 모니터링 데이타 블록(33)은 N 개의 8 비트 모니터링 데이타 요소 DATA8[0],..,DATA8[N-1]로써 이루어지며, 체크섬(34)은 블록크기 데이타(32)와 모니터링 데이타 블록(33)을 구성하는 모든 모니터링 데이타 요소 DATA8[0],..,DATA8[N-1]의 산술적인 합을 나타내는 8 비트 데이타이다.First, the 8-bit monitoring
그리고, 16 비트 모니터링 데이타 패킷 프로토콜(40)은 패킷시작 데이타(41)와 블록크기 데이타(42), 모니터링 데이타 블록(43), 체크섬(44) 및 패킷종료 데이타(45)로 이루어지는데, 패킷시작 데이타(41)와 패킷종료 데이타(45)는 타겟 임베디드 시스템(10)과 실시간 모니터링 장비(20)가 상호 규정한 16 비트 값으로 되며, 블록크기 데이타(42)는 모니터링 데이타 블록(43)을 이루는 16 비트 데이타의 개수(N)를 나타내고, 모니터링 데이타 블록(43)은 N 개의 16 비트 모니터링 데이타 요소 DATA16[0],..,DATA16[N-1]로써 이루어지며, 체크섬(44)은 블록크기 데이타(42)와 모니터링 데이타 블록(43)을 구성하는 모든 모니터링 데이타 요소 DATA16[0],..,DATA16[N-1]의 산술적인 합을 나타내는 16 비트 데이타이다.16-bit monitoring
타겟 임베디드 시스템(10) CPU 레지스터의 최소 액세스 단위가 8 비트인 경우에 타겟 임베디드 시스템(10)과 실시간 모니터링 장비(20)는 8 비트 모니터링 데이타 패킷 프로토콜(30)로 통신할 수 있는데, 모니터링 변수로는 표 1과 같이 8 비트 문자변수 또는 8 비트 유/무부호 정수변수, 16 비트 유/무부호 정수변수, 32 비 트 유/무부호 정수변수 및 32 비트 IEEE-754 형식의 부동소수점 실수변수가 가능하다.The target embedded
이 경우, 타겟 임베디드 시스템(10) CPU 펌웨어의 모니터링 데이타 패킷 생성부에서, 8 비트 문자변수와 8 비트 유/무부호 정수변수는 그대로 8 비트 모니터링 데이타 블록(33)의 DATA8 요소가 되지만, 16 비트 유/무부호 정수변수는 2 개의 DATA8 요소로 분리되고, 32 비트 유/무부호 정수변수는 4 개의 DATA8 요소로 분리되며, 32 비트 IEEE-754 형식의 부동소수점 실수변수는 4 개의 DATA8 요소로 분리되어져서 8 비트 모니터링 데이타 블록(33)을 구성하게 된다.In this case, in the monitoring data packet generation unit of the target embedded
한편, 타겟 임베디드 시스템(10)과 실시간 모니터링 장비(20)가 16 비트 모니터링 데이타 패킷 프로토콜(40)로 통신할 때, 모니터링 변수로는 표 2과 같이 16 비트 유/무부호 정수변수, 32 비트 유/무부호 정수변수 및 32 비트 IEEE-754 형식의 부동소수점 실수변수가 가능하다.On the other hand, when the target embedded
이 경우, 타겟 임베디드 시스템(10) CPU 펌웨어의 모니터링 데이타 패킷 생성부에서, 16 비트 유/무부호 정수변수는 그대로 16 비트 모니터링 데이타 블록(43)의 DATA16 요소가 되지만, 32 비트 유/무부호 정수변수는 2 개의 DATA16 요소로 분리되고, 32 비트 IEEE-754 형식의 부동소수점 실수변수는 2 개의 DATA16 요소로 분리되어져서 16 비트 모니터링 데이타 블록(43)을 구성하게 된다.In this case, in the monitoring data packet generation unit of the target embedded
한편, 실시간 모니터링 장비(20)는 모니터링 데이타 패킷 프로토콜이 8 비트로 설정된 경우에 타겟 임베디드 시스템(10)으로부터 수신된 8 비트 모니터링 데이타 패킷이 통신오류가 없는 유효 데이타 패킷인지 또는 통신오류가 발생된 무효 데이타 패킷인지를 판별하여야 하는데, 우선 8 비트 모니터링 데이타 패킷 프로토콜(30)에 근거하여 수신된 모니터링 데이타 패킷으로부터 패킷시작 데이타(31)와 블록크기 데이타(32), 모니터링 데이타 블록(33), 체크섬(34) 및 패킷종료 데이타(35)을 추출한 연후에, 수신된 패킷시작 데이타(31)와 패킷종료 데이타(35)가 각각 규정되어 있는 값과 서로 일치하지 않으면 해당 통신오류 메시지를 모니터 화면(22)에 표시하고 모니터링 데이타 패킷 전송시작 신호(2)를 부정로직 수준으로 출력하여 모니터링이 종료되지만, 수신된 패킷시작 데이타(31)와 패킷종료 데이타(35)가 각각 규정되어 있는 값과 서로 일치하는 경우에는 다음 단계로, 수신된 블록크기 데이타(32)와 모니터링 데이타 블록(33)으로부터 체크섬을 계산하여 이를 수신된 체크섬(34)과 비교하여서 체크섬이 서로 일치하지 않으면 모니터 화면(22)에 통신오류 메시지를 표시하고 모니터링 데이타 패킷 전송시작 신호(2)를 부정로직 수준으로 출력하여 모니터링이 종료되며, 체크섬이 서로 일치하는 경우에만 비로소 유효한 모니터링 데이타 패킷이 수신된 것으로 판별한다.On the other hand, the real-
그리고, 실시간 모니터링 장비(20)는 모니터링 데이타 패킷 프로토콜이 16 비트로 설정된 경우에도 타겟 임베디드 시스템(10)으로부터 수신된 16 비트 모니터링 데이타 패킷이 통신오류가 없는 유효 데이타 패킷인지 또는 통신오류가 발생된 무효 데이타 패킷인지를 판별하여야 하는데, 우선 16 비트 모니터링 데이타 패킷 프로토콜(40)에 근거하여 수신된 모니터링 데이타 패킷으로부터 패킷시작 데이타(41)와 블록크기 데이타(42), 모니터링 데이타 블록(43), 체크섬(44) 및 패킷종료 데이타(45)을 추출한 연후에, 수신된 패킷시작 데이타(41)와 패킷종료 데이타(45)가 각각 규정되어 있는 값과 서로 일치하지 않으면 해당 통신오류 메시지를 모니터 화면(22)에 표시하고 모니터링 데이타 패킷 전송시작 신호(2)를 부정로직 수준으로 출력하여 모니터링이 종료되지만, 수신된 패킷시작 데이타(41)와 패킷종료 데이타(45)가 각각 규정되어 있는 값과 서로 일치하는 경우에는 다음 단계로, 수신된 블록크기 데이타(42)와 모니터링 데이타 블록(43)으로부터 체크섬을 계산하여 이를 수신된 체크섬(44)과 비교하여서 체크섬이 서로 일치하지 않으면 모니터 화면(22)에 통신오류 메시지를 표시하고 모니터링 데이타 패킷 전송시작 신호(2)를 부정로직 수준으로 출력하여 모니터링이 종료되며, 체크섬이 서로 일치하는 경우에만 비로소 유효한 모니터링 데이타 패킷이 수신된 것으로 판별한다.In addition, even if the monitoring data packet protocol is set to 16 bits, the real-
이제, 실시간 모니터링 장비(20)는 한 행에 모니터링 변수 한 개씩, 모니터링 변수명과 변수 형태 및 모니터링 데이타 요소 번호가 정의되어 있는 입력 파일을 이용하여, 수신된 유효 모니터링 데이타 패킷으로부터 모니터링 변수를 추출한다.Now, the real-
먼저, 모니터링 데이타 패킷 프로토콜이 8 비트인 경우에는 입력 파일이 표 3과 같이 한 행에 모니터링 변수 한 개씩, <변수명>과 <변수 형태> 및 <DATA8 요소 번호>를 정의하여 8 비트 모니터링 데이타 블록(33)으로부터 모니터링 변수를 추출하는데, 8 비트 문자변수와 8 비트 유/무부호 정수변수는 1 개의 DATA8 요소 번호로 구성되며, 16 비트 유/무부호 정수변수는 2 개의 DATA8 요소 번호로 구성되며, 32 비트 유/무부호 정수변수와 32 비트 IEEE-754 형식의 부동소수점 실수변수는 4 개의 DATA8 요소 번호로 구성됨에 있어서, 각각의 DATA8 요소 번호는 타겟 임베디드 시스템(10)에서 모니터링 데이타 블록(33)을 구성할 때 정해진 DATA8 요소 번호와 일치하여야 모니터링 변수 값을 제대로 추출할 수 있게 된다. First, if the monitoring data packet protocol is 8-bit, the input file defines an 8-bit monitoring data block by defining <variable name>, <variable type>, and <DATA8 element number>, one monitoring variable per line, as shown in Table 3. Extracting the monitoring variable from (33), 8-bit character variable and 8-bit unsigned integer variable consist of one DATA8 element number and 16-bit unsigned integer variable consists of two DATA8 element numbers. The 32-bit unsigned integer variable and the 32-bit IEEE-754 floating point floating point variable are composed of four DATA8 element numbers. Each DATA8 element number represents a monitoring data block (33) in the target embedded system (10). ) Must be consistent with the specified DATA8 element number to properly extract the monitoring variable values.
DATA8 요소 번호가 2 개 또는 4 개로 이루어지는 경우에 제일 왼쪽의 DATA8 요소 번호가 최상유효요소를 나타내며, 제일 오른쪽의 DATA8 요소 번호가 최하유효요소를 나타낸다. 따라서, 타겟 임베디드 시스템(10)의 CPU 코어가 little-endian 프로세서이면 제일 높은 메모리 번지에 위치한 바이트가 최상유효요소이므로 이를 제일 왼쪽의 DATA8 요소 번호가 되도록 하며, 반면에 타겟 임베디드 시스템(10)의 CPU 코어가 big-endian 프로세서이면 제일 낮은 메모리 번지에 위치한 바이트가 최상유효요소이므로 이를 제일 왼쪽의 DATA8 요소 번호가 되도록 한다. 예를 들어 표 3에서 변수 var666은 32 비트 유부호 정수변수이며 4 개의 DATA8 요소 번호 10,9,8,7로 이루어지는데, 0번부터 시작하는 모니터링 데이타 블록(33)의 10번 DATA8 요소가 최상유효요소이며 7번 DATA8 요소가 최하유효요소이다.In the case of two or four DATA8 element numbers, the leftmost DATA8 element number represents the most significant element, and the rightmost DATA8 element number represents the least significant element. Therefore, if the CPU core of the target embedded
그리고, 모니터링 데이타 패킷 프로토콜이 16 비트인 경우에는 입력 파일이 표 4과 같이 한 행에 모니터링 변수 한 개씩, <변수명>과 <변수 형태> 및 <DATA16 요소 번호>를 정의하여 16 비트 모니터링 데이타 블록(43)으로부터 모니터링 변수를 추출하는데, 16 비트 유/무부호 정수변수는 1 개의 DATA16 요소 번호로 구성되며, 32 비트 유/무부호 정수변수와 32 비트 IEEE-754 형식의 부동소수점 실수변수는 2 개의 DATA16 요소 번호로 구성됨에 있어서, 각각의 DATA16 요소 번호는 타겟 임베디드 시스템(10)에서 모니터링 데이타 블록(43)을 구성할 때 정해진 DATA16 요소 번호와 일치하여야 모니터링 변수 값을 제대로 추출할 수 있게 된다. If the monitoring data packet protocol is 16-bit, the input file defines the <variable name>, <variable type>, and <DATA16 element number>, one monitoring variable per line, as shown in Table 4. Extracting the monitoring variable from (43), the 16-bit unsigned integer variable consists of one DATA16 element number, the 32-bit unsigned integer variable and the 32-bit floating point real number in 32-bit IEEE-754 format are 2 In the data 16 element number, each DATA 16 element number must match the DATA 16 element number determined when configuring the monitoring data block 43 in the target embedded
DATA16 요소 번호가 2 개로 이루어지는 경우에 제일 왼쪽의 DATA16 요소 번호가 최상유효요소를 나타내며, 제일 오른쪽의 DATA16 요소 번호가 최하유효요소를 나타낸다. 따라서, 타겟 임베디드 시스템(10)의 CPU 코어가 little-endian 프로세서이면 제일 높은 메모리 번지에 위치한 16 비트 데이타가 최상유효요소이므로 이를 제일 왼쪽의 DATA16 요소 번호가 되도록 하며, 반면에 타겟 임베디드 시스템(10)의 CPU 코어가 big-endian 프로세서이면 제일 낮은 메모리 번지에 위치한 16 비트 데이타가 최상유효요소이므로 이를 제일 왼쪽의 DATA16 요소 번호가 되도록 한다. 예를 들어 표 4에서 변수 var555는 32 비트 IEEE-754 형식의 부동소수점 실수변수이며 2 개의 DATA16 요소 번호 7,6으로 이루어지는데, 0번부터 시작하는 모니터링 데이타 블록(43)의 7번 DATA16 요소가 최상유효요소이며 6번 DATA16 요소가 최하유효요소이다.In the case of two DATA16 element numbers, the leftmost DATA16 element number represents the most significant element, and the rightmost DATA16 element number represents the least significant element. Therefore, if the CPU core of the target embedded
한편, 실시간 모니터링 장비(20)의 입력 파일에 상기와 같이 모니터링 변수를 정의함에 있어서, 타겟 임베디드 시스템(10)에서 모니터링 데이타 블록(33,43)에 포함시켜 전송한 모니터링 변수를 입력 파일에서 모두 정의할 필요는 없고 실시간 모니터링 장비(20)에서 모니터링하려고 하는 변수만 정의하면 된다. Meanwhile, in defining the monitoring variables in the input file of the real-
그리고 입력 파일에는 또한 모니터링 데이타 패킷 프로토콜이 8 비트인지 아니면 16 비트인지 정의되어져 있기 때문에, 타겟 임베디드 시스템(10)에서 설정된 고속 동기 직렬 통신의 통신데이타 크기와 실시간 모니터링 장비(20)에서 설정된 고속 동기 직렬 통신의 통신데이타 크기가 서로 일치하지 않으면, 실시간 모니터링 장비(20)는 모니터 화면(22)에 해당 통신오류 메시지를 표시하고 모니터링 데이타 패킷 전송시작신호(2)를 부정로직 수준으로 출력한 연후에 모니터링을 종료하게 된다.In addition, the input file also defines whether the monitoring data packet protocol is 8 bits or 16 bits. Therefore, the communication data size of the high speed synchronous serial communication set in the target embedded
이상에서 설명한 바와 같이 본 발명은 타겟 임베디드 시스템과 실시간 모니터링 장비가 상호 규정된 프로토콜로 모니터링 데이타 패킷을 송수신하기 때문에 고속 동기 직렬 통신 중에 발생될 수 있는 통신오류를 차단할 수 있으며, 타겟 임베디드 시스템이 고속 동기 직렬 통신방식으로 모니터링 데이타 패킷을 전송하기 때문에 전송 시간이 매우 짧아서, 모니터링 장비는 타겟 임베디드 시스템의 고유한 프로세스 실행에 방해가 되지 않게 타겟 임베디드 시스템의 전자회로와 CPU 펌웨어를 실시간으로 디버깅하거나 고속의 실행상태를 실시간으로 모니터링할 수 있는 효과가 있다. As described above, according to the present invention, since the target embedded system and the real-time monitoring device transmit and receive the monitoring data packet through a mutually defined protocol, communication errors that may occur during high-speed synchronous serial communication can be prevented, and the target embedded system can achieve high speed synchronization Due to the very short transmission time because the monitoring data packet is transmitted in serial communication, the monitoring device can debug the electronics and CPU firmware of the target embedded system in real time or execute it at high speed without interrupting the unique process execution of the target embedded system. The effect can be monitored in real time.
그리고 타겟 임베디드 시스템이 펌웨어를 수정하여 모니터링 데이타 블록(33,43)에 모니터링 변수를 추가하거나 삭제하여서 변경된 모니터링 데이타 패킷을 전송하는 경우에는 실시간 모니터링 장비의 입력 파일을 수정하여 해당 모니터링 변수를 추가로 정의하거나 정의된 모니터링 변수를 삭제함으로써, 모니터링 데이타 패킷 프로토콜에 따라 간단하게 타겟 임베디드 시스템의 모니터링을 재개할 수 있다.If the target embedded system transmits the changed monitoring data packet by adding or deleting the monitoring variable to the monitoring data blocks 33 and 43 by modifying the firmware, the corresponding monitoring variable is further defined by modifying the input file of the real-time monitoring device. Or by deleting a defined monitoring variable, the monitoring of the target embedded system can be simply resumed according to the monitoring data packet protocol.
한편, 타겟 임베디드 시스템에서 동기 직렬 통신방식으로 SPI(Serial Peripheral Interface) 통신을 사용하면 최대 20 MBPS의 전송속도가 가능하며, 타겟 임베디드 시스템의 CPU가 8 비트 프로세서이면 통상 8 비트 SPI 통신만 지원되므로 타겟 임베디드 시스템과 실시간 모니터링 장비가 8 비트 모니터링 데이타 패킷 프로토콜을 이용하여 모니터링 데이타 패킷을 송수신할 수 있는 반면에, 타겟 임베디드 시스템의 CPU가 16 비트 SPI 통신을 지원하는 16 비트 또는 32 비트 프로 세서이면 SPI 통신모듈의 통신데이타의 크기를 16 비트로 설정하고 16 비트 모니터링 데이타 패킷 프로토콜로 통신하면 모니터링 데이타 패킷의 전송시간을 단축할 수 있다.On the other hand, when using SPI (Serial Peripheral Interface) communication in the target embedded system, a maximum transmission speed of 20 MBPS is possible.If the CPU of the target embedded system is an 8-bit processor, only 8-bit SPI communication is normally supported. While embedded systems and real-time monitoring devices can send and receive monitoring data packets using the 8-bit monitoring data packet protocol, SPI communications if the target embedded system's CPU is a 16-bit or 32-bit processor that supports 16-bit SPI communications. By setting the communication data size of the module to 16 bits and communicating with the 16-bit monitoring data packet protocol, the transmission time of the monitoring data packet can be shortened.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060020202A KR100750477B1 (en) | 2006-03-03 | 2006-03-03 | Data communication method for real-time monitoring of embedded systems |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060020202A KR100750477B1 (en) | 2006-03-03 | 2006-03-03 | Data communication method for real-time monitoring of embedded systems |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100750477B1 true KR100750477B1 (en) | 2007-08-22 |
Family
ID=38614863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060020202A KR100750477B1 (en) | 2006-03-03 | 2006-03-03 | Data communication method for real-time monitoring of embedded systems |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100750477B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140052528A (en) * | 2012-10-24 | 2014-05-07 | 삼성전자주식회사 | Fuel cell system and electronic device controlling the same |
KR101457086B1 (en) * | 2012-11-30 | 2014-11-12 | 한국전자통신연구원 | Apparatus for integrity verification of firmware of embedded system and method thereof |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010106193A (en) * | 2001-04-25 | 2001-11-29 | 변성호 | A cover for handle of automobile |
KR20050023262A (en) * | 2002-05-13 | 2005-03-09 | 이노베이티브 콘셉츠 인코포레이티드 | Improved data modem |
-
2006
- 2006-03-03 KR KR1020060020202A patent/KR100750477B1/en not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010106193A (en) * | 2001-04-25 | 2001-11-29 | 변성호 | A cover for handle of automobile |
KR20050023262A (en) * | 2002-05-13 | 2005-03-09 | 이노베이티브 콘셉츠 인코포레이티드 | Improved data modem |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20140052528A (en) * | 2012-10-24 | 2014-05-07 | 삼성전자주식회사 | Fuel cell system and electronic device controlling the same |
KR101457086B1 (en) * | 2012-11-30 | 2014-11-12 | 한국전자통신연구원 | Apparatus for integrity verification of firmware of embedded system and method thereof |
US9021609B2 (en) | 2012-11-30 | 2015-04-28 | Electronics And Telecommunications Research Institute | Apparatus and method for verifying integrity of firmware of embedded system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9934187B2 (en) | Hot-pluggable computing system | |
US20190146944A1 (en) | Dynamically adjustable multi-line bus shared by multi-protocol devices | |
KR101496672B1 (en) | Mobile Industry Processor Interface | |
US20150370735A1 (en) | Dynamically adjustable multi-line bus shared by multi-protocol devices | |
CN104809094A (en) | SPI (Serial Peripheral Interface) controller and communication method for SPI controller | |
CN100559331C (en) | The control system of supervisory keyboard-screen-mouse switching device and method thereof | |
US9292411B2 (en) | Wireless debugging and updating of firmware | |
WO2022161244A1 (en) | Multi-host arbitration method and apparatus, and readable storage medium | |
US20190356412A1 (en) | Fast termination of multilane double data rate transactions | |
CN114721992B (en) | Server and server management system thereof | |
CN109271177A (en) | A kind of method and system of automatic load PCIE Switch products configuration parameter | |
KR100750477B1 (en) | Data communication method for real-time monitoring of embedded systems | |
CN105607940A (en) | Method for transmitting information to UEFI BIOS from BDK in ARM platform | |
CN110968352A (en) | PCIE equipment resetting system and server system | |
CN107480085A (en) | Multiplex roles integrated test system | |
CN112579495B (en) | GPIO controller | |
TW201435600A (en) | System and method for integrating thunderbolt chipset to PCIe card | |
CN111431973B (en) | UART-based program online downloading system and method for practical teaching of computer system | |
CN111274193A (en) | Data processing apparatus and method | |
TWI761624B (en) | Addressing method for integrated circuit chip and system thereof | |
EP2677438B1 (en) | Host electronic device and host determination method | |
CN112445657A (en) | Circuit switching method and system supporting fault removal | |
JP7260597B2 (en) | System and method for monitoring serial communication between devices | |
CN104572423A (en) | Debugging system and debugging device and method thereof | |
CN113760809B (en) | Configuration method, system and device of GPIO interface and readable storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |