新闻中心

EEPW首页>嵌入式系统>设计应用> SPARC结构与实时内核的移植

SPARC结构与实时内核的移植

作者: 时间:2012-05-17 来源:网络 收藏

4.系统

时钟节拍

对于一个多任务系统,时钟节拍是必不可少的。ERC32CPU提供2个定时器,根据系统硬件采用的晶振源频率,可通过设置对应定时器控制寄存器的计数值,通过产生一定周期的系统来实现时钟节拍。对于时钟节拍的处理子程序,所选内核不同,其自带子程序也不同。在定时到来,只需将子程序入口地址添加到中断服务子程序中即可。

中断嵌套

当在系统开发中需要不同优先级中断,并可能发生中断嵌套的情况时,需要在进入中断服务子程序之前设置中断优先级,然后打开Trap,以允许在较长的中断服务子程序中响应更高优先级的中断。在退出中断服务子程序后,关闭Trap,将该中断优先级屏蔽掉,然后退出中断。

堆栈段

在堆栈的管理上存在堆栈帧的概念,并且每个帧的分配与产生都对应一个新的窗口和一个新的线程或者中断。根据中断的栈结构和线程栈结构的不同,可在程序初始化部分分配两个堆栈段。一个堆栈段对应普通线程的堆栈分配和管理,一个对应中断栈的分配和管理。这样在每个段中各帧的大小一致,不会在 Overflow Trap和Underflow Trap时读写内存出错。可以通过增加两个变量LEVEL,SKP来协调两个堆栈段的使用。使用两个堆栈的中断嵌套服务子程序流程图如图4。

5.总结

结构中比较复杂的部分就是的概念,但在使用中,效率也高很多。如果能了解的工作原理,并能正确使用Window flush操作,在软件设计上将会得到高的可靠性。

本文作者的创新点为,将能实现自动控制需求的小型uC/OS内核移植到具有高可靠性结构的ERC32 CPU。ERC32 CPU是专门针对航天应用而设计的CPU,采用V7指令集。航天工程的控制不像消费电子的控制那么复杂,但在可靠性和实时性方面要求比较苛刻,能够移植满足需求的小型内核,如uC/OS到ERC32,在工程上有很大的应用价值。

参考文献:

1.The SPARC Architecture Manual Version 8,SPARC International,Inc.1998.

2.Jean J.Labrosse,邵贝贝,嵌入式实时操作系统uC/OS-II(第二版),北京航空航天大学出版社

3.Rad.Hard 32-bit SPARC Embedded Processor User Guide, Atmel Inc.2004

4.陈继荣,Linux操作系统实时性分析及改进策略,微计算机信息,2005,11期,67页


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭