Implements a CAN protocol bus controller that performs serial communication according to the CAN 2.0A, 2.0B, and the ISO/Bosch CAN FD Flexible Data-Rate specifications. Additionally, it supports time-triggered (TTCAN) operations and optional time stamps.
The CAN-CTRL core is easy to use and integrate featuring programmable interrupts, data and baud rates; a configurable number of independently programmable acceptance filters; and a generic processor interface or optionally an AMBA-APB interface.
It implements a flexible buffering scheme, allowing fine-tuning of the core size to the requirements of each specific application. The number of receive and transmitting buffers is synthesis-time configurable. Two types of transmit buffers are implemented: a high-priority primary transmit buffer (PTB) and a lower-priority secondary transmit buffer (STB). The PTB can store one message, while the number of included buffer slots for the STB is synthesis-time configurable 0 to 16 slots.
Moreover, an optional wrapper instantiating multiple CAN controller cores easies integration in cases where multiple bus-nodes need to be controlled by the same host processor.
The core implements functionality similar to the Philips SJA1000 working with its PeliCAN mode extensions, providing error analysis, diagnosis, system maintenance and optimization features.
Key Features and Benefits
- 32-bit host-controller generic interface and optional AMBA-APB
- Buffers can be implemented as Flip-Flops, or RAM
- Configurable number of lower-priority transmit buffers
- Configurable number of receive buffers (2 to 31)
- Flexible programmable interrupt sources
- Multiple times production proven and plug-fest tested
- One high-priority transmit buffer
- Optimized for AUTOSAR and SAE J1939
- Programmable baud rate prescaler (1/2 up to 1/256)
- Programmable data rate up to 1 Mbps for CAN2.0 and several Mbps for CAN-FD
- Standard and Extended Data and Remote Frames
- Supports CAN 2.0 & CAN-FD including TTCAN (ISO 11898-4 level 1)
- Three independent programmable internal 29-bit acceptance filters