您的位置 首页 传感器

双核实时体系的架构办法

嵌入式技术的不断成熟以及业界对工业设备小型化、个性化需求的不断提高促使越来越多的工业设备控制系统采用嵌入式系统设计。工业设备控制最大的特点是对系统实时性要求较高。而通常情况下,控制过程中常常同时存在多

1.导言

嵌入式技能的不断老练以及业界对工业设备小型化、个性化需求的不断进步促进越来越多的工业设备操控体系选用嵌入式体系规划。工业设备操控最大的特点是对体系实时性要求较高。而一般状况下,操控进程中常常一起存在多种不同实时性要求的使命,不同使命对处理器时刻的占用份额也有较大差异,因而怎么有用的满意并进步体系实时功用成为研讨的要害。

传统的操控体系单核处理器架构是干流,除了经过进步处理器主频来进步体系的呼应速度,还经过运用抢占式实时操作体系,引进多线程,改进体系使命调度战略等软件办法来进一步进步体系功用。但跟着运用不断杂乱,操控精度要求不断进步,有限的体系资源成为操控体系功用进步的最大瓶颈。

针对单CPU架构的局限性,多处理器体系的研讨运用逐步增多,文献[1]选用FPGA 和多个DSP 互连的并行处理结构,完结了一个高速数据传输带宽、低推迟且核算功用强壮的实时图画处理体系。文献[2]提出了一种根据ARM的双CPU和谐运动操控体系的规划办法。文献[3]选用ARM+DSP的主从式双CPU结构规划完结了嵌入式运动操控器。文献[4]剖析比较了几种典型的嵌入式双核通讯接口,并介绍了典型接口的规划要害。文献[5]在单核嵌入式操作体系构架的基础上,提出一种根据对称通讯的双核处理器嵌入式操作体系构架,处理了异构双核处理器中的通讯功率和同享内存的运用问题。跟着双核架构运用的不断推行,一起双核微处理器技能逐步老练,怎么规划安稳高效的体系软件架构成为当时研讨的要害。本文以F28M35双核体系为例,介绍了一种以IPC通讯机制为中心,根据同享内存的双核软件架构办法。

2.双核间通讯的体系结构

完结双核间的数据通讯,除了数据传输介质——同享内存外,还需求体系供给一套双核间交互的信号机制。一般该信号机制中一起包含中止信号和非中止信号。运用该信号机制,结合同享内存,可规划出各种灵敏的通讯办法。

从通讯信号的视点,通讯办法可分为轮询办法和中止办法。因为轮询办法使内核处于忙等的状况,因而应尽量防止运用,该办法多用于双核之间事情需严厉依照必定的次序履行的状况,例如体系启动时双核之间的初始化交互。

从带着数据量的视点讲,双核之间可仅仅运用信号机制完结通讯,两边协议默许的操作;别的,也是大部分时分的通讯办法,两边经过同享内存交流数据,该办法在规划时,将同享内存区分为两种特点的内存区,别离用于两个方向的数据传递。一种内存答应一个内核进行读写操作,而答应别的一个内核进行只读操作,另一种则方向相反。例如,A内核欲向B内核发送数据时,先将数据写入A核空间内的同享内存区,然后向B核发送信号,B核收到信号后从该方向的同享内存区将数据取出,并回复A核,完结一次数据通讯。

通讯协议和通讯接口封装是双核通讯应该要害考虑的环节。简略的数据通讯,两边能够直接发送数据,默许两边现已知道数据的意义以及数据应该放置的内存地址。可是跟着体系逐步杂乱,代码量逐步添加,无协议的数据通讯给编程和了解都带来很大问题,下降体系的可扩展功用。在规划中双核通讯能够选用和体系外设相同的通讯协议,例如串口通讯运用的Modbus协议,这样能够重复运用协议解析函数,一起也可进步可移植性。别的可根据实践需求自行界说适用的通讯协议,或许将通用的通讯协议做恰当的修改以更习惯同享内存大数据量的数据通讯。关于通讯接口的软件封装一般界说数据发送函数、数据接纳函数、协议解析函数等,准则是接口应尽量精简,最大程度下降双核间的耦合度。

3.双核间的数据同享机制

双核间完结数据同享首要有两种战略,一种是将同享数据直接存储于同享内存中,双核均可对其进行操作。该办法要害要处理对同享内存互斥拜访的问题。关于双口RAM互斥拜访的办法大致有两种:

1)硬件判优,体系经过存储器抵触裁决单元向两个内核供给同享内存拜访抵触标志,当双核一起对相同地址的RAM进行存取时,裁决单元促发相应忙信号,规划中可运用该信号刺进等待时刻,防止拜访抵触。

2)信号量机制,体系供给独立于双核的信号量办理单元。该办法又名令牌判优办法,每个令牌可对应指定地址,指定长度的同享内存段。双核依照协议的规矩替换取得令牌,从而操作相应的同享内存段。当双核一起请求同一个令牌时,信号量办理单元裁决谁先占用。规划中可经过在拜访内存前先请求对应的令牌完结双核对同享内存区的互斥拜访。

另一种完结数据同享的战略是在双核各自本地界说相同的数据作为同享数据,依照写后及时更新的准则,运用中止办法经过双核间的数据通讯完结数据同步。这种办法适用于同享数据满意必定条件时,即该同享数据关于其间一个内核是只读的,不然,因为双核独立运转,运转进展几乎没有限制,若呈现双核均改写同享数据的话,无法确保数据的有用性。

4. 双核使命分配

使命分配的准则在于充分运用双核资源,最大极限缩小体系呼应时刻。例如在运动操控范畴运用ARM+DSP双核处理器构架操控体系,在ARM核中完结体系逻辑操控,在DSP核中完结运动操控输出,ARM核操控运动进程,经过指令的办法驱动DSP核完结详细的运动动作。别的在注塑机操控实例中,运用ARM核完结注塑进程操控,而在DSP端完结注塑机方位和温度的智能操控算法,完结体系优化处理。

5. F28M35双核处理器的软件架构规划

5.1 F28M35双核存储结构

TI的全新Concerto-F28M35微操控器选用了一种双子体系架构,其间包含一个TI C28x内核与一个ARM Cortex-M3内核。这种混合架构将业界用于操控和主机通讯功用的最佳技能融入到单个操控器中,而该操控器可供给保持实时操控环路所需的功用、功率及可靠性,并具有低推迟通讯所需的快速呼应才能。

在F28M35中包含两类同享内存,一类是MTOC-message RAM(MTOCMSGRAM)和CTOM-message RAM(CTOMMSGRAM),巨细都为2K,其特点是一个内核对其有读写的权限,而别的一个内核仅有只读权限。例如,M3内核能够读写MTOCMSGRAM内存,而C28内核只能对MTOCMSGRAM进行读操作。别的一类同享内存包含8个内存块(S0-S7),巨细均为8K。该类内存能够被区分到恣意内核,体系经过操控寄存器MSxMSEL设置该类内存的特点,每块内存对应该寄存器中的一位,经过设置相应位来设置相应内存块的归属权。例如,若S0被设置为归属M3内核,则M3内核可读写该内存,而C28内核只能对其进行读操作。一起需求留意的是,操控寄存器MSxMSEL只能在M3内核中进行设置5.2 IPC机制

在双核技能中,两边之间的通讯是中心。在F28M35x体系结构中,根据IPC信号和IPC中止完结IPC通讯(Inter ProcessorCommunications)机制。

该处理器在每个方向(MTOC/CTOM)上界说了32个IPC信号,前4个信号促发时能够附加中止功用。处理器经过一套寄存器组完结IPC信号的操作。每个内核经过自己存储空间内的一套寄存器完结IPC功用,每个寄存器32位,每一位别离代表一个IPC信号,第0-3位一起可设置为IPC中止。以C28内核为例,寄存器组别离包含:

1)CTOMIPCSET,用于向M3核发送IPC信号或许IPC中止。该寄存器置位时,一起将CTOMIPCFLG和CTOMIPCSTS寄存器相应方位为1。

2)CTOMIPCCLR,用于铲除C28到M3方向上的IPC信号或IPC中止标志。该寄存器置位时,一起将CTOMIPCFLG和CTOMIPCSTS寄存器相应位清零。

3)CTOMIPCFLG,该寄存器为只读寄存器,用于显现C28核到M3核方向上当时IPC信号的状况。该寄存器和M3存储空间中的CTOMIPCSTS寄存器在物理上是同一个寄存器。

4)MTOCIPCSTS,效果和CTOMIPCFLG相似,相同是只读的,仅仅表征方向相反,用于显现M3核到C28核当时IPC信号的状况。相同,它和M3存储空间中的MTOCIPCFLG寄存器在物理上是同一个寄存器。

5)MTOCIPCACK,该寄存器置位时,一起将MTOCIPCFLG和MTOCIPCSTS寄存器相应位清零。当C28内核收到M3发送来的IPC信号或许IPC中止时,运用该寄存器发送承认信息,完结二者的握手。

形象的说,双核之间保护了两条彼此独立的全双工通道,每条通道包含了一个方向的信号发送(SET)和反向的信号承认(ACK)。一起两边能够随时读取两个方向下的当时IPC状况(FLG/STS)。终究完结双核间的IPC交互机制。

此外,F28M35还供给了一套IPC音讯寄存器,别离是MTOC Message Registers和CTOM Message Registers,别离在每个内核空间对应4个寄存器。结合IPC信号和IPC中止完结双核之间的快捷通讯。

5.3 双核芯片的软件体系

以体系操控块数据结构为中心的双核体系的架构办法。即规划了一种数据结构,称作体系操控块(System Control Block,SCB)。将体系一切相关操控目标均映射到体系操控块中,每个使命对体系的操作均可转化为对SCB的读写操作,这样体系能够很便利的完结模块化,界说SCB操作办理模块即可完结多使命对体系操作的统一办理。关于SCB与实践操控目标的物理相关能够经过对应的驱动模块完结。

以SCB为中心的体系简易逻辑架构,SCB不只表现操控器与外部操控目标之间联系,例如,映射人机界面操作、PC机监控进程以及各种输入输出信号等;一起,SCB还包含了双核之间完结体系操控的内部数据映射。SCB的根本结构如图4所示,首要包含A核外设映射区、B核外设映射区、体系参数区、体系状况区等。

SCB是整个体系的表现,从处理器内部剖析,双核经过保护同一个SCB完结对体系的和谐操控。运用双核之间的通讯,当其间一个内核的SCB被写操作时,当即向另一内核发送更新指令,实时完结双核间的数据同步。

运用上小结中介绍的IPC信号机制,以及多种办法的存储空间,能够灵敏规划出多种双核通讯办法。如下所述:

1)仅运用IPC信号或许IPC中止办法,多用于完结拓扑序事情履行,或许体系启动时初始化握手交互。

2)IPC信号/中止+IPC音讯寄存器组办法,用于小数据量的通讯。指令寄存器中的指令完全由软件界说,用户可规划不同的指令来完结不同的数据操作。多用于对字节型内存的读写操作。

3)IPC信号/中止+MSGRAM/S0-S7办法,S0-S7可别离分配给恣意内核,该办法能够完结大数据量的核间通讯,一起运用通用或许自界说的通讯协议,可进步体系的扩展才能及可移植性。

6.小结

是根据F28M35双核处理器规划完结的注塑机主操控器,选用本文介绍的办法完结了主从式软件架构,ARM核作为主核完结与上位机的通讯使命和体系逻辑进程的操控使命,运用DSP高速的核算才能作为从核完结注塑机方位操控和温度操控智能算法的履行使命,双核经过SCB的映射完结彼此的和谐。新的操控器代替了原有的以600MHZ主频处理器为中心的操控体系,较好了完结了注塑机的操控使命。

在今后的工作中,从核智能操控算法仍有优化的空间,体系功用仍可进一步改进。别的,除了主从形式,将研讨双主形式,完结更灵敏有用的体系架构,并完结双端独立的在线监控和程序下载等功用,进一步下降软件开发难度。

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/yingyong/chuanganqi/292862.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部