首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
FPGA/CPLD可编程逻辑
» 一种8位嵌入式RISC MCU IP核数据通道模型设计
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
一种8位嵌入式RISC MCU IP核数据通道模型设计
发短消息
加为好友
pengpengpang
(pengpengpang)
当前离线
UID
1023229
帖子
6106
精华
0
积分
3055
阅读权限
90
来自
中国
在线时间
156 小时
注册时间
2013-12-20
最后登录
2016-7-3
论坛元老
UID
1023229
来自
中国
1
#
打印
字体大小:
t
T
pengpengpang
发表于 2015-7-21 15:27
|
只看该作者
一种8位嵌入式RISC MCU IP核数据通道模型设计
机械设备
,
模型设计
,
控制器
,
嵌入式
,
汽车
随着IC产业的发展,IP核的需求越来越高。微控制器MCU(Micro Control Unit)是嵌入式系统的核心,8位MCU IP核具有很高的通用性和灵活性,广泛地应用于工业控制、机械设备、家用电器以及汽车等各个领域。本文设计的MCU IP核与Microchip公司的PIC16C57完全兼容[1]。MCU IP核采用哈佛结构,内部单元可简化为时序控制和数据通道两部分。时序控制部分为数据通道提供控制信号,控制数据流动方向以及数据通路的选择,它是IP核的指挥中心;数据通道部分在控制部分的控制下,具体实现MCU IP核的指令功能,它是影响MCU性能、功耗等因素的关键,是整个芯片设计的重点。
本文在设计该款MCU IP核的数据通道部分过程中,提出了一种特定的数据通道模型;最后,通过对整个MCU IP核仿真综合,对该数据通道模型进行了验证。
1 数据通道模型及数据总线Verilog HDL模型
1.1数据通道模型结构图
本文设计的MCU数据通道模型包含各数据通道单元及单条双向数据总线。其中数据通道单元主要由特殊功能寄存器、通用寄存器及运算单元ALU等电路组成,每个通道单元还可再分为多个子通道单元。数据通道顶层模型如图1所示,数据主要在数据总线及各数据通道单元中流动,由一条双向数据总线完成每个数据组元的读写操作,充当每个组元源总线及目的总线双重功能,并由特定电路完成总线数据的读写操作。该数据通道模型的最大特点为:通过n个子通道选择信号,各数据通道单元内部可再分为n个子数据通道,由1/n译码器实现每一个时刻只有一条子通道选通。上层的数据通道控制信号仍然有效,作为子层数据通道的公共开关[2]。依次类推,该数据通道模型可以是多层的。数据通道层次模型如图2所示。
数据通道模型内数据的流动在时间轴上是时刻向前的,而数据流动的轨迹则呈现为相互环绕的螺旋形。
1.2 内部数据总线的Verilog HDL模型
数据通道模型中内部数据总线分别由三态门和多路选择器实现读写操作,使用特定的硬件描述语言Verilog HDL代码模型进行描述。对于挂接n个数据通道单元的m位数据通道内部数据总线,读、写两种操作的Verilog HDL代码模型分别表示如下[3]:
2 设计实现
本文以数据通道单元ALU为例介绍数据通道模型的层次结构。ALU是MCU IP核的运算单元,是数据的加工处理部件,是数据通道中最特殊的数据通道单元。它实现加、减、与、或、异或、非、左移、右移、半字节交换等九种运算,其中前五种是双操作数操作,其余四种是单操作数操作。对于双操作数操作,ALU数据通道单元一边采用两条两个源操作数数据通道,另一边采用一条目标操作数数据通道;而单操作数操作仅需开启一条源操作数数据通道。
本文的ALU采用低功耗设计。通过控制部分译码得出ALU主要实现四种运算:算术运算、逻辑运算、移位运算以及半字节交换运算。本文通过加、减操作复用一个8位超前进位加法器,将ALU模块分为8个运算单元,构成8个子数据通道。通过对ALU子数据通道选通信号aluop[2:0]进行译码对8条子通道进行选通,如表1所示。在系统复位或者不工作时,各运算单元处于休眠状态;在每条指令的执行周期,ALU中8个子数据通道始终只有一条子数据通道处于选通工作状态。不同类的指令对应不同的数据通道,把对ALU运算的控制转化为对ALU内子数据通道的选择,降低了ALU整体功耗[4]。
一般来说,数据通道的选通由选通信号控制,而数据通道的开启必须由整个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数据通道单元类似,这里不再赘述。
在该款MCU IP核数据通道模型中,数据总线全部采用本文所述的Verilog HDL代码模型描述。基于中心国际SMIC 0.35μm工艺库(工作电压为3伏),使用Synopsys公司VCS和 DC对该款MCU IP核进行了仿真综合,并进行了功耗分析。综合分析结果得出,该数据通道电路结构规整,设计得到了简化,总体功耗约为49.5980mW,实现了低功耗设计。
本文使用固定电路结构描述内部数据总线,通过特定层次化数据通道模型的设计,体现了自顶向下(Top-Down)的设计方法,降低了整个MCU IP 核设计的复杂度,缩短了设计周期。该设计适用于大规模系统芯片开发设计。
参考文献
1 pic16c5x.pdf. Microchip Technology Inc.,1998
2 钟旭恒,高明伦.基于数据通道指令流程图的硬布线控制电路设计. 微电子学与计算机,2001;(5):8~11
3 夏宇闻.复杂数字电路与系统的Verilog HDL设计技术.北京:北京航空航天大学出版社,2003:13
4 罗 文,杨 波.寄存器传输级低功耗设计方法.小型微型机算机系统,2004;(7):1207~1211
5 孙海平,李 伟.基于资源共享的ALU设计.微电子学与计算机,2001;(5):16~20
收藏
分享
评分
记录学习中的点点滴滴,让每一天过的更加有意义!
回复
引用
订阅
TOP
返回列表
测试测量
模拟电路
MCU 单片机技术
PCB综合技术
资料共享
嵌入式技术
X86
职场驿站
医疗电子
ARM
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议