嵌入式测控系统中的多处理器架构设计_第1页
嵌入式测控系统中的多处理器架构设计_第2页
嵌入式测控系统中的多处理器架构设计_第3页
嵌入式测控系统中的多处理器架构设计_第4页
嵌入式测控系统中的多处理器架构设计_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

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

文档简介

1 / 9嵌入式测控系统中的多处理器架构设计摘要:针对嵌入式设备资源的有限性以及嵌入式测控系统实时性的要求,提出了一个基于多处理器的测控系统架构的设想,以便于在有限的资源下更快的对现场采集的数据进行处理。 关键词:嵌入式系统;测控;多处理器 一、多处理器系统的框架 多处理器系统就是在一个系统中含有多个 CPU,每个CPU 独立地处理一个或少量的事务,在操作系统的控制下,控制数据合理流动,以完成设计要求的系统。使用多处理器主要有两种目的。一种是想利用多台处理器进行多任务处理。另一种是想依靠冗余的处理器及重组能力来提高系统的可靠性、适应性和可用性。 2 / 9多处理器系统中,根据多个处理器之间的相互关系可以分为两类:对称多处理器和非对称多处理器。在对称式多处理器系统中,系统资源如存储器和磁盘输入/输出(1/0)被系统中的所有微处理器共享,工作负载被均匀地分配到所有可用处理器上,从而避免对某些特定任务,一些处理器忙不过来,而另一些处理器却闲着。当系统中加入新处理器时,对所有的任务,对称式多处理器系统的性能都会提高。对称多处理器对存储器的访问采用的是均匀存储访问的模式,其特点是:物理存储器被所有处理器均匀共享;所有处理器访问任何存储单元用相同的时间;每台处理器可带私有高速缓存:外围设备也可以一定形式共享。其结构如图 1 所示。 二、多处理器系统中应注意的问题 与单处理器系统相比,多处理器结构的实现必须考虑和解决一些特殊问题。 3 / 9处理器之间的负载问题 在单处理器结构中不存在负载不均匀的问题。但在多处理器结构中,如何把工作更均衡的分配给各个处理器,使多处理器之间的负载更均衡是重要的问题。在对称多处理器结构中,需要尽量把工作平均分配给各个处理器,而对于非对称处理器结构,每个处理器有自己特定的工作,工作的时候是各负其责,所以很多情况下不能够平均分配负载。如何解决系统中不同的分配负载的问题需要操作系统的调度算法来实现。 处理器间通信的问题 在单处理器结构中不存在处理器之间的通信,只有进程之间的通信。各个进程看上去是并行的,但实际上却是串行的,因为在任一个时刻只有一个进程在真正运行。在这样的系统中,保证进程间的同步和互斥是比较容易的。4 / 9对临界资源的操作中途不发生进程调度,而且不产生与所使用的临界资源有关的中断,就可以保证操作的互斥性。在多处理器结构中,各个处理器并不是相互孤立的,而是协同工作的。那么处理器间就需要进行通信。现有系统中常用的方法有:利用双口 RAM 实现 CPU 之间的通信、利用共享内存的方法实现 CPU 之间的通信、利用总线的方法实现CPU 之间的通信等。 (三)高速缓存与内存之间内容的一致性问题 在单处理器结构中,使用高速缓存的目的仅在于通过提高 CPU 取指令和读写数据的速度来改善系统的性能。高速缓存一般在 CPU 内部,有非常高的访问效率。在多处理器结构中情况就复杂了。因为一个 CPU 并不知道别的 CPU会在何时改变内存的内容。这样就会造成单个 CPU 的高速缓存与多个 CPU 共享的内存之间数据的不一致。在对称多处理器结构中高速缓存的作用比在单处理器结构中更为重要,因为它不但可以提高取指令和读写数据的速度,还有利于减少多个 CPU 在访问内存时的冲突。一般的内存都不允许在同一时间内受到多个 CPU 的访问,所以,在对称多处理器结构中通常每个 CPU 都有较大的高速缓存,从而一旦把高速缓存装满以后,就可以运行相当长的时间而无需5 / 9经常读写物理内存。 三、嵌入式测控网络中多处理器的结构 微处理器和各种硬件本身性能的提高,对嵌入式系统的实时性要求也越来越迫切。在嵌入式测控系统的设计中我们最基本的出发点就是提高系统的实时性,所做的工作也都是围绕着提高系统的实时性而展开的。 提高嵌入式监控系统的实时性,主要有两个方面:一是从传输过程中提高数据的传输效率来提高实时性;二是从处理器提高处理数据的速度方面来提高实时性。 从数据传输方面提高系统的实时性涉及的面比较广,例如,改进传统的 TCP 拥塞控制、裁减传统协议栈、改进数据调度算法等等。人们研究的热点也是围绕以上这几个方面来做的,并且也取得了大量的成果,大大提高了系统6 / 9的实时通讯能力。 对从处理器处理数据的速度方面来提高系统的实时性这个问题人们也做了大量的研究,但大多数研究都是围绕如何提高处理器的性能来进行的。可是现在硬件发展也已经到了一定的高度,芯片的集成度己经很高,如果再依靠提高芯片晶体管的密度来提高处理器的速度,那么芯片的散热和能耗等副作用也将明显加剧,所以单纯依靠提高处理器的速度也是不现实的。 在嵌入式测控系统中,采集点采集的数据是海量的、实时返回的,管理平台中的处理器每时每刻都要处理从采集点返回的源源不断的数据,其工作负担是很大的。在这种数据吞吐量大的高速采集与处理系统中,由于处理器硬件本身数据处理速度的限制,往往难以满足控制系统高实时性的要求。处理器的信息处理能力严重影响了整个嵌入式系统的性能。在嵌入式测控系统的管理平台中使用多处理器结构,把原本一个处理器的工作平均分配给多个处理器来进行,这样可以大大减轻处理器的负担,提高整个系统的实时性。 7 / 9四、多处理器结构的设计 本方案结合非对称多处理器和对称多处理器两种结构的优点以及嵌入式实时监控系统的特点进行设计,其设计思想如下: 当大量的采集数据被送到管理平台后(即多处理器系统中),可以先设一个处理器专门负责数据包的分发工作,并且由该处理器时刻监控其它处理器的工作状态,根据其它处理器的工作状态来决定如何分发数据包。这样就避免了数据包进入多处理器系统后需要轮询各处理器所消耗的时间。各监控点采集来的数据包首先在数据包分发处理器前排队等待处理。数据包分发处理器根据队列中数据包的优先级以及各处理数据包处理器的工作状态把数据包分发给各处理数据包处理器进行处理。由于数据包分发处理器只负责简单的数据包分发工作,所以数据包在该处理器前排队并不会等待很长时间。数据包被分发后发送到空闲状态的处 8 / 9理数据包处理器。各处理数据包处理器只负责数据的处理,它们之间是完全的对称关系。处理完数据后,再将处理好的数据传送回远端的服务器上。 所设计的嵌入式测控系统的多处理器结构如图 2 所示。 数据包分发处理器与处理数据包处理器是不对称的。数据包分发处理器只负责数据包的分发工作。分发的依据是数据包的优先级,在的第三章中会详细介绍。 数据包被分配给处理数据包处理器的时候不采用轮询的方式,因为轮询会消耗一定的时间。优先级确定好的数据包被放入缓存区中排队,等待多处理器中有空闲状态的处理器来处理。多个处理数据包处理器之间则是完全平等的关系,采用共享内存的方式连接在一起。 若管理平台采用普通的对称式多处理器系统,则采集点传回来的数据包需要在系统的调度算法的控制下分发给各处理数据包处理器,调度算法的使用会占用一定的系统资源,且实现起来代价很高。而添加了数据包分发处理器后,各处理器还是处于对称的地位,只是具体分工不同。9 / 9分发工作全部由数据包分发处理器完成,这样可以使各处理数据包处理器专心处理数

温馨提示

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

评论

0/150

提交评论