掌桥专利:专业的专利平台
掌桥专利
首页

背景技术

控制器局域网(CAN)是由国际标准组织(ISO)11898标准定义的串行数据通信总线拓扑结构和相关的基于对等消息的协议。CAN为各种应用(包括工业、汽车、机器人和马达控制系统)提供高达1兆位/秒的位速率。

发明内容

本文公开了使用低准确度时钟来接收数据帧的控制器局域网接收器。在一个示例中,一种控制器局域网接收器包括测量电路、滤波器电路和帧检测电路。测量电路耦接至位流输入端子,并且包括计时器电路和误差计算电路系统(circuitry)。计时器电路耦接至位流输入端子和参考时钟发生器电路。误差计算电路系统耦接至计时器电路。滤波器电路耦接至测量电路,并且包括误差限幅控制电路系统和时钟周期调整电路系统。误差限幅控制电路系统耦接至误差计算电路系统。时钟周期调整电路系统耦接至误差计算电路系统和计时器电路。帧检测电路耦接至滤波器电路和位流输入端子。

在另一个示例中,一种方法包括由控制局域网接收器测量分组的第一下降沿和分组的第二下降沿之间的时间。由控制器局域网接收器基于分组的第一下降沿和分组的第二下降沿之间的时间确定接收器的位时间相对于分组的位时间的误差。由控制器局域网接收器基于先前获取的误差的值来限制误差的值的变化。由控制器局域网接收器基于误差的值调整接收器的位时间。由控制器局域网接收器检测分组是否是控制器局域网数据帧。基于确定分组不是控制器局域网数据帧,恢复响应于先前接收的帧而存储的用于执行限制和调整的参数。

在另外的示例中,一种控制器局域网接收器包括测量电路、帧检测电路和滤波器电路。测量电路包括计时器电路和误差计算电路。计时器电路被配置成测量分组的第一下降沿和分组的第二下降沿之间的时间。误差计算电路被配置成基于分组的第一下降沿和分组的第二下降沿之间的时间确定控制器局域网接收器的位时间相对于分组的位时间的误差。帧检测电路被配置成检测分组是否是控制器局域网数据帧。滤波器电路耦接至测量电路和帧检测电路,并且包括误差限幅控制电路系统、时钟周期调整电路系统和状态存储电路系统。误差限幅控制电路系统被配置成基于先前获取的误差的值来限制误差的值的变化。时钟周期调整电路系统被配置成基于误差的值调整接收器的位时间。状态存储电路系统被配置成基于分组不是控制器局域网数据帧而恢复在先前接收的控制器局域网数据帧中生成的滤波器的参数。

附图说明

为了详细描述各种示例,现在将参考附图,在附图中:

图1示出根据本公开的包括控制器局域网(CAN)的示例系统的框图;

图2示出根据本公开的示例CAN接收器;

图3示出根据本公开的CAN接收器中包括的示例限幅电路;

图4示出根据本公开的CAN接收器中包括的示例微动电路(nudge circuit);并且

图5示出根据本公开的用于接收CAN分组的示例方法的流程图。

具体实施方式

在本说明书和权利要求中使用了某些术语来指代特定的系统部件。如本领域技术人员将理解的,不同的当事人可以用不同的名称来指代一个部件。本文件并非旨在区分名称不同而功能相同的部件。在本公开和权利要求中,术语“包括”和“包含”以开放方式使用,并且因此应被解释成意指“包括但不限于…”。同样,术语“耦接”或“耦合”旨在意指间接或直接的有线或无线连接。因此,如果第一设备耦接至第二设备,则该连接可以通过直接连接或者通过经由其他设备和连接的间接连接。叙述“基于”旨在意指“至少部分地基于”。因此,如果X基于Y,则X可以是Y和任何数量的其他因素的函数。

实现控制器局域网(CAN)的系统通常是功率敏感的。例如,经由CAN提供通信的一些系统是电池供电的,并且降低CAN电路系统消耗的功率可以延长此类系统的操作寿命。为了降低功率消耗,CAN电路系统在未使用时转换至低功率状态,并且监测总线的通信活动。当检测到指向CAN电路系统的通信时,CAN电路系统被完全供电。

在监测CAN总线的通信活动时,CAN电路系统接收经由CAN总线传输的分组。分组接收包括CAN接收器中的位采样与经由CAN总线传输的位的同步。一些CAN接收器包括晶体振荡器,该晶体振动器提供准确的时钟信号,用于对经由CAN总线传输的位进行采样。晶体振荡器消耗大量功率,并且当CAN总线怠机时晶体振荡器保持活动以启用分组检测以用于唤醒CAN电路系统。

本文公开的CAN接收器在不使用晶体振荡器的情况下提供分组接收。相应地,相对于CAN接收器的其他实施方式,可以降低由CAN接收器消耗的功率。本公开的CAN接收器以相对不准确的时钟(例如,相对于标称时钟频率多达±5%的误差)操作,该时钟可以用接收器电路系统在芯片上实现并且消耗比晶体振荡器少得多的功率。CAN接收器用于监测CAN总线的活动,并且在检测到通信时唤醒CAN电路系统。

CAN接收器通过测量从分组中的主要(下降)沿到主要沿的时间来测量接收的分组中的位的位定时,并且基于测量的时间和接收器位定时相对于测量的位时间的误差来调整应用于接收位的采样时间。接收器定时锁定至四个分组内的分组定时。CAN接收器识别CAN-FD(CAN灵活数据速率)分组,并且通过恢复在接收CAN-FD分组之前保存的接收器参数,回滚在接收CAN-FD分组期间对接收器参数进行的任何更新。因此,应用于CAN接收器中的参数未被CAN-FD分组或噪声破坏。

图1示出根据本公开的包括CAN的示例系统100的框图。系统100包括设备102、设备104和设备106,这些设备耦接至线对108并经由线对108通信。端接电阻器114和端接电阻器116设置在线对108的末端处以减少信号反射。设备102、设备104和设备106包括电路系统110,以用于根据由ISO11898标准规定的CAN协议经由线对108传输和接收数据。电路系统10包括CAN接收器112。当设备104的其他电路系统处于降低功率状态时,CAN接收器112监测线对108中由另一设备(例如,设备102或设备104)传输的信号。在一些实施方式中,一旦检测到CAN分组,CAN接收器112或相关联的电路系统就唤醒设备104的电路系统来处理分组。

CAN接收器112包括低准确度振荡器(例如,用于对线对108上的位进行采样的标称频率的±5%),该低准确度振荡器用于生成用于对线对108上的位进行采样的定时。CAN接收器112通过测量从分组中的主要(下降)沿到主要沿的时间(例如,连续下降沿之间的时间)来测量接收的分组中的位的位定时,并且基于测量的时间和接收器位定时相对于测量的位时间的误差来调整应用于接收位的采样时间。CAN接收器112锁定至四个分组内的分组定时。CAN接收器112识别CAN-FD分组,并且通过恢复在接收CAN-FD分组之前保存的接收器参数,回滚在接收CAN-FD分组期间对影响采样定时的参数进行的任何更新。因为CAN接收器112能够使用低准确度振荡器而不是晶体振荡器来接收CAN分组,所以相对于在设备处于降低功率状态时使用晶体振荡器检测CAN传输的CAN接收器实施方式,CAN接收器112的功率消耗被降低。

图2示出根据本公开的示例CAN接收器200。CAN接收器200是CAN接收器112的实施方式。CAN接收器200包括帧检测电路202、测量电路204、滤波器电路206和采样器电路208。在CAN接收器200的一些实施方式中,帧检测电路202和测量电路204经由短时脉冲干扰(glitch)滤波器电路210耦接至位流输入端子258。短时脉冲干扰滤波器电路210阻挡小于预定持续时间的脉冲从位流输入端子258传到帧检测电路202、测量电路204和采样器电路208。

帧检测电路202测试在位流输入端子258处接收的分组,以确定分组是否是CAN帧。滤波器电路206耦接至测量电路204和帧检测电路202,并且调整CAN接收器200的定时以用于仅对与CAN帧相关的接收的位进行采样。例如,帧检测电路202将CAN帧与CAN-FD帧区分开,并且使得能够基于CAN帧而不基于CAN-FD帧调整位接收的定时。帧检测电路202包括以不同采样速率对到来的分组进行采样的多个采样电路。采样电路中的一个或多个以低于CAN帧的标称位速率的速率对分组进行采样,并且采样电路中的一个或多个以高于CAN帧的标称位速率的速率对分组进行采样。帧检测器耦接至采样电路中的每一个以确定由相关联的采样电路采样的分组是否是CAN帧。

在图2中示出的帧检测电路202的实施方式中,帧检测电路202包括采样电路212、采样电路214、采样电路216、采样电路218、帧检测器220、帧检测器222、帧检测器224和帧检测器226。采样电路212、214、216和218耦接至位流输入端子258。采样电路212耦接至帧检测器220,采样电路214耦接至帧检测器222,采样电路216耦接至帧检测器224,并且采样电路218耦接至帧检测器226。帧检测电路202还包括表决电路228,该表决电路228基于帧检测器的输出确定分组是否是CAN帧。表决电路228耦接至帧检测器220、帧检测器222、帧检测器224和帧检测器226。如果在分组结束时,帧检测器中的任何一个或多个已确定分组是CAN帧,则表决电路228将分组识别为CAN帧。如果在接收分组期间的任何时间处,所有帧检测器均确定分组不是CAN帧,则表决电路228认为分组不是CAN帧。分组识别的结果被提供至滤波器206以供更新滤波器206时使用。

测量电路204测量由CAN接收器200接收的分组(例如,位流)中的从主要沿到主要沿的时间。测量被应用于调整CAN接收器200的位接收定时。测量电路204包括计时器电路230和误差计算电路系统231。误差计算电路系统231耦接至计时器电路230。计时器电路230耦接至参考时钟发生器电路209,并且将所生成的相对不准确的参考时钟信号(例如,相对于标称频率±5%的准确度)应用到参考时钟发生器电路209,以对分组的位进行异步采样。计时器电路230将从主要沿到主要沿的时间测量为位(CAN位,其中每位为预定数量的时钟循环)的数量、计数(参考时钟信号循环)的数量和偏移值(少于时钟循环的时间)。由计时器电路230生成的测量值被提供至误差计算电路系统231。

误差计算电路系统231基于从计时器电路230接收的测量值生成误差值(例如,百分比误差值)。误差值是对CAN接收器200的位定时相对于所接收的分组的位定时的误差的测量。误差计算电路系统231包括误差参考电路232、误差大小电路234、百分比误差电路236和误差限幅电路238。误差参考电路232基于由计时器电路230测量的位的数量确定待与由计时器电路230提供的测量值比较的阈值。例如,阈值定义通过将由计时器电路230测量的位的数量乘以每位的预定时钟循环的数量而确定的0.1%误差参考。误差大小电路234生成表示接收器位定时中的误差的值。例如,误差大小电路确定由计时器电路230测量的计数和偏移值与所接收的位的数量的预期计数和偏移值的差。百分比误差电路206耦接至误差参考电路232和误差大小电路234。百分比误差电路236将由误差大小电路234生成的误差值与由误差参考电路232生成的阈值进行比较。将比较近似除以0.1%误差参考以在百分比误差电路236的输出236A处产生百分比误差值237。

百分比误差电路236耦接至误差限幅电路238。误差限幅电路238基于由滤波器电路206提供的反馈来限制被提供至滤波器电路206的百分比误差值237。例如,误差限幅电路238可以将被提供至滤波器电路206的百分比误差值237限制在高范围、中范围或低范围内,其中高范围允许百分比误差值237的相对大的变化,低范围允许百分比误差值237的相对小的变化,并且中范围允许百分比误差值237的中等变化,其中中等变化大于小变化并且小于大变化。

图3示出示例误差限幅电路300。误差限幅电路300为误差限幅电路238的实施方式。误差限幅电路300包括高限制电路302、中限制电路304、低限制电路306和多路复用器308。多路复用器308耦接至高限制电路302、中限制电路304和低限制电路306。高限制电路302、中限制电路304和低限制电路306各自处理从百分比误差电路236接收的百分比误差值237以将百分比误差值237的值限制到相应的范围。例如,在误差限幅电路300的一些实施方式中,高限制电路302将百分比误差值237限制到±32的范围,并且中限制电路304将百分比误差值237限制到±16的范围,并且低限制电路306将百分比误差值237限制到±8的范围。多路复用器308基于由滤波器电路206提供的信号262(在选择输入308A处接收的)选择高限制电路302、中限制电路304和低限制电路306的受限输出,以在输出308B处生成经限幅的百分比误差信号264。

现在回到图2,滤波器电路206包括时钟周期调整电路系统207、采样寄存器240和误差限幅控制电路系统242。误差限幅控制电路系统242耦接至采样寄存器240。采样寄存器240耦接至百分比误差电路236,并且误差限幅控制电路系统242耦接至误差限幅电路238。百分比误差电路236在输出236B处生成大误差信号260,该大误差信号260指示CAN接收器200的定时中的大正误差或大负误差。在CAN接收器200的一些实施方式中,大误差是大于采样误差的误差。大误差的存在指示需要相对快的时钟调整。采样寄存器240存储大误差信号260的多个样品。图2中示出的采样寄存器240存储了大误差信号260的四个样品。误差限幅控制电路系统242评估存储在采样寄存器中的大误差值,以在输出242A处生成信号262,该信号262控制误差限幅电路238。误差限幅控制电路系统242的实施方式操作如下:

如果(大负误差的和>大正误差的和),则误差限幅控制电路系统242在误差限幅电路238中为负限幅选择高范围并且为正限幅选择低范围;

否则如果(大正误差的和大于大负误差的和),则误差限幅控制电路系统242在误差限幅电路238中为正限幅选择高范围并且为负限幅选择低范围;

否则,误差限幅控制电路系统242在误差限幅电路238中为正限幅选择中范围并且为负限幅选择中范围。

时钟周期调整电路系统207包括采样寄存器244、求和电路系统246、微动电路248、求和电路系统250、增益电路252、求和电路系统254和时钟周期参考电路256。采样寄存器244耦接至误差限幅电路238和求和电路系统246。微动电路248耦接至求和电路系统246、求和电路系统250、增益电路252和求和电路系统254。时钟周期参考电路256耦接至求和电路系统254和计时器电路230。采样寄存器244存储由误差限幅电路238生成的经限幅的百分比误差信号264的多个样品。图2中示出的采样寄存器244存储经限幅的百分比误差信号264的四个样品。求和电路系统246对存储在采样寄存器244中的经限幅的百分比误差信号264的值求和。求和电路系统246的输出266(即,存储在采样寄存器244中的值的和)被提供至微动电路248和求和电路系统250。求和电路系统250对求和电路系统246的输出266和微动电路248的输出268求和。求和电路系统250的输出270(即,输出266和输出268的和)被提供至增益电路252。增益电路252将输出270乘以增益系数(例如,1/16、5/64等)以产生输出272,该输出272限定待应用于时钟周期参考电路256中存储的接收器时钟周期值的调整。求和电路系统254对输出272和接收器时钟周期274的当前值求和,以生成被提供至计时器电路230的经调整的接收器时钟周期值276。在CAN接收器200的一些实施方式中,经调整的接收器时钟周期值276被提供为计数值和偏移值。

微动电路248对过小而不足以导致增益电路252产生输出272的输出266的值进行累积。图4示出示例微动电路400。微动电路400是微动电路248的实施方式。微动电路400包括计数器402、门电路系统404和门电路系统406。计数器402耦接至门电路系统404和门电路系统406。计数器402由输出272置零。即,当输出272有效以产生经调整的接收器时钟周期值276的变化时,计数器402被置零。当输出272有效并且输出266大于零时,门电路系统404生成使计数器402递增的信号408。当输出272有效并且输出266小于零时,门电路系统404生成使计数器402递减的输出410。计数器402产生输出268,求和电路系统250将输出268与输出266求和以生成被提供至增益电路252的输出270。

滤波器206还包括状态存储电路系统211。在每个分组结束时,状态存储电路系统211存储在接收分组期间生成的各种值。例如,状态存储电路系统211将采样寄存器240中的值的副本、采样寄存器244中的值的副本、时钟周期参考电路256的值的副本和/或计数器402的值的副本存储在影子寄存器中(例如,专用于这些值的备份存储而进行寄存)。如果下一接收的分组未被帧检测电路202识别为CAN帧,则将存储在影子寄存器中的值恢复到滤波器电路206。通过恢复在接收前一识别的CAN帧期间产生的滤波器的状态,CAN接收器200防止由于在接收非CAN分组期间进行的调整而引起的接收器定时的破坏。

采样器电路208耦接至测量电路204和短时脉冲干扰滤波器电路210。采样器电路208基于由测量电路204提供的接收器位定时信息对由CAN接收器200接收的分组进行采样。例如,采样器电路208基于由计时器电路230生成的位、计数和偏移值对由CAN接收器200接收的分组进行采样。在采样器电路208的一些实施方式中,采样器电路208输出接收的位值278和/或采样时间值280。

图5示出根据本公开的用于接收CAN分组的示例方法500的流程图。尽管为了方便起见而按顺序描绘,但是所示动作中的至少一些可以按不同次序执行并且/或者并行执行。此外,一些实施方式可以仅执行所示动作中的一些。方法500的操作由CAN接收器200的实施方式执行。

在框502中,CAN接收器200接收分组。

在框504中,帧检测电路202执行CAN帧检测。CAN帧检测包括以多个采样速率对正在接收的分组进行采样,其中采样速率中的一些高于标称位速率;并且一些采样速率低于标称位速率。帧检测器分析以不同采样速率进行采样的结果以确定分组是否是CAN帧。如果在分组结束时,任一帧检测器将分组识别为CAN帧,则分组被认为是CAN帧。

在框506中,计时器电路230测量分组的两个连续主要(下降)沿之间的时间。两个主要沿之间的时间可以在两个至十个位时间的范围内。

在框508中,误差计算电路系统231基于由计时器电路230提供的测量值(位、计数和偏移)确定CAN接收器200的定时中的位时间误差的值。位时间误差的值包括百分比误差值237。

在框510中,误差计算电路系统231将百分比误差值237限制到基于由误差计算电路系统231生成的以前的误差值而选择的范围。例如,误差计算电路系统231可以根据如由误差计算电路系统231生成的先前误差值所限定的滤波器电路206的变化的幅值和方向,将百分比误差值237限制到小范围、中范围或大范围。

在框512中,滤波器电路206基于在框510中生成的百分比误差值237的经限幅的值来调整接收器位定时(即,经调整的接收器时钟周期值276)。调整包括在微动电路248中对过小而不足以导致对接收器的位时间的调整的误差进行累积以及将累积的误差添加至误差的值以调整接收器的位时间。

在框514中,接收当前分组完成,并且帧检测电路202将分组识别为CAN帧,或者识别为不是CAN帧。如果分组未被识别为CAN帧,则在框516中,滤波器电路206恢复在当前分组之前的上一识别的CAN帧结束时存储的滤波器电路206的值。如果分组被识别为CAN帧,则在框518中,滤波器电路206存储在接收当前分组期间通过滤波器电路206的操作而生成的滤波器电路206的值。

上述讨论意在例示本发明的原理和各种实施例。一旦完全理解了上述公开内容,多种变型和修改就将对本领域技术人员变得显而易见。以下权利要求旨在被解释成涵括所有此类变型和修改。

相关技术
  • 控制器局域网接收器
  • 用于声接收器的线圈轴、声接收器电机以及声接收器
技术分类

06120112579778