KR20050052537A - 버스 상에 데이터를 전송하기 위한 방법 - Google Patents

버스 상에 데이터를 전송하기 위한 방법 Download PDF

Info

Publication number
KR20050052537A
KR20050052537A KR1020057006517A KR20057006517A KR20050052537A KR 20050052537 A KR20050052537 A KR 20050052537A KR 1020057006517 A KR1020057006517 A KR 1020057006517A KR 20057006517 A KR20057006517 A KR 20057006517A KR 20050052537 A KR20050052537 A KR 20050052537A
Authority
KR
South Korea
Prior art keywords
data
block
frame
transmitted
sink
Prior art date
Application number
KR1020057006517A
Other languages
English (en)
Other versions
KR101001074B1 (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 KR20050052537A publication Critical patent/KR20050052537A/ko
Application granted granted Critical
Publication of KR101001074B1 publication Critical patent/KR101001074B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/407Bus networks with decentralised control
    • H04L12/413Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
    • H04L12/4135Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD] using bit-wise arbitration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40215Controller Area Network CAN
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40267Bus for use in transportation systems
    • H04L2012/40273Bus for use in transportation systems the transportation system being a vehicle
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Small-Scale Networks (AREA)
  • Communication Control (AREA)
  • Information Transfer Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

데이터 소스(1)로부터, 가변성의 제한된 수(n)의 데이터 요소를 갖는 프레임의 전송을 지원하는 버스(5) 상의 데이터 싱크(8)로, 데이터 블록을 전송하기 위한 방법은 a) 데이터 싱크(8)로부터 데이터 소스(1)로 전송될 블록 내에 포함된 데이터 요소의 적어도 하나의 수(N)를 특정화시키는 제어 정보를 보내는 단계(S2)와, b) N > n이라면, 전송될 블록의 각각의 n 데이터 요소를 갖는 프레임 int(N/n) 및 데이터 소스(1)로부터 데이터 싱크(8)로 전송될 블록의 (N 나머지 연산자 n) 데이터 요소를 갖는 프레임을 보내는 단계(D4)와, c) 단계 b)에 수신된 데이터 요소의 수가 제어 정보 내에 특정화된 수(N)와 일치한다면, 데이터 싱크(8)를 통해 완료 (S9)로서 블록의 전송을 확인하는 단계를 포함하고, 상기 int(N/n)은 N/n보다 작거나 동일한 가장 큰 정수이다.

Description

버스 상에 데이터를 전송하기 위한 방법 {METHOD FOR TRANSMITTNG DATA ON A BUS}
본 발명은 데이터 소스로부터, 가변성의 제한된 수의 데이터 요소를 갖는 프레임의 전송을 지원하는 버스 상의 데이터 싱크로, 데이터 블록을 전송하기 위한 방법에 관한 것이다. 그러한 블록의 데이터 요소의 수가 프레임 내에서 최대 전송 가능한 데이터 요소의 수보다 크다면, 블록은 복수의 프레임 상으로 분배되어 전송되어야만 한다. 이러한 프레임을 수신하는 데이터 싱크는 이로 인해 복구되어야 한다.
블록의 바람직한 복구는, 데이터 소소로부터 데이터 싱크로 전송에서 프레임이 인식되지 못한 채 유실될 수 있다면 또는 블록의 전송에서 마지막 프레임을 나타내는 프레임이 그와 같이 인식되지 못하고 그리고 추가로 데이터 싱크로부터 나중에 수신되는 프레임이 동일한 블록에 배열된다면, 불가능하다.
하나의 프레임에 완전히 적합하지 않는 다량의 데이터 블록이 전송되야 하는 이러한 문제점은, 특히 CAN 표준에 기초한 데이터 처리 시스템을, 예를 들면 차량 기술 분야를 위한 제어 장치를 전개시킬 때 발생된다. CAN 표준은, 작은 데이터 양을, 주어진 시간 간격 내에서 센서로부터 제어 장치로 또는 제어 장치로부터 차량 엔진의 작동 상태에 영향을 주는 액츄에이터로 또는 차량의 다른 유닛으로 전송하는 데 매우 적합하다. 그러나 그러한 시스템을 전개시키고 최적화하는 과정에서, 주 연산기와의 상호 소통에서 전개부가 제어 장치의 작동 방식을 보정하고 상세하게 추적할 수 있도록 제어 장치와 전개 매체의 주 연산기 사이에 다량의 데이터 양이 전송되는 것이 종종 필수적이다.
CAN 버스를 통한 그러한 데이터 양의 전송은 상당한 오버헤드(overhead)를 필요로 하고 CAN 버스의 전송 능력의 부하를 증가시키게 된다. 제어 장치에 의해 실현되는 제어 목적을 위해 필수적인 소통 프로세스가 전송 능력과 경쟁하는 경우가 발생하는, 주 연산기와 제어 장치의 소통이 다른 한편으로는 버스 상에서 발생한다면, 전송 능력은 이 모든 목적을 위해 충분하지 않고 장치의 기능성이 손상받는 일이 발생할 수 있다.
도1은 본 발명에 따른 방법을 사용할 수 있는 예시적인 데이터 처리 시스템의 블록도이다.
도2는 CAN 프레임의 구조이다.
도3은 도1의 제어 장치에 의해 본 발명에 따른 방법의 프레임 내에서 실행되는 처리의 흐름도이다.
도4는 주 연산기에 의해 실행되는 처리의 흐름도이다,
본 발명에 의하면, 매우 작은 오버헤드로써 달성되고 따라서 버스 상에서 사용되는 대역폭을 효과적으로 사용하는, 데이터 소스와 데이터 싱크 사이의 버스 상으로 데이터 블록을 전송하기 위한 방법이 제공된다. 본 방법은 수신될 소스로부터 예상되는 포맷, 특히 데이터 블록의 데이터 요소의 수를 특정화시키는 데이터 싱크에 관한 것이다. 이러한 요소 수는 버스 시스템에 의해 지원되는 각각의 프레임 내로 전송 가능한 데이터 요소의 수보다 클 수 있다. 이러한 경우라면, 블록의 데이터 요소는 복수의 프레임 상으로 분배되야 하고 그리고 프레임은 버스 상에서 싱크로 전송된다. N이 전송될 블록의 데이터 요소의 수이고, 프레임 내에서 최대 전송 가능한 n은 데이터 요소의 수라면, 블록은 int(N/n) 프레임을 완전히 채우고, 여기에서 int(N/n)은 N/n보다 작거나 동일한 가장 큰 정수이다. 이러한 완전히 채워진 프레임이 전송된다면, 이어서 또한 (N 나머지 연산자 n) 데이터 요소를 포함하는 프레임이 전송된다. N 나누기 n이 나머지 없이 나누어진다면, 이러한 마지막 프레임의 데이터 요소의 수는 또한 0이다. 데이터 요소로부터 가장 높은 수(n)보다 작은 수를 갖는 프레임이 수신된다는 사실로부터, 데이터 싱크는 블록의 마지막 프레임이라는 결론을 내릴 수 있다. 실질적으로 수신된 데이터 요소의 수와 예상되는 수(N)를 비교하는 것은 블록이 완전히 수신되었는 지를 데이터 싱크 측 상에서 판단할 수 있게 한다.
전송될 블록의 데이터 요소의 수(N)가 프레임 내에서 전송 가능한 데이터 요소의 수(n)보다 작다면, 상기 설명된 방법은 불변의 원칙으로 사용 가능하다. int(N/n) = 0인 경우에, 데이터 싱크에 의해 블록의 마지막 프레임으로서 직접 확인된 N 데이터 요소를 갖는 단지 하나의 프레임만이 전송된다.
블록의 데이터 요소의 수(N)가 프레임의 데이터 요소의 수(n)와 일치한다면, 바람직한 특수 제어가 가능하다. 이는 데이터 싱크가 블록의 전송될 데이터 요소의 수를 특정화시키고 이를 인식할 수 있기 때문인데, 데이터 싱크가 블록을 수신한다면, 이는 그 안에 포함된 블록에 완전히 도착하는 프레임의 완전 수신 후 이미 직접 확인할 수 있다. 이는 유실될 가능성이 있고 다른 방식으로 오류를 갖도록 전송될 수 있는 어떠한 추가의 프레임도 전달될 수 없기 때문인 데, 이러한 경우, 싱크가 블록의 완전한 전송을 나타내도록 데이터 요소가 없는 프레임을 전송하는 것은 필수적이지 않다.
바람직하게, 데이터 싱크로부터 데이터 소스로 전송되는 제어 정보는 전송될 블록의 요소의 수 뿐만 아니라, 시점(즉, 주기적인 전송의 경우에서 시점) 및 기술 방식과 전송될 파라미터의 의미를 특정화시킨다.
본 발명의 추가의 특징 및 이점은 첨부된 도면을 참조하여 실시예의 다음의 설명으로부터 명백해질 것이다.
도1의 블록도는 본 발명에 따른 데이터 처리 시스템을 위한 예로서 제어기를 위한 전개 매체, 특히 차량 제어 장치를 도시된다. 이러한 제어 장치(1)는 마이크로 프로세서(2), 메모리 모듈(3) 및 버스, 특히 CAN 버스(5)로의 인터페이스(4)를 포함하고, 인터페이스에는 차량의 작동 파라미터의 측정값이 버스(5)를 거쳐 제어 장치(1)로 전달되고 그리고/또는 제어 장치(1)로부터의 명령을 수용하고 실행하는 차량의 복수의 기능 유닛(6)이 연결된다. 기능 유닛은 예를 들면, 크랭크 축의 회전각에 대한 측정값을 제어 장치(1)로 전달하는 엔진의 크랭크 축에서의 회전각 센서 또는 감지 가능한 회전 각도의 측정값으로부터 제어 장치(1)에 의해 유도된 점화 명령을 수신하는 엔진의 점화 플러그이다. 기능 유닛은 본원에서 상세하게 설명되지 않을 다양한 다른 측정 및 제어 목적을 수행할 수 있다.
제어 장치(1)가 시험 및 전개의 단계인 상태일 동안, CAN 버스(5)에 인터페이스(7)가 연결되고, 이를 통해 전개 매체의 주 연산기(8)는 제어 장치(1)와 소통할 수 있다.
이러한 주 연산기(8)에 의해 예를 들면 다양한 기능 유닛(6)으로부터 제어 장치(1)에 수집되고 메모리 모듈(3)에 저장된 데이터는 판독될 수 있고 마이크로 프로세서(2)의 작동 방식을 판단할 수 있어 마이크로 프로세서(2)의 제어 프로그램에서의 변경을 통해 작동 방식의 최종 오류를 제거할 수 있는 전개부로 보내질 수 있다.
마이크로 프로세서(2)가 기능 유닛(6)과 소통할 때, 일반적으로 작은 데이터 양이 엄격한 시간적 요구 조건 하에서 전송된다. 즉, 기능 유닛(6) 중 하나가 파라미터 값을 전달한다면, 전송의 효율성을 개선하도록, 제어 장치(1)는 주어진 짧은 시간으로 이와 반응해야 하고 예를 들면 기능 유닛의 복수의 측정값이 수집되고 이러한 복수의 측정값이 오버헤드 정보(Overhead Information) 세트를 갖는 유닛으로서 전송되는 것은 불가능하다. 이러한 이유로 CAN 버스 프로토콜은 전체 전송 데이터 양에서 오버 헤드 할당이 매우 높지만, 짧은 지연을 갖는 데이터 전송을 가능하게 하는 최대 8 바이트(byte)의 사용 가능한 데이터 콘텐츠를 갖는 비교적 짧은 프레임을 사용한다.
이해하기 쉽게 하기 위해, 도2에 CAN 프레임의 구조가 상세하게 도시된다. 각각의 시작 비트(S)는 프레임의 개시부를 나타낸다. 그 위에, 관련된 CAN 프레임의 사용 가능한 데이터가 결정되는 CAN 버스(5)에 연결된 장치[제어 장치(1) 또는 이들 상으로 진행하는 각각의 프로세스, 또는 주 연산기(8) 또는 이들 상으로 진행하는 프로세스의 기능 유닛(6) 중 하나]의 확실한 명칭을 포함하는 ID 필드가 준비된 11 비트가 온다.
본 발명에서는 중요하지 않고 추가로 자세하게 설명되지 않을 CAN 프레임의 특성을 특정화하는 3개의 스테이터스 플래그(F, statusflag)가 이에 연결된다.
이 다음에 L 필드가 준비된 4 비트는 CAN 프레임 내에 포함된 사용 가능한 데이터 바이트의 수 특정화한다. 이러한 수는 0 바이트와 8 바이트 사이에 존재할 수 있다.
연결된 DATA 부분의 길이는 L 필드 내에 주어진 바이트 수에 상응한다.
CRC 테스트 토탈 필드(Test Total Field)가 준비된 16 비트는 통상적으로 존재하는 필드 내에서 발생하는 전달 오류를 확인하고 제거할 수 있다. 다음에는 두개의 ACK 작동 비트와 프레임의 마지막을 나타내는 비트 패턴을 갖는 ELF 필드가 준비된 7 비트가 온다. 그 다음의 프레임의 개시부까지는 정보를 전송하지 않는 1 내지 3 비트가 삽입될 수 있다.
CAN 프로토콜이 짧은 반응 시간을 갖는 보다 작은 데이터 양의 전달에서 양호하게 적용되는 동안, 각각의 CAN 프레임에서는 적합하지 않는 상호 관련된 큰 데이터 양이 전달되야 한다면 문제를 발생시킨다. 이는 버스(5) 상으로 보내지는 각각의 데이터 소스 측에서 복수의 프레임 상으로 분배되고 그리고 이를 수신하는 싱크 측에서 다시 완전히 그리고 올바른 순서로 조합된다. 이는, 아이덴티피케이션 부분(ID)의 전달시 오류에 의해 데이터 싱크가 이를 위한 소정 프레임에서 동일한 것으로 인식되지 않고 무시된다면, 동일한 이유로 프레임을 이를 위한 소정의 프레임으로서 잘못 이해한다면, 종방향의 필드 L의 수신 시 오류가 발생된다면, 특히 실패할 수 있고, 사용 가능한 데이터는 잘못 전달되거나 또는 그와 같이 된다. 이를 회피하고 또는 그러한 오류를 적어도 인식하고 그리고 방지할 수 있도록, 통상적인 시스템에서 각각의 프레임의 8개의 사용 가능한 데이터 바이트 중 하나는 데이터 싱크가 그로부터 수신되는 프레임 다음의 갭 또는 잘못 그에 배열된 프레임을 인식할 수 있는 시리얼 넘버를 전송하도록 조치할 수 있다. 그러한 시리얼 넘버의 전송은 보충적인 오버헤드 할당을 증가시키고 데이터 전송의 효율성을 감소시킨다.
이러한 단점을 대처하기 위해, 본 발명은 데이터 싱크의 복수 전송 목적에서 전송될 데이터 세트의 크기가 우선 인식된다는 특징을 갖는다. 측정 데이터 또는 제어 장치(1)의 다른 작동 파라미터가 주 연산기(8)로 전송된다면, 이는 도1의 경우에서와 같이 특히 데이터 처리 시스템 내에 존재한다. 이는 제어 장치(1)에 의해 전송될 데이터가 "인식"되고 그러한 크기의 데이터를 인식하는 사전 지시된 주 연산기(8)의 동기부 상에 일반적으로 발생된다. 마지막의 데이터 블록이 종결된 것으로 간주되도록 주 연산기가 제어 장치에 의해 지시를 수신받는다면, 전송 오류가 발생한지를 확인하기 위해, 그로부터 사전 인식된 크기와 실제적으로 블록 내로 수신되는 데이터의 크기를 충분히 비교할 수 있고, 예상되는 것과 수신된 데이터 양이 일치 할 때 전송은 보다 효과적으로 승인된다.
위에 설명된 법칙에 따라 상호 작용할 수 있는 제어 장치(1)와 주 연산기(8)의 작동 방법은 도3 및 도4의 흐름도를 참조하여 설명된다.
도3은 본원에서 주 연산기(8)의 예를 참조한 데이터 싱크의 작동 방식을 도시하고, 도4는 데이터 소스, 즉 제어 장치(1)의 작동 방식이 도시된다.
단계(S1)에서, 전개부는 제어 장치(1)로부터 주 연산기(8) 내로 전송되야 하는 데이터 블록의 구조를 주 연산기(8)와 상호 소통하게 한정한다. 이러한 구조의 한정부는 나중에 전송될 프레임이 주 연산기 상으로 진행될 프로세스에 대해 배열될 수 있게 하는 아이엔티피케이터(ID)의 값을 각각 고정하는 것을 포함하고, 이는 필수적이다. 또한, 전송될 파라미터를 고정하고, 즉 컨텐츠를 주 연산기(8)로 전송해야 하는 레지스터의 리스트 또는 제어 장치(1)의 메모리 모듈(3)의 저장 위치를 고정하고, 이러한 파라미터가 전송되야 하는 순서를 고정한다. 마지막으로, 관련된 저장 위치의 판독이 발생해야 하는 시점이 고정된다. 시점은 각각의 절대적으로 고정된 시점일 수 있고, 이는 외부의 조건의 발생에 대해, 예를 들면 소정의 방해의 해결에 따라 특정화된 지연과 함께 소정 시간적 관계를 통해 한정될 수 있고, 또는 특정화된 주기를 갖는 주기적인 전송이 제공될 수 있다.
단계(S2)에서, 고정된 제어 정보가 제어 장치(1)로 전송된다. 편의상 전송될 제어 정보(8)의 크기는 8 바이트를 초과하지 않도록 채택되어야만 하고, 따라서, 제어 정보는 각각의 통상적인 CAN 프레임 내로 전송될 수 있다. 전송될 제어 정보가 8 바이트 이상을 포함한다면, 다음의 데이터 소스로부터 테이터 싱크로 데이터 블록의 전송을 위한 설명된 방법은 또한 데이터 싱크로부터 데이터 소스로의 제어 정보의 전송을 위해 사용된다.
제어 정보는 데이터 소스에 의해 본원에서 제어 장치(1)로 수신된다[도4의 단계(D1)]. 그 동안 데이터 싱크는 데이터의 제1 블록의 수신부 상으로 제공되고, 블록에서는 카운터 N(t) = 0을 삽입한다(단계 S3). 이어서, 대기 상태(S4)로 이행되고, 이 단계에서는 CAN 버스(5)를 통해 프레임의 도착을 기다린다.
유사하게, 데이터 소스는 레지스터를 판독하도록 제어 정보 내에 특정화되는 시점을 기다린다(D2). 주어진 시점에서, 이는 레지스터의 판독으로써 시작되고 CAN 프레임의 헤드 부분(H)을, 즉 도2에서 S로부터 L까지 나타낸 부분을 주 연산기(8)로 보낸다. 이는 단계(S5)에서 헤드 부분(H)으로 전송될 아이덴티피케이터(ID)가, 예상된 것과 일치하는 지를 검사한다. 일치하지 않는다면, 주 연산기(8)는 대기 상태(S4)로 돌아가거나 또는 아이덴티피케이터(ID)가 마찬가지로 이에 의해 실행되는 다른 프로세스에 상응한다면 다른 처리 프로세스로 분기된다.
그 동안, 제어 장치는 프레임의 데이터 바이트를 단계(S4)로 보낸다. 이어지는 단계(D5)에서 제어 장치는 블록의 한정부에 따라 보내질 데이터 바이트가 추가로 있는 지를 검사한다. 그러한 경우가 아니라면, CAN 프레임, 즉 CRC 부분으로부터 EOF 부분까지의 꼬리 부분(trailer, 꼬리부)이 단계(S6)로 보내진다(D6). 단계(S7)에서, 블록의 바이트 수(N)가 n에 의해 다양하게 또는 n에 의해 나눌 때 나머지가 없이 나누어지는 지를 검사한다. 이러한 조건이 만족된다면, 단계(S8)에서 사용 가능한 데이터가 없는 프레임이 보내지고, 보내질 블록이 단지 하나라면, 상기 방법 전에 단계(D2)로 돌아간다. 그렇지 않다면, 상기 방법은 바로 종결되거고 또는 빈 프레임을 보내지 않고 D2로 바로 돌아간다.
데이터 바이트가 보내질 수 있도록 검사가 단계(D5)에 이른다면, 상기 방법은 전송 중인 프레임 내로 추가의 바이트가 전송되야 하는 지를 검사하는 단계(D9)로 다시 간다. 전송되야 한다면, 상기 방법은 바이트를 보내도록 단계(D4)로 돌아가고, 전송되지 않아도 된다면, 꼬리 부분이 단계(D10)로 보내지고, 상기 방법은 추가의 프레임의 헤드 부분의 전송을 시작하도록 단계(D3)로 돌아간다.
단계(S5)에서 주 연산기(8)가 프레임의 아이덴티피케이터를 정확하다고 간주한다면, 단계(S6)에서 데이터 바이트를 수신하고 수신된 바이트의 카운터 N(t)를 증가시킨다. 이어서, 단계(S7)에서 이러한 프레임 내에 포함된 사용 가능한 데이터 바이트의 헤드 부분(H)의 종방향 필드(L)에 주어진 수 n(t)를 사용 가능한 바이트의 최대 허용 가능한 수 n =8과 비교한다. 모든 값이 일치한다면, 상기 방법은 주 연산기가 블록을 한정하는 단계(S1)로부터 인식된 전송될 블록에 포함된 데이터 바이트(N)의 전체 수를, 프레임의 최대 허용 가능한 바이트 수(n)와 비교하는 단계(S8)로 분기한다. 모두가 일치하지 않는다면, 추가의 CAN 프레임의 전송이 예상될 수 있고, 동일한 블록의 추가의 바이트가 이송되는 것은 명백하고 그리고 상기 방법은 단계(S4)의 대기 상태로 돌아간다. 그러나, 단계(S7)에서 동일하다는 것이 확인된다면, 이는 블록에서 전체적으로 단지 ≤ 8의 데이터 바이트를 포함한다는 것은 명백하고, 따라서 전송은 완료된다. 이러한 경우에, 상기 방법은 수신된 데이터 바이트의 처리를 위해 단계(S9)로 간다.
실제적인 프레임 내에 전달되는 비트 수 n(t)를 최대 허용 가능한 비트 수(n)로 주 연산기(8)가 단계(S7)에서 확인한다면, 이는 블록의 마지막 프레임이 명백하다. 주 연산기(8)는 단계(S9)로부터 이러한 블록의 지금까지 수신된 데이터 바이트의 수 N(t)와 단계(1)에 관련된 한정부에 따른 바이트 수(N)와 비교한다. 동일하지 않다면, 오류가 발생하고 상기 방법은 예를 들면 전체 블록이 버려지고 또는 블록의 새로운 전송이 제공될 수 있는 오류 처리 루틴으로 분기되야 한다. 일치한다면, 블록은 올바른 수신으로 간주되고 단계(S9)에서 처리된다.
이어서 상기 방법은 바이트 카운터 N(t)를 새롭게 0으로 삽입하도록 단계(S3)로 돌아가고 추가의 데이터 블록의 전송을 기다린다.
상기 방법에 의해, 복수의 사용 가능한 테이터 비트를 포함하는 서로 관련된 사용 가능한 데이터 블록의 전송시 CAN 프레임으로서 감지 가능하고, 이는 CAN 프레임의 전체 전송 능력을 이러한 사용 가능한 데이터의 전송에 대해 사용할 수 있고 어떠한 보충적인 사용 가능한 데이터-전송 능력이 제어 정보의 전송을 위해 제거될 필요가 없다. 상기 방법은 CAN 버스 상으로 데이터 전송과 관련된 현행 기준에 적합하다.

Claims (6)

  1. 데이터 소스(1)로부터, 가변성의 제한된 수(n)의 데이터 요소를 갖는 프레임의 전송을 지원하는 버스(5) 상의 데이터 싱크(8)로, 데이터 블록을 전송하기 위한 방법이며,
    a) 데이터 싱크(8)로부터 데이터 소스(1)로 전송될 블록 내에 포함된 데이터 요소의 적어도 하나의 수(N)를 특정화시키는 제어 정보를 보내는 단계(S2)와,
    b) N > n이라면, 전송될 블록의 각각의 n 데이터 요소를 갖는 프레임 int(N/n) 및 데이터 소스(1)로부터 데이터 싱크(8)로 전송될 블록의 (N 나머지 연산자 n) 데이터 요소를 갖는 프레임을 보내는 단계(D4)와,
    c) 단계 b)에 수신된 데이터 요소의 수가 제어 정보 내에 특정화된 수(N)와 일치한다면, 데이터 싱크(8)를 통해 완료(S9)로서 블록의 전송을 확인하는 단계를 포함하고,
    상기 int(N/n)은 N/n보다 작거나 동일한 가장 큰 정수인 방법.
  2. 제1항에 있어서, N = n이라면, 데이터 소스(1)는 N 데이터 요소를 갖는 각각의 프레임을 보내고 데이터 싱크(8)는 각각의 프레임의 수신 후에 이미 완료(S8)로서 확인하는 것을 특징으로 하는 방법.
  3. 제1항 또는 제2항에 있어서, 데이터 소스(1)는 제어 정보에서 특정화되는 시점에 블록을 보내는 것을 특징으로 하는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 데이터 소스(1)는 제어 정보 내에 특정화된 복수의 파라미터로 블록을 구성하는 것을 특징으로 하는 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서, 버스는 CAN 버스인 것을 특징으로 하는 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서, 제어기 절환부를 위한 전개 매체가 사용되고, 데이터 소스(1)는 제어기 절환부이고 데이터 싱크는 주 연산기(8)인 방법.
KR1020057006517A 2002-10-18 2003-10-17 버스 상에 데이터를 전송하기 위한 방법 KR101001074B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE10248672.7A DE10248672B4 (de) 2002-10-18 2002-10-18 Verfahren zur Übertragung von Daten auf einem Bus
DE10248672.7 2002-10-18

Publications (2)

Publication Number Publication Date
KR20050052537A true KR20050052537A (ko) 2005-06-02
KR101001074B1 KR101001074B1 (ko) 2010-12-14

Family

ID=32049426

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057006517A KR101001074B1 (ko) 2002-10-18 2003-10-17 버스 상에 데이터를 전송하기 위한 방법

Country Status (8)

Country Link
US (1) US7466757B2 (ko)
EP (1) EP1574004B1 (ko)
JP (1) JP4511358B2 (ko)
KR (1) KR101001074B1 (ko)
CN (1) CN100566333C (ko)
AU (1) AU2003281957A1 (ko)
DE (2) DE10248672B4 (ko)
WO (1) WO2004039030A2 (ko)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10254580A1 (de) * 2002-11-22 2004-06-03 Robert Bosch Gmbh Verfahren und Vorrichtung zur Übertragung von Daten in Nachrichten auf einem Bussystem
US7296129B2 (en) 2004-07-30 2007-11-13 International Business Machines Corporation System, method and storage medium for providing a serialized memory interface with a bus repeater
US7512762B2 (en) 2004-10-29 2009-03-31 International Business Machines Corporation System, method and storage medium for a memory subsystem with positional read data latency
US7305574B2 (en) * 2004-10-29 2007-12-04 International Business Machines Corporation System, method and storage medium for bus calibration in a memory subsystem
US7331010B2 (en) 2004-10-29 2008-02-12 International Business Machines Corporation System, method and storage medium for providing fault detection and correction in a memory subsystem
JP4594124B2 (ja) * 2005-02-07 2010-12-08 ルネサスエレクトロニクス株式会社 通信システム及び通信方法
US7478259B2 (en) 2005-10-31 2009-01-13 International Business Machines Corporation System, method and storage medium for deriving clocks in a memory system
US7685392B2 (en) 2005-11-28 2010-03-23 International Business Machines Corporation Providing indeterminate read data latency in a memory system
US7669086B2 (en) 2006-08-02 2010-02-23 International Business Machines Corporation Systems and methods for providing collision detection in a memory system
US7539842B2 (en) * 2006-08-15 2009-05-26 International Business Machines Corporation Computer memory system for selecting memory buses according to physical memory organization information stored in virtual address translation tables
US7870459B2 (en) 2006-10-23 2011-01-11 International Business Machines Corporation High density high reliability memory module with power gating and a fault tolerant address and command bus
US7721140B2 (en) 2007-01-02 2010-05-18 International Business Machines Corporation Systems and methods for improving serviceability of a memory system
GB0723039D0 (en) * 2007-11-23 2008-01-02 Itw Ltd System,controller and method for synchronized capture and synchronized playback of data
US9582452B2 (en) * 2013-06-05 2017-02-28 The Boeing Company Sensor network using pulse width modulated signals
WO2015042540A1 (en) 2013-09-23 2015-03-26 Farmobile, Llc Farming data collection and exchange system
JP7269113B2 (ja) * 2019-06-28 2023-05-08 ファナック株式会社 Plc装置、及び制御装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0563632A (ja) * 1991-08-29 1993-03-12 Nec Commun Syst Ltd ページヤーメツセージ分割送信方式
JP3473975B2 (ja) * 1993-09-08 2003-12-08 株式会社日立製作所 ネットワークシステムおよびネットワークにおける通信方法
JPH07262152A (ja) * 1994-03-24 1995-10-13 Hitachi Ltd コンピュータシステム
US6131809A (en) * 1997-11-28 2000-10-17 Diebold, Incorporated Control system communication apparatus and method for currency recycling automated banking machine
JP3169350B2 (ja) * 1997-12-26 2001-05-21 三菱電機株式会社 パケット伝送システムおよびパケット伝送方法
JP2000151737A (ja) * 1998-06-10 2000-05-30 Matsushita Electric Ind Co Ltd デ―タ送信装置及びデ―タ受信装置
US6434432B1 (en) * 1999-09-15 2002-08-13 Koninklijke Philips Electronics N. V. Method for writing back message ID information to a match ID register and a CAN microcontroller that implements this method
US6732254B1 (en) * 1999-09-15 2004-05-04 Koninklijke Philips Electronics N.V. Can device featuring advanced can filtering and message acceptance
US6732255B1 (en) 1999-09-15 2004-05-04 Koninklijke Philips Electronics N.V. Can microcontroller that permits concurrent access to different segments of a common memory by both the processor core and the DMA engine thereof
JP2001101091A (ja) * 1999-09-30 2001-04-13 Fuji Xerox Co Ltd 画像処理システム、画像処理装置及びプロキシサーバ装置

Also Published As

Publication number Publication date
CN1706170A (zh) 2005-12-07
EP1574004A2 (de) 2005-09-14
CN100566333C (zh) 2009-12-02
EP1574004B1 (de) 2008-03-19
DE10248672B4 (de) 2016-02-11
AU2003281957A1 (en) 2004-05-13
DE10248672A1 (de) 2004-04-29
WO2004039030A3 (de) 2004-08-12
JP2006503510A (ja) 2006-01-26
WO2004039030A2 (de) 2004-05-06
JP4511358B2 (ja) 2010-07-28
DE50309435D1 (de) 2008-04-30
US7466757B2 (en) 2008-12-16
US20060104371A1 (en) 2006-05-18
KR101001074B1 (ko) 2010-12-14

Similar Documents

Publication Publication Date Title
KR20050052537A (ko) 버스 상에 데이터를 전송하기 위한 방법
KR101956940B1 (ko) 메모리 크기에 매칭하여 직렬 데이터 전송을 하는 방법 및 장치
JP3115322B2 (ja) メッセージの形成方法
US5845085A (en) System for receiving a data stream of serialized data
US20030226065A1 (en) Controller area network controller for making a self-diagnosis of a function
US7664898B2 (en) Method and system for efficient framing on addressed buses
US5889817A (en) Communication system with data comparison circuit
KR100478112B1 (ko) 패킷 제어 시스템 및 통신 방법
JPH08163151A (ja) シリアル通信装置
EP0893019B1 (en) Multiplex communication interface circuit and method
US20010034799A1 (en) Packet transmission/reception processor
US5721891A (en) Detection of N length bit serial communication stream
US6643816B1 (en) Transmitting apparatus and error handling method in transmitting apparatus
JPH07273781A (ja) 多重伝送装置
JP3639455B2 (ja) 多重通信装置
EP2005665B1 (en) Method and device for data packet assembly
JP2002236659A (ja) 車両用電子制御装置
JP3512278B2 (ja) シリアル通信処理装置
US20240126629A1 (en) Semiconductor device and serial communication interface control method
CN117687950A (zh) 一种串行传输方法、电子设备及存储介质
JP2004032029A (ja) ネットワーク処理装置及び設定方法
KR100427764B1 (ko) 서로 다른 데이터 버스를 가지는 디바이스들의 정합 장치
JP3164996B2 (ja) シリアルデータ受信装置
CN115694772A (zh) 一种基于两级fifo的智能接口设计方法
JP2953878B2 (ja) データ転送システム

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20131129

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141204

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151203

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20161201

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20171129

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20181127

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20191202

Year of fee payment: 10