(通信与信息系统专业论文)媒体处理器的验证平台研究.pdf_第1页
(通信与信息系统专业论文)媒体处理器的验证平台研究.pdf_第2页
(通信与信息系统专业论文)媒体处理器的验证平台研究.pdf_第3页
(通信与信息系统专业论文)媒体处理器的验证平台研究.pdf_第4页
(通信与信息系统专业论文)媒体处理器的验证平台研究.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

(通信与信息系统专业论文)媒体处理器的验证平台研究.pdf.pdf 免费下载

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

文档简介

y 6 8 9 5 1 6 摘要 在过去二十年中,为了满足人们日益增k = 的对多媒体的需求,媒体处理器得到_ 飞速发 展,出现了各种各样的媒体处理器。根据其体系结构,媒体处理器可以分为专用可编程处理 器、通用可编程处理器、专用处理器和可重配置处理器几大类。各类处理器都针对多媒体处 理进行了扩展,增强其多媒体处理能力。通用可编程处理器中的精简指令集处理器( r 1 s c ) 和专用可编程处理器中的数据信号处理器( d s p ) 各自具有不同的指令集结构和微结构特点, 适合于不同的应用领域,出现了一系列r 1 s c 和d s p 融合体的r i s c d s p 架构,由于既善于 执行系统程序,又善于执行信号处理程序,所以能够较好的适应复杂多媒体系统的要求。 本文介绍山浙汀大学信息与通信系统研究所设计的3 2 停r i s c d s p 混合结构的多媒体 数字信号处理器m e d i a d s p 3 2 0 0 ( 简称m d 3 2 ) 的仿真验证j 二作。m d 3 2 将r 1 s c 与d s p 处理 器的指令操作、寻址模式等要素充分融合,设计了并行操作、多媒体分裂模式等指令操作, 形成了融合r i s c 、d s p 、s i m d 特点的一种新的指令集结构,并在此基础上设计了具有自 身特色的r i s c d s p 微结构组成和统一的流水划分结构,使得r 1 s c d s p 体系既能够发挥 r i s c 处理器的系统执行能力,义具有d s p 处理器的数据处理能力,既有精简指令的优势 又有较强的算术运算能力,从而使m d 3 2 处理器更适合多媒体信息处理的需要。 本文以m d 3 2 为例,探讨处理器的验证方法,根据设汁的要求,研究针对嵌入式多媒 体处理器的验证方法、验证过程。通过单元验证、结构验证、系统验证等步骤,利用时序波 形图、日志文件等验证手段,对m d 3 2 芯片进行全面的验证工作。 针对m d 3 2 的仿真和验证问题,提出基于f p g a 的、集仿真测试等功能于一体的、系 统平台( m p v t p ) 。这一平台具有可重配置性、可定制、易于调试、仿真速度快、测试方便 等优点。通过对硬什和软件子平台进行快速重配置,不但可以快速应用于不同的媒体处理器 的仿真,而且可以作为:占片的测试基台,具有较强的通用性,而且节省了用于单独开发测试 平台所需要的物质与时问消耗。 以m d 3 2 为目标,分析结合视频解码任务的数据访问特点,研究存储系统的设汁、优 化。提出了用二维d m a 控制器为核心、辅之以优化的总线协议,外部存储单元的存储系统, 来提升多媒体处理器的系统性能的方法。 关键词:媒体处理器,仿真验证平台,f p g a ,存储系统,d m a 第1 页 第一章绪论 r i s c 与d s p 处理器在各自的发展历程中分别形成了具有不同特点的体系结构和应用领 域,并逐步相互融合,r i s c d s p 处理器架构正是这一发展趋势下的研究方向之一。在应用 领域,随着人们对多媒体需求的不断增长,出现了一类专门针对多媒体信号处理应用的处理 器,即媒体处理器。本章着重介绍r i s c d s p 混合结构媒体处理器,及多媒体数字信号处理 器的设计流程及其验证过程。 1 1 处理器发展史 计算机应用领域分为桌面计算、服务器和嵌入式应用三大类。桌面计算强调定点和浮 点数据类型的程序性能,不注熏程序大小和处理器的功耗。服务器主要是指科学和工程计算、 数据库、个人文件服务和网络应用的多用户服务系统。与它们不同,嵌入式应用主要服务于 工业、国防、媒体实时工作、及人民生活中的信息控制系统,强调成本和功耗问题。 嵌入式系统和桌面系统的最大区别在于嵌入式系统具有静态结构,大多数应用软件存丁 终端用户不可见的r o m 存储器中,并且终端用户不能访问处理器的可编程接口,不能对嵌 入式处理器的行为进行修改或者重新编程。 在嵌入式系统领域,8 位机和1 6 位机一直占有垄断地位。早期的系统由于结构简单 只作控制任务,如家电的控制或计算机外设的控制所以常常被称作微控制器 ( m i c r o c o n t r o l l e r ) ,而不是微处理器( m i c r o p r o c e s s o r ) 。但是随着应用的要求越来越高,处 理器结构不断发展,嵌入式系统也越来越复杂,数码相机、数字音视频系统,已经进入人们 日常生活,8 位和1 6 位处理器已经不能胜任复杂应用系统的需求,3 2 位嵌入式系统处理器 应运而生。许多嵌入式处理器结构从过去的主要用于桌面系统的结构( 如m i p s 、s p a r c 等) 或高端d s p 中衍生出来,与桌面处理器之间的不同也不再仅仅局限于寄存器组织、基本指 令集、流水线结构,而扩展到了诸如功耗、成本、外设集成度、中断响应时间、片上r a m 或r o m 的容量等诸多问题j 。 九十年代中期,更多的3 2 位处理器推向市场,开始出现多媒体扩展结构。同时,r i s c 与d s p 的融合结构将目标瞄准了高端的嵌入式处理器市场。九十年代末期,芯片制造工艺 更加先进,集成度越来越高,不同用途的处理器核可以集成在一块芯片中实现,使得整个嵌 入式系统进入片上系统s o c ( s y s t e m o n c h i p ) 发展时代。 随着s o c 研究的逐步深入,整个嵌入系统要求具有更强的整合性、更注重软顾件的协 同设计,对多媒体处理能力和功耗问题提出更高的要求。嵌入式系统处理器也向着多元化的 趋势发展,不同的体系结构间相互融合,取长补短,体现为【“】: 第5 页 浙江大学硕士学位论文 通过超长指令字结构( v l i w ,v e r yl o n gi n s t r u c t i o nw o r d ) 、超标量结构( s u p e r s c a l a r ) 提高性能; 采用单指令多数据( s i m d ,s i n g l e i n s t r u c t i o nm u l t id a t a ) 等多媒体技术提高性能; 采用变长的精简指令集体系来减少指令存储宅间; 采用更深的流水级结构来提高系统频率: 将r i s c 与d s p 处理器的特点相互融合: 图1 i 概括的表示了嵌入式处理器的发展过程。 m i p s 3 0 0 1 5 0 1 8 0 1 0 0 6 0 8 0 4 0 2 0 侧重于控制 功能和外设 低端 嵌入式 控制器 嵌入式 控制器 括外设、 乘法器 为了提高性能增 加了功能单元 嵌入式 控制器 包括d s p 功能单元 嵌入式 处理器 包括 乘法器 具有d s p 、多媒体、 图像的高端处理能力 高性能 嵌入式 处理器 包括d s p 功能单元 高性能 嵌入式 处理器 具有丰富 的多媒体 处理能力 卜一微控制器 0 一微处理器 图1 1 ,嵌入式处理器的发展过程 嵌入式系统的快速发展以繁杂多样应用系统需求为主要动力,比如现在的图形游戏控制 台,其处理能力就相当于过去的s i l i c o n 图形工作站。目前,嵌入式系统的应用领域几乎涵 盖了所有的日常生活范围: 需要卓越图形性能的视频游戏控制台; 需要虚拟存储管理和标准外设的掌上系统、掌上电脑、网络p c 、汽车信息系统; 要求低功耗,并提供高性能数字信号处理能力的蜂窝电话和移动个人通讯系统; 要求低成本组成部件的调制解调器、传真机、打印机; 要求低成本和高可靠度的自动化装置; 需要高集成度和低成本的机顶盒、d v d ( d i g i t a lv e r s a t i l ed i s k ) 、电视电话; 第6 页 _ ;i f 江大学硕士学位论文 需要通用性和图像处理能力的数码相机、数字摄像机、m p 3 播放机。 1 2 嵌入式处理器 嵌入式系统处理器不像通用目的处理器一样设计用来执行通用范围内的应用,而是针对 特定目标应用系统进行了特定的结构或微结构方面的优化。 选择嵌入式系统处理器有很多标准,其中,成本和性能是两个主要考虑方面。最经济的 实现一个应用是嵌入式系统处理器不断发展的动力来源。市场的需要迫使嵌入式处理器设计 者最大限度的去减少成本和产品面市时间,并同时提高处理器的性能和集成度。 桌面系统处理器的典型代表是i n t e lx 8 6 系列处理器,它独占了桌面系统市场的很大份 额。而在嵌入式系统领域,没有一种处理器可以独霸天下,可供选择的处理器更是枚不胜举, 其中主要包括a r m 系列c p u ,m i p s 系列c p u ,m o t o r o l a 的6 8 k 系列,h i t a c h i 的s u p e r h 等等。 出于系统综合性价比的考虑,r i s c 结构和d s p 结构在嵌入式处理器应用中占绝大多数。 不同的应用场合决定了所采用的嵌入式处理器的不同结构。比如,在要求大量数据处理的场 合,d s p 结构处理器占有较大份额,它可以进行大量数据的实时处理l ”。而在要求对信息进 行实时或准实时控制和操作的应用场合,r i s c 结构处理器则占有较大优势。 r 1 s c 与d s p 的结构设计不同,着眼点不一样,应用领域也千差万别1 6 “】。 1 2 1d s p 处理器 1 2 1 1 d s p 处理器发展史 人们对d s p 技术的研究兴趣开始于二十世纪7 0 年代,主要是研究诸如调制解调器和中 心转接系统等电讯设备。贝尔实验室的d s p i 和n e c 的7 7 2 0 9 1 在1 9 7 8 年的问世,宣布了 d s p 处理器的诞生1 1 0 - 1 1 i 。 1 9 8 2 年,美国t e x a si n s t r u m e n t s 推出了采用哈佛结构的t m s 3 2 0 1 0 ,将指令和数据存 储空间分开,各自具有地址和数据总线,奠定了现代d s p 处理器的基础,成为第一代d s p 。 1 9 8 7 年问世的m o t o r o l a d s p 5 6 0 0 1 1 2 1 代表第二二代d s p 结构走向成熟。它具有了现代d s p 的 大部分数据处理功能:器件内部采用流水线,有乘累加单元,支持零开销循环,可以进行窗 口寻址。同一时期的d s p 还有a t & t 的d s p l 6 a ,a n a l o g d e v i c e s 的a d s p 一2 1 0 0 等。 进入2 0 世纪9 0 年代,随着应用领域的不断扩大,d s p 进入了一个快速发展时期。除 了满足实时处理的要求外,处理能力更强大,软件开发环境更成熟,而且更注重低功耗、低 成本、高集成度的要求。第三代d s p 的典型代表是1 9 9 5 年m o t o r o l a 的d s p 5 6 3 0 1 1 1 3 和t i 的t m s 3 2 0 c 5 4 1 1 1 4 1 。 第7 页 浙江大学硕士学位论文 1 9 9 7 1 9 9 8 年,d s p 技术发展到了第四代,指令并行性进一步提高,从单指令系统发展 到v l l w 结构、多处理器结构。其典型代表是t i 的t m s 3 2 0 c 6 2 0 1 15 1 , 它采用v l i w 结构 将8 条指令扣包成一条长指令,在处理器内部同时执行多个操作。 目前的d s p 处理器不仅多媒体等处理性能有了较大提高,而且结构和开发手段更加成 熟、町靠,其应用领域也涉及到人们日常生活的方方面而。 1 2 1 2d s p 处理器特点 相比于其它嵌入式应用,d s p 应用具有自己独特的特点l l “,比如: d s p 的数位决定于,人类对噪声的敏感,以感觉不到噪声为度; 数据以“流”的形式出现,典型的输入数据通过a d 转换为一个无限流,所以对实时 性要求非常严格; 应用程序中通常以大数据量计算、小范围循环控制以及基于累加的操作占主要部分,所 以乘累加指令、硬件控制循环操作变得非常重要; 数据存放方式较为规律,存储地址和程序流程具有可预测性。 这些应用特点要求d s p 处理器具有较强的数据处理能力,并需要专用硬件电路与指令 的支持,主要包括t ”1 w : 基于累加的、可以直接面向数据存储单元进行寻址的指令类型; 一条指令执行多项操作,提高数据并行处理能力 针对应用程序中以特殊规律访问的地址设计寻址模式,并由专门的地址计算单元产生, 如窗口寻址和比特反转等; 支持辅助地址计算及指令寻址的专门用途寄存器: 专用硬件结构,如乘累加器m a c ,零开销循环等: 片上多端口r a m ,用于支持高效的数据交换方式。 由于d s p 处理器结构较为复杂,所以影响其速度和性能的因素也较多,主要包括:操 作并行度( 一个时钟周期内能执行多少操作) 、指令集、时钟频率、数据类型、数据宽度、 流水线深度( 决定指令的延迟) 、支持d s p 运算的特征( 寻址模式、零开销跳转) 等【2 “。 1 2 1 3d s p 处理器类型及应用领域 具有代表性的d s p 芯片包括t i 公司t m s 3 2 0 系列、a d 公司a d s p 系列、m o t o r o l a 公司m c 系列、s t a r c o r e 公司的s c 系列等d s p 处理器。其中,t m s 3 2 0 c 6 4 x x 采用v l i w 结构,具有类似r i s c 的3 2 位简单指令,支持s i m d 操作,包含片上指令c a c h e ,时钟频率 高等特点,使其成为一代d s p 处理器的典型产品【2 l 】。 随着嵌入式系统的发展,d s p 应用领域已经扩展至诸如m p e g 等一系列标准编解码、 数字移动通讯、伺服控制机械人、电力电子、马达控制、变频器、数据处理、加密解密、 影像,语音处理、图像借音辨识、图像语音压缩等,d s p 处理器必将进入更快速的发展时期。 第8 页 浙江大学硕士学位论文 1 2 2r i s c 处理器 1 2 2 1r i s c 处理器发展史 r i s c 的概念最初是在p a t t e r s o n 和d i t z e l1 9 8 0 年的论文中提出来的。由于在当时r i s c 在同样的技术条件下可以将计算性能提高2 到5 倍,所以r i s c 概念一提出便引起了业界极 大的兴趣。 最初的商用r i s c 处理器主要有3 个:b e r k e l e y 的r i s c i 和r 1 s c i i 处理器、i b m 的8 0 1 处理器和s t a n f o r d 的m i p s 处理器。这3 种处理器都采用l o a d s t o r e 结构,固定形式的3 2 比特指令字,并强调有效的流水线结构。 随后,工业界开始广泛使用r i s c 结构设计自己的处理器,k i s c 与c i s c 结构之间也展 开了激烈的较量”“。相对于c i s c ,r i s c 的最大特点是其精简指令集结构。进入2 0 世纪9 0 年代,随着c a c h e 策略、跳转预测、超标量、功耗、整合策略逐渐成为业界研究热点,r i s c 和c i s c 之问的争夺也进入白热化阶段【2 ”“。 随着计算机体系结构的不断发展,r i s c 以其结构和软件开发上的优越性逐步取得了与 c i s c 之间斗争的胜利,c i s c 纷纷转向r i s c 设计,例如在桌面和服务器市场中,具有c i s c 指令的x 8 6 处理器通过硬件将c i s c 指令转换成r s c 指令。但是,在嵌入式市场中,成本 和功耗成为首要的考虑因素,采用硬件转换的方法对系统来说太奢侈。所以,在2 0 0 0 年问 世的通用目的处理器中,9 0 都采用r i s c 架构。 1 2 2 2r i s c 处理器特点 精简指令集处理器r 1 s c 设计思想在通用目的处理器领域已经成为一个主要的、广泛使 用的设计理念。r i s c 结构的主要特点是将l o a d s t o r e 指令与其它指令分离开来【”1 ,从而实 现处理器的高时钟频率和高性能表现【。其指令结构较为简单,一般一条指令只能执行一 个操作。 目前许多处理器都采用k i s c 架构体系组成,如i b m 的p o w e r p c 、s u n 的u l t r a s p a r c l 2 ”、 m i p s 系列、a r m 系列等等。它们中的有些已经成为能够达到g e g ah z 的高时钟频率、高 性能处理器芯片p 。 但是,面对具有大量复杂、高速数据计算的嵌入式系统,虽然一个高性能通用目的处理 器也可以完成任务,但是这些高性能处理器的价格和功耗因素却远远超出了嵌入式系统对成 本和功耗的要求。而且,通用目的处理器在数据处理等嵌入式应用中有两个主要弱点:一是 许多嵌入式应用的核心功能与通用处理器的基本指令集和寄存器文件之间的匹配性差,所以 核心程序在通用目的处理器上执行需要较多的计算周期;二是许多专用嵌入式设备应用不到 通用目的处理器的所有功能,造成了处理器资源的浪费。所以,虽然今天设计首先尽量采用 通用处理其,但对于计算量大的实时部件,仍采用专用硬件电路与处理器相配合来执行这些 数据计算功能。 第9 页 浙江火学硕士学位论文 1 2 3r i s c - d s p 混合类型处理器 人们对系统性能要求越来越高,尤其多媒体处理领域,m p e g 4 、h 2 6 4 等新标准出现除 了要求越来越高的处理能力和实时性外,还要求处理器具有较高的系统控制能力。采用传统 r i s c 处理器或传统的d s p 处理器都难以满足复杂的系统要求。 表1 1r i s c 与d s p 处理器比较 r i s c 处理器d s p 处理器 简单指令集复杂的、专用的指令集 l o a d s t o r e 结构,面向寄存器的指令集面向存储器的指令集 大的通用寄存器文件具有特殊用途的专用寄存器 采用c a c h e 作为片上存储器采用片上r a m 作为片上存储器 跳转有延迟槽具有零开销循环指令 不具有乘累加单元等特殊硬件运算单元有乘累加单元等特殊硬件运算单元 需要较少的存储带宽需要更多的存储带宽 有存储管理单元,通常采用查找映射表进行通常没有存储管理单元和查找映射表,通常 虚实地址运算,需要操作系统进行资源调度在没有操作系统的情况下运行 为了提高程序执行效率,关键代码部分采用 利用编译器产生汇编代码 手丁汇编进行优化 如表1 1 所示,通过比较传统的r i s c 和d s p 处理器的特点,可以看到,如果能将r i s c 和d s p 两者的特点结合起来,无疑会更加适应应用领域的需要,并对嵌入式系统处理器结 构的设计方法产生深远的影响。所以,r i s c 处理器和d s p 处理器的融合是计算机体系架构 发展的必然趋势。在r i s c 处理器中加入支持d s p 处理的硬件组成,以及扩展d s p 处理器 使其更适应于编译器,这两方面构成了r i s c 处理器和d s p 处理器之间的融合。 事实上,目前嵌入式系统的发展趋势正在向着这一方向改变着,越来越多的嵌入式系统 处理器将传统r i s c 和d s p 处理器的结构和性能特点融台在一起,借鉴r i s c 和d s p 的设 计思想和方法,同时考虑系统成本、功耗及应用场合的限制,逐步发展出r i s c 与d s p 的混 合类型处理器体系结构。 r i s c d s p 架构中的r l s c 部分最适于执行控制类代码( 如操作系统,用户接口,系统 控制等) ,而d s p 部分最适合信号处理应用,如f i r 滤波、f f t 变换、小波变换等。例如在 m p e g l 解码中,r i s c 处理器适合于进行系统级解码和音视频同步及系统调度等等系统控制 任务,而d s p 处理器适合丁进行d c t 变换、h u f f u m a n 解码等等信号处理任务。仅仅采用一 个r i s c 或者一个d s p 处理器都难以满足任务要求,因此,传统的m p e g l 解码芯片内部通 常都包含一个r i s c 核和一一个d s p 核进行解码。例如e s s 的e s 3 8 9 0 内部包含一个m i p s x r i s c 处理器和一个专用的视频处理器【”j 。可见,r 1 s c d s p 架构在这种处理场合是相当有 用的。 第1 0 页 浙江大学硕士学位论文 当前r i s c d s p 结构的融合手段,主要有两大类 3 2 】: 一个处理器中包含r i s c 和d s p 两个处理器核的双核结构。 将r i s c 处理器和d s p 处理器融合到一个处理器核的单核结构。 图1 2 ( a ) 说明了在一个处理器中包含r i s c 核和d s p 核的般核结构示意图。图中d s p 与r i s c 核通过各自的i o 接口与外界联系,相互之间具有较为复杂的通讯结构。图1 2 ( b ) 为r i s c 和d s p 融合的单核结构,图中r i s c 和d s p 被融合为一个处理器,具有较为简单 的结构,同时又兼具了r i s c 和d s p 的优点。 i oi o - r i s c d s p l i u n i f i e do m o rs e ;p e r a t e d i f_ ( a )( b ) ( a ) r i s c d s p 双核结构( b ) r 1 s c d s p 融合的单核结构 图1 2 两种r i s c d s p 结构 文献2 4 、2 5 介绍的o m a p 架构便属于r i s c 与d s p 双核结构,如图1 3 所示。它包含 一个t i 的t m s 3 2 0 c 5 xd s p 处理器核,以及一个a r m 9 2 5 tr i s c 处理器核。两个处理器都 有各自的存储管理单元,通过各自的接口信号与外设进行通讯。 图1 3 0 m a p 结构 o m a p 架构中的r i s c 核负责执行控制类任务,如操作系统,用户接口,操作系统应用 等,而d s p 核负责执行信号处理任务,如m p e g 4 编解码等。两者分工明确,使其能适用 第1 1 页 浙江大学硕士学位论文 于复杂多媒体任务要求。o m a p 架构的另一优势在于它所采用的两个处理器核具有成熟的 开发工具,软件开发可以在t l 和a r m 提供的工具平台上进行。 但是,o m a p 结构中的两个处理器核以及处理器核与外设之间的通讯存在着同步、交 换等诸多问题。所以o m a p 类似于一个多处理器系统,复杂的通讯机制使得整个系统的设 计变得异常复杂,不可避免的增加了系统成本。 1 9 9 4 年1 月推出的p a r i s c 是第一个具有多媒体扩展指令( m a x 1 ) 的处理器p 。随 后,s u n 在s p a r c1 s a 中加入了v i s ( v i s u a l i n s t r u c t i o ns e t ) 指令p ,5 9 9 7 年1 月,i n t e l 推山了带有m m x 指令的指令集处理器p ”。接着5 9 9 7 年,s g i 推出了m d m x ( m i p s d i g i t a l m e d i ae x t e n s i o n s ) ,摩托罗拉推出a l t i v e c 用于p o w e r p cr j s c 处理器p “。目前,儿乎大多数 处理器在原有指令的基础上都扩展了多媒体处理指令来增强处理能力。 相对于r i s c 和d s p 相对独立的双核结构,这种r i s c - d s p 融合的单核结构通过对r s c 指令集进行扩展,添加扩展指令或者增加d s p 执行单元等d s p 特性,将r i s c 和d s p 的特 点融合存一个处理器核中。 例如文献2 8 3 0 介绍的处理器e 1 3 2 。e l 一3 2 既可以作为通用处理器,又同时有d s p 定 点处理能力。它根据d s p 特点改造了r i s c 结构,在r i s c 结构中整合了一个d s p 单元, 该d s p 单元与算术运算单元a l u 、桶形移位器并行工作,并访问同一个寄存器文件,如图 14 所示。处理器资源可以由通用目的程序和d s p 程序算法公用,应用程序工程师可以利用 所有的功能单元和结构指令来编写应用程序。e 1 3 2 中的d s p 单元针对d s p 算法进行了优 化,并负责数字信号处理应用中的快速循环处理、大量数据进出处理和确定程序流程的处理。 圈1 4 e i - 3 2 结构框图 采用r i s c d s p 融合结构,而非r i s c - d s p 双核结构,r i s c 和d s p 指令在同一个处理 器中进行执行,同时支持r i s c 和d s p 的特性,而无需复杂的通讯结构和接口信号,同时单 一处理器核结构比双核结构更为简单,其面积和功耗都要低于双核结构的r i s c d s p 处理 器。 第1 2 页 浙江大学硕士学位论文 目前几乎所有的处理器提供商都在它们的处理器结构中以某种形式加入了d s p 处理能 力,如表1 2 所示: 表1 2 兼有r i s c 与d s p 特肚和结构的产品 处理器提供商微处理器d s p 扩展 a r ma r m 9 e 单周期整型m a c f u j i t s u s p a r c i i t ef a m i l y 整型m a c 和多媒体辅助处理 h e w l e t t p a c k a r dp a 8 0 0 0f a m i l ym p e g 解码寄存器 t b mp o w e r p cf a m i l y 憨型m a c i n t e lp e n t i u m1 1 1s i m d 扩展 m o t o r o l ap o w e r p cg 4 向量处理器 s u nm i c r o s y s t e m su i t r a s p a r c v i z 图像指令 所以,r 1 s c 与d s p 处理器之间的区别正在逐渐减少,传统r i s c 与d s p 之间的界限已 经不像以前那么清晰了,嵌入式处理器架构正向着进一步融合各种体系架构设计特点的方向 快速发展。 1 3 多媒体处理器设计及验证流程 当前的多媒体处理器通常既包含硬件部分以提供处理能力,也包括软件部分以提供设计 灵活性。因此,媒体处理器的设计必须采用软硬件协同设计方法。在文献3 7 中,w o l f 总结 了软硬件协同设计流程,并把这一流程看作反复进行划分、分配、调度和映射的过程。 大的设计反复将会花费巨大的时间,减慢设计进程。例如,当进行完布局布线后再发现 前端设计出现问题回来修改设计后,需要重新经过综合和布局布线等流程。浪费大量的时间。 因此,在设计的每一步骤,都必须对设计进行仔细的验证。证设计反复只发生在邻近的步骤 之间,消除或降低大的设计反复。 根据软硬件协同设计流程和基于标准单元工艺芯片设计流程咀及验证流程,媒体处理器 的设计和验证流程如图1 6 所示。 第1 3 页 浙江大学硕士学位论文 成功 图1 6 媒体处理器设计和验证流程 这一设计和验证流程分为如下步骤: 1 ) 软硬件划分 第步是对系统进行软硬件划分。在媒体处理器的设计中,软硬件划分即媒体处理器指 令集的设计。指令集设计的任务即确定哪些任务需要增加专门硬件和专门指令完成,那些任 务可以通过简单指令组合完成而不需要提供专用指令。指令集设计需要根据媒体处理器的应 第1 4 页 浙江大学碗士学位论文 用领域分析的结果和设计约束条件综合考虑。指令集的设计对处理器性能影响很大,因此t 需要经过反复的性能分析和评估,在满足设计约束条件的同时将处理能力最大化。 2 1 硬件设计 完成软硬件划分后,就可以同时进行软件设计和硬件设计r 。硬件设计即设计处理器结 构,实现处理器指令集。处理器结构设计需要设计媒体处理器的流水线、控制电路、数据通 路等等详细电路。设计经过设计输入后,得到r t l 级网表。 3 1 软件设计 在硬件设计的同时根据软硬件划分的结果进行软什设计。媒体处理器软件设计主要包括 编译器、汇编器、指令级仿真器等集成开发环境的设计和测试程序的设计。测试软件首先必 须经过指令级仿真器的严格验证,以得到其正确的参考结果。同时,测试软件在指令级仿真 器仿真的结果,也可以作为软硬件划分的评估依据,以进一步优化媒体处理器的软硬件划分, 即指令集的设计。在对测试软件进行验证的同时,还需要进行覆盖率分析,确定测试软件对 处理器设计的错误覆盖率。 4 1软硬件协同仿真 r t ,级设计完成后,必须对r t l 级网表进行严格的动态仿真,以保汪其功能的正确性。 对媒体处理器的r t l 级仿真需要:海硬件设计和测试软件协同起来进行软硬件协同仿真。因 为r t l 级代码是后续步骤进行形式验证的基础。因此,对r t l 级的仿真必须尽可能完备, 即尽可能进行全覆盖的仿真和测试。仿真覆盖率越大,其仿真消耗的时间越长。金覆盖的仿 真测试需要消耗漫长的时间,成为设计过程的瓶颈所在。基于硬件描述语言的软件仿真器仿 真速度很慢,难以满足要求。因此,需要考虑采用硬件加速仿真验证的方法。本文第3 章介 绍了基于f p g a 的软硬件协同仿真平台的设计,大大加速了这一过程。 5 ) 综合和优化 通过仿真验证功能正确的r t l 级代码就可以通过综合工具进行综合并进行逻辑优化。 综合即对r t l 级代码进行编译并映射到标准单元库中。逻辑优化通过去除冗余逻辑、时序 重整、缓冲树平衡等等手段优化设计的速度和面积。对综合完成后的网表,必须验证其功能 的正确性和满足时序要求。由于动态仿真速度慢,对综合后的网表,功能的正确性不再通过 动态仿真进行验证,而通过形式验证技术进行。形式验证通过对两个刚表进行比较以决定两 个网襄是否一致。r t l 级网表经过大覆盖率的动态仿真后,其功能得到了验证,通过:肾综合 后网袭和r 1 1 l 级网表比较进行形式验证,可以保证综台后网表和r t l 级网表一致,从而间 接保证了综合后网表的功能正确性。同样,时序特性也不需要再通过时序反标的动态仿真进 行验证,而可以通过静态时序分析技术进行验证。静态时序分析通过分析电路单元的时延特 性计算出路径的时延,给出关键路径等等时序信息。通过形式验证和静态时序分析,保证了 综合后网表的功能正确性和满足时序约束。 6 1 布局布线 浙江大学硕士学位论文 综合完成后,下一个步骤就是进行芯片的布局和布线。布局布线包括版图规划、管脚规 划、电源规划、标准单元的布局、时钟树生成、自动布线等等一系列过程。在布局布线的每 一阶段,都需要进行形式验证和静态时序分析以保证布局布线的正确性。如果必要,还需要 进行时序反标的动态仿真。 7 ) 流片、封装和测试 芯片版图设计完成后,就可以进行流片生产了。流片完成后,还需要对芯片进行封装和 测试。为了对芯片进行测试,必须在没计的过程中就考虑可测试性设计。通过在设计软硬f : 测试平台,对芯片进行系统全面的测试。 1 4 多媒体处理器m d 3 2 多媒体数字信号处理器m e d i a d s p 3 2 0 0 ( 简称m d 3 2 ) 系列是浙江大学信息与通信系统研 究所设汁的3 2 位r i s c d s p 混合结构的多媒体数字信号处理器,主要应用于音频,视频等 多媒体应用中。m d 3 2 多媒体数字信号处理器的结构如图1 ,7 所示: 图1 7 多媒体处理器m d 3 2 m d 3 2 采用r i s c d s p 融合结构,结合了r i s c 和d s p 的特点,其主要特性如下: 3 2 位指令和数据宽度。 指令集兼容m i p s3 2 指令集f 州同时增加了d s p 扩展指令和多媒体扩展指令。 采用流水线以提高指令执行效率。 采用单指令流多数据流s i m d 技术有效的增强了媒体处理能力。 采用片上c a c h e 以提高数据吞吐量。c a c h e 结构采用指令和数据分离的哈佛结构 提高了处理器核一t l , 和c a c h e 之间的数据带宽。 第1 6 页 浙江大学硕十学位论文 除了片上c a c h e 外,还包含片上r a m 作为片上数据存储器。 采用转移查找表( t l b ) 技术,通过虚拟地址有效的扩展了地址空间。 嵌入式j t a g 调试接口,支持硬件单步、断点等调试功能。 为了对m d 3 2 的设计进行快速的仿真验证,我们设计r 基于f p g a 的软硬件协同仿真 验证平台,利用硬件仿真高速度的特点加速仿真过程,同时利用基于平台的设计方法加速了 仿真环境的设计。 1 5 本文主要研究工作和内容安排 本文的主要研究工作都围绕3 2 位r i s c d s p 混合结构的多媒体数字信号处理器m d 3 2 的设计和验证展开的,相关成果已经得到了物理实现,且m d 3 2 芯片已经通过专家鉴定。 本文的主要工作和后面各章的内容安排如下: 第二章,探讨处理器的验证方法,以m d 3 2 为例,根据设计的要求,研究针对嵌入式 多媒体处理器的验证方法、验证过程。通过单元验证、结构验证、系统验证等步骤,利用时 序波形图、日志文件等验证手段,对m d 3 2 芯片进行全面的验证工作。 第三章,针对m d 3 2 的仿真和验证问题,提出基于f p g a 的、集仿真测试等功能于一 体的、系统平台( m p v t p ) 。这一平台具有可重配置性、可定制、易于调试、仿真速度快、 测试方便等优点。通过对硬件和软件子平台进行快速重配置,不但可以快速应用于不同的媒 体处理器的仿真,而且可以作为芯片的测试基台,具有较强的通用性,而且节省了用于单独 开发测试平台所需要的物质与时间消耗。 第四章,以m d 3 2 为目标,分析结合视频解码任务的数据访问特点,研究存储系统的 设计、优化。提出了用二维d r a a 控制器为核心、辅之以优化的总线协议,外部存储单元的 存储系统,来提升多媒体处理器的系统性能的方法。 第1 7 页 浙江大学硕士学位论文 第二章处理器验证研究 r 1 s c d s p 在结构和微结构组成方面较传统r i s c 和d s p 处理器都有不同,是在两者融 合的基础上进行设计的。m d 3 2 作为r i s c 和d s p 的混台型嵌入式媒体处理器,其结构和微 结构组成,以及相应的设计开发过程都较为复杂。因此,为了保证设计的正确性和叮靠件, 缩短设汁周期,m d 3 2 需要能够为设计提供全方位验证过程和测试手段的协同验证平台。本 章就是以m d 3 2 为例研究处理器协同验证平台的组成、没计及验证过程。 2 1 协同验证平台模型 验证是系统芯片设计中重要的环节。集成电路的集成度随摩尔曲线增加,而电路的功能 及逻辑验证随摩尔曲线平方速度增长。灵活、全面而准确的验证环境是系统芯片成功的关键 因素。但是系统芯片无论是设计规模还是验证难度都不同于以往的集成电路设计和验证,例 如在验证方面如何解决验证效率及费用时间等关键问题。 处理器验证过程中往往采用边界扫描或测试总线等方法,来获得对处理器核的访问控 制,从而对其进行测试。但这种方法灵活性有限,进行大规模的验证十分困难。基于软件的 测试方法可以有效的进行高覆盖率的功能验证,但是往往又会受到验证速度等方面的制约。 软硬件验证平台可以真实的模拟处理器在实际系统中的行为,是一种模型驱动的面向系统的 多层次模拟的验证环境。所以软硬件协同验证正是解决系统芯片测试的关键技术之。 嵌入式微处理器是系统芯片的核心。在嵌入式微处理器设计中,验证伴随始终。微处理 器的验证方法,即通过模拟激励及仿真结果分析来确定微处理器功能是否正确,需要重点解 决的问题就是验证完备性问题。 基于真实的工作环境来构建验证平台,是保证嵌入式微处理器功能正确性的关键。如图 2 1 所示,为嵌入式微处理器的软硬件协同的验证平台,其主要分为3 个层次:应用层、系 统层和物理层。 鹿_ f j 层包括操作系统或应用程序、编译器及汇编器。利用高层次的应用如音视频解码程 序,信号卷积程序等,对处理器进行测试、仿真。其中编译器能够实现高级语言向汇编语言 的转化,利用现有高级语言的各种调试工具进行系统设计加快系统设计速度。汇编器则将汇 编语言转化成机器码,是嵌入式处理器研制过程中不可缺少的系统软件之一,在验证初期阶 段就需要它提供各种支持,要为处理器的功能验证及逻辑验证提供可靠的支持,还要在软, 硬件协同设计及验证中起到关键的桥梁作用。 系统层包括、总线协议及与外设的连接关系,是连接应用层和物理层之间的桥梁。通过 总线协议及系统的连接关系,确立系统真实应用方案,使验证更加准确。 第1 8 页 浙江大学硕士学位论文 物理层包括嵌入式微处理器内核、总线接口定义及c a c h e 等,实际上构成的是验证平 台的目标机。在该验证系统中目标机描述有3 种模型”】:c ,c + + 语言构建的c 模型、硬件描 摩鬻。一, 叵圈啦胍 巫丑一 圆圈 堕丑一 2 2m i ) 3 2 验证平台 囤匣 2 1 软硬件协同验证平台 ( 系统层) ( 物理层) 本节提出m d 3 2 处理器在验证软硬件协同验证流程,如图2 2 所示。此验证过程的软平 台和硬平台都在一定程度上实现了软硬件之间的协同验证功能。比如在验证软平台中,用高 级语言或者汇编语言编写的应用程序可以在软件集成开发工具的帮助f 与硬件描述语言开 发的处理器进行协同仿真验证;而在验证硬平台中,应用程序可以在近实时的情况下与 f p g a 实现的硬件进行协同验证。并且,软硬平台验证过程之间也同时进行信息的沟通与交 流。 m d 3 2 软平台验证方法主要包括,在集成开发环境( 包括编译器、汇编器、仿真器及硬 平台的控制软件) 下对c 语言构建的m d 3 2 处理器模型进行的仿真验证,和在e d a 工具软 件中对硬件语言v e f i l o g 构建的m d 3 2 处理器模型( r t l 级、门级) 进行的仿真验证。软件 验证环境提供了基于e d a 软件工具的测试和仿真手段,包括对m d 3 2 处理器硬件描述进行 调试、仿真和测试的工具,如v e f i l o g x l ,n cv e r i l o g ,v c s 等。软件验证环境有两个输入: 一是不同验证过程所需的测试文件,二是m d 3 2 处理器硬件描述。软件验证环境读入m d 3 2 和测试文件后,便可以通过一定的系统命令进行仿真和验证过程。仿真过程的结果与来自测 试文件或设计者规定的标准结果进行比对,如果比对结果不匹配,则说明仿真过程中存在问 题,及时的将出现的问题反馈到测试文件和设计端,对其进行修正和解决。 m d 3 2 硬平台的验证方法主要在多媒体处理器仿真验证测试平台( m s v t p ) 上,对 f p g a 实现的m d 3 2 处理器模型进行的系统级仿真测试。利用逻辑分析仪、示波器等硬件电 路分析工具,对m d 3 2 硬件描述进行验证,给出的运行结果与软件结果、标准结果进行比 对,并将出现的问题及时反馈到输入端进行修改和调试。 通过进行面向模型驱动的多层次系统模拟的验证,以保证处理器的功能正确,并符合系 统的各项指标要求。 第1 9 页 浙江大学碗上学位论文 ,| 一一、, 结果比较j 、,一+ 7 图2 2m d 3 2 软硬件协同仿真流程 可见,图2 2 所示的m d 3 2 验证平台具有如下特点: 验证过程,f :行进行:验证软环境和硬环境鼠要得到了各自的输入,便可以开始各自的验 证过程,在时间上可以并行进行。 验证过程信息共享:在一个验证平台中发现的问题需要反馈到另一个平台的输入中去, 而另一个平台给出的验证结果同样反映了当前验证平台中输入信息存在问题。例如,在 验证软环境中发现羽l 解决的问题需要反馈到验证硬平台的输入中去,而在验证硬环境中 发现和解决的问题也同样要反馈到验证软环境中去。一个验证方法出现了问题,另一个 验证方法不论前面验证过程对错与否,都要重新进行。 验证目标相同:验证软硬平台的目标都是m d 3 2 处理器,都是为了发现m d 3 2 中存在 的问题,以及可能出现的错误。 验证软艇平台都是在m d 3 2 集成开发环境的支持下进行的。m d 3 2 集成开发环境是 m d 3 2 项蹦组自主开发的软件集成设计环境,包括编译器、汇编器、仿真器、调试器等 软件开发1 :具,具有可视化的用户界面和友好的软件仿真和调试功能。验证过程所需要 的各种软件测试程序都来自于m d 3 2 集成开发环境。 总之,对m d 3 2 不同层次、不同性质的验证过程都是一个不断的“验证修改再验证 专再修改”的循环过程。正是通过这种不断的回归测试4 0 ,4 ”,才能发现隐藏在m d 3 2 处理 器设计以及各个测试环节中的各种问题。 第2 0 页 渐扛大学硕士学位论文 2 3 功能验证 m d 3 2 处理器的设计验证是一个较为复杂的系统过程,如图2 3 所示。m d 3 2 设计流程 是在m d 3 2 验证软平台中进行的结构、微结构芯片设计的过程,大致可以分为3 部分:芯 片前端设计、芯片后端设计、仿真验证。每一个设计部分都由不同的设计小组分上负责。芯 片前端设计主要负责指令结构、微结构硬件描述的设计,芯片后端设计主要对前端设计结果 针对一定的目标工艺库进行布局布线等工作,直至流片。而验证测试则负责对整个芯片的设 计质量进行把关。所以,测试和验证对于芯片设计过程有至关重要的作用。 图2 3m d 3 2 设计验证流程 由于验证测试过程较为烦杂,周期较k ,所以当设计达到一定的正确性后,便可以通过 形式验证的方法对设计进行验证。所谓形式验证,是指针对设计中所做的修改,或者不同层 次、不同工具设计结果,利用一定的形式验证工具,与原有设计进行比对,验证两者是否具 有一致性【4 “。由于形式验证并没有对真正的电路实现进行比较,所以称其为“形式”验证。 综合后仿真和布局布线后仿真则保证芯片不仅在功能上,而且在时序、时延方面也能达到系 统要求。 功能验证针对设计中组合逻辑和时序逻辑特性,主要解决验证目标的实现是否与设计思 想一致的问题。对于一个复杂系统的验证工作,目前

温馨提示

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

评论

0/150

提交评论