1、敬请登录网站在线投稿()年第期 一种并行信号多核 的块数据处理和传输方法唐宇(中国电子科技集团公司第十研究所,成都 )摘要:针对并行信号处理和传输资源消耗大的问题,利用高速 总线将多核 全互连,数据通过内存映射共享,个核可分别并行传输和处理数据,轻量级包头的 块传输速率高、复制数据少、效率高。经验证大大提高了数据吞吐率、减少了传输时延,解决了传统 器件实现并行计算编译时间长、调试困难、价格昂贵等问题,可推广到雷达信号脉冲压缩、图像处理、分布式智能云计算等领域。关键词:;全互连;内存映射;并行计算;中图分类号:文献标识码:(,):,:;引言随着科技的飞速发展,很多困扰已久的难题迎刃而解,所有复杂
2、的问题最后都会归结于计算,而信息量的爆炸性增长,带来系统熵的不断增加。为了节省时间和能耗,需要将很多问题同步解决,这就涉及到并行计算(如 信号处理),由于算法复杂、数据量大,需要不同的处理器协同完成;雷达信号脉冲压缩,雷达的每个脉冲周期采用二脉冲连续发射的形式,需要采用分段快速卷积法进行处理,也是一种并行计算;而云计算是通过网络将巨大的数据计算处理程序分解成无数个小程序,通过多个服务器同步处理这些数据。所有这些并行计算对信号处理平台的数据传输和实时处理效率要求也越来越高,而现实中,采用多个处理器或者一个处理器中的多个内核处理和传输数据很难做到高效实时,要么受制于带宽或架构形式,速率不高,要么受
3、限于协同困难,握手协议复杂,效率低下。为了提高并行计算的效率,本文提出了一种多核 高带宽互连的块数据传输处理解决方案,有效提升了数据传输带宽和处理效率。硬件设计为了组建高效的多处理器信号处理硬件平台,满足并行计算系统数据交换、数据处理的高实时性要求,本系统选用 公司推出的带有高速 总线接口的多核 处 理 器 ,由 个 单核构成,单核浮点运算能力达到 ,包含 配置寄存器 ,多核共享存储器 。数据 交 换 单 元 选 用 公 司 的 第 代 交 换 芯 片 ,该芯片支持最高达 的高速串行 数据 交 换,可 提 供 最 多 路 或 路 模 式 的 接 口,每 个 接 口 可 灵 活 配 置 成 每
4、秒 和 。本硬件平台基于高带宽互连多核心高性能处理器的思想,用 交换芯片 连接片核 ,所有端口设置成 进行路由包交换,对外的路 端口方便对外扩展,这种高带宽、高速交换总线的互连架构形式保证了数据能点对点高速传输到不同的节点,如图所示。年第期 图多核 交换架构平台除了 架 构 采 用 交换 互 连 结 构 外,利 用 总线的内存映射块传输机制,块数据传输 允 许 发 送 方 将大 量 数 据 缓 存 在 目标端 的连续内存空间中,以达到处理器间数据共享的能力,并在数据传输完成后用门铃通知对方,包头简短,传 输 过 程 中 无 其 他 握 手 时 间 开 销,效 率 高。由个核组成,每个核拥有各自
5、的 大小的 空间,个核共享 的 存储空间,实现内存共享,为提高传输效率,需要尽量减少访问外设冲突,减少数据复制次数,采用只通过 对 接口进行管理,块数据收发功能的代码也只运行在 上,其他核处理的数据通过本地进程间通信机制与 进行交互。内部内存交换原理框图如图所示。图 内部内存交换原理框图 软件设计在高速交换多核 硬件平台上,利用 自带的 实时操作系统,运行一个虚拟的块数据通信中间件,该中间件程序存放 的 外设,由 的二级引导程序启动,启动后调度实时操作系统,建立 节点之间或者节点的不同内核之间需要的通信连接,通过连接句柄建立连接后调用通信 函数就能传输数据。一个块数据传输连接由块数据发送端口和
6、块数据接收端口组成,块数据发送端口对应发送通道描述符,块数据接收端口对应接收通道描述符,发送端通过发送通道描述符向接收端发送块数据,接收端根据接收描述符接收块数据。接收端启动类似守护进程的接收程序监听发送端是否发来了通道描述符,接收通道描述符索引了一个数据块描述符队列和一个数据块队列,用于存储每次发送的数据块信息和数据块内容。平台上 中的任何一个内核都可以运行功能程序,经 路由包交换,通过连接句柄向任何一个其他 的任何一个内核发送数据,通过连接句柄发送数据流程如图所示。图通过连接句柄发送数据流程在实际应用中,将需要并行计算的海量数据分解为不同段的数据,从发送端如图的 分别发送到 的几个内核中同
7、时运算,类似多核系统块内结构,分别接收和处理数据,这样会大大提高效率。如图所示,假设 的 接收块数据,步骤如下:接收数据块,通过操作直接将数据放到 的 存储空间中。接收数据块描述符,通过 操作将描述符放入 的 存储空间中。接口产生门铃中断,根据门铃信息定位到接收通道描述符,从而获得块数据描述符地址与块数据地址等信息。将块数据地址和长度等信息通过本地进程间通信机制发送给 。处理收到的数据,处理完毕后通知 。更新接收通道描述出队指针,继续进入守护进程。同时,因为 编译速度比 快,在很多复杂系统集成项目中,不断有新功能加入就需要不断地编译程序敬请登录网站在线投稿()年第期 和下载程序,比 实现此类并
8、行计算节省了大量的调试时间,此外一般 器件价格比 昂贵,解决了系统资源集成效能的问题。图 上接收块数据流程 代码实现及验证多核 的块数据功能提供了两类接口,一类为连接操作接口,另一类为块数据传输接口。此外,还提供了如下块传输连接控制接口:()()()()()提供了如下块数据传输接口:(,)(,)(,)()多个内核同时接收块数据时,如果打开了共享内存的 功能,需要注意维护 一致性,可以使用 的一系列用于维护缓存和预取一致性的 函数,包括 、,避免数据与发送不一致。在验证环节,使用 数据从 分别重复发送到 的个内核、,从吞吐率、编译时间、传输时延方面与常规消息模式的 传输效率 进行比较,结果如表所
9、列。表多核 块数据与 消息数据效率对比指标 内核 内核 内核吞吐率()传输时延 编译时间 结语基于高速总线交换架构多核 块数据传输的硬件及软件平台,经验证测试,在同样的数据量、同样的程序代码量的情况下,因为利用了高速 内存映射,具有块数据复制少、包花销少、多核协同处理、代码编译快的特点,多核 的块数据传输在吞吐率、传输时延和机器编译时间方面均优于 消息传输模式。并行计算对信号处理平台的数据传输和实时处理效率要求不断提高,本文针对传统 消息模式的点对点传输模式处理并行效率低下的问题,提出了一种适用于工程实现、便于扩展的高速 交换多核 处理软硬件解决方案,经验证能提升数据吞吐率、减少时延、缩短调试
10、编译时间,有助于打造复杂、高度综合化、高集成度的电子系统,已应用于航空电子、航天测控等领域,未来可在分布式智能计算领域、嵌入式工业采集计算领域 推广应用。参考文献邵龙一种多 的 信号处理平台设计电子设计工程,():魏勐 一种阵列式 结构在雷达信号处理的应用 现代电子技术,():康国胜 云计算与信息资源共享管理 科技创新导报,():陈芳兰,姜宗田 高速串行接口 的设计与实现 通信设计与应用,():张剑峰,周伟 基于综合一体化数字平台的 总线网络交换设计 数字通信世界,():朱道山 基于 块数据传输设计与实现 现代雷达,():武庆钊,吕林森 基于共享内存的多进程任务系统软件设计 航空电子技术,()
11、:杨磊,张莹基于 多核 的 方式研究数字技术与应用,():高逸龙 总线的嵌入式异构平台通信中间件 单片机与嵌入式系统应用,():王晨,刘学纵基于系统内核与共享内存的守护进程实现研究 工业控制计算机,():邢慧敏,谢憬 一种多核系统中的二维块数据存储机制计算机工程,():李金明,高德亮 基于 新型架构信号协同处理方案分析 兰州石化职业技术学院学报,():李辉 一种跳频信号解调的多核 设计方法 电子设计工程,():潘灵 高性能通信中间件设计 电子技术应用,():胥保春,李佩娟基于数据采集卡的多通道阵列信号采集系统设计 电子设计工程 ,():唐宇(高级工程师),主要研究方向为嵌入式软硬件平台设计。通信作者:唐宇,。(责任编辑:薛士然收稿日期:)