Scalable Virtualized CAN Controllers for Lower Silicon and Pin Use
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The increasing demand for multiple applications on a single chip, such as in automotive and industrial applications, has led to a crunch in chip pins and silicon area due to the proliferation of controller area network (CAN) interfaces, causing redundancy and waste of silicon area and pins, while removing CAN controllers is not feasible without impacting software compatibility.
Innovation Solution
A scalable virtualized controller area network system replaces conventional CAN controllers with virtual CAN controllers, using a CAN virtual network controller (CVNC) to interpose between virtual CAN controllers and physical protocol engines, enabling dynamic configuration and reconfiguration, reducing the number of physical protocol engines, and allowing for virtual networks that operate faster and with fewer errors.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If the number of CAN controllers is increased to support multiple applications, then application versatility is improved, but silicon area and pin usage are worsened
Solution Approach 1:
The patent implements a virtualization layer that allows a single physical CAN controller to serve multiple virtual CAN controllers, each dedicated to different applications. This multi-functionality approach enables one physical resource to be shared across multiple logical functions, thereby supporting application versatility without proportionally increasing silicon area.
Solution Approach 2:
The patent merges multiple virtual CAN controllers onto a single physical CAN controller hardware resource. By combining multiple logical controllers that share common physical infrastructure (transceiver, protocol engine), the system reduces the total silicon area required compared to having separate physical controllers for each application.
2Adaptability or versatility
If the number of CAN controllers is increased to support multiple applications, then application versatility is improved, but pin usage is worsened
Solution Approach 1:
The virtualization architecture enables a single physical CAN controller with its associated pins to serve multiple virtual controllers. The shared physical interface and transceiver resources mean that pin usage does not increase linearly with the number of applications, thus improving versatility without worsening pin consumption.
Solution Approach 2:
Multiple virtual CAN controllers are merged to share common physical pins and interface resources. By combining the pin usage requirements of multiple applications into a single shared physical controller, the system reduces total pin usage while maintaining support for multiple applications.
3Area of stationary object
If physical protocol engines are reduced to save silicon area, then silicon area is improved, but system complexity is worsened
Solution Approach 1:
The patent introduces a virtualization layer as an intermediary between the application layer and the physical CAN controller layer. This intermediary manages the mapping and resource allocation between multiple virtual controllers and the reduced number of physical controllers, handling the complexity of resource sharing while allowing the physical layer to be simplified and reduced in area.
Solution Approach 2:
The system creates virtual copies of CAN controller functionality through software or firmware implementations rather than physical hardware copies. These virtual copies provide the necessary control functions while sharing the physical protocol engine hardware, thereby reducing silicon area while managing complexity through standardized virtualization interfaces.
Data Source
AI summary
A virtualized controller area network (CAN) system including multiple virtual CAN controllers and a CAN virtual network controller. The CAN virtual network controller includes virtual CAN interfaces, network interfaces, and a configuration controller. Each of the virtual CAN interfaces communicatively links each virtual CAN controller with the network interfaces, which are each configured to communicatively link one or more of virtual CAN controllers into a CAN network. The configuration controller programs any one or more of the network interfaces to communicatively link any one or more of the virtual CAN controllers in each of one or more CAN networks. The configuration controller configures a network interface for virtual communications for implementing a virtual CAN network, or enables a linked physical protocol engine for implementing a physical CAN network. The number of protocol engines needed, if any, may be significantly reduced thereby reducing pin count and silicon area consumption.


