- 1、本文档共3页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
嵌入式操作系统内核原理和开发(地址空间).pdf
本文由长春白癜风专科医院/ 收集,转载请注明出处
嵌入式操作系统内核原理和开发(地址空间)
不管是什么样的嵌入式cpu ,它必然有自己的访问地址空间。至于这个具体的访问空间
是什么,那cpu 就不知道了。它可以是ram,当然也可以是flash 、uart、ide、i2c 等。当然
cpu 不仅需要地址总线,它还需要数据总线和控制总线。这三个总线的目的都非常明确,控
制总线主要是为了实现cpu 对外设接口的控制,地址总线是为了实现地址的输出,数据总
线则是为了实现数据内容的获取或者设置。所以,对于一般的嵌入式cpu 来说,它的基本
架构应该是这样的,
在x86 的cpu 上,很多对外设的操作是需要通过北桥或者通过南桥芯片完成的。而在
嵌入式硬件中,我们就把经常使用到的接口芯片集成到了cpu 里面。所以在嵌入式cpu 功
能上面,你除了看到cpu 的字长、时钟、指令集、运算速率这些通常的数据之外,你还会
看到很多的接口控制寄存器,比如说定时器寄存器,lcd 寄存器,uart 寄存器,i2c 寄存器。
这些都表明了此时的cpu 完成的不仅仅是简单的计算功能,它还需要完成对外设接口的设
置。通过对应的寄存器设置,我们就可以对外设的接口状态进行控制。
本文由吉林白癜风医院/ 收集,转载请注明出处
本文由长春白癜风专科医院/ 收集,转载请注明出处
说了这么多,我们接下来要看看嵌入式系统在地址空间里面是怎么设计的啊?其实一个
完整的嵌入式软件系统并不复杂。一般来说,一个完整的系统需要有boot、kernel、文件系
统三部分。其中boot 主要放在norflash 里面,而kernel 和文件系统是存放在nandflash 里
面。在系统上电之后,cpu 会有一个初始地址,这个地址要么是0,或者是
0xFFFF0000 。通常这个地址会指向Norflash,下面开始执行的代码当然就是boot 代码。
因为Norflash 的访问速度要比Ram 速度慢很多,所以boot 代码很快会把自己拷贝到Ram
中,然后跳到Ram 中继续运行。boot 的功能比较简单,主要就是为了获取芯片参数,设置
芯片属性,设置堆栈空间,加载操作系统内核等。在boot 完成自己的功能之后,它会把系
统内核加载到Ram 中,然后jump 到系统的运行首地址处运行。系统内核主要完成整个系
统的初始化工作,比如说内存分配,信号量初始化,net 初始化,驱动结构初始化等工作。
在内核即将完成初始化的时候,它会进行最后一步操作,mount 一个文件系统,加载文件系
统的脚本数据,开启相关的系统进程,最后一步就是开启shell 进程,接受用户的命令输入。
至此,一个系统算是真正跑起来了。
前面,我们说过cpu 需要数据总线、地址总线和控制总线才能与外设接口打交道。既
然cpu 是通过状态寄存器设置外设接口的状态的,那么cpu 是如何通过地址总线与外界联
系的呢?这里面就涉及到片选信号的问题。我们知道,一个32 位的cpu 有32 条地址线和
外界相连,那么也就是说如果没有其他的方法,它只能外设32 个接口。那么有没有什么办
法可以扩大外设接口呢?说到这里,你应该知道了,它就是解码器和片选信号了。比如说,
现在有4 个外设接口,我们可以怎么从地址总线中挑出两条线,00 表示外设1,01 表示外
设2,10 表示外设3,11 表示外设4 。这样有了解码器的帮助,我们就可以用两个地址线
实现对4 个外设接口的控制了。
有了cpu 状态寄存器,我们可以设置当前外设接口的执行状态。如果是读命令,首先
设置外设接口的状态模式为读状态,然后发送地址,此时片选信号选中的芯片就会处于使能
本文由吉林白癜风医院/ 收集,转载请注明出处
本文由长春白癜风专科医院/ 收集,转载请注明出处
状态,一会cpu 就可以从数据总线上获得数据,存储在寄存器或者是内存当中;如果是写
命令,那么cpu 首先设置外设接口为写模式,然后在地址总线上输出地址,在收到芯片ready
信号后,cpu 再将数据从寄存器上传输到数据总线上,在等到外设芯片的ack 信号后,整个
数据的传输过程才算完成。我们看到,一个汇编指令的操作竟然涉及到这么多信号的操作,
可见cpu 的处理过程还是很复杂的。有的时候,中间还会涉及到信号完整性或者是时序的
问题,那么这时候逻辑分析仪就可以派上用场了。
您可能关注的文档
- 家庭教育现状略谈.pdf
- 家庭无创通气治疗应用现状.pdf
- 寓教于玩是小学体育教学的有效方法.pdf
- 对Mian经验公式的推导及扩展.pdf
- 对企业分类管理的理性思考.pdf
- 对分工生产力与生产关系的再认识.pdf
- 对医院管理职业化几个误区的思考.pdf
- 对各类过程控制策略应用前景的探讨.pdf
- 对图书馆特色馆藏资源建设的研究.pdf
- 对城市道路通行能力定义方法的探讨_邵敏华.pdf
- 2024临床执业医师模拟试题附参考答案详解【考试直接用】.docx
- 2024临床执业医师检测卷附参考答案详解【达标题】.docx
- 2024临床执业医师常考点试卷附参考答案详解【A卷】.docx
- 2024临床执业医师模拟试题【研优卷】附答案详解.docx
- 2024临床执业医师常考点试卷必考附答案详解.docx
- 2024临床执业医师常考点试卷附参考答案详解【培优】.docx
- 2024临床执业医师复习提分资料附完整答案详解【典优】.docx
- 2024临床执业医师常考点试卷含答案详解(基础题).docx
- 2024临床执业医师常考点试卷及参考答案详解(培优).docx
- 2024临床执业医师常考点试卷必考题附答案详解.docx
最近下载
- 高中数学第四章定积分4.3定积分的简单应用4.3.2简单几何体的体积教案.docx VIP
- TZSQX008-2020建设工程全过程质量行为导则.docx VIP
- 2024年山东省高中学业水平合格考生物试卷试题(含答案详解).docx VIP
- 高级教师职称评审答辩简答题.doc VIP
- 禁毒情报学习通超星期末考试答案章节答案2024年.docx VIP
- 北京市2024年艺术类专业考生综合分分数分布(一分一段表).pdf VIP
- 2025年乳腺癌诊疗指南(doc14页) .pdf VIP
- 篮球的起源与发展ppt课件.pptx VIP
- 网上调查赚钱经验及技巧总结.doc VIP
- ALPHA AS100说明书-V102用户手册.pdf
文档评论(0)