32位嵌入式CPU中系统控制协处理器的设计与实现

发布者:bobojrt最新更新时间:2012-05-17 来源: 21ic 关键字:嵌入式CPU  系统控制  协处理器 手机看文章 扫描二维码
随时随地手机看文章
  IPS体系结构中的系统控制协处理器简称CP0,它提供指令正常执行所需的环境,进行异常/中断处理、高速缓存填充、虚实地址转换、操作模式转换等操作。单从硬件的角度而言,系统控制协处理器对指令集的作用就相当于操作系统对应用程序的作用一样。

  异常处理

  CPU运行过程中常常需要中断正常执行的指令流程,跳转去执行某段特殊的指令段,接着再恢复原来的指令序列。MIPS体系结构中称这样的过程为异常(Exception)。所有的异常都采用统一的机制处理。

  对于异常情况,需要采取以下3方面的措施:

  1) 异常检测:CPU需要及时检测出哪个部件发生了什么异常;一般而言,异常检测由各个模块进行,如加法溢出由加法器在运算过程中产生,并在相应的流水段被系统控制协处理器CP0读入。因此这部分功能不属于CP0的设计范围。

  2) 异常处理:CPU按照优先级选择哪个异常被处理,并进行必要的上下文切换(Context Switch),为进入异常服务子程序做准备,保证与该种异常对应的服务程序被执行,并且能够从中断处完全恢复原来的指令执行现场。

  3) 异常服务:执行异常服务子程序,这部

分主要由软件(操作系统)来完成。

  对异常处理机制的要求

  与传统的异常/中断处理机制相比,在MIPS 4Kc体系结构下的异常处理需要特别考虑3个因素。

  流水线的划分

  本设计采用五段流水线设计,即每条指令的执行一般都经过IF(取指)、DE(指令译码)、EX(指令执行)、MEM(访问存储器)和WB(数据写回R.F.)五个步骤。因为指令动作被分割,所以异常源也被分割到各个流水线段。例如:加法溢出异常只能在EX被检测到。

  精确异常处理机制

  精确异常处理是指在发生异常时,仅仅对发生异常的指令或其后面的指令进行异常处理;而其前面的指令要保证能够正常结束。所谓“精确”,是指受到异常处理影响的只有产生异常条件的那条指令,所有在此之前的指令在异常被处理前都将被执行完成。异常处理结束后仍将从发生异常的指令开始继续执行。

  操作模式切换

  对于多进程操作系统,至少要区分两种进程:有特权的操作系统“核心”进程和一般程序的“用户”进程。当CPU检测到异常发生时,指令执行的正常顺序会被暂停,处理器进入核心模式。当异常服务子程序执行完后,CPU从断点中恢复现场,继续执行原指令序列。

  异常处理流水线

  根据上述分析可以确定,硬件异常处理流水线的主要任务有3个:更新相应的CP0寄存器,即写CP0寄存器;保存发生异常的指令地址,或当异常指令在延迟槽时,保存引起延迟槽的跳转指令地址;选择异常服务子程序的入口地址。

  CP0寄存器记录了CPU当前的状态,因此,对CP0寄存器的写就是对CPU状态的改变,需要进行严格的控制。而且对寄存器的写是影响关键路径的主要因素。因此本文主要论述对CP0寄存器写操作的设计。

  每个寄存器或寄存器某些位的写操作都是由一个或一组异常事件是否发生而决定的。为此每一个流水段产生并被接收的异常都将被编码,称为异常编码,并在段与段之间进行传递,直到MEM段。在MEM段,异常编码被用于产生对CP0寄存器的写使能信号,需要进行复杂的解码使MEM段变长,这成为提高整个 CPU速度的瓶颈。为了减少这个瓶颈,可增加专门用于产生写使能信号的逻辑。每一级流水线产生的异常直接产生写使能,并经过简单的优先级比较,不管它是由哪个异常类型产生的,均产生1位的写使能信号。那么,在MEM段就可以避免复杂的解码,直接产生对相关CP0寄存器的写使能信号。这一方案采用了以空间换时间的方法:纵向的执行时间减少了,而横向则需要增加写使能判别逻辑。增加逻辑功能意味着需要占用更多的芯片面积,考虑到CP0模块处于整个CPU的边缘,而且全定制物理设计可以大大缩减芯片面积,因此该方案具有可行性。

  系统控制协处理器的全定制物理设计

  在深亚微米级的集成电路芯片里,器件(晶体管)本身对时延的贡献已越来越小,主要延迟在于连线延迟。由于CP0功能的特殊性,它和存储管理单元 MMU、指令计数单元PC都有很多连线,这些连线很可能处于全芯片的关键路径上;而且由于CP0逻辑比较复杂,按照标准单元法自动布局布线生成的模块自身面积就很大,某些连线在CP0内部就要走很多弯路,可能造成很大的延时。所以决定采用全定制方法设计CP0的数据通路,以方便控制连线的走向和布局。

  控制通路与数据通路的划分

  数字电路系统的正常运作过程中存在数据流(包括一般意义上的数据、指令和地址)和控制流。而数据流和控制流是相对独立的:数据流实现的逻辑相对简单,但有很多位数据并行;而控制流的逻辑较复杂,绝大多数是1位或几位的控制信号。因此,控制通路一般不采用全定制设计;而数据通路的全定制设计就具有高性能、低功耗、低成本的优势。

   协助TLB进行虚实地址转换是CP0的主要功能之一。TLB属于系统的特权资源,只有CP0有权对其进行访问,因此CP0与TLB之间的连线较多,数据交换的时延也比较关键。同时,PC模块与CP0的数据交换也非常重要。因此,CP0单元在版图上最好同时靠近TLB和PC模块。本设计将CP0中与TLB相关的逻辑与寄存器独立为CP0T,放在MMU与PC模块之间;CP0的其余部分归为CP0E,放在PC下部,也就是整块芯片的最下端。如图1所示。

图1. CP0单元与临近单元的连接示意图

  电路设计

  本设计中使用的电路输入工具为Cadence公司的Composer。设计时,将HDL描述转化为电路描述后输入到Composer中。然后,通过形式验证来确保所设计的电路与RTL代码一致。电路设计的好坏很大程度上要取决于设计者的经验和技巧。[page]

  电路的定制设计主要指的是,在Composer环境中手工设计晶体管级的电路。电路参数的确定由Synopsys的电路仿真工具Hspice协助完成。将从设计好的电路中抽出的网表输入到Hspice中,仿真计算出电路的时延

,再根据时延来修改电路MOS管的参数。

  为了减少全定制设计的工作量,电路设计要建立模块的微体系结构。其中CP0的基本单元确定如下:基本的CP0寄存器(时钟上沿同步寄存器) ;32位比较器;32位加法器;多选一选择器(包括2选1、3选1和4选1 MUX);驱动器(即反相器;其尺寸参数化以适应不同驱动要求)。

  加法器基本采用了超前进位加法器的思想,然后在整体上分成两个16位加法器的模块,模块间采用进位选择加法器的思想,从而大大提高了整个电路的速度。但其面积比全部采用超前进位加法器时要大20%左右。

  设计出来的电路逻辑是否正确,时延是否满足要求,分别需要做功能验证和电路仿真。在验证了各个小模块的正确性之后,需验证小模块之间的逻辑连接正确性,最后对整个模块进行验证,进一步分析电路找出模块中的最长路径,通过仿真、更改电路、再仿真的过程,来确定该模块是否能达到预期的逻辑设计要求。

  版图的全定制设计

  版图设计是根据电路功能和性能的要求以及工艺条件的限制(如线宽、间距、制版设备所允许的基本图形等),设计集成电路制造过程中必需的光刻掩膜版图。版图设计与集成电路制造工艺技术紧密相连,是集成电路设计的最终目标。

  在设计过程中,为了降低设计的复杂度,采用混合设计模式,即全定制和标准单元设计相结合的设计方法。这样既有利于保证电性能的要求,又能减小设计周期,是一种较为理想的设计模式。

  在全定制版图中,设计过程分为两步完成,每个大单元电路总是由各种基本电路组合而成,所以第一步是绘制基本电路的版图,画完后做DRC和LVS,保证基本电路的正确性。第二步用这些基本电路来组合成大的单元。

  全定制芯片设计可以根据数据通路电路的规则手工设计出合理的版图。版图设计中尽量保证各个部分的规整和对称,使其易于扩展。版图的布局中使联系较多的单元尽量靠近,从而缩短互连线的长度,减小每个单元的面积和时延,降低器件的负载电容,采取的具体措施如下:

  1) 增加地与衬底、电源与阱的接触,在没有器件和走线的空白处多打接触孔,并且将其与电源或地连接,有利于收集噪声电流、稳定电位、减小干扰和被干扰;

  2) 形成网状的电源地线网络;

  3) 避免同层或上下两层中长金属线的平行走线,对噪声敏感的线尽量布得短;

  4) 避免首尾循环的走线;

  5) 在满足设计规则的前提下,尽量减小MOS管的有源区面积,以减小寄生电容,提高工作速度;

  6) 在数据通路设计中,要为金属连线留下一些备用位置。

  控制通路与数据通路的集成设计及验证

  逻辑层次

  控制部分直接用行为级的RTL代码,数据通路部分由从全定制电路导出的结构化RTL代码,得到全模块的逻辑描述。

  可采用向量进行验证,与采用RTL(或C模型)进行验证的结果(trace文件)进行比对。

  电路层次

  电路层次控制通路与数据通路的集成可以借助Composer顺利完成。

  对于延时信息的获取,数据通路或控制通路内部的路径分别采用Hspice仿真及综合来获得,分析内部是否存在关键路径。

  涉及数据通路与控制通路之间的关键路径,可以由全定制部分提交数据通路部分接口的输入/输出时延信息,即该路径在其内部需要的时间。以这些信息作为外部约束,再对相关模块进行综合(按模块综合),结果文件中将得到集成后的关键路径。

  版图层次

  要保证版图与电路的一致性,需要做LVS验证。即将控制通路的门级网表导入Composer,与数据通路的全定制电路合成总电路,并由此提取电路级的Spice网表进行LVS验证。LVS采用的工具为Mentor Graphics 的Calibre工具。

  结语

  本文主要研究了基于MIPS 4Kc体系结构的系统控制协处理器的设计和实现,包括精确异常处理的实现方式和全定制的物理设计。在对精确异常处理机制的过程中通过增加写使能判别逻辑达到了缩减关键路径时延的目的,降低了控制逻辑的复杂性,同时增加了全芯片的可靠性。本文的设计通过了逻辑、电路验证,应用于32位CPU的设计中,并采用中芯国际的1P6M 0.18mm工艺成功流片。

关键字:嵌入式CPU  系统控制  协处理器 引用地址:32位嵌入式CPU中系统控制协处理器的设计与实现

上一篇:采用Xtensa内核担当网络处理器执行CPU
下一篇:Blackfin处理器及嵌入式mClinux在数据采集系统中的应用

推荐阅读最新更新时间:2024-05-02 22:03

iPhone 5s 拆解:没有发现 M7 协处理器
    和 iPhone 5c 相比,iPhone 5s 的升级更有诚意:64 位 A7 芯片、M7 协处理器和 Touch ID 指纹传感器都能激起人们的期待。iFixit 提前拿到机器,一份翔实的拆机报告赶在 iPhone 5s 发售时出炉。来了解下 iPhone 5s 的内部构造吧。 拆解依旧从底部螺丝开始,撬开前面板四周后就可以用吸盘取下屏幕。 连接 Home 键和 Touch ID 传感器的排线在打开屏幕时很容易被扯断,另外,“和 iPhone 5 相比,5s 的内部构造几乎没有变化。” 电池由惠州德赛制造,输出电压为 3.8v、容量为 1560mAh。不同规格的 iPhone 5s 似乎使用不同厂商的电池,比
[手机便携]
基于ARM开发板的车辆检测系统控制单元设计
引言 由于交通需求的不断增加,有越来越多的环形感应线圈检测器用于交通检测。这些埋设在道路表面下的线圈可以检测到车辆通过时的电磁变化进而精确地算出交通流量。交通流量是交通统计和交通规划的基本数据,通过这些检测结果可以用来计算占用率(表征交通密度),在使用双线圈模式时还可以提供速度、车辆行驶方向、车型分类等数据,这些数据对于交通管理和统计是极为重要的。通常高速公路车辆检测系统由多通道环形检测单元LD4和控制单元CCU组成,本文采用PHILIPS公司最新推出的ARM7内核微处理器LPC2114设计实现了车辆检测系统控制单元部分,并且和5个LD4环形检测器一起构成10通道高速公路车辆检测系统。 LPC2114和电子硬盘连线示意图
[单片机]
基于ARM开发板的车辆检测<font color='red'>系统控制</font>单元设计
太阳能光伏系统控制
电路特色功能:   1.蓄电池过充电与过放电保护;   2.自动恢复放电功能;   3.防止蓄电池与太阳能电池反接功能。     电路参数:   1.最大充电电流(A):≤5   2.最大放电电流(A):≤5   3.蓄电池额定工作电压(V):12   4.太阳能电池额定输出电压(V):18   5.太阳能电池最大开路电压(V):25   6.过充电电压(V):14.8   7.过放电电压(V):10.8   8.恢复供电电压(V):12.3   在气候压力日趋加大的今天,减少温室气体排放,提倡低碳生活方式已成为全球的共识。要实现低碳经济,除了通过技术创新、制度创新、产业转型等多种手
[电源管理]
太阳能光伏<font color='red'>系统控制</font>器
VSS-UMPC-10超便携移动PC视频协处理器
  VSP100作为多媒体协处理器提供UMPC实现完美的多媒体解码功能。   基于VSP100,支持网络流行的各种格式多媒体文件解码。 基本特征: 支持的视频标准:MPEG2, MPEG4, H.264, AVS, WMV9, Real Media 10等 支持的音频标准:MP3, AAC, Dolby, WMA, RMA等 支持的媒体格式:ASF,AVI,DivX,MP4,QT,RM10,VC-1,VOB,WMV9,xVid等 支持的图片标准:JPEG 控制接口:UART, I2C, SPI 需解码数据输入接口:SPI, PSP 解码后数据输出接口:PSP, LCD Controller, CCIR656 器件列表:
[新品]
基于Nios软核的CT机扫描系统控制器设计
1 引言   基于Nios软核的SOPC系统,其最大特点就是灵活,可以根据自己的需要灵活改变Nios的外围设备,使得硬件利用效率达到最高,同时它具有ISP(In System Programmable,在系统编程)的功能,可裁减,可扩充,可升级。本文充分利用了Nios系统灵活定制的优点,设计实现了一套CT机扫描系统控制器。 2 CT扫描系统控制器   CT机是根据不同密度和厚度的物体对X射线的吸收程度不同的原理,通过计算机成像技术,对病人身体成像的一种医学设备。CT机扫描系统由X射线发生系统,数据采集系统,对准栅三个子系统组成,如图1所示。扫描系统由扫描架承载,扫描架是一个旋转体,扫描系统随着扫描架旋转,以获得不同角度下的人
[应用]
瑞萨科技发布金融和ID应用的多功能智能卡用RS45C
   东京,2008年3月4日 ——瑞萨科技公司(Renesas Technology Corp.)今天宣布,推出一种需要高度安全性的智能卡使用的安全MCU*1RS45C,其应用包括身份证以及银行业务和信用卡等金融卡。RS45C是采用RS-4高性能16位CPU内核构建的,集成了36 KB电可擦除和可编程只读存储器(EEPROM)以及224 KB的大容量掩模ROM。样品交付将于2008年6月从日本开始。   瑞萨科技此前用于智能卡市场的产品AE-4系列高性能16位安全MCU得到了广泛认可。现在,为了满足市场对于提高处理性能的需求,该公司开发出了RS-4系列16位安全MCU。RS-4系列是AE-4系列的后续产品,可以提供增强的处
[安防电子]
瑞萨科技发布金融和ID应用的多功能智能卡用RS45C
熵码科技推出新世代加密协处理器PUFcc7,大幅提升运算效能并支持最新通讯协议TLS 1.3
(台湾新竹,3月28日)熵码科技 (PUFsecurity)致力于以物理不可复制功能(PUF)为核心技术开发芯片安全解决方案 ,今日宣布推出新一代加密协处理器PUFcc7,PUFcc7 配备最新安全算法并大幅提升运算效能,全面支持AIoT客户端满足TLS 1.3和FIPS 186-5要求。 PUFcc 加密协处理器 IP系列之优势立基于整合以PUF为核心技术的硬件信任根与全套加密算法,并透过全面的防篡改外壳进一步保护整个 IP 。为了因应这个时代迅速变化的安全需求,和不断推陈出新的应用和法规,熵码科技的PUFcc系列已积极通过各项国际认证,包含NIST-CAVP、PSA Certified Level 2 Ready,并
[物联网]
熵码科技推出新世代加密<font color='red'>协处理器</font>PUFcc7,大幅提升运算效能并支持最新通讯协议TLS 1.3
动荡的处理器IP时代 嵌入式CPU的IP授权与发展分析
处理器是1款系统的心脏部分,所有功能的达成几乎都要依靠处理器,而在嵌入式系统方面,由于针对的应用层次较为较为狭窄,因此更要在效能、功耗与成本等变量进行多方考虑,其中,授权方案更是影响到厂商进行开发时的成本与产品上市时程,因此更需要审慎面对。 在各种嵌入式应用当中,总缺不了1或多个处理器核心来统筹整个系统的运作,但是处理器核心的架构复杂,相关的设计概念必须有多年累积的技术实力才有办法实现,以目前生产代工型态至上的企业观念中,自力进行处理器的开发不啻是吃力又不讨好的工作,不仅无法带来立即的营收,开发过程所需耗费的庞大资金更有可能导致公司的亏损,因此诸如台湾厂商等代工重镇皆在此领域的开发多所保留,也因此带给了纯IP授权(没有晶圆厂,也不
[应用]
小广播
热门活动
换一批
更多
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

更多精选电路图
换一换 更多 相关热搜器件
更多每日新闻
随便看看
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved