CN113688086A - 用于局部网络的高速can收发器波特率匹配检测*** - Google Patents
用于局部网络的高速can收发器波特率匹配检测*** Download PDFInfo
- Publication number
- CN113688086A CN113688086A CN202110968661.3A CN202110968661A CN113688086A CN 113688086 A CN113688086 A CN 113688086A CN 202110968661 A CN202110968661 A CN 202110968661A CN 113688086 A CN113688086 A CN 113688086A
- Authority
- CN
- China
- Prior art keywords
- baud rate
- message
- error
- transceiver
- bit
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Communication Control (AREA)
Abstract
本发明公开了一种用于局部网络的高速CAN收发器波特率匹配检测***,属于数字集成电路技术领域,该***通过检测CAN总线上的唤醒报文,并按唤醒帧配置寄存器中配置的波特率对总线上的报文采样,并进行解码,若每出现一次报文错误,则内部错误计数器自加1,当错误计数器累积超过预设值,给外部控制器输出报文错误中断,调整发送唤醒报文的波特率,若未出现报文错误,则自减1,实现了唤醒报文波特率和收发器内部唤醒帧配置寄存器中配置的波特率不匹配的检测,避免CAN网络使能局部网络功能时,因为速率未匹配的问题导致长时间无法唤醒节点的情况,同时错误计数器的计数,可以对主动节点发送错误帧,或总线上因EMC产生的报文错误具有一定容忍性。
Description
技术领域
本发明属于数字集成电路设计技术领域,具体的,涉及一种应用于局部网络的高速CAN收发器中波特率匹配检测***。
背景技术
CAN总线是德国Bosch公司在20世纪80年代初为解决现代汽车中众多控制与测试仪器之间的数据交换而开发的一种串行数据通信总线,由于其良好的性能及独特的设计,目前CAN总线广泛应用于汽车与工控领域。近年来,新能源汽车的热度不断递增,汽车的节能问题备受关注,尤其在“寸电寸金”的新能源汽车,为了降低汽车功耗,消减不必要的能源损耗是一种非常有效的方法。而CAN总线中局部网络的推出,意味着整个汽车的功耗、成本、布线、以及二氧化碳排放的大幅降低。
CAN总线中局部网络是允许部分节点进行主动通信的能力,而其余部分则处于不活动状态或处于低功耗模式,可以监视总线“唤醒帧”(WUF)。在正确接收到WUF后,收发器可以激活整个节点。WUF由网络中的活动节点发送,以“唤醒”其他非活动节点以启用CAN网络中的某些功能。这样的WUF可以单独或成组寻址节点。这使接收唤醒帧的未寻址节点的收发器可以忽略它,并使整个ECU保持低功耗状态。该功能称为“选择性唤醒”,并在行业标准ISO11898-6中进行了标准化。
唤醒帧是根据ISO11898-1:2015的CAN帧,由标识符字段(ID),数据长度码(DLC),数据字段和循环冗余校验(CRC)码以及其界定符组成。与传统收发器相比,应用于局部网络的高速CAN收发器需对接收到的CAN报文进行解码,识别CAN报文的帧结构,并与唤醒帧配置寄存器中的ID、DATA、CRC校验码进行比对,如果匹配上,且未出现报文错误,则相应节点被唤醒,匹配不上或出现报文错误的则继续休眠。解码很重要的一个前提是保证接收到的报文速率和内部采样模块的速率保持一致,这样才能识别CAN报文的帧结构。
发明内容
本发明的目的在于提供一种用于局部网络的高速CAN收发器波特率匹配检测***,以解决现有技术中难以实现收发波特率是否匹配的检测的问题。
本发明的目的可以通过以下技术方案实现
用于局部网络的高速CAN收发器波特率匹配检测***包括:采样波特率配置寄存器、波特率分频器、位时序逻辑、位数据流处理器、移位寄存器模块、报文错误管理逻辑以及中断配置寄存器;
其中位时序逻辑的设计包括位定时、采样点和同步的设计三部分;
位定时,根据波特率配置寄存器中配置的CAN标准波特率来进行分频,产生最小的时间单位Tq;
采样点配置需满足局部网络对收发器的采样点的要求;
同步设计采用的CAN协议中规定的硬同步和重同步;
应用于局部网络的高速CAN收发器会应用在CAN和CAN FD节点混合的网络,所以位数据流处理器在传统的CAN协议解码器基础上增加了CAN FD检测,在位流状态中***了CANFD状态分支,这样满足了应用局部网络的高速CAN收发器的解码要求,并在传统CAN协议解码器上增加了CAN FD检测逻辑;
采样波特率配置寄存器中列出了所有可选的CAN标准波特率,可满足外部方便快捷的进行常规波特率的设置;
中断配置寄存器,外部可对该中断进行自由配置,可使能和禁用波特率匹配检测中断功能,同时还能够通过外部软件清除该中断标志,同时对应用于局部网络的高速CAN收发器设置了一级中断和二级中断,增强了其灵活性;
报文错误管理逻辑,可以识别CAN报文中位填充错误,格式错误,CRC校验错误,并对这些错误进行计数,出现报文错误时,会产生错误标志信号,外部微控制器通过访问错误标志状态寄存器可以实时监测有无报文错误的情况;
若报文错误出现次数超过一定阈值,会产生波特率未匹配的中断信号,这对CAN总线上由EMC和其它未知错误而出现报文错误的情况具有一定容忍性;
同时当CAN总线进入空闲,长时间总线没有数据时,会对报文错误计数器进行清零,节省动态功耗,同时在RTL级采用门控时钟,降低功耗;
应用于局部网络的高速CAN收发器的数字模块中CAN协议解码器是核心模块,在RTL级采用资源共享,在CAN协议解码基础上添加额外的逻辑功能达到波特率匹配检测功能的实现,节省了收发器面积;
与现有技术相比,本发明的有益效果是:
1、本发明能够实现收发波特率是否匹配的检测,避免CAN网络使能局部网络功能时,因为速率未匹配的问题导致长时间无法唤醒节点的情况;
2、本发明能够避免总线上出现主动节点唤醒休眠节点,持续发送错误帧,一直占用总线的情况;
3、本发明能够检测出CAN总线***上出现异常错误,产生报文错误的情况。
附图说明
为了便于本领域技术人员理解,下面结合附图对本发明作进一步的说明。
图1为本发明所述的用于局部网络的高速CAN收发器波特率匹配检测***的结构示意图;
图2为本发明所述的用于局部网络的高速CAN收发器波特率匹配检测***的工作流程图;
图3为本发明所述的用于局部网络的高速CAN收发器波特率匹配检测***工作的RTL仿真波形图。
具体实施方式
下面将结合实施例对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
用于局部网络的高速CAN收发器波特率匹配检测***,如图1所示,包括采样波特率配置寄存器、波特率分频器、位时序逻辑、位数据流处理器、移位寄存器模块、报文错误管理逻辑与中断配置寄存器;
移位寄存器模块包含多个移位寄存器,用于暂存CAN协议解码器解码的各段数据;
外部配置好采样波特率配置寄存器,
波特率分频器按配置寄存器的值,把***时钟分频成对应CAN标准波特率的最小时间Tq后发送至位时序逻辑;
位时序逻辑按对应波特率对接收的数据进行采样,将采样点和采样位送到位数据流处理器,同时位数据流处理器会反馈同步模式给位时序逻辑,以确定采用何种同步模式;
位数据流处理器,按CAN报文的帧结构进行状态跳转,并将帧结构不同段的采样到的数据移送到相对应的移位寄存器中暂存;
在位数据流处理器进行状态跳转的同时,报文错误管理逻辑会对移位寄存器中的值进行报文错误的检查,若出现报文错误,错误计数器自加“1”,并产生报文错误状态标志,在中断配置寄存器使能中断情况下,错误计数器超过一定阈值,会产生波特率未匹配中断信号,到帧结尾,未出现报文,则错误计数器自减“1”;
外部通过中断配置寄存器,可以使能或禁用波特率未匹配中断信号,通过软件写“1”,进行清除该中断;
如图2所示,上述的用于局部网络的高速CAN收发器波特率匹配检测***的工作流程为:
S1、在局部网络和选择性唤醒打开前,在采样波特率配置寄存器中设置采样波特率;
S2、局部网络和选择性唤醒功能打开,监听CAN总线,检测到低电平,被认为是起始位,CAN总线上出现报文;
S3、对CAN总线上的所有数据进行解码,包括ID场、数据场、CRC场与帧结尾,采样的数据被暂存在移位寄存器中;
S4、在解析过程中,只要出现一次报文错误,错误计数器进行自加1,并在报文错误状态寄存器中设置标志位,直到下一帧报文未出现报文错误,报文错误标志位被清除;
报文错误包括位填充错误、格式错误与CRC错误;
如果计数器值超过设置阈值,则会产生收发器波特率未匹配中断,提醒外部微控制器,波特率未匹配,计数器值未超过设置阈值,继续检测CAN报文是否有错误,直到总线进入空闲;
S5、在解析过程中,若整个一帧报文未出现报文错误,错误计数器自减1,下一帧报文也未出现报文错误时,再自减1,直至为0为止;
S6、若CAN总线未空闲,则会一直解码CAN报文,判断报文是否出现报文错误,若总线空闲,则进行低电平检测,判断总线是否有CAN报文;
总线进入空闲时,报文错误状态寄存器标志位会被清除,若长时间总线上未有数据,则错误计数器清零。
如图3所示,RX接收到的是500K的CAN报文,而外部通过CDR寄存器配置的CAN采样波特率是1M,由于波特率未匹配,内部位时序模块采样到错误数据,由波形可知出现了CAN报文错误(CRC错误,位填充错误,格式错误),且每出现一次这种错误,错误计数器自加“1”,当计数器超过31这个阈值时,PNFDE_flag置高电平,产生波特率未匹配的错误中断,提醒外部微控制器调整发送的报文波特率或通过CDR调整内部位时序的采样频率,且报文错误监测的状态信号COSC_flag在发送完一帧报文还一直处于低电平状态,说明内部报文有错误情况。
通过以上分析可知,应用于局部网络中的高速CAN收发器中波特率匹配检测实现方法可以满足功能要求,配置灵活,对CAN总线上EMC和其它未知错误而出现报文错误的情况具有一定容忍性。
以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为的具体实施方式。根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
Claims (8)
1.用于局部网络的高速CAN收发器波特率匹配检测***,其特征在于,包括:
位时序逻辑,用于位定时、采样与同步;
位数据流处理器,用于解码CAN报文,并且检测CAN FD报文;
采样波特率配置寄存器,用于外部配置标准CAN波特率;
波特率分频器,波特率分频器按采样波特率配置寄存器的值,把***时钟分频成对应CAN标准波特率的最小时间Tq;
移位寄存器模块,包含多个移位寄存器,用于暂存CAN协议解码器解码的各段数据;
报文错误管理逻辑,用于检测各段数据是否出现报文错误,并对错误个数进行计数,同时会产生波特率匹配中断信号和报文错误状态信号;
中断配置寄存器,用于外部使能或禁用波特率匹配中断,或者软件清除波特率匹配中断。
2.根据权利要求1所述的用于局部网络的高速CAN收发器波特率匹配检测***,其特征在于,位时序逻辑按对应波特率对接收的数据进行采样,将采样点和采样位送到位数据流处理器,同时位数据流处理器反馈同步模式给位时序逻辑,以确定采用何种同步模式。
3.根据权利要求1所述的用于局部网络的高速CAN收发器波特率匹配检测***,其特征在于,位数据流处理器在CAN报文位流的跳转过程,会检测CAN FD帧,并在位流状态机中添加额外的CAN FD状态。
4.根据权利要求1所述的用于局部网络的高速CAN收发器波特率匹配检测***,其特征在于,所述采样波特率配置寄存器支持50K,100K,125K,250K,500K,1M标准CAN波特率配置。
5.根据权利要求1所述的用于局部网络的高速CAN收发器波特率匹配检测***,其特征在于,错误管理逻辑的工作流程为:
通过报文错误管理逻辑中的错误计数器计数报文错误出现次数,在出现报文错误时,错误计数器自加“1”,通过错误计数器计数报文错误出现次数,若超过计数阈值,则产生波特率未匹配中断,若整个一帧未出现报文错误,则错误计数器自减“1”;
只要有报文错误,在报文错误状态寄存器中标志;
总线空闲时间超过总线静默时间,意味着整个总线已经处于静默状态,波特率匹配检测重新开始,报文错误计数器复位清零。
6.根据权利要求5所述的用于局部网络的高速CAN收发器波特率匹配检测***,其特征在于,所述的计数阈值为31。
7.根据权利要求5所述的用于局部网络的高速CAN收发器波特率匹配检测***,其特征在于,总线静默时间为1s。
8.根据权利要求1所述的用于局部网络的高速CAN收发器波特率匹配检测***,其特征在于,该***还包括独立的门控时钟,当外部外部使能局部网络,独立的门控时钟会打开,否则,时钟被关闭。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110968661.3A CN113688086A (zh) | 2021-08-23 | 2021-08-23 | 用于局部网络的高速can收发器波特率匹配检测*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110968661.3A CN113688086A (zh) | 2021-08-23 | 2021-08-23 | 用于局部网络的高速can收发器波特率匹配检测*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113688086A true CN113688086A (zh) | 2021-11-23 |
Family
ID=78581487
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110968661.3A Pending CN113688086A (zh) | 2021-08-23 | 2021-08-23 | 用于局部网络的高速can收发器波特率匹配检测*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113688086A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114826977A (zh) * | 2022-04-12 | 2022-07-29 | 广州致远电子有限公司 | 一种波特率检测方法、装置、终端设备以及存储介质 |
CN115981289A (zh) * | 2023-02-10 | 2023-04-18 | 力高(山东)新能源技术股份有限公司 | 一种can特定帧唤醒的故障诊断处理方法 |
CN117376058A (zh) * | 2023-12-07 | 2024-01-09 | 武汉神动汽车电子电器股份有限公司 | 一种can总线波特率自适应方法 |
CN117650866A (zh) * | 2023-11-23 | 2024-03-05 | 广州致远仪器有限公司 | 一种can帧解码方法、装置、设备及存储介质 |
-
2021
- 2021-08-23 CN CN202110968661.3A patent/CN113688086A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114826977A (zh) * | 2022-04-12 | 2022-07-29 | 广州致远电子有限公司 | 一种波特率检测方法、装置、终端设备以及存储介质 |
CN114826977B (zh) * | 2022-04-12 | 2023-08-22 | 广州致远电子股份有限公司 | 一种波特率检测方法、装置、终端设备以及存储介质 |
CN115981289A (zh) * | 2023-02-10 | 2023-04-18 | 力高(山东)新能源技术股份有限公司 | 一种can特定帧唤醒的故障诊断处理方法 |
CN117650866A (zh) * | 2023-11-23 | 2024-03-05 | 广州致远仪器有限公司 | 一种can帧解码方法、装置、设备及存储介质 |
CN117376058A (zh) * | 2023-12-07 | 2024-01-09 | 武汉神动汽车电子电器股份有限公司 | 一种can总线波特率自适应方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113688086A (zh) | 用于局部网络的高速can收发器波特率匹配检测*** | |
RU2566948C2 (ru) | Способ и устройство для активизации абонентов шинной системы и соответствующий абонент | |
EP3576353B1 (en) | Flexible data rate handling in a data bus receiver | |
US9032124B2 (en) | Definition of wakeup bus messages for partial networking | |
US20090213915A1 (en) | Method for the non-bitrate-dependent encoding of digital signals on a bus system | |
RU2573237C2 (ru) | Способ и устройство для активизации абонентов шинной системы и соответствующий абонент | |
US10326583B2 (en) | Low-power data bus receiver | |
WO2015051189A1 (en) | Camera control interface sleep and wake up signaling | |
US8825935B2 (en) | Pattern detection for partial networking | |
CN103412634A (zh) | 一种soc芯片的mcu唤醒装置和方法 | |
US8989210B2 (en) | Method and bus connection unit for unambiguously waking users of a bus system | |
US8837468B1 (en) | Network device and method for powering a media access controller | |
CN112540943B (zh) | 一种防止i2c接口错误唤醒soc***的电路结构及方法 | |
EP1650669A2 (en) | Method and system for reducing power consumption of handsets through uart auto flow control | |
JP5134055B2 (ja) | 通信システム、トランシーバ、ノード | |
CN105792339A (zh) | 一种无线传感器网络节点低功耗设计方法 | |
JP2012065095A (ja) | 通信システム、トランシーバ、ノード | |
CN113985726B (zh) | 一种apf控制***的主从控制器通信方法 | |
JP2012054830A (ja) | 通信システム、トランシーバ、ノード | |
Pan et al. | Realization of CAN FD Shielding in High Speed CAN Transceiver for Partial Networking | |
JP2013038653A (ja) | 通信システム及び、当該通信システムに用いられるマスタノード、スレーブノード | |
JP5091292B2 (ja) | 通信システム、トランシーバ、ノード | |
CN108234075B (zh) | 通过在帧定位处理中使用串行比较、用于成帧器的功率优化机制 | |
US20220179663A1 (en) | Network system | |
CN107133148A (zh) | 一种SoC总线监视装置及其工作方法 |
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 | ||
CB03 | Change of inventor or designer information | ||
CB03 | Change of inventor or designer information |
Inventor after: Pan Jian Inventor after: Zhang Wenjie Inventor before: Xie Liang Inventor before: Zhang Wenjie Inventor before: Pan Jian |