CAN(Controller Area Network)是用于汽车和工业应用的独立控制器。这个CAN IP符合Bosch CAN 2.0B规范(2.0B主动模式),配备有简单的CPU接口(8/16/32位可配置数据宽度),支持小端或大端寻址方案。CAN IP支持标准(11位标识符)和扩展(29位标识符)帧,通过硬件消息过滤和64字节接收FIFO,实现最小CPU负载的连续消息接收。这个IP以RTL语言的形式交付,可在FPGA或ASIC技术中使用。Controller Area Network(CAN)是由罗伯特·博世(Robert Bosch GmbH)开发的先进串行通信协议。CAN协议使用ISO-OSI模型中的数据链路层和物理层。CAN总线采用多主总线方案,具有一个逻辑总线线路和相等节点。节点的数量不受协议限制且节点没有特定的地址。相反,CAN IP通过使用消息标识符表示消息内容和消息的优先级。这也意味着CAN支持组播和广播。
此外,CAN IP的节点数量可以在运行时更改,而不会影响其他节点的通信。CAN提供了复杂的错误检测和错误处理机制,并且由于差分传输,具有较高的抗电磁干扰能力。CAN IP遇到错误帧会自动重新传输(除了CAN IP中实现的单次发送功能)。在使用双绞线对时,最大总线长度为40米下,最大数据传输速率为1Mbps。总线使用带有非破坏性仲裁的载波感应多路访问/冲突检测进行处理,能够通过按位仲裁避免了消息冲突,而无需浪费时间。CAN控制器连接到主机/CPU和CAN总线收发器,后者直接连接到CAN总线线路(双线)。