论文部分内容阅读
随着数字信号处理器(Digital Signal Processor,DSP)在工业控制领域的广泛应用,人们对设备间数据传输的可靠性和稳定性的要求也变得越来越高。而控制器局域网(Controller Area Network,CAN)凭借其在自动控制方面独特的优势,从众多现场总线中脱颖而出,成为了世界上应用最广泛的现场总线之一。CAN总线传输速率快,利用率高,抗干扰能力强的特点刚好能满足DSP对数据传输的要求。因此,将CAN总线控制器嵌入到DSP芯片中,是一种很有价值的系统组成方案。本文在对CAN2.0B协议深入研究的基础上,设计了一款16位DSP芯片中的CAN总线控制器外设模块。此款DSP芯片是面向工业控制领域而设计的,采用哈佛总线结构,具有6组内部总线,能够同时访问数据空间和程序空间。DSP芯片设计了4级流水线,支持多种寻址方式,包含一个32位的中央算术单元和一个16位的乘法器单元等,配置了丰富的片内外设,包括时钟模块、模数转换器、事件管理器、串行外设接口、串行通信接口、CAN控制器。本设计参照CAN2.0B总线协议,结合DSP芯片特点,首先完成了CAN控制器的整体结构设计,将CAN控制器划分为消息控制部分和CAN协议内核部分。为便于设计和验证,又将消息控制部分细分为寄存器模块,CAN邮箱RAM模块,中断控制模块,消息滤波模块;将CAN协议内核分为位时序模块和位比特流处理器模块,其中位比特流处理器使用多层状态机来实现。然后采用自顶向下的方式,用Verilog HDL编程语言进行RTL级的设计,并编写测试激励,运用Cadence公司的NC-verilog仿真工具进行仿真验证。接着将CAN控制器模块搭载于DSP系统外设总线,搭建DSP系统仿真验证平台,编写CAN应用程序,并通过了DSP系统级验证。最后,在180 nm工艺下,按照数字后端半定制设计流程,运用相关EDA工具,完成了DSP中CAN控制器的后端设计,最终完成了DSP芯片的版图设计。