CN114124607A - Can收发器 - Google Patents
Can收发器 Download PDFInfo
- Publication number
- CN114124607A CN114124607A CN202110978447.6A CN202110978447A CN114124607A CN 114124607 A CN114124607 A CN 114124607A CN 202110978447 A CN202110978447 A CN 202110978447A CN 114124607 A CN114124607 A CN 114124607A
- Authority
- CN
- China
- Prior art keywords
- transceiver
- bus
- data frame
- data
- microcontroller
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 claims abstract description 11
- 238000011084 recovery Methods 0.000 claims description 15
- 238000004891 communication Methods 0.000 claims description 13
- 238000000034 method Methods 0.000 claims description 10
- 238000005070 sampling Methods 0.000 claims description 9
- 238000001514 detection method Methods 0.000 claims description 4
- 230000008901 benefit Effects 0.000 description 9
- 239000003990 capacitor Substances 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000012544 monitoring process Methods 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000003071 parasitic effect Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 239000004020 conductor Substances 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000013502 data validation Methods 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B1/00—Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
- H04B1/38—Transceivers, i.e. devices in which transmitter and receiver form a structural unit and in which at least one part is used for functions of transmitting and receiving
- H04B1/40—Circuits
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error control
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40052—High-speed IEEE 1394 serial bus
- H04L12/40084—Bus arbitration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40143—Bus networks involving priority mechanisms
- H04L12/40163—Bus networks involving priority mechanisms by assigning priority to messages according to a message field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40169—Flexible bus arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
- H04L12/4135—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD] using bit-wise arbitration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/16—Threshold monitoring
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L7/00—Arrangements for synchronising receiver with transmitter
- H04L7/02—Speed or phase control by the received code signals, the signals containing no special synchronisation information
- H04L7/033—Speed or phase control by the received code signals, the signals containing no special synchronisation information using the transitions of the received signal to control the phase of the synchronising-signal-generating means, e.g. using a phase-locked loop
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/14—Time supervision arrangements, e.g. real time clock
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/82—Protecting input, output or interconnection devices
- G06F21/85—Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40208—Bus networks characterized by the use of a particular bus standard
- H04L2012/40215—Controller Area Network CAN
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L2012/40267—Bus for use in transportation systems
- H04L2012/40273—Bus for use in transportation systems the transportation system being a vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
Abstract
公开了一种用于从控制器局域网络(CAN)总线发送和接收数据的收发器。所述收发器包括微控制器端口、发射器和接收器,其中所述收发器被配置成从由所述接收器接收到的数据帧确定位定时。所述收发器另外被配置成检测在所述数据帧的预定部分中引入信号毛刺的尝试,并且在检测到所述信号毛刺之后,所述收发器被配置成使发射线上的所述数据帧失效和/或在预定时段内停用所述发射器。
Description
背景技术
控制器局域网络(CAN总线)是一种被设计成允许微控制器和装置在没有主机的情况下与彼此的应用程序通信的车辆总线标准。CAN是一种基于消息的协议,所述CAN使用两根导线以使多个装置能够彼此通信且用于包括汽车应用程序的许多类型的应用程序中。对于每个消息,数据包中的数据是依序发射的,但以此方式会使得,如果超过一个装置同时发射消息,则只有最高优先级消息能够继续,而其它装置会停止发射它们的消息。这一过程被称为“仲裁”,是供所有发送装置使用的,且试图发送最高优先级消息的装置将赢得仲裁。所发射数据包由所有装置接收,包括由接收自身消息的发射装置接收。然而,即使在输掉仲裁后,恶意装置也可能会试图操纵总线控制。
CAN是通常用于在无需降低微控制器负载的情况下在网络节点之间提供通信的双线差分、半双工、高速串行网络。CAN收发器连接在CAN协议控制器与CAN总线线路的物理导线之间。由微控制器使用收发器在CAN总线上发送和接收数据。典型收发器通常通过CAN总线提供符合ISO11898标准的通信,而无需仔细校验数据内容。
发明内容
提供本发明内容用于以简化形式介绍下文在具体实施方式中进一步描述的一系列概念。本发明内容并非旨在标识所要求保护的主题的关键特征或基本特征,也并非旨在用于限制所要求保护的主题的范围。
在一个实施例中,公开了一种用于从控制器局域网络(CAN)总线发送和接收数据的收发器。所述收发器包括微控制器端口、发射器和接收器,其中所述收发器被配置成从由所述接收器接收到的数据帧确定位定时。所述收发器另外被配置成检测在所述数据帧的预定部分中引入信号毛刺的尝试,并且在检测到所述毛刺之后,所述收发器被配置成使发射线上的所述数据帧失效和/或在预定时段内停用所述发射器。
在一些例子中,所述失效包括将CAN错误消息发送到所述CAN总线上。所述收发器被配置成在所述数据帧的发射期间检查耦合到所述微控制器端口的所述微控制器是否已输掉或赢得仲裁。所述收发器还可以被配置成在所述微控制器在所述数据帧中引入所述信号毛刺的情况下,生成失效信号并将其发送到所述CAN总线上以使所述数据帧失效。在一些例子中,所述收发器被配置成在所述微控制器引入所述信号毛刺的情况下,将显性位发送到所述CAN总线上以使所述数据帧失效。所述发射器可以包括用以启用或停用所述发射器的启用端口,并且所述收发器被配置成基于对所述信号毛刺的检测生成启用/停用信号。
所述收发器包括与所述发射器耦合的时钟恢复和采样电路。所述时钟恢复和采样电路被配置成检查由所述微控制器发送的数据中的位长度。所述时钟恢复和采样电路另外被配置成基于预先存储的配置数据检测由所述微控制器发送的所述数据中的不当的位定时。所述收发器可以包括用以存储配置数据的存储器。
在一些例子中,所述预定部分是基于所述数据帧的位长度标识的,并且对所述信号毛刺的所述检测包括在所述预定部分期间监测信号幅值超过预定阈值的变化。
在另一实施例中,公开了一种用于防止节点中断控制器局域网络(CAN)总线上的通信的方法。所述方法从数据帧确定位定时,所述数据帧是从所述CAN总线接收到的;在所述数据帧的预定部分期间检测信号毛刺;并且在检测到所述信号毛刺之后,使所述数据帧失效且在预定时段内停用发射器。对所述信号毛刺的所述检测包括在所述预定部分期间监测信号幅值超过预定阈值的变化。所述预定部分是基于所述数据帧的位长度和位定时配置数据而配置的。
附图说明
为了可以详细地理解本发明的上述特征的方式,可以通过参考实施例来作出上文简要概括的本发明的更特定描述,所述实施例中的一些实施例在附图中示出。然而,应注意,附图仅说明本发明的典型实施例且因此不应被视为限制本发明的范围,这是因为本发明可以准许其它同等有效的实施例。对于阅读结合附图的本说明书的本领域的技术人员而言,所要求保护的主题的优点将变得显而易见,其中,相同的附图标记用于指代相同的元件,在附图中:
图1描绘量具有通信节点的控制器局域网络(CAN)总线;
图2描绘了CAN总线通信协议,其示出基于CANH和CANL处的差分电压的“0”和“1”的表示;
图3描绘了根据本公开的一个或多个实施例的示出毛刺的采样逻辑和物理CAN信号;
图4示出了具有可配置定时部分的采样CAN信号;
图5示出了根据本公开的一个或多个实施例的安全收发器的示意图;并且
图6示出了根据本公开的一个或多个实施例的安全CAN数据发射的流程图。
应注意,图不一定按比例绘制。没有示出安全收发器的全部组件。省略的组件是本领域的技术人员已知的。
具体实施方式
已经省略或不在描述中详细描述许多熟知的制造步骤、组件和连接器,以免混淆本公开。
将容易理解,如本文中大体描述且在附图中示出的实施例的组件可以按各种不同的配置来布置和设计。因此,以下如附图中所表示的各种实施例的更详细描述并非旨在限制本公开的范围,而是仅仅表示各种实施例。尽管在图式中呈现了实施例的各种方面,但是除非具体指示,否则图式不一定按比例绘制。
在不脱离本发明的精神或基本特性的情况下,可以按其它具体形式体现本发明。所描述的实施例在所有方面均被视为仅是示意性的而非限制性的。因此,本发明的范围由所附权利要求书而不是由此具体实施方式指示。属于权利要求书等同含义和范围内的所有变化均涵盖在权利要求书的范围内。
本说明书通篇对特征、优点或类似语言的引用并不暗示可以通过本发明实现的所有特征和优点应在或在本发明的任何单一实施例中。相反地,提到特征和优点的语言应理解成意味着结合实施例所描述的特定特征、优点或特性包括在本发明的至少一个实施例中。因此,本说明书通篇对特征和优点以及类似语言的论述可以但不一定指代相同实施例。
此外,本发明的所描述特征、优点和特性可以用任何合适的方式在一个或多个实施例中组合。本领域的技术人员将认识到,鉴于本文中的描述,本发明可以在无特定实施例的一个或多个具体特征或优点的情况下实践。在其它情况下,可以在某些实施例中识别出可能不存在于本发明的所有实施例中的额外特征和优点。
贯穿本说明书对“一个实施例”、“一实施例”“一个例子”或类似语言的参考意指结合所指示实施例描述的特定特征、结构或特性包括在本发明的至少一个实施例中。因此,本说明书通篇的短语“在一个实施例中”、“在实施例中”和类似语言可以但不一定全部指代相同实施例。
控制器局域网络(CAN)是对等网络。这意味着不存在能控制各个节点何时有权访问CAN总线上的读取数据和写入数据的主控装置。当CAN节点准备好发射数据时,它会检查CAN总线是否空闲,然后简单地将CAN帧写入网络。所发射的CAN帧不包含发射节点或任一预期接收节点的地址。然而,在整个网络中唯一的仲裁ID包含在数据帧中。CAN网络上的所有节点接收由任何节点发射的每一CAN帧,并且取决于所发射帧的消息或仲裁标识符,网络上的每一CAN节点决定是否接受所述帧以用于进一步处理。
如果多个节点尝试同时向CAN总线发射消息,则具有最高优先级(消息或仲裁标识符的最低值)的节点将获得总线访问权。优先级较低的节点(或消息)必须等到总线可用后才能尝试再次发射。
CAN节点(例如,ECU)使用收发器来与CAN总线连接。收发器包括Rx端口和Tx端口,以实现通过CAN总线100与其它CAN节点的通信。收发器通常为网络中的装置/微控制器的模式控制提供简单的接口。典型的标准收发器最多使用两个专用模式控制引脚,这意味着通常存在不超过四种不同的操作状态。
CAN协议规定CAN帧的结构。CAN帧包括:
1.SOF(帧起始)位-用显性(逻辑0)位指示消息的开始。
2.消息或仲裁ID-标识消息并指示消息的优先级。帧有两种格式-使用11位仲裁ID的标准,和使用29位仲裁ID的扩展。
3.IDE(标识符扩展)位-允许标准帧与扩展帧之间的差异。
4.RTR(远程发射请求)位-用于区分远程帧与数据帧。显性(逻辑0)RTR位指示数据帧。隐性(逻辑1)RTR位指示远程帧。
5.DLC(数据长度码)-指示数据字段包含的字节的数量。
6.数据字段-包含0到8个字节的数据。
7.CRC(循环冗余校验)-包含15位循环冗余校验码和隐性分隔符位。CRC字段用于错误检测。
8.ACK(应答)间隙-正确地接收消息的任何CAN控制器会在消息结束时发送ACK位。发射节点检查总线上是否存在ACK位,如果未检测到应答,则重新尝试发射。
9.CAN信号-包含在CAN帧数据字段内的各个数据段。也可以将CAN信号称为信道。因为数据字段在经典CAN中最多可以包含8个字节的数据,且在CAN FD中最多可以包含64个字节的数据。
图1描绘了控制器局域网络(CAN)总线100。CAN总线100包括用于抑制波反射的终端电阻器。在一些实施例中,电容器108也可以在终端处使用。CAN总线100包括双绞线106。双绞线106包括CANH导线和CANL导线。CAN总线100可以包括通过多个安全收发器110-1......110-N与双绞线耦合的多个通信微控制器或电子控制单元(ECU)104-1......104-N。电容器108通常为4.7nF。电容器108的值可以增大到约100nF。通过增大电容器108的值,改善了间歇性断开期间CANL或CANH处的信号电压。在一个例子中,与电容器108耦合的电阻器通常各自为60欧姆(每一端的总电阻为120欧姆)。
如图所示,通信节点(ECU)104-1......104-N经由未遮蔽双绞线106连接。端接实施于CAN总线100的最左侧和最右侧。有两种选择:通过使用如CAN总线100的左侧所示的单个电阻器,或经由如CAN总线100的右侧所示的被称作“分离式端接(split-termination)”的两个电阻器和电容器108。通常使用后一种方法,因为所述方法提供了额外的低通滤波以提高EMC性能。
如图2所示,在正常操作(当不存在错误时)中,CAN总线100用信号表示CANH和CANL被驱动,使得生成差分电压(以发送显性信号)或不生成差分信号(以发送隐性位)。在一些实施方案中,对于显性位(“0”),CANL处的电压为约1.5V且CANH处的电压为3.5V,且Vdiff表示CANH处的电压与CANL处的电压之间的差。在一些例子中,Vdiff>0.9V可以被视为显性位,且Vdiff<0.5可以被视为隐性位。
当CAN总线100处于空闲状态(例如,在一段时间内处于隐性状态)时,CAN总线100上的希望在CAN总线上发送数据的通信节点(例如,ECU 104-1......104-N)发送显性SOF位,以指示节点希望发送数据帧。接着,每个节点发送消息标识符。应注意,节点被配置成使得没有两个节点可以发送包括相同消息标识符的数据帧。CAN协议提供11位消息标识符。在另一版本的CAN协议中,消息标识符被规定为包括29位。消息标识符的相对优先级的特征在于消息标识符的值。较低值的消息标识符具有较高的优先级。例如,具有值11001000111(0x647)的消息标识符的优先级将比具有值11011111111(0x6FF)的消息标识符的优先级更高。
如果ECU 104-1和ECU 104-N同时发送SOF位且接着分别开始在第四位上发射消息标识符11001000111和11011111111,则ECU 104-1将赢得仲裁,因为其将发送会覆写由ECU104-N发送的隐性位的显性位。ECU 104-1将在CAN总线100上发送显性位之后读取显性位并将继续发送另外的数据位,而ECU 104-N将在已经发送隐性位(例如,上述消息标识符例子中的第四最高有效位)之后读取显性位并将假设其已经输掉仲裁且将停止在CAN总线100上发送另外的数据位,并且会在尝试发送消息之前等待CAN总线100再次处于空闲状态,与此同时,仲裁过程将再次开始。
图3示出了采样逻辑和电压CAN信号114。信号114A示出了对应于电压信号114B的逻辑信号。寄生ECU(例如,104-N)可以在信号中插入毛刺115以中断发射。如图所示,毛刺115可能会引起数据错误,这是因为在隐性位发射期间,显性段将被引入从而引起数据错误。信号114B示出了VCANH电压电平和VCANL电压电平。电压电平仅作为例子而示出。在一些例子中,这些电压电平可以与CAN协议所允许的不同。Vth是阈值电压(例如,图2中的Vdiff)。低于Vth的差分电压电平可以转换为隐性位,并且高于Vth的差分电压电平可以转换为显性位。在一些例子中,如信号114C中所示,毛刺115的电压电平可能会由于当信号通过导线发射到远端节点时由导线对106的寄生组件产生的低/高通滤波器而衰减。应注意,在一些例子中,毛刺115还可以由噪声引起。
图4示出了具有可配置定时部分的采样CAN信号。为了使由寄生ECU引入的毛刺的影响失效,本文描述的实施例使用具有可配置阈值118A、118B、118C、118D的位定时恢复过程,并且收发器确保耦合到收发器的ECU无法在阈值118A与118B之间且还在阈值118C与118D之间插入毛刺。
如果包括ECU 104-N的通信节点发射帧,则包括由具有协议引擎(未示出)的收发器120组成的ECU 104-1的接收节点独立地执行时钟恢复和采样。如果ECU 104-N包括缺陷或被破解软件,则可能会发生由发射节点发射的位模式可以包含预期或非预期的毛刺或偏离位定时。由于网络中的信号衰减或信号传播时间的差异,可能会发生接收节点以不同方式对接收到的数据进行解码。在一些例子中,下图中描述的收发器120开始监测下降沿117上的显性位。在位长度已知的情况下,收发器120标记位的一部分(在标记118A与118B之间示出)。部分长度可以是可配置的。在一些例子中,所述部分长度可以覆盖约80-90%的位长度。
图5示出了收发器120。应注意,已经省略收发器120的许多已知组件,以免混淆本公开。收发器120可以替换图1中的收发器110-N(当然还可以替换CAN总线100上的任何其它收发器),以使图1所示的CAN总线100成为安全CAN总线。在收发器120监测ECU 104-N的情况下,在第一次尝试之后,ECU 104-N将不再能够恶意地中断CAN总线100上的数据通信。
收发器120包括发射器(TX)134和接收器(RX)136。收发器120包括微控制器端口122以从微控制器或ECU发送/接收数据。收发器120还包括CAN总线端口138以将数据发送到CAN总线100/从CAN总线100接收数据。将从CAN总线100接收到的数据发射到微控制器以使得微处理器能够在功能上处理接收到的数据。类似地,当从微控制器或ECU接收到数据时,将接收到的数据发射到CAN总线100。TX 134以符合CAN标准的信号转换从微控制器接收到的数据。
收发器120还包括毛刺检测器128。毛刺检测器128可以耦合到提供同步时钟的芯片上时钟源126。可以包括位定时设置模块124以提供位宽度和采样时间。当由毛刺检测器128处理数据帧时,位定时设置模块124还可以跟踪数据帧中的现行位位置。毛刺检测器128包括TXD定时恢复模块130和RXD定时恢复模块132。TXD定时恢复模块130监测耦合到微控制器端口122的TXD线路,并且RXD定时恢复模块132监测耦合到微控制器端口122的RXD线路。在一些例子中,收发器120仅包括TXD定时恢复模块130而不是RXD定时恢复模块132。收发器120可以被配置成防止耦合到ECU端口122的微控制器引入毛刺,如上文所论述。
包括违规检测器144以标识通过微控制器端口122接收到的或发射的数据中的毛刺。在一些例子中,毛刺检测器128还可以包括处理器(未示出)。在其它例子中,毛刺检测器128可以仅以硬件实施。再次返回参考图4,位宽度和采样时间是已知且根据正使用的协议预设的。在一些例子中,CAN帧可以包括使得从中可以确定位设置(bit witch)的波特率的信息。违规检测器144监测正由耦合到ECU端口122的微控制器发送的数据,并且如果违规检测器144检测到标记118A与118B之间的脉冲转换,则毛刺检测器128可以使用TX 134的EN引脚以防止微控制器在预定时段或时间内发射数据。在一些实施例中,毛刺检测器128可以在CAN总线100上发送CAN错误帧或失效信号以指示先前的帧是无效的且应被通信节点忽略。
关于毛刺、噪声或主机在位定时方面行为不当的问题在于,在具有多个接收节点的大型网络中,某些节点可能会对不同的数据进行采样。随着毛刺115通过网络传播,远端节点将发现不同的数据,这是因为滤波效果将在毛刺115到达远端节点之前使其衰减(使得毛刺115处的差分电压低于阈值Vth)。如果TX 134在数字输入上有短毛刺,将导致差分输出的两侧出现尖峰,如图3所示。TX 134具有中等的低通滤波器行为。在附近的接收器上,差分毛刺信号被解码为与发射器在输入上所具有的相同的信号。远端接收节点上的信号不会发现超过阈值的毛刺以回到隐性,并且接收器将对显性位进行采样。就安全和保障而言,不同节点在CAN总线100中获得不同信息内容的事实是不希望的。
在一些例子中,收发器120配备有符合CAN ISO11898的接收器(例如,RX 136),所述接收器能够对CAN总线100上的帧进行解码。收发器120还在来自被配置成与ECU端口122耦合的微控制器的TX输入上包含时钟恢复和采样电路130。检查在ECU端口122上接收到的位的长度、毛刺和/或不当的位定时。如果检测到与预期行为的偏差,则毛刺检测器128将使CAN总线100上的帧失效,以使得发射节点重新发射帧和/或停用收发器120的发射和/或接收能力以隔离与ECU端口122耦合的微控制器的非预期行为。
毛刺检测器128被配置成对RXD和/或TXD执行时钟恢复,并且包括状态机以遵循CAN协议,以了解CAN协议并且匹配所需的位定时。在一些例子中,帧不同,位定时也可以不同。在此类例子中,数据帧将包括位速率切换位,以使得收发器120能够确定包括在帧中的数据位的位长度。在此例子中,收发器120具有芯片上振荡器和存储器(可以包括在位定时设置模块124中)以存储用于CAN网络的位定时设置。在违反CAN协议或毛刺检测配置的情况下,毛刺检测器128可以在CAN总线100上发射显性位以使帧失效和/或拒绝针对与ECU端口122耦合的微控制器的RXD和/或隔离到CAN总线100的TXD路径。
包含位定时设置的配置数据可以预先存储在收发器120中。配置数据可以在收发器120进入操作模式之前存储在非易失性存储器中或下载到易失性存储器中。收发器120被配置成修改运行中的针对与ECU端口122耦合的微控制器的RXD数据,并且通过发射显性位或失效信号和/或停用TX 134来拒绝CAN总线100上的数据。
在一些例子中,毛刺检测器128监测连接到微控制器端口122的微控制器是否已赢得或输掉仲裁。如果CAN帧被恶意微控制器(或主机或ECU)篡改,则CAN总线100上的远程节点将由于位错误而停止发送另外的数据帧。通常情况下,远程节点会在出现前16位时发送错误帧。对于出现下一个16位,远程节点将是错误认可的,并且将不会发送错误帧且停止发射。此事件可能为与微控制器端口122耦合的恶意微控制器提供十六次机会,以发送包含恶意数据的数据帧的剩余部分。如果与ECU端口122耦合的微控制器已经输掉仲裁,则除了可能的错误帧或确认接收到CAN帧的ACK之外,TXD上应该没有通信量。违规检测器144可以停用TX 134,以使得恶意微控制器无法发送数据。
在一些例子中,收发器120可以不包括任何额外的引脚,以使得收发器120可以用作代替常规CAN收发器的“嵌入式收发器(drop in)”。在毛刺检测器128完全或部分地以软件实施的例子中,收发器120可以被配置成通过额外数据验证规则进行编程。在一些例子中,如果收发器120可被配置成被编程,则可以采用防篡改安全机制,使得仅被授权的装置或实体可以改变存储在收发器120中的现有编程。在一些例子中,与ECU端口122耦合的微控制器可能已赢得仲裁,因此被允许经由TX134开始将数据帧发送到CAN总线100。微控制器接着可以尝试在数据帧中引入毛刺。发送到CAN总线100的任何数据帧由包括发送数据帧的本地节点的所有节点接收。因此,即使本地微控制器已发送所述数据帧,使毛刺失效的相同过程也将适用,这是因为相同的数据帧也将由RX136接收,以使得收发器能够确定位定时并开始监测任何毛刺的发射。
图6示出了用于通过在数据帧中引入毛刺来阻止恶意微控制器(或ECU或本地主机)中断或破坏CAN总线100上的数据发射的流程图300。因此,在步骤302,毛刺检测器128监测由收发器120中的接收器接收到的数据。在步骤304,毛刺检测器128从接收到的数据确定位定时。在步骤306,毛刺检测器128在位的预定部分内检查与收发器120耦合的微控制器的信号改变尝试。在步骤308,如果检测到信号改变——例如上文所论述的毛刺,则收发器120被配置成使数据帧失效以使得发送器进行重新发射。收发器120还可以被配置成至少在预定时间内停用微控制器发送另外的数据位。
这些实施例中的一些或全部可以组合,一些可以被完全省略,并且可以添加额外的过程步骤,同时仍达成本文中所描述的产品。因此,本文中所描述的主题可以按许多不同变化体现,并且所有此类变化预期在权利要求书的范围内。
尽管已经借助于例子和根据具体实施例描述一个或多个实施方案,但应理解,一个或多个实施方案不限于所公开的实施例。相反地,希望涵盖对本领域的技术人员来说将显而易见的各种修改和类似布置。因此,所附权利要求书的范围应被赋予最广义的解释,以便涵盖所有此类修改和类似布置。
除非本文中另外指出或明显与内容相矛盾,否则在描述主题的情况下(尤其在所附权利要求书的情况下),使用术语“一”、“一个”和“所述”以及类似指示物应理解为涵盖单数和复数两者。除非本文中另外指出,否则对本文中值范围的叙述仅旨在充当个别提及属于所述范围的每一单独值的速记方法,且每一单独值并入本说明书中,如同在本文中个别地叙述一般。此外,前述描述是仅出于说明的目的,而不是出于限制的目的,因为寻求保护的范围由下文阐述的权利要求及其任何等效物来限定。除非另外要求,否则本文中所提供的对任何和所有例子或示例性语言(例如,“例如”)的使用仅旨在更好地说明主题,而不是对主题的范围造成限制。使用术语“基于”和其它类似短语指示在附属权利要求和书面描述中产生结果的条件,而不是旨在排除产生所述结果的其它条件。本说明书中的任何语言都不应理解为指示任何未要求保护的要素对于实践所要求保护的本发明是必不可少的。
本文中描述发明人已知的用于实行所要求保护的主题的优选实施例。当然,在阅读前述描述之后,那些优选实施例的变化对于本领域的普通技术人员将变得显而易见。发明人期望本领域的技术人员适时采用此类变化,并且发明人意图以不同于本文中特定描述的其它方式来实践所要求保护的主题。因此,所要求保护的主题包括可适用法律所准许的在附属权利要求中叙述的主题的所有变化和等效物。此外,除非本文中另外指出或以其它方式明显与内容相矛盾,否则涵盖上文所描述的元素以其所有可能的变化形式的任何组合。
Claims (10)
1.一种用于从控制器局域网络CAN总线发送和接收数据的收发器,其特征在于,所述收发器包括微控制器端口、发射器和接收器,其中所述收发器被配置成从由所述接收器接收到的数据帧确定位定时,且所述收发器被配置成检测在所述数据帧的预定部分中引入信号毛刺的尝试,并且在检测到所述信号毛刺之后,所述收发器被配置成使发射线上的所述数据帧失效和/或在预定时段内停用所述发射器。
2.根据权利要求1所述的收发器,其特征在于,所述失效包括将CAN错误消息发送到所述CAN总线上。
3.根据权利要求1所述的收发器,其特征在于,另外被配置成在所述数据帧的发射期间检查耦合到所述微控制器端口的所述微控制器是否已输掉或赢得仲裁。
4.根据权利要求3所述的收发器,其特征在于,另外被配置成在所述微控制器在所述数据帧中引入所述信号毛刺的情况下,生成CAN错误帧并将其发送到所述CAN总线上以使所述数据帧失效。
5.根据权利要求3所述的收发器,其特征在于,另外被配置成在所述微控制器引入所述信号毛刺的情况下,将显性位发送到所述CAN总线上以使所述数据帧失效。
6.根据权利要求1所述的收发器,其特征在于,所述发射器包括用以启用或停用所述发射器的启用端口。
7.根据权利要求6所述的收发器,其特征在于,另外被配置成基于对所述信号毛刺的检测生成启用/停用信号。
8.根据权利要求1所述的收发器,其特征在于,另外包括与所述发射器耦合的时钟恢复和采样电路。
9.根据权利要求8所述的收发器,其特征在于,所述时钟恢复和采样电路被配置成检查由所述微控制器发送的数据中的位长度。
10.一种用于防止节点中断控制器局域网络CAN总线上的通信的方法,其特征在于,所述方法包括:
从数据帧确定位定时,所述数据帧是从所述CAN总线接收到的;
在所述数据帧的预定部分期间检测信号毛刺;
在检测到所述信号毛刺之后,使所述数据帧失效且在预定时段内停用发射器。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/009,767 | 2020-09-01 | ||
US17/009,767 US11665021B2 (en) | 2020-09-01 | 2020-09-01 | Can transceiver |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114124607A true CN114124607A (zh) | 2022-03-01 |
Family
ID=77179890
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110978447.6A Pending CN114124607A (zh) | 2020-09-01 | 2021-08-24 | Can收发器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11665021B2 (zh) |
EP (1) | EP3965375B1 (zh) |
CN (1) | CN114124607A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11522872B2 (en) * | 2020-06-18 | 2022-12-06 | Nxp B.V. | CAN transceiver |
CN115695153B (zh) * | 2023-01-03 | 2023-03-21 | 长沙莫之比智能科技有限公司 | 一种can通信监测和异常自动恢复方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7804923B2 (en) * | 2007-01-29 | 2010-09-28 | Via Technologies, Inc. | Apparatus and method for locking out a source synchronous strobe receiver |
US7999596B2 (en) | 2009-03-26 | 2011-08-16 | Texas Instruments Incorporated | Digital suppression of spikes on an 12C bus |
US8566632B2 (en) | 2011-01-18 | 2013-10-22 | Nxp B.V. | Multi-rate sampling for network receiving nodes using distributed clock synchronization |
US8891686B2 (en) * | 2011-10-26 | 2014-11-18 | Source Photonics, Inc. | Data signal detection in optical and/or optoelectronic receivers and/or transceivers |
GB2510129B (en) * | 2013-01-24 | 2015-06-10 | Nds Ltd | Passing hidden information using attack detectors |
US10361934B2 (en) * | 2015-09-28 | 2019-07-23 | Nxp B.V. | Controller area network (CAN) device and method for controlling CAN traffic |
US10567192B2 (en) | 2018-03-21 | 2020-02-18 | Nxp B.V. | Controller area network (CAN) device and method for operating a CAN device |
EP3691198B1 (en) * | 2019-02-04 | 2021-09-29 | Nxp B.V. | Controller area network (can), can device and method therefor |
US11522872B2 (en) * | 2020-06-18 | 2022-12-06 | Nxp B.V. | CAN transceiver |
-
2020
- 2020-09-01 US US17/009,767 patent/US11665021B2/en active Active
-
2021
- 2021-07-30 EP EP21188685.8A patent/EP3965375B1/en active Active
- 2021-08-24 CN CN202110978447.6A patent/CN114124607A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
EP3965375A1 (en) | 2022-03-09 |
EP3965375B1 (en) | 2023-06-07 |
US11665021B2 (en) | 2023-05-30 |
US20220070022A1 (en) | 2022-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11522872B2 (en) | CAN transceiver | |
US20210312043A1 (en) | Vehicle communications bus data security | |
EP3206361B1 (en) | Controller area network (can) message filtering | |
US10922264B1 (en) | CAN transceiver | |
US10691631B2 (en) | Broadcast bus frame filter | |
EP2079190B1 (en) | Fault location device, communication device, and fault location method | |
EP2800313B1 (en) | Devices and methods for an enhanced driver mode for a shared bus | |
CN114144997B (zh) | 用于串行总线系统的用户站的错误识别测试装置和用于对在串行总线系统中的通信中用于错误识别的机制进行测试的方法 | |
EP3499806B1 (en) | Node and method for conducting measurements and signal analyses on a multi-master access bus | |
CN112956161B (zh) | 用于串行总线系统的用户站的错误帧屏蔽单元和用于串行总线系统中的通信的方法 | |
CN114124607A (zh) | Can收发器 | |
US6167057A (en) | Data communication system and electronic control unit used therein | |
CN112347021B (zh) | 用于串行通信装置的安全模块 | |
JP2020092417A (ja) | ノードデバイスが、許可できないメッセージをcanバス上に送信することを防止する方法及び装置 | |
CN114747183A (zh) | 用于串行总线系统的用户站的冲突探测器和用于在串行总线系统中进行通信的方法 | |
CN111385286B (zh) | 用于保护车辆免受网络攻击的方法和相应的设备 | |
US11431439B1 (en) | Controller area network transceiver | |
CN113225240B (zh) | Can收发器 | |
EP4099642A2 (en) | Can transceiver | |
US20230198807A1 (en) | Apparatus for a controller area network | |
TWI851854B (zh) | 用於串列匯流排系統之節點站以及用於串列匯流排系統中通信之方法 | |
EP4304135A1 (en) | Controller area network (can) transceiver, can node, can system and method for the can transceiver | |
Di Natale et al. | The CAN 2.0 b standard | |
US20230148180A1 (en) | Subscriber station for a serial bus system and method for communication in a serial bus system | |
CN112929150A (zh) | 一种can总线入侵防御电路与方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |