CAN 전송 속도가 1Mbps 이상으로 증가 할 수없는 이유
댓글
- 사용되는 표준 및 드라이버에 따라 다릅니다. 더 빠른 버전이 있지만 다른 차이점이 있습니다.
- 제 질문은 ' 최대 100Mbps와 같은 더 빠른 속도를 달성 할 수없는 이유입니다. CAN을 사용하십니까?
- 점화 및 RF 내성 및 버스에서의 지연 경합
- 확인 : Can에서 지원되는 최대 비트 레이트는 얼마입니까? 버스
- CAN 버스는 충돌 감지를 제외하고는 명백한 동기화가 없습니다.
답변
CAN은 개방형 수집기 기술입니다. 그렇지 않으면 프로토콜이 작동 할 수 없습니다. CAN 트랜시버의 열성 상태가 작동하지 않음을 의미합니다. vely 구동. 트랜시버 입력 커패시턴스 및 케이블 커패시턴스와 함께 종단 저항은 버스의 능동 구동 지배 비트가 비 구동 열성 비트로 전환 될 때 RC 시간 상수 방전을 생성합니다. CAN의 1Mbps보다 높은 신호 속도의 경우 고속 신호 속도에 필요한 버스 전환을 촉진하기 위해 RS-485와 같은 두 상태 모두에서 버스를 능동적으로 구동하는 기술이 필요합니다.
궁극적으로 질문에 대한 답은 CAN 프로토콜이 물리적 수준에서 어떻게 구현되는지입니다. 해당 프로토콜을 변경하면 더 높은 데이터 속도를 사용할 수 있습니다.
From Microchip의 CAN 모듈 비트 타이밍 이해 :
… CAN 프로토콜은 비 여러 노드가 버스 제어를 위해 중재 할 수 있도록하는 파괴적 비트 중재 방식. 따라서 모든 노드가 동일한 비트 시간 내에 비트를 감지 / 샘플링해야합니다. 전파 지연과 발진기 허용 오차 간의 관계는 CAN 데이터 모두에 영향을 미칩니다. 요금 및 버스 길이.
CAN 버스의 양쪽 끝에있는 두 개의 마스터는 각각 버스에있는 동안 버스가있는 마스터와 통신하고 중재 할 수 있어야합니다.
버스 길이는 30m이고 버스를 통해 신호를 전파하는 데 걸리는 시간은 다음과 같습니다. $$ t_ {BUS} = 30 \ m @ 5.5 \ ns / m = 165 \ ns $ $
입력 비교기 지연이 \ $ t_ {CMP} \ $ = 40ns이고 출력 드라이버 지연이 \ $ t_ {DRV} \ $ = 60 ns (모든 기기)
왕복 물리적 버스에서 약간의 시간은 다음과 같습니다.
$$ t_ {PROP} = 2 (t_ {BUS} + t_ {CMP} + t_ {DRV }) = 2 (165 \ ns + 40 \ ns + 60 \ ns) = 530 \ ns $$ $$ TQ = 530 \ ns / 6 = 88.33 \ ns $$ $$ t_ {BIT} = 10 \ times TQ = 883.3 \ ns $$ $$ f = 1 / t_ {BIT} = 1 / 883.3 \ ns = 1.13 \ MHz $$
최대 최대 속도는 버스 길이, 라인 커패시턴스, 연결된 노드 및 프로토콜에서 선택한 드라이버에 의해 결정됩니다. 원칙적으로 30 m에서 CAN (ISO 11898)은 모든 것이 완벽하다면 1.13 Mbps를 수행 할 수 있습니다.
버스가 길수록 데이터 속도가 느려집니다. 그러나 짧은 버스는 더 높은 속도를 의미합니다. CAN 비트율 vs. 버스 길이 :
참조 된 두 문서 모두 더 긴 길이로이 문서에 들어갑니다.
CAN (ISO 11898)은 1에서 최대 8 바이트를 전송할 수 있습니다. 80 년대에 기반한 프로토콜로 Mbps. 오늘날의 차량에서는 더 많은 데이터 (64 바이트 패킷)를 전송해야하지만 1Mbps에서는 64 바이트가 최대 시간 슬롯을 차지하여 지연 될 수 있습니다. 중요한 데이터.
CAN FD (Flexible Data-Rate)는 원래 CAN 버스 프로토콜 (ISO 11898-1)의 확장입니다. 기존 CAN 버스에서 실행되고 결국 CAN을 대체하기위한 것입니다.
프로토콜은 CAN 1Mbps (500kbps 등)에서 시작되며 여러 CAN 및 CAN FD 마스터 간의 중재 프로세스가 가능합니다. 그러나 CAN FD 마스터가 버스를 획득하면 CAN FD 슬레이브에 대한 데이터 전송 속도가 5Mbps로 가속화됩니다. 이 속도에서는 8 바이트 CAN 1Mbps 패킷보다 짧은 시간에 64 바이트를 전송할 수 있습니다. 이는 기존 CAN 전송과 타이밍 충돌이 없음을 의미합니다. CAN FD 마스터가 버스를 포기하면 모든 CAN 또는 CAN FD 마스터가 버스를 얻을 수 있습니다.
CAN FD EXPLAINED-A SIMPLE INTRO (2019) :
정답은 40m CAN 버스에 대한 1Mbps 중재 프로세스에 따라 다르지만 대역폭은 버스 길이, 라인 커패시턴스, 연결된 노드 수 및 드라이버에 따라 가속화 될 수 있습니다. CAN FD 대역폭은 기존 CAN 대역폭의 3-8 배입니다.
답변
그럴 수 있습니다. CAN-FD 를 만나보세요.
새로운 프로토콜이 필요한 이유는 무엇입니까? CAN은 중재 및 오류보고 기능이있는 다중 마스터 버스입니다. 이러한 기능은 신호가 가장 먼 두 노드 사이를 왕복하는 데 일정 시간이 걸리기 때문에 케이블 길이에 따라 데이터 속도를 제한합니다. 이는 하위 호환성 요구 사항과 함께 CAN-FD로 이어졌습니다.
1Mbps의 기존 CAN은 40 미터 버스 길이로 제한됩니다. (실제로는 표유 커패시턴스로 인해 더 낮다고 생각합니다.) 100Mbps에서는 사용할 수있는 버스 길이가 0.5 미터 밖에되지 않아 자동차 및 산업용 애플리케이션에는 충분하지 않습니다.
답변
그것은 CAN 2.0B 표준이 하드웨어 비용을 줄이고 다양한 요구 사항을 충족하기 위해 더 높은 값을 지정하지 않았기 때문입니다. 표준 (예 : 거리 및 노이즈 내성). 기술적 인 장벽이 아닙니다.
표준은 의도 된 응용 프로그램에 불필요한 추가 속도를 고려하고 불필요하게 더 높은 속도를 지정하기 때문에 그렇게 작성되었습니다. 기능이 제대로 활용되지 않을 때 표준을 지원하는 모든 하드웨어의 비용을 증가시킬 것입니다.
그렇게 표준이 작성되면 IC 제조업체는 의미가 없기 때문에이를 초과하려고 애쓰는 IC 제조업체는 거의 없습니다. “실제로 기술적 장벽이 아닙니다.