浙江大学高级嵌入式体系结构课件11 Pipeline IV
合集下载
最新嵌入式系统简介嵌入式系统的组成嵌入式系统开发流程ppt课件PPT课件
• ROM仿真器 • JTAG仿真器 • 逻辑分析器
• 需求管理工具
• 示波器
• DSP开发工具
• 器件驱动器开发工具
• 软硬件协同验证工具
9.3 嵌入式系统开发流程
1 嵌入式软件开发的特点
▪ 嵌入式系统与通用计算机系统的差别:
– 人机交互界面 – 有限的功能
– 时间关键性和稳定性
▪ 嵌入式软件开发的特点:
嵌入式微控制器EMCU
• 嵌入式微控制器又称为单片机,它将CPU、存 储器(少量的RAM、ROM或两者都有)和其 它外设接口封装在同一片集成电路里。
• 嵌入式微控制器制造商:摩托罗拉、英特尔、 英飞凌科技、 Atmel、日立、NEC、三菱、 东芝、松下、Microchip、富士、飞利浦、德 州仪器、三星、三洋、索尼、Oki、凌阳科技 等。
9.1 嵌入式系统简介
• 广义上讲,凡是带有微处理器的专用软硬 件系统都可称为嵌入式系统。如各类单片
机和DSP系统。这些系统在完成较为单一 的专业功能时具有简洁高效的特点。但由 于他们没有操作系统,管理系统硬件和软 件的能力有限,在实现复杂多任务功能时, 往往困难重重,甚至无法实现 • 从狭义上讲,那些使用嵌入式微处理器构 成独立系统,具有自己操作系统,具有特 定功能,用于特定场合的专用软硬件系统 称为嵌入式系统。
▪ 嵌入式软件开发的特点:
–引入任务设计方法 –需要固化程序 –软件开发难度大
➢ 嵌入式应用软件对实时性、稳定性、可靠性、 抗干扰性等性能的要求都比通用软件的要求 更为严格和苛刻。
2.2 嵌入式系统开发的流程
嵌入式软件的开发流程与通用软件的开发流程 大同小异,但开发所使用的设计方法具有嵌入式 开发的特点。整个开发流程可分为:
嵌入式系统课件
编程语言与工具选择
C/C语言
嵌入式软件开发中常用的编程语言,具有高效、灵活的特点。
集成开发环境(IDE)
选择适合的IDE,如Keil、IAR等,提高开发效率。
版本控制工具
使用Git等版本控制工具进行代码管理,便于团队协作和追踪修改 记录。
调试与测试技术
调试技术
01
掌握常用的调试手段,如断点调试、单步执行、查看
典型应用案例分析
工业控制
嵌入式操作系统在工业控制领域有着广泛的应用,如PLC、DCS等控制系统,实现自动化生产线的监控和管理。
智能家居
嵌入式操作系统可以应用于智能家居系统中,如智能门锁、智能照明等,实现家庭环境的智能化和便捷化。
物联网
嵌入式操作系统作为物联网终端设备的核心软件,可以实现设备的互联互通和智能化管理,如智能电表 、智能物流等。
02
01
X86处理器
丰富的软件资源、强大的性能,常用于工业 控制和嵌入式服务器。
04
03
存储器与外设接口
存储器分类
01
包括RAM、ROM、Flash等,用于存储程序和数据。
存储器层次结构
02
由寄存器、Cache、主存、外存等组成,提高数据访问速度。
外设接口
03
包括GPIO、SPI、I2C、UART等,用于连接外部设备和传感器
。
典型嵌入式硬件平台介绍
Raspberry Pi
基于ARM架构的微型电脑主板,具有丰富的外设接口和扩展能力 ,适用于教育、科研和创客等领域。
STM32系列
基于ARM Cortex-M内核的32位微控制器,具有高性能、低功耗 和丰富的外设接口,适用于各种嵌入式应用。
嵌入式系统概述(浙江大学)
强实时型:响应时间μ s~ms级;。
嵌入式系统与桌面通用系统的区别(3/7)
嵌入式系统中使用的操作系统一般是实时操作系统 嵌入式实时操作系统数量众多,如:
VxWorks Windows CE pSOS QNX uc/OS
嵌入式系统是以应用为中心,以计算机技 术为基础,采用可剪裁软硬件,适用于对 功能、可靠性、成本、体积、功耗等有严 格要求的专用计算机系统。
计算机应用领域的划分
小型专用型
桌面通用型
高端服务型
嵌入式系统与桌面通用系统的区别(1/7)
嵌入式系统中运行的任务是专用而确定的
心脏监视器只需运行信号输入、信号处理、心电图显示任务 如要更改任务,需要对整个系统进行重新设计或在线维护
早期:10%;90年代初:30%;目前:80~90%
嵌入式系统开发工具越来越丰富 嵌入式系统产业链形成
前车门控 制系统 发动器控 制系统
座椅控制 系统
后车门控 制系统
尾灯控制 系统
所有的控 制系统都 是一个完 整的嵌入 式系统
马达 控制器 车灯
两大分支
嵌入式软件市场规模
• 全球规模600亿美元,过去三年中,年均增长速度超过 12.5%。
嵌入式系统与桌面通用系统的区别(7/7)
嵌入式系统开发是一项综合的计算机应用技术
系统结构:状态控制器、中断控制器处理 汇编语言:操纵外围设备、端口 操作系统:设置运行任务、通讯、互斥 编译原理:交叉编译、bootloader加载
提纲
嵌入式系统的发展历程
嵌入式系统出现于20世纪60年代,40多年来随着计算机技 术、电子信息技术的发展,嵌入式系统的各项技术蓬勃发 展,市场迅猛扩大,已深入生产和生活的各个角落。
嵌入式系统与桌面通用系统的区别(3/7)
嵌入式系统中使用的操作系统一般是实时操作系统 嵌入式实时操作系统数量众多,如:
VxWorks Windows CE pSOS QNX uc/OS
嵌入式系统是以应用为中心,以计算机技 术为基础,采用可剪裁软硬件,适用于对 功能、可靠性、成本、体积、功耗等有严 格要求的专用计算机系统。
计算机应用领域的划分
小型专用型
桌面通用型
高端服务型
嵌入式系统与桌面通用系统的区别(1/7)
嵌入式系统中运行的任务是专用而确定的
心脏监视器只需运行信号输入、信号处理、心电图显示任务 如要更改任务,需要对整个系统进行重新设计或在线维护
早期:10%;90年代初:30%;目前:80~90%
嵌入式系统开发工具越来越丰富 嵌入式系统产业链形成
前车门控 制系统 发动器控 制系统
座椅控制 系统
后车门控 制系统
尾灯控制 系统
所有的控 制系统都 是一个完 整的嵌入 式系统
马达 控制器 车灯
两大分支
嵌入式软件市场规模
• 全球规模600亿美元,过去三年中,年均增长速度超过 12.5%。
嵌入式系统与桌面通用系统的区别(7/7)
嵌入式系统开发是一项综合的计算机应用技术
系统结构:状态控制器、中断控制器处理 汇编语言:操纵外围设备、端口 操作系统:设置运行任务、通讯、互斥 编译原理:交叉编译、bootloader加载
提纲
嵌入式系统的发展历程
嵌入式系统出现于20世纪60年代,40多年来随着计算机技 术、电子信息技术的发展,嵌入式系统的各项技术蓬勃发 展,市场迅猛扩大,已深入生产和生活的各个角落。
浙江大学高级嵌入式体系结构课件5 ISA
q Register-Memory (1)
Ø Operations occur between register and memory (one operand in
memory).
Ø Usually 2 operands, one in a register (src and dest) and one in
q Instruction complexity :
Ø How much decoding is necessary to interpret an
instruction ?
q Instruction length :
Ø Is length dependent on the type of instruction and
qTaxonomy of Instruction Set Architectures qSummarize of Instruction Set measurements
software instruction set hardware
Instruction Set Architecture
Instruction Set Design Tasks
Ø LW R1, 0x0FF1126A
Ø LH
R2, 0x0FF1126A
Misaligned memory access
q A misligned memory access may take multiple aligned memory references
! ! ! ! !
32 Bits Memory Bus
e.g., (A*B) – (C*D) –(E*F) can do multiplies in any order vs. stack
嵌入式系统概述浙江大学71页PPT
45、法律的制定是为了保证每一个人 自由发 挥自己 的才能 ,而不 是为了 束缚他 的才
❖ 知识就是财富 ❖ 丰富你的人生
71、既然我已经踏上这条道路,那么,任何东西都不应妨碍我沿着这条路走下去。——康德 72、家庭成为快乐的种子在外也不致成为障碍物但在旅行之际却是夜间的伴侣。——西塞罗 73、坚持意志伟大的事业需要始终不渝的精神。——伏尔泰 74、路漫漫其修道远,吾将上下而求索。——屈原 75、内外相应,言行相称。——韩非
嵌入式系统概述浙江大学
41、实际上,我们想要的不是针对犯 罪的法 律,而 是针对 疯狂的 法律。 ——马 克·吐温 42、法律的力量应当跟随着公民,就 像影子 跟随着 身体一 样。— —贝卡 利亚 43、法律和制度必须跟上人类思想进 步。— —杰弗 逊 44、人类受制于法律,法律受制于情 理。— —托·富 勒
❖ 知识就是财富 ❖ 丰富你的人生
71、既然我已经踏上这条道路,那么,任何东西都不应妨碍我沿着这条路走下去。——康德 72、家庭成为快乐的种子在外也不致成为障碍物但在旅行之际却是夜间的伴侣。——西塞罗 73、坚持意志伟大的事业需要始终不渝的精神。——伏尔泰 74、路漫漫其修道远,吾将上下而求索。——屈原 75、内外相应,言行相称。——韩非
嵌入式系统概述浙江大学
41、实际上,我们想要的不是针对犯 罪的法 律,而 是针对 疯狂的 法律。 ——马 克·吐温 42、法律的力量应当跟随着公民,就 像影子 跟随着 身体一 样。— —贝卡 利亚 43、法律和制度必须跟上人类思想进 步。— —杰弗 逊 44、人类受制于法律,法律受制于情 理。— —托·富 勒
嵌入式系统概述浙江大学
定符,强制读取内存中的值。
void main(void) {
volatile int *p_status; int *p_data;
p_status = (int *)0x4001; p_data = (int *)0x4000;
do { } while((*p_status & 0x01) == 0); …… }
嵌入式系统走向繁荣,软、硬件日臻完善
? 嵌入式系统的大发展是在微处理问世之后:
? 1971年11月,Intel公司推出了第一片微处理器Intel4004。
人们再也不必为设计一台专用机而研制专用的电路、专用的运 算器了,只需以微处理器为基础进行设计。 ? 1976年,第一个单片机Intel 8048出现。 ? 1982年,第一个DSP出现,比同期的CPU快10~50倍。 ? 80年代后期,第三代DSP芯片出现。
软件技术的进步使嵌入式系统日臻完善:
? 早期嵌入式系统:采用汇编语言,基本不采用操作系统 ? 硬件的提升 ? 软件技术发展
嵌入式系统应用走向纵深化发展
?应用充分普及: 工业控制、数字化通讯、数字化家电
? 汽车:50个以上嵌入式微处理器 ? 飞机:70个以上嵌入式系统
?嵌入式微处理器 32位、64位、128位 ?嵌入式实时操作系统使用比率越来越高
强实时型:响应时间μ s~ms级; 一般实时:响应时间ms~s级; 弱实时型:响应时间s级以上。
嵌入式系统与桌面通用系统的区别(3/7)
? 嵌入式系统中使用的操作系统一般是实时操作系统 ? 嵌入式实时操作系统数量众多,如:
? VxWorks ? Windows CE ? pSOS ? QNX ? uc/OS
? 国内,2009年嵌入式软件规模300亿元以上,过去三年中, 年均增长速度超过20%,预计未来三年高达25%。
void main(void) {
volatile int *p_status; int *p_data;
p_status = (int *)0x4001; p_data = (int *)0x4000;
do { } while((*p_status & 0x01) == 0); …… }
嵌入式系统走向繁荣,软、硬件日臻完善
? 嵌入式系统的大发展是在微处理问世之后:
? 1971年11月,Intel公司推出了第一片微处理器Intel4004。
人们再也不必为设计一台专用机而研制专用的电路、专用的运 算器了,只需以微处理器为基础进行设计。 ? 1976年,第一个单片机Intel 8048出现。 ? 1982年,第一个DSP出现,比同期的CPU快10~50倍。 ? 80年代后期,第三代DSP芯片出现。
软件技术的进步使嵌入式系统日臻完善:
? 早期嵌入式系统:采用汇编语言,基本不采用操作系统 ? 硬件的提升 ? 软件技术发展
嵌入式系统应用走向纵深化发展
?应用充分普及: 工业控制、数字化通讯、数字化家电
? 汽车:50个以上嵌入式微处理器 ? 飞机:70个以上嵌入式系统
?嵌入式微处理器 32位、64位、128位 ?嵌入式实时操作系统使用比率越来越高
强实时型:响应时间μ s~ms级; 一般实时:响应时间ms~s级; 弱实时型:响应时间s级以上。
嵌入式系统与桌面通用系统的区别(3/7)
? 嵌入式系统中使用的操作系统一般是实时操作系统 ? 嵌入式实时操作系统数量众多,如:
? VxWorks ? Windows CE ? pSOS ? QNX ? uc/OS
? 国内,2009年嵌入式软件规模300亿元以上,过去三年中, 年均增长速度超过20%,预计未来三年高达25%。
《嵌入式系统结构》课件
嵌入式存储器包括RAM、ROM、Flash 等类型
Flash用于存储程序和数据,断电后数 据不丢失,速度快,但价格较高
RAM用于存储临时数据,速度快,但断 电后数据丢失
嵌入式存储器的选择需要考虑成本、性 能、功耗等因素
嵌入式输入输出接口
输出接口:用于输出处理结 果,如显示器、扬声器、 LED灯等
输入接口:用于接收外部信 号,如键盘、鼠标、传感器 等
接口类型:串行接口、并行 接口、USB接口、I2C接口
等
接口功能:数据传输、控制 信号、电源管理等
嵌入式电源与接地
电源管理:确保系统稳定运行,降低功耗 电源设计:考虑电源电压、电流、稳定性等因素 接地设计:确保系统安全,防止电磁干扰 电源保护:防止电源异常导致的系统损坏
Part Four
嵌入式系统软件结 构
应用程序:实现特定功能,如数据采 集、数据处理等
Part Five
嵌入式系统的性能 评估与优化
嵌入式系统的性能指标
资源利用率:系统对硬件资 源的使用效率
吞吐量:系统在单位时间内 处理的数据量
响应时间:系统对输入信号 的反应速度
稳定性:系统在长时间运行 中的稳定性和可靠性
功耗:系统在运行过程中消 耗的能源
嵌入式系统在智能制造领域的应用前景
智能化生产:通过嵌入式系统实现 生产线的自动化、智能化生产
质量控制:通过嵌入式系统实现产 品质量的实时监控和自动调整,提 高产品质量
添加标题
添加标题
添加标题
添加标题
设备监控:通过嵌入式系统实时监 控生产设备的运行状态,提高生产 效率
智能物流:通过嵌入式系统实现物 流的自动化、智能化管理,提高物 流效率
嵌入式处理器的特点包括低功耗、 高集成度、高可靠性和实时性等。
浙江大学高级嵌入式体系结构课件-高级计算机体系结构-第一章汇编
ZJU_Advanced Computer Architecture_sqs
7
Three different computing markets
Desktop Computing
The first, and still the largest market in dollar terms, is desktop computing.
2. 选择一个嵌入式相关体系结构内容,撰写一篇字数不少于
8000字的综述(分析)报告(参考文献要求在10篇以上,并 且引用的参考文献必须在文中加以引用标注,参考文献一并提 交)。
提交时间:待定; 地址: 待定;
ZJU_Advanced Computer Architecture_sqs
5
现代计算机技术的核心体现
ZJU_Advanced Computer Architecture_sqs
2
教材
英文原版: 《Computer Architecture--
A Quantitative Approach》3ed、4th.
John L.Hennessy, David A.Patterson 机械工业出版社原版影印
application-specific circuitry.
₠ DSP
ZJU_Advanced Computer Architecture_sqs
9
嵌入式体系特征
1. The designer uses a combined hardware/software solution that includes some custom hardware and an embedded processor core that is integrated with the custom hardware, often on the same chip.
浙江大学高级嵌入式体系结构课件4 Benchmark
qFundamentals of Computer Design
ComputerArchitecture_Chapt1_3
What we learned last class ?
q Cost trends
!
q Dependability
!
q Performance metrics
•
Figure 4. Denormalizing a user information table.
The Pathologies of Big Data
1
Running Benchmarks
q Key factor: Reproducibility by other experimenters.
q Details, details, and more details !!! List all assumptions and conditions of your experiments.
Ø i.e. program input, version of the program, version of
the compiler, optimization level, OS version, main memory size, disk types, etc.
q A system’s software configuration can significantly affect the performance results for a benchmark. 5
machines or different programs. Why?
• • Performance and Execution time are reciprocals Maximizing performance means minimizing response (execution) time
ComputerArchitecture_Chapt1_3
What we learned last class ?
q Cost trends
!
q Dependability
!
q Performance metrics
•
Figure 4. Denormalizing a user information table.
The Pathologies of Big Data
1
Running Benchmarks
q Key factor: Reproducibility by other experimenters.
q Details, details, and more details !!! List all assumptions and conditions of your experiments.
Ø i.e. program input, version of the program, version of
the compiler, optimization level, OS version, main memory size, disk types, etc.
q A system’s software configuration can significantly affect the performance results for a benchmark. 5
machines or different programs. Why?
• • Performance and Execution time are reciprocals Maximizing performance means minimizing response (execution) time
嵌入式系统-浙江大学PPT课件
手持仪
监控仪
25
嵌入式系统:交通相关
汽车电子
处理器个数可达三位数 车载
娱乐,定位等
车控
ABS、EBD等
其他
中国版月球车
汽车立体声音 响HD Radio扩展包
改装遮阳板 DVD / TV / MP3
26
嵌入式系统:军工
武器控制系统 数字化单兵系统
有苛刻要求
尺寸和重量 功率消耗 震动和冲击 温度和湿度
软件代码高质量、高可靠性
可能无系统软件 软硬件紧密结合,协同开发
37
其他可能有的要求
实时性强 功耗低 支持升级
软件和硬件结合紧密
由于定制,可能无硬盘,无通用操作系统 产品升级换代困难 和硬件同步升级
具有较长的生命周期
38
定义
微软在2002年将嵌入式系统定义为完成某一特定功能、 或是使用某一特定嵌入式应用软件的计算机或计算装置。
脑手机放在底座上成为电脑
韩国电信手机/电视遥 控器二合一产品
10
嵌入式系统:PMP
Portable Media Player
Meizu M8
Ipod nano
Nike的 iPod 帽
iLuv可即时将视频录制到iPod/ 闪存卡上,与以前技术相反
XtremeMac开发的iPod音箱
Archos带 IPEVO支持Skype电话 Wifi的704
浙江大学显示营 养智能果汁机
箱/Xbox360/健身 遮断红外线光束掉下笼子
配备电子食谱 的锅铲coo.boo
17
浙江大学产品创新中心的智能割草机
18
智能营养果汁机
浙江大学高级嵌入式体系结构课件9 Pipeline II
q This is clearly a serious problem ( Control hazard ) that needs to be addressed. We will deal it later.
Pipeline hazard: the major hurdle
q A hazard is a condition that prevents an instruction in the pipe from executing its next scheduled pipe stage
Insert Stall—simplest way
Time (clock cycles)
ALU Mem ALU Reg Mem ALU Reg Mem Reg
I n s t r. O r d e r
Ld/St Instr 1 Instr 2 Stall Instr 3
Mem
Reg Mem
Reg Mem
q Taxonomy of hazard
Ø Structural hazards Ø Data hazards
¡ These are conflicts over hardware resources. ¡ Instruction depends on result of prior
computation which is not ready (computed or stored) yet
q Structural hazards
Structural hazard: Pipe Stage Contention
Ø Occurs when two or more instructions want to
use the same hardware resource in the same cycle
嵌入式系统软件体系结构.ppt
动过程中,有什么区别? 2、HY57V641620是属于什么器件? 3、USB指的是什么?它可以有哪些类型?常
见的PC机上的USB接口属于哪一类? 4、简述USB的工作原理及工作方式。 5、常常听到的USB2.0指的是什么?
5、了解其他相关嵌入式软件体系的知识Biblioteka 第四章 嵌入式系统软件体系结构
4.1 基本概念 软件体系结构是包含系统构件、连接件和
约束的集合。 本质:核心内容必须考虑软件系统的结
构。这种结构是包含着各类交互关系、限制 及拓扑结构和设计原则等基本实体。
第四章 嵌入式系统软件体系结构
4.2 软件体系结构的作用 主要体现在两个方面: 1、是整个系统的整体规划
第四章 嵌入式系统软件体系结构
一、主要内容
1、基本概念 2、作用 3、通用软件体系结构 4、轮询系统 5、前后台系统 6、实时多任务系统 7、多处理器系统
第四章 嵌入式系统软件体系结构 二、学习目标
1、掌握嵌入式软件体系模型
2、熟悉嵌入式软件开发流程
3、熟悉软件体系的架构方法
4、掌握常见软件系统的设计和实现过程
2、是系统的抽象框架,越复杂的系统该 作用越明显
4.2 软件体系结构的作用
1、对整个系统的规划 结构性规划,只对系统组成元素、元素之
间应该如何组织才可以实现系统功能等问题 提出解决方法。也可以这么说,该规划只完 成系统的设计思路、功能特点进行描述。参 考图4.1.
4.2 软件体系结构的作用
2、抽象管理框架 完成对现实系统的抽象,体现于软件体系
结构中的各个元素,是从多个实际环境中抽 象出来的。例如在嵌入式系统组成中,就有 所谓的硬件抽象层。这层中,不管底层硬件 如何,只要在该抽象层中,提供了API接口, 那么基本上硬件的驱动就可以完成。
见的PC机上的USB接口属于哪一类? 4、简述USB的工作原理及工作方式。 5、常常听到的USB2.0指的是什么?
5、了解其他相关嵌入式软件体系的知识Biblioteka 第四章 嵌入式系统软件体系结构
4.1 基本概念 软件体系结构是包含系统构件、连接件和
约束的集合。 本质:核心内容必须考虑软件系统的结
构。这种结构是包含着各类交互关系、限制 及拓扑结构和设计原则等基本实体。
第四章 嵌入式系统软件体系结构
4.2 软件体系结构的作用 主要体现在两个方面: 1、是整个系统的整体规划
第四章 嵌入式系统软件体系结构
一、主要内容
1、基本概念 2、作用 3、通用软件体系结构 4、轮询系统 5、前后台系统 6、实时多任务系统 7、多处理器系统
第四章 嵌入式系统软件体系结构 二、学习目标
1、掌握嵌入式软件体系模型
2、熟悉嵌入式软件开发流程
3、熟悉软件体系的架构方法
4、掌握常见软件系统的设计和实现过程
2、是系统的抽象框架,越复杂的系统该 作用越明显
4.2 软件体系结构的作用
1、对整个系统的规划 结构性规划,只对系统组成元素、元素之
间应该如何组织才可以实现系统功能等问题 提出解决方法。也可以这么说,该规划只完 成系统的设计思路、功能特点进行描述。参 考图4.1.
4.2 软件体系结构的作用
2、抽象管理框架 完成对现实系统的抽象,体现于软件体系
结构中的各个元素,是从多个实际环境中抽 象出来的。例如在嵌入式系统组成中,就有 所谓的硬件抽象层。这层中,不管底层硬件 如何,只要在该抽象层中,提供了API接口, 那么基本上硬件的驱动就可以完成。
《嵌入式系统结构》课件
云计算和网络化
嵌入式系统将更多地与云计算和网络技术结 合,实现远程控制和数据传输。
定制化设计
随着应用领域的多样化,嵌入式系统的定制 化设计需求越来越高。
02
嵌入式系统硬件结构
微处理器
微处理器是嵌入式系统的核心 ,负责控制和协调整个系统的 运作。
常见的微处理器类型包括ARM 、MIPS、PowerPC等,它们 具有低功耗、高性能的特点。
嵌入式系统优化技术
01
嵌入式系统优化技术概述
介绍嵌入式系统优化的目的、方法和技巧,以及优化工具的种类和功能
。
02
代码优化技术
介绍代码优化的常用方法和技巧,如变量优化、循环优化、函数优化等
,以及如何使用代码优化提高程序执行效率和降低功耗。
03
内存优化技术
介绍内存优化的常用方法和技巧,如内存管理、内存泄漏检测和内存压
嵌入式系统硬件结构实例
ARM架构嵌入式系统
ARM处理器具有低功耗、高性能的特点,广泛应用于移动设备和物联网领域。
MIPS架构嵌入式系统
MIPS处理器具有简单高效的特点,常用于网络设备和数字电视领域。
03
嵌入式系统软件结构
嵌入式操作系统
实时性
嵌入式操作系统能够提供实时响应, 确保系统在规定时间内完成特定任务 。
《嵌入式系统结构》ppt课件
contents
目录
• 嵌入式系统概述 • 嵌入式系统硬件结构 • 嵌入式系统软件结构 • 嵌入式系统的开发工具与技术 • 嵌入式系统的应用案例
01
嵌入式系统概述
定义与特点
定义
嵌入式系统是一种专用的计算机系统,主要 用于控制、监视或帮助操作机器和设备。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
❑ WAW(Write after write) output dependence
➢ Instruction A writes Rx,instruction B writes Rx
❑ WAR( Write after read) anti-denpendence
➢ Instruction A reads Rx,instruction B writes Rx
11
Types of data hazards
❑ Consider two urs before B.
❑ RAW( Read after write) true dependence
➢ Instruction A writes Rx,instruction B reads Rx
Time No hazard
S(A)
D(A)
S(B)
D(B)
S(A)
D(A) S(B)
D(B)
If D(A)=S(B), hazard occur.
Jiangxh_CA_Pipeline4
13
WAW dependence
❑ B tries to write an operand before A has written it. ❑ After instruction B has executed, the value of the register should be B's result, but A's result is stored instead. ❑ This can only happen with pipelines that write values in more than one stage, or in variable-length pipelines (i.e. FP pipelines).
Functional unit Integer ALU
Latency 0 1 3 6 24
Initiation interval 1 1 1 1 25
Data memory(integer and FP loads) FP add FP multiply (also integer multiply) FP divide (also integer divide)
➢ M1/M2, M2/M3, M3/M4, M4/M5, M5/M6, M6/M7 ➢ A1/A2, A2/A3, A3/A4
❑ New connection registers are required:
➢ ID/EX, ID/M1, ID/A1, ID/DIV ➢ EX/MEM, M7/MEM, A4/MEM, DIV/MEM
8 M6
9 M7
10
11
M3 M4 A2 M1 ID IF A3 M2 EX ID
MEM WB
MEM WB M5 M6 M7 MEM WB
M3 M4 MEM WB EX
MEM WB
Jiangxh_CA_Pipeline4
9
Structural Hazards for the FP register write port
S(A) S(A) S(B) D(A) S(B) D(A) D(B) D(B)
Time No hazard
If D(A)=D(B), hazard occur.
Jiangxh_CA_Pipeline4
14
WAR dependence
❑ B tries to write a register before A has read it. ❑ In this case, A uses the new (incorrect) value. ❑ This type of hazard is rare because most pipelines read values early and write results late. ❑ However, it might happen for a CPU that had complex addressing modes. i.e. autoincrement.
11
MEM WB
WB A2 EX ID IF A3 MEM EX ID A4 WB MEM EX WB MEM WB MEM WB
Jiangxh_CA_Pipeline4
10
How to solve the write port conflict ?
❑ Increase the number of write ports
➢ To stall a conflicting instruction when it tries to enter the MEM or WB
stage.
Easy to detect the conflict at this point Complicates pipeline control since stalls can now occur in two places. Jiangxh_CA_Pipeline4
Which means using a slow clock, or/and using enormous amounts of logic in FP units.
➢Allow for a longer latency for operations
The EX cycle may be repeated as many times as needed to complete the operation There may be multiple FP units
Jiangxh_CA_Pipeline4
3
MIPS pipeline with FP units
EX Integer unit
Handles loads, stores , integer ALU ops, and branches.
EX FP/Integer multiply IF ID EX FP adder MEM WB
Instruction MULTD F0, F4, F6 … … ADDD F2, F4, F6 … … LD F8, 0(R2)
1 IF
2 ID IF
3 M1 ID IF
4 M2 EXi ID IF
5 M3 MEM EX ID IF
6 M4 WB MEM A1 ID IF
7 M5
8 M6
9 M7
10
EX FP/integer divider
Handles FP add, subtract, and conversion
Jiangxh_CA_Pipeline4
4
Pipelining some of the FP units
❑ Two terminologies
➢Latency----the number of intervening cycles between
Jiangxh_CA_Pipeline4
8
Issuing in order and completion out of order
Instruction MUL.D ADD. D MUL.D LD.D SD.D
1 IF
2 ID IF
3 M1 ID IF
4 M2 A1 ID IF
5
6
7 M5 A4
For full pipelined units, initiation interval is 1 For unpipelined units, initiation interval is always the latency plus 1.
Jiangxh_CA_Pipeline4
5
Latencies and initiation intervals for functional units
❑ Hazards are named according to the ordering that MUST be preserved by the pipeline
Jiangxh_CA_Pipeline4
12
RAW dependence
❑ B tries to read a register before A has written it and gets the old value. ❑ This is common, and forwarding helps to solve it.
Jiangxh_CA_Pipeline4
6
Pipeline supports multiple outstanding FP operations
Integer unit EX FP/integer multiply M1 IF ID A1 M2 M3 M4 M5 M6 M7 MEM A3 A4 WB Multiple EX stages require additional pipeline latches
FP adder A2
FP/integer divider DIV Unpipelined Divider
Jiangxh_CA_Pipeline4
7
Specifications
❑ Memory bandwidth: double words/one cycle ❑ New pipeline latches are required:
Jiangxh_CA_Pipeline4
2
Extending the MIPS pipeline to handle MultiCycle Operations
❑ Alternative resolutions to handle floating-point operations ➢Complete operation in 1 or 2 clock cycles,