NEUSOFT Institute of information Technology .ChengDu

Slides:



Advertisements
Similar presentations
教员信息 姓 名:仲崇权 单 位:电子与信息工程学院 电 话: 办公室:创新院大厦720房间 :
Advertisements

第 2 章 中央處理單元.
第二部分 嵌入式硬件系统 第2章 嵌入式处理器 第3章 ARM内核与ARM处理器 第4章 嵌入式系统的外围设备.
第二节 信息技术及其影响.
基于s3c44B0X嵌入式uCLinux系统原理及应用
第二章 微型计算机系统 第一节 基本术语和基本概念 第二节 计算机系统的基本构成 第三节 微机系统的硬件组成 第四节 微机系统的软件组成.
第二章 嵌入式处理器.
微型计算机技术及应用 王 健 主讲 授课学时:40学时 大连理工大学计算机系.
軍用電腦科技趨勢與產業應用 全科科技 陳以昌.
第一章 计算机基础知识 计算机的发展简史 1 计算机软件系统 6 计算机的定义和分类 2 微型计算机的组成 7 计算机的特点和用途 3
第6章 半导体存储器 6.1 概述 6.2 随机读写存储器(RAM) 6.3 只读存储器(ROM) 6.4 存储器的扩展
最新計算機概論 第3章 計算機組織.
第4章 主存储器 4.1 主存储器概述 4.2 读/写存储器 4.3 非易失性存储器 4.4 DRAM的研制与发展
第2章 主机 李渊林 本章要点   CPU 主板 2.3   内存 2.4 机箱和电源.
第3章 基于ARM的处理器体系结构1 主讲 马洪连.
王晓峰 合肥学院计算机科学与技术系 合肥 计算机科学与技术 导 论 王晓峰 合肥学院计算机科学与技术系 合肥
单片机原理与应用.
第一章 计算机基础知识 第一节 计算机概述 一、计算机的基本组成和工作原理 二、有关术语 三、计算机发展简史 四、微型计算机概述
第一节 存储器的构成 第二节 存储系统的构成 第三节 Cache 第四节 虚拟存储器
單晶片原理與應用 魏兆煌 整理 南台科技大學 電機系 Sep
第七章 单片机存储器的扩展.
3-1 中央處理器 3-2 主記憶體 3-3 執行程式 3-4 匯流排及介面 3-5 輸出入周邊設備 3-6 儲存裝置
ARM体系结构.
ARM 架构.
第一章 嵌入式系统开发基础 本章介绍了嵌入式系统开发的基础知识,从嵌入式计算机的历史由来、嵌入式系统的定义、嵌入式系统的基本特点、嵌入式系统的分类及应用、嵌入式系统软硬件各部分组成、嵌入式系统的开发流程、嵌入式技术的发展趋势等方面进行了介绍,涉及到嵌入式系统开发的基本内容,使读者系统地建立起的嵌入式系统整体概念。
3-1 中央處理器 3-2 主記憶體 3-3 執行程式 3-4 匯流排及介面 3-5 輸出入周邊設備 3-6 儲存裝置
第5章 中央處理單元與主記憶體 5-1 中央處理單元-CPU 5-2 主記憶體.
C H A P T E R 11 体系结构对操作系统的支持.
基本硬體介紹 1.主機板 2.CPU(運算中心) 3.記憶體(RAM-短暫記憶資料處) 4. 硬碟(HDD儲存資料處) 5.顯示卡(接螢幕)
ARM存储器结构 ARM架构的处理器的存储器寻址空间有4G字节 ,存储空间可以分为 :
主講:王穎聰 電腦與通訊工程學系講師 銘傳大學資訊網路處
第3章 ARM体系结构.
1-1 微電腦系統單元 1-2 微電腦系統架構 1-3 微控制器(單晶片微電腦) 1-4 類比與數位訊號介面
1-1 微電腦系統單元 1-2 微電腦系統架構 1-3 微控制器(單晶片微電腦) 1-4 類比與數位訊號介面
第 6 章 存储系统 6.1 概述 存储器的层次结构 存储器的分类 存储器的基本组成
5 Computer Organization (計算機組織).
2018/11/ /11/23 TRAINING-LZW.
C H A P T E R 8 体系结构对系统开发的支持.
嵌入式系统教案 武汉创维特信息技术有限公司 2018/11/27.
存储设备介绍 广州创龙电子科技有限公司 Guangzhou Tronlong Electronic Technology Co., Ltd.
Computer Organization
第13章 数字电路基础 13.1 数字电路概述 13.2 数字电路中的数值与码制 13.3 逻辑代数 13.4 逻辑门电路
第1章 嵌入式系统概述 嵌入式系统的发展、定义、特点、组成、分类 嵌入式系统硬件核心、软件核心 嵌入式实时操作系统
第2章 電腦硬體的架構及功能.
单片机应用技术 项目一 循环彩灯装置 第2讲 51单片机的结构与引脚 《单片机应用技术》精品课程组 湖北职业技术学院机电工程系.
嵌入式系統概論-以S3C2440核心為架構 第1章 嵌入式系統概念.
TMS320C6000系列DSPs简介 使用DSPs的必要性 实时DSP系统的构成 DSPs针对DSP算法的结构特点
移动系统中的Java虚拟机 徐伟刚.
第2章 ARM微处理器硬件结构 计算机体系结构分类 ARM版本及系列 ARM处理器结构 存储系统机制.
Computer Inside/Outside
CISC vs. RISC 複雜指令集電腦(Complex Instruction Set Computer: CISC)
认识计算机系统.
宣城职业技术学院 项目一 了解计算机文化 计算机教研室 院级精品课程.
ARM 架构.
ARM 架构.
第2章ARM/THUMB微处理器结构及指令系统
第一章.
第3章 ARM微處理器的指令集.
ARM Developer Suite 介 绍.
嵌入式系统教案 武汉创维特信息技术有限公司 2019/4/18.
第5章 存储器 5.1 存储器概述 5.2 半导体存储芯片结构及使用 位系统的存储器接口.
第七章 半导体存储器.
ARM處理器.
第五章 输入/输出系统 本章讨论: 接口的基本概念 总线的基本概念 中断方式及其接口组成 中断方式及其接口组成 DMA方式及其接口组成
ARM简介及BootLoader介绍 黄大荣
《计算机基础》4月答疑 ——基础知识与基本操作.
嵌入式系统教案 武汉创维特信息技术有限公司 2019/10/1.
ARM裸机第二部分-ARM体系结构与汇编指令
第5章 中 央 处 理 器 5.1 CPU的功能和组成 5.2 指令周期 5.3 时序产生器和控制方式 5.4 微程序控制器
第三章 计算机体系结构.
Presentation transcript:

NEUSOFT Institute of information Technology .ChengDu 嵌入式系统原理与接口技术 NEUSOFT Institute of information Technology .ChengDu 成都东软信息技术学院计算机系 杨宗德 028-82878167 yangzongde@ccniit.com Yangzd@neusoft.com

嵌入式系统的软/硬件框架

嵌入式系统硬件基础 冯·诺依曼体系结构和哈佛体系结构 CISC与RISC IP 核 流水线 存储器系统

冯·诺依曼体系结构模型 指令寄存器 控制器 存储器 程序 指令0 指令1 指令2 指令3 指令4 数据通道 数据 输入 输出 中央处理器 数据0 数据1 数据2

哈佛体系结构 指令寄存器 控制器 程序存储器 地址 指令0 指令1 指令 指令2 地址 数据存储器 数据通道 输入 输出 数据0 中央处理器 数据1 数据 数据2

ARM简介 ARM(Advanced RISC Machines)系列微处理器,采用的ARM技术知识产权(IP)核都是由ARM公司提供的。 ARM32位体系结构目前被公认为是嵌入式应用领域领先的32位嵌入式RISC微处理器结构。从版本1到版本6,ARM体系的指令集功能不断扩大。

ARM Ltd 成立于1990年11月 前身为 Acorn计算机公司 Advance RISC Machine(ARM) 主要设计ARM系列RISC处理器内核 授权ARM内核给生产和销售半导体的合作伙伴 ARM 公司不生产芯片 IP(Intelligence Property) 另外也提供基于ARM架构的开发设计技术 软件工具, 评估板, 调试工具,应用软件, 总线架构, 外围设备单元,等等

ARM处理器系列 ARM7系列 ARM9系列 ARM9E系列 ARM10E系列 SecurCore系列 Inter的Xscale Inter的StrongARM

1.4 命名的含义 标志 含义 说明 T 支持Thumb指令集 Thumb指令集版本1:ARMv4T Thumb指令集版本2:ARMv5T D 片上调试 M 支持长乘法 32位乘32位得到64位,32位的乘加得到64位 I Embedded ICE E DSP指令 增加了DSP算法处理器指令:16位乘加指令,饱和的带符号数的加减法,双字数据操作,cache预取指令 J Java加速器Jazelle 提高java代码的运行速度 S 可综合 提供VHDL或Verilog语言设计文件

ARM的业务模型 IP OEM ARM Partner Customer 单价 业务拓展 / 市场格局 授权费 ARM 创造和 设计IP 产品,例如:芯片 Partner把ARM IP 和其他 IP 集成进产品 ARM Partner OEM Customer 版权费 单价 OEM 用来自ARM Partner的芯片设计制造最终用户产品

ARM处理器结构 从一下四个方面介绍: ARM和Thumb状态 RISC技术 流水线技术 超标量执行

ARM和Thumb状态 V4版以后有: ARM7TDMI核以后,T变种的ARM微处理器有两种工作状态: 32位ARM指令集 16位Thumb指令集,功能是ARM指令集的功能子集。 ARM7TDMI核以后,T变种的ARM微处理器有两种工作状态: ARM状态 Thumb状态。

ARM与Thumb状态转换 在程序的执行过程中,微处理器可以随时在两种工作状态之间切换,并且该转变不影响处理器的工作模式和相应寄存器中的内容。 进入Thumb状态:当操作数寄存器的状态位(位[0])为1时,执行BX指令。 进入ARM状态:当操作数寄存器的状态位(位[0])为0时,执行BX指令。

CISC和RISC CISC:复杂指令集(Complex Instruction Set Computer) 具有大量的指令和寻址方式 8/2原则:80%的程序只使用20%的指令 大多数程序只使用少量的指令就能够运行。 RISC:精简指令集(Reduced Instruction Set Computer) 在通道中只包含最有用的指令 确保数据通道快速执行每一条指令 使CPU硬件结构设计变得更为简单

知识产权核(IP核, intellectual property) 微处理器微处理器: ARM, PowerPC; 存储器存储器: RAM, memory controller; 外设: PCI, DMA controller; 多媒体处理: MPEG/JPEG ; encoder/decoder ; 数字信号处理器(DSP) 通信: Ethernet controller, router,

IP核的种类 Soft Cores(“code”)(软核) HDL语言描述 灵活度高,可修改 与工艺独立,可根据具体的加工工艺重新综合; Firm cores(“code+structure”)(固核) 逻辑综合后的描述 与工艺相关 Hard cores(“physical”)(硬核) 物理综合后的描述 准备流片 包含工艺相关的布局和时序信息 IP很容易保护 多数的处理器和存储器

IP核的商业模型 三种模式 一、计者提供设计和工具的许可证 二、核厂商设计并制造集成电路芯片 三、核厂商卖核, 负责为客户设计并制造芯片 DSP Group (Pine and Oak Cores), 3Soft, ARM 提供包括HDL在内的模拟模型,工具或仿真器 使用者负责设计制造 二、核厂商设计并制造集成电路芯片 TI, Motorola, Lucent VLSI, SSI, Cirrus, Adaptec 三、核厂商卖核, 负责为客户设计并制造芯片 LSI logic, TI, Lucent

IP核的市场构成 74% 为硬件设计厂商. 26% 将购买IP 核: 40% hard, 68% soft, 32% firm

ARM的IP核 可综合内核(软核) 固化宏单元(硬核) 测试芯片 ARM926EJ-S ARM7TDMI-S ARM1026EJ-S

流水线技术 流水线技术:几个指令可以并行执行 提高了CPU的运行效率 内部信息流要求通畅流动 Add 取指 译码 执行add 取指 译码 执行sub Sub Cmp 取指 译码 执行cmp 时间

指令流水线—以ARM为例 为增加处理器指令流的速度,ARM7 系列使用3级流水线. 允许多个操作同时处理,比逐条指令执行要快。 PC指向正被取指的指令,而非正在执行的指令 ARM Thumb PC PC Fetch 从存储器中读取指令 PC - 4 PC-2 Decode 解码指令 寄存器读(从寄存器Bank) 移位及ALU操作 寄存器写(到寄存器Bank ) PC - 8 PC - 4 Execute

最佳流水线 该例中用6个时钟周期执行了6条指令 所有的操作都在寄存器中(单周期执行) 指令周期数 (CPI) = 1 周期 1 2 3 4 5 6 操作 ADD SUB MOV AND ORR EOR CMP RSB Fetch Decode Execute Fetch Decode Execute Fetch Decode Execute Fetch Decode Execute Fetch Decode Execute Fetch Decode Execute Fetch Decode Fetch 该例中用6个时钟周期执行了6条指令 所有的操作都在寄存器中(单周期执行) 指令周期数 (CPI) = 1

LDR 流水线举例 该例中,用6周期执行了4条指令 指令周期数 (CPI) = 1.5 周期 1 2 3 4 5 6 操作 Fetch 1 2 3 4 5 6 操作 Fetch Decode Execute ADD SUB LDR MOV AND ORR Fetch Decode Execute Fetch Decode Execute Data Writeback Fetch Decode Execute Fetch Decode Fetch 该例中,用6周期执行了4条指令 指令周期数 (CPI) = 1.5

分支流水线举例 流水线被阻断 注意:内核运行在ARM状态 周期 1 2 3 4 5 地址 操作 0x8000 BL 0x8004 X 1 2 3 4 5 地址 操作 0x8000 BL 0x8004 X 0x8008 XX 0x8FEC ADD 0x8FF0 SUB 0x8FF4 MOV Fetch Decode Execute Linkret Adjust Fetch Decode Fetch Fetch Decode Execute Fetch Decode Execute Fetch Decode Fetch 流水线被阻断 注意:内核运行在ARM状态

流水线技术Ⅲ 2.ARM的流水线设计问题 (1)缩短程序执行时间: 提高时钟频率fclk 减少每条指令的平均时钟周期数CPI (2)解决流水线相关: 结构相关 数据相关 控制相关

2.4 存储系统机制

存储器的分类 ROM(Read only Memory)只读存储器 RAM(Random access Memory)随机存取存储器 PROM(programmable ROM)可编程只读存储器 EPROM(Erasable Programmable)可改写只读存储器 SRAM(Static RAM) DRAM(Dynamic RAM) SDRAM(Synchronization Dynamic RAM )

存储器系统 RAM:随机存取存储器, SRAM:静态随机存储器, DRAM:动态随机存储器 1)SRAM比DRAM快 4)DRM需要周期性刷新 ROM:只读存储器 FLASH:闪存

SDRAM 输入 CE是芯片的输入信号。CE=0,使能。 R/W Address Data 读操作 (1)片选 (2)读/写 (3)地址 (4)数据.

DRAM CE:片选 R/W读写控制信号 RAS行地址选通,地址高位,CAS列地址选通,地址低位; Address地址 DATA数据。

存储器的性能 大容量、高速度、低价格是评价存储器性能的三个主要指标,也是存储体系设计的主要目标。 容量:Sw=Wlm。其中W为存储体的字长(单位为位或字节),l为单个存储体的字数,m为并行工作的存储体个数。 速度:m个存储体并行工作时,可达到的最大频率宽度为Bm=Wm/TM 。其中TM是连续起动一个存储器所必要的时间间隔,TM>TA。Bm是连续提供数据的速率。 价格:具有SM位的存储器,每位价格表示为c=C/Sm。其中C是总价格。

存储体系的组成 一般把这些能并行读出多个CPU字的单体多字和多体单字及多体多字的交叉存取系统,统称为并行主存系统。 单体单字存储器 单体多字存储器 多体单字交叉存取存储器 多体多字交叉存取存储器 一般把这些能并行读出多个CPU字的单体多字和多体单字及多体多字的交叉存取系统,统称为并行主存系统。

存储体系的形式 (a)两级存储器层次结构 (b)三级存储器层次结构

总线结构Ⅰ 1.总线协议 :四周期握手协议

总线结构Ⅱ 2.总线读写

总线结构Ⅲ 3.总线的时序图

总线结构Ⅳ 4.直接内存访问(DMA)

总线结构Ⅴ 5.系统总线配置 多总线系统

ARM存储数据类型 ARM处理器支持以下六种数据类型: 8位有符号和无符号字节。 16位有符号和无符号半字,以2字节的边界对齐。 32位有符号和无符号字,以4字节的边界对齐。

ARM存储格式 大端存储模式 小端存储模式(缺省)

存储器接口Ⅰ 1.存储周期的基本类型: 空闲周期 非顺序周期 顺序周期 协处理器寄存器传送周期

存储器接口Ⅱ 2.ARM的总线接口信号分成4类(以ARM7TDMI为例说明): 时钟和时钟控制信号:MCLK、ECLK、nRESET、nWAIT。 地址类信号:A[31..0]、nRW、MAS[1..0]、nOPC、nTRANS、LOCK、TBIT。 存储器请求信号:nMREQ、SEQ。 数据时序信号:D[31..0]、DIN[31..0]、DOUT[31..0]、ABORT、BL[3..0]。

存储器接口Ⅲ 3. ARM的总线接口可以实现4种不同类型的总线周期。

高速缓冲存储器Ⅰ 1.分类: 统一Cache VS 独立的数据/程序Cache 写通cache VS 写回cache

高速缓冲存储器Ⅱ 2.工作原理:

高速缓冲存储器Ⅲ 3.地址映像和变换方式: 全相联地址映像和变换 组相联地址映像和变换 直接映像和变换

高速缓冲存储器Ⅳ 4.Cache的替换算法: 轮转法 随机替换算法

存储管理单元MMUⅠ 1.在ARM系统中,存储管理单元MMU主要完成工作: 存储器访问权限的控制。 设置虚拟存储空间的缓冲的特性。

存储管理单元MMU Ⅱ(1) 2.存储访问过程 使能MMU时存储访问过程 :

存储管理单元MMU Ⅱ(2) 禁止MMU时存储访问过程: ① 先要确定芯片是否支持cache和write buffer。如果芯片规定当禁止MMU时禁止cache和write buffer,则存储访问将不考虑C和B控制位。如果芯片规定当禁止MMU时可以使能cache和write buffer,则数据访问时,C=0,B=0;指令读取时,如果使用分开的TLB,那么C=1,如果使用统一的TLB,那么C=0。 ② 存储访问不进行权限控制,MMU也不会产生存储访问中止信号。 ③  所有的物理地址和虚拟地址相等,即使用平板存储模式。

存储管理单元MMU Ⅲ(1) 3. MMU中的地址变换过程:通过两级页表实现。 a)一级页表中包含有以段为单位的地址变换条目以及指向二级页表的指针。一级页表是实现的地址映射粒度较大。以段为单位的地址变换过程只需要一级页表。 b)二级页表中包含有以大页和小页为单位的地址变换条目。有一种类型的二级页表还包含有以极小页为单位的地址变换条目。以页为单位的地址变换过程需要二级页表。

存储管理单元MMU Ⅲ(2) 一级页表的地址变换过程 :

存储管理单元MMU Ⅳ(1) 4.一级描述符: 从页表中得到的相应地址变换条目称为一级描述符。它定义了与之相应的1M存储空间是如何映射的。一级描述符的位[1:0]定义了该一级描述符的类型,共有4种格式的一级描述符:

存储管理单元MMU Ⅳ(2) 1)粗粒度页表描述符:当一级描述符的位[1..0]为0b01(0b代表二进制)时,该一级描述符中包含了粗粒度的二级页表的物理地址,这种一级描述符称为粗粒度页表描述符。它的格式和各个字段的含义如下:

存储管理单元MMU Ⅳ(3) 由粗粒度页表描述符获取二级描述符的过程 :

存储管理单元MMU Ⅳ(4) 2)段描述符:当一级描述符的位[1:0]为0b10时,该一级描述符为段描述符,它的格式和各个字段的含义如下:

存储管理单元MMU Ⅳ(5) 基于段的地址变换过程 :

存储管理单元MMU Ⅳ(6) 3)细粒度页表描述符:当一级描述符的位[1:0]为0b11时,该一级描述符中包含了细粒度的二级页表的物理地址,称为细粒度页表描述符。它的格式和各个字段的含义如下:

存储管理单元MMU Ⅳ(7) 由细粒度页表描述符获取二级描述符的过程

存储管理单元MMU Ⅴ 5.MMU中的存储访问权限控制

存储管理单元MMU Ⅵ 6. MMU中的域(Domain) MMU中的域指的是一些段、大页或者小页的集合。ARM支持最多16个域,每个域的访问控制特性都是由CP15中的寄存器C3中的两位来控制的。这两位的字段编码和含义:

存储管理单元MMU Ⅶ 7.快速上下文切换技术 快速上下文切换技术FCSE(Fast Context Switch Extension)通过修改系统中不同进程的虚拟地址,避免在进行进程间切换时造成的虚拟地址到物理地址的重映射,从而提高系统的性能。 FCSE位于CPU和MMU之间,其责任就是将不同进程使用的相同虚拟地址映射为不同的虚拟空间,使得在上下文切换时无需重建TLB等。

存储管理单元MMU Ⅷ 8.存储器映射的输入/输出 在ARM系统中,I/O操作通常被映射成存储器操作,即输入/输出是通过存储器映射的可寻址外围寄存器和中断输入的组合来实现的。 但是,对于存储器映射的I/O空间的操作,不能使用Cache技术。