电子工程师的网站
首 页 |  新闻资讯 | 最新产品 | 解决方案 | 技术参数
设计应用
电路图 | 技术资料 | 芯片资料 | 技术论坛
  现在位置: 首页 > 设计应用 > 嵌入式系统/ARM技术 > 详细信息
嵌入式系统/ARM技术:Nucleus Plus在嵌入式系统应用
来源:   时间: 2008-1-30 6:33:58    

  适合于航空/航天、军队、国防等重要应用的可靠的嵌入式操作系统Nucleus Plus.

  Nucleus Plus是美国源代码操作系统商ATI公司(现为Mentor Graphics ESD)推出的新一代嵌入式操作系统,属于抢先式实时多任务操作系统内核, 95%的代码使用ANSI C编写,非常便于移植于各种处理器家族。从实现的角度讲,不同于传统嵌入式开发,Nucleus Plus是以函数库的形式链接到目标应用程序中,形成可执行目标代码,下载到目标板上或烧到ROM/FLASH ROM 中去执行。Nucleus Plus内核在典型的CISC体系结构上占据大约20k空间,而在典型的RISC体系结构上占据空间为40k左右,其内核数据结构占据1.5k字节的空间。Nucleus Plus以其实时响应、抢先、多任务以及源代码开放特性获得在通讯、国防、工业控制、航空/航天、铁路、网络、POS、自动化控制、智能家电等领域的广泛应用。
Nucleus Plus内核技术

  ATI公司使用一种叫做软件组件的方法。所谓软件组件,就是具有明确目的或用途的由1个或数个C语言/汇编源文件的一段非独立执行应用程序,且每个组件都提供一个定义好的外部接口,必须通过外部接口来使用组件。访问组件内的全局数据结构是被禁止的。使用了组件方法,软件组件既易于更新也易于重用。Nucleus Plus软件组件通常由定义数据类型、常量以及外部接口的INCLUDE 头文件和一个或多个C语言/汇编源文件组成。Nucleus Plus 提供如下组件:任务控制管理、内存管理、定时器管理、中断、系统诊断、I/O驱动管理等共16个组件如下,

Nucleus Plus Kernel: Common Service Component(CS)

Initialization Component(IN)

Tread Control Component(TC)

Timer Component(TI)

Mailbox Component(MB)

Pipe Component(PI)

Semaphore Component(SM)

Event Flag Component(EV)

Partition Component(PM)

Queue Component(QM)

Dynamic Memory Component(DM)

I/O Component(I/O)

History Component(HI)

Error Component(ER)

License Component (LI)

Release Component(RL)

  其中:

* IN:负责初始化Nucleus Plus 系统

* TC:负责管理Nucleus Plus的抢占式实时 任务和HISR的运行

* CS:负责提供具有链接列表其它的设备Nucleus Plus 组件

* TM:负责管理所有的Nucleus Plus 定时器设备。Nucleus Plus 的基本定时单元为一个Tick,它相当于一次硬件定时器中断

* MB:负责管理所有的Nucleus Plus 信箱设备

* QM:负责管理所有的Nucleus Plus 队列设备

* PI :负责管理所有的Nucleus Plus 管道设备

* SM:负责管理所有的Nucleus Plus 信号量设备

* EV:负责管理所有的Nucleus Plus 事件组设备

* PM:负责管理所有的Nucleus Plus 分区内存

* DM:负责管理所有的Nucleus Plus 动态内存

* I/O:负责管理所有的Nucleus Plus 输入/输出

* HI:负责Nucleus Plus的历史设备管理

* ER:负责管理所有的Nucleus Plus 系统错误

* LI:负责Nucleus Plus的许可证管理

* RL:负责Nucleus Plus 的版本管理

  Nucleus Plus 其它功能模块

  Nucleus Plus 除了其功能强大的内核外,还提供了面向INTERNET、TCP/IP、WEB浏览器、图形以及文件系统的软件包。


  Nucleus Plus 开发

  1, Nucleus Plus 定制

  Nucleus Plus 也能根据目标板的需要进行裁剪和定制,生成适合目标系统的操作系统,尽量少占系统内存。OS定制完成后,将其链接到目标应用程序,成为目标应用程序的一部分。在典型的CISC体系结构的目标板上,它占用约20K 左右的空间,而在RISC体系结构的目标板上占用约40K左右的空间。一般地,Nucleus Plus 足以满足绝大多数的嵌入式应用。ATI公司提供了一个名为BUILD_LI.BAT或PLUS.BAT的批处理文件,用户可以删剪其中的模块,更改相关的选项或开关,执行该文件生成与目标相关的操作系统,也就是根据系统需要生成定制的操作系统。需要注意的是,该批处理文件的内容与开发工具有关。

  2.开发方案

  Nucleus Plus可以结合Paradigm、SDS以及ATI的多任务调试器组成功能强大的集成开发环境,配合相应的编译器(Borland c/c++ 编译器、Turbo c/c++ 编译器或者Microsoft c/c++编译器)和动态链接库以及各类底层驱动软件就可以满足嵌入式应用的开发。

  3.开发流程

  用Nucleus Plus 开发嵌入式应用程序,一般遵循如下步骤:

* 如果有必要,应对低级系统初始化文件.INT进行修改,使之符合目标板的需要。如中断向量、I/O地址、时钟频率等。

* 定义Application _Initialize()函数。该函数在启动系统之前先执行。注意的是要把NUCLEUS.H头文件包括在目标应用程序中,以便利用Nucleus Plus 的服务。

* 定义应用程序的任务。如果调用Nucleus Plus 的服务,要把NUCLEUS.H包含进去。

* 编译/汇编所有的应用程序软件,并且包含系统低级初始化文件.INT。

* 链接.INT和所有的应用程序目标文件、Nucleus Plus库文件以及相关的开发工具库。

* 把生成的最终目标代码下载或烧到目标板上执行。

  4. Nucleus Plus 初始化

  Nucleus Plus 分三个层次的初始化,即:系统低级初始化Int-Initialize()、系统高级初始化Inc-Initialize()和应用程序初始化Application_Initialize(),初始化之后便进入Nucleus Plus 的任务调度循环。各个初始化函数任务见表1。

Int_Initialize()

Inc_Initialize()

Application_Initialize()

* 设置必要的处理器/系统控制寄存器

* 初始化中断向量表

* 设置系统堆栈寄存器

* 计算定时器HISR堆栈和优先级

* 计算系统第一个可用内存

* 将控制交给系统高级初始化例程

* 初始化Nucleus Plus 组件

* 将控制交给应用程序初始化例程

* 任务调度

* 执行用户定义的初始化,如创建内存池,创建任务、创建信号量、创建队列等

  5. Nucleus MNT

  Nucleus MNT是为软件开发者设计的,在WIN95/NT下构筑Nucleus Plus嵌入式应用的原型(Prototyping)环境。它通过两个库来实现,即针对目标环境的库和针对Win95/NT开发环境的库。开发时,应用程序代码可以不变,仅仅替换掉MNT库,使用交叉开发工具包重构目标环境下的可执行目标代码,请看图2。

  PROTOTYPING TARGET

  6. 开发注意事项

  嵌入式开发在内存需求、任务管理等方面存在着特殊性,因此,开发中对以下方面要额外加以注意,

* 任务饥荒

任务优先级的分配要合理,否则会导致系统中的一些任务一直不断地在运行而另一些任务永远得不到运行,引起饥荒。

* 死锁

系统资源的分配要合理,否则会引起两个或多个任务为竞争某一系统资源而处于无限挂起现象。

* 内存

* 内存泄露

内存分配过程中要尽量避免碎片并且要注意及时回收。

* 内存节约

* 默认情况下,Nucleus Plus, 在高级初始化函数Inc_Initialize()中。调用其它函数初始化它所提供的所有特征的数据结构中,有些特征用户目标应用程序可能用不到,为此,要去掉不必要的函数调用。

* 改变Nucleus.H中NU_MAX_LISRS的大小,它定义的是目标处理器的最大中断向量数。

* 改变TC_DEFS.H中TC_PRIORITIES的大小。它定义了任务的优先级数。Nucleus Plus 能支持256个优先级。

* HISR栈共享。

* TCD.C中禁止查询表TCD_LOWEST_SET_BIT的RAM拷贝。

* 使用一个更小的INT选项。

  结束语

  由于Nucleus Plus 的模块化、可靠、重用、开放、易用以及安全等特性使得它成为嵌入式应用开发的理想平台,尤其是关系到国计民生的领域,如航空/航天、军队、国防等方面。

相关信息
发表评论
打印本页 关闭本页
泰克推出业内首个手持式RF干扰查找工具
    泰克公司日前宣布,在其NetTek系列中增加最新产品-RF Scout干扰查找器。据称,这一产品在一个坚固耐用的手持式平台中为查找RF干扰、检查信号质量提供了所有必要的工具,使得网络性能规划和优化团队能够在随时可以用于现场的工具中,探索、发现、分析和存档干扰或其它信号质量问题。   转向速度更高的无线数据业务的发展趋势,正推动着对更干净的RF信号的需求,因为高速数据速率依...
>>详细内容
高性能射频调制器促成多载波通信发送器设计(上)
    蜂窝发送器的设计依赖于能够保持高线性度和高动态范围的高性能RF调制器。随着多载波发送器的增长,RF调制器必须保持低噪声基底,从而提供较高的性能指标,这通常取决于二阶或三阶互调。本文讨论了这些需求,并说明MAX2022能够满足典型四载波WCDMA发送架构的要求。 概述   现有的蜂窝基站大多采用超外差结构发送或接收射频信号。这种结构需要两次变频或更多的上、下变频级、中间滤...
>>详细内容
高性能射频调制器促成多载波通信发送器设计(下)
    蜂窝发送器的设计依赖于能够保持高线性度和高动态范围的高性能RF调制器。随着多载波发送器的增长,RF调制器必须保持低噪声基底,从而提供较高的性能指标,这通常取决于二阶或三阶互调。本文讨论了这些需求,并说明MAX2022能够满足典型四载波WCDMA发送架构的要求。 工作在UMTS波段的多载波WCDMA   多项性能指标综合体现出的优势在于多载波的互调特性。从本文可以看出,MAX2022能够...
>>详细内容
CSR蓝牙技术帮助诺基亚推出高性能蓝牙耳机
    目前已经上市的新款诺基亚蓝牙耳机BH-200采用了CSR公司的BlueCore3-Audio Flash (BlueCore3-AF),其语音通讯完全符合蓝牙v1.2技术规范。诺基亚蓝牙耳机BH-200是采用HFP1.5免提协议的第一款耳机,也是诺基亚公司采用CSR BlueCore技术并且已经上市的高端无线耳机系列之一。   诺基亚蓝牙耳机BH-200仅重14克,尺寸为49x22x21毫米,支持5小时30分钟通话时间及150小时待机时间。该款耳...
>>详细内容
PC-ISDN的接口设计
    摘要:提出了PC与基本速率ISDN连接的软硬件设计方案。介绍了基于PC总线、80C188微处理器、Mitel公司的ISDN通信器件以及IDT公司的EPLD逻辑硬件的ISDN卡的硬件结构,同时对软件的结构、任务和模块以及实现方案也作了说明。   关键词:PC-ISDN   ISDN 数据通信 Intel 80C188   1 系统设计考虑  计算机的普及及促进了远程通信的发展。然而1M字节大小的文件经过目前最快的V.34  ...
>>详细内容
德州仪器 Aureus™ 数字音频解决方案
  德州仪器Aureus™数字音频解决方案助力哈曼卡顿、安桥与雅马哈家庭娱乐新品获奖的音频DSP帮助OEM厂商为客户实现精彩特性。   日前,德州仪器(TI)宣布三家领先的音视频(A/V)接收机制造商(哈曼卡顿、安桥与雅马哈)已采用获奖的Aureus™系列高性能音频DSP产品,并应用在多款新一代A/V接收机与数字媒体中心产品中,从而为创新型家庭娱乐应用带来质量出众的音频体验。   TI高性...
>>详细内容
已有(
)位对此新闻感兴趣的网发发表了看法 >>更多评论
内 容:
     
 
热点新闻
一周排行
关于我们 | 服务项目 | 付款方式 | 广告服务 | 联系我们 | 友情链接 | 投诉 建议 合作 | 网站地图 | 加入收藏
Copyright © 2007-2008 WEEQOO.COM Corp.All Rights Reserved. 版权所有 经营许可证编号:浙B2-20050339 法律声明
维库电子旗下网站:维库电子市场网 | ChinaICMart | 维库电子开发网 | 维库电子人才网
总部:杭州市下城区朝晖路182号国都发展大厦1号楼80A
电话:0571-85889139-8007 QQ:303939539 | MSN:zh1226@hotmail.com |  邮箱:laz8258@163.com dzsc51@163.com