Vehicle gauge chip-oriented bus controller compatible with CAN and CAN FD
By designing a bus controller compatible with CAN and CAN FD in the automotive on-board network, using a programmable CAN FD router to reduce the data transmission rate, the problem of compatibility is solved without the need to modify the CAN FD node, and the automotive on-board network pair is realized CAN is compatible with CAN FD bus.
Patent Information
- Application Number
- CN202411362191.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-27
- Publication Date
- 2025-02-18
AI Technical Summary
In automotive in-vehicle networks, it is difficult for the prior art to achieve compatibility with CAN and CAN FD bus without the need to modify CAN FD nodes.
Design a CAN and CAN FD-compatible bus controller for automotive chips, using automotive information control unit, CAN FD bridge and multiple electronic control units, and is between CAN FD nodes and CAN nodes through a programmable CAN FD router. Reduce the data transmission rate and achieve compatibility.
The automotive on-board network is compatible with CAN and CAN FD bus, avoiding the transformation of CAN FD nodes, simplifying the development process, and reducing costs.
Smart Images

Figure CN119484190A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of vehicle-mounted network technology, and in particular to a bus controller compatible with CAN and CAN FD for vehicle-grade chips. Background Art
[0002] With the development of artificial intelligence technology, some car companies have launched cars with intelligent driving functions. This type of car is called a smart car, which uses artificial intelligence technology to greatly improve the safety and comfort of the driver. At present, most cars in the industry use the Controller Area Network (CAN) bus to build the vehicle network, allowing each electronic control unit (ECU) to achieve data communication. Based on its intelligent needs, smart cars need to set up more ECUs than traditional cars. During the driving process of smart cars, each ECU needs to cooperate with each other. The data communication between each node in each ECU is very frequent and requires a high transmission rate. The baud rate (i.e., transmission bandwidth) of the CAN bus protocol is limited to less than 1Mb / s, which is difficult to meet the data transmission requirements of the vehicle network of smart cars. In view of the bandwidth defects of the CAN bus, the industry has proposed an upgraded version of the bus based on the CAN bus protocol - the CAN FD (CAN with Flexible Data-Rate) bus. The CAN FD bus has a transmission bandwidth of up to 10Mb / s and improves the shortcomings of the traditional CAN bus error checking mechanism. The CAN FD bus inherits the characteristics of the CAN bus, the physical layer has not changed much, and the controller interface structure is similar to the CAN bus. The automotive in-vehicle network uses the CAN FD bus to replace the CAN bus. Only slight changes to the ECU software layer based on the original CAN bus can ensure that the ECU function is not affected.
[0003] Since CAN FD chips and controllers have only been in mass production for a short time, it will take a long time for technical verification before they can be put on the market on a large scale. The traditional CAN bus has been used in automotive in-vehicle networks for decades and is very mature. The vast majority of existing automotive electronic devices, such as ECUs, are still basically developed using the CAN bus. It is difficult for all automotive electronic device manufacturers to upgrade their automotive electronic devices to versions suitable for the CAN FD bus in a short period of time. Therefore, for a long time in the future, the CAN and CAN FD buses will coexist in automotive in-vehicle networks. The industry has proposed some solutions that can achieve compatibility with both CAN and CAN FD buses in vehicle networks. For example, patent document CN110557313A provides a vehicle-compatible network based on traditional CAN and CAN FD, including at least two CAN FD nodes and at least two traditional CAN nodes; each CAN FD node communicates with each other through CAN FD messages, and the CAN FD node and the traditional CAN node communicate with each other through CAN messages. When the traditional CAN node receives the CAN FD message, the CAN FD shielding module is used to filter the CAN FD message sent by the CAN FD node to prevent the traditional CAN node from sending an error frame, so as to achieve network compatibility between the traditional CAN node and the CAN FD node without changing the original network topology. Although the solution of the above patent document achieves compatibility with CAN and CAN FD buses, all CAN FD nodes need to be upgraded and modified, that is, they all need to be configured to be able to determine what type of bus type message to send to the target node according to the bus type of the target node, which is more troublesome. Summary of the invention
[0004] The technical problem to be solved by the present invention is how to make the vehicle-mounted network compatible with both CAN and CAN FD buses without modifying the CAN FD nodes.
[0005] In order to solve the above technical problems, the present invention provides a bus controller compatible with CAN and CAN FD for automotive chips, including a vehicle information control unit, a CAN FD bridge and multiple electronic control units, the vehicle information control unit is connected to each electronic control unit via the CAN FD bridge; each electronic control unit includes a CAN node and / or a CAN FD node; among all the electronic control units, there is at least one CAN node and at least one CAN FD node; each electronic control unit with a CAN FD node is equipped with a programmable CAN FD router, which is specifically connected to the CAN FD bridge via the programmable CAN FD router; the CAN FD node sends data to the CAN node, and the programmable CAN FD router corresponding to the electronic control unit where the CAN FD node is located reduces the transmission rate of the sent data from the CAN FD transmission rate to the CAN transmission rate.
[0006] Furthermore, the vehicle information control unit includes a CAN FD node, and the CAN FD bridge includes a frame rate converter; the CAN FD node of the vehicle information control unit sends data to the CAN node of the electronic control unit, and the frame rate converter of the CAN FD bridge reduces the transmission rate of the sent data from the CAN FD transmission rate to the CAN transmission rate.
[0007] Furthermore, an editable CAN FD router is integrated in the frame rate converter, and when the frame rate converter is enabled, the editable CAN FD router reduces the transmission rate of the transmitted data from the CAN FD transmission rate to the CAN transmission rate.
[0008] Further:
[0009] The CAN FD bridge includes a CAN arbiter, a CAN FD arbiter, a CAN error detector, a CAN FD error detector, a CAN error handler, and a CAN FD error handler, and also includes a message filter and a framer shared by the CAN bus and the CAN FD bus, and the frame rate converter is shared by the CAN bus and the CAN FD bus;
[0010] The data receiving end and data sending end of the CAN arbiter are both connected to the CAN bus, and the data forwarding end is connected to the framer via a message filter and a frame rate converter; the data receiving end and data sending end of the CAN FD arbiter are both connected to the CAN FD bus, and the data forwarding end is connected to the framer via a message filter and a frame rate converter;
[0011] The framer is connected to the data transmitting end of the CAN arbiter via the CAN error detector and the CAN error handler on the one hand, and is connected to the data transmitting end of the CAN FD arbiter via the CAN FD error detector and the CAN FD error handler on the other hand;
[0012] After receiving the data, the CAN arbitrator or CAN FD arbitrator transmits it to the message filter. The message filter determines whether the data needs to be decelerated and transmits the data and the determination result to the frame rate converter. If deceleration is required, the frame rate converter is enabled to reduce the data transmission rate from the CAN FD transmission rate to the CAN transmission rate and then transmit it to the framer. Otherwise, the frame rate converter is not enabled and the data is directly transmitted to the framer. The framer switches between the CAN bus mode and the CAN FD bus mode according to the enable status of the frame rate converter - if the frame rate converter is enabled, it switches to the CAN bus mode, and if the frame rate converter is not enabled, it switches to the CAN FD bus mode. The framer processes the data transmitted by the frame rate converter according to the current bus mode, and transmits the processed data to the corresponding bus through the error detector, error handler, and arbitrator corresponding to the bus protocol network where the data receiving node is located.
[0013] Furthermore, the framer includes a bit rate controller, a bit stuffing encoder and a CRC check module. The framer is specifically switched by the bit rate controller, the bit stuffing encoder processes the data transmitted from the frame rate converter, and the CRC check module performs integrity check on the data transmitted from the frame rate converter before transmitting it to the corresponding bus through the error detector, error handler and arbitrator corresponding to the bus protocol network where the data receiving node is located.
[0014] Further:
[0015] The vehicle information control unit is connected to the CAN FD bridge via the CAN FD bus, and the CAN FD bridge is connected to each electronic control unit via the CAN bus;
[0016] The vehicle information control unit also includes a CAN node; each electronic control unit specifically includes a CAN node and a CAN FD node;
[0017] The CAN FD node of the vehicle information control unit sends data to the CAN node of the control unit, or sends data to the CAN node / CAN FD node of each electronic control unit, and the frame rate converter of the CAN FD bridge reduces the transmission rate of the sent data from the CAN FD transmission rate to the CAN transmission rate;
[0018] The CAN FD node of each electronic control unit sends data to the CAN node of the control unit itself, or sends data to the CAN node / CAN FD node of other control units. The programmable CAN FD router corresponding to the electronic control unit reduces the transmission rate of the sent data from the CAN FD transmission rate to the CAN transmission rate, wherein the other control units include other electronic control units and vehicle information control units.
[0019] Furthermore, FPGA is used to implement the CAN FD bridge.
[0020] The CAN FD bus protocol is backward compatible with the CAN bus protocol. Therefore, a CAN FD node (a node whose communication protocol is the CAN FD bus protocol) can directly receive data from a CAN node (a node whose communication protocol is the CAN bus protocol), but a CAN node cannot directly receive data from a CAN FD node. For this reason, the bus controller compatible with CAN and CAN FD provided by the present invention is equipped with a programmable CAN FD router for each electronic control unit having a CAN FD node. Using the bus controller of the present invention, the CAN FD node adopts the same data transmission method whether it is facing a CAN FD node or a CAN node. The CAN FD node does not need to be modified as in the patent literature of the background technology. The bus controller of the present invention uses a programmable CAN FD router to reduce the transmission rate of the data sent by the CAN FD node to the CAN node from the CAN FD transmission rate to the CAN transmission rate, so that the CAN node can receive data from the CAN FD node, and realize that the vehicle-mounted network is compatible with both the CAN and CAN FD buses. BRIEF DESCRIPTION OF THE DRAWINGS
[0021] Figure 1 This is a topological architecture diagram of a bus controller that is compatible with CAN and CAN FD for automotive chips.
[0022] Figure 2 It is a block diagram of the CAN FD bridge of the bus controller. DETAILED DESCRIPTION
[0023] The present invention is further described in detail below in conjunction with specific implementation methods.
[0024] like Figure 1As shown, a bus controller compatible with CAN and CAN FD includes an automobile information control unit (ICU), a CAN FD bridge and multiple electronic control units (ECU). The automobile information control unit is connected to each electronic control unit via a CAN FD bridge. Specifically, the automobile information control unit is connected to the CAN FD bridge via a CAN FD bus, and the CAN FD bridge is connected to each electronic control unit via the CAN bus. Each electronic control unit includes multiple CAN nodes and multiple CAN FD nodes. Each electronic control unit is equipped with a programmable CAN FD router, which is specifically connected to the CAN FD bridge via the programmable CAN FD router. The automobile information control unit includes multiple CAN FD nodes and multiple CAN nodes. As shown Figure 2 As shown, the CAN FD bridge is implemented by FPGA, including a CAN arbiter, a CAN FD arbiter, a CAN error detector, a CAN FD error detector, a CAN error processor and a CAN FD error processor, and also includes a message filter, a frame rate converter and a framer shared by the CAN bus and the CAN FD bus. The frame rate converter is integrated with an editable CAN FD router. The data receiving end and the data transmitting end of the CAN arbiter are both connected to the CAN bus, and the data forwarding end is connected to the framer via a message filter and a frame rate converter. The data receiving end and the data transmitting end of the CAN FD arbiter are both connected to the CAN FD bus, and the data forwarding end is connected to the framer via a message filter and a frame rate converter. The framer is connected to the data transmitting end of the CAN arbiter via the CAN error detector and the CAN error processor on the one hand, and is connected to the data transmitting end of the CAN FD arbiter via the CAN FD error detector and the CAN FD error processor on the other hand. The framer includes a bit rate controller (Bit-rate controller), a bit stuffing encoder (Bit-Stuffing encoder) and a CRC check module.
[0025] The following article describes in detail how the various CAN nodes and CAN FD nodes of the automobile information control unit ICU communicate with each other, as well as how the various CAN nodes and CAN FD nodes of the automobile information control unit ICU and the various CAN nodes and CAN FD nodes of the electronic control unit ECU communicate with each other.
[0026] (1) The CAN node of the vehicle information control unit ICU sends data to other CAN nodes / CAN FD nodes in the ICU. The process is as follows:
[0027] The CAN nodes of the vehicle information control unit ICU transmit data to the CAN FD bridge via the CAN FD bus. The CAN FD bridge is pre-configured with the ID information of all CAN nodes and CAN FD nodes of the vehicle information control unit ICU and each electronic control unit ECU. Figure 2As shown, the CAN FD arbiter of the CAN FD bridge receives the data and transmits it to the message filter. The message filter determines whether the data needs to be decelerated. Specifically: the flow information of the data (including the source node and the destination node) is obtained. The source node of the data is the CAN node of the ICU. If the destination node is the CAN node of the ICU, it belongs to the internal communication of the ICU. Since the CAN FD bus protocol is backward compatible with the CAN bus protocol, the CAN nodes can communicate directly with each other. Therefore, there is no need to decelerate the data; if the destination node is the CAN FD node of the ICU, it belongs to the internal communication of the ICU. Since the CAN FD bus protocol is backward compatible with the CAN bus protocol, the CAN FD node of the ICU can directly receive data from the CAN node of the ICU. Therefore, there is no need to decelerate the data. After the message filter determines that the data does not need to be decelerated, it transmits the data and the judgment result to the frame rate converter. According to the judgment result (no deceleration is required), the frame rate converter is not enabled, so that the data is directly transmitted to the framer. The frame rate converter is enabled in the disabled state, so the framer's Bit-rate controller switches the framer to the CAN FD bus mode by controlling the bit rate conversion switch (if it is originally in the CAN FD bus mode, there is no need to switch, and the CAN FD bus mode can be maintained). The framer's Bit-Stuffing encoder processes the data transmitted by the frame rate converter according to the current CAN FD bus mode, so that the data has the rising edge required by the CAN FD bus protocol, ensuring that the data frame will not be misjudged as an error frame. The framer's CRC check module performs integrity check on the processed data. The CRC check module contains two sets of algorithms: CRC17 algorithm and CRC21 algorithm. If the length of the data to be checked is less than 16 bytes and the corresponding CRC code is 17 bits, the CRC17 algorithm is used to check the integrity of the data. If the length of the data to be checked is greater than 16 bytes and the corresponding CRC code is 21 bits, the CRC21 algorithm is used to check the integrity of the data. After the CRC check passes, the CRC check module transmits it to the corresponding bus through the error detector, error handler, and arbitrator corresponding to the bus protocol network where the data receiving node is located. In this example, the data receiving node is the CAN node / CAN FD node of the ICU, and the bus protocol network where the ICU is located is the CAN FD network. Therefore, the CRC check module transmits the data to the CAN FD bus through the CAN FD error detector, CAN FD error handler, and CAN FD arbitrator, and then transmits the data to the corresponding CAN node / CAN FD node of the ICU via the CAN FD bus. In this way, the CAN node of the ICU can communicate with the CAN node / CAN FD node of the ICU.
[0028] (2) The CAN node of the vehicle information control unit ICU sends data to the CAN node / CAN FD node of the electronic control unit ECU. The process is as follows:
[0029] The CAN node of the vehicle information control unit ICU transmits data to the CAN FD bridge via the CAN FD bus. Figure 2 As shown, the CAN FD arbitrator of the CAN FD bridge receives the data and transmits it to the message filter. The message filter determines whether the data needs to be decelerated. Specifically: the flow information of the data (including the source node and the destination node) is obtained. The source node of the data is the CAN node of the ICU, and the destination node is the CAN node / CAN FD node of the ECU. It is a communication between the ICU and the ECU. Since the CAN FD bus protocol is backward compatible with the CAN bus protocol, the CAN node of the ICU can communicate directly with the CAN node of the ECU, and the CAN node of the ICU can also communicate directly with the CAN FD node of the ECU. Therefore, there is no need to decelerate the data. After the message filter determines that the data does not need to be decelerated, it transmits the data and the judgment result to the frame rate converter. According to the judgment result (no need for deceleration), the frame rate converter is not enabled, so that the data is directly transmitted to the framer. The frame rate converter is enabled in disabled state, so the framer's Bit-rate controller switches the framer to the CAN FD bus mode by controlling the bit rate conversion switch (if it is originally in the CAN FD bus mode, there is no need to switch, just keep the CAN FD bus mode). The framer's Bit-Stuffing encoder processes the data transmitted from the frame rate converter according to the current CAN FD bus mode, so that the data has the rising edge required by the CAN FD bus protocol, ensuring that the data frame will not be misjudged as an error frame. The framer's CRC check module performs an integrity check on the processed data. After the CRC check passes, the CRC check module transmits it to the corresponding bus through the error detector, error handler, and arbitrator corresponding to the bus protocol network where the data receiving node is located. In this example, the data receiving node is the CAN node / CAN FD node of the ECU, and the bus protocol network where the ECU is located is the CAN network. Therefore, the CRC check module transmits the data to the CAN bus through the CAN error detector, CAN error handler and CAN arbitrator, and then transmits it to the corresponding CAN node / CAN FD node of the ECU via the CAN bus. In this way, the CAN node of the ICU can communicate with the CAN node / CAN FD node of the ECU.
[0030] (3) The CAN FD node of the vehicle information control unit ICU sends data to the CAN node of this ICU. The process is as follows:
[0031] The CAN FD node of the vehicle information control unit ICU transmits data to the CAN FD bridge via the CAN FD bus. Figure 2 As shown, the CAN FD arbiter of the CAN FD bridge receives the data and transmits it to the message filter. The message filter determines whether the data needs to be decelerated. Specifically: the flow information of the data (including the source node and the destination node) is obtained. The source node of the data is the CAN FD node of the ICU, and the destination node is the CAN node of the ICU. Although it belongs to the internal communication of the ICU, the CAN node is not compatible with the CAN FD bus protocol data. The CAN node of the ICU cannot directly receive data from the CAN FD node of the ICU. Therefore, the data needs to be decelerated. After the message filter determines that the data does not need to be decelerated, it transmits the data and the judgment result to the frame rate converter. According to the judgment result (deceleration is required), the frame rate converter is enabled, so that the programmable CAN FD router integrated in the frame rate converter reduces the data transmission rate from the CAN FD transmission rate to the CAN transmission rate and then transmits it to the framer. After the data transmission rate is reduced to the CAN transmission rate, the data can be received by the CAN node. The frame rate converter is enabled, so the framer's Bit-rate controller switches the framer to the CAN bus mode by controlling the bit rate conversion switch (if it is originally in the CAN bus mode, there is no need to switch, just keep the CAN bus mode). The framer's Bit-Stuffing encoder processes the data transmitted from the frame rate converter according to the current CAN bus mode, so that the data has the rising edge required by the CAN bus protocol, ensuring that the data frame will not be misjudged as an error frame. The framer's CRC check module performs integrity check on the processed data. After the CRC check passes, the CRC check module transmits it to the corresponding bus through the error detector, error handler, and arbitrator corresponding to the bus protocol network where the data receiving node is located. In this example, the data receiving node is the CAN node of the ICU, and the bus protocol network where the ICU is located is the CAN FD network. Therefore, the CRC check module transmits the data to the CAN FD bus through the CAN FD error detector, CAN FD error handler, and CAN FD arbitrator, and then transmits it to the corresponding CAN node of the ICU through the CAN FD bus, so that the CAN FD node of the ICU communicates with the CAN node of the ICU.
[0032] (4) The CAN FD node of the vehicle information control unit ICU sends data to other CAN FD nodes of the ICU. The process is as follows:
[0033] The CAN FD node of the vehicle information control unit ICU transmits data to the CAN FD bridge via the CAN FD bus. Figure 2 As shown, the CAN FD arbitrator of the CAN FD bridge receives the data and transmits it to the message filter. The message filter determines whether the data needs to be decelerated. Specifically: the flow information of the data (including the source node and the destination node) is obtained. The source node of the data is the CAN FD node of the ICU, and the destination node is also the CAN FD node of the ICU. It belongs to the internal communication of the ICU. The CAN FD node of the ICU can directly receive data from other CAN FD nodes of the ICU. Therefore, the data does not need to be decelerated. After the message filter determines that the data does not need to be decelerated, it transmits the data and the judgment result to the frame rate converter. According to the judgment result (no deceleration is required), the frame rate converter is not enabled, so the data is directly transmitted to the framer. The enable state of the frame rate converter is disabled, so the Bit-rate controller of the framer switches the framer to the CAN FD bus mode by controlling the bit rate conversion switch (if it is originally in the CAN FD bus mode, there is no need to switch, and the CAN FD bus mode can be maintained). The Bit-Stuffing encoder of the framer processes the data transmitted by the frame rate converter according to the current CAN FD bus mode, so that the data has the rising edge required by the CAN FD bus protocol, ensuring that the data frame will not be mistakenly judged as an error frame. The CRC check module of the framer performs integrity check on the processed data. After the CRC check passes, the CRC check module transmits it to the corresponding bus through the error detector, error handler, and arbitrator corresponding to the bus protocol network where the data receiving node is located. In this example, the data receiving node is the CAN FD node of the ICU, and the bus protocol network where the ICU is located is the CAN FD network. Therefore, the CRC check module transmits the data to the CAN FD bus through the CAN FD error detector, CAN FD error handler, and CAN FD arbitrator, and then transmits it to the corresponding CAN node of the ICU through the CAN FD bus, so that the CAN FD node of the ICU can communicate with other CAN FD nodes of the ICU.
[0034] (5) The CAN node of the electronic control unit ECU sends data to the CAN node / CAN FD node of this ECU. The process is as follows:
[0035] The CAN node of the electronic control unit ECU transmits data to the programmable CAN FD router corresponding to the ECU. The programmable CAN FD router corresponding to each ECU is pre-configured with the ID information of all CAN nodes and CAN FD nodes of the automobile information control unit ICU and each electronic control unit ECU. The programmable CAN FD router determines whether the data needs to be decelerated, specifically: obtains the flow information of the data (including the source node and the destination node), the data source node is the CAN node of the ECU, the destination node is the CAN node / CAN FD node of this ECU, which belongs to the internal communication of the ECU, the CAN node of the ECU can directly receive data from other CAN nodes of this ECU, and the CAN FD node of the ECU can be backward compatible with the CAN bus protocol, and the CAN FD node of the ECU can also directly receive data from other CAN nodes of this ECU, so there is no need to decelerate the data. After the programmable CAN FD router determines that the data does not need to be decelerated, it directly transmits the data to the corresponding CAN node / CAN FD node in the ECU corresponding to the programmable CAN FD router, so that the CAN node of the ECU communicates with the CAN node / CAN FD node of this ECU.
[0036] (6) The CAN node of the electronic control unit ECU sends data to the CAN node / CAN FD node of other ECUs. The process is as follows:
[0037] The CAN node of the electronic control unit ECU transmits data to the programmable CAN FD router corresponding to the ECU. The programmable CAN FD router determines whether the data needs to be slowed down. Specifically: it obtains the flow information of the data (including the source node and the destination node). The source node of the data is the CAN node of the ECU, and the destination node is the CAN node / CAN FD node of other ECUs, that is, communication is carried out between different ECUs; since the bus protocol network where each ECU is located is a CAN network, CAN bus protocol data can be transmitted. Therefore, the CAN node of the ECU can directly receive data from the CAN nodes of other ECUs, and the CAN FD node of the ECU can be backward compatible with the CAN bus protocol. The CAN FD node of the ECU can also directly receive data from the CAN nodes of other ECUs. Therefore, there is no need to slow down the data. After the programmable CAN FD router determines that the data does not need to be slowed down, it directly transmits the data to the CAN FD bridge via the CAN bus. Figure 2As shown in the figure, the CAN arbiter of the CAN FD bridge receives the data and transmits it to the message filter. Since the source node of the data is the ECU, the programmable CAN FD router of the ECU has performed the speed reduction processing judgment and corresponding processing. Therefore, the message filter does not need to make any more judgments and directly transmits the data to the framer through the frame rate converter (the frame rate converter is not enabled). The enabling state of the frame rate converter is disabled, so the Bit-rate controller of the framer switches the framer to the CAN FD bus mode by controlling the bit rate conversion switch (if it is originally in the CAN FD bus mode, there is no need to switch, just keep the CAN FD bus mode). The Bit-Stuffing encoder of the framer processes the data transmitted by the frame rate converter according to the current CAN FD bus mode, so that the data has the rising edge required by the CAN FD bus protocol, ensuring that the data frame will not be misjudged as an error frame. The CRC check module of the framer performs integrity check on the processed data. After the CRC check passes, the CRC check module transmits it to the corresponding bus through the error detector, error handler, and arbitrator corresponding to the bus protocol network where the data receiving node is located. In this example, the data receiving node is the CAN node / CAN FD node of other ECUs, and the bus protocol network where the ECU is located is the CAN network. Therefore, the CRC check module transmits the data to the CAN bus through the CAN error detector, CAN error handler and CAN arbitrator, and then transmits it to the corresponding CAN node / CANFD node of other ECUs via the CAN bus. In this way, the CAN node of the ECU can communicate with the CAN node / CAN FD node of other ECUs.
[0038] (7) The CAN node of the electronic control unit ECU sends data to the CAN node / CAN FD node of the vehicle information control unit ICU. The process is as follows:
[0039] The CAN node of the electronic control unit ECU transmits data to the programmable CAN FD router corresponding to the ECU. The programmable CAN FD router determines whether the data needs to be slowed down. Specifically: it obtains the flow information of the data (including the source node and the destination node). The data source node is the CAN node of the ECU, and the destination node is the CAN node / CAN FD node of the ICU, that is, the ECU communicates with the ICU; the ECU communicates with the CAN FD bridge through the CAN bus, and the CAN FD bridge communicates with the ICU through the CAN FD bus; both the CAN bus and the CAN FD bus can transmit CAN bus protocol data, and the CAN node of the ICU can directly receive data from the CAN node of the ECU. The CAN FD node of the ICU is backward compatible with the CAN bus protocol and can also directly receive data from the CAN node of the ECU. Therefore, there is no need for speed reduction. After the programmable CAN FD router determines that the data does not need to be slowed down, it directly transmits the data to the CAN FD bridge via the CAN bus. Figure 2 As shown in the figure, the CAN arbiter of the CAN FD bridge receives the data and transmits it to the message filter. Since the source node of the data is the ECU, the programmable CAN FD router of the ECU has performed the speed reduction processing judgment and corresponding processing. Therefore, the message filter does not need to make any more judgments and directly transmits the data to the framer through the frame rate converter (the frame rate converter is not enabled). The enabling state of the frame rate converter is disabled, so the Bit-rate controller of the framer switches the framer to the CAN FD bus mode by controlling the bit rate conversion switch (if it is originally in the CAN FD bus mode, there is no need to switch, just keep the CAN FD bus mode). The Bit-Stuffing encoder of the framer processes the data transmitted by the frame rate converter according to the current CAN FD bus mode, so that the data has the rising edge required by the CAN FD bus protocol, ensuring that the data frame will not be misjudged as an error frame. The CRC check module of the framer performs integrity check on the processed data. After the CRC check passes, the CRC check module transmits it to the corresponding bus through the error detector, error handler, and arbitrator corresponding to the bus protocol network where the data receiving node is located. In this example, the data receiving node is the CAN node / CAN FD node of the ICU, and the bus protocol network where the ICU is located is the CAN FD network. Therefore, the CRC check module transmits the data to the CAN FD bus through the CAN FD error detector, CAN FD error handler, and CAN FD arbitrator, and then transmits the data to the corresponding CAN node / CAN FD node of the ICU via the CAN FD bus. In this way, the CAN node of the ICU can communicate with the CAN node / CAN FD node of the ICU.
[0040] (8) The CAN FD node of the electronic control unit ECU sends data to the CAN node of this ECU. The process is as follows:
[0041] The CAN FD node of the electronic control unit ECU transmits data to the programmable CAN FD router corresponding to the ECU. The programmable CAN FD router determines whether the data needs to be decelerated. Specifically, it obtains the flow information of the data (including the source node and the destination node). The source node of the data is the CAN FD node of the ECU, and the destination node is the CAN node of this ECU. It belongs to the internal communication of the ECU, but the CAN bus protocol is not compatible with the CAN FD bus protocol. Therefore, the CAN node of the ECU cannot directly receive data from the CAN FD node of this ECU. Therefore, the data needs to be decelerated. The programmable CAN FD router then reduces the transmission rate of the data from the CAN FD transmission rate to the CAN transmission rate, and then transmits the data to the corresponding CAN node in the ECU corresponding to the programmable CAN FD router, so that the CAN FD node of the ECU can communicate with the CAN node of this ECU.
[0042] (9) The CAN FD node of the electronic control unit ECU sends data to the CAN FD node of this ECU. The process is as follows:
[0043] The CAN FD node of the electronic control unit ECU transmits data to the programmable CAN FD router corresponding to the ECU. The programmable CAN FD router determines whether the data needs to be slowed down. Specifically, it obtains the flow information of the data (including the source node and the destination node). The data source node is the CAN FD node of the ECU, and the destination node is the CAN FD node of this ECU. It belongs to the internal communication of the ECU. The CAN FD node of the ECU can directly receive data from the CAN FD node of this ECU. Therefore, there is no need to slow down the data. After the programmable CAN FD router determines that there is no need to slow down the data, it directly transmits the data to the corresponding CAN FD node in the ECU corresponding to the programmable CAN FD router, so that the CAN FD node of the ECU can communicate with the CAN FD node of this ECU.
[0044] (10) The CAN FD node of the electronic control unit ECU sends data to the CAN node / CAN FD node of other ECUs or ICUs. The process is as follows:
[0045] The CAN FD node of the electronic control unit ECU transmits data to the programmable CAN FD router corresponding to the ECU. The programmable CAN FD router determines whether the data needs to be slowed down. Specifically: it obtains the flow information of the data (including the source node and the destination node). The source node of the data is the CAN FD node of the ECU, and the destination node is the CAN node / CAN FD node of other ECUs or ICUs. Since each ECU is in the CAN network, different ECUs need to communicate via the CAN bus and the CAN FD bridge, and the ECU communicates with the ICU via the CAN FD bridge after connecting to the CAN FD bridge via the CAN bus. Since the CAN bus cannot transmit CAN FD bus protocol data, the CAN FD node of the ECU cannot directly communicate with the CAN node / CAN FD node of other ECUs or with the CAN node / CAN FD node of the ICU via the CAN bus. Therefore, the data needs to be slowed down. The programmable CAN FD router then reduces the transmission rate of the data from the CAN FD transmission rate to the CAN transmission rate, and then transmits the data to the CAN FD bridge via the CAN bus. Figure 2As shown in the figure, the CAN arbiter of the CAN FD bridge receives the data and transmits it to the message filter. Since the source node of the data is the ECU, the programmable CAN FD router of the ECU has performed the speed reduction processing judgment and corresponding processing. Therefore, the message filter does not need to make any more judgments and directly transmits the data to the framer through the frame rate converter (the frame rate converter is not enabled). The enabling state of the frame rate converter is disabled, so the Bit-rate controller of the framer switches the framer to the CAN FD bus mode by controlling the bit rate conversion switch (if it is originally in the CAN FD bus mode, there is no need to switch, just keep the CAN FD bus mode). The Bit-Stuffing encoder of the framer processes the data transmitted by the frame rate converter according to the current CAN FD bus mode, so that the data has the rising edge required by the CAN FD bus protocol, ensuring that the data frame will not be misjudged as an error frame. The CRC check module of the framer performs integrity check on the processed data. After the CRC check passes, the CRC check module transmits it to the corresponding bus through the error detector, error handler, and arbitrator corresponding to the bus protocol network where the data receiving node is located. If the data receiving node is a CAN node / CAN FD node of another ECU, and the bus protocol network in which the ECU is located is a CAN network, the CRC check module transmits the data to the CAN bus via the CAN error detector, CAN error handler, and CAN arbiter, and then transmits the data to the corresponding CAN node / CAN FD node of other ECUs via the CAN bus, so that the CAN node of the ECU communicates with the CAN node / CAN FD node of other ECUs. If the data receiving node is a CAN node / CAN FD node of an ICU, and the bus protocol network in which the ICU is located is a CAN FD network, the CRC check module transmits the data to the CAN FD bus via the CAN FD error detector, CAN FD error handler, and CAN FD arbiter, and then transmits the data to the corresponding CAN node / CAN FD node of the ICU via the CAN FD bus, so that the CAN FD node of the ECU communicates with the CAN node / CAN FD node of the ICU.
[0046] The bus controller compatible with CAN and CAN FD provided by the present invention is equipped with a programmable CAN FD router for each electronic control unit having a CAN FD node. Using the bus controller of the present invention, the CAN FD node adopts the same data transmission method whether it is oriented to the CAN FD node or the CAN node, and the CAN FD node does not need to be modified as in the patent literature of the background technology. For example, the CAN FD node of the ICU communicates with the CAN node of this ICU or with the CAN node / CAN FD node of the ECU. The bus controller of the present invention uses the programmable CAN FD router integrated in the frame rate converter of the CAN FD bridge to reduce the transmission rate of the data sent by the CAN FD node of the ICU from the CAN FD transmission rate to the CAN transmission rate, so that the CAN node of the ICU or the CAN node / CAN FD node of the ECU can receive data from the CAN FD node of the ICU, and the CAN FD node of the ICU communicates with the CAN node of this ICU or with the CAN node / CAN FD node of the ECU. For another example, the CAN FD node of the ECU communicates with the CAN node of the ECU or with the CAN node / CAN FD node of other ECUs / ICUs, and the programmable CAN FD router corresponding to the ECU can reduce the transmission rate of the data sent by the CAN FD node of the ECU from the CAN FD transmission rate to the CAN transmission rate, so that the CAN node of the ECU or the CAN node / CAN FD node of other ECUs / ICUs can receive data from the CAN FD node of the ECU, and the CAN FD node of the ECU can communicate with the CAN node of the ECU or with the CAN node / CAN FD node of other ECUs / ICUs. In this way, each CAN FD node inside the ICU or each ECU can directly communicate with each other using the CAN FD bus protocol, thereby improving the data communication efficiency inside the ICU and the ECU, and can communicate with the CAN node in the control unit or with the CAN node / CAN FD node of a non-control unit using the CAN bus protocol, and is compatible with the CAN bus protocol, thus achieving compatibility of the vehicle-mounted network with both the CAN and CAN FD buses. The bus controller of the present invention utilizes a programmable CAN FD router to ensure that CAN FD nodes communicate with CAN nodes. It only needs to configure a programmable CAN FD router for each ECU and ICU to enable the CAN FD nodes of each ECU and ICU to communicate with the CAN nodes. There is no need to modify each CAN FD node separately, which saves modification time and reduces development time cost.
[0047] The above is only an implementation method of the invention, and does not limit the scope of patent protection. Those skilled in the art can make non-substantial changes or substitutions based on the invention, which still fall within the scope of patent protection.
Claims
1. A bus controller compatible with CAN and CAN FD for automotive chips, characterized by: The invention comprises a vehicle information control unit, a CAN FD bridge and a plurality of electronic control units, wherein the vehicle information control unit is connected to various electronic control units via the CAN FD bridge; each electronic control unit comprises a CAN node and / or a CAN FD node; among all the electronic control units, there is at least one CAN node and at least one CAN FD node; each electronic control unit having a CAN FD node is equipped with a programmable CAN FD router, which is specifically connected to the CAN FD bridge via the programmable CAN FD router; when a CAN FD node sends data to a CAN node, the programmable CAN FD router corresponding to the electronic control unit where the CAN FD node is located reduces the transmission rate of the sent data from the CAN FD transmission rate to the CAN transmission rate.
2. The bus controller compatible with CAN and CAN FD for automotive chips as claimed in claim 1, characterized in that: The vehicle information control unit includes a CAN FD node, and the CAN FD bridge includes a frame rate converter; the CAN FD node of the vehicle information control unit sends data to the CAN node of the electronic control unit, and the frame rate converter of the CAN FD bridge reduces the transmission rate of the sent data from the CAN FD transmission rate to the CAN transmission rate.
3. The bus controller compatible with CAN and CAN FD for automotive chips as claimed in claim 2, characterized in that: An editable CAN FD router is integrated in the frame rate converter. If the frame rate converter is enabled, the editable CAN FD router reduces the transmission rate of the sent data from the CAN FD transmission rate to the CAN transmission rate.
4. The bus controller compatible with CAN and CAN FD for automotive chips as claimed in claim 2, characterized in that: The CAN FD bridge includes a CAN arbiter, a CAN FD arbiter, a CAN error detector, a CAN FD error detector, a CAN error handler, and a CAN FD error handler, and also includes a message filter and a framer shared by the CAN bus and the CAN FD bus, and the frame rate converter is shared by the CAN bus and the CAN FD bus; The data receiving end and data sending end of the CAN arbiter are both connected to the CAN bus, and the data forwarding end is connected to the framer via a message filter and a frame rate converter; the data receiving end and data sending end of the CAN FD arbiter are both connected to the CAN FD bus, and the data forwarding end is connected to the framer via a message filter and a frame rate converter; The framer is connected to the data transmitting end of the CAN arbiter via the CAN error detector and the CAN error handler on the one hand, and is connected to the data transmitting end of the CAN FD arbiter via the CAN FD error detector and the CAN FD error handler on the other hand; After receiving the data, the CAN arbiter or CAN FD arbiter transmits it to the message filter. The message filter determines whether the data needs to be decelerated and transmits the data and the determination result to the frame rate converter. If speed reduction is required, the frame rate converter is enabled to reduce the data transmission rate from the CAN FD transmission rate to the CAN transmission rate and then transmit it to the framer. Otherwise, the frame rate converter is not enabled and the data is directly transmitted to the framer. The framer switches between the CAN bus mode and the CAN FD bus mode according to the enable status of the frame rate converter - if the frame rate converter is enabled, it switches to the CAN bus mode, and if the frame rate converter is not enabled, it switches to the CAN FD bus mode. The framer processes the data transmitted by the frame rate converter according to the current bus mode, and transmits the processed data to the corresponding bus through the error detector, error handler, and arbiter corresponding to the bus protocol network where the data receiving node is located.
5. The bus controller compatible with CAN and CAN FD for automotive chips as claimed in claim 4, characterized in that: The framer includes a bit rate controller, a bit filling encoder and a CRC check module. The framer is specifically switched by the bit rate controller, the bit filling encoder processes the data transmitted by the frame rate converter, and the CRC check module performs integrity check on the data transmitted by the frame rate converter before transmitting it to the corresponding bus through the error detector, error handler and arbitrator corresponding to the bus protocol network where the data receiving node is located.
6. The bus controller compatible with CAN and CAN FD for automotive chips as claimed in claim 2, characterized in that: The vehicle information control unit is connected to the CAN FD bridge via the CAN FD bus, and the CAN FD bridge is connected to each electronic control unit via the CAN bus; The vehicle information control unit also includes a CAN node; each electronic control unit specifically includes a CAN node and a CAN FD node; The CAN FD node of the vehicle information control unit sends data to the CAN node of the control unit, or sends data to the CAN node / CAN FD node of each electronic control unit, and the frame rate converter of the CAN FD bridge reduces the transmission rate of the sent data from the CAN FD transmission rate to the CAN transmission rate; The CAN FD node of each electronic control unit sends data to the CAN node of the control unit itself, or sends data to the CAN node / CAN FD node of other control units. The programmable CAN FD router corresponding to the electronic control unit reduces the transmission rate of the sent data from the CAN FD transmission rate to the CAN transmission rate, wherein the other control units include other electronic control units and vehicle information control units.
7. The bus controller compatible with CAN and CAN FD for automotive chips as claimed in any one of claims 1 to 6, characterized in that: The CAN FD bridge is implemented using FPGA.
Citation Information
Patent Citations
Vehicle-mounted compatible network based on traditional CAN and CAN FD and intelligent vehicle
CN110557313A
