1.ARM的基础知识
ARM简述
ARM公司既不生产芯片也不销售芯片,它只出售芯片技术授权。ARM技术具有很高的性能和功效,因而容易被厂商接受。同时,合作伙伴的增多,可获得更多的第三方工具、制造和软件支持,这又会使整个系统成本降低,让产品进入市场的时间加快,从而具有更大的竞争优势。
一、ARM技术的应用领域及其特点
采用ARM技术IP核的微处理器遍及汽车、消费电子、成像、工业控制、海量存储、网络、安保和无线等各类产品市场。
1.什么是IP核?
IP核是指拥有知识产权的控制功能单元。(IP核是一段具有特定电路功能的硬件描述语言程序,该程序与集成电路工艺无关,可以移植到不同的半导体工艺中去生产集成电路芯片。利用IP核设计电子系统,引用方便,修改基本元件的功能容易。具有复杂功能和商业价值的IP核一般具有知识产权,尽管IP核的市场活动还不规范,但是仍有许多集成电路设计公司从事IP核的设计、开发和营销工作。IP核有两种,与工艺无关的VHDL程序称为软核;具有特定电路功能的集成电路版图称为硬核。)
2.ARM相关的各种版本号及命名
ARM的三种版本号:ARM体系版本(内核版本号)、ARM处理器版本(SoC<System on Chip>版本号)、芯片型号。
ARM体系版本(内核版本号):ARMv1 、... 、 ARMv4 、ARMv5 、ARMv6 、ARMv7
ARM处理器版本: ..... 、 、 ARM7\ARM9 、ARM9+xScale 、ARM11 、Cortex-M\Cortex-A\Cortex-R
芯片型号: ..... 、S3C44B0\S3C2440 和2410、 、S3C6410 、...\S5PV210\...
*值得注意的是:在ARMv7版本开始,ARM处理器版本分成了Cortex-M\Cortex-A\Cortex-R这三个系列
Cortex-M:M(microctroller) 主要用于单片机,比如STM32;
Cortex-A:A(Application) 主要用于手机,平板等等;
Cortex-R:R(Realtime) 主要用于工业,航天方面;
二、一些需要知道的事儿
1.可编程器件
可编程器件是由ASIC <Application Specific Integrated Circuit 特定用途集成电路> 发展而来的。CPU就属于可编程器件(cpu内部电路对二进制文件解码)
2.可编程器件的特点
1).cpu在固定的始终频率控制下节奏运行。
2).cpu可以通过总线读取外部存储设备中的二进制指令集,然后解码,cpu内部电路对二进制文件进行解码。
*** 这些可以被cpu解码执行的二进制指令集是cpu设计时就确定了的,是cpu的设计者(ARM公司)定义的,本质上是一串0或1组成的数字,这就是cpu 的汇编指令集。
总结: 为什么可编程器件可以编程?
由于cpu是在固定的始终频率控制下节奏运行,并且可以通过总线从外部存储设备读取二进制指令集,然后解码执行,因为这些指令集是cpu的设计者通过的,所以我们可以通过提供的这些指令集去达到我们编程的目的。
3.指令集对cpu的意义
汇编的实质是机器指令的助记符。机器指令(二进制)集是一款cpu的编程特征,是这款cpu的设计者制定的。cpu的内部电路就是为了实现这些指令集的功能。机器指令集就好像cpu的API接口一样。不同的cpu机器指令集设计不同,因此汇编程序不能在不同cpu的机器互相移植。
4.RISC和CISC的区别
* RISC<Reduced Instruction Set Computer>精简指令集计算机
RISC的设计理念:让软件来完成具体的任务,cpu本身仅提供基本的指令集,功能扩展有使用cpu的人利用基础架构来灵活实现
* CISC<Complex Instruction Set Computer>复杂指令集计算机
CISC的设计理念:用最少的指令来完成任务,cpu的扩展依赖指令集的扩展。实质是cpu内部组合逻辑电路的扩展
5.cpu访问各种外设的两种方式:统一编址,独立编址


***统一编址和独立编址各自的优缺点
统一编址:因为是像访问内存一样通过地址去访问IO,所以访问简单,但是却占用了cpu的地址空间,而cpu的地址空间是有限的资源。
独立编址:优点是不占用cpu的地址空间,缺点是cpu的设计就变复杂了。
6.什么是内存?什么是IO?
内存是程序运行的场所。
IO是输入输出接口,是cpu和其他外部设备之间的通道,一般IO就是指cpu的各种内部或外部设备
7.软件控制硬件的关键-寄存器
1.什么是寄存器?
寄存器是一个硬件模块,寄存器有两类:通用寄存器和特殊功能寄存器(SFR)
通用寄存器(ARM中37个)是cpu的组成部分
特殊功能寄存器:不在cpu中,存在于cpu的外设中,我们通过访问外设的SFR来编程操控这个外设,这就是硬件编程控制的方法
1.ARM的基础知识的更多相关文章
- ARM处理器基础知识
1.ARM处理器的寄存器,ARM与Thumb状态,7中运行模式 http://blog.chinaunix.net/uid-28458801-id-3494646.html 2.ARM的7种工作模式. ...
- 驱动实现led,pwm和中断基础知识
2015.4.8星期三 晴天 今天老师讲的内容是内核编写led和pwm驱动,实现花样灯和放歌的功能.理解应用和驱动的对接,最后自己实现了在放歌的时候根据歌曲的节奏亮灭一个小灯,应为两个独立的驱动都已经 ...
- 【分享】4412开发板-嵌入式Linux开发须要掌握的基础知识和技能
本文转自迅为电子论坛:http://www.topeetboard.com 1.Linux 基础 安装Linux操作系统 Linux文件系统 Linux经常使用命令 Linux启动过程具体解释 熟悉L ...
- 嵌入式系统基础知识(一): 系统结构和嵌入式Linux
目录 一. 嵌入式体系结构 二. 开发过程中的分工 三. 嵌入式软件体系结构 四. 嵌入式Linux 一. 嵌入式体系结构 <嵌入式系统设计师教程>这本书的前三章脉络很清晰, 按照嵌入式系 ...
- jni的一些基础知识和概念
11.1基础知识 JNI(Java Native Interface,JAVA原生接口) 使用JNI可以使Java代码和其他语言写的代码(如C/C++代码)进行交互. 问:为什么要进行交互? |- ...
- 计算机科学基础知识(一)The Memory Hierarchy
一.前言 最近一个问题经常萦绕在我的脑海:一个学习电子工程的机械师如何称为优秀的程序员?(注:本文作者本科学习机械设计,研究生转到电子工程系学习,毕业后却选择了系统程序员这样的职业).经过思考,我认为 ...
- 重拾C语言基础知识
从实习到工作两年多的时间了,虽然感觉学到了很多知识,但是事实上却将立足之本的基础知识给忘了个精光.也许跟自己没有出去找工作有关,没有好好的将C语言的基础牢牢掌握. 从现在开始吧!好好的重温基础,做一名 ...
- [Linux 001]——计算机和操作系统的基础知识
在正式开始学习 Linux 操作系统之前,有必要先回顾/学习一下计算机和操作系统的基本知识,为我们在后续的学习中铺路搭桥,在了解计算机一些基础原理的条件下再去进行学习,理解应该会更透彻一些.我会从一个 ...
- 嵌入式Linux基础知识
一.构建嵌入式开发环境 1.编译bootloader并烧写到板子中---uboot, 可以自己定制bootloader and logo 2.编译file system 并烧写--内嵌APP 3.编译 ...
随机推荐
- 安装XAMPP后APACHE不能启动解决方法
自己的xampp中的apache启动失败,在网上找到了一篇文章,感觉不错,原文如下: Xampp的获得和安装都十分简单,你只要到以下网址: http://www.apachefriends.org/z ...
- CentOS7.1配置源
现在网上最新的是CentOS7.1, 但是在配置国内流行的163源的时候,网上的文章大多数我这里都通不过. 错误信息大概是: One of the configured repositories fa ...
- 点击其它地方DIV隐藏
$(document).bind('click',function(e){ var e = e || window.event; //浏览器兼容性 var elem = e.target || e.s ...
- nginx日志分析利器GoAccess
面试的时候一定会被面到的问题是:给出web服务器的访问日志,请写一个脚本来统计访问前10的IP有哪些?访问前10的请求有哪些?当你领略过goaccess之后,你就明白,这些问题,除了考验你的脚本背诵记 ...
- LintCode Min Stack
用两个stack, 第一个按顺序放所有值,第二个只放当前最小值. 注意: 1. 最小值有多个则都放到两个stack里, 尤其别忘放第二个: 2. pop时若两个stack的最上面值相等则都pop, 不 ...
- js 获取小数点位数方法及 字符串与数字之间相互转换方法
1.获取小数点位数方法 a. 使用 js 中 subsrting,indexOf,parseFloat三个函数,代码如下: var s = "22.127456" ;//s 为 字 ...
- HttpURlconntiuon获取网络数据
package Network; import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream ...
- 帝国时代II 高清版 steam 4.4 字体替换 微软雅黑
其实默认的中文字体算是中规中矩吧,但是我并不喜欢 从昨天开始就想着换 于是我就开始搜索帝国时代2的游戏目录的资源,马上就锁定到了\Steam\steamapps\common\Age2HD\resou ...
- 关于vue.js中表单控件绑定练习
html: <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8 ...
- UVA-11517 Exact Change(DP)
题目大意:有n张钞票,面值可能不同.你要买一件东西,可能需要找零钱.问最少付多少钱,并求出最少的钞票张数. 题目分析:定义状态dp(i,w)表示前i张钞票凑成w元需要的最少钞票张数.则状态转移方程为d ...