论文部分内容阅读
MCU(Micro Controller Unit,微控制单元)自面世以来在数字系统设计中占有重要的位置,具有集成度高、可编程性强的特点,广泛用于工业控制和SoC(System on Chip,片上系统)等数字系统设计中。但是传统上的8位MCU指令执行效率通常低于20MIPS(Million Instruction per Second,百万指令每秒),限制了其在高速计算场合中的应用。本课题来自某公司―数模混合SoC芯片设计‖项目,该项目需要一个执行效率能达到50MIPS且兼容MCS-51指令集的MCU。所谓兼容MCS-51指令集是本MCU的指令集与MCS-51系列MCU指令集相同,可以使用普通的51开发软件(如Keil C51)进行开发。本文首先介绍了MCS-51指令集,接着描述了本设计MCU的组织结构,设计了5级流水线结构,以单时钟周期作为指令运行单位,实现了MCU内核的高速和高效率。在设计运算单元时,本文设计了一个基于进位保留的三输入加法器,利用1个三输入加法器设计了乘法器,该乘法器只需要4个时钟周期就能完成乘法运算。本文改进了标准8051功耗管理模块,该管理模块不仅继承了标准8051的IDLE和STOP模式,还新加入了SUSPEND模式和多时钟源自由切换功能,这样可以使用户更有效的减少芯片功耗。此外,本文采用TSMC0.18um工艺的Flash IP核作为程序存储器,但是该IP只能支持最高30MHz的系统时钟。本文对Flash驱动模块和逻辑控制进行了改进设计使该IP能用于50MHz的系统时钟下。最后,为了验证设计的正确性,本文搭建出基于握手协议的仿真测试平台,调用了OVM(Open Verification Methodlogy)库。本文还搭建出基于Xilinx公司的Virtex-2Pro XC2VP30FPGA开发板验证平台,并给出了FPGA占用资源统计表。验证结果证明了设计的正确性,同时ISE综合结果显示该设计支持的时钟频率可以达到60MHz。本文实现了兼容MCS-51指令集的MCU的高速设计,在50MHz时钟下可以达到50MIPS的峰值。同目前市场上主流高速兼容MCS-51指令集MCU产品和文献[18-21]相比,性能上有显著提高。