面向DSP处理器的多核实时操作系统解决方案

面向DSP处理器的多核操作系统

网电、太空、深海、临近空间,相控雷达,集群处理,分布式计算等,对系统处理能力、实时性、精度与动态范围提出了更高的要求,而单核芯片受物理极限、制作成本、处理能力以及功耗、散热方面的制约,已经成为系统瓶颈。

为提高处理性能,传统做法是增加单核芯片的板卡数量,但导致了交互复杂、设计复杂、硬件投入大、可维护性差等多种问题。传统硬件正在从FPGA+PPC+DSP,向多核DSP+SOC的方向发展,多核处理器上将集成更多结构简单易用的IP,异构多核与加速器,是处理器发展的大趋势。

多核处理器操作系统的关键问题:

Ø  任务的调度机制:由主核调度,还是每个核分别调度

Ø  锁、信号量的实现机制:由操作系统提供,还是驱动提供

Ø  存储器一致性的管理:是否需要用户参与

Ø  处理器间的通信问题:必须高效完成

Ø  资源共享问题:比如处理器外设的使用

在以运算速度见长的DSP处理器上,实现负载均衡没有应用价值。Phoenix RTOS的本质是单核操作系统,在多核上是一种AMP运行模式(数据段私有,代码段可共享)。每个核运行一个独立的OS实例,各自调度。封装了基于零内存拷贝的核间通信机制,使核间通信、处理器内通信,甚至DSP间通信,具有统一的消息接口API,无主从核的关系,更易实现带冗余机制的健壮系统。

多核DSP操作系统运行模式

多核DSP操作系统的关键点,在于首先在每个处理器的核上运行独立的操作系统实例,并且通过零拷贝内存管理、接口封装、操作系统配置等技术,将其整合成确定性运行的操作系统。

零拷贝核间通信技术

面向DSP处理器的单核实时操作系统

Phoenix RTOS是经验证的硬实时嵌入式操作系统,针对复杂的DSP处理器产品,尤其适用于多核同构及异构嵌入式处理器。PhoenixRTOS通过多种方式来保证系统的健壮性,无论是运行时异常或用户代码异常,在被内核捕获后,均会集中由Phoenix RTOS上报。在某些处理器上,Phoenix RTOS还可以在系统空闲或延时情况下进入节电管理模式。Phoenix RTOS提供了所有现代实时内核所需要的功能,包括资源管理、任务间的同步与通信等,它还提供业界其它许多实时内核不具备的功能,如堆栈与消息完整性检查、Hook函数、向任务直接发送消息等。

主要技术特性:

Ø 可裁剪,最小内核代码约为10KB

Ø 快速的中断响应与任务切换算法(中断响应时间约100ns@1GHz)

Ø 高效的内存管理算法,尤其适合嵌入式实时系统

Ø 丰富的容错与检测机制,可监测消息改写,堆栈溢出等复杂场景

Ø 集中式的出错处理机制可减少用户代码并提高定位效率

Ø 基于优先级的可抢占式调度,每个任务均有独立堆栈

Ø 每个任务均有自己的消息队列,基于零拷贝的高效任务间通信

Ø 支持事件、定时、信号量、消息等多种同步方式

Ø 支持等待多个内核对象以及中断嵌套

Ø 易于编程,易于配置,缩短软件上市时间

Phoenix RTOS模块组成

Phoenix RTOS并不能检查到所有的软件缺陷,事实上也没有这样一种能检查到所有缺陷的操作。运行时的错误尤其难以被捕获。

Phoenix CDA可以处理宕机后的内存数据,生成内核分析结果:

Phoenix RTOS CDA工具

Phoenix RTOS的源文件主要由以下模块组成:

Ø 平台依赖模块:用于指定不同的处理器内核架构;

Ø 错误管理模块:集中式管理操作系统发生的所有错误;

Ø 事件管理模块:主要用于任务间的同步,不能携带数据;

Ø 中断管理模块:响应突发事件的方式,它可以由硬件触发,或由系统中的软件事件触发;

Ø 内存管理模块:采用了固定大小内存块的管理机制,支持动态分配内存,提供消息内存池管理方法;

Ø 消息管理模块:可以包含可选的数据负荷服务于任务间的通信,也可以服务于任务间的同步;

Ø 信号量管理模块:用于多任务对共享资源的同步或互斥访问,不能传递数据;

Ø 任务管理模块:通过OS的任务调度,多个任务并发运行,交替获得CPU时间。

  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值