论文部分内容阅读
CAN(Controller Area Network)总线是一种被开发用于汽车电子控制系统的现场总线。由于具有实时性强、安全性高、成本低、完善的错误处理机制且支持分布式控制等优点,如今广泛应用在国内外的汽车电子工业,甚至还应用在车间控制,铁路船舶,医疗器械,自动化控制等领域。本论文主要研究内容是基于AMBA(Advanced Microcontroller Bus Architecture)总线的CAN控制器的设计与验证,目的是设计实现一个包含CAN控制器的SOC(System on Chip)芯片,实现属于自己的知识产权。论文的第一章介绍了CAN 2.0协议的产生背景、发展历程和应用前景,并对国内外发展现状进行了简要分析,解释了研究CAN控制器的必要性。第二章详细阐述了CAN 2.0协议的核心内容,包括CAN总线特点、帧结构、位时序、同步机制、发送报文仲裁、接收报文滤波、错误处理机制等。介绍了AMBA总线的特点,AHB(Advanced High-performance Bus)总线和APB(Advanced Peripheral Bus)总线的基本特征及其在SOC设计中的应用。第三章简要介绍了基于Cortex-M0内核的SOC架构设计,以及CAN控制器的架构设计、架构特点与操作模式。第四章详细阐述了CAN控制器的设计,包括寄存器设计、地址映射、位时序控制、发送仲裁、报文滤波、错误处理机制等,并诠释了CAN控制器的状态机设计原理与依据。最后,描述了基于SOC的软硬件协同验证的测试平台搭建,使用C语言进行测试代码编写的程序流程图,使用VCS进行仿真,并用仿真波形分析测试结果,对CAN控制器的设计功能进行了验证,达到了预期目标与要求。本论文完成了基于AMBA总线的CAN控制器的设计与验证,并将CAN控制器集成到基于Cortex-M0内核的SOC中,实现了属于自己的知识产权。