1、嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用vISE提供的提供的IPCore面向复杂设计的软核面向复杂设计的软核ISE版本的适用性版本的适用性XilinxFPGA芯片的适用性芯片的适用性v系统系统IPCore的生成的生成在在ISE的的Project中直接生成中直接生成ISE-Accessories-CoreGeneratorISE-Accessories-ArchitectureWizardIP参数化设计参数化设计嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用v方法方法1:定制:定制ISE中一个已有的中一个已
2、有的IPCore小写小写嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用v定制定制同步同步FIFOCore为例为例IP Core使用说明使用说明嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用v生成生成点击点击GenerateISE的的ModuleView窗口中出现所生成的窗口中出现所生成的IPCore嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用v例化例化生成生成IPCore后,工程所
3、在文件夹下产生下列文件后,工程所在文件夹下产生下列文件.xco是是IPCore配置文件配置文件例化的时候识别例化的时候识别.xco.edn是网表文件是网表文件.v和和.vhd是模块的封装源代码是模块的封装源代码嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用v方法方法2:CoreGenerator嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用v配置配置芯片配置芯片配置嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用v配置配置生成配置生成配置嵌入式系统工程系嵌入式系统工程系嵌
4、入式系统工程系嵌入式系统工程系IPCore的使用的使用v配置配置高级配置高级配置嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用v方法方法2:ArchitectureWizardIP复杂的复杂的IPCore生成,如生成,如DCM嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用v例化例化产生的关键文件产生的关键文件.ucf是约束文件是约束文件.xaw是二进制的是二进制的Core文件文件(例化
5、时和(例化时和.xco的使用类似)的使用类似).v是模块的封装源代码是模块的封装源代码.ngc二进制网表文件(根据综合选项不同而生成)二进制网表文件(根据综合选项不同而生成)嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用vIPCore端口声明端口声明ViewHDLFunctionalModel嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系IPCore的使用的使用vIPCore的说明的说明IPCore生成后,添加到工程中被认为是黑盒子,不会生成后,添加到工程中被认为是黑盒子,不会被重新综合;被重新综合;IPCore的可移植性与的可移植性
6、与ISE的版本和芯片类型有关;的版本和芯片类型有关;部分部分IPCore是付费使用的。是付费使用的。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系用户用户IPCore的生成的生成v如何将自己的代码封装成一个如何将自己的代码封装成一个IPCore?v可以提供给他人使用,但不想被篡改或者开源可以提供给他人使用,但不想被篡改或者开源v方法:方法:提供提供verilogwrapper文件(文件(.v文件),只提供端口描文件),只提供端口描述和参数;述和参数;提供提供.edn文件或者文件或者.ngc文件等同名的网表文件。文件等同名的网表文件。嵌入式系统工程系嵌入式系统工程系嵌入式系统工
7、程系嵌入式系统工程系用户约束文件(用户约束文件(UCF)vUCF是项目实现不可缺少的部分是项目实现不可缺少的部分vUCF生成方法生成方法1NewSouce-ImplementationConstraintsFile模块关联模块关联非常重要非常重要嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系用户约束文件(用户约束文件(UCF)vUCF生成方法生成方法2UserConstraints嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系用户约束文件(用户约束文件(UCF)vUCF主要三个组成部分主要三个组成部分引脚约束:引脚位置和类型配置;引脚约束:引脚位置和类型配置
8、;面积约束:模块的布局布线区域配置;面积约束:模块的布局布线区域配置;时序约束:时钟约束、关键路径约束等。时序约束:时钟约束、关键路径约束等。UCF语法:类似于一种脚本语言语法:类似于一种脚本语言NET|INST|PIN“Signal_name”Attribute图形工具:图形工具:PACE编辑器,约束编辑器编辑器,约束编辑器参见教材参见教材4.4节自行学习节自行学习嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系用户约束文件(用户约束文件(UCF)v引脚约束引脚约束嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系用户约束文件(用户约束文件(UCF)v引脚约束引
9、脚约束引脚的参数可以进一步配置引脚的参数可以进一步配置嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系用户约束文件(用户约束文件(UCF)v引脚约束引脚约束配置成功后,打开配置成功后,打开.ucf文件文件嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系用户约束文件(用户约束文件(UCF)v面积约束面积约束将将Logic的模块指定到芯片的某个区域编辑的模块指定到芯片的某个区域编辑一般不需要一般不需要嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系用户约束文件(用户约束文件(UCF)v时钟约束时钟约束全局约束全局约束必选,主要针对全局时钟必选,主要针
10、对全局时钟引脚时序约束引脚时序约束padtopad,clocktopad高级约束高级约束分组约束,高级时序约束分组约束,高级时序约束特定约束特定约束特定约束(较少使用)特定约束(较少使用)语法规则较为复杂语法规则较为复杂嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系用户约束文件(用户约束文件(UCF)v重新查看重新查看.ucf文件文件嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系用户约束文件(用户约束文件(UCF)v关于关于UCF文件的几点说明文件的几点说明UCF语法较为复杂,需要确切知道含义;
11、语法较为复杂,需要确切知道含义;图形界面的选项可以自动转换为图形界面的选项可以自动转换为UCF语句;语句;如果要在如果要在FPGA上实现,时钟约束、引脚约束必填;上实现,时钟约束、引脚约束必填;UCF通常关联顶层模块,综合选项中默认包含;通常关联顶层模块,综合选项中默认包含;UCF引脚配置要非常小心,严格遵照引脚配置要非常小心,严格遵照PCB图和芯片手图和芯片手册的要求,否则可能烧毁昂贵的册的要求,否则可能烧毁昂贵的FPGA芯片;芯片;某些特殊引脚约束或者复杂约束,只能通过某些特殊引脚约束或者复杂约束,只能通过UCF语句语句来生成;来生成;UCF编写不正确,无法进行综合以后的后续步骤。编写不正
12、确,无法进行综合以后的后续步骤。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系ISEimplementdesign配置配置vImplement在综合之后执行,需要有在综合之后执行,需要有.ucf文件文件v包括包括Translate、Map、Place&Routev属性卡可以集中修改,也可以分项修改属性卡可以集中修改,也可以分项修改v每个步骤都会生成分析报告每个步骤都会生成分析报告v详细属性配置参考教材详细属性配置参考教材4.3.3节节嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系ISEimplementdesign配置配置vTranslate属性属性通常使用
13、默认属性通常使用默认属性生成生成.ngd文件文件所包含的三个工具所包含的三个工具较少使用较少使用嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系ISEimplementdesign配置配置vTranslate报告报告嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系ISEimplementdesign配置配置vMap属性属性通常使用默认属性通常使用默认属性主要需要调整的属性:主要需要调整的属性:LUT输入输入面积与速度面积与速度IOB所包含的四个工具所包含的四个工具较少使用较少使用嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系ISEimpleme
14、ntdesign配置配置vMap报告(很长,关注以下几个部分)报告(很长,关注以下几个部分)嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系ISEimplementdesign配置配置vPlace&Route属性属性主要需要调整的属性:主要需要调整的属性:布线努力程度布线努力程度运行开销表运行开销表部分工具比较重要部分工具比较重要嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系ISEimplementdesign配置配置vPlace&Route报告(也很长)报告(也很长)嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系静态时序分析与布局布线后仿真
15、静态时序分析与布局布线后仿真v静态时序分析静态时序分析当布局布线效果不理想时使用当布局布线效果不理想时使用产生布局布线静态时序产生布局布线静态时序使用使用TimingAnalyzer进行分析进行分析嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系静态时序分析与布局布线后仿真静态时序分析与布局布线后仿真错误时序会被标红错误时序会被标红嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系静态时序分析与布局布线后仿真静态时序分析与布局布线后仿真三种后仿真三种后仿真生成文件生成文件GeneratePost-TranslateSimulationModelxxx_transl
16、ate.vGeneratePost-MapSimulationModelxxx_map.v,xxx_map.sdfGeneratePost-Place&RouteSimulationModel主要使用布局布线后仿真主要使用布局布线后仿真xxx_timsim.v,xxx_timsim.sdf嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系静态时序分析与布局布线后仿真静态时序分析与布局布线后仿真v布局布线后仿真方法布局布线后仿真方法新新 建建 一一 个个 目目 录录,将将 编编 写写 的的 仿仿 真真 测测 试试 文文 件件、xxx_timsim.v、xxx_timsim.sdf、
17、glbl.v文文件件复复制制到到此此目目录录下下;(注注意意:一一定定不不要要编编写写的的源源代代码码,glbl.v在在ISE根目录根目录/verilog/src下)下)如如果果使使用用了了宏宏定定义义文文件件(.v)、其其他他仿仿真真模模型型文文件件(.v)也添加进来;)也添加进来;打开打开ModelSim,新建一个,新建一个Project,添加上述文件;,添加上述文件;编译所有文件;编译所有文件;vsim-L XilinxCoreLib_ver-L unisims_ver-Lsimprims_ver-t1ps+maxdelayssimulate_moduleglbl嵌入式系统工程系嵌入式系
18、统工程系嵌入式系统工程系嵌入式系统工程系静态时序分析与布局布线后仿真静态时序分析与布局布线后仿真v将将uut(例化的源代码顶层)添加到波形中(例化的源代码顶层)添加到波形中嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系静态时序分析与布局布线后仿真静态时序分析与布局布线后仿真v后仿真也可以采用非命令行方法,请自行查阅相后仿真也可以采用非命令行方法,请自行查阅相关资料;关资料;v后仿真时间较长,与功能仿真可能相差几个数量后仿真时间较长,与功能仿真可能相差几个数量级的时间;级的时间;v如果源代码较为庞大,生成后仿真模型的过程也如果源代码较为庞大,生成后仿真模型的过程也会比较耗时。会
19、比较耗时。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系功耗分析功耗分析vXPower功耗分析功耗分析在仿真文件中某个在仿真文件中某个initial语句中需要增加语句中需要增加$dumpfile(design.VCD);$dumpvars(1,test_v.uut);运行运行GeneratePowerData运行运行AnalyzePower嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系功耗分析功耗分析v分析报告分析报告嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系功耗分析功耗分析vXPower使用(后续部分参考教材使用(后续部分参考教材4.
20、3.5节)节)嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系FPGA的配置的配置vFPGA配置模式配置模式主模式主模式PROM配置(最终产品)配置(最终产品)从模式从模式JTAG模式模式主机配置(调试)主机配置(调试)vJTAGJointTestActionGroup一种国际标准测试协议一种国际标准测试协议vJTAG边界扫描边界扫描TDI、TDO、TMS、TCKVCC、GND嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系FPGA的配置的配置vJTAG下载电缆下载电缆并口电缆并口电缆ParallelIII电路公开,可自行制作电路公开,可自行制作Parallel
21、IVUSB电缆电缆价格较为昂贵,速度和稳定性远优于并口电缆价格较为昂贵,速度和稳定性远优于并口电缆vJTAG配置电路配置电路参见教材参见教材5.3节自行学习节自行学习菊花链菊花链嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系FPGA的配置的配置v配置文件的生成配置文件的生成PC调试的配置选项调试的配置选项CCLK用于主模式用于主模式PROM配置,内部产生配置,内部产生JTAGCLOCK用于用于JTAG调试调试嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系FPGA的配置的配置v配置文件的生成配置文件的生成执行执行生成生成.bit文件文件嵌入式系统工程系嵌入式系
22、统工程系嵌入式系统工程系嵌入式系统工程系FPGA的配置的配置v启动启动iMPACT选择边界扫描选择边界扫描也可以取消也可以取消然后点击然后点击进行自动检测进行自动检测嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系FPGA的配置的配置v下载配置下载配置右键右键Program,选中生成的,选中生成的.bit文件文件下载成功后,提示下载成功后,提示“Success”嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系FPGA的配置的配置v采用采用PROM配置配置FPGA生成的生成的.bit文件需要转换成文件需要转换成.mcs文件文件下载到下载到PROM中,中,PROM自
23、动配置自动配置FPGA执行执行嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系FPGA的配置的配置v选择所使用选择所使用PROM芯片芯片嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系FPGA的配置的配置v选择选择.bit文件转换文件转换(注意:此时要用(注意:此时要用CCLK时钟生时钟生成成.bit)嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系FPGA的配置的配置vJTAG菊花链菊花链嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系FPGA的配置的配置v多片多片PROM配置配置嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系
24、嵌入式系统工程系FPGA的配置的配置vSystemACE配置配置可参考可参考PROM配置配置教材教材5.3.6节节嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SoC原理与设计基础原理与设计基础vSoC基本概念基本概念vSoC技术特点技术特点vSoC设计的关键技术设计的关键技术vSoC发展趋势发展趋势v基于基于FPGA的的SoC应用技术应用技术片上总线片上总线嵌入式嵌入式RISCCPU软件无线电软件无线电芯片级应用系统芯片级应用系统嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SoC基本概念基本概念vSoC(SystemonChip)片上系统片上系统狭狭义义
25、:信信息息系系统统核核心心的的芯芯片片集集成成,将将系系统统关关键键部部件件集集成在一块芯片上成在一块芯片上广义:微小型系统广义:微小型系统SoC在集成电路在集成电路(IC)向集成系统向集成系统(IS)转变大方向下产生转变大方向下产生1994年年Motorola的的FlexCore系统系统1995年年LSILogic公司为公司为Sony公司设计的公司设计的SoC嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SoC技术特点技术特点v半导体工艺技术的系统集成半导体工艺技术的系统集成v软件系统和硬件系统的集成软件系统和硬件系统的集成vSoC具具有有以以下下几几方方面面的的优优势势,
26、因因而而创创造造其其产产品品价价值与市场需求:值与市场需求:降低耗电量降低耗电量减少体积减少体积增加系统功能增加系统功能提高速度提高速度节省成本节省成本嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SoC设计的关键技术设计的关键技术v总线架构总线架构vIP核复用核复用v软硬件协同设计软硬件协同设计vSoC验证验证v可测性设计可测性设计v低功耗设计低功耗设计v超深亚微米电路实现超深亚微米电路实现v嵌入式软件移植与开发嵌入式软件移植与开发嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SoC发展趋势发展趋势vSoC芯片的规模一般远大于普通的芯片的规模一般远大于普通
27、的ASIC;vSoC仿仿真真与与验验证证最最复复杂杂、最最耗耗时时,先先进进的的设设计计与与仿真验证方法成为仿真验证方法成为SoC设计成功的关键;设计成功的关键;v除除了了那那些些无无法法集集成成的的外外部部电电路路或或机机械械部部分分以以外外,其他所有的系统电路全部集成在一起;其他所有的系统电路全部集成在一起;v高度集成化、固件化;高度集成化、固件化;v基于基于SoC开发平台,最大程度系统重用。开发平台,最大程度系统重用。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系基于基于FPGA的的SoC应用技术应用技术v系统功能集成是系统功能集成是SoC的核心技术的核心技术v固件集成
28、是固件集成是SoC的基础设计思想的基础设计思想v嵌入式系统是嵌入式系统是SoC的基本结构的基本结构vIP是是SoC的设计基础的设计基础嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系片上总线片上总线vIP核互连一般采用总线的方式,这种总线称为片核互连一般采用总线的方式,这种总线称为片上总线(上总线(On-ChipBus,OCB)ARM公司的公司的AMBA总线总线Altera公司公司Avalon总线总线IBM公司的公司的CoreConnect总线总线OpenCore组织的组织的Wishbone总线总线OpenCore组织的组织的OPC总线总线嵌入式系统工程系嵌入式系统工程系嵌入式
29、系统工程系嵌入式系统工程系片上总线片上总线vAMBA总线总线AdvancedMicrocontrollerBusArchitectureARM公司设计的用于高性能嵌入式系统的总线标准,公司设计的用于高性能嵌入式系统的总线标准,独立于处理器和制造工艺技术独立于处理器和制造工艺技术嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系片上总线片上总线vAMBA总线总线AHB(AdvancedHighPerformanceBus)ASB(AdvancedSystemBus)APB(AdvancedPerpheralBus)嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系片上
30、总线片上总线vAVALON总线总线Altera在推出业内第一个软核在推出业内第一个软核Nios时开发的片上总线时开发的片上总线一种简单的总线协议,规定了主部件和从部件之间进一种简单的总线协议,规定了主部件和从部件之间进行连接的端口和通信的时序行连接的端口和通信的时序嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系片上总线片上总线vCoreConnect总线总线IBM公公司司设设计计的的一一种种SoC总总线线协协议议,能能够够使使处处理理器器、内内存存控控制制器器和和外外设设在在基基于于标标准准产产品品平平台台设设计计中中的的集集成成和和复用更加灵活,从而提高系统性能。复用更加灵
31、活,从而提高系统性能。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系片上总线片上总线vCoreConnect总线总线处处理理器器局局部部总总线线PLB(ProeessorLocalBus):高高速速的的CPU核核、高高速速存存储储器器控控制制器器、仲仲裁裁器器、高高速速的的DMA控控制器等高性能、宽带宽的设备都连接在制器等高性能、宽带宽的设备都连接在PLB上。上。片片内内外外设设总总线线OPB(On-ChipPeripheralBus):低低性性能的设备都连接在能的设备都连接在OPB总线上总线上。器器件件控控制制寄寄存存器器总总线线DCR(DeviceControlRegis
32、ter):配配置置PLB和和OPB主主从从设设备备中中的的状状态态寄寄存存器器和和控控制制寄存器寄存器。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系片上总线片上总线vWishbone总线总线Silicore公公司司提提出出,现现在在已已被被移移交交给给OpenCores组组织织维护维护结构十分简单,它仅仅定义了一条高速总线结构十分简单,它仅仅定义了一条高速总线用用户户可可以以按按需需要要自自定定义义Wishbone标标准准,如如字字节节对对齐齐方方式、标志位式、标志位等等嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系片上总线片上总线vWishbone总线互
33、连方式总线互连方式点到点(点到点(point-to-point):):用于两用于两IP核直接互连;核直接互连;数数据据流流(dataflow):用用于于多多个个串串行行IP核核之之间间的的数数据据并发传输;并发传输;共享总线(共享总线(sharedbus):):多个多个IP核共享一条总线;核共享一条总线;交交叉叉开开关关(crossbarswitch):同同时时连连接接多多个个主主从从部部件,提高系统吞吐量。件,提高系统吞吐量。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系片上总线片上总线vWishbone总线总线WISHBONE System-on-Chip(SoC)Int
34、erconnection Architecture for Portable IP Cores嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系片上总线片上总线v典型主从设备连接典型主从设备连接嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系v单个读周期单个读周期v单个写周期单个写周期嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系片上总线片上总线vBIGENDIAN嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系片上总线片上总线vLITTLEENDIAN嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式嵌入式R
35、ISCCPUvAlteraNois系列系列vXilinxPowerPC(硬核)(硬核)PicoBlaze(8位微处理器软核)位微处理器软核)MicroBlaze(32位位微微处处理理器器软软核核,支支持持CoreConnect总线的标准外设集合)总线的标准外设集合)基基于于EDK开开发发:EDK中中提提供供的的IP核核均均有有相相应应的的设设备备驱驱动动和和应应用用接接口口,只只需需利利用用相相应应函函数数库库,就就可可以以编编写写自自己己的的应应用用软软件件和和算算法法程程序序;对对于于用用户户自自己己开开发发的的IP核核,需要自己编写相应的驱动和接口函数。需要自己编写相应的驱动和接口函数。
36、嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式嵌入式RISCCPUvGaislerLeon系列(系列(SparcV8架构,开源,完整的工具链)架构,开源,完整的工具链)vSunOpenSparc(SparcV9架构,开源)架构,开源)vOpencoresOpenRiscZPU(最小的(最小的32位位RISC软核)软核)几十种几十种CPU软核软核嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系软件无线电软件无线电v软件无线电(软件无线电(SoftwareRadio)在在开开放放公公共共硬硬件件平平台台上上利利用用可可编编程程的的软软件件方方法法实实现现所所
37、需要的无线电系统。需要的无线电系统。基基本本思思想想:将将宽宽带带模模数数变变换换器器(A/D)及及数数模模变变换换器器(D/A)尽尽可可能能地地靠靠近近射射频频天天线线(模模拟拟信信号号的的数数字字化化过过程程尽尽可可能地接近天线能地接近天线)通通过过软软件件编编程程来来完完成成传传送送信信息息抽抽样样、量量化化、编编码码/解解码码、运算处理和变换。运算处理和变换。通通过过软软件件编编程程实实现现不不同同的的信信道道调调制制方方式式的的选选择择,如如调调幅幅、调频、单边带、数据、跳频和扩频。调频、单边带、数据、跳频和扩频。通通过过软软件件编编程程实实现现不不同同的的保保密密结结构构、网网络络
38、协协议议和和控控制制终端功能终端功能。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系软件无线电软件无线电v软件无线电软件无线电AD-DSP-DAAD-DSP+FPGA-DAAD-FPGA-DA编程最终将向编程最终将向FPGA逻辑设计过渡,以嵌入式逻辑设计过渡,以嵌入式SoC系统系统为核心。为核心。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系芯片级应用系统芯片级应用系统vFPGA的两个走向的两个走向高度并行专用电路设计高度并行专用电路设计追求高速度追求高速度高度的电路优化高度的电路优化灵活的灵活的SoC系统设计系统设计追求灵活性、高性价比追求灵活性、高性价比
39、嵌入式嵌入式CPU为核心的软硬件协同设计为核心的软硬件协同设计SoC验证验证嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系芯片级应用系统芯片级应用系统v通信(仍占据主流)通信(仍占据主流)卫星通信、网络交换卫星通信、网络交换v工业控制(新兴)工业控制(新兴)取代传统取代传统MCUv汽车电子汽车电子定位、识别、控制定位、识别、控制v生物医疗生物医疗医疗信息采集、大规模生物计算医疗信息采集、大规模生物计算嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系第七章第七章基于基于SystemGenerator的的DSP系统开发技术系统开发技术vSystemGenerato
40、r简介简介vSystemGenerator安装安装vSystemGenerator基础基础vSimulink简介简介vAccelDSP简介简介v基于基于SystemGenerator的的DSP系统设计系统设计v基于基于SystemGenerator的硬件协仿真的硬件协仿真嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SystemGenerator简介简介vFPGA是理想的高性能数字信号处理器件是理想的高性能数字信号处理器件包包含含了了逻逻辑辑资资源源,还还有有多多路路复复用用器器、存存储储器器、硬硬核核乘乘加加单单元元以以及及内内嵌嵌的的处处理理器器等等设设备备,还还具具备备
41、高高度度并并行行计计算的能力;算的能力;特别适合于完成数字滤波、快速傅立叶变换等。特别适合于完成数字滤波、快速傅立叶变换等。vFPGA并并未未在在数数字字信信号号处处理理领领域域获获得得广广泛泛应应用用(?)(?)大大部部分分DSP设设计计者者通通常常对对C语语言言或或MATBLAB工工具具很很熟熟悉悉,不了解硬件描述语言,不了解硬件描述语言VHDL和和VerilogHDL;部部分分DSP工工程程师师认认为为对对HDL语语言言在在语语句句可可综综合合方方面面的的要求限制了其编写算法的思路。要求限制了其编写算法的思路。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SystemG
42、enerator简介简介vSystemGeneratorforDSPXilinx简化简化FPGA数字处理系统的集成开发工具;数字处理系统的集成开发工具;和和Simulink(MathWorks公公司司产产品品)实实现现无无缝缝链链接接,利利用用Simulink建建模模和和仿仿真真环环境境来来实实现现FPGA设设计计,无无需需了解和使用了解和使用RTL级硬件语言;级硬件语言;Xilinx公公司司XtremeDSP解解决决方方案案的的关关键键组组成成,集集成成了了先先进进的的FPGA设设计计工工具具以以及及IP核核,支支持持Xilinx公公司司全全系系列的列的FPGA芯片;芯片;可作为可作为MAT
43、LAB软件中的一个硬件设计工具包。软件中的一个硬件设计工具包。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SystemGenerator简介简介嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SystemGenerator简介简介vSystemGenerator的主要特征的主要特征可在可在MATLAB/Simulink环境下对算法以及系统建模,环境下对算法以及系统建模,并生成相应的工程;并生成相应的工程;再调用再调用ISE相应的组件进行仿真、综合、实现,并完成相应的组件进行仿真、综合、实现,并完成芯片的配置。芯片的配置。嵌入式系统工程系嵌入式系统工程系嵌入式
44、系统工程系嵌入式系统工程系SystemGenerator简介简介vSystemGenerator的主要特征的主要特征丰富的丰富的DSP模块模块信号处理(如信号处理(如FIR滤波器、滤波器、FFT)纠错(如纠错(如Viterbi解码器、解码器、Reed-Solomon编码器编码器/解码器)解码器)算法算法存储器(如存储器(如FIFO、RAM、ROM)数字逻辑功能的数字逻辑功能的Xilinx模块集模块集使用户导入使用户导入.m函数及函数及HDL模块模块Simulink设计的设计的VHDL或或Verilog的自动代码生成的自动代码生成硬件协仿真硬件协仿真FPGA在在环环路路(FPGA-in-the-
45、loop),加加速速用用户户的的硬硬件件验验证证工工作并加速其在作并加速其在Simulink与与MATLAB中的仿真中的仿真嵌入式系统的硬件嵌入式系统的硬件/软件协设计软件协设计直直接接加加载载Xilinx公公司司的的MicroBlaze32位位RISC处处理理器器,甚甚至至构构建和调试建和调试DSP协处理器协处理器嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SystemGenerator安装安装v软件环境软件环境(以(以SystemGenerator9.1为例)为例)MATLABv7.3/Simulinkv6.5(R2006b)或或MATLABv7.4/Simulinkv
46、6.6(R2007a)。MATLAB软软件件的的安安装路径上不能出现空格。装路径上不能出现空格。ISE版版本本为为9.1.01i或或者者更更高高版版本本,ISESimulator的的版版本本为为完完全全版版;SystemGenerator软软件件版版本本必必须须和和ISE版本一致。版本一致。IP核核库库的的版版本本为为ISEIP9.1iUpdate1或或者者更更高高版版本本。系统环境变量系统环境变量$XILINX必须设置为必须设置为ISE的安装目录。的安装目录。综合工具综合工具SynplifyPro的版本为的版本为v8.6.2或或v8.8.0.4;仿仿真真工工具具ModelSim的的版版本本至
47、至少少为为PE或或SEv6.1f以以及及更更高版本。高版本。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SystemGenerator安装安装v与与MATLAB关联关联嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SystemGenerator基础基础v典型的典型的SystemGenerator设计流程设计流程浮点算法开发浮点算法开发定点算法实现定点算法实现硬件系统设计硬件系统设计代码优化代码优化嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SystemGenerator基础基础v浮点运算开发浮点运算开发利利用用MATLAB软软件件及及其
48、其提提供供的的工工具具包包快快速速地地完完成成浮浮点点算法的开发、验证以及性能评估;算法的开发、验证以及性能评估;借助于借助于Simulink可快速完成原型设计和模型分析。可快速完成原型设计和模型分析。v定点算法实现定点算法实现将将MATLAB浮浮点点算算法法通通过过AccelDSP在在Xilinx器器件件上上实实现定点逻辑现定点逻辑;AccelDSP直直接接将将浮浮点点MATLAB算算法法的的M-文文件件自自动动生生成成可可综综合合的的RTL模模型型,自自动动进进行行浮浮点点-定定点点转转换换,生生成成可可综综合合的的VHDL或或VerilogHDL设设计计,并并创创建建用用于于验验证证的测
49、试平台。的测试平台。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SystemGenerator基础基础v硬件系统设计与实现硬件系统设计与实现定定义义使使用用Xilinx IP的的详详细细硬硬件件架架构构,采采用用SystemGeneratorforDSP划划分分协协处处理理器器和和可可编编程程器器件件之之间间的设计的设计;会生成下列文件:会生成下列文件:设计所对应的设计所对应的HDL程序代码;程序代码;时钟处理模块,包括系统时钟处理操作以及生成设计中时钟处理模块,包括系统时钟处理操作以及生成设计中所需的不同频率的时钟信号;所需的不同频率的时钟信号;用于测试设计的用于测试设计
50、的HDL测试代码,可直接将其仿真结果和测试代码,可直接将其仿真结果和Simulink输出比较;输出比较;工程文件以及综合、实现过程所产生的各种脚本文件。工程文件以及综合、实现过程所产生的各种脚本文件。嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系嵌入式系统工程系SystemGenerator基础基础v代码优化代码优化利用利用ISERTL设计环境生成优化的设计环境生成优化的FPGA设计;设计;不仅要熟悉算法的架构、瓶颈,还需精通不仅要熟悉算法的架构、瓶颈,还需精通RTL设计;设计;属于高级应用,直接对属于高级应用,直接对RTL进行修改和优化。进行修改和优化。嵌入式系统工程系嵌入式系统工程系嵌入