《基于MV05MCU的单芯片多处理器架构设计.pdf》由会员分享,可在线阅读,更多相关《基于MV05MCU的单芯片多处理器架构设计.pdf(83页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、上海大学硕士学位论文基于MV-05 MCU的单芯片多处理器架构设计姓名:刘颖申请学位级别:硕士专业:微电子学与固体电子学指导教师:胡越黎20080101上海大学硕士学位论文摘要本文设计了一种基于M V-0 5M C UI P 核的单芯片多处理器架构。针对复杂的机器视觉系统中,图像处理要运用到大量算法和不同应用环境需要动态的调整硬件配置的的特点,使用多个M C U 并行执行不同任务,以数量的优势弥补M C U 性能的不足,并在X i l i n xV i r t e x 4F P G A 为硬件平台的基础上,动态的调节多M C U 的互连结构,用低端微处理器执行高端机器视觉、图像处理等的工作,这
2、是设计拥有自主知识产权的机器视觉应用方案。本文设计的可重构多处理器在单芯片上集成了四个结构完全相同的子处理器。整个单芯片多处理通过片上仲裁器判决,以中断的方式访问共享数据存储器,交换数据。整个系统指令集与M C S 5 1 系列兼容,从而避免了增加使用的复杂度,而处理运算能力和并行工作能力却都得到了大大的提高。本文的主要工作和创新点体现在:1)提出并实现了基于M V-0 5M C UI P核的单芯片多处理器整体架构设计方案;2)提出了一种基于共享数据存储器中断仲裁器的共享数据存储器访问机制的设计方案,用于解决各子处理器之间数据交换中存在的竞争,实现多处理器之间的数据共享,提高系统工作效率;3)
3、在S C M P 架构设计的基础上在,提出了一种动态可重构的多核处理器的设计方案、环境配置、和设计实现,提高了硬件资源的利用率;4)提出了D P R S C M P基于X i l i n xV i r t c x-4F P G A 验证平台的设计方案;5 1 提出了一套针对单芯片多处理器架构的验证和测试方案,有效地实现了单芯片多处理器的设计验证。本文提出的单芯片多处理器的架构及其动态可重构的方法,实现便捷,经仿真证明了其可行性。同时由于M V-0 5 与M C S 5 1 架构的M C U 的兼容性,本文的设计思想、设计方法、运用的手段和工具,以及在验证过程中发现的问题和解决方法具有实际的借鉴
4、意义和参考价值。为机器视觉系统的S o C 实现提供了具有自主知识产权的S C M PI P 核,具有很高的科学研究意义和广泛的市场应用价值。关键词:单芯片多处理器,片上仲裁器,可重构,X i l i n xV i r t e x-4V I上海大学硕士学位论文A B S T R A C TT h i st h e s i sd e s i g n sa na r c h i t e c t u r eo fS i n g l e C h i pM u l t i p r o c e s s o rb a s e do nM V-0 5M C UI PC o r e I ns o m ec o
5、m p l i c a t e ds y s t e m ss u c ha sM a c h i n eV i s i o nS y s t e m,i tr e q u i r e sag r e a td e a lo fo p e r a t i o nw h i c hc o u l dn o tb ec o m p l e t e dw e l lb yo n l yo n ep r o c e s s o LM e a n w h i l e,a c c o r d i n gt od i f e r e n ta p p l i c a t i o ns c h e m e s
6、,i tn e e d sa d j u s t i n gt h eh a r d w a r ec o n f i g u r a t i o nd y n a m i c a l l y I n t e r g r a t i n gs e v e r a lp r o c e s s o r so no n ec h i pi saf e a s i b l ew a yt om e e tt h i sr e q u i r e m e n t T h eD y n a m i cP a r t i t i a lR e c o n f i g u r a t i o nS i n
7、g l e-C h i pM u l t i p r o c e s s o r(D P R S C M P)s y s t e m,b a s e do nX i l i n xV t r t e x-4F P G A,w i l li m p l e m e n t st h ea d v a n c e da p p l i c a t i o n so fm a c h i n ev i s i o na n di m a g ep r o c e s s i n gb yl o wc o s ta n dc l a s s i c a lp r o c e s s o r s A n
8、 di t Sa l le f f i c i e n tw a yt od e s i g na l lI Pc o r eo fa nI m a g ep r o c e s s o r T h ed e s i g no fS C M Pc o m p o s e do ff o u rs u b p r o c e s s o r so no n ec h i pb yt h eo n c h i pb u s E a c hs u b p r o c e s s o rs h a r ead a t as p a c ef o rc o m m a n dt r a n s f e
9、r i n ga n dd a t ae x c h a n g i n gb ya r b i t r a t i o na n das p e c i a li n t e r r u p u ta c c e s sm o d e T h ei n s t r u c t i o ns e ti sc a r n p a t i b l et oM C S 一51 S T ot h et e r m i n a lu s e r s,t h e yo n l yn e e dt od e s i g nt h es o f t w a r ef o rs u b p r o c e s
10、s o r s,w h i c hm a k e si te a s yt ou s et h i sS C M P F u r t h e r m o r e,t h ec a p a b i l i t i e so fp r o c e s s i n g,c a c u l a t i o na n dp a r a l l e l l yw o r k i n ga r ei m p r o v e dg r e a t l yT h ek e yt a s k sa n di n n o v a t i o n so ft h i st h e s i sa r ep r e s
11、e n t e d 嬲f o l l o w s:1)D e s i g na n di m p l e m e n ta na r c h i t e c t u r eo fS i n g l e-C h i pM u l t i p r o c e s s o rb a s e do nM C-0 5M C UI Pc o r e;2)A d o p t eA na r b i t e rj u d g m e n ts c h e m ea n de f f e c t i v ei n t e r r u p ta c c e s sm e c h a n i s mt or e d
12、 u c et h eb u r d e no fd a t ae x c h a n g ea n de l i m i n a t ec o m p e t i t i o n sb e t w e e nt h es u b p r o c e s s o r s;3)D e v e l o pa ni n n o v a t i v em e t h o do fr e c o n f i g u r a t i nb a s e do nt h eS C M Pa r c h i t e c t u r e,a n dp r o p o s ei t sd e s i g ns c
13、h e m e,c o n f i g u r a t i o ne v i r o m e n ta n di m p l e m e n tf l o w T h i sm e t h o di n c r e a s et h eu t i l i z a t i o no fh a r d w a r er e s o u r c e;4)D e s i g naF P G Ap r o t o t y p i n gv e r i f i c a t i o np l a t f o r mo fD P R S C M Pb a s e do nX i l i n xV i r t
14、e x-45)E s t a b l i s ha ne f f i c i e n tv e r i f i c a t i o ne n v i r o n m e n tf o rt h eS C M P T h ea r c h i t e c t u r eo fS i n g l e C h i pM u l t i p r o c e s s o rp r o p o s e di nt h et h e s i si sV U上海大学硕士学位论文i n g e n i o u sa n de a s yt ob ei m p l e m e n t e d F u t h e
15、r m o r e,b e c a u s ei th a st h ec o m p a t i b l ei n s t r u c t i o ns e tw i t ht h eM C S 一51 S,t h ei d e a s,m e t h o d s,t o o l sa n ds o l u t i o n so ft h ep r o b l e m sa r ev a l u a b l ef o rt h es i m i l a rd e s i g n A n dt h eS C M PI PC o r ew i l lb et h ek e yp a r ti n
16、t h eS y s t e m-o n C h i po fm a c h i n ev i s i o ns y s t e mw h i c hi ss i g n i f i c a n c ef o rt h ef u t u r er e s e a c ha n dm a r k e tv a l u e s K e y w o r d s:S i n g l e-C h i pM u l t i p r o c e s s o r,O n C h i pA r b i t e r,R e c o n f i g u r a t i o n,X i l i n xV m e x-
17、4V I l l上海大学硕士学位论文原创性声明本人声明:所呈交的论文是本人在导师指导下进行的研究工作。除了文中特别加以标注和致谢的地方外,论文中不包含其他人己发表或撰写过的研究成:累。参与同一工作的其他同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。签名:牝日期:卫塑-乒本论文使用授权说明本人完全了解一:海大学有关保留、使用学位论文的规定,即:学校有权保留论文及送交论文复印件,允许论文被禽阅和借阅;学校可以公布论文的全部或部分内容。(保密的论文在解密后应遵守此规定)姆聊虢燧醐:乙步,刁8上海大学硕士学位论文1 1 引言第一章绪论集成电路技术在近2 0 年里有了飞速的发展,根据
18、摩尔定律:单个芯片上的集成度按平均每1 8 个月翻一番的速度提高,单芯片上集成度达到了上亿数量的晶体管,加工工艺也从微米级发展到深亚微米(D S M)甚至超深亚微米级(V D S M)。照此下去,到2 0 1 0 年左右,芯片上集成的晶体管数目将超过十亿爪【l】-oI T R S(I n t e m a t i o n aT e c h n o l o g yR o a d m a pf o rS e m i c o n d u c t o r)2 0 0 4 年预测了到2 0 1 8 年半导体工艺水平的发展趋势【2】,到2 0 1 8 年D R A M 的集成度可达4 7 1 G b i t
19、 S c m 2,微处理器集成度(含片上S R A M)可达每平方厘米3 5 0 6 亿个晶体管,主频达5 3 2 0 7 G H z,即使在严格限制功耗和芯片面积的情况下,布线也会多达1 4 到1 8 层,引脚达5 4 2 6 个。大规模集成电路的产生和微型机的出现,使现代科学研究得到了质的飞跃,而嵌入式微控制器技术的出现则是给现代工业控制领域带来了一次新的技术革命【3 羽。自2 0 世纪7 0 年代I n t e l 推出第一款微处理器芯片4 0 0 4,微处理器的发展己经过了三十多年的历史,相比其他大中型计算机,微处理器能够更直接更充分地利用大规模集成电路(V L S I)工艺的进步提高
20、性能,以相对稳定的3 5 的性能年增长率【6】充分体现了其性能优势。由于微处理器的功能集成度越来越高,价格越来越低,为适应集成电路技术和应用需求的不断发展,微处理器体系结构发生了翻天覆地的变化:指令处理从微程序处理到流水处理,进而演化为多条流水线并行处理;指令集结构从C I S C 发展到R I S C;各种提高指令级并行处理效率的技术:分支预测、指令调度、寄存器重命名、乱序流出及前瞻执行等相继涌现。当前主流通用高性能微处理器采用超标量结构和超长指令字结构(V e r yL o n gI n s t r u c t i o nW o r d,V L n S O,都通过开发指令级并行(I n s
21、 t r u c t i o n-L e v e lP a r a l l e l i s m,I L P)来提升微处理器性能。然而,即便程序中存在着大量的I L P,所获得的I L P 还与编译技术上海大学硕士学位论文及其结构、程序特性和数据结构都密切相关。对现有的超标量结构和V L 州结构而言,通过开发深度I L P 来提升微处理器性能受到了开发时机、开发范围和自身结构以及工艺开发等多方面限锘l J 9 1 0】。集成电路工艺的发展,通过在现有结构基础上增大流出宽度获取高性能,而其引发的在面积开销、时钟频率、设计复杂性和芯片利用率等方面的弊端也越来越明显。新的微处理器体系结构必须摆脱上述限
22、制、克服上述弊端。因此,当芯片上集成的晶体管数目不断增多的时候,单芯片多处理器结构将是一条提高微处理器性能的有效途径。在完成复杂任务时,可使用多个微处理器共同完成一个系统单元的任务;每个处理器实现一个或几个独立的模块功能,调试量小,硬件实现成本低。以数量的优势来弥补低端微处理器的一些性能的不足,这是一种运用低端微处理器完成复杂任务的行之有效的方法【l o】【1 3】。1 2 单芯片多处理器的发展与应用自1 9 9 6 年单芯片多处理器(S i n g l e C h i pM u l t i n r o c e s s o r s,S C M P)结构【1 4】被提出以来,它一直是微处理器体系
23、结构的一个研究热点。通过较小的软硬件开销提高面向通用程序的单芯片多处理器的性能,是该结构推广应用必须解决的问题。单芯片多处理器的基本思想是:将多个处理器集成在一块芯片上【1 8】。由S t a n f o r d 大学提出片上多处理器(C M P)结构的思想在他们设计的H y d r a 处理器 H a m r n 2 0 0 0】中实现。C M P 在一块芯片内实现了S M P(对称多处理)架构,且并行执行不同的进程,C M P 可以比超标量处理器更具并行性。当半导体工艺提升至O 1 8 微米以后,线延时已经超过了门延迟,微处理器的设计需要通过划分许多规模更小、局部性更好的基本单元结构来进行
24、。相比之下,由于C M P结构已经被划分成多个处理器核来设计,每个核都比较简单,有利于优化设计,因此更有发展前途。多处理器还可以在芯片内部共享存储,提高存储器利用率,同时简化并行系统设计的复杂度。在实际应用中,微处理器作为相对独立的模块,各个模块组成一个多微处理器系统,利用一个主处理器进行各模块间的协调与控制,即构成主从式多处理器系统。同时,外围器件或专用加速器中的专用处理器也能够分担主处理器2上海大学硕士学位论文中那些较低级的功能,从而使主处理器能够专注于高级功能的实现。主从式单芯片多处理器也就这样应运而生了【1 5】。【1 6】。单芯片多处理器设计非常适用于今天的嵌入式系统,这主要有三个方
25、面的原因。首先,嵌入式应用的功能通常可以灵活地进行分离,因此很容易将其功能映射到多个处理器中。有时,将嵌入式系统的功能分割映射到多个单独的处理器中甚至比映射到一个处理器中更容易。其次,许多嵌入式应用都具备明显的并行性,因而可以用一系列并行处理器来开发 1 9】【2 1 1。例如,网络处理器(N P U)设计工程师已经利用这个特性开发路由功能。最后一点,随着当今O 1 3 微米和6 5 纳米技术的出现,已经可以以较低的成本实现用单芯片多处理器S o C 系统。可以肯定,在未来的一二十年间,随着制造工艺发展,当芯片容量足够大时,单芯片多处理器结构(S C M P)就可以将大规模并行处理器结构中的对
26、称多处理器(S M P)或分布共享处理器(D S M)节点集成到同一芯片内,各个处理器并行执行不同的线程或进程。单芯片多处理器结构大大的提高了处理器的性能,针对这种结构的研究是非常必要和有意义的。1 3 可重构多处理器所谓可重构(R e e o n f i g u r a b l e)是指在软件的控制下,利用系统中的可重用资源,根据应用的需要重新构造一个新的计算平台,达到接近专用硬件设计的高性能。具有可重构计算特征的系统称为可重构计算系统。可重构计算的本质是利用可编程器件多次重新配置逻辑单元的功能和互连的特性,使系统兼具灵活性、高性能、高可靠、低能耗、低成本、易于升级等多种优良特性。其主要技术
27、基础是现场可编程门阵列(F i e l dP r o g r a m m a b l eG a t e A r r a y s,F P G A)技术。在可重构计算系统中,硬件的结构配置信息可以像软件程序一样被动态调用或修改,这样既保留了用A S I C 方法(硬件方法)实现计算的性能,又具有用处理器方法(软件方法)实现计算的灵活性。换句话说,可重构设计是把硬件软件化,使硬件可以像软件一样被编程修改和重用。可重用资源是可重构计算的物质基础。F P G A 可重用资源的基本单位是可编程的逻辑块和可编程的连线资源,根据硬件配置文件中的编程信息,可以改变逻辑块的功能和连线的互连方上海大学硕士学位论文式
28、,从而改变应用系统的硬件功能。基于可重构技术实现的多型微处理芯片体系结构能够很好地利用未来的半导体技术,在解决应用多样性问题的同时,还可解决片上资源利用率、设计复杂性、系统可靠性以及降低成本和功耗等多方面的问题。可重构多型微处理器芯片设计要求改变了传统的指令集体系结构、微体系结构设计和实现技术。可重构计算的技术优势为实现高性能的通用微处理芯片提供了强大的技术支持。可重构计算能将硬件变成可“编译”的,在可编程的介质中提供更大的计算能力和密度,能在单片系统上以低的硬件复杂度开发各种类型的应用中包含的指令级并行性、数据级并行性和线程级并行性。能够针对应用中固有的并行性特征动态配置多个微体系结构模型,
29、是大幅度提高计算系统性能、降低功耗和设计复杂性的有效方法。期待在不远的将来,可重构计算技术将带来通用微处理器芯片前端设计(结构和组成设计)和后端制造(物理实现)的分离,这将从根本上改变计算机系统的设计、制造和使用方式。1 4 本文主要研究工作1 4 1 课题背景机器视觉被称为自动化的眼睛,在国防系统、遥感图像分析、工业视觉、智能机器人、精确制导、安全鉴别、视与跟踪、医学图像、文字指纹染色体识别以及集成电路芯片检测等方面有着广泛的应用,实现设备智能化、自动化、高效化、高精密,机器视觉系统是不可或缺的功能模块 2 3】。机器视觉的基础是图像理解和分析,是当今世界上最为活跃的学科之一。笔者所进行的“
30、机器视觉及其芯片实现研究”课题用机器视觉分析皮肤显微图像,将皮肤专家的知识、护理意见等构建成皮肤诊断知识库,将经过专家确认的典型皮肤症状构建成样本库,采用机器视觉的理论和技术,结合皮肤专家的临床经验,以知识驱动从图像采集、预处理、分割、特征提取、识别、解释到理解的整个过程,实现皮肤诊断的智能化。采用片上系统(S o C)技术将4上海大学硕士学位论文整个皮肤测试、诊断系统集成在一片芯片上,实现单芯片智能皮肤诊断。在机器视觉这样的高端系统中,会涉及到图像处理和分析,知识的学习,知识库和样本库的建立、自适应学习、升级和管理等,这需要大量的运算、处理,单个传统M C U 并不能胜任这些工作。但如果在指
31、令系统不变的前提下,将应用系统的各个独立的任务调用程序分配到各个从处理器中,使用多个M C U分别执行和管理机器视觉运算、知识库、样本数据库等,就能用低端微处理器执行高端的机器视觉、图像处理的工作。由多个微控制器来共同完成系统任务,将降低对主处理器存储能力和处理强度的要求,并且大大提高系统的并行处理能力和速度。实现将成本相对较低,应用广泛的M C S 5 1 架构微控制器应用于需要大量复杂算法的高端系统中。而低端微控制器的设计和流片,在现有条件下较易实现。基于上述思想,首先要设计一个能进行复杂计算又能进行控制的微处理器,然后以该微控制器为基础,研究一种基于微控制器核的机器视觉系统单芯片多处理器
32、结构的实现方法。1 4 2 实现目标和策略1 目标本文研究一种基于M V-0 5M C UI P 核的机器视觉系统可重构单芯片多处理器的结构实现方法,满足机器视觉系统的大量算法运算能力、和并行工作效率的要求,符合对不同应用环境相应改变硬件结构的特点。本设计采用完全对称多处理器结构,面向用户执行机器视觉的应用程序,并在X i l i n xF P G A 上实现动态局部可重构。2 实现策略要实现上述目标,将模型和算法构建在芯片上,以核的数量弥补性能的不足。笔者设计将机器视觉的处理分解为可并行处理的系列任务,然后把这些任务分配给各个处理器单独处理,从而提高运算的能力和时效。在基于微控制器的机器视觉
33、系统多处理器架构实现方法中,本人设计了一个具有多个处理器的单芯片系统。该系统包含四个子处理器,并将各子处理器上海大学硕士学位论文片内高1 2 8 字节(8 0 h F F h)数据空间共享,用于多处理器之间命令和数据的传输:各子处理器中增加了一个共享数据存储器中断(S D M I),并把S D M I 和仲裁器有效的结合起来,作为共享数据存储器访问机制,用于解决各子处理器之间数据交换中存在的竞争。这样将使应用工程师在图像分析、图像理解层上处理机器视觉的问题,而无需参与对专业要求极高的复杂的机器视觉底层处理,无需接受专业的图像处理、机器视觉训练及机器视觉算法的编程,即可方便地应用机器视觉技术和图
34、像处理技术。在构建的机器视觉片上系统中,用户可以配上特定的知识库和样本库,即可完成具体的功能,如皮肤诊断系统芯片,基因识别系统芯片等。此外,机器视觉广阔的应用领域,不同应用领域对多处理器的硬件结构的要求也不同,因此在上述单芯片多处理器的架构上提出了基于X i l i n xF P G A 的局部动态可重构的方案并给出了具体设计流程与配置方法。虽然本文叙述的具体对象是机器视觉系统,但其实现思想和方法对于片上多处理器系统具有通用性。1 4 3 课题意义本课题是机器视觉及其芯片实现研究的一部分,作为机器视觉系统中高性能单芯片多处理器,需具有实时性、稳定性、低功耗、能处理大量数据和运行复杂程序的功能。
35、本课题设计的一种基于M V-0 5M C Um 核的动态局部可重构单芯片多处理器的架构实现方法,其设计相对复杂,是集成电路设计领域及电子信息领域的一项核心技术。单芯片多处理器中的片上总线设计方案,共享存储器和仲裁器以及基于X i l i n xV i r t e x I V 动态局部可重构等的设计思想,都对单芯片多处理器的设计发展具有很好的参考价值。单芯片多处理器的实现为机器视觉系统的S o C 实现提供了具有自主知识产权的S C M PI P 核,具有很高的科学研究意义和广泛的市场应用价值。6上海大学硕士学位论文1 4 4 本人工作本人设计的单芯片多处理器架构基于M V-0 5M C UI
36、P 核,用片上仲裁器使多个处理器共享了一个数据存储器,实现了多处理器在单芯片上的协同工作。并在这个单芯片多处理器的架构上进一步提出了基于F P G A 的局部动态可重构的方案与实现方法,较好地解决了用低端微处理器实现高端机器视觉处理的问题。本人的主要工作和创新点在于:(1)提出并实现了基于M V-0 5M C UI P 核的单芯片多处理器整体架构设计方案:(2)设计了片上仲裁器及共享数据存储器中断(S D M I),解决了各子处理器之间数据交换中存在的竞争;(3)在单芯片多处理器的架构上提出了一种动态可重构的架构和配置方法与流程并给出了一种基于F P G A 的动态可重构单芯片多处理器的验证平
37、台的设计方案;(4)提出了一套有效的针对单芯片多处理器架构的验证和测试方案。本人在完成课题的过程中,不仅掌握了数字电路设计方法,而且掌握了一定的口核及S o C 片上系统的知识和设计方法,同时熟练掌握了一系列E D A 工具的使用。项目进行的过程中发现和解决了一些问题,积累了一定的设计、系统设计和验证调试的实践经验,这些经验为以后设计和验证更多更好的口核奠定了坚实的基础。1 5 本文架构本文按照单芯片多处理器与动态局部可重构技术的分析和设计的过程进行组织和编排,从系统整体架构设计到具体的硬件电路设计、系统的仿真验证实现,最后到设计中的不足与展望都进行了较为详细的阐述。全文共分为六章,安排如下:
38、第一章对单芯片多处理器与可重构的应用现状及发展趋势进行了综述。概述了本文主要研究的内容、意义及文章的组织结构;7上海大学硕士学位论文第二章介绍了单芯片多处理器的总体架构设计、设计思想和实现方法;第三章在单芯片多处理器架构设计的基础上,提出了可重构单芯片多处理器的设计方案和基于V m e x-4F P G A 芯片的设计流程、配置方法和环境建立:第四章给出了基于V i r t e x 4F P G A 的硬件验证平台的设计;第五章给出了软硬件验证方案和具体的测试方法。最后的仿真结果证明该设计是正确可行的;第六章是全文的总结以及对今后工作的展望。对本设计中还有待进一步研究和展开的工作进行了阐述,并
39、对本课题未来的开发方向进行了探讨。上海大学硕士学位论文第二章单芯片多处理器(S C M P)的设计和总体概述还2 1 单芯片多处理器架构设计随着集成电路的深亚微米制造技术、设计技术的迅速发展,集成电路已进入片上系统时代。所谓片上系统,又叫系统级芯片,也就是系统级集成电路,其英文简写为S o C(S y s t e m0 1 1ac h i p)。如果说V L S I 促进P C 广泛的应用而带来了信息产业的第一次革命,那么S o C 的发展正在带来信息产业的第二次革命。S O C 是在ASI C 的基础上发展起来的电路,具有很多独特的优点 2 4】:(1)S o C 增加了功能:从单一功能增加
40、到多功能,可完成系统的功能,实现高速、高集成度和低功耗:(2)S o C 大大降低整机成本:由过去的多块I C 构成系统,变成现在的一块S o C;(3)S o C 大大降低整机的体积:这是系统制造商进一步发展的方向,尤其对便携式的电脑、通讯及多媒体产品的生产厂家更具有吸引力;(4)S o C 促进了整机系统更新换代的速度:它缩短了供需双方的差距,整机更受用户的欢迎,易于占领市场。本设计S C M P 以高性能的具有自主知识产权的M V-0 5M C UI P 核为基础,在单片上集成了多个处理器,共享存储器仲裁器等,具有高并行性、高运算能力、大存储容量、低功耗等S o C 的特点。2 1 I
41、单芯片多处理器特点电子系统的复杂性和要求计算能力不断提高的事实促进了多处理器架构的迅速发展。单芯片多处理器结构具有以下几个显著特点2 5】:1)控制逻辑简单:相对超标量处理器结构与超长指令字处理器结构而言,单芯片多处理器结构的控制逻辑复杂性明显要低得多;9上海大学硕士学位论文2)实现相对简单:控制逻辑复杂性的降低相应地使单芯片多处理器结构的硬件实现必然比超标量处理器结构与超长指令字处理器结构简单得多,其实现代价也要低得多;3)高主频:由于单芯片多处理器结构控制逻辑和硬件实现相对简单,因此在同等工艺条件下,单芯片多处理器结构将获得比超标量处理器结构和超长指令字处理器结构更高的工作频率,其性能也将
42、得到提高;4)低通信延迟:由于多个处理器集成在一块芯片上,因此相对于分离的多处理器系统而言,单芯片多处理器结构中多个处理器之间的通信延迟要小得多;5)软件重用:由于结构比较相近因此单芯片多处理器结构能够快捷有效地继承面向传统的多处理器结构开发的各种系统软件和应用软件,而它们经过几十年的发展,在许多应用领域已经相当成熟,特别是在事务处理和科学工程计算领域。目前,单芯片多处理器结构已成为提高微处理器性能的重要途径:多处理器利用集成度提高带来的诸多好处,让芯片的性能成倍地增加。但是,明显是原来系统级的一些问题便引入到了处理器内部。1)核结构研究:同构还是异构。单芯片多处理器结构的构成分成同构和异构两
43、类,同构是指内部核的结构是相同的,而异构是指内部的核结构是不同的。为此,面对不同的应用研究核结构的实现对未来微处理器的性能至关重要。核本身的结构,关系到整个芯片的面积、功耗和性能。怎样继承和发展传统处理器的成果,直接影响多核的性能和实现周期。同时,根据A m d a h l 定理,程序的加速比决定于串行部分的性能,所以,从理论上来看似乎异构微处理器的结构具有更好的性能。核所用的指令系统对系统的实现也是很重要的,多核之间采用相同的指令系统还是不同的指令系统,能否运行操作系统等,也将是研究的内容之一。2)程序执行模型:多核处理器设计的首要问题是选择程序执行模型。程序执行模型的适用性决定多核处理器能
44、否以最低的代价提供最高的性能。程序执行模型是编译器设计人员与系统实现人员之间的接口。编译器设计1 0上海大学硕士学位论文人员决定如何将一种高级语言程序按一种程序执行模型转换成一种目标机器语言程序:系统实现人员则决定该程序执行模型在具体目标机器上的有效实现。当目标机器是多核体系结构时,产生的问题是:多核体系结构如何支持重要的程序执行模型?是否有其他的程序执行模型更适于多核的体系结构?这些程序执行模型能多大程度上满足应用的需要并为用户所接受?3)C a c h e 设计:多级C a c h e 设计与一致性问题处理器和主存间的速度差距对C M P 来说是个突出的矛盾,因此必须使用多级C a c h
45、 e 来缓解。目前有共享一级C a c h e 的C M P、共享二级C a c h e 的C M P 以及共享主存的C M P。通常,C M P 采用共享二级C a c h e 的C M P 结构,即每个处理器核心拥有私有的一级C a c h e,且所有处理器核心共享二级C a c h e。C a c h e 自身的体系结构设计也直接关系到系统整体性能。但是在C M P 结构中,共享C a c h e 或独有C a c h e 孰优孰劣、需不需要在一块芯片上建立多级C a c h e,以及建立几级C a c h e 等等,由于对整个芯片的尺寸、功耗、布局、性能以及运行效率等都有很大的影响,因
46、而这些都是需要认真研究和探讨的问题。另一方面,多级C a c h e 又引发一致性问题。采用何种C a c h e 一致性模型和机制都将对C M P 整体性能产生重要影响。在传统多处理器系统结构中广泛采用的C a c h e 一致性模型有:顺序一致性模型、弱一致性模型、释放一致性模型等。与之相关的C a c h e 一致性机制主要有总线的侦听协议和基于目录的目录协议。目前的C M P 系统大多采用基于总线的侦听协议。4)核间通信技术C M P 处理器的各C P U 核心执行的程序之间有时需要进行数据共享与同步,因此其硬件结构必须支持核间通信。高效的通信机制是C M P 处理器高性能的重要保障,
47、目前比较主流的片上高效通信机制有两种,一种是基于总线共享的C a c h e 结构,一种是基于片上的互连结构。总线共享C a c h e 结构是指每个C P U 内核拥有共享的二级或三级C a c h e,用于保存比较常用的数据,并通过连接核心的总线进行通信。这种系统的优点是结构简单,通信速度高,缺点是基于总线的结构可扩展性较差。基于片上互连的结构是指每个C P U 核心具有独立的处理单元和C a c h e,各上海大学硕士学位论文个C P U 核心通过交叉开关或片上网络等方式连接在一起。各个C P U 核心间通过消息通信。这种结构的优点是可扩展性好,数据带宽有保证;缺点是硬件结构复杂,且软件
48、改动较大。也许这两者的竞争结果不是互相取代而是互相合作,例如在全局范围采用片上网络而局部采用总线方式,来达到性能与复杂性的平衡。5)总线设计传统微处理器中,C a c h e 不命中或访存事件都会对C P U 的执行效率产生负面影响,而总线接口单元(B r L J)的工作效率会决定此影响的程度。当多个C P U核心同时要求访问内存或多个C P U 核心内私有C a c h e 同时出现C a c h e 不命中事件时,B I U 对这多个访问请求的仲裁机制以及对外存储访问的转换机制的效率决定了C M P 系统的整体性能。因此寻找高效的多端口总线接口单元(B)结构,将多核心对主存的单字访问转为更
49、为高效的猝发(b u r s t)访问;同时寻找对C M P 处理器整体效率最佳的一次B u r s t 访问字的数量模型以及高效多端口B I U 访问的仲裁机制将是C M P 处理器研究的重要内容。6)操作系统设计:任务调度、中断处理、同步互斥对于多核C P U,优化操作系统任务调度算法是保证效率的关键。一般任务调度算法有全局队列调度和局部队列调度。前者是指操作系统维护一个全局的任务等待队列,当系统中有一个C P U 核心空闲时,操作系统就从全局任务等待队列中选取就绪任务开始在此核心上执行。这种方法的优点是C P U 核心利用率较高。后者是指操作系统为每个C P U 内核维护一个局部的任务等
50、待队列,当系统中有一个C P U 内核空闲时,便从该核心的任务等待队列中选取恰当的任务执行,这种方法的优点是任务基本上无需在多个C P U 核心间切换,有利于提高C P U 核局部C a c h e 命中率。目前多数多核C P U 操作系统采用的是基于全局队列的任务调度算法。多核的中断处理和单核有很大不同。多核的各处理器之间需要通过中断方式进行通信,所以多个处理器之间的本地中断控制器和负责仲裁各核之间中断分配的全局中断控制器也需要封装在芯片内部。另外,多核C P U 是一个多任务系统。由于不同任务会竞争共享资源,因此1 2上海大学硕士学位论文需要系统提供同步与互斥机制。而传统的用于单核的解决机