CAN device featuring advanced can filtering and message acceptance
    1.
    发明授权
    CAN device featuring advanced can filtering and message acceptance 有权
    CAN设备具有先进的可以过滤和消息接收

    公开(公告)号:US07443885B2

    公开(公告)日:2008-10-28

    申请号:US10797790

    申请日:2004-03-10

    IPC分类号: H04J3/24

    摘要: A device that supports a plurality n of message objects, including a plurality of registers associated with each message object, including at least one object match ID register that contains a multi-bit object match ID field, and at least one object mask register that contains a multi-bit object mask field; and, a CAN/CAL module that processes incoming messages. The CAN/CAL module assembles a multi-bit screener ID from selected bits of each incoming message to be acceptance filtered, compares the bits comprising the screener ID with corresponding bits of the object match ID field associated with each of at least designated ones of the message objects, disregarding any bits of each object match ID field that are masked by corresponding bits of the associated object mask field, and then determines whether any of the comparisons results in a match.

    摘要翻译: 支持多个n个消息对象的设备,包括与每个消息对象相关联的多个寄存器,包括至少一个包含多位对象匹配ID字段的对象匹配ID寄存器,以及至少一个对象掩码寄存器,其包含 多位对象掩码字段; 以及处理传入消息的CAN / CAL模块。 CAN / CAL模块从每个传入消息的选定位组合一个多位筛选器ID,以被接受过滤,将包括筛选器ID的比特与对应的匹配ID字段的相应位相比较, 消息对象,忽略由相关联的对象掩码字段的相应位掩蔽的每个对象匹配ID字段的任何位,然后确定是否有任何比较导致匹配。

    Can device featuring advanced can filtering and message acceptance
    2.
    发明授权
    Can device featuring advanced can filtering and message acceptance 有权
    具有先进功能的设备可以过滤和消息接收

    公开(公告)号:US06732254B1

    公开(公告)日:2004-05-04

    申请号:US09630666

    申请日:2000-08-01

    IPC分类号: H04L1228

    摘要: A CAN device that supports a plurality n (where n≧3) of message objects, including a plurality of registers associated with each message object, including at least one object match ID register that contains a multi-bit object match ID field, and at least one object mask register that contains a multi-bit object mask field; and, a CAN/CAL module that processes incoming messages. The CAN/CAL module assembles a multi-bit screener ID from selected bits of each incoming message to be acceptance filtered, compares the bits comprising the screener ID with corresponding bits of the object match ID field associated with each of at least designated ones of the plurality n of message objects, disregarding any bits of each object match ID field that are masked by corresponding bits of the associated object mask field, and then determines whether any of the comparisons results in a match. Any selected one or more bits of the object match ID field associated with each of the plurality n of message objects can be set to ‘1’ or ‘0’, and any selected one or more bits of the object mask field associated with each of the plurality n of message objects can be set to ‘1’ or ‘0’ in order to mask any selected one or more bits of the associated object match ID field, whereby the combination of the object match ID field and the object mask field associated with each of the plurality n of message objects constitutes a fully programmable match and mask filter. The CAN/CAL module has the capability to perform acceptance filtering on incoming messages constituting either standard or extended CAN frames. If more than one match is detected, a lowest-numbered (or, alternatively, highest-numbered) one of the message objects is designated to be the matching message object.

    摘要翻译: 支持消息对象的多个n(其中n> = 3)的CAN设备,包括与每个消息对象相关联的多个寄存器,包括至少一个包含多位对象匹配ID字段的对象匹配ID寄存器,以及 至少一个包含多位对象掩码字段的对象掩码寄存器; 以及处理传入消息的CAN / CAL模块。 CAN / CAL模块从每个传入消息的选定位组合一个多位筛选器ID,以被接受过滤,将包括筛选器ID的比特与对应的匹配ID字段的相应位相比较, 多个n个消息对象,忽略由相关联的对象掩码字段的相应位屏蔽的每个对象匹配ID字段的任何位,然后确定是否有任何比较导致匹配。 可以将与多个n个消息对象中的每一个相关联的对象匹配ID字段的任何所选择的一个或多个比特设置为“1”或“0”,并且与每个消息对象中的每一个相关联的对象掩码字段的任何选定的一个或多个比特 可以将多个n个消息对象设置为“1”或“0”,以便掩盖相关联的对象匹配ID字段中的所选择的一个或多个位,由此对象匹配ID字段和对象掩码字段的组合相关联 多个n个消息对象中的每一个构成完全可编程的匹配和掩码过滤器。 CAN / CAL模块能够对构成标准或扩展CAN帧的传入消息执行验收过滤。 如果检测到多于一个匹配,则将最低编号(或替代地,最高编号)的一个消息对象指定为匹配消息对象。

    End-of-message handling and interrupt generation in a CAN module providing hardware assembly of multi-frame CAN messages

    公开(公告)号:US06647440B1

    公开(公告)日:2003-11-11

    申请号:US09630288

    申请日:2000-08-01

    IPC分类号: G06F1314

    摘要: A CAN microcontroller that supports a plurality of uniquely-numbered message objects, that includes a processor core that runs CAN applications, a plurality of message buffers associated with respective ones of the message objects, and a CAN/CAL module. The CAN microcontroller further includes a plurality of individual message object registers associated with each message object, including at least one control register that contains an interrupt-enable control bit, a receive enable bit, and a transmit enable bit. The CAN microcontroller also includes a plurality of global message object control registers, including at least one message complete status register that contains a plurality of status flag bits for respective ones of the message objects, at least one interrupt flag register that contains a receive complete interrupt flag bit and a transmit complete interrupt flag bit, and a message complete info register that contains a plurality of message object identification bits and a status bit. The CAN/CAL module includes a message handling function that automatically transfers successive frames of an incoming multi-frame message to the message buffer associated with a corresponding message object; an end-of-message detection function that detects an end-of-message condition which occurs when the last frame of the accepted incoming multi-frame message has been stored in the message buffer associated with the corresponding message object; and, an end-of-message detection handling and interrupt generation function that, in response to the detection of the end-of-message condition: sets the status flag bit contained in the at least one message complete status register associated with the corresponding message object; sets the receive complete interrupt flag bit contained in the at least one interrupt flag register, if the interrupt-enable control bit contained in the at least one control register associated with the corresponding message object is set; and, sets the status bit contained in the message complete info register, if the interrupt-enable control bit contained in the at least one control register associated with the corresponding message object is set.

    Transmit pre-arbitration scheme for a can device and a can device that implements this scheme
    4.
    发明授权
    Transmit pre-arbitration scheme for a can device and a can device that implements this scheme 有权
    发送用于实现该方案的罐装置和罐装置的预仲裁方案

    公开(公告)号:US06510479B1

    公开(公告)日:2003-01-21

    申请号:US09630642

    申请日:2000-08-01

    申请人: Hong Bin Hao

    发明人: Hong Bin Hao

    IPC分类号: G06F1314

    摘要: In a CAN device, e.g., a CAN microcontroller, that supports a plurality of message objects, a method that includes concurrently staging two or more transmit messages associated with respective ones of two or more enabled transmit message objects for attempted transmission over a CAN bus coupled to the CAN device, and performing a pre-arbitration process to determine which of the two or more concurrently staged transmit messages has priority. The message determined to have priority is deemed a winning message and the message object associated with the winning message is deemed a winning message object. In a presently preferred embodiment, the pre-arbitration process is a selected one of at least two pre-arbitration schemes, including a first pre-arbitration scheme whereby priority is determined according to a CAN bus arbitration priority scheme established by the governing CAN protocol, and a second pre-arbitration scheme whereby priority is determined by selecting the transmit message associated with the highest-numbered (or, alternatively, lowest-numbered) message object as the winning message. In the event that more than one of the two or more concurrently staged transmit messages are determined to have the same priority, the transmit message associated with the highest-numbered message object is designated as the winning message. The method further includes attempting to transmit the winning message over the CAN bus. If the winning message is not granted access to the CAN bus, the pre-arbitration priority determination process is repeated.

    摘要翻译: 在支持多个消息对象的CAN设备(例如,CAN微控制器)中,一种方法包括同时分级两个或更多个与两个或更多个使能的发送消息对象中的相应的发送消息相关联的发送消息,用于在CAN总线上的尝试传输 并且执行预仲裁处理以确定两个或多个并行上发的发送消息中的哪一个具有优先权。 确定为具有优先级的消息被认为是获胜消息,并且与获胜消息相关联的消息对象被认为是获胜消息对象。 在当前优选的实施例中,预先仲裁过程是至少两个预先仲裁方案中的一个选择的方案,其包括第一预先仲裁方案,其中优先权根据由控制CAN协议建立的CAN总线仲裁优先级方案来确定, 以及第二预先仲裁方案,其中通过选择与最高编号(或替代地,最低编号)消息对象相关联的发送消息作为获胜消息来确定优先级。 在两个或更多个并发上发的消息中的多于一个确定为具有相同优先级的情况下,将与最高编号的消息对象相关联的发送消息指定为获胜消息。 该方法还包括尝试通过CAN总线发送获胜消息。 如果获胜消息未被授权访问CAN总线,则重复仲裁前优先级确定处理。

    Method for writing back message ID information to a match ID register and a CAN microcontroller that implements this method
    5.
    发明授权
    Method for writing back message ID information to a match ID register and a CAN microcontroller that implements this method 有权
    将消息ID信息写回匹配ID寄存器和实现此方法的CAN微控制器的方法

    公开(公告)号:US06434432B1

    公开(公告)日:2002-08-13

    申请号:US09474905

    申请日:1999-12-30

    IPC分类号: G05B1500

    摘要: A method for acceptance filtering incoming CAN frames, in a CAN device that provides a plurality of message objects each of which has an associated message buffer, at least one associated match ID register, and at least one associated mask register. The method includes the steps of extracting a multi-bit screener ID field from a received CAN frame, and then comparing the extracted screener ID field to a respective, user-specified multi-bit match ID field stored in the at least one match ID register associated with each enabled one of the message objects designated to be a receive message object, wherein the at least one mask register associated with each enabled message object designated to be a receive message object stores a user-specified, multi-bit mask field that masks selected bits of the corresponding match ID field, the masked bits being excluded from the comparisons. If a match is found as a result of the comparing step, data bytes of the received CAN frame are stored in the message buffer associated with the matching message object, and the extracted screener ID field is written into the at least one match ID register associated with the matching message object to replace the match ID field associated with the matching message object. The extracted screener ID field is not stored in the message buffer associated with the matching message object.

    摘要翻译: 一种在提供多个消息对象的CAN设备中接收滤波输入CAN帧的方法,每个消息对象具有相关联的消息缓冲器,至少一个相关联的匹配ID寄存器和至少一个相关联的掩码寄存器。 该方法包括以下步骤:从接收的CAN帧中提取多比特筛选器ID字段,然后将提取的筛选器ID字段与存储在至少一个匹配ID寄存器中的相应的用户指定的多比特匹配ID字段进行比较 与指定为接收消息对象的消息对象中的每个被启用的消息对象相关联,其中与被指定为接收消息对象的每个启用消息对象相关联的所述至少一个屏蔽寄存器存储用户指定的多位掩码字段 相应的匹配ID字段的选定位,被比较的比特被排除。 如果作为比较步骤的结果发现匹配,则接收的CAN帧的数据字节被存储在与匹配消息对象相关联的消息缓冲器中,并且所提取的筛选器ID字段被写入至少一个匹配ID寄存器相关联 与匹配的消息对象替换与匹配消息对象相关联的匹配ID字段。 提取的筛选器ID字段不存储在与匹配消息对象相关联的消息缓冲器中。