1、嵌入式系统原理嵌入式系统原理第第2讲讲计算机科学学院 于山山主讲2022-12-3曲阜师范大学 计算机科学学院2可编程逻辑器件和可编程逻辑器件和IP核核l本章主要授课内容l集成电路的制造流程l电子设计自动化l可编程逻辑器件FPGA/CPLDlFPGA应用举例l硅知识产权核(IP核)l片上总线l低功耗设计原理2022-12-3曲阜师范大学 计算机科学学院32.1 集成电路制造流程简介集成电路制造流程简介l集成电路厂所生产的产品实际上包括两大部分:晶圆切片(die,也简称为晶圆)和超大规模集成电路芯片(chip,可简称为芯片)。l晶圆切片是一片像镜子一样的光滑圆形薄片,是供其后芯片生产工序深加工的
2、原材料。l一个晶圆上可以印刷多个裸晶的电路版图l芯片制造完毕后从一个晶圆上切割出许多裸晶l对单个裸晶进行测试得到质量合格的成品裸晶l将裸晶进行封装就得到芯片l芯片经过严格的测试就获得了成品芯片2022-12-3曲阜师范大学 计算机科学学院4芯片制造基本流程图解芯片制造基本流程图解2022-12-3曲阜师范大学 计算机科学学院5芯片原材料芯片原材料硅锭硅锭l硅锭是生产芯片的原材料2022-12-3曲阜师范大学 计算机科学学院6硅锭切片硅锭切片晶圆晶圆2022-12-3曲阜师范大学 计算机科学学院7将晶圆切割成裸晶将晶圆切割成裸晶l一个晶圆片上再切割成许多裸晶(也叫管芯)2022-12-3曲阜师范
3、大学 计算机科学学院8裸晶上印制版图裸晶上印制版图l右边给出了裸晶的实例照片。注意四周是引脚2022-12-3曲阜师范大学 计算机科学学院9处理器芯片的版图照片之一处理器芯片的版图照片之一lSun公司的UltraSparc IV+处理器版图2022-12-3曲阜师范大学 计算机科学学院10处理器芯片的版图照片之二处理器芯片的版图照片之二lAMD公司的 64位双核处理器Opteron2022-12-3曲阜师范大学 计算机科学学院11处理器芯片的版图照片之三处理器芯片的版图照片之三lIntel公司的 Itanium2处理器l代号Madison2022-12-3曲阜师范大学 计算机科学学院12多个裸
4、晶可以封装在一个芯片内多个裸晶可以封装在一个芯片内l双CPU核的芯片结构2022-12-3曲阜师范大学 计算机科学学院132.2 电子设计自动化电子设计自动化l电子设计自动化lElectronic Design Automation,EDAlEDA是先进的电子系统设计方法和开发工具lEDA以计算机为主要工具,对使用硬件描述语言(HDL,Hardware Description Language)为描述手段完成的数字系统设计文件,自动地完成逻辑编译、逻辑综合、结构综合(布局布线),以及逻辑优化和仿真测试,直至实现既定的电子系统功能。2022-12-3曲阜师范大学 计算机科学学院14EDA目标目标
5、l利用EDA技术进行电子系统设计,最后实现的目标电路有3种类型。全定制或半定制专用集成电路lASIC:Application Specific Integrated CircuitsFPGA/CPLD(或称可编程ASIC)开发应用印制电路板PCB,Printed Circuit Board2022-12-3曲阜师范大学 计算机科学学院15数字系统硬件抽象模型数字系统硬件抽象模型设计层次设计层次行为域行为域结构域结构域物理域物理域系统级自然语言描述的系统功能,部件功能描述部件及它们之间连接的方框图芯片、模块、电路板以及子系统的物理划分。芯片级算法硬件模块、数据结构的互连体部件之间的物理连接寄存器
6、级(RTL)数据流图、状态机、状态转移表。ALU、MUX、寄存器、BUS、微定序器、微存储器等。宏单元逻辑级(门级)布尔方程、卡诺图、Z变换门电路、触发器、锁存器等元件构成的电路。标准单元布图电路级电流、电压的微分方程晶体管、电阻、电容、电感等晶体管布图2022-12-3曲阜师范大学 计算机科学学院16ASIC设计设计流程流程概念设计行为级描述(RTL级设计)构建模块与接口逻辑综合与优化门级网络表时序仿真(后仿真)适配与验证硬件测试FPGA/CPLD实现布局布线设计图形方式VHDL语言系统架构设计与软硬件划分源代码功能仿真(前仿真)代码文件报告文件网表文件报告文件波形文件器件编程文件ASIC实
7、现形成软核形成固核版图文件测试报告2022-12-3曲阜师范大学 计算机科学学院17自顶向下法的自顶向下法的ASIC设计方法设计方法l第1步 概念设计l第2步 系统架构设计与软硬件划分l第3步 行为级描述l第4步 构建模块与接口l第5步 功能仿真l第6步 逻辑综合与优化l第7步 布局布线设计l第8步 时序仿真l第9步 适配和验证l第10步 硬件测试2022-12-3曲阜师范大学 计算机科学学院18硬件描述语言硬件描述语言 l主流的HDL有VHDL、Verilog、System C、Superlog和SystemVerilog等。l下面分别介绍 2022-12-3曲阜师范大学 计算机科学学院19
8、VHDLlVHDL的英文全称为:Very High-Speed Hardware Descreption Language。它是1985年在美国国防部支持下推出的。1987年由IEEE(电气电子工程师协会,Institute of Electrical and Electronics Engineers)将VHDL制定为标准。参考手册为IEEE VHDL语言参考手册标准草案1076/B版,于1987年批准,称为IEEE 1076-1987。1993年和1997年IEEE又对VHDL标准进行了修订。2022-12-3曲阜师范大学 计算机科学学院20VeriloglVerilog HDL是在198
9、3年由GDA(GateWay Design Automation)公司为其模拟器产品开发的硬件描述语言。1989年,Cadence公司收购了GDA公司,Verilog HDL语言成为Cadence公司的产品。1990年,Cadence公司决定公开Verilog HDL语言,于是成立了OVI(开放Verilog国际,Open Verilog International)组织,负责促进Verilog HDL语言的推广。l基于Verilog HDL的优越性,IEEE于1995年制定了Verilog HDL的IEEE标准,即Verilog HDL 1364-1995;2001年发布了Verilog H
10、DL 1364-2001标准。2022-12-3曲阜师范大学 计算机科学学院21SystemClSystemC是由Synopsys公司和CoWare公司合作开发的。1999年9月27日,40多家世界著名的EDA公司、IP公司、半导体公司和嵌入式软件公司宣布成立“开放式SystemC联盟”。SystemC从1999年9月联盟建立初期的0.9版本开始更新,从1.0版到1.1版,一直到2001年10月推出了最新的2.0版。lSystemC利用流行的C+编译器,在没有对C+增加新的语言构件的基础上,利用类的概念对C+进行了扩充,加入了一个类库和仿真核。设计者能利用它有效地创建软件算法、硬件结构和系统设
11、计模型。2022-12-3曲阜师范大学 计算机科学学院22SystemVeriloglSystemVerilog是IEEE于2005年颁布的工业界第一个统一硬件描述和硬件验证的标准,命名为IEEE 1800标准,在IEEE 1364标准基础上产生。SystemVerilog增加了创建和验证抽象结构的层模型功能,可以提供对深流水线和高端芯片设计的抽象描述。它是新的硬件设计规范,特别适用于基于知识产权、大数量逻辑门和密集总线之类的芯片,提升了这类芯片的设计、仿真和验证效率。2022-12-3曲阜师范大学 计算机科学学院232.3 可编程逻辑器件可编程逻辑器件l可编程逻辑器件lProgrammabl
12、e Logic Device,PLDl数字ASIC的重要分支,是半导体电路厂商生产的一种通用性半定制集成电路。用户通过对PLD编程可以实现所需要的逻辑功能。2022-12-3曲阜师范大学 计算机科学学院24两种类型的两种类型的PLDl在PLD器件中有重要的两大类:l复杂可编程逻辑器件lCPLD:Complex Programmable Logic Devicel现场可编程门阵列lFPGA:Field Programmable Gate Arrayl两者功能基本相同,只是实现原理略有不同。2022-12-3曲阜师范大学 计算机科学学院25CPLD和和FPGA的基本构成的基本构成l以乘积项结构方式
13、构成逻辑行为的器件称为CPLD,如赛灵思(Xilinx)公司的XC9500系列、莱迪斯(Lattice)公司的ispLSI系列、Altera的MAX7000S系列等;l以查表法结构方式构成逻辑行为的器件称为FPGA,如Altera的FLEX10K、ACEX1K或Cyclone系列、Xilinx的SPARTAN系列和Virtex系列等。2022-12-3曲阜师范大学 计算机科学学院26乘积项实现乘积项实现PLD的示意图的示意图OR Matrix&AND Matrix AND Matrix OR Matrix Input Output 2022-12-3曲阜师范大学 计算机科学学院27ROM,PA
14、L&PLAI5I4O0I3I2I1I0O1O2O3Programmable AND arrayProgrammableOR arrayI5I4O0I3I2I1I0O1O2O3Programmable AND arrayFixed OR arrayO0I3I2I1I0O1O2O3Fixed AND arrayProgrammableOR array与或阵列 均可编程与阵列 可编程 或阵列 固定或阵列 可编程 与阵列 固定2022-12-3曲阜师范大学 计算机科学学院28查找表(查找表(Look-Up-Table)的例子)的例子l一个4输入的与门实际逻辑电路查找表实现a,b,c,d输入逻辑输出地址
15、RAM值00000000000001000010。0。0。11111111112022-12-3曲阜师范大学 计算机科学学院29CPLD和和FPGA的基本区别的基本区别主要特点主要特点CPLDFPGA逻辑电路主要性质组合逻辑时序逻辑目标电路适应性触发器有限而乘积项丰富触发器丰富时序延迟均匀,并且可预测较大的延迟,不可预测编程灵活性小大编程方式基于电子熔丝编程基于E2PROM或FLASH编程编程次数大约一万次任意次,工作中可编程布线结构与逻辑实现复杂度低复杂度高程序信息易失性系统断电时不丢失系统断电时丢失保密性好差使用方便性高低功耗相对低相对高集成度低高2022-12-3曲阜师范大学 计算机科学
16、学院30CPLD/FPGA的结构特点的结构特点l它们都由三大部分组成:l可编程二维的逻辑阵列块,构成了PLD器件的逻辑组成核心;l可编程的输入/输出块;l可编程的连接逻辑块的互连资源,连线资源由各种长度的连线线段组成,其中也有一些可编程的连接开关,它们用于逻辑块之间、逻辑块与输入/输出块之间的连接。2022-12-3曲阜师范大学 计算机科学学院31典型典型CPLD结构图结构图(Altera公司公司MAX7000系列)系列)2022-12-3曲阜师范大学 计算机科学学院32典型典型FPGA结构图结构图(赛灵思公司(赛灵思公司Virtex系列)系列)2022-12-3曲阜师范大学 计算机科学学院3
17、3主流主流CPLD/FPGA开发工具开发工具l流行的CPLD/FPGA开发工具主要来自PLD生产商。例如:Xilinx公司的Foundation;Altera公司的Synplify Pro;Lattice公司的ISP Synario;此外还包括第三方公司提供的EDA软件。l这些工具都属于集成开发环境,集成了编译、仿真、测试、下载等工具。l下面简单介绍三个开发工具:MAX+PLUS II、Quartus II和Synplify Pro。2022-12-3曲阜师范大学 计算机科学学院34MAX+PLUS IIlMAX+PLUS II是Altera公司推出的的第三代PLD开发系统,具有开放界面,可与
18、其他工业标准的EDA工具相连接;提供与结构无关的设计环境,可以在多种硬件平台环境下运行;提供丰富的逻辑功能库供设计人员调用;支持各种HDL语言的设计输入,包括VHDL、Verilog和Altera公司自己的硬件描述语言AHDL。lMAX+PLUS II适合初学者使用。2022-12-3曲阜师范大学 计算机科学学院35Quartus IIlQuartus II是Altera公司的第四代PLD开发系统,主要用于设计6万100万门的大规模FPGA/CPLD,是第1个支持基于知识产权(IP)系统设计的软件;它是在MAX+PLUS II基础上升级产生的,基本操作与MAX+PLUS II有相似之处。软件运
19、行界面如下图所示。2022-12-3曲阜师范大学 计算机科学学院36Quartus II界面图界面图2022-12-3曲阜师范大学 计算机科学学院37Quartus II的特点的特点l使用Quartus II可完成从设计输入、逻辑综合、仿真到下载的整个设计过程,而且Quartus II也可以直接调用Synplify Pro、Leonardo Spectrum 以及ModelSim 等第三方EDA 工具来完成设计的逻辑综合和仿真。lQuartus II 支持多种设计输入方式。它与MATLAB 和DSP Builder 结合可以进行基于FPGA 的DSP 系统开发,方便且快捷;还可以与SOPC B
20、uilder 结合,实现SOPC 系统的开发。2022-12-3曲阜师范大学 计算机科学学院38Synplify ProlSynplify Pro或者Synplify是由位于美国加州Sunnyvale的Synplicity公司推出的专门用于可编程器件FPGA/CPLD 的逻辑综合工具,它支持Verilog HDL 和VHDL 高层次设计描述,在综合优化方面性能优异,应用广泛。lSynplify Pro或者Synplify 支持Verilog 13641995 标准和VHDL 10761993 标准,能以很高的效率将Verilog/VHDL 设计文件转换为针对选定器件的标准网表,并提供相应设计环
21、境的配置文件,在逻辑综合后还可以生成Verilog 和VHDL 仿真网表,以便对原设计进行功能仿真。2022-12-3曲阜师范大学 计算机科学学院39可编程逻辑器件设计流程可编程逻辑器件设计流程设计准备设计输入原理图波形图硬件描述语言设计处理优化、综合适配、分割布局、布线功能仿真(前仿真)时序仿真(后仿真)器件测试器件编程元件库2022-12-3曲阜师范大学 计算机科学学院402.5 系统级芯片系统级芯片l硅知识产权和知识产权核(IP核)l系统芯片lIP核标准化基础 lIP核形态与优选原则2022-12-3曲阜师范大学 计算机科学学院41知识产权与硅知识产权知识产权与硅知识产权l知识产权(IP
22、:Intellectual Property)包含版权、商标、专利权、集成电路布图设计和植物品种权等。l本课程讲解的知识产权主要涉及集成电路布图设计。通常称这一类知识产权为硅知识产权(Silicon Intellectual Property)。l下面对术语IP如果不特别说明,均指硅知识产权或者集成电路布图设计的知识产权。2022-12-3曲阜师范大学 计算机科学学院42IP历史溯源历史溯源lIP的最初出现大约在20世纪90年代初。为了降低成本,减少重复开发工作量,集成电路制造商将合格的经过验证的电路设计结果文件存储在所谓函数库的数据库中,供设计师在日后进行类似设计中再利用。目前,集成电路设计
23、行业中广泛使用了函数库,从而有效地提高了工作效率。l函数库中主要有三种类型的库文件,即逻辑门级库文件,寄存器传输级库文件和行为级库文件。2022-12-3曲阜师范大学 计算机科学学院43IC设计中的核与核库文件设计中的核与核库文件l当设计师进行系统级IC设计时,不再对行为级库文件的内部电路进行设计,往往直接把行为级库里的部件文件当作IC子模块加以调用。这些先前完成的IC设计部件作为整个IC电路一部分实现形式存在,具有固定的不可再分解的功能特性。于是,称之为核(Core),从而部件级库文件就称为核库。2022-12-3曲阜师范大学 计算机科学学院44知识产权核与处理器核知识产权核与处理器核l核库
24、文件是集成电路的布图设计,属于知识产权的范畴,于是核库中各种核文件以及它们的集合称为知识产权(Intellectual Property),简称IP;l又由于单个知识产权是不可再分解的,所以核文件也称为知识产权核或者IP核(IP Core:Intellectual Property Core)。特别地,人们把处理器的核库文件称为处理器核(Processor Core)。2022-12-3曲阜师范大学 计算机科学学院45IP核的五个基本特征:核的五个基本特征:l第三方使用;l按照复用原则设计;l可读性强;l完备的可测性;l端口定义标准化。2022-12-3曲阜师范大学 计算机科学学院46系统芯片
25、(系统芯片(SoC)l也称为片上系统lSoC,System on chip,或者 System on a chip。l基本定义是:以知识产权核为设计基础,在单个芯片上集成处理器、存储器、各种接口等部件,组成一个部分完整的计算机系统,可以完成特定的应用功能。l系统芯片是单功能集成电路芯片的跨越式发展。l目前,大多数32位的嵌入式处理器芯片都是SoC。2022-12-3曲阜师范大学 计算机科学学院47系统芯片的主要优点系统芯片的主要优点 l丰富的系统功能;l客户定制;l提高速度;l降低功耗;l减少体积。2022-12-3曲阜师范大学 计算机科学学院48系统芯片与系统芯片与IP核核l系统芯片逐渐成为
26、集成电路设计的主流发展趋势。l统计数据也说明了IP核的重要性,2005年全球80%的SoC都采用以IP核为主的方式进行设计。l现阶段IC设计能力和EDA工具能力远落后于SoC设计工艺的需要,两者间的差距日益加剧,成为制约SoC制造和发展的瓶颈。lIP(核)重用显得十分重要,它可以减少研发成本,缩短研发时间,加速SoC上市。2022-12-3曲阜师范大学 计算机科学学院49IP库(库(IP Repository)l基于IP核重用的SoC设计工程需要一整套完整的设计环境(Infrastructure)支持。其中一个关键部分就是开发一个庞大的可重用IP模块(或者IP核)库,即IP库(IP Repos
27、itory)。2022-12-3曲阜师范大学 计算机科学学院50IP核标准化基础核标准化基础l在制造SoC过程中必须做到高效地复用IP核。为了解决这个问题,需要建立统一的标准和规范。lIP设计标准化与IP使用标准化是IP复用的基础。2022-12-3曲阜师范大学 计算机科学学院51IP标准化的主要机构标准化的主要机构lVSIAl虚拟插座接口联盟,Virtual Socket Interface AlliancelOCP-IPl开放式内核协议国际同盟,Open Core Protocol International PartnershiplSPIRITl工具流内部IP封装集成重用结构,Struc
28、ture for Packaging,Integrating and Re-using IP within Tool-flowslIPCGl中国的集成电路IP标准工作组2022-12-3曲阜师范大学 计算机科学学院52IP核的三种形态核的三种形态l软核软核l硬核硬核l固核固核2022-12-3曲阜师范大学 计算机科学学院53IP核形态的优选原则核形态的优选原则l从可被重用频度、可向其它工艺移植可能性、重用灵活性等方面考虑,三种IP核的优选次序是:上策选软核、中策选固核、下策选硬核;l从高性能、规范化、有较短上市时间、自行开发工作量尽量少、有支付高价能力的角度考虑,优选次序是:硬核为上策、固核为
29、中策、软核为下策。2022-12-3曲阜师范大学 计算机科学学院542.6 IP核互连与片上总线核互连与片上总线l将SoC内部的多个IP核互连起来需要考虑的主要因素有通信结构、通信带宽、时延、数据吞吐率及功耗等。l以下简单地介绍三种IP核互连的通信拓扑结构2022-12-3曲阜师范大学 计算机科学学院55IP核单共享总线方式核单共享总线方式l其拓扑结构属于单总线结构,与局域网中一个网段的总线结构相类似。l单共享总线的IP核互连方案不够灵活,无法适应不同IP核的传输带宽需要,不易扩展。2022-12-3曲阜师范大学 计算机科学学院56点对点连接方式点对点连接方式l适用于两个IP核的主/从连接。l
30、例如,满足OCP(开放式内核协议)的IP核使用这种连接方式。l如果两个OCP的IP核需要点对点通信,则每一个IP核都必须有一对主/从接口。本方的主接口对应对方的从接口。点对点连接方式的缺点是互连线数量大,功耗较大。2022-12-3曲阜师范大学 计算机科学学院57多层次多层次/多总线互连方式多总线互连方式l不论是单共享总线还是多层次/多总线型共享总线,都可以称之为片上总线(OCB,On-chip Bus)。l目前,大多数SoC采用片上总线进行IP核互连。2022-12-3曲阜师范大学 计算机科学学院58片上总线分类片上总线分类l可细分为系统总线(System Bus)与外围总线(Periphe
31、ralBus)两种类型。l系统总线用来互连高性能IP模块,这些模块包括嵌入式CPU(或MCU)、DSP、主存控制器、DMA控制器等。它的特点是带宽要求高、实时响应速度快;l外围总线用来互连性能低、功耗低的设备,是为了满足功耗、便携性、可重用性等方面的特殊要求。系统总线与外围总线之间通过桥接器或者交换矩阵相连。2022-12-3曲阜师范大学 计算机科学学院59单共享总线结构以及它的进化单共享总线结构以及它的进化2022-12-3曲阜师范大学 计算机科学学院602.7 低功耗设计基本原理低功耗设计基本原理l低功耗设计是嵌入式系统设计的一大特点,涉及硬件和软件,是近几年来较热门的一个研究课题。其研究
32、的内容很多。l下面介绍低功耗设计的基本原理和知识2022-12-3曲阜师范大学 计算机科学学院612.7.1 硬件低功耗设计硬件低功耗设计 l目前嵌入式系统使用的集成电路以CMOS型芯片为主。lCMOS电路有两种主要功耗来源:动态功耗和静态功耗。2022-12-3曲阜师范大学 计算机科学学院62CMOS集成电路的总功耗计算集成电路的总功耗计算 lCMOS电路功耗P总有以下近似计算公式:lP总=P动态+P直流开关功耗+P静态公式1l公式1中的第1项和第2项是动态功耗,第3项是静态功耗。l参看下一页MOS反相管功耗分析图。l第1项(P动态)一般占总功耗的70%90%。l第2项(P直流开关功耗)一般
33、占总功耗的10%30%。l第3项(P静态)一般占不到1%的总功耗。2022-12-3曲阜师范大学 计算机科学学院63细化算式细化算式lP动态=aCL fVdd2公式2l其中:a为开关系数,即每个时钟周期中发生状态变化器件的个数,CL为负载电容,f为电路的工作频率,Vdd为电路的电源电压值。lP直流开关功耗=VddIst公式3l其中:Ist为短路电流值,P直流开关功耗。lP静态=VddIleakage公式4l其中:Ileakage为漏电流值。2022-12-3曲阜师范大学 计算机科学学院64CMOS反相器电路的功耗分析反相器电路的功耗分析 2022-12-3曲阜师范大学 计算机科学学院65动态电
34、源管理技术动态电源管理技术l因为系统各部分的工作负载不相同,系统在每个工作时刻的负载不相同,总会有一部分部件处于闲置状态。所以可以有选择地把闲置的系统部件置于低功耗状态。l等待模式和停止模式都属于低功耗模式。l动态电源管理举例:lS3C44B0X处理器的时钟和电源管理模块处理器的时钟和电源管理模块l参看三星公司参看三星公司S3C44B0X处理器数据手册处理器数据手册 lCharpter 5 CLOCK&POWER MANAGEMENT2022-12-3曲阜师范大学 计算机科学学院66等待模式等待模式lCPU停止工作,但系统时钟并不停止,单片机的外围I/O模块也不停止工作;系统功耗降低有限,只相
35、当于工作模式的50%70%。2022-12-3曲阜师范大学 计算机科学学院67停止模式停止模式l系统时钟停止,由外部事件中断重新启动时钟系统时钟,进而唤醒CPU继续工作,CPU消耗电流可降到微安级。2022-12-3曲阜师范大学 计算机科学学院68动态电压缩放技术动态电压缩放技术l电压调节子程序首先分析系统工作状态,然后决定最佳工作电压。2022-12-3曲阜师范大学 计算机科学学院692.7.2 软件低功耗设计软件低功耗设计l在嵌入式软件开发过程中也需要采取对应的措施。在编程方面注意以下几个要素:l编译优化技术l减少CPU的运算量l避免后台程序长时间无效运行l用“中断”代替“轮询”l硬件软件
36、化l采用快速算法2022-12-3曲阜师范大学 计算机科学学院70低功耗编译优化技术低功耗编译优化技术l由改进的编译器实现l优化编译算法,使得编译调试之后的代码在运行时,能够让各个部件始终工作在最低能耗状态,则对降低功耗非常有利。研究资料表明通过对应用程序的指令功能均衡优化和降低执行频率就有可能比优化前的代码节省50%的能量消耗。2022-12-3曲阜师范大学 计算机科学学院71尽量减少尽量减少CPU的运算量的运算量l以时间换空间,将一些运算结果预先算好,做成表格放在Flash中,用查表方法替换运行时计算,可以有效减少CPU运算工作量;l按照精度进行实时计算,达到误差允许范围就结束,避免超出需
37、要精度的过量计算;尽量使用短的数据类型,例如,尽量使用字符型的8位数据替换16位的整型数据,尽量使用分数运算而避免浮点数运算等。2022-12-3曲阜师范大学 计算机科学学院72避免后台程序长时间无效运行避免后台程序长时间无效运行l后台程序的执行往往是用户察觉不到的,因此一旦非必要的后台程序启动,它就会一直执行下去,这样就会消耗很大的电力,同时降低了CPU的执行能力。l程序员应当做到后台程序只在必要的情况下执行,并且任务完成后能够自行推出运行态。2022-12-3曲阜师范大学 计算机科学学院73用用“中断中断”代替代替“轮询轮询”l轮询方式输入输出会消耗大量CPU时间,因此也消耗了大量能量。因
38、此在嵌入式设计中应尽量避免使用轮询方式。使用中断方式,CPU可以什么不做,甚至可以进入等待模式或停止模式,直到中断事件到来为止。2022-12-3曲阜师范大学 计算机科学学院74硬件软件化硬件软件化l只要是硬件电路,就必定要消耗功率。在嵌入式系统总体设计中,遵循硬件软件化原则,尽量压缩硬件部件,用软件来替换用硬件实现的功能。例如在许多手持智能仪表中用到的信号处理电路、抗干扰电路、对数放大器电路、数值变换电路。2022-12-3曲阜师范大学 计算机科学学院75采用快速算法采用快速算法l选择精巧算法可以大大减少运行时间。例如,在数字信号处理中采用FFT算法和快速卷积算法,在分组密码计算中利用桶型移位器做快速移位,这些都可以节省大量的运算时间。另外,在精度允许情况下,应该尽量使用简单函数代替复杂函数作近似。2022-12-3曲阜师范大学 计算机科学学院76第第2讲重点讲重点l数字系统硬件抽象模型l可编程逻辑器件FPGA/CPLDl主流硬件描述语言l可编程逻辑器件lCPLD和FPGA的基本构成l知识产权与硅知识产权lIP核的五个基本特征l系统芯片与系统芯片的主要优点2022-12-3曲阜师范大学 计算机科学学院77第第2讲重点(续)讲重点(续)lIP核标准化基础l虚拟元件概念和OCP协议l三种IP核形态和它们的优选原则lIP核互连的三种通信拓扑结构l硬件低功耗设计原则l软件低功耗设计原则
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。