(通信与信息系统专业论文)视频压缩与传输的单芯片实现方案.pdf_第1页
(通信与信息系统专业论文)视频压缩与传输的单芯片实现方案.pdf_第2页
(通信与信息系统专业论文)视频压缩与传输的单芯片实现方案.pdf_第3页
(通信与信息系统专业论文)视频压缩与传输的单芯片实现方案.pdf_第4页
(通信与信息系统专业论文)视频压缩与传输的单芯片实现方案.pdf_第5页
已阅读5页,还剩86页未读 继续免费阅读

(通信与信息系统专业论文)视频压缩与传输的单芯片实现方案.pdf.pdf 免费下载

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

文档简介

l i l f l l ij i i f l l l f l l l f l l f l l l l ll l l i i j i lj l l l l l l l l l f l y 1819 7 7 0 南开大学学位论文版权使用授权书 本人完全了解南开大学关于收集、保存、使用学位论文的规定, 同意如下各项内容:按照学校要求提交学位论文的印刷本和电子版 本;学校有权保存学位论文的印刷本和电子版,并采用影印、缩印、 扫描、数字化或其它手段保存论文;学校有权提供目录检索以及提供 本学位论文全文或者部分的阅览服务;学校有权按有关规定向国家有 关部门或者机构送交论文的复印件和电子版;在不以赢利为目的的前 提下,学校可以适当复制论文的部分或全部内容用于学术活动。 学位论文作者签名:彰山林 加d 年j 月哆日 经指导教师同意,本学位论文属于保密,在j 年解密后适用 本授权书。 指导教师签名: 绷掏学位做作者签名: 鲍枞 i 解密时间:年月日 各密级的最长保密年限及书写格式规定如下: 内部5 年( 最长5 秘密1 0 年( 最长 机密2 0 年( 最长 任何他人创作的、已公开发表或者没有公开发表的作品的内容。对本论文所涉 及的研究工作做出贡献的其他个人和集体,均已在文中以明确方式标明。本学 位论文原创性声明的法律责任由本人承担。 学位论文作者签名:多乜考k z o o s 年j 月哆日 f 片的视频压缩与传输的嵌入式系 入式系统,即片上系统( s o p c ) 现方案。同时,还介绍了在完成 对于片上系统的设计,软硬件协同设计是必不可少的,因此本文对f p g a 上 实现嵌入式系统进行了详细的介绍。并且对用v e f i l o g 硬件描述语言实现视频压缩 进行了具体的描述。 由于时间有限,整个系统的还在开发过程中,r t l 验证已经完成,在文章的 最后对进一步所需要的工作做了一个总结和展望。 关键字:s o p cn i o sm p e g 2u c o sl w l p k | - i a b s t r a c t t h i st h e s i sa i m st oi m p l e m e n tav i d e oc o m p r e s s i o na n dt r a n s p o r t a t i o nb a s e do n f p g a a tf n s t ,i tg i v e sa no v e r v i e wo fe m b e d d e ds y s t e md e s i g no nf p g aa n ds o p c ( s y s t e mo nap r o g r a m m a b l ec h i p ) ,t h e nd e s c r i b e sm p e 9 2v i d e oc o m p r e s s i o np r o t o c o l a n dh a u r d w a r ei m p l e m e n t a t i o n i ta l s od i s c u s s e st h ep r o b l e m sw h i c hs h o u l db et a k e n i n t oc o n s i d e r a t i o nd u r i n gd e s i g n i n gt h ew h o l es y s t e m f o rt h es y s t e mo n ap r o g r a m m a b l ec h i p ,h a r d w a r es o f t w a r ec o o p e r a t i n gd e s i g ni s a b s o l u t e l yn e c e s s a r i l y s ot h i st h e s i sg i v e sa ne m p h a s i si n t r o d u c eo nh o wt od e s i g na n e m b e d d e ds y s t e mo nf p g a i ta l s op r e s e n t sad e t a i ld e s c r i p t i o no nh o wt oi m p l e m e n t v i d e oc o m p r e s s i o nw i t hv e r i l o go nf p g a b e c a u s eo ft i m el i m i t ,t h i sv i d e oc o m p r e s s i o na n dt r a n s p o r t a t i o ns y s t e mh a sn o t b e e nf i n i s h e dy e t a tt h ee n do ft h i sp a p e r , b r i n gf o r w a r dt h ew o r kr e m a i n st ob ed o n e k e y w o r d s :s o p c n i o sm p e g 2u c o sl w i p i i _ , l i 氟 | j 7 目录 目录 第一章引言1 第一节数字视频概述1 第二节基于i p 网络的视频传输一1 1 2 1 基于妒的视频技术及市场趋势1 1 2 2 基于p 的视频广播一2 1 2 3 基于p 的视频点播( v o d ) 2 1 2 4 基于口的电视会议2 1 2 5 基于口视频的标准3 第三节基于f p g a 的单芯片系统实现方案4 第二章基于m o s 的s o p c 系统设计6 第一节可编程单芯片系统( s o p c ) 一6 2 1 1 s o p c 概述6 2 1 2 软硬件协同设计8 第二节n i o si i 软核的配置与开发1 2 2 2 in i o si i 简介1 2 2 2 2n i o s 的配置1 4 2 2 3a v l o n 总线1 7 第三章基于n i o s 的嵌入式网络系统设计2 1 第一节基于n i o s 的u c o si i 实时操作系统2 l 3 1 1 软实时操作系统概述2 1 3 1 2u c o si i 简介”2 2 3 1 3 在n i o si i 软核中嵌入u c o si i 2 6 第三节l i g h t w e i g h ti p 2 8 i i i k l 一 t 目录 3 2 1 l i g h t w e i g h ti p 概述2 8 3 2 2 l i g h t w e i g h t 协议栈的具体应用”2 9 3 2 3 在n i o s i i 中使用l w i p “3 7 3 2 4l w i p 中的u d p i p 协议4 1 第四章m p e g 2 视频编码的硬件实现4 5 第一节 第二节 第三节 4 3 1 4 3 2 4 3 3 4 3 4 4 3 5 4 3 6 视频压缩算法概述4 5 静态图像压缩编码“4 9 快速高效的半像素运动估计算法5 2 运动估计和运动补偿5 2 整像素运动估计5 3 半像素运动估计一5 9 v l s i 实现6 0 关于存储器6 2 时序分析6 3 第五章系统的整体设计架构与仿真验证”6 4 第一节采用n i o s 定制指令来优化系统设计6 4 第二节性能资源的优化及器件选型6 9 第三节系统仿真7 1 第四节系统的进一步改进方案“7 2 总结与展望7 4 参考文献”7 5 致谢7 6 i v k - 第一章引言 第一章引言 第一节数字视频概述 在我们当今的社会生活中,图像信息和通信起着非常重要的作用,数字视频 压缩的实际应用一直是人们关注的热点问题,而仅仅是将视频压缩放在本地的应 用恐怕只有在数码产品中有些用武之地,而今后以及未来更多的应用是将采集来 的视频数据压缩后通过网络进行传输,如无线网络,p 网络等。尤其是渐趋成熟 i p 网络,才能够满足像视频传输这样带宽需求量很大的应用。随着视频技术及网 络技术的发展,先进的编解码技术和先进的网络传输技术层出不穷,数字视频传 输系统的应用领域也被不断的扩展,如视频服务器,远程监控,可视电话,会议 电视,远程教学,医疗,工矿企业生产监控等。 而对于这样的一个集数字视频压缩与传输于一体的系统,一般的实现方法是 嵌入式系统+ 逻辑器件( f p g a d s p ) + 专用集成电路+ 外围控制电路等多个硬件设 备构成一个复杂的板级系统,然而,随着半导体技术的飞速发展以及市场对视频 传输需求与质量的不断提高,在单芯片上实现整个视频的压缩与传输成为可能, 这也将是今后的发展方向。 第二节基于i p 网络的视频传输 1 2 1基于p 的视频技术及市场趋势 传统视频信号是基于模拟技术的。它们被加载于昂贵的传输回路上。而现在, 我们生活在一个数字世界。通过数字视频压缩合成技术,我们可将音频和视频信 号加载于l a n 、w a n 甚至i n t e r n e t 的典型网络回路上。基于m 的视频或p 流 视频是两项更新的技术,它们捕捉视频信号,将它们数字化后变为数字流,并在 口网络上管理这些数据。 第一步是视频内容的捕捉。这可以通过多种手段实现。视频内容在视频服务 器上被处理,压缩,存储并编辑。这些内容可以是“活的”( 实时捕捉和处理) , 也可以是预先录制和存储的。接着这些信号通过网络发送至一个工作站用于特别 第一章引言 观测,或供多个工作站同时浏览。这些观测站会用到硬件或软件浏览器( 有时也 可能两者都需) 。一些新兴的应用将在终端提供浏览器及基于j a v a 的普通视频。 视频传输的在当前市场上的应用主要可被分为三个部分:视频广播、视频点 播和视频会议。在这三者中,只有视频会议是全双工的,而其余则主要是单向传 输。这些基于i p 的视频传输是可升级的、经济且灵活的。 有足够冗余、带宽和容量的强大而稳固的基础设施将是决定任何一个集中口 服务装置质量最关键的因素。 1 2 2 基于口的视频广播 基于i p 的视频广播是一项基于网络的视频文件内容的单向传输技术。其终端 仅仅是一个没有控制系统的浏览器。视频广播可以由服务器单点或多点传送。在 单点传送中,信号由服务器复制给各个终端浏览器。在多点传送中,相同的信号 通过网络一次传送,但终端是多重的,或者简单地说,是一组用户。这项技术在 企业环境下用来实施培训、陈述、会议和演讲。它同样为大学、教育学院、技术 教育中心、广播、网络供应商等许多机构使用。有三个因素决定了这项技术需要 多大的带宽:用户数量、至服务器带宽以及视频的长度。广播视频通常被认为是 “开放的”。 1 2 3基于i p 的视频点播( v o d ) 一般说来,v o d 允许用户点播存储于服务器上的流视频。这项技术不同于广 播视频,用户可以选择停止、开始、前进或后退,因为服务是交互的。v o d 的 另一个特性是它的传输伴随有允许浏览、节目次序或视频时间等用户数据。当其 作为实时浏览时,它通常被用于存储视频。这项技术的使用范围包括电子学习、 培训、市场规划、娱乐、广播和其它需要按自己的计划而不是视频供应者的计划 浏览文件的用户。 典型的基于口的v o d 网络包括以下组件: 视频服务器( 可能是档案服务器或服务器组) 用于初始化传输的应用控制服务器( 其功能也可由档案服务器实现) 具有转换器的终端,它提交浏览请求和控制反馈管理软件 p c 或基于网络的设备,用于录制或转换视频文件 1 2 4 基于口的电视会议 2 第一章引言 电视会议( v c ) 是全双工音频及视频传输的组合,允许人们在两个不同的地 方进行会晤,其效果正如面对面的会谈。在这一应用里,两个终端都利用摄像机 进行视频捕捉并发送视频信号。而声音则由麦克风捕捉并传送,然后通过扬声器 回放。在这里通信是实时的,没有经过存储。 1 9 6 4 年a t & t 首先向市场推出了电视会议技术。这种通信方式的传统标准是 i t uh 3 2 0 。使用这种标准的成本较大,用户还得维护固定的精密设备。而于1 9 9 6 年发布的新标准( h 3 2 3 ) 则允许基于i p 的v c 。基于i p 的服务要好得多,因为 只要配有合适的设备,会议可从网络的任何一台p c 开始,信号通过常规网络基 础设施和设备传输,不再需要精细线路和其它使用开支。 这些服务可以被用于许多场合,如企业通信、远程医疗、远程健康培训、电 子学习、远程办公和客户服务等。电视会议可以是点对点的( 一个用户对一个用 户) ,也可以是多点的( 多个用户参与同一次会议) 。在后一种情况中,不同的用 户处于分离的窗口内。另外,电视会议还引入了一种新的通信概念。会议中可以 设置一个电子白色书写板供不同的客户在相同的书写板上做记录,或在讲话时浏 览其它用户的书面陈述和笔记。 系统的中心通常是m c u ( m u l t i p o i n tc o n f e r e n c eu n i t ,多点会议单元) 。这一 单元允许多个用户同时浏览多重视频。多点会议一般包括一个叫做看门人 ( g a t e k e e p e r ) 的盒子。这个盒子控制会议的带宽、寻址、识别和安全。这些功能 通常由存驻于独立p c 上的应用软件实现,但新的设备模型已将看门人功能内建 在硬件中。 1 2 5 基于视频的标准 开放系统的通信必须是在预定义的i p 包结构之间,且一个供应商的设备必须 与其他供应商的设备兼容。这其中有两个最重要的协议,它们是h 3 2 3 和s i p ( s e s s i o ni n i t i a t i o np r o t o c o l ,会议初始协议) 。h 3 2 3 及其补充标准定义了四个主 要元素,即终端、网关、看门人和多点控制单元。而s i p 是由i e t f ( i n t e r a c t e n g i n e e r i n gt a s kf o r c e ) 在9 0 年代中期发布的;它是因特网会议、电话通讯、事 件通知和即时消息的信令协议。s i p 由i e t fm m u s i c ( m u l t i p a r t ym u l t i m e d i a s e s s i o nc o n t r o l ,多方多媒体会议控制) 工作组研发,对此i e t fs i p 工作组早在 1 9 9 9 年9 月以前就已做了大量的工作。今日的视频应用利用视频压缩和视频编 码技术来携带视频信息;这样的压缩手段降低了带宽消耗。m p e g ( m o t i o np i c t u r e 3 第一章引言 e x p e r t sg r o u p ) 是视频压缩标准的主要开发商,其最新的版本是m p e g 4 。 通过采样,模拟信号被转变成数字信号。采样,正如其字面意思,是指在每 秒的不同时段( 采样频率) 以一定的采样精度( 即每个样本所用的位数) 采集信 号的样本。采样频率和精度越大,文件也越大。其值等于样本值( 0 或1 ) 与样 本精度的乘积。具体地,一张音乐c d 以每秒4 4 0 0 0 的频率采样,其每分钟的数 据量一般是5 m b 。 同样的技术被用于视频,当然更复杂一些。其区别主要是现在被传输的是图 象元素,也称为光栅。m p e g 标准使用有损压缩,在此模式下许多图象被丢弃但 不足以影响人眼的视觉效果。视频被分段采样。第一帧( 索引帧) 被完全传输, 而其余帧则只传输与索引帧的变化量。压缩比越大,帧的损耗也越大。在网络拥 挤的情况下,样本可被无序接收且会发生p i x i l a t i o n 的现象。p i x i l m i o n 是指象素 看起来不在其原来的位置且图象歪斜。对原始视频( 末压缩) 完全采样使其达到 d 1 品质需要1 6 5 m b p s 。d 1 分辨率是指n t s c ( n a t i o n a lt e l e v i s i o ns y s t e m c o m m i t t e e ) 全屏7 2 0 4 8 0 的电视分辨率及p a l ( p h a s ea l t e r n a t i n gl i n e ) 的7 2 0 5 7 6 。压缩 这种视频输入的方案有两种:其一是降低分辨率,其二是降低采样频率。经压缩 后的视频将明显减少资源消耗,但压缩量和视频质量间有一个平衡点。 第三节基于f p g a 的单芯片系统实现方案 视频的压缩与传输是非常复杂的运算,我们无法完全用硬件即芯片的方法将 整个系统实现,因为这样无疑将会耗费大量的硬件资源,成本会很高,比如我们 要将整个系统用专用集成电路( a s i c ) 的方法去实现,那么估计恐怕需要消耗上 百万门的芯片资源,而整个系统并非每个模块都对实时性要求很高,那么都用硬 件去实现,无论从资源还是功耗上来看无疑都将是一种浪费,而且开发周期较长, 无法快速面向市场。通常采用a r m 嵌入式处理器+ f p g a + d s p 这样的开发方式, 整个系统所占用的面积会很大,而且开发和仿真的过程需要每个部分单独来做, 集成在一起后返工的可能性很大,后期的板级开发更是费时费力。本论文提出一 种基于内嵌p 软核的f p g a 单芯片的实现方式,即利用f p g a 的一部分逻辑实现 一个嵌入式c p u ,作为控制整个系统的微处理器,大部分开发将是基于软件的实 现,而对于实时性较高的运动搜索运动估计等编码运算将采用f p g a 硬件并行的 实现方案。而整个系统的仿真也可以完全在软件上完成,避免了板上调试后发现 第一章引言 b u g 返工的风险,而且开发过程简便,有利于快速面向市场,抢占客户。 完整的单芯片系统( s o c ) 概念是指在一个芯片中实现用户定义的系统,它 通常暗指包括片内存储器和外设的微处理器。最初宣称真正的s o c ,或可编程单 芯片系统( s o p c ) 是能够提供基于p l d 的处理器。在2 0 0 0 年,a l t e r a 发布了 n i o s 处理器,这是a l t e r ae x c a l i b u r 嵌入处理器计划中第一个产品,它成为业界第 一款为可编程逻辑优化的可配置处理器。因此,本论文所设计的系统将采用n i o s 作为嵌入到f p g a 中的c p u ,具体的实现方案我们将在后续的章节中详细介绍。 本文提出了一种在f p g a 上实现视频压缩与通过p 网络传输全过程的系统级 实现方案,采用a l t e r a 公司提供的n i o si i 软核作为系统c p u ,以当前较为流 行的可编程片上系统( s o p c ) 为框架实现整个系统的开发。本文从硬件、软件开 发两方面层层深入,既有理论,又有具体实现,总结了s o p c 嵌入式系统开发的 整个流程,并对视频压缩协议及硬件实现方法做了具体阐述,针对开发过程中的 问题与难点做了详细论述。 本课题设计中主要有以下几个创新点: 1 提出了单芯片实现整个视频压缩与传输的实现方式 2 嵌入式系统已步入s o p c 时代,因此本系统采用s o p c 方式进行开发 3 整个系统采用软硬件协同操作进行设计,实时性要求较高的部分采用硬 件实现,系统层采用软件的方式实现 4 在以n i o si i 软核为基础的c p u 上嵌入了u c o si i 操作系统,以及精简 的网络传输协议l w i p ,这种开发方式可以加快开发速度,使产品快速的 面向市场 在本课题的基础上可进一步采取如下改进,可以提高系统的性能和拓展应用 领域: 1 时序优化:对关键路径采取流水线的实现方式,可以继续提高系统频率, 这样系统可以实时处理更高精度的视频数据 2 面积优化:修改帧间搜索算法,减小资源占用,f p g a 选型时可以选用资 源更小的芯片,节省开发成本 3 功能优化:通过模块复用,增加视频解码功能,及p 包的识别能力,可 以进行视频的双向传输,拓展了系统的应用领域 第二章基于n i o s 的s o p c 系统设计 第二章基于n i o s 的s o p c 系统设计 第一节可编程单芯片系统( s o p c ) 2 1 1s o p c 概述 可编程片上系统( s o p c ) 是一种特殊的嵌入式微处理器系统。首先,它是片 上系统( s o c ) ,即由单个芯片完成整个系统的主要逻辑功能;其次,它是可编程 系统,具有灵活的设计方式,可裁减、可扩充、可升级,并具备软硬件在系统可 编程的功能。 片上系统( s o c ) 解决方案是半导体行业自2 0 年前微处理器发明以来最重要 的发展之一。s o c 器件现在已广泛应用于从消费类产品( 如数字蜂窝手机和数字 电视机顶盒) 到高端通信l a n w a n 设备的诸多应用中。传统上,为了设计此类 嵌入式系统,设计人员需要选择三类不同的硬件器件处理器、逻辑器件和存 储器。今天,结合所有这些器件可以创造出单个s o c 解决方案,从而提高了速度、 缩小了尺寸,更重要的是降低了总体系统成本。 嵌入式系统s o c 可基于现场可编程门阵列复杂的可编程逻辑控制器件 ( f p g c p l d ) 或专用集成电路( a s i c ) 。开发新的s o c 器件需要许多关键因素, 包括新的开发工具、领先的制造技术和半导体口核。考虑到技术发展,基于a s i c 的s o c 行业仍面临许多挑战,因此阻碍了其发展。采用c p l d 可使s o c 设计具 有显著的灵活性,但由于处理器内核通常是硬核,所以其伸缩性极小。目前,a r m 、 a r cc 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 ( 片上可编程系统) 解决方案。 随着现场可编程逻辑器件越来越高的集成度,加上对不断出现的i o 标准、 嵌入功能、高级时钟管理的支持,使得设计人员开始利用现场可编程逻辑器件来 进行系统级的片上设计。片上可编程系统得到迅速发展,主要有以下几个原因: ( 1 ) 密度在1 0 0 万门以上的现场可编程逻辑芯片已经面市; ( 2 ) 第四代现场可编程逻辑器件的开发工具已经成形,可对数量更多的门电 6 第二章基于n i o s 的s o p c 系统设计 路进行更快速的分析和编译,并可使多名设计人员以项目组的方式同步工作; ( 3 ) 知识产权( i p ) 得到重视,越来越多的设计人员以“设计重用 的方式 对现有软件代码加以充分利用,从而提高他们的设计效率并缩短上市时间; ( 4 ) 由于连接延迟时间的缩短,片上可编程系统能够提供增强的性能,而且 由于封装体积的减小,产品尺寸也减小了。 新的s o p c 世界要求一种着重于快速投放市场的、具有可重构性、高效自动 化的设计方法。这种方法的主要要素是:系统级设计方法;高级的多处理器 和特长指令字( v l i w ) ;应用级映射和编译。 s o p c 的基本特征: 嵌入式处理器i pc o r e 为核心( 多处理器) 具有小容量片内高速r a m 资源 丰富的i pc o r e 资源可供灵活选择( a s i c ) 足够的片上可编程逻辑资源 处理器调试接口和f p g a 编程接口共用或并存 可能包含部分可编程模拟电路 单芯片、低功耗、微封装 s o c 开发环境 a l t e r a 公司推的1 款s o c 开发工具套件( 名为e x c a l i b u rd e v e l o p m e n tk i t s ) 。 因为性能比较全面,故适用于数字s o c 的开发。该开发套件包括s o c 开发所必 需的各种工具和资源软件、可以重构的硬件电路结构验证平台和使用说明书。可 以使用的软件资源包括供选用的多种嵌入式处理器核、a l t e r a 系列f p g a 开 发工具( 名为q u a r t u s ,可以进行h d l 设计的仿真、综合和布局、布线) ,还有工 业标准的c c + + 编译器。可重构的硬件平台可以用来验证设计是否正确,在表示 硬件结构电路的代码生成后,通过p c 机加载,可以重构其电路,通过运行重构 的电路来达到验证的目的。开发软件包中可嵌入的c p u 核有许多种可供选择,它 们都是高性能的r i s c 结构c p u ,其中最高的为6 4 位结构,运行最高速度可达 2 0 0m i p s ,适用的应用领域非常广。其中有1 种a l t e r a 公司自行开发的c p u 核( 名为n i o s ) ,在a l t e r a 公司a p e x 系列的f p g a 上实现其电路结构的运行 是非常容易的,也不需要付专利费。这种c p u 核是1 种参数化的软核,设计人员 可以根据应用的需要对c p u 核本身进行优化,还可以增加外围电路的功能。这些 工作无非是编写一些新的h d l 模块或改写一些现存的h d l 模块中的参数,再编 7 第二章基于n i o s 的s o p c 系统设计 译一下即可完成。这种c p u 核只占a p e x 系列f p g a 芯片的2 的资源。如果 需要提高处理速度,可以用多个n i o s 核来并行处理,这样的并行系统包括外围 电路完全可以在1 块a l t e r a 公司的a p e x 系列的f p g a 上实现。开发后的s o c 可以在m o d e l s i m 仿真环境下进行完整的系统验证,包括逻辑功能验证和布局布线 后的验证,使得复杂的s o c 设计在软件环境下就可以进行绝大部分的验证工作, 大大减轻了片上调试的工作量。 点,s i g n a l t a pi i 图2 1s o p c 开发流程图 2 1 2 软硬件协同设计 软硬件协同设计就是对于一个系统级的任务,通过软件设计和硬件设计并行 8 第二章基于n i o s 的s o p c 系统设计 交互同时开发来完成系统级设计。 对于一个需要软硬件协同设计的系统级人物来说,首先需要进行需求分析, 然后再进行结构规划,这里指的是处理器类型,软硬件之间的接口类型,等。而划 分的依据要满足系统速度,延迟,体积,成本等方面的要求。针对我们的系统而言, 帧内帧间编码算法是极其复杂和耗费时间的,因此这部分编码的实现采用硬件实 现,而对于网络协议的嵌入及码流转换这种比较灵活而又对实时性要求不高的设 计部分,我们将采用软件的方法实现。 传统软硬件设计过程的基本特征是系统在一开始就被划分为软件和硬件两大 部分,软件和硬件独立进行开发设计,一般采用的是先开发硬件。这其中隐含了 的一些问题:软硬件之间的交互受到很大限制,软硬件之间的相互性能影响很难评 估,系统集成相对滞后。因此直接导致设计质量差,设计修改难度大,研制周期 不能有效保障。 随着设计复杂程度的提高,软硬件设计中的一些错误将使开发过程付出昂贵 的代价。先设计硬件的方法经常会导致软件设计付出很大的代价,因为硬件设计 上的缺陷必须有后期软件开发来弥补。 统一的软硬件描述方式将是针对以上缺陷的最好解决方法,但这需要软硬件 支持统一的设计和分析工具,允许在一个集成环境中仿真系统软硬件设计,支持 系统任务在软件和硬件设计之间的相互移植。 这样,在设计初始阶段就可进行软硬件交互设计和调整,仿真可以贯穿整个 设计周期,避免了软硬件设计分离导致的设计后期返工,甚至进行时序调整,那 样代价就会更大。现在,关键技术( 如可编程逻辑综合技术、器件接口和功能模 型描述) 的进步,使得软硬件交互设计变得简单起来。因此,我们将选择基于f p g a 的嵌入式系统设计一s o p c 设计。 9 臣丑f = 了瑚x _ :f t l 。蠕蠢o i 黧鳞翳缓蘩缀鬻塑翳翳缓缓缓缓缢鬟翳缓霪戮笏缁缀鬻缁缓缢笏琵荔戮缓磁缓鬟瑟翳荔鬏露戮戮鬻髦缆鬃鳖荔徽溺罱! 旦毛戮 _ r l ei ? ;i e ml 4 0 d u l ev j a , a 旦e i p s 加m c o n t e n t sin 0 5m o r e c p u ;s e t t i n g s js y s t e m g e n e 惦t l o n l 锈a n e r as o p cb u i l d e r左 s y s l e r nc l o c kf r e q u e n c y :1 5 0 m h z ;e r f e o e t o u s e r l o g i c藿 7 f :t + ia v a l o nm o d u l e s u s e m o d u l en a m ed e o c n p t i o nb a o ee n di r q f b n i o sp r o c 髓, s o r a l t e r = , c c7 ; o x o g o o b o o 0 x 0 0 9 0 0 8 f f 一”?;耐却i n l 磷f 证e i 菇:a 唁r y c o e :i : j d i i t = 0 t 矿:圈b o o t _ r o ml o n c h i pm e m o r y ( r a mo rr 0 x 0 0 9 0 0 0 0 0 e 0 x 0 d 9 0 0 7 f f 一a b e r a p c i 3 2 s t a r 二 u a r t ( r s 一2 3 2s e r i a lp o r t ) 0 x 0 0 9 0 0 9 0 0o x 0 0 9 0 0 9 1f1 6 矽 圈u a r t l 一oa = e r at b n el b n i t e dp c “t 0 x 0 0 9 0 0 9 4 0o x 0 0 s 0 0 9 4 f 舻j 田s e u e n _ s e g _ p i oi p l o ( p a r a l l e li n ) 卜a v a i o nt oa h bb r l d g 芒i ,。, 0 x 0 0 9 0 0 9 2 90 x 0 0 9 0 0 9 3 f可r 妒田t i m e r l ,i n t e r v a lt r u e r 一a v a l o nt r 6 s t s t eb r i d gt 一 厂;田 。 蚤- c o m m m i l 、k 甜i o n 一o x 0 0 9 0 d 9 6 0 l o x 0 0 9 0 哺f 8 一;口b u t t o n _ p i oi p l o ( p a r e t l e li n ) 卜s p i ( 3 v 啊o s e r m r s考,7a v a l o nt r l - s t a t eb r i d g e 矿l i ee x t _ r a m _ b u o 卜u a r t ( r s - 2 3 2s 日i a l 严, l d t 7 1 v 4 1 6s r a m0 x 0 0 8 0 0 0 0 n0 x 0 0 8 f f f f f :田e x t _ r a m oc a n2 , 0n e t w o r kc o n : a m d2 9 l v 0 6 5 df l a s h- 0 x 0 0 0 0 0 0 0 00 x 0 0 7 f f f f f 1 7 ;田e 】i t j l a s h 一o1 2 cb u si n t e r f a c e m e u i n t e r f a c e t ou s e rl o g i co x 0 0 9 0 0 9 7 00 x 0 0 9 0 0 9 7 7闫n r 帅w m 扣。om 1 6 5 5 0 s e n l n a n c e d u ”, o x 0 0 9 0 0 9 8 00 x 0 0 9 0 0 9 9 f l 9;田a v a l o nd m ad m a ;om a s t e r1 2 cb u si n t e r f e : ? ”? : 。学:”;。 一 ;n c ,h id 纠i h h i 神+ l :一y 一” li l j u a l la v a d a b l ec o m p o n e n t s 国国国鲍 o l” r 黼:一j l , 露c h e c kl m o v e u p |m o v e l 3 。啪l 卜鼬。l毫l 学嫩,l鲫胁l l, s o p cb u i l d e r 系统开发工具,如图2 2 ,大大简化了片上系统的设计任务。 通过使用s o p cb u i l d e r 可以实现一个完整的片上系统,s o p cb u i l d e r 是集成在 a l t e r aq u a r t u si i 软件中的,整个系统的设计完全可以在一个工具中集成设计,只 是仿真的时候我t r 三j i 入m o d e l s i m 来作为第三方仿真软件。s o p cb u i l d e r 可以作 为我们整个系统的开发平台,将n i o si i 软核,外围设备的底层驱动的嵌入都可 以在这里轻松实现,无须进行专门的开发设计。 l o 第二章基于n i o s 的s o p c 系统设计 图2 3 软硬件协同设计开发流程图 第二章基于n i o s 的s o p c 系统设计 第二节n i o si i 软核的配置与开发 2 2 1n i o si i 简介 当前最为常用的嵌入式系统大多采用了含有a r m 的3 2 位知识产权处理器核 的器件。尽管由这些器件构成的嵌入式系统有很强的功能,但为了使系统更为完 备、功能更为强大、对更多任务的完成具有更好的实现方案,通常必须为此处理 器配置许多接口器件,方能构成一个完整的应用系统,如除配置常规的s r a m 、 d r a m 、f l a s h 外,还必须配置网络通信接口、串行通信接口、v g a 接口、p s 2 接口等等。而且,对于某些需要进行高速数字信号处理的应用或特殊的算法实现, 还需要d s p 处理器和f p g a 协同处理,这样势必会增加整个系统的体积、功耗, 降低了系统的可靠性。但是如果将a r m 或其它知识产权核以硬核方式植入f p g a 中,利用f p g a 中的可编程逻辑资源和i p 软核来构成该嵌入式系统处理器的接口 功能模块,就能很好地解决这些问题,在单芯片上完成所有的复杂功能,这就是 通常所说的片上系统( s o c ) 。对此,a l t e r a 和x i l i n x 公司都相继推出了这方面的 器件。例如,a l t e r a 的e x c a l i b u r 系列f p g a 中就植入了a r m 9 2 2 t 嵌入式系统处 理器;x i l i n x 的v i r t e x i ip r o 系列中植入了i b mp o w e r p c 4 0 5 处理器。这样就能使 得f p g a 的强大的软件功能有机地相结合,高效地实现s o c 系统。 但是,这种将p 硬核植入f p g a 的解决方案存在5 种不够完美之处:( 1 ) 由 于此类硬核多来自第三方公司,f p g a 厂商通常无法直接控制其知识产权费用, 从而导致f p g a 器件价格相对较高;( 2 ) 由于硬核是预先植入的,设计者无法根 据实际需要改变处理器的结构,如总线规模、接口方式,乃至指令形式,更不可 能将f p g a 逻辑资源构成的硬件模块以指令的形式形成内置嵌入式系统的硬件加 速模块( 如d s p 模块) ,以适应更多的电路功能要求;( 3 ) 无法根据实际设计需 求在同一f p g a 中使用指定数量的处理器核;( 4 ) 无法裁减处理器硬件资源以降 低f p g a 成本;( 5 ) 只能在特定的f p g a 中使用硬核嵌入式系统,如只能使用 e x c a l i b u r 系列f p g a 中的a r m 核,v i r t e x i i p r o 系列中的p o w e r p c 核。 但是如果利用软核嵌入式系统处理器就能有效地解决上述不利因素。a l t e m 的n i o s 核使上述5 方面的问题得到全面的解决。a l t e r a 的n i o s 核是用户可随意 配置和构建的3 2 位1 6 位总线( 用户可选的) 指令集和数据通道的嵌入式系统微 处理器i p 核,采用a v a l o n 总线结构通信接口,带有增强的内存、调试和软件功 能( c 或汇偏程序程序优化开发功能) ;含由f i r s ts i l i c o ns o l u t i o n s ( f s 2 ) 开发的 1 2 多种存储块大小:5 1 2 b i t 、4 k b i t 和5 1 2 k b i t ,加奇偶校验比特 多达8 t b p s 的总存储带宽 奇偶校验比特进行差错检查 混合宽度数据和混合宽度时钟模式 嵌入式移位寄存器功能 d s p 块:大计算量应用所需的大数据吞吐量 每个器件有多达2 2 个高性能d s p 块 专用乘法器、流水线和累加电路 可预测的3 0 0 m h z 性能,每个d s p 块提供高达2 4 g m a c s 数据吞吐性能 高带宽i o 标准和高速接口:具有业界领先的高速差分i o 接口支持 支持适用于l v d s 、p c m l 、l v p e c l 和h y p e r t r a n s p o r t t m 高速差分i o 电 气标准的t r u e l v d s 方案 每个器件多达1 5 2 个同等,其中8 0 个为8 4 0 m b p s 性能进行了优化 支持高速外部存储器件接口 用于系统时钟管理的p l l :全功能p l l 进行系统时序管理 每个器件有多达1 2 个p l l 和4 0 个时钟网络 增强频率合成能力如:倍增,倍减,相位和延迟偏移 图2 4 为n i o si i 内核结构示意图,与标准c p u 的不同之处仅仅在于j t a g 接口和用户定制逻辑,具体内容将在后面介绍。 第二章基于n i o s 的s o p c 系统设计 2 2 2n i o s 的配置 图2 4n i o si i 内核结构示意图 表2 1n i o si i 处理器的特性列表 c p u 结构3 2 位指令集 3 2 位数据线宽度 3 2 个通用寄存器 3 2 个外部中断源 2 g b y t e 寻址空间 片内调试基于边界扫描测试( j t a g ) 的调试逻辑,支持硬件 断点,数据触发,以及片外和片内的调试跟踪 定制指令最多达2 5 6 个用户定义的c p u 指令 1 4 第二章基于n i o s 的s o p c 系统设计 软件开发工具n i o si i 的集成化开发环境( i d e ) 基于g n u 的编译器 硬件辅助的调试模块 n i o s 处理器是一种参数化的软核,设计人员可以通过编写一些新的h d l 模 块或改写已有h d l 模块中的参数来对软核进行优化,及增加外围电路的功能。 使用n i o s 软核的s o p c 解决方案具有如下特点: ( 1 ) 可配置为3 2 位或1 6 位的c p u ,这样我们就能够在速度与占用资源上做 出最优选择。我们的系统将采用3 2 位c p u 进行配置。 ( 2 ) 带有大量的外设和接口库,如u a r t 、时钟、d m a 、s d r a m 、并行i o 等。 这些特性使得s o c 的设计变得简单化,提高了设计可靠性,降低了设计成本。 n i o s 软核主要面向对速度的要求不高的低端应用,因为n i o s 软核只占用芯片内 部很少的一部分逻辑单元,所以成本较低。同a s i c 相比较,如果将处理器放到 a s i c 中,不但需要付给处理器厂商专利费,而且a s i c 的投资大,风险也大。 n i o s 则没有这个问题,由于它是可配置的,所以还可

温馨提示

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

评论

0/150

提交评论