(电路与系统专业论文)智能控制系统及其集成化设计.pdf_第1页
(电路与系统专业论文)智能控制系统及其集成化设计.pdf_第2页
(电路与系统专业论文)智能控制系统及其集成化设计.pdf_第3页
(电路与系统专业论文)智能控制系统及其集成化设计.pdf_第4页
(电路与系统专业论文)智能控制系统及其集成化设计.pdf_第5页
已阅读5页,还剩48页未读 继续免费阅读

(电路与系统专业论文)智能控制系统及其集成化设计.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 y 3 6 2 2 8 3 ( 随着电子技术和集成技术的发展,智能控制系统逐渐应用于信息技术的各个 领域,同时各种电子技术比如便携式的电子产品对于智能控制系统的高性能、 高集成度也提出了更高的要求。本文主要是结合笔者所做的实际智能控制应用 系统对于这方面技术的设计实现做些研究。 通常意义上,智能控制系统是指具有内嵌式微控制器作为集中控制的系统, 相对而言是规模比较大的应用系统,从九十年代中期以后,随着各项技术的发 展,特别是集成电路技术的发展,片上系统技术( s y s t e mo nac h i p ) 成为了v l s i 设计的主流,这样芯片内嵌入微控制器成为可能,从而成为片上系统的重要组 、,一5 成部分,也就是以m c u 为核心模块的片上系统j 笔者主要是通过在芯片上实 现智能控制系统来研究一下此类片上系统的设计方法学及其关键技术,采用了 基于i p ( i n t e l l i g e n tp r o p e r t y ) 模块的比较先进的t o p d o w n 的设计方法及进行了 软硬件协同设计的尝试和研究,同时也研究了此类系统的系统验证和芯片测试 本文开发的电话机智能控制系统是典型的具有实用意义的内嵌微控制器式 的智能系统,按照软硬件协同设计的设计流程,本文完成了与p i c l 6 c 6 4 兼容 的m c uc o r e 在v h d l 语言r t l 级的软核描述及f p g a 硬件验证;完成了 m c uc o r e 外围逻辑电路、存储器和模拟电路的设计及仿真,同时构建了硬件 仿真系统完成系统验证,实现了软硬件协同仿真,并采用了内部嵌入自校验程 序完成芯片测试,最终完成了该系统的芯片设计。的今后的智能控制系统设计 提供一个很好的案例,此电话机智能控制系统于20 00 年3 月在a s m c 的l u m 的s p d m 标准c m o s 工艺上进行了流片,芯片面积25 m m t r 、。 关键字:片上系统、协同设计、系统验证、智能模块 , 塑堂丝型墨竺墨茎墨堕些堡生 a b s t i 己a c t w i t ht h ed e v e l o p m e n t o fe l e c t r o n i c sa n di n t e g r a t e d c i r c u i t t e c h n o l o g i e st h a ti n t e l l i g e n tc o n t r o l l i n gs y s t e m sh a v eb e e nu s e do nm a n y i n f o r m a t i o n a lt e c h n o l o g yf i e l d ss t e pb ys t e p a tt h es a m et i m e ,w i t ht h e d e v e l o p m e n to fe l e c t r o n i ct e c h n o l o g ys u c h a sp o r t a b l ee l e c t r o n i cp r o d u c t s t h a tm o r eh i g ha b i l i t ya n dh i g h l yi n t e g r a t e di n t e l l i g e n tc o n t r o l l i n g s y s t e m sa r e n e e d e d t h i sa r t i c l ei sr e f e r r i n gt ot h er e s e a r c ho ft h e t e c h n o l o g i e si nt h i sf i e l di n c o r p o r a t i n g w i t ht h e e x p e r i m e n to ft h e a c t u a l t e l e p h o n ei n t e l l i g e n tc o n t r o l l i n gs y s t e m n o r m a l l y ,i n t e l l i g e n ts y s t e m i s r e f e r r i n gt ot h er e l a t i v e l yl a r g e s c a l es y s t e m ,w h i c hi se m b e d d e dw i t ham c ua sc e n t r a lc o n t r o l l i n gu n i t a f t e rm i d9 0 s ,w i t ht h ed e v e l o p m e n to fa 1 1e l e c t r o n i cf i e l d s ,e s p e c i a l l y w i t ht h ed e v e l o p m e n to fi c s ,t h a ts o c ( s y s t e mo nac h i p ) b e c o m e sam a i n d e s i g n i n gm e t h o do ft h ev l s id e s i g n t h u s ,c h i p se m b e d d e dw i t hm c u sb e c o m e n o r m a la n db e c o m eo n eo ft h em a i np a r t so ft h es o t s t h ea u t h o rw a n t st o d os o m er e s e a r c ho ft h ek e yd e s i g n i n gm e t h o d sa n dt e c h n o l o g i e so ft h es o c s d u r i n gt h ec o u r s eo ff u l f i l l m e n to ft h et e l e p h o n ei n t e l l i g e n tc o n t r o l l i n g s y s t e m d u r i n gt h ef u l f i 1i m e n t ,t h ea u t h o ra p p lie dt h em o d e r nt o p d o w n d e s i g n i n gm e t h o dw h i c hi sb a s e do ni p ( i n t e l l i g e n tp r o p e r t y ) m o d u l e s ,a n d u s e dt h ec o d e s i g no fs o f t w a r ea n dh a r d w a r em e t h o d w h a tism o r e ,t h e e x p e r i m e n ta l s or e f e r r e dt os y s t e mv e r i f i c a t i o na n dd e s i g nf o rt e s to f t h ec h i p t h et e l e p h o n ei n t e l l i g e n tc o n t r o l l i n gs y s t e md e s i g n e db yt h ea u t h o r w i t hp r a c t i c a lm e a n i n gw a sd e v e l o p e da c c o r d i n gt ot h es t e po fc o d e s i g n o fs o f t w a r ea n dh a r d w a r e d u r i n gt h er e s e a r c h ,t h ea u t h o rf u l f i l l e da n e m b e d d e dm c uc o r ec o m p a t i b l ew i t hp i c l 6 c 6 4b yv h d lr t ll a n g u a g ea n di t s 智能控制系统及其集成化设计 v e r i f y i n gs y s t e mb a s e do nf p g a :w h a t i sm o r e ,t h ea r t i c l ef u l f i l l e dt h e o t h e rl o g i c a lc i r c u i t s 、r o m 、r a ma n d t h ea n a l o gc i r c u i t s d e s i g n a n d v e r i f i c a t i o n s :r e a l i z e dt h ec o d e s i g ns y s t e mo fs o f t w a r ea n dh a r d w a r e : u s e db u i l di ns e l f t e s tm e t h o dt ot e s tt h ec h i p :t h ef i n i s h e dc h i pp r o v i d e s ag o o de x a m p l ef o rt h ef u t u r ed e s i g no ft h es a m ek i n d t h ec h i pw a sy i e l d e d b ya s m c sl u ms p d ms t a n d a r dc m o sl e v e lo n3 2 0 0 0 t h ec h i p sd i m e n s i o ni s a b o u t2 5 mm 2 k e y w o r d s :s o c 、c o d e s i g n 、s y s t e mv e r i f i c a t i o n 、i p 塑! ! 丝型墨竺墨基叁盛些望盐l 一 概述 一、系统集成技术的发展和现状 集成电路的设计过程走过了一条从低层次到高层次,从单个设计组织可完成 整个设计到需多个设计单位共同完成整个设计的过程。在集成电路设计之初, 芯片设计和制造紧密相关,芯片设计通常在半导体产业内部完成,设计者根据 工艺线的具体工艺条件设计物理版图。此后,设计的层次从晶体管、逻辑门、 寄存器( r t l ) 逐渐变化。图o 1 示意给出了这一变化过程, 根据趋势,随着集成技术的 发展,系统集成化日益明显, 复杂度也日益加大,在一个 芯片上实现一个系统成为可 能,即所谓片上系统( s o c ) 设 计成为集成技术的趋势;而 重复使用i p ( i n t e l l i g e n t p r o p e r t y ) 模块将成为片上系 统设计的主要方法。对于片 i 蛳i l 瑚 i 瞄舯 固o 1 :c 发展过程示意图 上系统,单个芯片内可能集成通用处理核,t :, ( m c uc o r e ) 、专用数字信号处理 器核心( d s pc o r e ) 、存储器核- i j , ( m e m o r yc o r e ) 、嵌入式软件硬件、数字和 模拟混合器件、r f 处理器等。全部这些模块都可能由片上系统设计者自行开发, 也有可能是通过i p ( i n t e l l i g e n tp r o p e r t y ) 模块来实现。独立于工艺的可综合的寄存 器传输级( r t l ) 模型是i p 模块的一种重要表述形式,称之为”软核”。这些模 型可以通过综合库方便的从一种工艺技术转换到另一种技术,也很容易从一种 应用转换到另一种应用。对于存储器、模拟模块等部分,通常是可以通过版图 形式表述,这使得模块与工艺条件密切相关,针对了具体的工艺,从而可以在 芯片面积、速度和功耗方面得到优化,这种i p 模块通常提供电路网表形式的” 固核”或者版图形式的”硬核”。通常片上系统的设计是基于i p 模块的设计技 术,片上系统的规模比较大,这样的片上系统的设计方法还有其自身的特点即 关键的技术。比如对于具有内嵌处理核心或者数字信号处理核心的片上系统, 塑堂塑型墨壅塾基壅垡些堡生一 就提出了软硬件协同设计的思路;还有系统验证也是比较关键的技术 二、智能控制系统的特点及应用 通常意义上,智能控制系统是以微 控制器为核心单元进行集中控制的智能 系统,它作为片上系统的一种首先是 具有了片上系统中普遍所具有的特点, 比如是应当基于i p 模块化的设计、提 出软硬件协同设计的要求等笔者所要 设计的智能控制系统主要是用于电话通 讯中的来电显示智能控制系统,它以 m c uc o r e 作为核心单元,结合其他 逻辑模块和模拟部分构成具有接收控制 来电显示和处理部分其他电话功能的应用系统。 智能化系统是以微控制器为核心的 软硬件混合的系统对于这类系统, 在设计中需要进行软硬件的协同设 计,这样的设计通常分为三个步骤: 1 、首先要对整个系统进行软硬件工 作的划分;2 、软硬件独立分别尽可 能同时设计实现,在设计过程中有相 应的协同验证手段;3 、最后再进行 软硬件的协同仿真,验证最终的设计, 设计流程如图o 2 所示。当然这样的设 计中包含有反馈过程,在设计不满足 要求或者有更好的考虑时,需要有适 当的反馈过程进行软硬件的重新划 分,或者局部的反馈操作;当然,为 了缩短开发周期及减少重复设计( r e 一 ( * ”* m ) 根据豪娩蔫采将8 惊系统特 横块l 申掌丫 i “警”i i ”“仿真l i 一掣”i。l 基于疆件的戟硬件枷同仿 jl * 卸啪一t * r 慢* l 槌 “* 目谴 掣l f_ _ - l 憎。e - - t l hh 麓_ * d e s i g n ) 的代价,在设计的不同阶段,可以由不同的系统建模进行验证在软硬件 i i 智能控制系统及其集成化设计 划分的过程中,如果处理速度没有很高的要求,能够用软件完成的工作就尽量不 用硬件来完成,这对于芯片面积的节省、提高效率、增加设计的灵活性很有效。 对于其中的硬件部分,通常情况下,为了实现软硬件协同设计,首先要为系 统建模,在系统设计的不同阶段可以建立不同的系统模型,提供软件设计平台和 验证手段;在本文中还提出了一种基于硬件的供软件设计的硬件平台以实现软硬 件协同设计,还作为系统软硬件协同验证的手段;具体的硬件模块通过以下的设 计流程按照基于i p 模块设计的方法进行设计,首先根据系统功能和各项指标将 硬件系统再分子模块,将各个子模块作为i p 模块独立设计,这些i p 模块也可作 为今后的重复使用,然后按照基于i p 模块的片上系统设计方法设计整个系统, 图0 3 中相应示出了笔者所设计的电话智能控制系统的硬件设计流程 关于软件部分的设计,起始于系统建模阶段,应用软硬件协同设计的方法, 软件部分的设计不一定都要在硬件系统确定下来以后进行,可以在系统建模的不 同阶段同硬件设计同时展开这样系统建模有重要的意义,在不同的设计阶段, 构建不同的系统模型,配合软件的设计,一方面可以增加系统设计进程,还可以 将错误发现的时间提前,减少重复设计的代价这样用于系统建模的工作量将有 所增加,这对e d a 公司开发相应的e d a 软件,及设计人员的设计都提出了要 求;在本文中是通过笔者设计的基于硬件的仿真平台设计软件和验证系统 在笔者所设计的电话机智能控制系统中所用的微控制器采用了与m i c r o c h i d 公司的p i c l 6 c 6 4 系列相兼容的设计,以p i c l 6 c 6 4 为微控制器核心单元的体系 结构,并用v h d l 语言在寄存器传输级对核心单元进行了设计描述,该微控制 器核心单元的指令集和功能都与标准的p i c l 6 c 6 4 相兼容基于这样的设计,可 以减少了很多用于建模的工作,在软硬件划分结束后,软件设计即可采用 m i c r o c h i p 公司现成的编译器及调试工具,构建仿真平台后可以与硬件设计分别 司时展开,加快了设计进度,减少了重复设计( r e d e s i g n ) l 拘代价。因为m i c r o c h i d 公司的单片机相对来说是比较成熟的产品,其功能也符合电话机智能控制系统的 需求,这样可提高设计此种产品的设计效率。由于在一开始就明确了软硬件设计 中的软硬件的划分,在设计阶段,软硬件可以同时展开,由于提供了基于硬件的 实时仿真系统,在设计过程中就提供了验证手段,那么主要问题就是设计怎样的 基于硬件的实时仿真系统,这在后面章节中有专门的阐述 i i i 塑! ! 丝型至竺墨基墨壁些堡生 三、以智能控制系统为题的意义 通讯与多媒体是当今微电子产业中发展最为迅速的两大领域,在这些系统 中对于信息处理的要求使得嵌入式控制即智能控制的实现成为必须,同样在消费 电子如智能卡、家用电器等对于智能控制也提出了要求因此,近年来,对于智 能控制这样的片上系统的设计需求越来越多,在系统开发中扮演着日益重要的角 色当用嵌入式智能化控制系统设计时,可方便地取代常规逻辑控制功能,简化 了电路板的设计和加工,且它具有可靠性高、体积小、成本低、产品设计灵活、 便于智能化的特点 选择”智能化控制系统的设计”这一课题进行研究的意义是显而易见的一 方面通过基于i p 模块的按t o p d o w n 的设计方法的实践和探索以掌握这一先 进的设计技术,并继而将其运用到其他电路的设计过程中去;另一方面对于这样 的集成有软硬件混合的系统,可以尝试软硬件协同设计的设计方法,研究如何更 好地进行软硬件的协同设计以及研究s o c 设计中的系统验证和提供可测性测试 方法等的关键技术;最后,这样的课题还顺应了当今电子产品领域系统集成技术 发展的趋势,也具有实用的市场价值 四、本文工作 本文作者主要是通过对电话机智能控制系统的设计研究总结此类系统的设 计方法和设计流程,为今后此类系统的设计能提供一个成功的范例 在第一章中,总体阐述了s o c 和电话机智能控制系统的初步知识,结合s o c 的理论对系统首先进行软硬件的划分工作;在第二到第五章中按照模块分别阐述 电话机智能控制系统的各部分,体会总结基于i p 模块的模块化设计方法;第六 章介绍了软硬件协同仿真,从软硬件协同设计的角度体会总结;第七章探讨了关 于芯片测试的问题,引出可测性设计的思考;最后在第八章中给出了最后芯片的 版图,并对全文进行了总结 i v 塑堂丝型墨竺墨苎叁盛些堡生 第一章电话机智能控制系统设计 一、s o c 介绍 二十世纪电子设计的发展史册可以说是页页辉煌,无论是四十年代晶体管 的发明,五十年代集成电路的问世,六十年代m o s 存储器的发展,还是七十年 代微处理器的诞生、八十年代的e d a ( e l e c t r o n i cd e s i g na u t o m a t i o n ) 和a s i c 都 对电子信息产业起到了重要的推动作用到了九十年代中期,s o c ( s y s t e mo n a c h i p ) 片上系统的系统集成技术出现在电子设计舞台的中央 最早时,s o c 设计定义为在一个芯片上包含计算引擎、存储器和逻辑电路随 着s o c 应用变得更加多样化,s o c 的定义迅速超越了原来的”计算引擎、存储 器和逻辑电路”的范畴,s o c 更是指在一个芯片上由于广泛使用预定制模块得 以快速开发的集成电路 i p 复用、系统验证和软硬件协同设计是目前s o c 设计中比较关键的技术 s o c 设计需要大量的预定制模块,这就是i p 核( 具有知识产权的模块) 要 开发的i p 核数目巨大,品种繁多,单个s o c 公司很难独立开发、维护和移植 所有必需的i p 核,这样就出现了很多独立的第三方i p 设计公司当然现在i p 的设计处于开始阶段,许多的标准化工作需要做 虽然s o c 技术使设计方法得以简化,但系统验证仍然是关键的设计环节由 不同的方面提供的i p 模块构建的系统如何得到系统验证也是关键技术,对于本 论文所涉及到的智能控制这样软硬件混合的系统,也就是要如何适当为系统建 模,提供纯软件验证的手段;或者通过其他基于硬件的验证等 在s o c 设计中,软硬件协同设计也是很关键的技术,上市时间中的一个重 要的,大多数设计公司又不能很好控制的部分是芯片设计的软件开发阶段传 统的软硬件混合的系统中,实时软件的开发要等到硬件完成后才可以进行,而 在软件设计的过程中,硬件设计基本处于停滞状态,严重影响系统设计进度, 在软硬件都完成的基础上,才可以进行软硬件的协同验证,而当这时发现设计 上的错误后,进行重新设计( r e d e s i g n ) 的代价就比较大;在s o c 的设计当中, 通常都是软硬件混合的系统,对于传统设计中的问题,就需要很好的解决,这 样就提出了软硬件协同设计的方法,一方面可以缩短设计的周期,另一方面还 可以消除由于最初设计重点的错误选择而带来的硬件设计反复,至少可以将发 塑! ! 丝型墨竺墨苎墨堕些堡生一一一 现问题的时间提前,减少重复设计的代价对于通常的比较专用的软硬件系统, 为系统建立不同阶段的系统模型是进行软硬件协同设计的常用手段,本文还提 出了一种基于硬件的软硬件实时仿真系统提供软件设计平台以进行软硬件的协 同设计 二、电话机智能控制系统介绍 智能控制系统作为s o c 中的一种代表,在设计中采用了s o c 的设计思路, 运用了比较先进的i p 复用、基于硬件的软硬件实时仿真系统作为验证手段和采 用了软硬件协同设计的方法,在下文中,笔者主要是通过对于这些s o c 关键技 术结合实际的电话机智能控制系统阐述电话机智能控制系统的设计首先系统 介绍一下电话机智能控制系统 所谓来电显示系统( c i d ) 即能在被叫方显示呼叫方信息的系统,通常实现 c i d 的基本方法是发端交换机将主叫号码等信息通过局间信令系统( 如n o 7 信 轰;霎篡冀萎著:耋耄 三三二卜葺 二三二) 今 三三二) 二堕- g ip1 p 】 i x n f】x 1 月p f n l , l 机,终端交换机将主口qi iy ifp ijli 识别信息以移频键控的 ( f s k ) 方式或者双音多频( d t m f ) 方式送给被叫终端设备。如图1 1 所示。 终端交换机将主叫识别信息 送给被叫用户终端设备在下述两 种状态下进行:一种是用户终端 挂机状态,一种是用户终端通话 状态。这样,整个电话智能系统 如图1 2 所示。 三、软硬件划分 电话机智能控制系统是具有内嵌微处理器的智能控制系统,对于这样的既 有硬件又有软件的系统,按照现在比较先进的设计方法,就自然提出了软硬件 协周设计的需求对于软硬件协同设计的第一步是软硬件的划分在此电话机 智能控制系统中,由于一些考虑到开发周期和智能模块的再利用率,此处的微 处理器核心采用的是p i c l 6 c 6 4 作为蓝本,设计成与之相兼容的处理器,这样 处理器的指令集就确定下来,在指令确定下来以后,微处理器的结构也基本确 塑! ! 丝型墨堕墨基塞堕些堡盐 定,其余硬件部分和软件的划分的原则是在不影响芯片性能的前提下,能够由 软件处理的部分尽量由软件来完成,这一方面可以节省硬件成本,同时可以增 加灵活性关于软硬件协同设计的考虑是这样的,此处没有采用为系统建模的 方法来进行软硬件的协同设计与系统验证一来用以系统建模的e d a 工具还 比较少,其次,通过编写程序建模工作的代价较大,此处是利用了已有p i c 的 仿真器与编译器的基础上,采用了基于硬件的软硬件实时仿真系统提供软件编 程平台,提供系统验证手段;而且硬件验证还有实时性和稳健性的优点关于 此基于硬件的软硬件实时仿真系统在后文中有专门章节有阐述 四、硬件模块 智能控制系统的核心是智能控制芯片,其主要完成来电显示信号接收处理、 键盘接收处理、液晶译码驱动、免提、自动拨号等多项电话功能。可将其划分 为如下图1 3 所示的子模块,其中的部分子模块可作为将来的可重复使用的i p 模块。 ( 1 ) 8 - b i t c p u ,即8 位的 处理器,处理 器完成键盘扫 描,接收发送 数据,处理数 据,处理中断 等功能在指 令上其和 。一 刊g 膦。,目i 瓦仁习 s 吲u b n刮l c d d r i v e rf c d 两k i 鬻阳陪 h 一 m k e y 耐b o a 黜r dp 令 d 。裂k i n t e r f a c ef 、 图1 3 :电话系统模块图 m i c r o c h i p 公司的p i c l 6 c 6 4 相兼容。 ( 2 ) l c d d r i v e r 即液晶译码驱动模块,用以驱动显示时间,来电信息等内容。 ( 3 ) d t m fg e n e r a t o r 即双音多频拨号部分,用以产生d t m f 拨号信号。 ( 4 ) c i dr a m 是512 字节的片上r a m ,用以存储多个来电信息和去电信息。 ( 5 ) k e y b o a r di n t e r f a c e 即键盘接口,输入输出键盘按键信息和控制等信 号。 ( 6 ) f s k d e c o d e r i n p u t 和d t m f d e c o d e r i n p u t 是分别来自f s k 解码 智能控制系统及其集成化设计 芯片和d t m f 解码芯片解码后的以特定数据格式输入的来电信息。 整个芯片在8 位的微处理器的集中控制下统一协调的工作。对于这样的系 统软硬件的划分就比较明了,在微处理器结构及指令集确定的基础上,能够用 软件完成的功能都由此微处理器来实现,以降低硬件成本及增加灵活性。由于 此微处理器与p i c l 6 c 6 4 相兼容,软件开发的编译器及仿真器等都可币用现成的 产品,这样最后实现软硬件协同仿真也来得比较容易。 五、软件模块 软件所完成的功能如图1 4 所示,在通常状态下,微控制 器处于休眠状态,这样可以降 低此系统的功耗,延长系统工 作寿命,这对于便携式系统显 得尤为重要;当有工作需要有 微控制器处理时,通过中断来 唤醒微处理器,由微处理器判 断具体的中断源并进行处理, 在所有的中断处理完成以后再 回归到休眠状态 图1 4 :软件流程图 塑! ! 丝型墨篓垦苎墨堕些堡生一 第二章基于r i s c 1 i k e 结构的8 - b i t 嵌入式m c u 的设计实现 嵌入式m c u 广泛的应用于电子产品的各个领域中,在电话机智能控制芯 片中,其核心即是一内嵌式的m c u ,本章专门讨论一个面向芯片内嵌式的8 位 数据的r i s cc o r e 的设计和实现。它被作为主控制器,嵌入应用在智能电话 机控制芯片中。 根据电话机智能控制系统的实际需求,结合开发成本和周期,在设计此内 嵌式r i s cc o r e 时,参照了m i c r o c h i p 公司的p i c l 6 c 6 4 作为蓝本,采用和它 相同的指令集,一来p i c l 6 c 6 4 作为8 位的c p u 比较成熟,完全满足实际系统的 需求;同时采用了和p i c l 6 c 6 4 相同的指令集则可以利用p i c l 6 c 6 4 的编译系统, 可以省去再开发独立的编译器,同时能利用p i c l 6 c 6 4 的开发器,构建软件开发 平台,构建仿真系统,缩短了开发周期,节省了开发费用;再有也便于将此r i s c c o r e 作为i p 模块便于以后的其他用到m c u 的设计。按照独立于工艺的i p 模 块的设计思路,本设计采用了v h d l 语言在寄存器传输级对微控制器核心单元 进行了设计描述 此微控制器硬件结构特点及技术性能特点是: 2 1 类一精简指令集计算机( 砒s c - l i k e - - r e d u c e di n s t r u c t i o ns e tc o m p u t e r - l i k e ) 结构 为此微控制器设计的类r i s c 结构体现在每一条高效率和功能强大的指令 上,所有的指令都是单字的宽字位指令,为l4 位,有35 条指令,除了程序 分支等涉及到程序计数器突变的指令是双周期外,其他指令都是单周期指令, 在这些指令中没有功能相交叉的指令,使所有的指令具有简洁性。单宽字指令 提高了软件编码的效率和减少了所需要的程序存储器单元,使系统具有高处理 效率和突出性能;另外,由于所用指令数较少和较简洁,编程任务和调试任务 相对就比较容易。与p i c l 6 c 6 4 相比较而言,多了一条r d r o m 指令,这条指 令用于读r o m 内容,最终用在芯片测试阶段的自检测用 2 五哈佛饵a r v a r d ) 双总线结厂= _ _ k := = f 圃。诺蕞。 构oo l 一 此微控制器的存储结构是卜:= l :刊= k := 4 :习。 基于哈佛双总线概念,数据和目2l :自# 目# * 日十t 8 智能控制系统及其集成化设计 指令总线完全分开以避免出现典型的普通c i s c 设计中经常出现的存储器处理瓶 颈问题。 传统的7 - 5 诺依曼结构的计算机是在同一个存储空间取指令和数据,两者不 能同时进行,故限制了工作带宽。而在哈佛结构中,指令和数据空间完全分开, 一个用于指令,一个用于数据,从而可以同时对程序和数据同时访问,提高了 数据的吞吐率。而且指令和数据可以采用不同的总线位数,如此微控制器就是 采用了8 位数据总线,而指令采用了14 位总线。图2 1 表示两种不同结构的总 线结构。 2 3 两级指令流水线结构 此微控制器的取指和执行采用指令流水线结构,当一条指令被执行时允许 下一条指令同时被取出,使得在每个时钟周期可以获得最高效率。图2 2 示意了 两级流水工作的过程。 在很多其他微控制器中,取指和指令执行是顺序进行的,而在指令流水线 周期o周期i周期z 周期3周期4 困2 2 :指令流水线蛄构示意图 p c ( p r o g r a mc o u n t e r ) 值的程序分支指令( 例如g o t o 、 等才需要两个周期。 2 4 高速、低功耗设计 结构中,取指和执行 在时间上是重叠的, 所以才可能实现单周 期指令。只有涉及到 改变程序计数器 c a l l 或对p c 写操作) 由于微控制器所用的宽字单周期指令、哈佛双总线和r i s c l i k e 结构,其 数据吞吐率得到了极大的提高。 为了适合实际工作需求,对于此微控制器的设计采用了如下低功耗的设计。 1 采用全静态c m o s 电路设计,使电源操作能耗很低: 2 对于输入管脚,通常状况下,让其上拉或下拉,避免输入悬空造成不 定的状态转换,产生不必要的开关功耗; 3 在指令中加入休眠( s l e e p ) 指令,在微控制器不工作时,s l e e p 有效, 此时可以使芯片时钟失效,节省功耗,再可由中断唤醒控制器,恢复 工作; 4 采用二级流水的结构使得平均c p i 减少。 5 在软件方面,可以提高软件的效率,尽量减少软件执行的时间,增加 微控制器休眠的时间,以将低功耗。 2 5 强大的i o 性能 此微控制器的另一个特点就是其输入输出功能十分强大,芯片可以在个 指令周期内对任何寄存器( 包括i o 寄存器) 中的任何一位完成位置1 、位清 零和位测试功能,所以此微控制器与外部电路的接口效率非常高,可以用来作 为高速i o 控制器,这对于笔者所要设计的智能电话机控制系统有很大的帮助, 因为在这样的智能控制系统中有大量的外围操作,需要较高性能的i o 功能, 此微控制器恰好可以提供这样的性能。 2 6 指令格式 此微控制器是采用精简指令集( r i s c ) 结构体系,所以寻址方式和指令都既 少又简单,指令长度14 位,共35 条指令,与p i c l 6 c 6 4 相比,少了o p t i o n 指令,多了r d r o m 指令,r d r o m 即读r o m 指令,用以作为r o m 自检用。 指令集中寻址方式根据操作数来源不同,可分为立即数寻址、寄存器间接 寻址、直接寻址和位寻址四种;按指令操作方式大体上可分三类:字节操作类 指令、位操作类指令、立即数操作和控制操作类。各自的指令格式如下: ( 1 ) 字节操作指令 操作码 f d i f ( 寄存器序号) i ( 2 ) 位操作指令 j 操作码 j b b b j f ( 寄存器序号) j ( 3 ) 立即数操作和控制操作类 l 操作码 l k ( s z o p 数) l 其中”f ”表示数据寄存器的地址,用以表示该指令使用数据寄存器中的哪一 个;”d ”表示存放结果的目标寄存器,如果d = 0 ,操作结果存入工作寄存器 w 中,如果d = i ,操作结果存入f 所指的数据寄存器中,适合关于字节的操作; “b b b ”表示位操作中的该位在字节中的位置,对该位可进行置1 ,清零和测 试;“k ”为8 或1 1 位的立即数,适合含有立即数的操作和控制操作类。关于 塑丝墼型墨竺墨基壅堕些望生 该微控制器的存储器结构和寄存器分配等在下文中有具体的阐述。 2 7 整个微控制器的硬件结构框图 如图2 3 所示,对于其中的一些具体模块,如下做详细的阐述。 田2 3 :微拉制磊站构框瑚 2 7 1 存储器分配和接口 芯片内部集成有程序存储器和数据存储器,程序存储器的容量是2 k x l 4 位, 采用m a s kr o m 的形式实现数据寄存器包括通用寄存器组和专用寄存器组, 通用寄存器组为1 2 8 字节,以r a m 的结构实现,专用寄存器以寄存器的结构 来实现。通用寄存器组和专用寄存器组统一编址,即采用r a m 的形式实现。 2 7 1 1 程序存储器的组织结构。 此微 控制器有 一个1 3 位 宽的程序 计数器 p c ,最大 可寻址8 k 的程序存 储器空 间,但在 此控制器中只用了2 k 的空间,为将来的升 圈2 6 t 数据存储区 级留下基础,其结构图如图2 4 所示,访问超出这些地址空间的存储单元将导致 智能控制系统及其集成化设计 循环回到有效的程序存储空间。复位矢量是0 0 0 0 h ,中断矢量是0 0 0 4 h 。有独 立的13 位堆栈寄存器,深度是8 级。 2 712 数据存储器的组织结构 数据存储器分为两个存储体( 存储体0 和存储体1 ) ,每个存储体由通用寄 存器和专用寄存器两部分组成( 见图 2 5 ) 。每个存储体最多可达1 28 个 字节。专用寄存器安排在低地址存储 单元,通用存储体接着专用存储体后 面安排在高位地址存储单元,通用寄 存器都是用静态r a m 实现。某些存 c k i n c p l r 删地址 墩出的指争 执行的指 广 r _ 1r l _ j i _ 、 ()【x) j p cjp c + i;p c + 2 p c l|pclp c + i 储体0 中的专用寄存 器被映射在存储体l 中( 实际物理寄存器 在存储体0 中) 。专用 寄存器s f r 包括定时 器寄存器、程序计数 器p c 、状态寄存器 s t a t u s 、i ,o 寄存器 ( 端1 2 ) 和”寄存器选择”寄存器f s r 等。另外还有用于i o 口配置和预分频 选择的专用 寄存器。 所有的寄 存器,包括 i 0 口、定时 器和程序计 数器等都是 r a m 结构形 b n k ob a n k i 图2 8 :直接或问接寻址方式图 式,而且都只需一个周期就可以完成访闯和操作。关于寄存器组的示意图如图 2 6 。 9 智能控制系统及其集成化设计 通用寄存器用于指令执行中存放数据或控制信息,其内容在上电复位后是随 机不确定的,但在非上电的其他复位后,将保持复位前的寄存器内容。对通用 寄存器可以直接进行访问或通过“寄存器组选择”寄存器f s r 间接访问,通用 寄存器的地址是:2 0 h 7 f h ( 存储体o ) ,a o h b f h ( 存储体1 ) 。图2 7 的时序示 出了用一个周期完成一次读写通用寄存器的工作,其中p c 所含的指令完成读写 内部r a m 。 专用寄存器分为两类:一类是用于c p u 核心操作,另一类是用于控制外围 功能芯片操作。首先概述一下用于c p u 核心操作的专用寄存器:状态寄存器 s t a t u s 含有a l u 的算术运算结果状态、复位状态及数据存储体选择位;选择 寄存器o p t i o n 是一可读写的寄存器,它含有各种配置t m r 0 w d t 预定标器、 外部i n t 中断、t m r 0 和b 口p o r t b 的弱上拉等各种控制位;中断控制器 i n t c o n 是一个可读写的寄存器,含有定时器0 溢出、r b 口变化和外部i n t 引脚中断各种允许控制和标志位;外围接口中断允许寄存器p i e l 含有不同外围 接口中断的允许位;外围接口中断标志寄存器p i r l 含有各个外围接口的中断标 志位;间接寻址i n d f 和f s r 寄存器:i n d f 不是一个物理寄存器,通过使用i n d f 寄存器实现间接寻址。当对i n d f 寄存器进行寻址时,实际上是访问f s r 寄存 器内容所指的单元,即把f s r 寄存器作为间接寄存器使用,图2 8 示意了直接 或间接寻址方式图。i o 端口,此微控制器有丰富的端口功能,共有5 个i o 口 ( p o r t a p o r t e ) ,p o r t a 是具有六位宽的输出口,p o r t b 是八位宽的输入口, p o r t b 0 作为外部中断的输入端,p o r t b 4 , - - p o r t b 7 作为键盘输入的中断输入, 其余口作为通常的输入 口:p o r t c 0 p o r t c 6 作为输入,而p o r t c 7 作为输出;p o r t d 是具 有双向功能的端口,由另 一一位寄存器t r i s d 来 控制所有p o r t d 口的输 入或输出方向,以p o r t d 口是三位宽的输出口。 圈29 tp o r t d i :1 结构 口作为示范,它的结构图如图图2 9 所示,p o r t e 塑堕丝型墨堑墨基墨堕些堡丛 2 7 2 a l u 处理模块 a l u 是一个通用算术逻辑运算单元,用它可以对工作w 和任何一个通用 寄存器的两个数据进行算术和布尔运算。a l u 的字宽是8 位,可以用其进行加、 减、移位和逻辑操作。一般的算术运算都是以2 的补码形式进行。在有两个操 作数的指令中,典型情况是其中一个操作数是在w 寄存器( 工作寄存器) 中, 而另一个操作数是通用寄存器或就是一个立即数。在只有一个操作数的指令中, 这个操作数要么是在工作寄存器中,要么是在通用寄存器中。这里的w 寄存器 是一个8 位的用于 a l u 操作的工作寄存 器,它是一个不可寻 址寄存器。 根据所执行的指 令,a l u 可能会影响 h i i i i ! i ;j :;:;乏。9 ”+ f :己。:? 一皿痂一w 血 图2 1 0 :不同状态下程序计数嚣p c 值的装八方式 状态寄存器s t a t u s 中的进位标志c ( c a r r y ) 、十进制数字进位标志( 即半进位 标志) 、d c ( d i g i t a lc a r r y ) 和全零标志z ( z e r o ) 。在减法操作中,c 和d c 位就 分别作为借位和十进制数字借位。 2 7 3 p c 处理模块 p c 处理模块负责计算下一条指令的p c 值,包括处理g o t o 、c a l l 、r e t f i e 等发生p c 跳转的指令,系统结构图中示出了p c 处理模块的结构,它包括一个 堆栈,深度八级。当c p u 处于正常工作状态时,控制信号选择p c + i 作为下一 拍的p c 值;当执行g o t o 指令时,选择来自指令里的跳转地址作为新的p c 值;当执行c a l l 指令时,将当前p c 入栈,并将跳转地址送p c 寄存器,当执 行r e t f i e 等指令时,将栈顶数据送p c 寄存器。 程序计数器p c 是一个13 位宽的增量寄存器,其低8 位p c l 是一个可读写 寄存器,其高字节p c h ( 有效位5 位) 不能直接进行读写操作,它是通过一个 位的保持寄存器p c l a t h 把高5 位地址传送给程序计数器的高字节。当执行 c a l l g o t o 指令或写p c l 时,如上图( 图2 1 0 ) 所示,p c 值的高字节就从 p c l a t h 寄存器装入; 2 7 4 中断机制 此微控制器的中断逻辑电路图( 图2 1 1 ) 如下: 全局中断允许位g i e ( i n t c o n 寄存器的d 7 ) 置1 将开放所有未屏蔽的中 圈21 1 :中断逻辑电路 断,如果将该位清零,将 禁止所有的中断。各个不 同中断源的中断可以通过 设置i n t c o n 寄存器中相 应中断允许位来控制是否 开放该中断。在复位后g i e 位被清零。i n t 引脚中断、r b 口电平变化中断和t m r 0 溢出中断标志都在 i n t c o n 寄存器中。外围接口中断标志是在p i r l 中,相应的中断允许位是在专 用寄存器p i e l 中,而外围接口中断允许位是在专用寄存器i n t c o n 中。在响 应中断时,g i e 位将被清零以禁止其他的中断,返回的中断地址被压栈保护, 接着把中断入口地址0 0 0 4 1 - i 装入程序计数器p c 。在中断服务程序中通过对中断 标志位进行查询确定,中断标志位必须在重新开放之前用软件清零,以避免不 断地中断请求而反复进入中断。 r b 0 i n t 引脚上的外部中断是用边沿触发,当i n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论