作者:李秀娟,王祖强,张甜
随着ic产业的发展,ip核的需求越来越高。微控制器mcu(micro control unit)是嵌入式系统的核心,8位mcu ip核具有很高的通用性和灵活性,广泛地应用于工业控制、机械设备、家用电器以及汽车等各个领域。本文设计的mcu ip核与microchip公司的pic16c57完全兼容。mcu ip核采用哈佛结构,内部单元可简化为时序控制和数据通道两部分。时序控制部分为数据通道提供控制信号,控制数据流动方向以及数据通路的选择,它是ip核的指挥中心;数据通道部分在控制部分的控制下,具体实现mcu ip核的指令功能,它是影响mcu性能、功耗等因素的关键,是整个芯片设计的重点。
本文在设计该款mcu ip核的数据通道部分过程中,提出了一种特定的数据通道模型;最后,通过对整个mcu ip核仿真综合,对该数据通道模型进行了验证。
1 数据通道模型及数据总线verilog hdl模型
1.1 数据通道模型结构图
本文设计的mcu数据通道模型包含各数据通道单元及单条双向数据总线。其中数据通道单元主要由特殊功能寄存器、通用寄存器及运算单元alu等电路组成,每个通道单元还可再分为多个子通道单元。数据通道顶层模型如图1所示,数据主要在数据总线及各数据通道单元中流动,由一条双向数据总线完成每个数据组元的读写操作,充当每个组元源总线及目的总线双重功能,并由特定电路完成总线数据的读写操作。该数据通道模型的最大特点为:通过n个子通道选择信号,各数据通道单元内部可再分为n个子数据通道,由1/n译码器实现每一个时刻只有一条子通道选通。上层的数据通道控制信号仍然有效,作为子层数据通道的公共开关。依次类推,该数据通道模型可以是多层的。数据通道层次模型如图2所示。
数据通道模型内数据的流动在时间轴上是时刻向前的,而数据流动的轨迹则呈现为相互环绕的螺旋形。
1.2 内部数据总线的verilog hdl模型
数据通道模型中内部数据总线分别由三态门和多路选择器实现读写操作,使用特定的硬件描述语言verilog hdl代码模型进行描述。对于挂接n个数据通道单元的m位数据通道内部数据总线,读、写两种操作的verilog hdl代码模型分别表示如下:
2 设计实现
本文以数据通道单元alu为例介绍数据通道模型的层次结构。alu是mcu ip核的运算单元,是数据的加工处理部件,是数据通道中最特殊的数据通道单元。它实现加、减、与、或、异或、非、左移、右移、半字节交换等九种运算,其中前五种是双操作数操作,其余四种是单操作数操作。对于双操作数操作,alu数据通道单元一边采用两条两个源操作数数据通道,另一边采用一条目标操作数数据通道;而单操作数操作仅需开启一条源操作数数据通道。
本文的alu采用低功耗设计。通过控制部分译码得出alu主要实现四种运算:算术运算、逻辑运算、移位运算以及半字节交换运算。本文通过加、减操作复用一个8位超前进位加法器,将alu模块分为8个运算单元,构成8个子数据通道。通过对alu子数据通道选通信号aluop[2:0]进行译码对8条子通道进行选通,如表1所示。在系统复位或者不工作时,各运算单元处于休眠状态;在每条指令的执行周期,alu中8个子数据通道始终只有一条子数据通道处于选通工作状态。不同类的指令对应不同的数据通道,把对alu运算的控制转化为对alu内子数据通道的选择,降低了alu整体功耗。
一般来说,数据通道的选通由选通信号控制,而数据通道的开启必须由整个mcu ip核控制部分产生的四相不重叠时钟节拍控制,分别为clk1、clk2、clk3、clk4。时钟节拍不参与数据通道的选择,所起作用只是数据通道的开启。数据通道内数据的流动是有方向的,本文中数据流动的方向性体现为不同时钟节拍控制的不同数据通道的开启。以单操作数指令半字节交换指令(swap)为例说明,半字节交换指令只需开启一条源操作数通道。如图3所示,控制部分在clk1时取出指令,产生控制信号,进入数据通道操作;在clk2时,在存储单元中选择源操作数写入数据总线,开启alu运算单元的源操作数alu_xbus_a[7:0]数据通道,此时内部双向数据总线充当alu源总线;在clk3时,根据alu模块子通道选通信号aluop[3:0]选择alu功能模块swap,开启源操作数进入alu进行半字节交换运算的数据通道;在clk4时,将alu运算单元的运算结果aluout[7:0]通过数据总线写入到各目的数据通道单元中,即开启目的操作数数据通道,此时内部双向数据总线充当alu目的总线。
需要说明的是,图3中数据databus[7:0]来自数据总线,由数据通道单元特殊功能寄存器和通用寄存器提供数据。其中特殊功能寄存器包括f0间址寄存器、f1实时时钟/计数寄存器rtcc、f2程序计数器pc,f3状态计数器status、f4寄存器选择寄存器fsr以及f5、f6、f7 i/o寄存器。可以向下再分为8条子数据通道,子通道选通信号为fsel[2:0],而上层数据通道开关控制信号为rf_spr_re、rf_spr_we,即特殊功能寄存器读写控制信号。其具体实现与alu数据通道单元类似,这里不再赘述。
在该款mcuip核数据通道模型中,数据总线全部采用本文所述的verilog hdl代码模型描述。基于中心国际smic 0.35μm工艺库(工作电压为3伏),使用synopsys公司vcs和 dc对该款mcu ip核进行了仿真综合,并进行了功耗分析。综合分析结果得出,该数据通道电路结构规整,设计得到了简化,总体功耗约为49.5980mw,实现了低功耗设计。
本文使用固定电路结构描述内部数据总线,通过特定层次化数据通道模型的设计,体现了自顶向下(top-down)的设计方法,降低了整个mcu ip 核设计的复杂度,缩短了设计周期。该设计适用于大规模系统芯片开发设计。
锂电池开发安全性能利器,锂电池高温箱
延长光纤光缆使用寿命的方法
万达网科曝裁员_万达裁员是真是假_万达网科裁员原因是什么
揭秘激光焊接在动力电池行业的应用
OnKol远程患者监护采用金雅拓物联网连接技术支持独立“原地养老”
MCU IP核特定层次化数据通道模型的设计及仿真验证分析
欢太科技运营的乐划锁屏携手即录,发现更精彩的生活
新一代奥迪A4L配备全新MMI信息娱乐系统
怎么换鸿蒙系统
Nordic助力低功耗蓝牙“牙刷尾巴”通过iOS或Android app帮助用户了解和改善刷牙效果
英特尔:持续推动5G新基建落地发展
2023开放原子全球开源峰会丨软通动力打造OpenHarmony商业伙伴“朋友圈”
台积电宣布七月内生产了十亿颗7nm芯片
固态电池深度报告:群雄逐鹿锂电终局技术,发力新材料加速产业化
MSO5152-E数字示波器150MHZ模拟宽带
搭载双离合变速箱与1.4T发动机的东风AX5
互动led地砖屏是什么,它都有着哪些特点
UWB高精度定位如何更好的辅助管理发电企业中各类人员
小米6plus什么时候上市?小米6plus最新消息:小米新旗舰还留有一手?小米6plus消息曝光!
盘点神奇工场智能硬件设备中的爆品