![(电路与系统专业论文)嵌入式可重构媒体处理SoC的集成开发环境研究及应用[电路与系统专业优秀论文].pdf_第1页](http://file.renrendoc.com/FileRoot1/2019-12/13/30f1eb74-027e-42d5-85b6-7b0199b38d59/30f1eb74-027e-42d5-85b6-7b0199b38d591.gif)
![(电路与系统专业论文)嵌入式可重构媒体处理SoC的集成开发环境研究及应用[电路与系统专业优秀论文].pdf_第2页](http://file.renrendoc.com/FileRoot1/2019-12/13/30f1eb74-027e-42d5-85b6-7b0199b38d59/30f1eb74-027e-42d5-85b6-7b0199b38d592.gif)
![(电路与系统专业论文)嵌入式可重构媒体处理SoC的集成开发环境研究及应用[电路与系统专业优秀论文].pdf_第3页](http://file.renrendoc.com/FileRoot1/2019-12/13/30f1eb74-027e-42d5-85b6-7b0199b38d59/30f1eb74-027e-42d5-85b6-7b0199b38d593.gif)
![(电路与系统专业论文)嵌入式可重构媒体处理SoC的集成开发环境研究及应用[电路与系统专业优秀论文].pdf_第4页](http://file.renrendoc.com/FileRoot1/2019-12/13/30f1eb74-027e-42d5-85b6-7b0199b38d59/30f1eb74-027e-42d5-85b6-7b0199b38d594.gif)
![(电路与系统专业论文)嵌入式可重构媒体处理SoC的集成开发环境研究及应用[电路与系统专业优秀论文].pdf_第5页](http://file.renrendoc.com/FileRoot1/2019-12/13/30f1eb74-027e-42d5-85b6-7b0199b38d59/30f1eb74-027e-42d5-85b6-7b0199b38d595.gif)
已阅读5页,还剩77页未读, 继续免费阅读
(电路与系统专业论文)嵌入式可重构媒体处理SoC的集成开发环境研究及应用[电路与系统专业优秀论文].pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江大学硕士学位论文 摘要 本课题是“十一五”8 6 3 计划重点项目一嵌入式可重构移动媒体处理核心技 术的子课题之一。主要研究内容为多核媒体处理方案的开发调试工具的研发。 媒体处理技术是信息技术的核心领域,随着媒体处理算法复杂度的不断增 加和媒体标准的逐渐多样化,传统的a s i c 或g p p 的实现方式已逐渐不能满足媒 体处理应用的需要。可重构媒体处理s o c 采用“r i s c 处理器+ 可重构计算阵列” 的可重构计算体系架构媒体处理应用提供了一种新的解决途径。 基于可重构计算s o c 的媒体应用解决方案需要良好的集成开发环境支持。集 成开发环境包括两个重要的组件:软件模拟器和远程调试系统。针对可重构多核 的s o c 架构,对集成开发环境中的软件模拟器和远程调试系统进行了重新的设 计。本文提出了一种基于插件机制的软件模拟器,能够很好的满足模拟调试的需 求,并且模拟器结构简洁,易于扩展。针对可重构多核的远程调试需求,本文提 出了一种主动式断点触发的多计算核心调试方案,该方案结构简单,易于实现, 并且硬件资源少,易于扩展。 关键词:可重构多核集成开发环境软件模拟器远程调试 浙江大学硕士学位论文 a b st r a c t t h em e d i ap r o c e ssi n gt e c h n i q u ei so n eo ft h ek e yd o m a i n so fi n f o r m ti o n t e c h n o l o g y w i t ht h ei n c r e a s i n gc o m p l e x i t yo ft h em e d i ap r o c e s s i n g a i g o r i t h m sa n dt h ed i v e r s i t yo ft h em e d i as t a n d a r d ,t h et r a d i t l e n a la s i c o rg p pm e t h o d sc a nn ol o n g e rs a t is f yt h ea p p l i c a t i o nr e q u i r e m e n t an e w a p p r o a c hi sp r e s e n t e dt h a tw ec a ns o l v et h isp r o b l e mb yt h er e c o n f i g u r a b l e m e d i ap r o c e s s i n ss o c ,w h i c hh a sac o m p u t i n ga r c h i t e c t u r ec o m p o s e do ft h e r i s cp r o c e s s o ra n dt h er e c o n f i g u r a b l ec o m p u ti n ga r r a y t h em e d i aa p p li c a ti o ns o l u ti o nb a s e do nt h er e c o n f i g u r a b l es o c r e q u ir e s a g o o di n t e g r a t e dd e v e l o p i n ge n v i r o n m e n t t h e r ea r et w o i m p o r t a n tp a r t so ft h i si n t e g r a t e dd e v e l o p i n ge n v ir o n m e n t ,t h es o f t w a r e s i m u l a t o ra n dt h er e m o t ed e b u gs y s t e m i nt h isp a p e r ,w er e d e s i g nt h e s e t w op a r t so ft h ei n t e g r a t e dd e v e l o p i n ge n v i r o n m e n tf o rt h er e c o n f i g u r a b l e s o ca r c h it e c t u r e a ne l e g a n ta n de x t e n d a b l es i m u l a t o rb a s e do nt h ep l u g i n m e c h a n is misp r e s e n t e di nt h isp a p e r ,w h i c hs a t is f i e st h er e q u i r e m e f l to f si m u l a ti o na n dd e b u g t om e e tt h ed e m a n do fr e m o t ed e b u gf o r t h e r e c o n f i g u r a b l e m u l t i - c o r es y s t e m ,w ea 1s o b r i n g f o r w a r da na c t i v e b r e a k p o i n t t r i g g e r e dd e b u gm e t h o d o l o g yf o r t h em u lt i c o r es y s t e r n t h is m e t h o d o l o g yh a sas i m p l ea r c h i t e c t u r ea n di se a s yt or e a i i z e b e s i d e st h a t , itc o n s u m e sa1 ittl eh a r d w a r er e s o u r c ea n dise a s yt oe x t e n d k e yw o r d s :r e c o n f i g u r 8 b l e ,m u lt 卜c o r e ,i n t e g r a t e dd e v e l o p i n ge n v i r o n m e n t , s o f t w a r esi m u l a t o r ,r e m o t ed e b u g i i 浙江大学研究生学位论文独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的 研究成果。除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发 表或撰写过的研究成果,也不包含为获得浙江大学或其他教育机构的学位或 证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文 中作了明确的说明并表示谢意。 学位论文作者签名:签字日期:调。年多月f o i t 学位论文版权使用授权书 本学位论文作者完全了解浙江大学有权保留并向国家有关部门或机 构送交本论文的复印件和磁盘,允许论文被查阅和借阅。本人授权浙江大学 可以将学位论文的全部或部分内容编入有关数据库进行检索和传播,可以采用影 印、缩印或扫描等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后适用本授权书) 靴敝储獬:嘏 签字日期:w 年 月l o 昌 翩签名受一 l r 签字日期:谚一年3月,6 日 浙江大学硕士学位论文 1 绪论 五光十色的自然界,由光波载入人眼在眼睛的视网膜上重新成像,经过光敏 细胞、视网膜、视神经系统传递到了。大脑皮层的视觉区,再经过了综合处理而产 生了视觉。媒体处理技术就是根据人眼视觉特性以一定的信号形式实时传送活动 景物的技术。随着媒体处理技术的不断发展,人们的休闲娱乐生活变的更加的丰 富多彩。 媒体处理技术是信息技术的核心领域。随着人们对媒体处理质量要求的不断 提高,各种高清晰度的音视频格式不断涌现,媒体处理计算的复杂度也随之越来 越高。 1 1 背景及意义 目前,随着多种视频与音频格式的出现,支持它们及其应用的设备也在变得 日益复杂,从而催生了成本更高且更为复杂的半导体设计方案。在媒体处理应用 中包含了大量的解析、运动矢量预测、内插、运动补偿、c a b a c 运算及其它计算 复杂高的任务。这些任务如果都采用单一内核s o c 结构会导致整体运算效率低 下,这主要是由单一内核结构的局限性造成的。一、单一内核的计算频率已接近 目前半导体的工艺极限,仅靠提高频率的办法,无法满足性能的要求。二、随着 媒体算法中并行化要求的提高,而在单一线程中无法增加更多的并行性。三是单 一内核结构的功耗比较大。 可重构多核结构是一种将软件的灵活性和硬件的高效性结合在一起的s o c 结 构,在性能、功耗和灵活性等关键指标之间具有更好的平衡,填补了通用计算和 专用计算之间的空白,正日益获得广泛的研究和应用。其核心思想是整个计算结 构用一个固定的处理器核心和一个或多个数字逻辑单元来组成,该结构的软件模 型被切分成相应的不同部分,分别映射在处理器核心和数字运算单元上。可重构 多核结构采用处理器+ 可配置硬件加速模块的方式,一方面保留了处理器带来的 灵活性特点,而且可以根据不同的具体需要配置不同的硬件加速模块来满足不同 的计算需求,另一方面,将计算中的可并行部分通过硬件加速模块进行充分的发 掘,可以获得计算性能的极大提高。目前国际上一些处于垄断地位的芯片公司已 经在可重构多核s o c 芯片的设计上进行了大量的尝试,并且推出了一系列商用产 品。 浙江大学硕士学位论文 可重构多核s o c 的解决方案包括两个部分:可重构多核s o c 芯片+ 面向可重 构多核结构的嵌入式软件开发。在媒体处理方案的研究中,重点往往集中在硬件 架构和v l s i 的实现上,然而随着媒体应用的计算复杂度的不断提高,软件开发 的进度、成本和性能渐渐的成为媒体处理应用开发的瓶颈。要缩短t t m ( t i m et o m a r k e t ) 周期,提高软件开发效率,一个功能强大,界面友好的集成开发环境( i d e , i n t e g r a t e dd e v e l o p m e n te n v i r o n m e n t ) 的作用是至关重要的。为媒体处理s o c 的应用开发提供完善的工具链、标准的测试程序、完整高效的集成开发环境这些 问题成为了媒体处理领域一个需要研究和改进的重点。 1 2 国内外研究发展状况 集成开发环境( i n t e g r a t e dd e v e l o pe n v ir o n m e n t ,i d e ) 是用于提供程序 开发环境的应用程序,一般包括代码编辑器、编译器、仿真器、调试器和图形用 户界面工具。就是集成了代码编写功能、分析功能、编译功能、调试功能等一体 化的开发软件服务套。集成开发环境可以独立运行,也可以和其它程序并用。集 成开发环境将编辑、编译、调试等功能集成在一个界面统一的桌面环境中。由于 嵌入式系统往往需要在独立的开发主机中进行程序的开发,i d e 渐渐成为了最重 要的开发工具。集成开发环境的著名例子有微软的v i s u a ls t u d i o 系列,b o r l a n d 的c + + b u il d e r 、d e l p h i 系列等。 早期的编程语言在送交编译器处理之前,需要先经过流程图、撰写表格、打 卡这些步骤,所以当时并不需要i d e 。b a si c 是第一个有i d e 的编程语言,同时 也是第一个可以直接在主机或终端机前开发程序,他的i d e ( d a r t m o u t ht i m e s h a r i n gs y s t e m 的一部份) 是采取命令列的方式,并不像现代的i d e 使用选单 和图形化。但是他良好的整合了编辑、档案、管理、编译、调试、执行等功能, 符合现代化i d e 的特性。 近几年来,i d e 逐渐变得开源化和扩展化。e c li p s e 和n e t b e a n s 这类开放源 代码i d e 的出现和流行,在结合开放源代码的“开放”、“可扩张”精神之下,激 发了人们成立社群延伸这些i d e 的能力,让这些i d e 也能支持其他编程语言和其 他的应用。 在半导体技术快速发展的今天,以高性能移动计算,交互式媒体处理等为代 表的新一代应用,对芯片的性能、功耗、灵活性、集成度和成本等多个方面同时 浙江大学硕士学位论文 提出了苛刻的要求,以传统的以通用处理器为代表的单核s o c 已很难满足上述要 求,多核s o c 芯片的应用日益广泛,半导体技术进入了多核s o c 时代然而目前 大家基本上仍然在用传统的开发工具来进行多核s o c 开发,用于多核s o c 开发的 集成开发环境还处在单核阶段,在芯片系统规模比较小的时候,采用传统的开发 工具还勉强可以应付。但随着系统规模的增加和复杂度的提高,传统的开发工具 已经无法满足开发的需要,在很大程度上成为可重构多核s o c 开发的障碍。 调试工具是嵌入式开发工具中的最重要一环。目前针对可重构多核系统已经 有了一些相应的调试方案。 w i n dr i v e r 的多核s o c 调试解决方案,能够支持i n t e li o p 3 4 2 处理器,利 用高性能的j t a g ,不仅可以对硬件进行调试,而且可以在运行不同操作系统的 多个内核之间进行复杂的交互,从而有效地支持开发人员缩短调试一编译一编辑的 周期。w i n dr i v e r 的w o r k b e n c ho n - c h i pd e b u g g i n g 解决方案提供了先进的图 形化j t a g 开发环境,使得电子产品制造商可以在通用的框架中建立标准化的硬 件b r i n g - u p 、k e r n e l 调试和包括操作系统、中间件和应用在内的软件开发、测 试和生产。这种技术提供了对于复杂的3 2 位和6 4 位多处理系统的支持,不论这 些处理器是在单一芯片之内,还是在单一线路板或者多个线路板之内。 a r m 的c o r e s i g h t 多核调试架构利用一个5 引脚的j t a g 接口,提供了独立的 j t a g 访问多核模式。c o r e s i g h t 设计包提供了强大的调试接1 2 ,可利用最小的芯 片面积和引脚成本对与c o r e s i g h t 兼容的多核s o c 提供单点调试和跟踪。 c o r e s i g h t 跟踪技术在保证引脚和芯片面积最小的同时,允许对多个器件的实时 指令和数据进行跟踪,其中多个跟踪源可以通过一个跟踪端1 2 接口单元( t p i u ) 从片外获得。 1 3 研究内容 本课题的主要研究内容为研发面向嵌入式可重构媒体处理计算核心r m s ( r e c o n f i g u r a b l em u lt i - m e d i as y s t e m ) 的集成开发环境,为该媒体处理器的 用户开发提供友好的开发工具支持。r m s 是一款采用“r i s c 处理器+ 计算阵列” 的可重构计算体系架构的媒体处理s o c 芯片,内嵌的r i s c 处理器选用的是a r m 公司的a r m l l ,计算阵列为可配置计算阵列( r c a ,r e c o n f i g u r a b l ec e l1a r r a y ) 。 浙江大学硕士学位论文 1 3 1 课题内容介绍 本课题实现的嵌入武可重构媒体处理计算核心的集成开发环境( r m s - i d e , r e c o n f i g u r a b l em u l t i m e d i as y s t e mi n t e g r a t e dd e v e l o p m e n te n v ir o n m e n t ) 的基本结构如图1 2 1 所示,研究的主要内容包括以下三部分。 p , - i s - i d _ _ e _ 集成开发环境界面( g t s i d eg u i ) 图1 2 1r m s - i d e 结构图 一是软件模拟器设计:研究可重构媒体处理器的静态结构模拟方法和动态行 为建模策略;依据可重构媒体处理器的硬件结构,研究不同精确程度的仿真模型 的描述方法,研究高效仿真模型的设计技术;研究可重构媒体处理器模拟器的可 配置,修改、调试的软件架构技术;研究可重构媒体处理器模拟器的用户界面、 程序调试的设计技术;研究可重构媒体处理器模拟器运行时的资源优化、加速模 拟技术。该模拟器可实现断点操作、单步执行等功能,能输出嵌入式处理器、可 重构r c a 、存储器等模块内部基本动态信息。如何准确描述可重构处理器内部的 数据流关系,建立周期精确软件模型是这部分工作面临的技术难题。 二是硬件仿真调试器设计:研究可重构媒体处理s o c 的硬件仿真器设计技术 和j t a g 调试技术;该仿真调试器包括计算机接口与j t a g 接口的转换器,可通过 j t a g 口实现断点操作、单步执行等硬件调试功能,能输出嵌入式处理器、r c a 阵列、存储器等模块内部基本动态信息。如何通过j t a g ( j o i n tt e s ta c ti o n g r o u p ,国际标准测试协议) 接口驱动r c a 阵列的调试电路,驱动r i s c 处理器、 r c a 阵列和外设等部件的远程调试等是这部分工作面临的技术难题。 三是软硬件集成开发环境界面:集成可重构处理器的任务编译器、硬件调试 器、软件模拟器,设计友好的用户界面,最终形成完整的集成开发环境。 1 3 2 谋是中提出的创新点 在本课题中的提出创新点包括两个主要部分基于插件机制的软件模拟器和 主动武断点触发的远程调试方案。 软件模拟调试是在开发主机上通过软件方式模拟目标机器的运行环境的方 式进行嵌入式软件调试的一种重要调试方式经过调研,在本文中提出了一种基 于软件插件技术的软件模拟器方案相较传统的模拟嚣开发方武,该方案的可维 护性好,代码相互之间相关性小,易于对代码进行修改;其次可扩展性好,插件 化的系统结构带来了良好的扩展性新的功能模块可以通过插件的形式开发,相 对独立,不会彰响系统中其他功能模块的运行 针对嵌入式可重构媒体处理计算核心r m s 的远程调试需求,本文提出了一种 适用于可重构多棱s o c 架构的主动武断点触发的远程调试方案 主动武断点触发的远程调试方案的整体结构如图l 22 所示,包括五个主城 部分:运行于开发主机端的集成开发环境的远程调试器客户端,实现开发主机和 目标系统通信的远程调试仿真器,目标系统中的主调试计算核心( a r m l l ) ,目标 系统中的从调试计算核心( 可配置计算阵列r c a ) ,r c a 中的专用调试硬件模块 ( r d m ,r c ad e b u g g e rm o d u l e ) 。 o 。 图1 22 主动武断点触发的远程调试方案的整体结构 主动武断点触发的多计算核心调试方案通过在r c a 内部进行精确的断点设置 浙江大学硕士学位论文 的方法捕获调试所需要的信息,能够提高多核s o c 远程调试的效率和准确率。该 方案的特点有以下几个方面: 一、方案采用单个j t a g 调试接口来实现多计算核心的远程调试。 二、方案中的数据流、控制流采用不同数据通路的通信结构。 三、目标系统r m s 中增加专用调试模块进行断点操作,提高调试效率。 四、实现多计算核心的协同调试,能够获得r m s 调试时的精确快照。 1 4 本文内容及组织 论文的结构安排如下: 第一章绪论,介绍本文的工作背景、研究内容以及本文的主要工作和组织结 构。 第二章介绍可重构多核媒体处理方案的关键技术。 第三章介绍可重构多核s o c 的模拟器技术。 第四章介绍了面向可重构多核s o c 的主动式断点触发远程调试方案。 第五章对本文做了总结。 6 浙江大学硕七学位论文 2 可重构多核媒体处理s o c 芯片 嵌入式可重构媒体处理计算核心r m s ( r e c o n f i g u r a b l em u l t i - m e d i as y s t e m ) 是一款面向交互式图形、图像和视频实时处理等高密度媒体信号计算,采用新型 可重构多核处理器架构的s o c 芯片。项目整体研究了动态配置、多任务调度和运 行管理等嵌入式高性能、低功耗并行计算关键技术,能够满足高性能媒体处理应 用的计算需求。 新型可重构媒体处理器s o c 芯片开发的关键技术包括: 一、图形、图像和视频实时处理共性技术。 二、动态配置、多任务调度和运行管理技术。 三,可重构运算单元( r c ) 和阵列架构。 四、可重构媒体处理s o c 硬件架构。 五、面向可重构多核s o c 芯片的集成开发环境。 上述关键技术整合成一个完整的可重构多核媒体处理解决方案,各项关键技 术之间的相互关系如图2 1 所示: 图2 1 可重构多核媒体处理解决方案示意图 首先通过研究图形、图像和视频等媒体处理算法中的处理共性技术来提取各 种媒体处理算法的算法模板库,再由任务编译器将算法模板库的算法经过动态配 置调度分解为适于不同运算单元的两个部分,分别映射到可重构多核s o c 的两个 不同的运算单元,r i s c 处理器和可重构计算单元阵列( r c a ) 上进行计算。可重 构媒体处理s o c 芯片采用的是“r i s c 处理器+ 可重构计算阵列”的可重构计算 浙江大学硕士学位论文 体系架构。其中可重构计算阵列由多个可重构计算单元组成,专门用于处理媒体 处理算法中的并行算法部分。面向可重构多核s o c 芯片的集成开发环境是开发 人员进行软硬件协同设计的重要开发工具,对可重构多核s o c 开发效率的提高至 关重要。 2 1 可重构计算概述 可重构计算( r e c o n f i g u r a b l ec o m p u ti n g ,r c ) 的概念早在2 0 世纪6 0 年代 就已提出i l lo 并应用在了很多的方面,比如在通用微处理器上也运用了这一思想, 如组件就是利用多路选择器来实现功能的变化,而这些组件一般与计算结构不发 生直接联系。目前,可重构计算已有较大发展,主要目标是希望通过硬件可配置, 来自适应计算任务的需求,以期达到最佳性能;而且这种硬件结构的变化,能实 时地适应计算任务要求的变化。 可重构概念提出的时候半导体工艺还无法为其提供足够的支撑,但现在新的 半导体工艺为可重构硬件带来千万门级电路的技术,从而为可重构硬件提供足够 的面积;在速度上,可重构硬件的性能也正在接近专用定制芯片。可重构计算在 图像,视频,特征提取,神经网络等诸多领域具有巨大的研究潜力。 目前在可重构方案存在多种方案,包括:f p g a 可重构,d s p 等信号处理器可 重构,可重构计算阵列等。 f p g a 可重构的底层技术是f p g a 技术:反熔丝技术( 即通常所说的电可擦写 技术) 和静态存储器( s t a t i cr a n d o ma c c e s sm e m o r y ,r a m ) 编程技术,可以分 为动态系统重构和静态系统重构两大类。采用f p g a 的可编程特性可以适应不同 的处理算法,优点是可重构性能好,缺点是f p g a 需要特殊工艺的支持,无法在 普通工艺上实现,且嵌入f p g a 单元额外增加了芯片成本。 d s p 等信号处理器可重构,即利用d s p 的可编程特性适应不同处理算法,优 点是由重构好,适应性强,但缺点是可重构采用指令方式进行,无法获得很高的 效率能耗比,在移动设备上难以实现低功耗;模块级可重构,即将音视频算法 划分为功能类似的多个模块,如b i t 流处理引擎、量化反量化单元、d c t i d c t 单元、y u v - r b g 变换单元、运动估计单元等,通过内嵌的微处理器实现各个模块 的级联运算,其优点是效率能耗比高,且可以适应多种媒体格式,但缺点是可 重构特性受到很大限制,可处理的音视频算法必须具有较大的相似性。 * 大学顿学位论i 可重构计算阵列技术,在l9 世纪6 0 年代早期由u c l a ( u n l v c r s l t yo f c a li f o r a i aa tl o sa n g e l c s ) 的g e r a l de s tr j n 提出了一种固定+ 可变机构的计 算模型( f i x e dp l u sv a r i a b l c f + vs t r u c t u r oc o m p u t e r ) 是可重构多核s o c 的最早的雏形“1 ,其核心思想是用一个固定的处理器核心和一个或多个数字逻辑 单元柬组成,该结构的软件模型被切分成相应的不同部分,分别映射在处理器核 心和数字逻辑单元上。上世纪9 0 年代之后,这一研究领域又重新获得人们的重 视”1 ,各种不同的可重构架构层出不穷,已经成为国际集成电路的研究热点, 例如欧洲徽电子中心( i m e c ) 的a d r e s 处理器“1 由紧耦合的超长指令字( v e r yl o n g i n s tr u c t i o nw o r d ,v u w ) 处理器内按和粗颗粒度并行矩阵计算的可重构硬件构 成 随着对可重构计算研究的不断深入,除j 学术界设计完成的多款可重构处理 器以外,一系列商用可重构处理器被研制出来20 0 4 年,f r e e s c a l e 公司推出7 m r c 6 0 1 1 处理器“1 这是f r e e s c a l e 的第一款可重构计算结构的商用处理器,通 过p e 阵列实现20 g ,3 g 基站的基带处理以及宽带无线访问系统。该可重构处理 器采用01 3 微米的工艺设计,核心逻辑的工作频率2 5 0 m f f z ,功耗在3 w 左右同 样在2 0 0 4 年,i n t e l 公司在它的r c a ”1 可重构通信阵列上实现了w l n ,竭和4 g 等诸多无线通信基带协议 囤21 m r c 6 0 1 1 处理器的结构困 浙江大学硕士学位论文 2 0 0 7 年,p a c tx p pt e c h n o l o g i e s 公司推出了x p p - i i i 可重构处理器协1 。 x p p - i i i 是一款用于信号处理应用的软件可编程独立处理器。它把粗颗粒可配置 矩阵与用于控制流代码的连续架构结合起来。一个x p p - i i i 内核具有4 0 个a l u 、 1 6 个r a m 编程单元和8 个功能p a e ( p r o c e s si n ga r r a ye l e m e n t ) 。 r a 删 朋s 融黝 黝s n 盎 d a 诒l l o wa r r a y i同憾ito-bus毒xpp23 0 1 6 一一 y ” 7 c , o n h g u r a t i o n 图2 1 2x p p - i ii 的结构图 2 2 可重构计算单元阵列的设计 耋 萎 | 2 可重构计算阵列重构的颗粒度较f p g a 大,但比d s p 、模块级可重构小,计算 阵列采用配置流改变计算阵列功能及计算阵列的互联,力争获得与硬件加速器接 近的能耗效率,且不牺牲可重构特性。 一个可重构计算单元( r c ,r e c o n f i g u r a b l ec o m p u ti n gc e l1 ) 的结构如图 2 2 1 所示,其中包括一个a l u 单元和三个m u x 单元,这些运算单元可以通过配 置寄存器对功能进行配置,不同的配置可以实现不同的运算功能,可重构计算单 元的运算功能包括加、减、乘、除、位移等。通过配置寄存器的设置,还可以为 可重构计算单元选择不同的输入数据的来源和运算结果的输出。 1 0 浙江大学硕士学位论文 图2 2 i 可重构计算单元结构图 图2 2 2 可重构计算单元阵列结构图 1 1 浙江大学硕士学位论文 整个可重构计算单元阵列( r c a ,r e c o n f i g u r a b l ec e l la r r a y ) 由8 x 8 的计 算单元构成,通过a h b 2 0 的接口和其他设备进行通信。r c a 中的数据缓存的作 用为每个计算单元的运算提供数据输入端和存储输出数据。r c a 的配置寄存器用 于配置各个计算单元的运算功能,通过不同的配置,r c a 可以实现不同的运算功 能。 2 3 可重构多核媒体处理芯片结构 通用处理器核心( g p p ) 是基于指令集驱动的,具有良好的灵活性,然而由 于处理器是一个串行处理的机器,指令的串行化执行方式和频繁的存储器操作, 成为了应用程序运行效率提高的瓶颈。 完全定制化的硬件模块( a s i c ) 能够充分利用特别应用中的并行化特性,根 据应用程序进行特别的设计和优化,可以使运行的效率得到最大化的提高,但同 时在提高计算性能的同时也就不可避免的带走了灵活性,所以在不同的标准情况 下,或者是在多算法混合使用的领域应用中,完全定制的数字电路模块由于其固 定的结构和功能往往无法满足用户具体的需要。 可重构多核s o c 技术采用处理器+ 可配置硬件加速模块的方式,一方面保留 了处理器的灵活性,而且可以根据不同的具体需要配置不同的硬件加速模块来满 足不同的计算需求,另一方面,将计算中的可并行部分通过硬件加速模块进行充 分的发掘,来获得计算性能的极大提高。 糌 校 罹 涩 趟 功能的灵活性 图2 2 1 可重构多核s o c 与其它计算结构的比较 浙江大学硕士学位论文 可重构多核媒体处理芯片r m s 基于9 0 h m 工艺设计,内嵌高性能r i s c 内 核a r m l l 作为应用处理器,完成媒体处理算法中不适宜采用并行化出路部分的 控制逻辑处理,还包含一个8 x 8 的计算单元构成可重构计算阵列( r c a ) 用于处 理媒体处理算法中的可并行部分。整个芯片的结构采用a m b a2 0 协议连接, 骨干总线采用a h b 总线接口。整体结构如图2 2 2 所示。 s r m 1 2 c a r m l l s d i u n o r l c d c f l a s h d d r n a n d r t c 1 - c a c h ed - c a c h e f l a s h i n t c uuu t i m e r a h bap w m g p p 1 8 卅卜 bp m u 0 u a r t 秽i | 。一臻 a h b 2 a p b m p l l 冬 l ,b r i d g e s p i ; r e c o n f i g u r a b l e ; ;二 c e l l a r r a y l a c 9 7 0 d m a c i囊 s d 碱。| j 泌“t ! z t 镌 图2 2 2 可重构多核s o c 的芯片结构 芯片支持的外设包括: ( 1 ) 存储接口支持,支持1 6 位s r a m n o rf l a s h ,8 位s l cn a n df l a s h 和 1 6 3 2 位s d rs d r a m 。 ( 2 ) 支持t f tl c d 接口。 ( 3 ) 支持a c 9 7 双声道数字音频输出。 ( 4 ) 支持u a r t s p i i r d a 低速外部设备接口。 ( 5 ) 支持删c s d s d h c 存储卡接口。 ( 6 ) 支持r t c t i m e r p w m w at c h d o g 功能。 ( 7 ) 内嵌d m a 控制器,支持快速数据传输。 ( 8 ) 支持可配置g p l 0 和外部中断。 ( 9 ) 支持高级功耗管理模式,节省芯片功耗。 2 4 媒体处理算法共性技术 ( 该部分内容引自西安交通大学文档) 图形、图像、视频处理等媒体处理算 法中包含着一些算法的共性特征,通过对这些共性特性的研究,可以根据媒体处 1 3 浙江人学硕士学位论文 理算法中的共性进行算法的软硬件划分和并行化处理,以引导出最优的可重构处 理器体系结构的设计。 媒体处理的典型算法包括音视频、图像、图形和通信基带处理领域的主流算 法,可以分成三类: 信道编码算法:将在信道中传输的数字电视信号进行解调制。数字电视的传 输途径可分为三种:数字卫星电视、数字有线电视和数字地面开路电视,由于它 们的传输途径不同,它们的信道编码也采用了不同的调制方式。 信源编码算法:信源编码技术解决的重点问题是数字音视频海量数据( 即初 始数据、信源) 的编码压缩问题。利用人类听觉视觉效应去除信号中的多余成分, 在不影响收听收看效果的前提下尽量压缩数据率。包括h 2 6 4 、a v s 、n p e g l 2 4 、 m p 3 、a a c ,a m r 、o g g 解码算法等; 视频后处理算法:由于数字电视信号在信道传输的过程中和编解码的过程中 引入的噪声和干扰,需要对解码后的电视信号进行后处理操作,包括图像尺寸缩 放( s c a l e ) 、去隔行( d e - i n t e r l a c i n g ) ,图像增强,帧频变换、图像降噪、亮 度色度瞬态提升、对比度增强、图像锐化,颜色增强和菜单显示( o s d ) 等。 首先通过选择媒体处理算法中的典型算法如m p e g - 2 ,h 2 6 4 ,a v s 等,完成算 法程序设计,组成基准测试程序包。然后通过分析基准测试程序包中每一个程序, 找出每个程序中运算量大、形式规则,相关性弱这类适合与用可重构阵列并行运 算的任务。 研究不同程序的这些任务之间的相似性,归纳总结出一系列可能适合在可重 构阵列上加速的核心算法功能单元( f u n c t i o nu n i t ,f u ) ,再由核心算法功能单元 f u 组成任务集合。图形、图像和视频编解码算法中的共性技术可以归纳为如下 三个方面。 一、基于块和宏块的并发操作。在运动图像系列标准中,基本的编解码操作 都是基于宏块( 1 6 1 6 象素) 和块( 8x8 象素) 来进行的。在m p e g 一2 和m p e g - 4 标准中,基于宏块进行运动估计和运动补偿来压缩时间冗余,基于块进行d c t 和i d c t 来压缩空间冗余。m p e g 一4a v c h 2 6 4 标准中引入了1 6 8 、8 1 6 、8x4 、 4 8 、4x4 等的编码模式;a v s 标准在则经过简约,只引入了1 6 8 、8x1 6 的 块操作模式。在j p e g 标准中,也是采用基于8x8 象素块进行d c t 和i d c t 来编 浙江大学硕士学位论文 解码。 二,计算复杂度的高度集中。比如在m p e g 系列标准中,虽然标准中包含了 多种算法,但是主要的计算量集中在少数的几种算法中。例如:在m p e g - 4 编码 ( q c i f 格式,采用d s p 处理器实现) 器中,运动估计占了6 6 的计算量、运动 补偿占了1 5 的计算量、o c t 和c a e 占了1 3o a 的计算量。在m p e g 一4 解码器中, 运动补偿占了10 的计算量、i d c t 占了9 的计算量、m b - p a d d i n g 占了1 4 的 计算量、d e b l o c k i n g 和i q 占了l3 的计算量,r v l d 和访存占了4 0 的计算量。 可以得出的结论,在图形、图像和视频编解码系统中,主要的计算集中在m e 、 m c 、d c t 、i d c t 、r v l d 、d e b l o c k i n g 等算法上。 三、规则的数据依赖关系。在图形、图像和视频编解码中,一个显著的特点 是编解码算法所需的数据流十分规整,数据依赖关系比较简单明确。由于图像的 编解码都是基于宏块和块进行操作的,因此一个块内所有的数据都有相同的数据 依赖关系,在编解码时可以简单的进行块级的数据操作,无需针对某个象素或某 几个象素频繁和难以预测的进行复杂的访存操作。 根据任务和功能单元划分的集合,将基准测试程序包中的各个程序进行软硬 件划分和并行化修改,形成适合可重构多核s o c 架构的算法模板库。 2 5 任务编译器 可重构多核s o c 结构的任务编译器不同于传统的单核处理器的程序语言编译 器。由于在可重构多核s o c 的架构中不仅有指令流驱动的r i s c 处理器,还有数 据流驱动的可重构计算阵列。目标程序编译出来的结果需要包含有在r i s c 处理 器上运行的二进制的指令代码,还需要包含有运行在可重构计算阵列上的配置代 码。可重构多核s o c 的目标代码编译的流程如图2 5 1 所示。 应用程序代码首先经由软硬件划分模块( h w s wp a r ti ti o n ) 被自动最优划 分为在r i s c 处理器上执行的s w - p a r t 和在可重构计算阵列中执行的h w - p a r t ; s w - p a r t 部分的代码经由代码标定模块,进行软硬件接口标注( b a c ka n n o t a t i o n ) 和软硬件通信支持代码生成,生成“被标注代码”( a n n o t a t e dc o d e ) ;h w p a r t 部分代码经由配置信息生成模块,与可重构计算阵列所支持的算法电路库进行匹 配、任务调度和任务映射,生成“配置信息”( c o n f i g u r a t i o nc o d e ) ;而后“被 标注代码”和“配置信息”进入代码融合模块,被软硬件通信接口被整合为由高 缎语言描述的完整代码( c o d em e r g e n c e ) ,该代码可被标准编译器( t ar g e t p i a t f o r mc o m p i1 e r ,如a l - m g e e ) 编译和处理 图251 任务编译器流程图 任务编译器具备高级语言的处理、中间语言的转换,可重构计算阵列配置信 息生成目标处理器的代码生成等功能;能够将媒体应用程序编译成在可重构多 棱媒体处理器上高效运行的目标代码甘标代码包括r i s c 处理器的指夸信息流 和可重构可重构计算阵列的配置信息流。目标代码可在可重构多棱$ o c 平台上高 效并发执行: 2 6 可重构多核s o c 的集成开发环境 可重构多校s o c 芯片r m s 的应用系统泉构包括硬件结构部分、底层软件和应 用软件以及开发支持软件三个部分,如图1 4 1 所示 硬件部分主要包括可重构多棱s o c 芯片、外围设备l c d 、电源等。 底层软件和应用软件部分包括b i o s 、底层驱动软件,o s 、应用软件等 开发支持较指的就是是一个完整集成了工具链,调试器、模拟器以及可视化 羿面的集成开发环境 随着s o c 芯片的复杂度的不断提高,在s o c 设计的领域遣渐出现7 新的趋势。 1 6 浙江大学硕士学位论文 其中最主要的问题是伴随着媒体处理算法的越来越复杂,应用软件的规模也日趋 庞大,相应的就会带来软件开发时间变的很长,这就给集成开发环境的设计带来 了压力。集成开发环境需要能够提供更多的自动化功能,针对不同的应用系统进 行一些自动优化,提高软件的效率。另一方面,软件的调试工作在软件的整体设 计过程占的份额将会越来越大,软件的调试工作的顺利进行正日渐成为软件开发 进程的瓶颈。针对可重构多核的s o c 结构,如何设计一套功能强大,调试效率优 良的调试工具也就成为了本课题的一个重点问题。 目标系统开发主机 应用任务应用任务 应用任务 系统服务( 网络等) 特 特 殊殊 功 功 能 能 实时操作系统( 0 s ) 模模 块 块 设备驱 底层系统软件( b 1 0 s 等) 动程序 系统硬i 0全局存 件 处理器 设备储器 模拟电路接模拟 a s i c 处理单元阵硬件调 口 电路电路列试模块 应用程序 蛩“ 。“hj ” 一镩 编译器 ; , 链接器 调试器模拟 驱动器 :硬件i 调试器: 。魄:,h ,。,。女 图1 4 1 可重构多核s o c 应用系统的软硬件结构 2 6 1 集成开发环境的功能 集成开发环境r m s - i i ) e 主要功能是满足开发人员的应用软件开发调试需要, 提供具有可视化图形界面的开发调试支持工具。p s t s - i d e 的主要功能部件如图 2 6 1 所示,共包括6 大部件: 一、工程管理模块。 二、代码编辑模块。 三、编译链接模块( 工具链) 。 四、调试和分析工具。 五、软件仿真环境。 浙江大学硕士学位论文 六、远程调试环境。 s o c 工程 管理 模块 s o c 工具链 s o c 调试器 围团圉团口 s o c 模拟器 c 二耍至口 回回 回四 四口 c 二巫巫二 , 图2 6 1 集成开发环境功能模块图 工程管理模块的功能是以工程为单位,在文件管理的基础上,进行编译、汇 编、链接、调试等参数的设置和管理,并把所设置信息保存到工程文件中。 编辑功能模块实现了常用的复制、剪切、粘贴、撤销、重做、选中内容拖放、 文件内查找、替换字符串、行跳转等常用操作。实现了书签设置、指定路径查找、 工程内查找、字符串( 变量、函数或宏) 关联跳转、输入提示、输入括号匹配等 功能。 工具链模块( 编译链接模块) 以工程管理信息为基础,对工程文件逐一进行 预处理、任务编译、编译、汇编、链接,最终生成可执行并附加所需调试信息的 目标代码和配置代码。 可重构多核s o c 软件模拟器的功能包括实现断点操作、单步执行等,能输出 嵌入式处理器、可重构计算阵列、存储器等模块内部基本动态信息。 可重构多核s o c 硬件仿真调试模块该仿真调试器包括计算机接口与j t a g 接 口的转换器,通过j t a g 口实现断点操作、单步执行等硬件调试功能,能输出处 理器、可重构计算阵列、存储器等模块内部基本动态信息。 将上述模块之间进行整合,并提供统一友好的用户界面,方便用户通过人机 回国b 曰园一 浙江大学硕士学位论文 界面完成对应用程序的开发、编译、模拟和调试,从而形成一套完整的应用集成 开发工具。 2 6 2 集成开发环境的r m s - i d p 操作流程 面向可重构多核s o c 的集成开发
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025南昌市西湖区疾病预防控制中心招聘工作人员1人模拟试卷及答案详解(各地真题)
- 2025第五师医院招聘劳务派遣人员(2人)模拟试卷附答案详解(典型题)
- 2025河南省职工医院普外科招聘2人考前自测高频考点模拟试题及答案详解(必刷)
- 2025内蒙古赤峰龙韵城市建设有限公司所属子公司员工招聘进入人员及相关考前自测高频考点模拟试题附答案详解
- 2025广西贵港市公安局覃塘分局招聘警务辅助人员80人考前自测高频考点模拟试题附答案详解
- 2025南华大学附属南华医院招聘62人(湖南)考前自测高频考点模拟试题附答案详解(完整版)
- 2025河南开封教投教育集团招聘116人考前自测高频考点模拟试题带答案详解
- 2025河北邯郸市丛台区选聘农村党务(村务)工作者42人模拟试卷附答案详解(考试直接用)
- 2025店铺租赁合同范本版
- 2025广西桂林医科大学第一附属医院公开选拔超声医学科主任1人考前自测高频考点模拟试题及答案详解(名师系列)
- 学堂在线 英文科技论文写作与学术报告 期末考试答案
- 护理安全警示教育案例
- 车辆损坏和解协议书
- 《围城》介绍课件
- 品控管理制度大全
- 洗衣房院感知识培训课件
- XX附属学校职称评聘及岗位聘任实施办法(完整版)
- DBJ51-T 040-2021 四川省工程建设项目招标代理操作规程
- 创新方法大赛理论知识考核试题题库及答案
- 电机车点检表及点检标准
- 高一英语必修一单词表默写版
评论
0/150
提交评论