嵌入式CPU软硬件协同开发中的操作系统设计.pdf
《嵌入式CPU软硬件协同开发中的操作系统设计.pdf》由会员分享,可在线阅读,更多相关《嵌入式CPU软硬件协同开发中的操作系统设计.pdf(5页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、!#$%&%()#$&*+,#清华大学学报-自然科学版./0 1 2 3 4 5 6 783 2 9-:2;0 期*%=?A B(=#B*C,+DC +&C E嵌入式F G H软硬件协同开发中的操作系统设计董渊=王生原=陈嘉=田金兰=张素琴-清华大学 计算机科学与技术系=北京$%D(.收稿日期I*%(&%E&$%基金项目I国家自然科学基金资助项目-E%D+%(.J国家K八六三L高技术项目-*%*MM$N%+%.作者简介I董渊-$C +&.=男-汉.=内蒙古=讲师O摘要I为了满足高性能嵌入式)P 8软硬件协同开发的需要=提出一个嵌入式Q 2 3 6 R操作系统设计方案=在真正的硬件完成之前利用虚
2、拟原型系统进行软硬件集成测试O该方案基于开放源代码软件=采用精简配置的Q 2 3 6 RS T 3&%C +&%(Z _ a b cd e d f d g ah i jk l j m l j ,d i h f m l j n i o p q i r a fs t u vw x y z=|u v !z#x y z=$%&u(y=)*|u(z+y z=,%|u v x-(z-.r l j f a f i h F i r b f j/n a n l a 0 n k a i q i g e=0 d a g k b lH a p j d f e=1 2 a g3 4 4 4 5 6=F k a l.7
3、d f j l n f I0 5 8 9 A 9:3;5 2 4 5 9 T T:7 3:U 8 8 8)P 8T =6 2 T 1:&8 9 A 9:3;5 7 T =;5 8 9 A 9:3;?2;17 3 8;5 9 T 7;2 3 41 W 1;:B0 5 2 19 7 9 T8 1:T 2 U 178 1 2 4 31:5 :T7 3:U 8 8 8Q 2 3 6 R1 W 1;:;5 7;9 T 9 2 8 1:&8 1 2 4 3 7 A A;5 T 9 7 T;17 3 8 9 T 2 7 T 3 9 2 T 3:3;U T ;5 7 T 2 17 9 7 2 A 7 U A
4、BV 7 1 8 3 9 31 6 T:1 T;5 1:5 :6 1 171 2:9 A 2 2 8Q 2 3 6 R?T 3 2;57 3:U 8 8 8T ;2 A 1 W 1;:2 3:A 6 8 2 3 46)A 2 U:=V 6 1 W U R7 3 81 :U 3:5:7 T?9 T 4 T 7:1 T :P )*%B0 5 2 11 W 1;:5 7 1U 31 6:1 1 6 A A W7 9 9 A 2 8;5 7 T ,1 7 T :&8 9 A 9:3;0 1 2 3 4 5 6 7 83 2 9 T 1 2;W A 1Y2:T P T :1 1 T-0 X8YP.B0
5、5 1 W 1;:2:9 T 9 1;5 9 T 2 2:7;2 3 2:2 3:W7 3 8 9;2:2 B 1;5 9 T T:7 3:;5 :U 8 8 8)P 8B0 1;T ;5 7;5 1 W 1;:7 3:T T :;A W 7 3 8 2:2 3;A W9 T T:&9 T 2 2:7;2 3 3;5:W:A&7:6 T 7;1 2:6 A 7;T=:;2 3 4;5 1;T 2:;8 1 2 4 3:3 1;T 7 2 3;1 1 2:6 A 7;3 2 38 9 A 9:3;3 9 2 T :3;7 3 81 6:1 1 6 A T 6 3 3 2 3 4 ;5;7 T 4
6、 ;)P 8BC em i j d I 9 T 7;2 31 W 1;:J:U 8 8 7 T ,1 7 T:&8 9 A 9:3;J1 W 1;:8 1 2 4 3现代生产生活中广泛使用的嵌入系统大多采用软硬件协同设计方法开发=以加快产品上市时间=提高质量并满足更为严格的设计约束D$EO协同设计中必须考虑系统建模F软硬件之间的功能划分F协同综合F协同模拟和协同验证等问题O其中协同验证利用虚 拟的硬件原型系统-软件模拟器或者硬件仿真器.=在真正的硬件实现之前进行系统集成测试=是整个方法中最重要的步骤之一O高性能嵌入式微处理器需要自己的操作系统=在这些)P 8的协同开发过程中必须同时考虑操作系统
7、的设计=验证阶段也采用该系统O通常的嵌入式操作系统开发使用经过验证的硬件环境和开发环境O通常嵌入式系统协同设计开发中=)P 8和相应的开发环境也是已有的并且经过验证=软件系统和硬件同步设计和开发O嵌入)P 8软硬件协同开发不同于上述两种情况=)P 8本身F相应的开发工具以及操作系统同步开发设计=三者都未经验证O本文所讨论的嵌入式操作系统开发就是处于嵌入式)P 8设计这个特定情形下=硬件环境F开发环境以及操作系统都统一纳入到协同设计中=功能和接口划分清楚之后同步并行开发=在各种模拟器环境中运行操作系统进行协同验证O因此=这样的操作系统是在软硬件协同开发过程中=使用不完善的工具开发=运行于不完善的
8、模拟器平台之上=在开发阶段作为开发工具和硬件平台的一个测试向量=验证开发工具以及)P 8的设计和实现=特别)P 8中关于软硬件接口F系统初始化以及例外处理的部分=在硬件完成之后=经过扩展作为开发板的操作系统O 万方数据本文以清华大学高性能!低功耗的嵌入式微处理器#$%&()*+,-.$*)/0 1()2 34)5 1 6 7 1 6 5 0(6 1 8协 同 开 发 为 背 景9提 出 一 种$:;()*+,-.$*)/0 1()2 30 4)*-?操作系统设计方案9详细介绍该方案的关键方法和技术问题A系统设计目标在软硬件协同开发中对操作系统的要求是能够达到硬件环境!开发环境以及操作系统互相验
9、证的目的9验证目的和虚拟运行环境决定了系统的设计目标要达到验证目的9必须对作为测试向量的操作系统的代码以及运行情况有深入的把握9这就要求操作系统要尽可能小9便于把握和跟踪9同时功能要尽可能完备9以保证测试尽可能全面协同验证采用虚拟环境9对软件有非常严格的空间和时间要求许多传统软硬件协同开发方法和工具都基于高层描述语言#B 8 9这些方法协同验证通常使用硬件仿真器或C 1 0+)(2 0 12 1.*(7 6 1 2D 0/0 D 8模拟器E F G最近的研究工作提出基于H I H JJ的方法E K G用于软硬件协同设计9以便能够更早地开始软硬件的协同验证和性能分析9这类方法用于协同验证的模拟器
10、可以是周期精确的H模拟器!C 精确的H模拟器!周期和相位精确模拟器等通常情况下这些高级语言编写的模拟器的执行速度在L到L M N5 3 5 D 0(I(的量级E O G9而C 模拟器的执行速度更低可见9时间效率是最核心的问题因此9用于协同开发的操作系统的设计目标可以归纳为P具体而微9时间第一Q 9在保证系统具备基本功能的前提下尽可能地小9时间效率的优先级最高9必要情况下可以牺牲空间来换取时间效率9以便争取更多的时间进行硬件设计优化R系统开发环境#$%&和%S&;主流产品O THE U G兼容9使用和O TH不同的先进流水线结构9采用%S&;K F指令集开发环境以V W$工具为基础开发开发中9首
11、先实现周期精确的H模拟器9完整模拟所有指令的执行情况9同时实现了单步执行!数据和指令断点!状态保存与恢复等非常强大的调试功能9以实现软硬件协同验证的需要整个系统开发!调试均采用交叉方式9宿主机为&H机上的C 0=#.2 )*-?9交叉开发环境基于开放源代码的V H H V W$X(5 6 47)D 0 15 6 D D 0 5 2)6*8 9目标机是运行于&HY)*=6 Z(系统上周期精确的H模拟器图L描述了操作系统的交叉开发和协同验证环境图A嵌入式 协同开发中的操作系统开发环境操作系统设计方案本文方案选择基于)*-?自行开发嵌入式操作系统系统)*-?E _ G是使用最广泛的嵌入式操作系统之一
12、9属于开放源代码软件9可以根据实际需要裁减和修改9应用程序重用机会大!开发风险小一 个 完 整 的)*-?操 作 系 统 除 内 核)*-?T0 1*0 D之外9必须包括根文件系统9根文件系统通常包含基本框架目录结构9启动配置文件8!库函数!)*)2!(,0 D D!文件管理!用户管理!进程管理等多个必要的工具包9以及针对特定用户的应用程序本文设计工作在上述几个方面根据协同开发的特定情况进行处理9确定设计方案精简的)*-?T0 1*0 D支持尽可能少的设备9由-H D)5E G和a-(3 )*-?系统的启动过程!例外处理流程!时钟与中断!输入I输出串口与键盘8等方面的内容采用尽可能精简的内核配
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 嵌入式 CPU 软硬件 协同 开发 中的 操作系统 设计
限制150内