- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Arm Cortex M3学习笔记 01
名词定义,Cortex M3结构,数据存储,指令执行方式,一些概念的理解
顺便鄙视一下文库,上次传个《51单片机 串口频率 学习笔记》笔记竟然审核了一个月……
本人权且看书自学,全文为本人对书本的理解,把书上的废话过滤掉,讲些实实在在的东西。有错误的地方,就给百度文库这个发布笔的记账号“ihsgnoliab”发消息吧,有兴趣的朋友一起学习交流。作者:DX。(注:还是菜鸟,学习中,想把工作的技术水平提高些)
名词定义
MMU:内存管理单元,Memory Management Unit;
DSP:数字信号处理,Digital Signal Process;
PDA:个人数字助理,Personal Digital Assistance;
SoC:片上系统,System On Chip;
EMPU:嵌入式微处理器,Embedded Microprocessor Unit;
MCU:嵌入式微控制器,Microcontroller Unit;
MPU:存储器保护单元,Memory Protect Unit;
EDSP:嵌入式DSP处理器,Embedded Digital Signal Processor;
OS:操作系统,Operating System;
RTOS:实时操作系统,Real Time Operating System;
RISC:精简指令集计算机;
CISC;复杂指令集计算机;
I-Code:指令总线;
D-Code:数据总线;
常见的嵌入式操作系统
uClinux:发音“you see linux”;
WinCE:微软的;
VxWorks:美国WindRiver公司1983年,实时操作系统。
uC/OS-II:公开代码的操作系统,1992年问世。
Cortex M3处理器体系结构
ARM简介
Cortex A:应用处理器,Application;
Cortex R:实时处理器,Real Time;
Cortex M:微处理,Micro;
ARM公司为了表示的指令集结构特性,分别为其以版本号用v1~v7表示;
例如:
ARM7使用的是ARMv4的指令集;
ARM9使用的是ARMv5的指令集;
ARM11使用的是ARMv6的指令集;
ARM Cortex M3 使用的ARMv7的指令集;
ARM Cortex M3,问世于2006年,低成本,小管脚数目,具有极高运算能力和中断响应能力的处理器内核。
使用Thumb-2指令集,16位指令与32位指令并存。
她提供了:指令总线(I-Code);数据总线(D-Code);
存储器
数据的存储,以4个字节为一个字(那么2个字节就是半字):
字节 半字对齐 字对齐 地址 0x4002 0x4004 0x4004 0x4008 0x4006 0x400C 0x4008 0x4010 地址特征 Bit0=0
其他位为任意值 Bit0=0,Bit1=0
其他位为任意值
因为是thumb-2指令,获取指令一般都是16位,属于“半字对齐”的,所以取地址也是按照“半字对齐”来获取。
数据中的指令,如果出现一个32位的指令,那么根据上面的地址,会出现错位的情况,那么处理器将耗费大量时间解决对齐问题,对执行效率影响较大。下面会说明内核是怎么解决这个问题的。
指令执行
有指令总线获取指令;
分为3个阶段:1.取指令;2.译码;3.执行;
注意:一个阶段只能执行一条指令!
推想一下,如同流水线一样,那么可以在每个阶段,执行一条指令,这样可以“同时”处理3条指令,只不过她们在不同的处理阶段罢了,如图:
时间周期→ —→———→——→——→——→——→ 指令地址↓ T1 T2 T3 T4 T5 T6 指令1 N-4 取指 译码 执行 指令2 N 取指 译码 执行 指令3 N+4 取指 译码 执行 指令4 N+8 取指 译码 执行 …… …… 取指 译码 …… …… 取指 就像火车进站一样……
Cortex M3 可以一次取出2条指令,这两条指令未必就能“对齐”,如图从存储器中获得32位指令:
例如:
32位指令A=A1+A2;32位指令B=B1+B2;
32位指令C=C1+C2;16位指令D;
指令存储器地址 字节 3 2 1 0 N A1 N+4 B1 A2 N+8 C1 B2 N+0xC D C2
那么既然指令都是“对齐”获取的,而指令的放置出现了“非对齐”现象的时候,那么就需要一个“指令缓冲区”来解决这个问题:
指令缓冲区
(指令C1)
↓ 指令 → 取指令
(指令C2和D) → 译码
(指令B) → 执行
(指令A)
系统框
您可能关注的文档
- 2014高考历史(人民版)成套训练专辑:课时训练24 当代资本主义的新变化.doc
- 2014高考历史(人民版)成套训练专辑:课时训练25 苏联社会 主义建设的经验与教训.doc
- 2014高考历史(人民版)成套训练专辑:课时训练30 古代中国的科学技术与文化.doc
- 0-部门人员手册.doc
- 2014高考语文每日一练50.doc
- 2014高一历史10月月考.doc
- 2014会考离子反应题.doc
- 2014届安溪一中高一年上学期第一次单元考.doc
- 01 流体静力学实验.doc
- 2014届高三第四次周练(文科数学).doc
- 2025年量化投资策略在市场预期分化环境下的绩效评估报告[001].docx
- 2025年乡村民宿数字化运营与智慧旅游融合发展研究.docx
- 新能源汽车换电模式与充电桩互联互通技术研究报告.docx
- 元宇宙社交场景中的2025年虚拟现实影视制作白皮书.docx
- 2025年生物基材料产业深度报告:合成生物学技术创新应用解析.docx
- 拼多多2025年下沉市场短视频营销策略分析报告.docx
- 云计算在2025年区块链行业的创新应用白皮书.docx
- 2023年广东省广州市荔湾区东]街道招聘社区工作者真题附答案详解.docx
- 2025年教育行业招生策略,数字化营销实战案例分享报告.docx
- 消费升级驱动,2025年零售行业供应链管理创新与效率提升报告.docx
最近下载
- 肯尼亚建筑市场行业报告.pptx
- 浙江杭州余杭交通集团有限公司招聘笔试题库2023.pdf VIP
- 人工胆囊、人工胆囊设备和人工胆囊在胆囊手术中的应用.pdf VIP
- 重力与弹力高一上学期物理人教版2019必修第一册+.pptx VIP
- 胃癌的诊治现状与进展.pptx VIP
- 数控压装压力机 第2部分:技术条件.docx VIP
- 【课件】匀变速直线运动速度与时间的关系+课件-高一上学期物理人教版(2019)必修第一册.pptx VIP
- XX医院职能部门监管手术、麻醉授权管理督导、检查、总结、反馈及持续改进记录表.pdf VIP
- 电力调度数据网络接入技术规范及网络拓扑图.doc VIP
- ZZGA高频开关整流器使用说明书.doc
文档评论(0)