1、基于基于SOPC的嵌入式系统的嵌入式系统设计概述设计概述张新喜张新喜二二0000九年七月九年七月.主 要 内 容一、嵌入式系统的基本概念二、SOC及SOPC定义三、SOPC技术特征四、SOPC应用实例.基本概念:基本概念: 1.1.嵌入式系统嵌入式系统 ( Embedded System ) 嵌入式系统是以应用为中心,以计算机技术为基础嵌入式系统是以应用为中心,以计算机技术为基础并且软硬件可裁剪(可编程、可重构),适用于应用系并且软硬件可裁剪(可编程、可重构),适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。用计算机系统
2、。 “嵌入性嵌入性”、“专用性专用性”与与“计算机系统计算机系统”是嵌入是嵌入式系统式系统的三个基本要素:的三个基本要素: 所谓所谓“嵌入性嵌入性”是指:由于是嵌入到对象系统中,必须满足是指:由于是嵌入到对象系统中,必须满足对对象系统的环境需求,如物理环境(小型)、电气象系统的环境需求,如物理环境(小型)、电气/气氛环境(可气氛环境(可靠)、成本(价廉)等要求。靠)、成本(价廉)等要求。 一、嵌入式系统的基本概念一、嵌入式系统的基本概念. 所谓所谓“专用性专用性”是指:对软、硬件的可裁剪性;是指:对软、硬件的可裁剪性;满足对象要求的最小软、硬件灵活性的配置。满足对象要求的最小软、硬件灵活性的配
3、置。 所谓所谓“计算机系统计算机系统”是指:嵌入式系统必须是能是指:嵌入式系统必须是能满足对象系统控制要求的计算机系统。与上两个特点满足对象系统控制要求的计算机系统。与上两个特点相呼应,这样的计算机必须配置有与对象系统相适应相呼应,这样的计算机必须配置有与对象系统相适应的硬件电路。的硬件电路。一、嵌入式系统的基本概念一、嵌入式系统的基本概念.早期由分立器件构成嵌入式系统结构早期由分立器件构成嵌入式系统结构 使用各种独立的集成电路块(如处理器、使用各种独立的集成电路块(如处理器、RAM、ROM、译译码逻辑、接口芯片、专用芯片等),通过印刷电路板上的走线相码逻辑、接口芯片、专用芯片等),通过印刷电
4、路板上的走线相互连接,构成一个系统。下面是一个典型的嵌入式系统构成互连接,构成一个系统。下面是一个典型的嵌入式系统构成: CPUFLASHRAMUARTGPIOFPGACODECDMA LCDCo ProcessorPCB. 这种早期嵌入式系统的缺点: 1、系统体积大,不利于集成;、系统体积大,不利于集成; 2、分立器件功耗大,不利于手持及移动应用;、分立器件功耗大,不利于手持及移动应用; 3、PCB布线存在寄生电容、电感,影响信号传输;布线存在寄生电容、电感,影响信号传输; 4、PCB板面积大易受电磁干扰,影响系统的稳定性。板面积大易受电磁干扰,影响系统的稳定性。 随着集成电路技术的进一步发
5、展,系统设计正向着随着集成电路技术的进一步发展,系统设计正向着系统级芯片系统级芯片(system-on-a-chip,SOC)的方向发展。的方向发展。一、嵌入式系统的基本概念一、嵌入式系统的基本概念. 2. 片上系统片上系统 ( SOCSystem on a Chip ) SOC的定义: 它是电子信息集成系统它是电子信息集成系统 IS(Integrated System)发展趋势下的必然产物。它是将一个完整产品的各功发展趋势下的必然产物。它是将一个完整产品的各功能集成在一个芯片中,可以包括有能集成在一个芯片中,可以包括有CPU、存储器、硬存储器、硬件加速单元(件加速单元(DSP、浮点协处理器等
6、)、通用浮点协处理器等)、通用I/O(GPIO)、)、UART接口和模数混合电路(放接口和模数混合电路(放大器、比较器、大器、比较器、A/D、D/A、射频电路、锁相环等),射频电路、锁相环等),甚至延伸到传感器、微机电和微光电单元。甚至延伸到传感器、微机电和微光电单元。 (如果把CPU看成是大脑,则SoC就是包括大脑、心脏、眼睛和手的系统。)二、二、SOC及及SOPC定义定义.由由SOC构成嵌入式系统设计构成嵌入式系统设计:CPUFlashRamUART Co ProcessorCodecDMALCDIP集成集成CPUFlashRamUART Co ProcessorCodecDMALCDAS
7、ICSOCPCB SoC初衷很好,但现实中却缺乏好的解决方案。由于是基于初衷很好,但现实中却缺乏好的解决方案。由于是基于ASIC实现实现SoC系统设计周期长、费用高昂、成功率不高而且产系统设计周期长、费用高昂、成功率不高而且产品不能修改显得系统的灵活性差,往往使得学术科研机构、中品不能修改显得系统的灵活性差,往往使得学术科研机构、中小企业难以承受。但是小企业难以承受。但是SoC以系统为中心、基于以系统为中心、基于IPIP核的多层次、核的多层次、高度复用,可实现软硬件的无缝结合,极高的综合性高度复用,可实现软硬件的无缝结合,极高的综合性。.CPUFlashRamUART Co Processor
8、CodecDMA Con.LCD Con.PCBCPUFlashRamUART Co ProcessorCodecDMA Con.LCD Con.FPGASOPC IP集成集成 此方案适合于系统的预研初期,投资小、风险小,可以快此方案适合于系统的预研初期,投资小、风险小,可以快速构建原型系统,加速产品上市,提高市场获益。速构建原型系统,加速产品上市,提高市场获益。二、二、SOC及及SOPC定义定义 FPGA.3.片上可编程系统定义:片上可编程系统定义: ( (SoPCSystem on a Programmable Chip)SoPCSystem on a Programmable Chip)
9、 SoPC SoPC 是一种灵活、高效的是一种灵活、高效的SoCSoC解决方案。它解决方案。它将处理器、存储器、将处理器、存储器、I/OI/O口、口、DSPDSP、各种外设等系、各种外设等系统需要的功能模块集成到一个统需要的功能模块集成到一个FPGAFPGA器件上,构成器件上,构成一个可编程的片上系统。它是一个可编程的片上系统。它是PLDPLD与与ASICASIC技术融技术融合的结果。合的结果。 二、二、SOC及及SOPC定义定义.NiosCPUAltera FPGASystem-on-a-Programmable-Chip Solution.System-on-a-Programmable-
10、Chip Solution.Altera SOPCCustomLogicSDRAMAvalon Switch FabricJTAGHost PC二、二、SOC及及SOPC定义定义协处理器协处理器硬件逻辑硬件逻辑.SOPC的双重含义:可编程片上系统(可编程片上系统(SOPC)是一种特是一种特殊的嵌入式微处理器系统殊的嵌入式微处理器系统首先,它是片上系统(首先,它是片上系统(SOC),),即由单个芯即由单个芯片完成整个系统的主要逻辑功能;片完成整个系统的主要逻辑功能;其次,它是可编程系统,具有灵活的设计方其次,它是可编程系统,具有灵活的设计方式,可裁减、可扩充、可升级,并具备软硬式,可裁减、可扩充
11、、可升级,并具备软硬件在系统可编程的功能。件在系统可编程的功能。 二、二、SOC及及SOPC定义定义这种灵活的设计方式正在成为一种发展趋势!这种灵活的设计方式正在成为一种发展趋势!.SOPC技术方案提供商:技术方案提供商: AlteraXilinxLatticeAtmelMAXPLUS NIOS IDE支持硬核支持硬核 ARM922T 支持软核支持软核 Nios FoundationISE Platform Studio硬核硬核PowerPC405软核软核 MicroBlazeISP(InSystem Programmability)LatticeMico32 主要针对中小规模的主要针对中小规
12、模的LPD设计设计FPSLICCoreMP7 (ARM7) Altera于2000年最早提出SOPC解决方案,其软核CPU NIOS应用最为广泛;二、二、SOC及及SOPC定义定义Quartus.1.SOPC 设计的灵活性与优势提高系统集成度,提高了可靠性,减少了面积,降低了功耗;自定义指令,方便加速特定算法设计;自定义相应总线接口的IP Core,自定义功能及寄存器,提高应用的针对性;硬件可重配置,降低了硬件设计风险;灵活应用DSP Builder/C_H等软件实现硬件加速设计;三、三、SOPC技术特征技术特征.2.SOPC技术的不足:软核CPU系统频率相对较低;某些IP Core需付费使用
13、;开发资源相对较少;硬件设计难度相对较大;三、三、SOPC技术特征技术特征.3.SOPC技术基础软硬件协同设计技术;微处理器系统结构设计;IP Core 设计技术;HDL硬件逻辑设计技术;嵌入式系统软件技术 嵌入式操作系统、GUI、文件系统三、三、SOPC技术特征技术特征.四、四、SOPC应用实例应用实例电子海报机控制卡电子海报机控制卡主要功能:1、驱动双基色LED屏显示;2、从U盘读取GIF动画文件进行显示;3、具备万年历功能;.四、四、SOPC应用实例应用实例LED屏异步控制卡屏异步控制卡主要功能:1、驱动双基色LED大屏幕显示;2、滚动显示广告、图表等信息;3、通过485总线远程传递数据
14、;.四、四、SOPC应用实例应用实例智能显控终端智能显控终端.四、四、SOPC应用实例应用实例音频信号分析仪音频信号分析仪.Altera Value Proposition:High Performance for Hardware Acceleration of Transport Control ProtocolsNios II Provides Greater Flexibility and Customization than Off-the-Shelf ProcessorsIndustry:Wireline CommunicationsNetwork Acceleration Pla
15、tform网络加速器Application:四、四、SOPC应用实例应用实例国外商业应用国外商业应用.Altera Products Chosen:Industry:BroadcastProfessional Audio Mixing ConsoleApplication:专业音频处理系统Altera Value Proposition:Nios II Processor Replaced Existing Processors for Lower Cost, Higher PerformanceDevice Integration.夜视摄像头Altera Products Chosen:Al
16、tera Value Proposition:Lower Cost Solution than DSP ProcessorHigh Integration, Small Form FactorLow PowerIndustry:IndustrialNight Vision Camera Application:.Altera Products Chosen:Altera Value Proposition:Nios Processor + Low Cost Cyclone FPGA = Perfect Microprocessor SolutionFPGA Flexibility Enable
17、s Acceleration via Custom PeripheralsIndustry:IndustrialWireless Energy Consumption MeterApplication:无线抄表系统.v3.基于Altera FPGA的SOPC设计流程及设计工具.3. 可编程器件设计环境可编程器件设计环境 可编程器件设计环境是开发可编程器件设计环境是开发 SoPCSoPC 的关键,只有通过软件的综的关键,只有通过软件的综合、合、分析、剪裁才能重构所需要的集成系统。另外目前的开发环境分析、剪裁才能重构所需要的集成系统。另外目前的开发环境都已集成了在线仿真和在线测试的模式,而使得利用
18、软件编程手段都已集成了在线仿真和在线测试的模式,而使得利用软件编程手段就能完成对就能完成对SoPCSoPC的设计。因此,合理的选择一个功能强大、界面完的设计。因此,合理的选择一个功能强大、界面完整、输入方便的可编程、可重构的整、输入方便的可编程、可重构的SoPCSoPC设计环境是走向成功的第一设计环境是走向成功的第一步。步。AlteraXilinxLatticeAtmelMAXPLUS Quartus支持硬核支持硬核 ARM922T 支持软核支持软核 Nios FoundationISE Platform Studio硬核硬核PowerPC405软核软核 MicroBlazeISP(InSys
19、tem Programmability)IspLever主要针对中小规模的主要针对中小规模的LPD设计设计FPSLICAT94KAT94S.SOPC设计工具1.Quartus II Quartus II是近年来由是近年来由Altera公司的推出的一套用于公司的推出的一套用于FPGA的集成开发环境。完成系统的输入、综合、布局、仿的集成开发环境。完成系统的输入、综合、布局、仿真、编程等。真、编程等。2. SOPC Builder SOPC Builde:为设计者提供了一个强大的可以快速开发为设计者提供了一个强大的可以快速开发设计及验证的设计及验证的SOPC系统设计平台,用以搭建基于总线的系系统设计
20、平台,用以搭建基于总线的系统。它包含了一系列的模块,例如统。它包含了一系列的模块,例如Nios II处理器、存储器、处理器、存储器、总线、总线、DSP等等IP核,为了将微处理器核、外围设备、存储器核,为了将微处理器核、外围设备、存储器和其它和其它IP核相连接起来,核相连接起来,SOPC Builde能够自动生成片上能够自动生成片上Avalon总线和总线了仲裁器等所需的逻辑。总线和总线了仲裁器等所需的逻辑。 .SOPC设计工具3.NIOS IDE NIOS IDE(NIOS Integrated Develop Environment),), 是是Altera公司提供的专门开发公司提供的专门开发
21、SOPC软件软件的集成开发环境,它提供了一系列的管理工具,能完成对软的集成开发环境,它提供了一系列的管理工具,能完成对软件项目的管理,并能够完成对源代码进行编辑、编译、连接、件项目的管理,并能够完成对源代码进行编辑、编译、连接、调试、下载等功能。同时,调试、下载等功能。同时,NIOS IDE还集成了许多软件组还集成了许多软件组件,比如件,比如RTOS、LWIP、FS等软件组件,并提供了图形化等软件组件,并提供了图形化的参数编辑方式。基于这个平台可以方便地进行应用的参数编辑方式。基于这个平台可以方便地进行应用SOPC应用软件的设计应用软件的设计。 . SOPC SOPC由于硬件和软件都必须自己设
22、计和定制,它由于硬件和软件都必须自己设计和定制,它与传统的嵌入式系统设计流程不同;在传统的嵌入式与传统的嵌入式系统设计流程不同;在传统的嵌入式系统开发中,其主控芯片一般是专用的集成电路,其系统开发中,其主控芯片一般是专用的集成电路,其结构是固定的,比如结构是固定的,比如ARMARM系列的系列的45104510、44B0X44B0X、24102410等等等,这种控制器的外设已经设计好,而且地址都已经等,这种控制器的外设已经设计好,而且地址都已经固定,设计人员只要关心固定,设计人员只要关心PCBPCB设计和软件开发。对于设计和软件开发。对于SOPCSOPC的开发,设计人员必须同时关注片内硬件逻辑的
23、的开发,设计人员必须同时关注片内硬件逻辑的设计和应用软件的设计。设计和应用软件的设计。 SOPC设计流程.自定义外设、指令定义Nios系统模块生成Nios系统模块锁定引脚、硬件编译、仿真开发自定义IP驱动程序、定义HALOS移植编写应用程序编译连接调试 生成生成 System.h硬 件 下 载到SOPC板软件下载到SOPC板设计规则、软硬件划分硬件开发硬件开发软件开发软件开发软硬件软硬件协同验协同验证证SOPC系统实现NIOS IDE SOPC Builder Quartus II .Thank you!.CPUFlashRamUART Co ProcessorCodecDMA Con.LCD
24、 Con.FPGA IP集成集成 传统需要高速数据处理的场合,一般采用传统需要高速数据处理的场合,一般采用MCU+FPGAMCU+FPGA的的方式,应用方式,应用SOPCSOPC技术可在单片技术可在单片FPGAFPGA内完成。内完成。PCB MCU FPGA + DSP三、三、SOPC技术特征技术特征.用户自定义指令Custom Instructions256 User-Defined InstructionsExample: CRC Algorithm (64 Kbytes)05,000,00010,000,00015,000,00020,000,00025,000,000Clock CyclesSoftware OnlyCustomInstruction27 TimesFaster.用户自定义外设Nios IICPUAvalon Interfaceto UserLogicNios II SystemModuleExternal UserPeripheralI/OSPIUARTUSBCANPWMVGAPS/2协处理器协处理器硬件逻辑硬件逻辑自定义Avalon总线接口外设.
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。