




已阅读5页,还剩52页未读, 继续免费阅读
(计算机系统结构专业论文)基于sopc的嵌入式系统设计.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 随着信息技术的快速发展,嵌入式技术的电子产品已经走进人们的生活,而 且正在逐渐改变着传统的工业生产和服务方式,成为业界关注的焦点。s o p c 是 p l d 和a s i c 技术融合的结果,它作为一种灵活、高效的片上系统设计方案,集 成了硬核c p u 、特别是软核c p u 、d s p 、存储器、外围及可编程逻辑等器件, 在应用的灵活性和价格上都有极大的优势,被称为“半导体产业的未来”。 本文概要介绍了嵌入式系统的特点,详细讨论了s o p c 技术及其涉及的相关 内容,并在此基础上提出了一个以n i o s i i 软核处理器( a f t r a 公司推出的可进行 s o p c 设计的i u s c 型软核处理器) 为基础的s o p c 嵌入式系统设计方案一一基于 s o p c 技术的网络视频系统设计。经过详细论证,本文实现了该系统的硬件平台, 并成功移植了一款嵌入式操作系统一一p c l m u x ,同时开发了系统的应用软 件一- - m p e g 2 解码器和图像显示控制程序。 关键字:s o p c 嵌入式系统n i o s p c l m u x a b s t r a c t w i t ht h er a p i dd e v e l o p m e n to fi n f o r m a t i o nt e c h n o l o g y , e l e c t r o n i cp r o d u c t i o n s u s i n ge m b e d d e dt e c h n o l o g yh a v eg o n ei n t op e o p l e sl i v e s m o r e o v e r , t h e ya g ec h a n g i n g t r a d i t i o n a li n d u s t r yp r o d u c t i o na n ds e r v i c em o d e t h ee m b e d d e ds y s t e mi sb e c o m i n g t h ef o c u so fi n t e r e s t si nt h ei ti n d u s t r y s o p c ,w h i c hi st h ec o m b i n a t i o no fp l da n d a s i ct e c h n o l o g y , i n t e g r a t e st h eh a r dc o r e , e s p e c i a l l ys o f tc o r e , d s p , m e m o r y , p e r i p h e r a l i oa n dp r o g r a m m a b l el o g i cu n i t s t h ef l e x i b i l i t yo fa p p l i c a t i o na n d a d v a n t a g eh ip r i c eo f s o p cm a k ei t t h ef u t u r eo f t h e s e m i c o n d u c t o ri n d u s t r y ” t h i sp a p e rd e a l sm a i n l yw i t ht h ee m b e d d e ds y s t e ma n a l y s i sa n dd e v e l o p m e n t b a s e do ns o p ct e c h n o l o g y f i r s t l y , t h ef e a t u r e so fe m b e d d e ds y s t e ma r ei n t r o d u c e d , a n dt h es o p ct e c h n o l o g yi sd i s c u s s e di nd e t a i l s e c o n d l y , n i o s ( as o f t - c o r e m i c r o c o n t r o l l e rb a s e ds o p cd e s i g np r o d u c e db ya l t e r ah c ) i sc h o s e nf o rd e v e l o p i n ga e m b e d d e ds y s t e mb a s e do ns o p ct e c h n o l o 铡- n e t w o r kv i d e os y s t e m f i n a l l y , t h e d e s i g ni si m p l e m e n t e da n dp c l i n u xi sp o r t e dt ot h ep l a t f o r ms u c c e s s f u l l y , a n dt h e a p p l i c a t i o n s - - m p e g 2d e c o d e ra n dv g ad i s p l a yc o n t r o l l e ra r cp r o g r a m m e d k e y w o r d s :s o p c e m b e d d e ds y s t e mn i o si i p c l i n u x 创新性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均已在论文中做了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:日期 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕 业离校后,发表论文或使用论文工作成果时署名单位仍然为西安电子科技大学。 学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全 部或部分内容,可以允许采用影印、缩印或其它复制手段保存论文。( 保密的论文 在解密后遵守此规定) 本学位论文属于机密,在一年解密后适用本授权书。 本人签名: 导师签名: 日期 日期 第一章绪论 第一章绪论 1 1 嵌入式系统概述 数字系统( d i g i t a ls y s t e m ) 可以分为两种:通用系统( g e n e r a l - s y s t e m ) 和专用系统 ( s p e c i a l - p u r p o s es y s t e m ) 。通用系统就是传统的计算机,范围从p c 机,手提电脑, 工作站,一直到超级计算机。这些计算机的特点是用户可以在p c 机上进行编程, 并且通过可执行的软件,可以支持很多不同的应用。在8 0 年代及9 0 年代早期, 通用系统是设计方法革新的主要推动力。然而,随着几种新型应用的产生,上述 情况有了改变,专用系统变得越来越重要,因为它们是专门为实现特定应用而开 发的。嵌入式系统就属于这类系统。 一般来说,嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件 可以被剪裁以适用于应用系统,对功能、可靠性、成本、体积、功耗有严格要求 的专用计算机系统。在嵌入式系统中,操作系统和应用软件集成于计算机硬件系 统中,即系统的应用软件与系统的硬件一体化。嵌入式系统具有软件代码少、高 度自动化、响应速度快等特点。 如今,嵌入式系统的广泛应用,己经渗入到我们日常生活的各个方面。在手 机、电视机、数码相机、洗衣机、电冰箱、空调,甚至电饭锅、手表里,都有嵌 入式系统的身影。嵌入式系统小到一个芯片,大到一台标准的p c 板或者一台独 立的设备,种类繁多,让人顿生目不暇接之感。微型计算机虽然占据了全球计算 机工业的9 0 的市场,但事实上,嵌入式系统在数量上远远超过了各种通用计算 机,p c 机的各种输入输出和外部设备均是由嵌入式系统控制的。每台p c 的外部 设备中包含了5 1 0 个嵌入式处理器。当今工业界的自动化、信息化和网络化己经 发展成为一种不可逆转的趋势。在工业自动化控制、通信、仪器仪表、汽车、船 舶、航空航天、军事装备、消费类电子产品等领域更是嵌入式系统的天下。 一般来说,嵌入式系统具有如下一些特征: 1 ) 通常嵌入在其他产品中; 2 ) 独立工作: 3 ) 通常不被重新编程,它们的功能很固定; 4 ) 通常在反应模式下工作,对于外部的输入要频繁地做出反应; 5 ) 由大量并发的工作进程实现,这些进程之间需要通信; 6 ) 有严格的时间要求,比如实时限制; 7 1 常常是i 0 密集的; 2基于s o p c 的嵌入式系统设计 8 ) 对于成本、功耗、体积、重量等性能指标有一定的约束; 9 ) 有严格的可靠性、正确性限制,比如a b s 系统( a n t i l o c kb r a k es y s t e m ) 必须在任何情况下都可以无错工作。 上面的特征只是嵌入式系统的一般特征,并不是所有嵌入式系统都要具有上 面的特征。实际上不同的嵌入式系统在设计要求上是有一定差异的。例如,某些 系统对实时性要求十分严格,如果系统在规定的时间内不能对输入做出适当的反 应,则会导致严重的错误甚至灾难性的后果,比如跟踪导弹的雷达系统,这类系 统称为强实时或者硬实时嵌入式系统。相对的,有些系统虽然对实时性有一定要 求,但并不十分严格,即使在规定时间内对于输入没能及时做出反应,也不会造 成重大损失,比如a t m 提款机,这类系统称为软实时嵌入式系统。 嵌入式系统又可以被分成两个子类:嵌入式控制器和嵌入式数据处理系统。 嵌入式控制器是专用于控制功能的。它们是面向控制流的( d a t af l o w d o m i n a t e d ) ,对于外部事件起反应。因此,嵌入式控制器常被称作反应系统( r e a c t i v e s y s t e m ) 。反应系统对于环境的刺激所做出的反应是改变其内部状态和产生输出结 果。通常地,它们支持一组模式和设置,并且它们的实时限制一般在毫秒范围内。 因此,性能需求通常是低等到中等。由于这个原因,微控制器对于实现嵌入式控 制器就足够了。嵌入式控制器典型的应用在以下方面: 1 ) 控制器( 例:电梯,电子窗帘) ; 2 ) 家用电器( 例:微波炉,洗衣机) ; 3 ) 汽车工业应用( 例:发动机控制单元,燃料喷射器,制动防抱死系统 ( a n t i - l o c k i n gb r a k e s ) ) ; 4 1 工业机器人。 嵌入式数据处理系统专用于数据通信和处理。因此,它们常被称为转换系统 ( t r a n s f o r m a t i o n a ls y s t e m s ) 。这些系统是面向数据流的,通常是实时系统,要在一 个预先定义的时间窗内执行一个特定的功能。与嵌入式控制器相比,它们需要更 高的性能。因此,微控制器己经不能满足要求,需要更强大的微处理器 ( m i c r o p r o c e s s o r s ) 和a s i c s ,数字信号处理和高层综合是它典型的应用领域。以下 应用领域包含了典型的嵌入式数字处理系统: 1 ) 多媒体( m u l t i - m e d i a ) ; 2 ) 消费电器( c o n s u m e re l e c t r o n i c s ) ; 3 ) 无线通讯( w i r e l e s sc o m m u n i c a t i o n ) : 4 ) 通用电讯( g e n e r a lt e l e c o m m u n i c a t i o n ) 。 第一章绪论 3 1 2s o p c 设计技术国内外发展现状 目前,随着多媒体、网络化、移动化的发展,过去利用印刷板技术和i c 芯片 来实现的系统,由于芯片之间延迟过长、电压较高、体积较大等因素,已经无法 满足市场越来越高的性能要求。正是在市场需求和集成电路技术发展的双重作用 下,出现了将整个电子系统集成到单个芯片上的技术,即“片上系统”( s y s t e mo n c h i p 简称s o c ) 。所谓s o c 技术,是一种高度集成化、固件化的系统集成技术。 使用s o c 技术设计系统的核心思想,就是要把整个应用电子系统全部集成在一个 芯片中,除了那些无法集成的外部电路或机械部分以外,其他所有的系统电路全 部集成在一起。s o c 是以嵌入式系统为核心,集软、硬件予一体,并追求产品系 统最大包容的集成器件,是目前嵌入式应用领域的热门话题。 嵌入式系统s o c 是基于现场可编程门阵列复杂可编程逻辑器件 ( f p g 刖c p l d ) 或专用集成电路( a s i c ) 而发展起来的。考虑到技术发展,基 于a s i c 的s o c 行业仍面临许多挑战,因此阻碍了其发展。采用c p l d 可使s o c 设计具有显著的灵活性,但由于处理器内核通常是硬核,所以其伸缩性极小。目 前,a r m 、a r c c o r e s 等一些公司推出的各种可配置处理器内核( 软核) 正在改 变着s o c 的设计。a l t e r a 和x i l i n x 公司将自己生产的可配置c p l d 与可配置处理 器内核结合在一起,推出了片上可编程系统s o p c ( s y s t e m o i l p r o g r a m m a b l e c h i p ) 解决方案。s o p c 设计技术实际上涵盖了嵌入式系统设计技术的全部内容,除了 以处理器和实时多任务操作系统( r t o s ) 为中心的软件设计、以p c b 和信号完整 性分析为基础的高速电路设计技术以及知识产权( i p ) 重用技术以外,s o p c 还 涉及目前己经引起普遍关注的软硬件协同技术。 s o p c 技术是当前业界普遍关注的热点和焦点问题,各主要芯片厂家都投入 了大量的人力、物力和财力进行研发,不同的厂家提供了不同的解决方案。a l t e r a 公司将e x c a l i b u r 器件( 该器件集成了符合工业标准的a r m 9 2 2 t 处理器、调试模 块、片上存储器和一些外设) 与该公司的f p g a 芯片a p e x 2 0 k e 进行无缝整合, 可以提供主频为2 0 0 m h z 的处理器以及带有嵌入式存储器r a m 、锁相环p l l ( p h a s e - l o c k e dl o o p s ) 和高级的输入输出功能,形成了满足价格、性能以及系统 集成等要求的可编程片上系统( s o p c ) 。n i o s1 7 的嵌入式处理器是一款通用的、 偏软的精简指令集计算机( r i s c ) 处理器,它非常易于实现处理器、存储器以及 其它口核的集成,同时还可以结合相关用户逻辑并集成到f p g a 中去,形成可编 程的片上系统,该系统提供3 2 位的指令集、用户可选的1 6 或3 2 位的数据路径、 标准的软接口库等等,可用于较广范围的应用研究。t r i s c e n d 公司的方案,以 f p g a 技术为基础,在芯片内预置8 0 3 2 单片机内核,提供充足的f p g a 门单元, 4基于s o p c 的嵌入式系统设计 让用户自己用f p g a 的设计综合工具设计需要的功能单元,作为单片机的外设使 用,广家提供的工具可以将用户设计的功能单元集成到芯片内,配置为单片机的 外设,同时生成汇编或c 语言的符号文件或头文件,用户可以在汇编或c 语言环 境内像使用单片机的定时器一样将用户设计的功能单元作为单片机的外设使用。 各厂家提供的工具软件还可通过j t a g 口对芯片进行配置、在线编程、在线调试, 但f p g a 设计综合工具及汇编和c 语言开发工具需另外配置第三方软件。其它诸 如a t m e l 、c y p r e s s 、x i l i n x 等公司也提出了他们自己的解决方案和应用, 在此就不一一列举了。 1 3 论文的结构及意义 随着s o p c 设计技术的迅猛发展,其应用领域也越来越广,从通讯行业、医 疗器械到消费品产品,都可以是可编程片上系统的应用领域。本课题以增加系统 集成度( 应用片上系统) 、减小系统体积、降低功耗和成本( 应用可编程技术) ,同时 保证系统性能为主要目标,基于一个嵌入式3 2 位r i s c 软核c p u - - n i o si i ,自 主研究和开发了一款基于s o p c 的嵌入式系统一一网络视频系统。 本文从n i o sn 软核处理器着手,以可编程片上系统的设计和应用为主要工 作,不失一般性地研究基于嵌入式处理器的s o p c 软硬件协同验证开发过程及方 法,最终完成基于s o p c 的网络视频系统的软件和硬件的应用。系统整体以s o p c 为核心,包括与本地u s b 摄像头的数据通信,与远程服务器的数据通信,v g a 模块的显示与驱动等。 本文的主要内容和结构安排如下: 第一章:绪论 介绍论文的研究背景、涉及的技术方法和论文的主要工作。 第二章:s o p c 设计技术 讨论了s o p c 设计技术及其涉及的相关内容,介绍了s o c 技术包含的三个内 容:软硬件协同技术、p 生成和重用技术、超深亚微i c 设计技术,并且还对可 编程逻辑器件予以简单介绍,最后引出基于s o c 技术和可编程逻辑器件的s o p c 技术。 第三章:基于s o p c 的网络视频系统的硬件设计与实现 以嵌入式软核处理器n i o s 为基础,介绍了基于s o p c 的网络视频系统的硬 件设计实现过程,具体包括了网络视频系统的整体设计、n i o si i 软核处理器以及 相关开发工具的介绍、系统硬件平台的设计和实现。 第四章:嵌入式操作系统“c l i n u x 的移植 在硬件平台完成的基础上,实现嵌入式操作系统g c l i n u x 移植的板级移植, 第一章绪论 介绍了嵌入式l i n u x 操作系统以及移植的概念,详细说明了i u c l i n u x 的移植过程, 包括交叉编译环境的构建,内核及文件系统的配置与编译,内核的加载运行,重 点在于i x c l i n u x 下驱动程序的开发。 第五章:基于s o p c 的网络视频系统的应用软件设计与实现 本章介绍了网络视频系统应用软件的设计与实现。重点介绍了u c l i n u x 与 l i n u x 下应用程序开发的不同之处,并简要介绍了m p e g 2 解码器以及图像显示控 制程序的实现。 结束语部分总结了论文的工作,对论文中需要完成的部分和存在的不足给予 了客观的说明,并提出了进一步的设想。 最后是致谢和参考文献部分。 第二章s o p c 设计技术7 第二章s o p c 设计技术 作为a s l c ( a p p l i e 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 i 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 n l o 作了主题报告( k e yn o t e ) ,题目是“s o c :t h e c 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 1 5 ”。c i c c 是a s i c 设计领域最 高层次的国际学术会议,它的主题报告一般代表着a s i c 设计领域的技术发展趋 势,也说明s o c 在a s i c 学术界和工业界受到重视的程度。同年,a l t e r a 和x i l i n x 公司将自己生产的可配置c p l d 与可配置处理器内核结合在一起,推出了片上可 编程系统s o p c ( s y s t e mo np r o g r a m m a b l ec h i p ) 解决方案,大大促进了s o c 技 术的发展。 s o c 设计方法学的内容可以简单归纳为软硬件协同设计技术、p 核生成及复 用技术和超深亚微米i c 设计技术这三种技术,它们又分别包含一系列的子课题, 如下图所示。 基于i p 的系统设计 i技术。 多i p 系统的验证和 。,测试技术; “i p 设计技术 。接口结合技术。 软硬件协同设计和 。 验证技术 。 基于硬件的软件结 i 构生成。 面向软件的多处理 单元硬件结构设计 # 时机驱动逻辑设计 。、 技术 。 时序综合技术, 低压低功耗设计技 。术。 图2 1s o c 设计方法学的主要内容 面向设计重用的设 。计技术 。 孙;容错技术= 女 。可靠性设计。 。可测性设计+ 。 软硬件划分 形式验证技术 # : 综合技术 厂l,、1l厂ii 厂11111l厂liijl厂l,、il 基于s o p c 的嵌入式系统设计 s o p c 以p l d 取代a s i c ,是一种更加灵活、高效的s o c 解决方案。s o p c 代表一种新的系统设计技术,也是一种初级的软硬件协同设计技术。s o p c 是p l d 和a s i c 技术融合的结果,它可编程的灵活性和口设计的重用性,易于保证产品 的差异性和缩短面世时间;它无需库存费用,也无需一次性投片费用,降低了投 资风险。s o p c 相对于s o c 的这个优势,也反映了f p g a 日益占有a s i c 市场的 趋势。 2 1s 0 0 技术包含的三个内容 s o c 设计方法学要包含的第一个内容就是软硬件协同设计技术。传统的集成 电路设计基本上属于硬件设计的范畴,少数的软件也往往通过固化的方法在芯片 中实现。而在s o c 设计当中,设计者不仅要面对复杂的逻辑设计,而且要考虑软 件,特别是那些可以改变芯片功能的外部应用软件的设计。如何应用软硬件协同 设计技术,以及如何在软件和硬件设计中取得平衡,获得最优的设计结果是我们 要认真探讨的课题。 s o c 设计方法学要包含的第二个内容是口核的设计和使用。口核在s o c 设 计中是非常重要的,它包含两个方面的内容,首先是口核的使用,其次是口核 的生成。口核的使用绝不等同于集成电路设计中的单元库的使用,它所涉及的内 容几乎覆盖了集成电路设计中的所有经典课题,包括测试、验证、模拟、低功耗 等等。口核的生成也绝非是简单的设计抽取和整理,它所涉及的设计思路、时序 的要求、性能的要求等均需要人们重新审视我们己经熟知的设计方法 s o c 设计方法学要包含的第三个内容是深亚微米集成电路设计。尽管这个课 题己经提出了相当长的时间,但是研究的思路和方法仍然在面向逻辑的设计思路 中徘徊。亚微米集成电路设计方法的根本性突破显然是s o c 设计方法学中最具挑 战性的。 2 1 1 软硬件协同设计技术 软硬件协同设计课题的提出已有多年的历史,但是早期的研究多集中在针对 一个特定的硬件如何进行软件开发或根据一个已有的软件实现具体的硬件结构。 这种设计方法还是一种面向对象的( o b j e c to r i e n t e d ) 软硬件设计方法,研究的内 容和结果与所要实现的目标和已具备的条件密切相关,形不成具有普遍适用性的 理论体系。 面向s o c 的软硬件协同设计理论应该是从一个给定的系统任务描述着手,通 过有效地分析系统任务和所需的资源,采用一系列变换方法并遵循特定的准则自 第二章s o p c 设计技术 9 动生成符合系统功能要求的,符合实现代价约束的硬件和软件架构。这一理论体 系包括系统设计描述、软硬件划分、软硬件协同设计、软硬件协同验证等内容。 其设计流程如2 2 图所示: 图2 2 软硬件协同设计流程图 具体的s o c 的设计流程如图2 3 中所描述,首先是根据系统的要求提出对系 统的整体描述,其中包括系统行为描述和系统结构描述。行为描述就是把系统分 成多个功能块,由这几个模块完成系统所要求的功能,而结构描述主要就是把已 有的m 核或者必要时自行设计的口核描述成模块,使之与功能模块相匹配,通 过不断的系统仿真从而确定与系统行为描述相匹配的系统结构描述。在系统描述 过后便是系统性能仿真,该步主要是使系统的结构描述和行为描述匹配起来,也 是对系统描述的验证,因此系统的仿真和系统的描述是紧密联系在一起的,在此 需要解决不同模块描述的联合仿真问题。系统性能仿真成功后就要进入软硬件划 分阶段,此步便是确定用软件和硬件分别实现哪些功能,划分应该是根据不同的 要求进行优化划分,目的是使系统整体结构和性能得到最优化。软硬件划分后便 是软硬件分别设计,但是在二者设计过程之中,二者之间始终贯穿着系统测试矢 量,该测试矢量也是在软硬件划分阶段制定出来的,硬件设计、测试矢量、软件 设计是并行的关系。在布局布线之前还要进行系统整体验证。 1 0 基于s o p c 的嵌入式系统设计 图2 3s o c 设计流程图 2 1 2 知识产权( i p ) 生成和重用技术 今天在单个芯片上已可以集成上千万乃至上亿只晶体管,芯片变得如此复杂, 它实现了以前需要许多块印制电路板( p c b ) 甚至机架才能完成的功能。在这样高 的集成度下,设计的难度已变得非常高,设计代价事实上主导了芯片的代价。这 不仅要求设计者必须具备系统和芯片两方面的知识,同时也必须充分考虑市场竞 争的压力,最大限度地缩短设计周期。凡事从零做起的思路显然不能适应这种新 情况,而采用前人成功的设计经验和设计资料是解决这个问题的明智选择。 所谓设计重用实际上包含两个方面的内容,涉及设计资料重用技术和如何生 第二章s o p c 设计技术 成可被他人重用的设计资料。前者通常被称为口重用( i pr e u s e ) ,因为可以被反 复使用的设计资料通常具备比较复杂的功能,且经过验证。设计资料内不仅仅包 含一些物理功能和技术特性,更重要的是包含了设计者的创造性思维,具有很强 的知识内涵。这些资料因而也被称为具有知识产权的内核( i pc o r e ) ,简称m 核。 后者则涉及到如何去生成口核: 1 ) 口核的生成技术 所谓m 核实际上就是一个经过验证的i c 设计,从其实现的形式和应用层次 上来看,口核可以有三种不同的表现形式:软核s o i l - c o r e 、固核f i r m c o r e 和硬 核h a r d - c o r e 。 软核以h d l 的方式提交,其性能通过时序模拟进行验证。由于软核不依赖 于任何实现工艺或实现技术,具有很大的灵活性。软核的另外一个重要的优点是 使用者拥有全部源代码。使用者可以通过修改源代码,方便地生成同样功能且自 有版权的新软核,从而避免向原有软核的作者支付版税。但是软核也有自身的弱 点。由于软核的载体是硬件描述语言且与实现的工艺无关,使用者在最终将其嵌 入自己的设计时就要对从描述到版图的转换的全过程负责。另外,工艺映射和系 统的性能有着一定的内在关系,是否可以不加修改地将一个软核映射到任何一个 工艺上仍然是需要探讨的一个问题。 硬核以i c 版图的形式提交,并经过实际工艺流片验证。显然,硬核强烈地依 赖于某一个特定的实现工艺,而且在具体的物理尺寸,物理形态及性能上具不可 更改性。这些特点对使用者来说有喜有优。喜的是硬核已经过验证并具有最优的 面积代价和性能的设计,使用者不需考虑相关的优化问题。忧的是硬核与工艺的 强相关性迫使使用者只能使用该工艺完成电路其它部分的设计,而且要在布局布 线时遵守硬核的物理限制。显然,硬核的特点决定了使用者进行电路设计时的灵 活性很小。从另外一个角度看,正是因为硬核的这些缺点,它的使用价格在软核、 固核和硬核三种口核中,是最低的。 处于软核和硬核之间的固核以电路网表的形式提交并通常采用硬件进行验 证。固核往往对应于某一个特定的实现工艺,在该实现工艺的条件下固核具有最 优的面积和性能特性。对于使用者来说不需要对固核的功能给于过多地关注,可 以减少许多相关的设计工作,同时由于固核的时序特性是经过严格检验的,设计 者只要保证在布局布线过程中电路关键路径的分布参数不会引起时序混乱就可以 保证芯片的设计成功。但是固核也有其自身的缺点,那就是它与实现工艺的相关 性及网表的难读性。与实现工艺的相关性限制了固核的使用范围,网表的难读性 则使得布局布线后发生的时序问题的排除变得比较困难。由于固核在使用的方便 程度和开放程度上均介于软核和硬核之间,其价格也处于它们的价格之间。 基于s o p c 的嵌入式系统设计 2 ) 口核和常规i c 不同的地方 m 核的生成具有与常规的i c 设计不同的特点。例如时序,测试和低功耗等 虽然是i c 设计中的经典问题,但是直接将已有的设计方法应用到口核的设计中 就会出现许多意想不到的困难。看一个简单的例子( 图2 4 ) 。 f f 图2 4 一个逻辑表达式及其实现 图2 4 的右上角给出了一个简单的逻辑表达式,下方给出了该表达式的逻辑 实现,这个逻辑实现对应的时序图也在图中给出。显然,时序图的最下边的一个 波形是逻辑表达式所定义的,但是由于在异或门的输入端引入了一个非门,其时 延将会影响到电路的输出,实际的波形将会类似于倒数第二个波形,包含有若干 个毛刺。尽管有这些毛刺,但是就一个特定的应用来说,只要确定好输出端的采 样时间,仍然可以保证输出信号的正确性。但是要将这样一个带有时序毛刺的电 路当作口核提供给他人使用则是绝对错误的。由于不知道具体应用环境对信号采 样的位置,很可能采到的信号恰恰是毛刺所在地,从而导致输出错误。为了获得 没有毛刺的、时序干净的设计,可以对逻辑表达式进行一系列变换,最终获得简 洁的逻辑实现方式。 3 ) i p 核的重用技术 邛核复用标准和流程:口核复用有几个不同的层次,包括以前做过的设计用 到新的项目上,也包括向第三方供货商购买设计。面向s o c 的口核复用决不是 简单的堆砌,在使用过程中不但要考虑它们的功能,更要使它们溶入芯片。系统 设计者在选择口核时,不仅要考虑口核的功能,考虑它在设计中的信号完整性、 功率耗散、电磁辐射和可制造性,而且还要考虑它作为系统整体部件时是如何工 作的。 2 1 3 超深亚微米i c 设计技术 超深亚微米i c 设计技术是深亚微米i c 设计技术的延伸。除了传统的连线延 第二章s o p c 设计技术 时问题之外,i c 设计人员还要考虑信号完整性等其它的问题。 1 ) 连线延时 随着晶体管尺寸的降低,门的速度越来越快,限制电路性能提高的主要因素 不再是开关速度,而是互连延迟。时钟频率越高,连线作为扇出负载引起的延迟 在整个时序预算中所占的比例越大。深亚微米设计范围中连线延迟占总延迟的6 0 一7 0 ,因此精确地计算这部分延迟在芯片设计中是十分重要的。同时高性能 电路使得所有时序的容差都非常小,也对精确定位电路各部分的延迟模型提出了 更高的要求。另一方面,连线延迟信息只在物理实现后才能得到,因此对e d a 工具提出了更高要求。 2 ) 信号完整性问题 在超深亚微米i c 设计技术的研究中,除了要克服传统的连线延时问题之外, 设计人员还要克服由于特征尺寸缩小后,信号延迟变小,工作频率提高带来的所 谓信号完整性的问题。图2 5 给出了特征尺寸与芯片内部最高工作频率的关系。 图2 5 特征尺寸与芯片内部工作频率 在芯片内部工作频率提高的同时,由于集成度的大幅度上升,单个芯片中的 连线长度也随之大幅度升高。单个芯片中的连线总长将达到十几几十公里,其 中不乏有些连线的长度达到十几米几十米。根据物理学的基本定律,频率与波 长成反比。当芯片的内部工作时钟达到几千兆赫的时候,相应的波长只有若干米。 再考虑到电磁场的有关理论,可以知道当连线长度达到波长的几倍时,连线将成 为向外界发射电磁波的天线,同样这些连线也会成为接收电磁波的天线。考虑到 i c 芯片内部连线密布,在很高的工作频率下,信号的干扰将成为一个不容忽视的 问题,信号的完整性将成为设计得面对的另外一个严重的挑战。所以传统的基于 布尔代数的数字i c 设计理论必须要从简单的面向逻辑,转向吸引其它相关领域的 理论,形成新的理论体系。 1 4基于s o p c 的嵌入式系统设计 2 2 可编程逻辑器件 嵌入式系统s o c 是基于现场可编程门阵列复杂可编程逻辑器件 ( f p g a c p l d ) 或专用集成电路( a s i c ) 而发展起来的。随着超大规模逻辑器 件及逻辑设计语言的发展,f p g a 、c p l d 便成为s o c 半定制设计或全定制a s i c 前期设计的一种手段。f p g a ( 现场可编程门阵列) 与c p l d ( 复杂可编程逻辑器件) 都是可编程逻辑器件,它们是在p a l 、g a l 等逻辑器件的基础之上发展起来的。 同以往的p a l 、g a l 等相比较,f p g 刖c p l d 的规模比较大,它可以替代几十甚 至几千块通用i c 芯片,这样的f p g a c p l d 实际上就是一个子系统部件,这种芯 片受到世界范围内电子工程设计人员的广泛关注和普遍欢迎。经过了十几年的发 展,许多公司都开发出了多种可编程逻辑器件,比较典型的就是x i l i n x 公司的 f p g a 器件系列和a l t c r a 公司的c p l d 器件系列,它们开发较早,占据了较大的 p l d 市场。c p l d 与f p g a 的内部结构稍有不同,但用法基本一样,所以多数情 况下,不加以严格区分。f p g 刖c p l d 芯片都是特殊的a s i c 芯片,它们除了具有 a s i c 的特点之外,还具有以下几个优点: 1 ) 规模越来越大,功能越来越强,可实现更高的系统集成; 2 ) 开发环境及条件要求较低,设计人员只需在自己的实验室里就可以通过相 关的软硬件环境来完成芯片的最终功能设计,资金投入小,节省了许多潜在的花 费: 3 ) 可以反复地编程、擦除、使用或者在外围电路不动的情况下用不同软件来 实现各种强大的功能。所以,用f p g a c p l d 试制样片,能以最少的付出和最快 的速度占领市场。 尽管f p g a 、c p l d 和其它类型p l d 的结构各有其特点和长处,但概括起来, 它们都是由三大部分组成的: 1 1 一个二维的逻辑块阵列即可编程逻辑块( c l b ) ,它主要包括多路选择器、 d 触发器及组合逻辑电路,用来实现逻辑功能,构成了p l d 器件的逻辑组成核心; 2 ) 可编程输入输出块( i o b ) ,它主要进行输入输出转换,实现输入输出功 能; 3 ) 可编程互连资源( p i c ) ,由各种长度的连线线段组成,用来实现内部各块 的互连,其中也有一些可编程的连接开关,它们用于逻辑块之间、逻辑块与输入 输出块之间的连接。f p g a 和c p l d 都是可以编程的专用集成电路,用户可以 根据特定的设计要求,先定义逻辑功能,然后用f p g a 或c p l d 去实现。 第二章s o p c 设计技术 2 3s o p c 技术 用可编程逻辑技术把整个系统放到一块硅片上,称作s o p c 。可编程片上系 统( s o p c ) 是一种特殊的嵌入式系统: 首先它是片上系统( s o c ) ,即由单个芯片完成整个系统的主要逻辑功能; 其次,它是可编程系统,具有灵活的设计方式,可裁剪、可扩充、可升级,并具 备软硬件在系统可编程的功能。 2 3 is o p c 系统概述 s o p c 结合了s o c 和c p l d 、f p g a 各自的优点,一般具备以下基本特征: 1 ) 至少包含一个嵌入式处理器内核; 2 ) 具有小容量片内高速r a m 资源; 3 ) 丰富的i pc o r e 资源可供选择; 4 ) 足够的片上可编程逻辑资源; 5 ) 处理器调试接口和f p g a 编程接口; 6 ) 可能包含部分可编程模拟电路; 7 ) 单芯片、低功耗、微封装。 s o p c 设计技术涵盖了嵌入式系统设计技术的全部内容,除了以处理器和实 时多任务操作系统( r t o s ) 为中心的软件设计技术、以p c b 和信号完整性分析 为基础的高速电路设计技术以外,s o p c 还涉及目前已引起普遍关注的软硬件协 同设计技术。由于s o p c 的主要逻辑设计是在可编程逻辑器件内部进行,而b g a 封装已被广泛应用在微封装领域中,传统的调试设备,如:逻辑分析仪和数字示 波器,已很难进行直接测试分析,因此,必将对以仿真技术为基础的软硬件协同 设计技术提出更高的要求。 由于f p g a 具有可编程性,因此可用硬件描述语言实现给定的逻辑功能描述, v e r i l o g h d l 就是硬件描述语言中比较常用的一种,功能不错,比较适合于初级开 发人员。v e f i l o g h d l 非常类似c 语言,但因为它是硬件描述语言,因此又有自 己的特点。v e n l o g h d l 采用3 个层次的硬件描述和自顶向下( t o pd o w n ) 的设计 风格,能实现3 个层次描述的分别仿真和混合仿真。其第l 层为行为描述级,主 要是功能描述,这层的描述可以非常抽象,可以不必考虑硬件电路构成,很像高 级语言,如c 语言;第2 层是r t l ( r e g i s t e r 仃a n s f e rl e v e l ) 描述级,主要是逻辑 表达式的描述,这层的描述要考虑硬件电路的构成,如多路选择器、触发器的选 择等;第3 层是门级描述级,即是用门电路进行描述的,这层的描述已涉及到基 基于s o p c 的嵌入式系统设计 本的与门、或门等。在仿真验证功能正确以后,可以用专用工具生成f p g a 的编 程代码,然后进行f p g a 的编程,就可以实现要求的硬件电路了。v h d l 也是一 种应用广泛的硬件描述语言,功能较v e r i l o g h d l 要强大一些,开发也复杂一些。 作为世界领先的片上可编程系统的发起者,a l t e r a 公司将可编程逻辑与处理 器的能力巧妙地结合到了一起,其开发套件n i o sd e v e l o p m e n tk i t ,q u a r t u s1 7 可 以将用户自行定义的n i o s 软核( s o r c o r e ) 集成到功能强大的高密度f p g a 器 件中,为系统级开发尤其是日益升温的s o p c 的研究提供了非常完整的平台。其 系统级开发工具s o p cb u i l d e r 更是把系统开发和实现紧密、高效地结合起来,充 分利用s o p cb u i l d e r 强大的功能来配置自己需要的硬件开发平台,并在该平台上 进行各种应用研究。 2 3 2s o p c 中的处理器 n i o si i 系列软核处理器是a l t c r a 的第二代可编程逻辑优化的可配置处理器, 其性能超过2 0 0 m i p s 。它主要是利用a l t e r a 公司最新的n i o si i 软核处理器技术, 通过将包括3 2 位高性能处理器在内的多种应用模块嵌入到一个通用的 f p g a c p l d 内,实现了一个完全可重置的嵌入式系统。 自a l t e r a 于2 0 0 0 年推出第一代1 6 位n i o s 处理器以来,已经交付了1 3 0 0 0 多套n i o s 开发套件,使n i o s 成为一款流行的软核处理器。最新的n i o si i 系列采 用全新的架构,比第一代n i o s 具有更高水平的效率和性能。和第一代相比,n i o s i i 平均占用不到5 0 的f p g a 资源,而计算性能增长了l 倍。 n i o si i 系列包括3 种产品,分别是:n i o si f f ( 快速) 最高的系统性能, 中等f p g a 使用量;n i o si f s ( 标准) 高性能,低f p g a 使用量;n i o si 附经 济卜_ 低性能,最低的f p g a 使用量。这3 种产品具有3 2 位处理器的基本结构 单元3 2 位指令大小,3 2 位数据和地址总线,3 2 位通用寄存器和3 2 个外部中 断源;使用同样的指令集架构( i s a ) ,1 0 0 - - 进制代码兼容,设计者可以根据系 统需求的变化更改c p u ,选择满足性能和成本的最佳方案,而不会影响已有的软 件投入。 特别是,n i o si i 系列支持使用专用指令。专用指令是用户增加的硬件模块, 它增加了算术逻辑单元( a l u ) 。用户能为系统中使用的每个n i o si i 处理器创建 多达2 5 6 个专用指令,这使得设计者能够细致地调整系统硬件以满足性能目标。 专用指令逻辑和本身n i o s 指令相同,能够从多达两个源寄存器取值,可选择将 结果写回目标寄存器。同时,n i o s 系列支持6 0 多个外设选项,开发者能够选 择合适的外设,获得最合适的处理器、外设和接口组合。 n i o s 系列能够满足任何应用3 2 位嵌入式微处理器的需要,客户可以将第 第二章s o p c 设计技术 一代n i o s 处理器设计移植到某种n i o si i 处理器上,a l t c r a 将长期支持现有f p g a 系列上的第一代n i o s 处理器。另外,a l t e r a 提供了一键式移植选项,可以升级至 n i o si
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 美的集团工作流程体系
- 2025年事业单位工勤技能-湖北-湖北水生产处理工三级(高级工)历年参考题库含答案解析
- 文化场馆扩建工程2025年社会稳定风险评估研究
- 2025年事业单位工勤技能-河北-河北理疗技术员三级(高级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-江西-江西药剂员三级(高级工)历年参考题库含答案解析(5套)
- 2025年事业单位工勤技能-广西-广西计算机信息处理员二级技师历年参考题库含答案解析
- 2025年事业单位工勤技能-广西-广西放射技术员四级(中级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东铸造工五级(初级工)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-广东-广东无损探伤工一级(高级技师)历年参考题库典型考点含答案解析
- 2025年事业单位工勤技能-安徽-安徽不动产测绘员一级(高级技师)历年参考题库典型考点含答案解析
- 6G多维度切片QoS保障-洞察及研究
- 2025-2026学年外研版(三起)(2024)小学英语四年级上册教学计划及进度表
- 高考3500词汇表(完整版)
- 集团公司内部资金调剂管理办法
- 思想道德与法治课件:专题五在实现中国梦的实践中放飞青春梦想
- 新人教A必修一《集合》课件
- 复用器械处理流程
- 静安沉恒 沉子恒
- GB/T 23510-2009车用燃料甲醇
- GB/T 14216-2008塑料膜和片润湿张力的测定
- 警械使用课件
评论
0/150
提交评论