嵌入式系统与SOC设计第1讲嵌入式系统概述

Download Report

Transcript 嵌入式系统与SOC设计第1讲嵌入式系统概述

嵌入式系统与SoC设计
李
康
西安电子科技大学微电子学院
[email protected]
1
教材
2
课程实施目标
了解现代SoC嵌入式系统的设计方法学;
学会利用软硬件协同思想进行设计开发;

嵌入式系统描述的基本模型与工具;

如何将系统模型转换成需要的实现;
了解基于SoC硬件系统的软件开发流程;
理解嵌入式SoC系统设计实施过程
课程核心:建立系统观念!
3
课程所起的作用
嵌入式系统课程承上启下的作用
计算机组成
数字信号处理 计算体系结构
信号与系统
微机原理与接口
。。。
嵌入式系统理论
嵌入式体系结构
嵌入式操作系统
嵌入式软硬件开发
C程序设计
HDL语言
线性电路设计
数字电路设计
可编程器件应用
4
从“菜鸟”到“高手”?
实践
全才?专才?
学校如何定位?
研发?测试?生产?
工匠 老师如何定位? 高手
硬件?软件?驱动?
学生如何定位?
OS?应用???
菜鸟
理论家
理论
课程实施
介绍基于SoC的嵌入式系统设计基本技术
软硬件协同设计;

嵌入式系统描述的计算模型(FSMD);

软硬件协同的处理器设计;

将系统模型转换成需要的实现;
嵌入式系统的软件设计开发流程-基于ARM的SoC系
统开发
实际的SoC设计过程-数码相机设计实例;
6
课程考查方法
上机实验与平时: 40%
期末考试:
60%
7
第1课
嵌入式系统概述
1. 嵌入式系统的应用发展
2. 嵌入式系统设计面临的问题
3. MOORE定律导致新的设计方法学的发展
8
1. 嵌入式系统的应用发展
什么是嵌入式系统
嵌入式系统的应用领域
9
1.1 计算机应用领域的划分
服务器
服务器
小型专用型
桌面通用型
服务器
高端服务型
10
1.2 嵌入式系统定义
嵌入式系统是以应用为中心,以计算机技术
为基础,采用可剪裁软硬件,适用于对功能、
可靠性、成本、体积、功耗等有严格要求的专
用计算机系统,用于实现对其他设备的控制、
监视或管理等功能
11
1.3 嵌入式系统应用特点(1)
 嵌入式系统中运行任务的单一性

心脏监视器只需运行信号输入、信号处理、心电图显示任务

如要更改任务,需要对整个系统进行重新设计或在线维护
12
1.3 嵌入式系统的应用特点(2)
 嵌入式系统对设计指标具有严格的约束

成本

大小

性能

功耗
13
1.3 嵌入式系统的应用特点(3)
嵌入式系统对实时性和反应性有高要求。


实时系统:指系统能够在限定的响应时间内提供所
需水平的服务。
嵌入式实时系统可分为:
 强实时型:响应时间μs~ms级;
 一般实时:响应时间ms~s级;
 弱实时型:响应时间s级以上。
14
1.3 嵌入式系统应用特点(4)
 嵌入式系统中使用的操作系统一般是实时操作系统
 嵌入式实时操作系统数量众多,如:
 VxWorks
 Windows CE
 QNX
15
1.3 嵌入式系统应用特点(5)
 嵌入式系统大都有功耗约束。
ZebraNet (普林斯顿大学)


一个设计用于监控野生斑马群的移动规律的系统。每个斑马佩戴一
个套环节点,包含GPS、无线收发器、处理器、太阳能供电电池。
处理器周期读取GPS信息保存在memory中;套环每三分钟读取一次
位置信息以及指示斑马在阳光下还是在树荫下的信息;每小时套环
要花费三分钟详细的读取数据判断斑马的速度,每匹斑马每天产生
6KB的数据。每当生物学家到达一定的区域范围内,套环才发送数
据到网络。
16
1.4 嵌入式系统实例-数码相机
Digital camera chip
CCD
CCD preprocessor
Pixel coprocessor
D2A
A2D
lens
JPEG codec
Microcontroller
Multiplier/Accum
DMA controller
Display ctrl
Hardware
Software
Memory controller
ISA bus interface
UART
LCD ctrl
17
2.1 嵌入式系统的应用----航天
国际空间站
好奇号火星
车
北斗卫星系统
18
2.2 嵌入式系统的应用----军事
全球鹰无人机
武装直升机
战斧导弹
19
2.3 嵌入式系统的应用----通信
路由交换设备
手机
无线网卡
20
2.4 嵌入式系统的应用----汽车
汽车电子设备一览
21
2.5 嵌入式系统的应用----医疗
飞利浦智能药丸检测系统
远距离看护系统
22
2.6 嵌入式系统的应用----家居与娱乐
PS3
Wii
XboX360
23
2.7 嵌入式技术的应用-智能家居
电子涂鸦墙
移动 Skype电话
InTouch 信息交互系统
智能插座
24
英特尔智能家庭能源管理
2.8 嵌入式技术的未来应用-可穿戴系统
美国麻省理工学院媒体实验室
的 数位人系统
视频眼镜
25
2.9 嵌入式技术未来的应用-智能机器
机器人
iPhone遥控
26
2. 嵌入式系统设计面临的问题
嵌入式系统结构组成
嵌入式系统发展历程
27
嵌入式系统结构组成
嵌入式系统一般由嵌入式微处理器、外围硬件
设备、嵌入式操作系统(可选),以及用户的
应用软件系统等四个部分组成
28
一个典型的嵌入式系统应用
29
嵌入式微处理器
 1000多种硬件处理器,分为MCU、DSP、MPU、SOC








ARM RISC (ARM)
TMS320 DSP(TI)
Trimedia (Philips)
StrongARM (Intel)
Xscale
(Intel)
MIPS RISC (MIPS)
DragonBall(Motorola)
X86
(Intel)
30
外围硬件设备
(1/2)
 片外总线:连接系统各个部件,进行互连和传输信息的信号线。



ESIA总线、SCSI总线、PCI总线
AMBA总线:ARM研发的总线规范
专用总线
 CompactPCI总线:工业控制
 CAN总线:汽车电子总线
 1553B总线:航空工业总线
 电子盘:采用flash芯片存储数据,体积小、功耗低、抗震





DOC:Disk on Chip
DOM:IDE电子盘
CF:CompactFlash
SM:Smart Media
MS:Memory Stick
31
外围硬件设备
(2/2)
 I/O设备




A/D、D/A
中断控制器
UART
LCD
 通讯设备


有线通讯:IEEE1394、USB
无线通讯:IrDA、Bluetooth、802.11b/g
32
嵌入式实时操作系统
 典型的嵌入式实时操作系统(RTOS)



近200种操作系统,VxWorks、QNX、WinCE、PalmOS
面向SOC的操作系统:Google的Andriod、Symbian的Epoc、
Express Logic的ThreadX、ATI的Nucleus
开放源码的操作系统:Linux系列、uC/OS、Andriod
 典型性能指标

内核大小:几K~几百K;

调度时间片:1ms;

实时任务响应时间:20~40微妙

一般任务响应时间:20微妙~几百毫秒
33
2. 嵌入式系统的发展历程
 嵌入式系统出现于20世纪60年代,40多年来随着计算机技
术、电子信息技术的发展,嵌入式系统的各项技术蓬勃发
展,市场迅猛扩大,已深入生产和生活的各个角落。
 嵌入式系统发展的三个阶段

嵌入式系统的出现和兴起
(1960-1970)

嵌入式系统走向繁荣,软件、硬件日臻完善(1971-1989)

嵌入式系统应用走向纵深化发展
(1990-至今)
34
嵌入式系统的出现和兴起
 第一代电子管计算机(1946~1957年),无法满足嵌入式计算所要求
的体积小、重量轻、耗电少、可靠性高、实时性强等一系列要求。
 60年代,第二代晶体管计算机系统开始应用:


第一台机载专用数字计算机是美国海军舰载轰炸机“民团团员”
号研制的多功能数字分析器(Verdan)。
1962年美国乙烯厂实现了工业装置中的第一个直接数字控制。
 1965~1970年,第三代集成电路化计算机系统应用:

第一次使用机载数字计算机控制:1965年发射的Gemini3号

第一次通过容错来提高可靠性:1968年阿波罗4号、土星5号。
35
嵌入式系统走向繁荣,软、硬件日臻完善
 嵌入式系统的大发展是在微处理问世之后:

1971年11月,Intel公司推出了第一片微处理器Intel4004。
人们再也不必为设计一台专用机而研制专用的电路、专用的运
算器了,只需以微处理器为基础进行设计。



1976年,第一个单片机Intel 8048出现。
1982年,第一个DSP出现,比同期的CPU快10~50倍。
80年代后期,第三代DSP芯片出现。
软件技术的进步使嵌入式系统日臻完善:



早期嵌入式系统:采用汇编语言,基本不采用操作系统
硬件的提升
软件技术发展
36
嵌入式系统应用走向纵深化发展
 应用充分普及:工业控制、数字化通讯、数字化家电

汽车:50个以上嵌入式微处理器

飞机:70个以上嵌入式系统
 嵌入式微处理器32位、64位
 嵌入式实时操作系统使用比率越来越高

早期:10%;90年代初:30%;目前:80~90%
 嵌入式系统开发工具越来越丰富
 嵌入式系统产业链形成
37
3. IC制造业的摩尔定律
38
2009
2007
2005
2003
2001
1999
1997
1995
1993
1991
1989
1987
1985
1983
1,000
100
10
1
设计效率
(K) 晶体管./人 – 月.
2.3.2 设计技术发展趋势
100,000
10,000
0.1
0.01
设计生产率的指数增长趋势
39
2.3.4 设计效率的差距
尽管过去几十年来设计效率得到了大大提高,但仍然跟不上芯片
容量的增长速度。
10,000
100,000
1,000
10,000
每芯片中的
逻辑晶体管
(百万)
100
10
1000
Gap
IC capacity
1
10
0.1
0.01
0.001
100
晶体管(千)/
设计师-月
1
productivity
0.1
0.01
40
2.3.4 设计效率的差距
1981 高级芯片设计需要100 人-月

10,000 transistors / 100 transistors/month
2002高级芯片设计需要30,000 人-月

150,000,000 / 5000 transistors/month
设计成本从$1M 增加到 $300M
每芯片中的逻辑
晶体管
(百万)
10,000
100,000
1,000
10,000
100
10
1
0.1
0.01
0.001
Gap
IC capacity
productivity
1000
100
10
1
生产效率
晶体管(K)/人-月.
0.1
0.01
41
人月神化
增加设计师会降低个人效率,有时会延长项目完成时间。
现实中,由于团队管理和交流的复杂性,使得每个人的
设计效率降低。
1M 晶体管, 1个设计师
=5000 trans/month
每增加一个设计师减少 100
trans/month
2 个设计师时,每个的效率
是 4900晶体管/month each
60000
50000
40000
30000
20000
10000
16
15 16
19
Team
18
23
24
Months until completion
43
Individual
0
10
20
30
Number of designers
40
42
3. 摩尔定律导致新的设计方法学
协同设计的阶梯
软硬件的协同
43
2.3.2 设计技术发展趋势
Sequential program code (e.g., C, VHDL)
协同设计的阶梯
Behavioral synthesis
(1990's)
Compilers
(1960's,1970's)
Register transfers
Assembly instructions
RT synthesis
(1980's, 1990's)
Assemblers, linkers
(1950's, 1960's)
Logic equations / FSM's
Logic synthesis
(1970's, 1980's)
Machine instructions
Logic gates
Microprocessor plus program
bits: “software”
Implementation
VLSI, ASIC, or PLD
implementation: “hardware”
对某一个特定功能而言,选择硬件还是软件只有在不同设计指标之间进行取舍,包括性
能、功耗、大小、NRE成本,尤其是灵活性;硬件实现和软件实现并没有本质的区别
44
2.3.2 设计技术发展趋势
今后的趋势?

过去:
 软硬件设计技术是截然不同的。

现在:
 近来综合工具的成熟使软、硬件有了一个统一的观点

未来:
 硬件/软件协同设计”
45
课程实施
介绍基于SoC的嵌入式系统设计基本技术
软硬件协同设计;

嵌入式系统描述的计算模型(FSMD);

软硬件协同的处理器设计;

将系统模型转换成需要的实现;
嵌入式系统的软件设计开发流程-基于ARM的SoC系
统开发
实际的SoC设计过程-数码相机设计实例;
46
嵌入式系统概述小结
47
Andriod系统的创建人
Andy rubin
49
Intel core i7 4核处理
器
Intel 4004芯片
50
汽车的嵌入式处理器
51
2010年千年技术奖获得者
左:剑桥大学Richard Friend教授 ,有机LED
中:曼彻斯特大学Stephen Furber教授,ARM微处理器;
右:洛桑高等理工学院Michael Grätzel教授,第三代太阳能电池
52