论文部分内容阅读
随着科学技术的发展,微电子工艺水平的不断提升,微控制器产业也以惊人的速度发展,从最初的4位逐步发展至目前高性能的64位,并且在面积、速度和可靠性等方面均有了质的提升。尽管如此,由于面积和成本方面的巨大优势,兼具性价比和可靠性的八位微控制器仍在特定的应用环境中被广泛使用。在八位微控制器领域,C8051F系列为其经久不衰的典型代表。它具有微型化、高稳定性和良好的兼容性等优点,在测控、仪表、自动化控制、智能接口等工业领域有着非常广泛的应用。随着实际应用场景复杂度的不断增加,微控制器需要与越来越多的外部设备建立通信,协同工作,因此,对微控制器的可扩展性提出了更高的要求。如何设计功能完备的数字外设子系统,为微控制器提供强大的外设资源保证其操作的灵活性和可拓展性,是在微控制器研发过程中越来越重要的技术难点。本文首先根据C8051F芯片手册中数字外设部分各个组件的功能要求,对数字外设进行了整体的模块划分,确定了各部分的设计思路和设计方法,完成了C8051F微控制器数字外设子系统的RTL代码设计工作。外设子系统主要包括串行数据端口UART、串行外设总线SPI、系统管理总线SMBus、定时/计数器,可编程计数器阵列PCA、交叉开关优先级译码器,以及用于内核与外设之间通信的SFR总线。在外设子系统RTL级代码编写完成之后,本文对实验室已有的微控制器内核与外设子系统进行了集成和调试。在此基础上,制定了详细的验证计划并搭建了一个面向定向激励的验证平台。在完成对所有外设部分的系统级功能仿真之后,采用基于Xilinx Zynq-7000的FPGA开发板Zedboard,对整个微控制器系统进行FPGA原型验证。以FPGA芯片为载体,将微控制器系统IP核下载到FPGA开发板中,经过FPGA综合后的最大频率可达104MHz。在该系统上,运行实际的C应用程序,包括复杂数学函数的计算,流水灯的实现,PWM波的生成,FFT算法的实现等,通过UART端口将处理结果回传给上位机,结合Chipscope抓取到的信号波形与预期测试结果进行比对。经验证,所有运行的应用程序均能得到正确的结果。其中,在FFT算法实现的应用中,总代码覆盖率达到71%,未覆盖的模块均通过了相应的焦点验证。验证结果表明微控制器系统的内核与外设均能工作正常,能正确处理相关应用程序,满足项目需求。