(电路与系统专业论文)基于嵌入式处理器的片上系统设计和应用.pdf_第1页
(电路与系统专业论文)基于嵌入式处理器的片上系统设计和应用.pdf_第2页
(电路与系统专业论文)基于嵌入式处理器的片上系统设计和应用.pdf_第3页
(电路与系统专业论文)基于嵌入式处理器的片上系统设计和应用.pdf_第4页
(电路与系统专业论文)基于嵌入式处理器的片上系统设计和应用.pdf_第5页
已阅读5页,还剩66页未读 继续免费阅读

(电路与系统专业论文)基于嵌入式处理器的片上系统设计和应用.pdf.pdf 免费下载

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

文档简介

摘要 本文阐述了基于嵌入式处理器n i o s 的片上系统的设计和具体到一块监护仪 主控板的应用。文中首先介绍了s o c 设计方法学和n i o s 的基本原理,然后给出 r 片上系统软硬件的功能划分以及硬件功能模块的设计:该片上系统选用 a l t e r a 公司的最新软核n i o s 作为核心模块,其具有多种外部逻辑接口和功能 部件,如总线控制器、定时器、串行通讯接口和通用输出输入接口等,另外还集 成了自行设计的功能模块,如i z c 控制器等,并以a l t e r a 公司c y c l o n e 系列中 等容量的f p g a 芯片为实现载体。接下来,文章说明了s o c 应用系统的硬件设计: 应用系统整体以此s o c 为核心,并辅以一些必要的外围器件,实现功能包括与两 个测量模块的数据通讯、与打印接口的数据通讯、测量结果的接收和处理、数据 的显示和驱动等。最后,根据前面的软硬件划分,文章给出了片上系统软件的设 计过程,并完成了软硬件的协同设计、验证。 关键词:片上系统 n i o s 嵌入式系统 i p 协同设计 a b s t r a c t t h i sp a p e rg i v e st h ed e s i g np r o c e s so fas o cb a s e do ne m b e d d e dp r o c e s s o r n i o s a n dt h ea p p l i c a t i o no fi tt oac p ub o a r do fap a t i e n tm o n i t o r i nt h ed i s s e r t a t i o nt h e m e t h o d o l o g yo fs o cd e s i g na n dt h ep r i n c i p l eo fn i o sa r ei n t r o d u c e da n da n a l y z e d f i r s t l y t h e nt h ef u n c t i o n a lp a r t i t i o no f s o f t w a r e h a r d w a r ea n dt h ed e s i g np r o c e s so f t h e f u n c t i o n a lp a r t sa r ed i s c u s s e d t h es o ci sc o m p o s e do fak e r n e lc o m p o n e n t - - n i o s , s e v e r a lo n c h i p f a c i l i t i e s ,s u c ha s ,b u sc o n t r o l l e r , i n t e r r u p tt i m e r ,u a r ta n dp i o ,e t c , a n do t h e rs e l f - d e s i g n i n gf u n c t i o n a lp a r t s ,s u c ha s ,i z cc o n t r o l l e r ,d i s p l a ys y s t e m ,w h i c h a l ei m p l e m e n t e di nt h em i d d l ec a p a c i t yf p g ao fa l t e r a sc y c l o n es e r i e sl o g i cw i t l l v h d l s u b s e q u e n t l y ,t h eh a r d w a r ed e s i g n o fa p p l i c a t i o ns y s t e mi si n t r o d u c e d , i n c l u d i n gs o ca n do t h e ra c c e s s o r i e s t h ef u n c t i o n so ft h ea p p l i c a t i o ns y s t e mi n c l u d e d a t ac o m m u n i c a t i o nb e t w e e nt w ot e s tp a r t sa n dc p ub o a r d ,d a t ac o m m u n i c a t i o n b e t w e e nr e c o r d e ra n dc p ub o a r d ,r e c e i v i n ga n dp r o c e s s i n gr e s u l td a t a ,d i s p l a y i n gr e s u l t d a t a ,e t c f i n a l l y ,b a s e do nt h ef u n c t i o n a lp a r t i t i o no fs o f t w a r e h a r d w a r em e n t i o n e d b e f o r e ,t h ed e s i g np r o c e s so fs o f t w a r ei sg i v e n ,a n dt h ec o d e s i g na n dc o v e r i f i c a t i o n a r ei m p l e m e n t e d k e y w o r d s :s o cn i o s e s ( e m b c d d e ds y s t e m ) i pc o - d e s i g n y 5 8 3 7 2 4 创新性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中,1 j 包含其他人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均己在论文中做了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:曼丛 日期 宣竺竺:! 坚 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:学校有 权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部 分内容,可以允许采用影印、缩印或其它复制手段保存论文。( 保密的论文在解密 后遵守此规定) 日期宣! ! ! ! :竺 日期地! 第一章绪论 第一章绪论 1 1 集成电路技术发展背景概述 人类进入2 l 世界面临的一个重要课题就是如何面对国民经济和社会发展信息 化的挑战。以网络通信、软件和微电子为主要标志的信息产业的飞速发展既为我 们提供了一个前所未有的发展机遇,也营造了一个难得的市场与产业环境。 集成电路作为电子工业乃至整个信息产业的基础得益于这一难得的机遇,呈 现出快速发展的态势。以软硬件协同设计( s o f t w a r e h a r d w a r ec o - d e s i g n ) 、具有 知识产权的内核( i p 核) 复用和超深亚微米( v e r yd e e ps u b - m 集成电路,简称 v d s m ) 技术为支撑的片上系统( s o c ) 是国际超大规模集成电路( v l s l ) 的发 展趋势和新世纪集成电路的主流。 从1 9 4 7 年晶体管的发明和1 9 5 8 年集成电路的发明到现在,集成电路工艺技 术和器件物理围绕着“等比例缩小”这一基点取得了不断的进步和巨大的成功。 半导体器件沟道长度和长宽尺寸的缩短一方面提高了电路的集成度,另一方面则 提高了电路的速度,这就使得在同样大小的芯片上可以集成更多的晶体管,从而 实现更复杂的功能并获得更高的速度与可靠性。因此一块芯片在获得更复杂的功 能和更优良的性能的问时,成本也不断下降,追求更高的性能价格比成为了集成 电路发展的重要动力源泉。正如i n t e l 公司创始人之一g o r d o ne m o o r e1 9 6 5 年 所预言的那样( 著名的摩尔定律) :集成电路按照每隔3 年集成度增加4 倍,特 征尺寸缩小2 倍的速度发展。这期间,虽然有很多人预测这种发展趋势将减缓, 但是微电子产业3 0 多年来发展的状况证实了m o o r e 的预言,而且据预测,微电子 技术的这种发展趋势还将继续下去。以最有代表性的集成电路存储器和c p u 为 例,在集成电路的特征尺寸从1 9 7 8 年的1 0 1 发展到2 0 0 3 年的o 1 3 的过程中, d r a m 的容量从1 9 7 1 年的1 k b 到2 0 0 0 年已达1 g b ,c p u 的主频也从7 0 年代的 7 5 0 k h z 发展到2 0 0 3 年的3 g h z ,并且预计2 l 世纪的微电子技术将从目前的3 g 时 代逐步发展到3 t 时代( 即存储容量由g 位发展到t 位、集成电路器件的速度由 g h z 发展到t h z 、数据传输速率由g b p s 发展到t b p s ;注:1 g = 1 0 ,i t = 1 0 “, b p s 为每秒传输数据的位数) 。 集成电路的集成度越来越高,己经可以把整个系统都集成在一个芯片之内。 而目前绝大多数的整机系统都是通过印刷电路板( p c b ) 将每个芯片连接起来组成 的,虽然芯片本身功耗小,速度快,但印刷电路板带来的连线延时和噪声却大大 降低了系统性能,成为系统发展的瓶颈。在这样的技术推动与需求牵引下就出现 2 基于嵌入式处理器的片上系统设计和应用 r 系统芯片( s o c ,s y s t e mo nc h i p ) 。 1 9 5 9 年仙童公司推出第一个硅平面晶体管商品,经过约十年的推广,开始了 半导体产品特征的第一个通用循环周期:t 9 6 1 年仙童公司又推出第一个硅平面i c 商品,这类i c 丽向如计算器、电视机等不同的电子装置,又是一种标准构件,称 为专用标准产品( a s s p ) ,标志产品应用特征进入了第一个专用循环周期。7 0 年 代初英特尔公司开发成功微处理器( m p u ) 芯片,是对晶体管标准构件的一次飞 跃,从而使产品螺旋上升到一个新的通用循环;8 0 年代,随着半导体制品成本不 断下降和设计工具的长足发展,推动了一个产品满足一个用户要求的专用集成电 路( a s i c ) 的发展,其中特别是预制母片的掩膜编程( 门阵) 技术,大大折衷了 造与用的不同利益,使半导体产品转入高一级专用特征循环。但是这种掩膜硬编 程专用电路( m a s i c ) ,对双方仍不够方便,因此在8 0 年代末、9 0 年初又发展 了诸如现场可编程门阵( f p g a ) 等一类的用户自编程专用电路( u a s i c ) 等,满 足了在系统上进行软编程,反复改变电路硬功能,适应系统最终要求,从而使产 品特征进入了一个全新概念的准通用循环;随着a s i c 设计技术和传统l s i 开发经 验的大量积累,i c 开始向i s ( 集成系统) 或片上系统( s y s t e m o nc h i p ,s o c ) 发 展。s o c 实质上是一个专用处理系统,可以译为“系统集成芯片”,意指它是一 个产品,是一个有专用目标的集成电路,其中包含完整系统并有嵌入软件的全部 内容;s o c 也可以译为“系统芯片集成”,意指它是一种技术,用以实现从确定 系统功能开始,到软硬件划分,并完成设计的整个过程,从而把产品特征带进了 高级的专用循环。 1 2s o c 的特点 广义来说,s o c 技术就是将系统的全部功能模块集成到单一半导体芯片上。 严格地说,s o c 技术是一项非常复杂的工程和设计技术。其包括以下很多特性: 1 实现复杂系统功能的超大规模集成电路 2 采用超深亚微米工艺技术 3 使用一个或数个嵌入式c p u 或数字信号处理器 4 具备外部对芯片进行编程的功能 5 主要采用第三方的i p 核进行设计 系统芯片通常也指在单一芯片上实现的数字计算机系统。该系统应该包含两 个基本的部分:硬件部分和软件部分。硬件部分包括c p u 、b u s 、r o m r a m 、i o 等计算机的基本部件;软件部分主要指操作系统,也可以包括重要的应用软件。 s o c 是在a s l c 的基础上发展起来的电路它与a s i c 完全不同,具有很多 第一章绪论 3 独特的优点: ( 1 ) s o c 增加了功能:从单一功能增加到多功能,实现一个系统的功能,实现 了高速、高集成度和低功耗。 ( 2 ) s o c 大大降低整机的成本:由过去用多块i c 构成系统,现在变成一块 s o c 。 ( 3 ) s o c 大大降低整机的体积:这是系统制造商进一步发展的方向,尤其对便 携式的电脑、通讯、医疗器械及多媒体产品的生产厂家更具有吸引力。 ( 4 ) s o c 促进了整机系统更新换代的速度:它缩短了供需双方的差距,整机更 受用户的欢迎,易于占领市场。 所以可以说s o c 的出现,不仅因为半导体的制造技术己经成熟,而且s o c 本 身也具有无法比拟的优点:实现高效运作,缩短产品上市时间,降低功耗和减少 所占的p c b 空间,提高系统可靠性,它可使电子系统尺寸更小,性能更高和成本 更低。s o c 除了大大地减少研发费用与时间外,系统功耗、体积与电磁干扰( e m i ) 将大幅降低,同时整个系统的抗干扰性与可靠度将提高,这对于产品更新速度极 快、对电磁干扰与抗干扰能力要求极高而又要求产品具有便携性的电脑、通讯及 多媒体产品的生产厂家而言,意义尤其重大。单片系统的出现可以最大化的简化 电路设计,它把电子系统的可靠性、低功耗等都解决在工s o c 设计之中,系统设 计工程师可集中精力研究对象领域中的问题,s o c 势必成为现代电子系统设计的 最佳选择。s o c 的成功实现不再是单一学科的问题,它是多学科交融、渗透的结 果。因此发展s o c 设计在未来的集成电路设计业中将有举足轻重的地位。 传统的、基干标准单元库的设计方法己被证明不能胜任s o c 的设计;现行的 面向逻辑的集成电路设计方法在深亚微米集成电路设计中遇到了难以逾越的障 碍;芯片设计涉及的领域不再局限干传统的半导体而且必须与整机系统结合;集 成电路设计师们从来没有像今天这样迫切地需要汲取新知识,特别是有关整机系 统的知识。所以面向s o c 的新一代集成电路设计,系统知识、口复用、软硬件协 同设计验证方法学研究对于推动集成电路的发展是至关重要的。 1 3i p 复用概念 随着芯片规模的不断扩大,s o c 的开发不仅需要克服众多的技术难题,而且 要面临巨大的开发成本考验。显然如果借用第三方成熟的i p 技术则大大地减少了 技术上的投资与风险。况且,高度复杂的系统功能和愈来愈高的产品进入市场的 时间要求不允许芯片设计者一切从零开始,因此,必须借鉴和使用己经成熟的设 计为自己的产品开发服务。事实上今天的集成电路已经开始越来越多的使用i p 核 4 基于嵌入式处理器的片上系统设计和应用 来进行设计了。 本论文中用到的嵌入式处理器n o s 就是a l t e r a 公司提供的个r i s c 软 核处理器i p ,有关s o c 设计方法学和i p 核n i o s 的概念和应用请参见本论文第二 毒。 1 4 论文的工作及意义 随着s o c 设计技术的迅猛发展,其应用领域也越来越广,从通讯行业、医疗 器械到消费品产品,都可以是片上系统的应用领域。本课题以增加系统集成度( 应 用片上系统) 、减小系统体积、降低功耗和成本,同时保证系统性能为主要目标, 基于一个嵌入式3 2 位r i s c 软核c p u ,自主研究和开发了一款特定功能的片上系 统( s o c ) ,并应用到一款医疗监护仪的主控板上。 本文从n i o s 软核处理器着手,以片上系统的设计和应用为主要工作,不失一 般性地研究基于嵌入式处理器的s o c 软硬件协同验证开发过程及方法,最终完成 s o c 软件和硬件的应用。系统整体以s o c 为核心,包括与两个测量模块的数据通 讯、与打印接口的数据通讯、测量结果的接收和处理、数据的显示和驱动等模块。 论文将最新的n i o s 软核处理器作为关键i p 来搭建特定功能的片上系统,并 用此片上系统代替监护仪主控板中的c p u 系统,率先将s o c 应用到国内的医疗设 备领域,对促进我国医疗设备的微型化有着重要意义。 本文的主要内容和结构安排如下: 第一章:绪论 介绍论文的研究背景、涉及的方法和论文的主要工作。 第二章:s o c 设计方法及嵌入式系统 讨论了s o c 设计方法学及其涉及的相关内容,介绍了s o c 技术的几种实现方 法,并且还对f p g a 原理和嵌入式系统予以简单介绍,最后介绍了论文所用到的 嵌入式处理器n i o s 。 第三章:基于n i o s 的片上系统设计 以复用嵌入式软核处理器n i o si p 为基础,介绍了片上系统的设计实现过程, 具体包括了c p u 系统、以及外围关键模块的设计。在设计过程中应用了软硬件协 同设计理论等s o c 设计理论。 第四章:片上系统应用的硬件设计 在片上系统设计完成的基础上,将s o c 应用于实际电路板,从而进一步验证 片上系统的功能。本章介绍了片上系统应用的硬件环境的实现,重点在于与此片 j 二系统相关的应用电路设计。 第一章绪论 s 第五章:片上系统的应用软件设计 本章介绍了此片上系统应用到整机系统的软件设计。与其应用的硬件环境共 同组成了片上系统应用的完整环境,从而完成了一特定片上系统设计和应用的全 部实现。 结束语部分总结了论文的工作,对论文中需要完成的部分和存在的不足给予 了客观的说明,并提出了进一步的设想。 最后是致谢和参考文献部分。 6 基于嵌入式处理器的片上系统设计和应用 第二章s o c 设计方法及嵌入式系统 2 i s o c 设计方法学 作为a s i c ( a p p l i c a t i o ns p e c i f i ci c ) 设计方法学中的新技术,s o c 始于2 0 世 纪9 0 年代中期。1 9 9 4 年m o t o r l a 发布的f l e xc o r e t m 系统( 用来制作基于 6 8 0 0 0 t m 和p o w e rp c t m 的定制微处理器) 和1 9 9 5 年l s il o g i c 公司为s o n y 公 司设计的s o c ,可能是基于i p ( i n t e l l e c t u a lp r o p e r t y ) 核完成s o c 设计的最早报 导。由于s o c 可以充分利用已有的设计积累,显著地提高a s i c 的设计能力,因 此发展非常迅速。在2 0 0 0 年的c c c ( c u s t o mi cc o n f e r e n c e ) 会议上,m o t o r l a s o c 设计技术研究部主任j o ep u m o 作了主题报告( k e yn o t e ) ,题目是”s o c : t h ec o n v e r g e n c ep o i n tf o rs o l u t i o no f t h e2 1 s tc e n t u r y ”。c i c c 是a s i c 设计领域最 高层次的国际学术会议。它的主题报告一般代表着a s i c 设计领域的技术发展趋 势,也说明s o c 在a s i c 学术界和工业界受到重视的程度。 s o c 设计方法学的内容可以简单归纳为软硬件协同设计技术、i p 核生成及复 用技术和超深亚微米i c 设计技术这三种技术,它们又分别包含一系列的子课题, 如下图所示。 薹千i p 曲置奠鼢技术l 鲷p 曩岫硅与一畦授木i ! 塑世垫苎i 一 菊i 磊习 辕硬绎岍馈“与譬:证技术i i 墓子曩件曲辆蜂毡l 生蓐 j 皿自囊件曲辱蹙屿l 禳 件端阳峨赞 臁噩曲量_ 疆甘燕求l l 时m 嘲懈i 酝e 功擂i 姒十技木i i 四冉硷t f 用由鼍 i 计燕术 i w t t i f 丽慢什f 图2 1s o c 设计方法学的主要内容 2 1 1s o c 的内涵及处延 要研究s o c 设计方法学,首先必须明确什么叫s o c 。在经过多年的争论之后, 专家们最终就s o c 的定义达成了比较一致的意见。这个定义虽然在形式上不那么 严格但是明确了s o c 的内涵和表征。一种集成电路芯片如果具备如下特性的话, 那么可以称其为s o c ,这些特性是: 厂,il,j、il 圆圆 第二章s o c 设计方法学和嵌入式系统 7 实现复杂系统功能的v l s i ; 采用超深亚微米工艺技术: 使用一个或数个嵌入式c p u 或数字信号处理器( d s p ) ; 具备外部对芯片进行编程的功能; 主要采用第三方的i p 核进行设计。 这样的定义决定了s o c 的设计必须采用与现在的集成电路设计十分不同的方 法: 首先,一个s o c 必须是实现复杂功能的v l s i ,它的规模决定了芯片的设计不 仅需要设计者具备集成电路的知识,更要具备系统的知识,也要对芯片的应用有 透彻的了解。显然,这对设计者的知识结构提出了很高的要求;在众多的困难当 中,知识结构的改进是最困难的。 其次,深亚微米工艺提出的诸多挑战至今尚未得到彻底的解决,互连延迟主 导系统性能的问题随着工艺技术的不断进步将变得越来越突出。在人们彻底实现 从而向逻辑的设计方法向面向互连的设计方法的转变之前,这个问题将一直存在, 并长期困扰整个集成电路设计业。 第三,单个芯片要处理的信息量和信息复杂度要求芯片必须具备强大的数据 处理能力;嵌入式c p u 或d s p 的使用将是s o c 的一个重要标志。事实上,一个 芯片上集成一个或多个微处理器以完成复杂的系统功能,在今天的集成电路设计 中已不少见。 第四,既然采用了嵌入式的c p u 或d s p ,芯片自然也就具备了可编程能力。 对于大多数专用集成电路,由于其功能相对比较简单、应用范围也比较窄,它们 虽然采用了内嵌入c p u 或者d s p ,在大多数情况下还是将所需的软件固化在芯片 中。但是对于未来的s o c ,由于其功能非常复杂,应用时会由于各种原因使原来 的设计与实现应用有些差异,需要作必要的修改或变动以适应应用环境。采取外 部对其编程的方式显然是一个比较明智的作法。允许外部对芯片进行编程的另外 一个考虑是随着芯片规模的不断扩大,开发一个s o c 不仅需要克服众多的技术难 题,而且开发成本也将越来越高,有能力进行s o c 设计的商家也将逐渐会议集中 到那些有比较强的技术和经济实力的单位,显然如果能够提供可由用户自己进行 功能配置的s o c ,将大大减少应用风险,并促进s o c 的推广应用。 最后,采用第三方的i p 核是s o c 设计的必然。高度复杂的系统功能和愈来愈 高新的产品打入市场的时间要求不允许芯片设计者一切从零开始,必须借鉴和使 用已经成熟的设计为自己的产品开发服务。事实上今天的集成电路已经开始越来 越多的使用口核来进行设计。 s o c 设计方法学正是围绕s o c 的上述内容展开的新一轮理论研究。这一理论 根植于过去几十年计算机辅助设计( c a d ) 、计算机辅助工程( c a e ) 和电子设 8 鏊予彀入式链理嚣戆片主系统设诗和瘟臻 计自动化( e d a ) 理论的土壤之中,将借嚣已有的理论并在其撼础上创新。尽管 如此,研究人员还是不得不面对许多的难题,因为s o c 时代的集成电路设计方法 学的内涵及乡卜延到底是什么确实不那么渍楚。 入镯只爱模糊在黪劐这令藜生豹理论敷豢涉及系统窝蕊冀,戏当涉及疆终帮 软 牛,应当涉及设计和每遗,应当涉及知识产权的保护和使用等等一系列的闯题, 以及现在也许还无法提出的许多其它技术的和非技术的问题。 要想将s o c 设计中的所有问题都清楚地罗列出来是不现实的,但是研究人员 可以谯以前的研究基础上确认哪些是关系到s o c 设计成败的关键,并将它们作为 s o c 浚诗方法学蕾先要熬决豹漂踅。 2 1 2s o c 技术包含的三个内容 s o c 设计方法学要甑含的第一个内容就鼹系统设计方法。传统的集成电路设 计基本上属于硬件设计的范畴,少数的软件( 主要是一些微码) 也往往通过固化 的方法在芯片中实现。藤褒s o c 设计当中,设计者盛须蘑对一令豢翡挑战,那羲 是镌不仅要嚣霹复杂的邋辚设诗,瑟量婺考纛软律,蒋爱蓬器终褥潋改交芯片功 能的外部应用软件的设计。尽管软件的加入谯某种程度上加大了系统设计的工作 量,但是软件的引入也会对系统代价的减少产嫩积极的作用。如何应用软硬件协 同设计技术,以及如何擞软件和硬件设计中取得平衡,获得最优的设计结果是我 们要认真掇讨静课题。 s o c 设诗方法学妥氛禽豹第二夸内容楚瓣狻静设诗霸嫒溺。撩孩是s o c 设 计中非常重要,它包含两个方面的内容,首先怒i p 核的使用,其次怒i p 核的生成。 i p 核的使用绝不等同于熊成电路设计中的单元库的使用,它所涉放的内容几乎覆 盖了集成电路设计中的所肖经典课题,包括测试、验证、模拟、低劝耗等等。衅 核的垒成也绝菲是篱单的设计抽取和整理,糍掰涉及的设计愚路、时彦的要求、 溲憝熬要求等殇霉要久聪熬藏窜程我镪已经熬稻翡设诗方法。 s o c 设计方法学簧龟含豹第三个内容是深驻微米集成电路设计。尽管这个谍 题已缀提出了相当长的时问但是研究的思路和方法仍然在面向逻辑的设计思路 中徘徊,也许布局规划和时序驱动的方法还能够解决当前大部分的实际问题,但 是当我们面对0 1 5pm 鬃麓更细线条的时候,又有谁能保证现在的作法有效呢? 深燕激张集或毫爨设诗方竣熬攘奉装突蔽纛然跫s o c 凌诗方法学审最其魏浚瞧 的。 s o c 设计方法学的研究所影响的不仪仪熙熊成电路领域,攀蜜上由于集成电 路的基础作矧,它还会对柴成电路的基础作用,它还会对集成电路以外的领域产 牛深远的影响。它改变的也不仪仪是集成电路的设计方法和设计恩路,同时也会 为毫予熬橇霹系统懿发箴豢来摹念往豹交豫。薅羲整辍与芯片戆瓣菱磁合,s o c 第二章s o c 设汁方法学和嵌入式系统 设计方法也必然深入到整机的设计中去,对电子整机的设计产牛积极的影响,同 时电r 整机的发展也必然会对s o c 设计方法学的丰富和完美做出贡献。s o c 设计 方法学产牛的这种芯片与整机互促进,共同发展的态势和影响力是以前任何一个 集成电路发计理论都不具有的。 系统囊绒薜片 绷蜊艄艄螂撇籼 图2 2 不同时代的设计方法学 2 1 3 软硬件协同设计验证技术 软硬件协同设计课题的提出已有多年的历史,但是早期的研究多集中在针对 一个特定的硬件如何进行软件开发或根据一个已有的软件实现具体的硬件结构。 前者是一个经典的软件开发问题。软件性能的好坏不仅仅取决于软件开发人员的 技术水平,更有赖于所使用的硬件平台:后者是一个软件固化的问题,实现的途 径可以是采用一个与原有软件平台相同的硬件处理器,并将软件代码存储于存储 器当中,也可以是在充分理解软件的内在功能之后完全用硬件来实现软件的功能。 采用存储器固化软件代码的作法一般来说可以比较快地实现芯片设计,且芯片具 有一定的二次开发可能,但是由于考虑到实现所需的硬件平台的一致性,芯片的 性能将受到较大的限制,大多应用在性能比较低的场合。除此之外,有时候要找 到一个可用的、与软件开发时所使用的硬件平台兼容的处理器也是一件十分困难 的事情。将软件功能全部由硬件来实现的作法具有较大的风险,一般需要比较长 的时间和比较大的人力、物力和财力的投入,特别是在进入市场的时间较为苛刻 时,这种做法有其局限性。但是一旦成功,则芯片具有较高的性能。从上述介绍 不难发现早期的软硬件协同设计方法研究还是一种面向目标的( o b j e c to r i e n t e d ) 软 硬件设计方法,研究的内容和结果与所要实现的目标和已具备的条件密切相关, 形不成具有普遍适用性的理论体系。 1 0基于嵌入式处理器的片上系统设计和应用 面向s o c 的软硬件协同设计理论是指从给定的系统任务描述出发,通过有效 分析系统任务和所需资源,采用一系列变换方法并遵循特定准则自动生成符合系 统功能要求、符合代价约束的软件和硬件架构。这一理论体系包括系统设计描述、 软硬件划分、软硬件协同设计、软硬件协同验证等内容。其设计流程如下图所示: 图2 3 软硬件协同设计流程图 该设计流程与传统的i c 设计和板级系统设计有着本质的区别。首先,由于s o c 是一个集成了众多i c 功能的系统芯片,规模庞大,结构复杂,而且性能要求较高, 这就使得出错后的检查变得非常困难甚至不可能,因此该方法的重点是在顶层完 成系统仿真验证。保证在最底层模块设计之前整个系统的所有功能都已完成并经 过验证。其次,该方法与传统的设计方法的显著区别便是原来的顺序式设计变为 现在的并行式设计,所有的设计问题都要在设计之初考虑到并提出相应的解决方 案。最后,在真正子模块设计之前,所有的设计工作都是基于虚拟模块完成的, 这也是s o c 设计的另一个显著特点。 如图2 4 中所描述,s o c 的设计首先是根据系统的要求提出对系统的整体描 述,其中包括系统行为描述和系统结构描述。行为描述就是把系统分成多个功能 块,由这几个模块完成系统所要求的功能,而结构描述主要就是把已有的i p 核或 者必要时自行设计的i p 核描述成模块,使之与功能模块相匹配,通过不断的系统 仿真从而确定与系统行为描述相匹配的系统结构描述,在此就需要解决两个问题: 一是系统行为描述和系统结构描述的规范问题。对于一个复杂的系统设计,每一 步都应是规范的,否则下一步的设计就会变得异常困难甚至不可能;二是虽然在 这个过程中我们还没有确定哪一部分用硬件哪一部分用软件,但是对于整个i p 核 而言,存在着集成问题就是指不同的i p 核如何在同一个仿真环境中进行联合仿 真。在系统描述过后便是系统性能仿真,该步主要是使系统的结构描述和行为描 述匹配起来,也是对系统描述的验证,因此系统的仿真和系统的描述是紧密联系 在一起的,在此需要解决不同模块描述的联合仿真问题。系统性能仿真成功后就 要进入软硬件划分阶段,此步便是确定用软件和硬件分别实现哪些功能,划分应 该是根据不同的要求进行优化划分,目的是使系统整体结构和性能得到最优化。 软硬件划分后便是软硬件分别设计,但是在二者设计过程之中,二者之间始终贯 穿着系统测试矢量( 如附图所示) ,该测试矢量也是在软硬件划分阶段制定出来的, 第二章s o c 设计方法学和嵌入式系统 硬件设计、测试矢量、软件设计是并行的关系。在布局布线之前还要进行系统整 体验证。 图2 4s o c 设计流程图 这种全新的软硬件协同设计思想需要解决许多以前没有碰到的问题。首先是 系统的描述方法。目前广泛采用的硬件描述语言( h d l ) 是否仍然有效? 如何来定义 一个系统级的软件功能描述或硬件功能描述等等,到今天为止,尚没有一个大家 公认的且可以使用的系统功能描述语言可供设计者使用。 其次是这一全新的设计方理论与已有的i c 设计理论之间的接口。可以预见, 这种全新的设计理论应该是现有i c 设计理论的完善,是建筑在现有理论之上的一 个更高层次的设计理论,它与现有理论一起组成了更为完善的理论体系。在这种 假设下这种设计理论的输出就应该是现有理论的输入。 第三,这种全新的软硬件协同设计理论将如何确定最优性原则。显然沿用以 往的最优性准则是不够的。除了芯片设计师们已经熟知的速度、面积等硬件优化 指标外,与软件相关的如代码长度、资源利用率、稳定性等指标也必须由设计者 认真地加以考虑。 回国 囝 、l厂j、00lr,j 2 基于嵌入式处理器的片上系统设计和应用 第四,如何对这样的一个包含软件和硬件的系统的功能进行验证。除了验证 所必须的环境之外,确认设计错误发生的地方和机理将是一个不得不面对的课题。 最后,功耗问题。传统的i c 在功耗的分析和估计方面已有一整套理论和方法。 但是,要用这些现成的理论来分析和估计含有软件和硬件两部分的s o c 将是远远 不够的。简单地对一个硬件设计进行功耗分析是可以的,但是由于软件运行引起 的动态功耗则只能通过软硬件的联合运行才能知道。其实,还可以举出很多新理 论要涉及的问题,它们一起构成了面向s o c 的软硬件协同设计的内容。 2 1 4i p 核生成和复用技术 正如前面所讨论的,今天在单个芯片上已可以集成上千万乃至上亿只晶体管, 芯片变得如此复杂,它实现了以前需要许多块印制电路板( p c b ) 甚至机架才能完成 的功能。在这样高的集成度下,设计的难度已变得非常高,设计代价事实上主导 了芯片的代价。这不仅要求设计者必须具备系统和芯片两方面的知识,同时也必 须充分考虑市场竞争的压力,最大限度地缩短设计周期。凡事从零做起的思路显 然不能适应这种新情况,而采用前人成功的设计经验和设计资料是解决这个问题 的明智选择。 所谓设计重用实际上包含两个方面的内容,涉及设计资料重用技术和如何生 成可被他人重用的设计资料。前者通常被称为i p 重用( i pr e u s e ) ,因为可以被 反复使用的设计资料通常具备比较复杂的功能,且经过验证。设计资料内不仅仅 包含一些物理功能和技术特性,更重要的是包含了设计者的创造性思维,具有很 强的知识内涵。这些资料因而也被称为具有知识产权的内核( i pc o r e ) ,简称i p 核。后者则涉及到如何去生成i p 核。 f 1 1 i p 核的生成技术 在i c 设计中,i p 成为独立技术的时间虽然不长,但发展却非常迅速。m 技术 受到广泛重视的主要原因是它为s o c 的设计提供了有效途径,是s o c 的技术支撑。 先讨论下i p 核的生成。所谓i p 核实际上就是一个经过验证的i c 设计,从 其实现的形式和应用层次上来看,i p 核可以有三种不同的表现形式:软核 s o f t c o r e 、固核f i r m c o r e 和硬核h a r d c o r e 。 软核以h d l 的方式提交,其性能通过时序模拟进行验证。由于软核不依赖于 任何实现工艺或实现技术,具有很大的灵活性。使用者可以方便地将其映射到自 己所使用的工艺上去,可复用性很高。软核的另外一个重要的优点是使用者拥有 全部源代码。使用者可以通过修改源代码,方便地生成同样功能且自有版权的新 软核,从而避免向原有软核的作者支付版税。同时聪明的软核使用者还可以通过 增加自己的知识和经验,产生出远比原始软核广泛得多的新的软核。正是由于软 核的上述优点,它的价格不菲,且提供者寥寥无几。 第二章s o c 设计方法学和嵌入式系统 但是软核也有自身的弱点。由于软核的载体是硬件描述语言且与实现的工艺 无关,使用者在最终将其嵌入自己的设计时就要对从描述到版图的转换的全过程 负责。显然这要涉及经典i c 设计的全部内容,l c 设计人员必须具备相当的风险意 识。另外,工艺映射和系统的性能有着一定的内在关系,是否可以不加修改地将 一个软核映射到任何一个工艺上仍然是需要探讨的一个问题。 硬核以i c 版图的形式提交,并经过实际工艺流片验证。显然硬核强烈地依赖 于某一个特定的实现工艺,而且在具体的物理尺寸、物理形态及性能上具有不可 更改性。 这些特点对使用者来说有喜有忧。喜的是硬核已经过验证并具有最优的面积 代价和性能的设计,使用者不需考虑与此相关的优化问题:忧的是硬核与工艺的 强相关性迫使使用者也只能使用该工艺完成电路其它部分的设计,而且要在布局 布线遵守注意固核的物理限制。显然,固核的特点决定了使用者进行电路设计时 的灵活性很小,希望通过获得固核以生成其它固核的可能基本上没有。即使有, 受到加工工艺、经费和知识产权等方面的限制,也会失去意义。从另外一个角度 看,正是因为固核的这些缺点,它的使用价格在软核、固核和硬核三种琅核中, 是最低的。 处于软核和硬核之间的固核以电路网表的形式提交,并通常采用硬件进行验 证。硬件验证的方式有很多种,比如可以采用可编程器件( 如f p g a 压p l d ) 进行 验证,采用硬件仿真器进行验证等。 固核往往对应于某一个特定的实现工艺,在该实现工艺的条件下固核具有最 优的面积和性能特性。对于使用者来说不需要对固核的功能给于过多地关注,可 以减少许多相关的设计工作,同时由于固核的时序特性是经过严格检验的,设计 者只要保证在布局布线过程中电路关键路径的分布参数不会引起肘序混乱就可以 保证芯片的设计成功。 但是固核也有其自身的缺点,那就是它与实现工艺的相关性及网表的难读性。 与实现工艺的相关性限制了固核的使用范围,网表的难读性则使得布局布线后发 生的时序违反的排除变得比较困难。由于固核在使用的方便程度上和开放程度上 均介于软核和硬核之间,其价格也处于它们的价格之间。 ( 2 ) i p 的标准 随着对s o c 重要性认识的日益深入,i c 界对口的谈论也越来越多,但有些 对i p 的理解不够十分准确,比如把以前做过的i c 设计都认为是i p 。目前,尽管 对i p 还没有统一的定义,但i p 的实际内涵是有界定的。 首先,它必须是为了易于重用而按嵌入式专门设计的。即使是已经被广泛使 用的产品,在决定作为i p 之前,一般来说也须要再做设计,使其更易于在系统中 嵌入。比较典型的例子是嵌入式r a m ,由于嵌入后已经不存在引线压点的限制, 1 4 基于嵌入式处理器的片上系统设计和应用 所以在分立电路中不得不采取的措施,包括地址分时复用、数据串并转换以及行 列等分译码等,在嵌入式r a m 中都可阻去掉,不仪节省了芯片面积,而且大幅提 高了运算速度。 其次,是实现t p 模块的优化设计。优化的目标通常为“四最”,即芯片的面 积最小、运算速度最快、功率消耗最低、工艺容差最大。所谓工艺容差大是指所 做的设计可以经受更大的工艺波动,是提高加工成品率的重要保障。这样的优化 目标是使用全自动化设计过程难于达到的,可是对于i p 又必须达到,因为它要重 复使用千百次,甚至更多。口的每一点优化都将产生干百倍甚至更多的倍增效益。 因此基于晶体管级的i p 设计便成为完成口设计的重要,或许也是主要方法。 第三,要符合口标准。与其他i c 产品一样,l p 进入流通领域后,也需要有 标准。于是1 9 9 6 年以后,r a p i d ( r e u s a b l ea p p l i c a t i o n - s p e c i f i ci n t e l l e c t u a l - p r o p e r t y d e v e l o p e r s ) 、v s i a ( v i r t u a ls o c k e ti n t e r f a c ea l l i a n c e ) 等组织相继成立,掷调并制 订婵重用所需的参数、文档、检验方式等形式化的标准,以及i p 标准接口、片内 总线等技术性的标准。虽然这些工作已经开展几年,也制订了一些标准,但至今 仍有大量问题要解决,例如不同嵌入式处理器协议的统一、不同m 片内结构的统 一等,都是十分复杂的问题。 可以想到,要完成一个易于嵌入的、实现优化的、符合标准的i p 设计,需要 更大的工程投入,一般来说要比一次性应用的设计增加2 7 倍。因此,有些口 的使用费要价很高也是可以理解的。 f 3 ) i p 核与常规i c 不同的地方 i p 核的生成具有与常规的i c 设计不同的特点例如时序测试和低功耗等虽然 是i c 设计中的经典问题,但是直接将已有的设计方法应用到l p 核的设计中就会出 现许多意想不到的困难。看一个简单的例子: 图2 5 一个逻辑表达式及其实现 图2 5 的右上角给出了一个简单的逻辑表达式,下方给出了该表达式的逻辑实 现,这个逻辑实现对应的时序图也在图中给出。显然时序图的最f 边一个波形是 逻辑表达式所定义的,但是由于在异或门的输入端引入了一个非门,其时延将会 影响到电路的输出,实际的波形将会类似 j 倒数第二个波形,包含有若干个毛刺。 第二章s o c 设计方法学和嵌入式系统 尽管有这些毛刺,但是就一个特定的应用来说,只要确定好输出端的采样时问, 仍然可以保证输出信号的正确性。但是要将这样一个带有时序毛刺的电路当作i p 核提供给他人使用则是绝对错误的。由于不知道具体应用环境对信号采样的位置, 很可能采到的信号恰恰是毛刺所在地,从而导致输出错误。为了获得没有毛刺的、 时序干净的设计可以对逻辑表达式进行一系列变换,最终获得简洁的逻辑实现 方式。 这个例子说明了设计人员今天熟悉的电路设计理论和方法必须要有所发展以 适应面向s o c 的i p 核生成,简单地照搬是不行的。 ( 4 ) i p 核的复用技术 i p 核复用标准和流程:口核复用有几个不同的层次,包括以前做过的设计用 到新的项目上,也包括向第三方供货商购买设计。面向s o c 的口核复用决不是简 单的堆砌,在使用过程中不但要考虑它们的功能,更要使它们溶入芯片。系统设 计者在选择i p 核时,不仅要考虑i p 核的功能,考虑它在设计中的信号完整性、功 率耗散、电磁辐射和可制造性,而且还要考虑它作为系统整体部件时是如何工作 的,并设计内部总线结构把所选的外设及其接头或其它定制的外设胶合在一起。 i p 核的使用也面临许多新问题。由于p 核的特殊性和i c 开发的高风险性, 核的使用决不是这些i p 核的简单堆砌,使用过程中不仅仅要考虑它们的功能,更 要使它们溶入芯片。以为有了i p 核就可以迸行s o c 设计的想法不免过于天真。可 以看一下图6 中给出的一个有关可测性设计的例子。 图2 6i p 核与可测性设训 根据可测性设计理论,一个时序电路的可测性与其时序路径上的长度有关, 而测试复杂度与环路长度成正比:环路长度越长测试复杂度越高,且这种关系成 指数形式变化。一个l p 核经过精心设计可以具有很好的可测性,但是在具体被嵌 入使用时。外部配套电路的设计不当会引入环路,使电路的可测性下降。从图2 6 可知,即使所使用的l p 核内部没有任何环路、具有很高的可测性,但是在引入了 外围电路之后,也会产生不止一条穿过i p 核的环路。这个例子说明i p 核的使用需 要综合考虑诸多因素,而不是几个i p 核的简单堆砌。 另外一个例子涉及低功耗。即使

温馨提示

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

评论

0/150

提交评论