一种实时操作系统RTOS的硬件加速设计

2010-05-20 18:53:51来源: 沈国新,张德学,王桂海,焦汉明

  摘  要: RTOS是嵌入式系统中重要的组成部分,但其本身的运行使整个系统的性能下降。针对RTOS的任务调度和时间延时处理部分进行分析,并加以硬件实现。在运行63个任务时,采用硬件加速模块,任务响应时间为2 180个时钟周期。相比没有硬件支持的系统,任务响应时间可降低85.8%,提高了系统的可预测性。

  随着科技的进步,嵌入式系统的功能逐渐由简单向复杂发展,开发难度也随之提高。嵌入式操作系统的使用,屏蔽了部分硬件信息,提供给开发者统一的平台,降低了开发难度,提高了代码的重复利用率。在一些特殊的领域(医疗、汽车、航空航天),对嵌入式系统的实时性要求非常高。在这些场合,任务必须在给定的时间内响应并正确完成。而实时操作系统RTOS(Real Time Operation System)本身的运行,必然会引起性能的下降,在任务数量增加时,这种下降更加明显。例如,使用?滋C/OS-II实时操作系统在PowerPC处理器上运行,在TimeTick(时钟节拍)周期为10 ?滋s、运行64个任务的情况下,TimeTick中断函数占用的CPU时间已达到42%[1]。

  目前,RTOS软件层面的研究已经很成熟,可有效提高RTOS性能的方法有以下几种:

  (1)提高处理器的运行频率[2]。这对功耗相当敏感的嵌入式系统并不是好方法。同时高频时钟所引起的电磁干扰对电路板布线的要求也更高;

  (2)设计专用于RTOS系统服务的硬件。硬件对相同的操作可并行处理。如果设计一种硬件,在任务数量或TimeTick频率增加的情况下,系统也能在固定的时钟周期内完成所有任务域的更新,从而降低RTOS运行所占的CPU时间。

  本文设计了实时系统加速RTA(Real-Time Acceleration)模块,对任务调度和系统时间管理进行硬件化,降低了任务中断时间,并对最终的测量数据进行对比,得出结论。

  1 RTA的硬件设计

  本文的硬件平台使用OR1200[3] CPU,它是一款由OpenCores网站维护的开放源代码CPU,内部结构可见可修改,且没有版权问题。RTA模块作为从设备连接到Wishbone总线[4]上。在RTA模块中,由硬件实现任务管理和时间管理。RTA中的寄存器全部映射到内存空间上,软件通过对寄存器的访问来控制RTA模块的运行。

  该专用硬件可分成如下两部分:

  (1)任务管理和时间管理部分。RTA模块支持64个任务,使用基于优先级的调度策略,每个任务有唯一的优先级。RTA只在需要任务切换时才中断CPU。时间延时的最小单位是TimeTick(时钟节拍),最长时间延时可达65 535个TimeTick;

  (2)用于产生TimeTick信号的Timer(计时器)。RTA必须有独立的Timer为其产生TimeTick信号。在本文中,利用OR1200自带的Timer完成此工作。

  本文使用的系统是在μC/OS-II实时操作系统基础上改进实现的。该RTOS由Micrium网站维护,已经应用于商业产品[5]。整个软硬件的实现在FPGA开发板DE2-70上完成,系统时钟频率为25 MHz。

[1] [2] [3]

关键字:FPGA  RTOS  嵌入式  实时操作系统  Quartus  Cyclone

编辑:小甘 引用地址:http://www.eeworld.com.cn/FPGA/2010/0520/article_1147.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。
论坛活动 E手掌握
微信扫一扫加关注
论坛活动 E手掌握
芯片资讯 锐利解读
微信扫一扫加关注
芯片资讯 锐利解读
推荐阅读
全部
FPGA
RTOS
嵌入式
实时操作系统
Quartus
Cyclone

小广播

独家专题更多

富士通铁电随机存储器FRAM主题展馆
富士通铁电随机存储器FRAM主题展馆
馆内包含了 纵览FRAM、独立FRAM存储器专区、FRAM内置LSI专区三大部分内容。 
走,跟Molex一起去看《中国电子消费品趋势》!
走,跟Molex一起去看《中国电子消费品趋势》!
 
带你走进LED王国——Microchip LED应用专题
带你走进LED王国——Microchip LED应用专题
 

夏宇闻老师专栏

你问我答FPGA设计

北京航空航天大学教授,国内最早从事复杂数字逻辑和嵌入式系统设计的专家。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2016 EEWORLD.com.cn, Inc. All rights reserved