已阅读5页,还剩73页未读, 继续免费阅读
(信息与通信工程专业论文)嵌入式mpsoc的系统评估方法.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
浙江大学硕士学位论文 摘要 随着现代计算机体系结构和理论技术的发展,嵌入式设备和系统广泛应用 予生产和生活的各个领域,性能也得到飞速提高。尤其是媒体处理在低端电子 产品中的出现,给嵌入式系统设计提出了更高的要求。基于多处理器系统芯片 ( ( m u l t i p r o c e s s o rs y s t e m o n c h i p ,m p s o c ) 的多核结构已经成为嵌入式体系结构 设计者的优先选择。 嵌入式m p s o c 的体系结构给嵌入式应用程序开发带来了困难。应用任务需 要根据嵌入式m p s o c 的硬件环境进行合理划分和并行性调度,将程序代码分 配到不同的处理器线程上执行。 嵌入式m p s o c 中的任务调度方式主要分为静态调度和动态调度。静态调度 方式和动态调度相比,灵活性较弱,但具有实现简单,开销小等优点,更适合 应用在嵌入式系统中。 静态任务调度需要开发人员在嵌入式m p s o c 系统的开发阶段对应用程序 进行面向多核的静态程序划分。本论文提出了一种系统评估方法,通过在实际 f p g a 硬件平台上的运行,评估静态划分前后应用程序在嵌入式m p s o c 中的运 行,考察处理器负载的均衡情况,对核间通信、系统调度等开销进行评测,反 馈静态划分方案的对于应用程序执行的加速比,评估其优劣,辅助应用程序的 并行性划分和静态划分方案的进一步优化。 关键宇:嵌入式系统,多处理器芯片,系统评估,静态调度 浙江大学硕士学位论文 a b s t r a c t w i t ht h ed e v e l o p m e n to fe l e c t r i c a li n f o r m a t i o nt e c h n o l o g ya n dc o m p u t e r a r c h i t e c t u r ed e s i g n ,e m b e d d e ds y s t e mi sw i d e l yu s e do ne v e r ya s p e c ti no u rd a i l y l i f e i t sp e r f o r m a n c ea n dr e q u i r e m e n ti sg e t t i n gh i g h e ra n dh i 曲e r , e s p e c i a l l yi nu s e o fl o w e n de l e c t r o n i cp r o d u c t sw i t hm u l t i m e d i ap r o c e s s i n g m e a n w h i l e ,m p s o c ( m u l t i p r o c e s s o rs y s t e m o n c h i p 、a r c h i t e c t u r ei sm o r ea n dm o r eu s e di nt h ed e s i g n o fe m b e d d e ds y s t e m w h i c hc a l lb eag r e a tb e n e f i tt op e r f o r m a n c ei m p r o v e m e n t e m b e d d e dm p s o cs y s t e r nh a sb r o u g h tg r e a tc h a l l e n g ei 1 1e m b e d d e da p p l i c a t i o n p r o g r a md e s i g n ,w h i c hn e e d st ob ed i v i d e da n ds c h e d u l e dp r o p e r l yb a s e do nt h e e x a c te m b e d d e dm p s o ch a r d w a r ep l a t f o r m t h ea p p l i c a t i o nt a s km u s tb ea s s i g n e d t od i f f e r e n tp r o c e s s o r st h r e a d s t a s ks c h e d u l i n gi ne m b e d d e dm p s o cc a nb ec l a s s i f i e di n t ot w ot y p e s :d y n a m i c s c h e d u l i n ga n ds t a t i cs c h e d u l i n g c o m p a r e dw i n ld y n a m i cs c h e d u l i n g s t a t i c s c h e d u l i n gh a sa d v a n t a g es u c ha se a s i e ri m p l e m e n t a t i o n ,s h o r t e ro v e r h e a d , a n ds o o n , w h i c hc a nb em a d eb e t t e ru s ei ne m b e d d e ds y s t e md e s i g n s t a t i cs c h e d u l i n gr e q u i r e st h a tp r o g r a mm u s tb ed i v i d e db yp r o g r a m m e rd u r i n g t h ed e v e l o p i n go fe m b e d d e dm p s o c d i f f e r e n td i v i s i o np l a nc a nr e s u l ti nd i f f e r e n t e x e c u t i o ns p e e d t h i sp a p e rm a i n l yi l l u s t r a t e sa ne v a l u a t i o nd e s i g nf o re m b e d d e d m p s o c w h i c hc a ne v a l u a t et h ep e r f o r m a n c eo fp r o g r a mr u n n i n gw i t hd i f f e r e n t d i v i s i o np l a ni ne m b e d d e dm p s o c t h ee v a l u a t i o nd e s i g nh a sr u no nt h ef i e l d p r o g r a m m a b l eg a t ea r r a yp l a t f o r ma n dc a np r o v i d et h ei n f o r m a t i o n ,s u c ha ss p e e d u p o fp r o g r a mp a r t i t i o n ,o v e r l o a do fp r o c e s s o r s ,i n t e r - p r o c e s s o rc o m m u n i c a t i o n o v e r h e a d ,s y s t e ms c h e d u l i n go v e r h e a d ,a n ds oo n f u r t h e rd e v e l o p i n go fa p p l i c a t i o n p r o g r a mc a nb e n e f i tal o tf r o mi t k e yw o r d s :e m b e d d e d s y s t e m ,m p s o c ,s y s t e me v a l u a t i o n ,s t m i cs c h e d u l i n g v 浙江大学硕士学位论文 图表索引 图1 1 集中式共享存储结构的嵌入式m p s o c 系统3 f i g1 - le m b e d d e d 口s o cw i t hs h a r e dm e m o r ys t r u c t u r e 3 图1 - 2 分布式存储结构的嵌入式m p s o c 系统3 f i g1 - 2e m b e d d e dm p s o cw i t hd i s t r i b u t e dm e m o r ys t r u c t u r e 3 图1 3 嵌入式m p s o c 开发中的系统评估7 f i g1 一:;s y s t e me v a l u a t i o ni n e m b e d d e dm p s o cd e v e l o p i n g 7 图2 1 评估方法及其软硬件设计框架9 f i 9 2 - 1 e v a l u a t i o nm e t h o da n dh a r d w a r e s o f t w a r ed e s i g nf r a m e w o r k 9 图2 2 评估方法中l i n u x 与i o t a 之间的协同关系一1 0 f i 9 2 - 2 r e l a t i o n s h i pb e t w e e nl i n u xa n di o t a 1 0 表2 1n i 的配置寄存器1 2 图2 3m p s o c 中基于n o c 的核间通信。1 4 f i 醇- 3 i n t e r - c o r ec o m m u n i c a t i o nb a s e do nn o ci nm p s o c 1 4 表2 2s y sm e m c p y 函数实现的主要功能1 5 图2 - 4 核间通信用驱动程序示意图1 5 f i 9 2 - 4i n t e r - c o r ec o m m u n i c a t i o i id r i v e r 1 5 图2 6 线程通信用系统调用函数处理流程1 7 f i 9 2 - 6 i n t e r - t h r e a dc o m m u n i c a t i o ns y s t e mc a l lh a n d l i n g 1 7 图2 7m p s o c 上的多核评估器的构建1 8 f i 9 2 - 7 e m u l a t o rc o n s t r u c t i o no nm p s o c 1 8 图2 8i o t a 任务调度基本流程1 9 f i 9 2 8t a s ks c h e d u l i n gi ni o t a 。1 9 图2 - 9 协同处理器核上的任务调度管理流程2 0 f i 鹳- 9 。t a s ks c h e d u l i n go nc o o p e r a t i n gp r o c e s s o r ,2 0 图2 1 0 基于n o c o p 硬件仿真平台的嵌入式m p s o c 系统结构示意图2 2 f i 9 2 1 0 s y s t e ms l r u c t u r eo f m 噼s o cb a s e do nn o c o p :2 2 图2 1 1n o c o p 硬件仿真平台外观图2 3 f i 9 2 1 1 a p p e a r a n c eo f n o c o p 2 3 表2 3 实验中n o c o p 系统配置参数及f p g a 资源统统计表2 5 图2 1 2 t 2 6 4 解码程序函数调用流程图2 4 f i 9 2 1 2 t 2 6 4d e c o d i n gp r o g r a m ,2 4 表2 4t 2 6 4 解码程序及输入测试序列属性参数2 5 表2 5 划分前解码程序运行评测结果2 6 1 浙江大学硕士学位论文 表2 - 6 划分前后n o c o p 平台上程序运行评估结果一一2 7 表2 7 划分后主控r i s c 核上程序运行评估结果2 8 表2 8 划分后m e d i a d s p 3 2 核上程序运行评估结果。2 9 图2 1 3 t 2 6 4 解码程序中的数据依赖关系3 0 f i 9 2 - 1 3d a t ad e p e n d e n c yi nt 2 6 4d e c o d i n gp r o g r a m 3 0 图2 1 4 帧级划分方案中处理器并行的时间轴表示3 l 图2 1 5t 2 6 4 解码程序的划分方案改进一3 2 f i 9 2 - 1 5 p r o v e dt 2 6 4d e c o d i n gp r o g r a m 3 2 表2 9 划分前后n o c o p 平台上程序运行评估结果一3 2 表2 1 0 划分后各处理器核上程序运行评估结果3 4 图3 1 基于核间数据通信池的线程间通信3 6 f i g3 - li n t e r - t h r e a d sc o m m u n i c a t i o nb a s e d o i li p c p 3 6 图3 - 2 无循环有向图3 9 f i 9 3 - 2d i r e c t e da c y c l i cg r a p h 3 9 表3 1 例子中对象与端口的对应关系表4 1 图3 3 对象及端口数据结构4 2 f i 9 3 3o b j e c ta n dp o r ts t r u c t u r e 4 2 图3 4 数据流模型在t 2 “解码程序中的应用4 5 f i g3 - 4d a t af l o wm o d e li nt 2 6 4d e c o d e ra p p l i c a t i o n 4 5 表3 2 消息包头参数详表4 7 图3 4 消息包在处理器核间的传递关系示意图4 9 f i g3 - 4m e s s a g ep a c k a g ep a s s i n gb e t w e e np r o c e s s o r s 4 9 图3 - 5 基于消息池和消息包的线程问同步通信5 0 f i g3 - 5i n t e r - t h r e a d sc o m m u n i c a t i o nb a s e do nm e s s a g ep o o la n dm e s s a g ep a c k a g e 5 0 图3 - 6 消息包处理流程图5 l f i 9 3 - 6m e s s a g ep a c k a g ep r o c e s s i n gd i a g r a m 51 表3 3t 2 6 4 解码程序评估中基于核间数据通信池的多核通信开销5 1 表3 4t 2 6 4 解码程序评估中基于数据流模型的多核通信开销5 2 图4 1c e l l 中的l i n u x 系统管理5 4 f i g4 - 1l i n u xs y s t e mm a n a g e m e n ti nc e l l 5 5 图4 2 评估方法中的l i n u x 系统管理5 5 f i g4 - 2l i n u xs y s t e mm a n a g e m e n ti ne v a l u a t i o nd e s i g n 5 5 图4 3 主机平台与目标平台之间的关系5 6 f i 9 4 3 r e l a t i o n s h i pb e t w e e nh o s tp l a t f o r ma n dt a r g e tp l a t f o r m 5 6 图4 4 普通编译与交叉编译5 7 f i 9 4 - 4 n o r m a lc o m p i l a t i o na n dc r o s sc o m p i l a t i o n 5 7 表4 1 砒s c 3 2 e 处理器的异常机制编码5 8 浙江大学硕士学位论文 图4 5 基于r i s c 3 2 e 的异常处理流程5 9 f i 酣- 5e x c e p t i o nh a n d l i n gb a s e do i lr i s c 3 2 e 6 0 表4 2 串口设备驱动中的操作函数6 2 表4 3 对t 2 6 4 解码程序进行评估时的开销分析结果一6 5 表4 _ 4 系统调用函数运行开销( 单位c y c l e s ) 6 6 v 浙江大学硕士学位论文 独创性声明 夺人卢l 爨缪;卫交的学位沧文髭奉人在导蛳指导下进舒的蟒究工佟及墩铡灼 掰f 究成聚。掇我所知, 绣= 了文巾特别加以栎泣拥致濒的地方外,论文中不包令其 缝人。鲶发表或攘q 过的研究成袅,也4 i 包禽为获缛逝姿盘鲎毁箕地教育讥 箨f 的学能政西ls 聪馁朋过f i 勺材料。! i 我一硝二1 二侔的同志付本研毵蹶傲的侄傍贞献 均已允论丈; t 错i 了明确的晚明井表示蹴惫。 ,化论文作嚣签织:捷毽姻 签:llj 辨:2 口如年弓月2 - l 1 1 学位论文版权使用授权二l :5 本学 沦迦f :一宠令j 斛澎姿盘茔:介火僚断、他j | j 学付沦殳f j 矬定。 “权 辕mj w q | q 家f f 必泓l 。j 戏讥构堪交沦殳的铤q j _ ,| = 釉娥凇允许沦文驶 涵羁i 甜浏。奉人攫权数主三盘鲎l l j 以将节他沦义的全鄢或娜分内客编入彳f 天数钯j i 逃i j :鼢糍1 ,1 以、畏川影i ij 缯阳协宅彳i 捕w 世制t - 段倪杉、嚣一编。,他沦逆。 ( 侏孵 移沦迦n 职澎j l j 迅1 1j 冬授权1 0 ) 摊沦之黼镌饥:戤秘瞄 够i j ! l l :d 如 弘弓j j2 | l - n 蝴虢习潮李 礤j f _ tij ! j j :j oi l 4 t 毒1 l3 i t 浙江大学硕士学位论文 致谢 回顾过去两年半的学习生活,思绪万千,我得到了许多老师,同学的指导, 得到了许多亲人朋友的关心照顾,以及对我的帮助和鼓励,在这里向他们表示 衷心的感谢。 本文是在我的导师,刘鹏副教授的悉心指导和热切关怀下完成的,在这里 首先向他表示由衷的感谢。在研究生的学习生活中,刘老师严谨求实的治学态 度和与时俱进的研究作风深深感动了我,他是我终身学习的榜样和楷模。在学 习和工作中,从刘老师身上,我不仅学会了怎样去做研究,做课题,更重要的 是学习了很多做人的道理,理解了人生的意义。在刘老师的指导下,我开拓了 知识面,提高了科研能力,每一个进步都是与他的谆谆教诲和严格要求分不开 的。 还要特别感谢姚庆栋教授。姚老师严谨的治学作风和求实的科学态度深深 打动了我,他开阔的思维和广博的知识面使我受益匪浅。另外,还要特别感谢 史册老师和王维东老师,他们细微的关怀和指导,让我感到格外温暖。尤其是 史册老师,当在研究中遇到问题时,史册老师总是能耐心帮我分析和解答,为 我提供帮助和指引。她的细心和无微不至的关怀深深感动了我,在此向她表示 由衷的感谢。 在这里还要感谢的同学有:成杏梅、蔡卫光、夏冰洁、顾雄礼、王小航、 刘扬帆、徐志远、李橙、陶文质、成国强、王星、方磊等。他们都是实验室一 起工作和学习的兄弟姐妹,同他们进行交流,和科研问题的讨论,让我的研究 生生活充满了阳光。 感谢我的室友李振华、石凡、姜松,怀念和你们一起生活的日子,祝你们 一个美好的未来。 最后,深深感谢我的父母和家人,是你们对我的支持,让我对生活充满信 心,是你们对我的理解,让我有了克服困难的勇气,是你们对我的爱,让我走 完人生中最灿烂的时光! m 姚懿鹏 2 0 1 0 年,月亏求是圆 浙江大学硕士学位论文 绪论 1 绪论 1 1 课题背景 1 1 1 嵌入式多处理器系统概述 随着现代计算机体系结构和理论技术的发展,嵌入式设备和系统广泛应用 于消费电子、医疗、车载以及军事等各领域。嵌入式系统是一种嵌入到产品中 的专用信息处理系统。i e e e ( 雪际电气和电子工程师协会) 的定义为:嵌入式系 统是“用于控制、监视或者辅助操作机器和设备的装置”( d e v i c e su s e dt oc o n t r o l , m o n i t o r , o ra s s i s tt h eo p e r a t i o no f e q u i p m e n t ,m a c h i n e r yo rp l a n t s ) 【1 1 。国内普遍认同 的定义为:嵌入式系统是以应用为中心,以计算机技术为基础,软硬件可剪裁, 对功能、性能、成本、体积和功耗有严格要求的专用计算机系鲥2 1 。 随着嵌入式系统的不断发展,以及对它研究的不断深入,各种嵌入式系统 广泛的运用于生产和生活中的各个领域,嵌入式系统的性能也得到飞速提高。 尤其是音视频应用的发展,多媒体处理在低端电子产品中的出现,给嵌入式系 统的软硬件设计提出了更高的要求,也为嵌入式系统的发展带来了新的机遇和 挑战【3 】 嵌入式系统的硬件设计随着技术的创新和工艺的改进,系统硬件的功能越 来越强,支持的应用范围越来越广,核心处理器的频率越来越高。然而,高频 率带来的一系列问题渐渐成为嵌入式系统性能提高的瓶颈。线干扰、线延迟和 功耗壁垒等一系列硬件问题也成为继续提升处理器频率的阻碍。单纯依靠复杂 度增加和时钟频率提高而带来的嵌入式系统性能提升出现了回报递减现象,基 于多处理器系统芯f i ( m u l t i p r o c e s s o rs y s t e m o i l c h i p ,m p s o c ) 的多核结构已经 成为嵌入式系统体系结构设计者的优先选择【2 一。 本论文主要针对面向嵌入式应用的m p s o c 系统进行研究。在嵌入式m p s o c 系统中,通常包含两个或两个以上嵌入式处理器核,多个嵌入式应用任务可以 在系统中并行执行。也就是说,系统中包含两个或两个以上处理器线程,它们 可以独立并行执行应用程序代码,线程间通过特殊的通信协议进行数据交互和 同步,协调配合完成某项专有的嵌入式任务。由于系统中存在多条指令流并行 浙江大学硕士学位论文 绪论 执行,应用任务的处理时间得到缩短,系统效率也得到了提升,性能得到了提 高。 然而在实际应用中,m p s o c 的多核结构对嵌入式系统效率带来的提升是有 限的,双处理器核并行运行所带来的效率提升不可能是单处理器核执行效率的 两倍。这主要是由于嵌入式m p s o c 系统中多处理器核间通信开销所造成的。 多处理器核之间进行数据交换,以及数据交换时的各种控制开销,都明显影响 着嵌入式m p s o c 系统的运行效率,随着处理器核数目的不断增多,这种因素 的负面影响也就越大。 另一方面,嵌入式m p s o c 的体系结构给嵌入式应用程序的开发带来了困难。 应用任务需要根据嵌入式m p s o c 的硬件环境进行合理划分和并行性调度,将 程序代码分配到不同的处理器线程上执行。如果分配调度后,各处理器线程运 行负载较均衡,处理器空闲时间短,系统的性能也能得到有效提高;反之,系 统性能则无法得到发挥。事实上,应用任务在多处理器核上的分配调度越均衡, 对程序代码划分的颗粒度也就越细,这将会带来处理器线程间通信开销的增大 【5 】6 1 1 2 嵌入式m p s o c 的系统分犁q 目前,嵌入式m p s o c 系统可以根据存储结构的不同归为两类:集中式共享 存储结构和分布式存储结构。 集中式共享存储结构的嵌入式m p s o c 系统中,每个处理器核都包含有各自 独立的c a c h e ,并共享单个集中式存储器,通过总线进行处理器和存储器之间 的互连,如图1 1 所示。由于单个主存储器对每个处理器都是对称关系,并且 每个处理器访问主存储器的时间相同,这种多处理器系统也被称为是对称多处 理器系统。这种结构的嵌入式m p s o c 系统通过共享访问存储器中的存储地址 进行核间通信和同步。例如微软推出的x b o x 3 6 0 7 】游戏终端,其处理器使用三 核( 3 个p o w e r p c 核心) 结构的,就是采用集中式共享存储结构。 浙江大学硕士学位论文 绪论 图1 1 集中式共享存储结构的嵌入式m p s o c 系统 f i g1 - le m b e d d e dm p s o c 、川t hs h a r e dm e m o r ys t r u c t u r e 分布式存储结构的嵌入式m p s o c 系统中,每个处理器核都包含独立的高速 缓存和独立的存储器空间,存储器在物理上是分布的,如图l 一2 所示。参考某 一个处理器,一般将与其对应的存储器称作本地存储器( l o c a lm e m o r y ) ,将其 它处理器对应的存储器称作远程存储器( r e m o t em e m o r y ) 。处理器的大部分访存 操作都集中在对本地存储器的访问上,当发生核间数据交互时,通过片上互连 网络进行数据搬运,对远程存储器进行访问。由于在该结构中,处理器核对于 本地存储器的访问不会与其它处理器核产生冲突,因此降低了存储器带宽的设 计要求,适合于处理器数目较多的嵌入式m p s o c 系统结构。例如s o n y 、t o s h i b a 和i b m 推出的多核处理器c e l l 8 1 ,集成了九个处理器核( 1 个p o w e r 处理器核 ( p p e ) 和8 个协处理器核( s p e ) ) ,就是采用分布式存储结构。 图1 2 分布式存储结构的嵌入式m p s o c 系统 f i g1 - 2e m b e d d e dm p s o c w i t hd i s t r i b u t e dm e m o r ys t r u c t u r e 集中式共享存储结构有利于提高嵌入式系统总的“吞吐量”,适用于系统中 各个任务相互独立的应用。与单处理器结构相比,该结构有一些特殊的问题需 要考虑和解决。 浙江大学硕士学位论文 绪论 首先是处理器问的同步问题。也就是任务问通信问题,集中式共享存储使 这个问题复杂化了。单处理器单线程的嵌入式系统结构中,各个任务虽然在宏 观上是并行的,但在微观上却是串行的。每一时间点上只有一个任务真正占用 处理器核运行。这时,任务间的同步问题可以归结为对资源临界区的访问问题: 当一段任务代码占用访问某一资源临界区时,其他的任务必须等待,不能同时 访问。该情况下,只要保证对临界区访问的“原子性”,解决同步问题。然而在 集中式共享存储结构的嵌入式m p s o c 系统中,由于多个处理器的独立运行, 系统中存在多个处理器线程,即使能在单条指令中完成的操作也有可能受到来 自另外处理器线程某条指令的干扰,单线程单处理器结构中的“原子操作”机 制无法解决此时的同步问题。 第二个问题是c a c h e 一致性问题。集中式共享存储结构的嵌入式m p s o c 系 统中,处理器核包含各自独立的c a c h e ,共享同一个存储器。存储器的数据可 能在多个c a c h e 中都有备份。当其中一个c a c h e 更新存储器中的数据时,如果 没有同时更新其他处理器c a c h e ,则会发生存储器与c a c h e 中数据不一致问题。 在分布式存储结构的嵌入式m p s o c 系统中,将存储器分布到每个处理器上, 有两个主要优点。第一,如果大多数访问是本地存储器中进行,那么对存储器 带宽的设计要求就会降低。第二,缩短了存储器的访问延迟。在一般的分布式 存储结构中,多个处理器通过片上互连网络( n e t w o r k s o i l c h i p ,n o c ) 互连,如果 处理器对远程存储器上的数据进行访问,就需要利用片上互连网络。 分布式存储结构适用于处理器数目较多的嵌入式系统。本论文的研究重点 是这种结构的嵌入式m p s o c 系统。在基于该结构的嵌入式m p s o c 系统设计中, 主要有两个设计难点。 首先,当数据通过片上互连网络在多核间传递,传递到目的处理器的存储 空间时,其c a c h e 和本地存储的一致性很难保证。片上互连网络需要同时更新 处理器的c a c h e ,以及其本地存储器,这也给片上互连网络的设计带来了复杂 性。 另外,分布式存储结构的嵌入式m p s o c 系统中,多核间通信开销较大,这 也给多核间的任务调度分配带来了困难。这就要求嵌入式应用程序在运行时, 浙江大学硕士学位论文 绪论 不同处理器线程间数据依赖关系最少,需要进行交互的数据量最小,也就是尽 可能开发应用程序间的并行性。 本文主要将分布式存储结构的嵌入式m p s o c 系统作为研究对象,若无特殊 注明,本文中提到的嵌入式m p s o c 系统都的存储结构是分布式存储结构。 1 2 课题意义及相关性工作 在分布式存储结构的嵌入式m p s o c 系统开发中,应用程序需要进行合理的 分配调度,发掘其并行性,减少线程间通信开销,才能达到充分利用处理器资 源,提高系统效能的目的。针对嵌入式m p s o c 的任务调度可以分为两种:动 态调度和静态调度。 动态调度【9 1 即通过操作系统中的任务调度功能,根据系统中的临时状态( 如 处理器忙闲,任务优先级等) ,对应用程序进行多处理器分配,完成调度。应用 程序在实际系统中运行时,由操作系统进行处理器分配和调度,通用性更强。 但动态调度的系统开销也比较大,如何在处理器负载分配均衡,和动态调度开 销最小之间找到平衡点,是一个难点问题。 静态调度【1 0 1 即在应用程序开发时对任务进行静态划分和多处理器上的任务 的静态分配,在开发过程中决定处理器资源的分配策略。和动态调度相比,灵 活性较弱,但具有实现简单,开销小等优点。由于嵌入式系统中资源受限,对 应用程序的专用性强,并行性要求更高,因此更适合采用静态的任务调度分配 方法。 静态任务调度需要开发人员在嵌入式m p s o c 系统的开发阶段对应用程序 进行面向多核的静态程序划分,根据硬件环境分别对各处理器核进行代码的编 写。应用程序的划分越平均,在处理器上的执行时间越均衡,静态划分方案也 就越优,越高效。研究者们也对这个问题展开了研究3 1 。 伊利诺伊大学的研究学者们从编译器的角度来解决静态划分问题。他们提 出一种一致原型系统( c o h e r e n tp r o t o t y p es y s t e m ) e 1 1 用来自动分析应用程序中的 粗颗粒度并行性,该系统主要用于面向多媒体应用程序的并行性分析,可以应 浙江大学硕士学位论文 绪论 用在并行编译器的开发研究中。通过编译器发掘应用程序的并行性,对其进行 划分。 科罗拉多大学的研究学者们提出一种静态划分的软件评估工具: p a r a m e t e r t l 2 】。p a r a m e t e r 工具可以针对应用程序进行并行性评估,它的实现基 于一个软件虚拟系统。该系统可以针对应用程序代码做出静态划分分析和估计, 辅助面向多核系统的应用程序开发。该技术其实属于一种日志技术( p r o f i l i n g ) , 即对应用程序的运行进行跟踪评测,得出到数据结果用于静态划分的进一步优 化。 日本东京工业大学和德国亚琛工业大学的研究学者们合作,提出一种用于 应用程序并行性划分的集成框架om a p s t l 3 】。它主要针对m p s o c 系统结构进行 应用程序的静态划分,实质上是将日志技术融入编译器的开发设计中,通过编 译器进行静态任务划分方案的分析和数据反馈,完成并行性划分。 在国内,中国科学技术大学基于s i m p l e s c a l a r 工具,也对应用程序并行性发 掘的问题进行了研究【1 4 】。通过运行由s i m p l e s c a l a r 工具集改造的动态剖析工具 p r o r v ”】,对应用程序中子程序结构线程化推测执行的适应性进行分析,也属 于一种通过软件工具进行分析的日志技术。 对应用程序并行性进行评估,将有助于辅助应用程序的静态划分和面向嵌 入式m p s o c 系统的开发。开发人员可以跟据反馈信息,比较静态划分方案的 优劣,对静态划分做进一步优化。 1 3 嵌入式m p s o c 系统评估方法 本论文提出一种系统评估方法,用于评估静态划分前后应用程序在嵌入式 m p s o c 中的运行,考察处理器负载的均衡情况,对核间通信、系统调度等开销 进行评测,反馈静态划分方案的对于应用程序执行的加速比,评估其优劣,辅 助应用程序的并行性划分和静态划分方案的进一步开发,如图1 3 所示。其属 于一种任务静态划分中的日志技术。 浙江大学硕士学位论文 绪论 l 应用程序 实际m p s o c l 静态划分 系统评估 上的运行 图1 - 3 嵌入式m p s o c 开发中的系统评估 f i g1 - 3s y s t e me v a l u a t i o ni n e m b e d d e dm p s o cd e v e l o p i n g 这种系统评估方法的特点在于: ( 1 ) 不同于一般的软件分析或系统虚拟评估,本论文基于实际的可编程门阵 列( f i e l dp r o g r a m m a b l eg a t ea r r a y , f p g a ) 硬件开发平台【1 6 ,1 刀,进行嵌入式 m p s o c 系统的硬件仿真及系统评估方法的实现。其优势在于:a ) 评估方法基于 真实硬件系统,使得系统运行状态的反馈信息更加准确,数据更加可靠;b ) 评 估过程的开发周期短,可以很快对静态划分后的应用程序进行系统评估,缩短 面向嵌入式m p s o c 系统的应用程序开发周期;c ) 能够及时对硬件结构进行调整, 辅助面向嵌入式m p s o c 系统的硬件开发。 ( 2 ) 评估方法主要面向异构分布式存储结构的嵌入式m p s o c 系统。系统中 包含作为系统主要控制调度,系统信息采集的主控的处理器核,以及作为主要 数据处理单元的协同处理器核。在评估方法的实现中,需要保证主控核对于整 个m p s o c 系统的系统调度,以及主控核- 9 协同核之间多核通信和线程间同步 问题的解决。以真实硬件系统中的系统管理和线程间通信,保证评估数据的准 确性。 这种评估方法主要用于面向嵌入式m p s o c 系统结构的应用程序并行性开 发,为实现该系统评估方法,需要使系统评估器满足以下功能: ( 1 ) 实现一定机制对应用程序的编写提供多核调用接1 :1 ,简化嵌入式 m p s o c 系统开发中应用程序的编写,加快并行性开发。 ( 2 ) 提供对应用程序各库函数的支持,保证应用程序在嵌入式m p s o c 开发 阶段的通用性。这实际上也保证了评估方法的准确性。 ( 3 ) 实现系统运行状态统计信息的反馈,通过一定机制将数据信息统计反馈 给应用程序的开发人员,辅助静态划分的进一步优化。 ( 4 ) 实现嵌入式m p s o c 系统中的线程间同步和通信,通过一定的机制和模 型保证线程间的正确交互,对静态划分后应用程序在系统中的正确运行提供保 证。 浙江大学硕士学位论文 绪论 ( 5 ) 实现嵌入式m p s o c 中的系统管理和调度,保证应用程序的正确运行。 1 4 主要工作与内容安排 本论文围绕嵌入式m p s o c 中的系统评估展开课题研究,提出一种系统评估 方法。该方法通过对程序划分后相关性、并行性以及线程间数据通信开销的评 估,考察基于该静态划分方案,嵌入式m p s o c 上的多核负载是否均衡,比较 静态划分方案的优劣,加快面向m p s o c 系统的应用程序开发,辅助优化应用 程序的静态划分。 本论文在第二章主要介绍这种系统评估方法,详细论述评估方法的实现框 架。通过在嵌入式m p s o c 系统中,主控处理器核上运行l i n u x 操作系统1 8 】, 协同处理器核上运行i o t a 操作系统1 9 1 ,完成系统评估器的构建。同时针对评估 器实现中,基于n o c 的核间通信进行了研究。实现了针对嵌入式m p s o c 系统 中静态划分后应用程序运行的仿真评测。通过视频解码程序t 2 6 4 2 0 1 的验证, 该方法是一种应用在嵌入式m p s o c 系统开发中,反馈应用程序并行划分性能, 促进应用程序进一步优化的系统评估方法。 第三章针对嵌入式m p s o c 系统评估方法中多处理器线程间的同步通信进 行了研究。首先对第二章中提到的线程问同步通信设计:核间数据通信池,进 行了研究和分析,提出一种解决线程间同步通信问题的方案:数据流模型方案。 数据流模型是一种基于数据流图的多核模型,通过对象和端口的封装,它将线 程间同步通信问题转化为对象间的通信同步问题,以数据流驱动程序运行。线 程间的数据交互也可以抽象为不同用途的消息包在线程间的传递。通过该模型 对t 2 6 4 解码程序的封装和在评估系统中的实现,得到结论:相比于核间数据 通信池,将数据流模型应用在嵌入式m p s o c 核间同步通信中,可以有效地减 少系统评估中的多核通信开销。 第四章针对嵌入式m p s o c 的主控处理器核上的系统管理问题进行研究。主 控处理器核是嵌入式m p s o c 系统中的管理核心,通过多核通信管理,任务分 配,协同处理器核调度,完成应用任务的正确运行。本章详细介绍了嵌入式 m p s o c 系统开发中,主控核上基于l i n u x 的系统管理方法,通过l i n u x 系统移 植、运行和系统调用的添加,实现嵌入式m p s o c 主控核上系统管理。 浙江大学硕士学位论文 嵌入式m p s o c 的系统评估方法 2 嵌入式m p s o c 的系统评估方法 2 1m p s o c 系统软硬件评估方法框架 一个异构的嵌入式m p s o c 系统通常包括一个主控处理器核和多个协同工 作的处理器核。主控处理器核一般负责整个系统调度,管理系统中各种外围硬 件设备,维护核间通信机制,协调各协同处理器的运行。协同处理器核一般负 责嵌入式系统中大数据运算,处理专有计算任务。处理器核之间通过调用片上 互连网络接口( n e t w o r ki n t e r f a c e ,n i ) ,利用片上互连网络( n e t w o r k s o n c h i p ,n o c ) 进行核间数据传输【2 l 】,并基于此调度系统中各任务线程,最终完成某一嵌入式 应用任
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026贵州医科大学考博零基础备考专用模拟题及答案详解
- 父亲节创意宣传标语
- 沧州市盐山县2025年数学四下期末监测模拟试题含答案
- 沧州市沧县2025届数学三上阶段统考试题(含答案解析)
- 沈阳市康平县2025年四年级数学下学期期末学业质量监测试题(含答案)
- 2026年医院文明单位创建工作规划方案
- 2026年职业生涯规划书造价
- 2026年房地产销售激励方案
- 2026年茶店营销活动方案策划书
- 2026年新安全生产法餐饮报警装置
- 2026年辽宁锦州海通实业有限公司计划招录28人备考题库及答案详解参考
- 2026年西安工业大学招聘备考题库(14人)含答案详解
- 2026青海数字经济发展集团有限公司社会招聘9人笔试参考题库及答案详解
- 2026福建中考语文作文考前专项练习(题目+范文)
- 2024-2025学年上海市黄浦区七年级(下)期末数学试卷(含解析)
- 2026年安徽省体育彩票管理中心编外聘用人员公开招聘11名考试参考题库及答案解析
- 2026年《中华民族共同体概论》第13讲先锋队与中华民族独立解放(1919-1949)新版课件
- 2026年江西高考化学题库及答案
- 2026年贪污贿赂刑事案件司法解释(二)课件
- 2026年人文英语4国家开放大学机考考试押题密卷【重点】附答案详解
- 2025-2026学年沪语童谣教案
评论
0/150
提交评论