




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
IPCore的使用ISE提供的IPCore面向复杂设计的软核ISE版本的适用性XilinxFPGA芯片的适用性系统IPCore的生成在ISE的Project中直接生成ISE->Accessories->CoreGeneratorISE->Accessories->ArchitectureWizardIP参数化设计IPCore的使用方法1:定制ISE中一个已有的IPCore小写IPCore的使用IPCore的使用定制同步FIFO Core为例IPCore使用说明IPCore的使用生成点击GenerateISE的ModuleView窗口中出现所生成的IPCoreIPCore的使用例化生成IPCore后,工程所在文件夹下产生下列文件.xco是IPCore配置文件 例化的时候识别.xco.edn是网表文件.v和.vhd是模块的封装源代码IPCore的使用方法2:CoreGeneratorIPCore的使用配置芯片配置IPCore的使用配置生成配置IPCore的使用配置高级配置IPCore的使用方法2:ArchitectureWizardIP复杂的IPCore生成,如DCMIPCore的使用例化产生的关键文件.ucf是约束文件.xaw是二进制的Core文件 (例化时和.xco的使用类似).v是模块的封装源代码.ngc
二进制网表文件(根据综合选项不同而生成)IPCore的使用IPCore端口声明ViewHDLFunctionalModelIPCore的使用IPCore的说明IPCore生成后,添加到工程中被认为是黑盒子,不会被重新综合;IPCore的可移植性与ISE的版本和芯片类型有关;部分IPCore是付费使用的。用户IPCore的生成如何将自己的代码封装成一个IPCore?可以提供给他人使用,但不想被篡改或者开源方法:提供verilogwrapper文件(.v文件),只提供端口描述和参数;提供.edn文件或者.ngc文件等同名的网表文件。用户约束文件(UCF)UCF是项目实现不可缺少的部分UCF生成方法1NewSouce->ImplementationConstraintsFile模块关联非常重要用户约束文件(UCF)UCF生成方法2UserConstraints用户约束文件(UCF)UCF主要三个组成部分引脚约束:引脚位置和类型配置;面积约束:模块的布局布线区域配置;时序约束:时钟约束、关键路径约束等。UCF语法:类似于一种脚本语言
{NET|INST|PIN}“Signal_name”Attribute图形工具:PACE编辑器,约束编辑器参见教材4.4节自行学习用户约束文件(UCF)引脚约束用户约束文件(UCF)引脚约束引脚的参数可以进一步配置用户约束文件(UCF)引脚约束配置成功后,打开.ucf文件用户约束文件(UCF)面积约束将Logic的模块指定到芯片的某个区域编辑一般不需要用户约束文件(UCF)时钟约束全局约束 必选,主要针对全局时钟引脚时序约束 padtopad,clocktopad高级约束 分组约束,高级时序约束特定约束 特定约束(较少使用)语法规则较为复杂用户约束文件(UCF)重新查看.ucf文件用户约束文件(UCF)关于UCF文件的几点说明UCF语法较为复杂,需要确切知道含义;图形界面的选项可以自动转换为UCF语句;如果要在FPGA上实现,时钟约束、引脚约束必填;UCF通常关联顶层模块,综合选项中默认包含;UCF引脚配置要非常小心,严格遵照PCB图和芯片手册的要求,否则可能烧毁昂贵的FPGA芯片;某些特殊引脚约束或者复杂约束,只能通过UCF语句来生成;UCF编写不正确,无法进行综合以后的后续步骤。ISEimplementdesign配置Implement在综合之后执行,需要有.ucf文件包括Translate、Map、Place&Route属性卡可以集中修改,也可以分项修改每个步骤都会生成分析报告详细属性配置参考教材4.3.3节ISEimplementdesign配置Translate属性通常使用默认属性生成.ngd文件所包含的三个工具 较少使用ISEimplementdesign配置Translate报告ISEimplementdesign配置Map属性通常使用默认属性主要需要调整的属性:LUT输入面积与速度IOB所包含的四个工具 较少使用ISEimplementdesign配置Map报告(很长,关注以下几个部分)ISEimplementdesign配置Place&Route属性主要需要调整的属性:布线努力程度运行开销表部分工具比较重要ISEimplementdesign配置Place&Route报告(也很长)静态时序分析与布局布线后仿真静态时序分析当布局布线效果不理想时使用产生布局布线静态时序使用TimingAnalyzer进行分析静态时序分析与布局布线后仿真错误时序会被标红静态时序分析与布局布线后仿真三种后仿真生成文件GeneratePost-TranslateSimulationModelxxx_translate.vGeneratePost-MapSimulationModel
xxx_map.v,xxx_map.sdfGeneratePost-Place&RouteSimulationModel主要使用布局布线后仿真xxx_timsim.v,xxx_timsim.sdf静态时序分析与布局布线后仿真布局布线后仿真方法新建一个目录,将编写的仿真测试文件、xxx_timsim.v、xxx_timsim.sdf、glbl.v文件复制到此目录下;(注意:一定不要编写的源代码,glbl.v在ISE根目录/verilog/src下)如果使用了宏定义文件(.v)、其他仿真模型文件(.v)也添加进来;打开ModelSim,新建一个Project,添加上述文件;编译所有文件;vsim-LXilinxCoreLib_ver-Lunisims_ver-Lsimprims_ver-t1ps+maxdelayssimulate_moduleglbl静态时序分析与布局布线后仿真将uut(例化的源代码顶层)添加到波形中静态时序分析与布局布线后仿真后仿真也可以采用非命令行方法,请自行查阅相关资料;后仿真时间较长,与功能仿真可能相差几个数量级的时间;如果源代码较为庞大,生成后仿真模型的过程也会比较耗时。功耗分析XPower功耗分析在仿真文件中某个initial语句中需要增加
$dumpfile("design.VCD"); $dumpvars(1,test_v.uut);运行GeneratePowerData运行AnalyzePower功耗分析分析报告功耗分析XPower使用(后续部分参考教材4.3.5节)FPGA的配置FPGA配置模式主模式 PROM配置(最终产品)从模式JTAG模式 主机配置(调试)JTAGJointTestActionGroup一种国际标准测试协议JTAG边界扫描TDI、TDO、TMS、TCKVCC、GNDFPGA的配置JTAG下载电缆并口电缆ParallelIII 电路公开,可自行制作ParallelIVUSB电缆价格较为昂贵,速度和稳定性远优于并口电缆JTAG配置电路参见教材5.3节自行学习菊花链FPGA的配置配置文件的生成PC调试的配置选项CCLK用于主模式PROM配置,内部产生JTAGCLOCK用于JTAG调试FPGA的配置配置文件的生成执行生成.bit文件FPGA的配置启动iMPACT选择边界扫描也可以取消 然后点击 进行自动检测FPGA的配置下载配置右键Program,选中生成的.bit文件下载成功后,提示“Success”FPGA的配置采用PROM配置FPGA生成的.bit文件需要转换成.mcs文件下载到PROM中,PROM自动配置FPGA执行FPGA的配置选择所使用PROM芯片FPGA的配置选择.bit文件转换(注意:此时要用CCLK时钟生成.bit)FPGA的配置JTAG菊花链FPGA的配置多片PROM配置FPGA的配置SystemACE配置可参考PROM配置教材5.3.6节SoC原理与设计基础SoC基本概念SoC技术特点SoC设计的关键技术SoC发展趋势基于FPGA的SoC应用技术片上总线嵌入式RISCCPU软件无线电芯片级应用系统SoC基本概念SoC(SystemonChip)片上系统狭义:信息系统核心的芯片集成,将系统关键部件集成在一块芯片上广义:微小型系统SoC在集成电路(IC)向集成系统(IS)转变大方向下产生
1994年Motorola的FlexCore系统1995年LSILogic公司为Sony公司设计的SoCSoC技术特点半导体工艺技术的系统集成软件系统和硬件系统的集成SoC具有以下几方面的优势,因而创造其产品价值与市场需求:降低耗电量减少体积增加系统功能提高速度节省成本SoC设计的关键技术总线架构IP核复用软硬件协同设计SoC验证可测性设计低功耗设计超深亚微米电路实现嵌入式软件移植与开发SoC发展趋势SoC芯片的规模一般远大于普通的ASIC;SoC仿真与验证最复杂、最耗时,先进的设计与仿真验证方法成为SoC设计成功的关键;除了那些无法集成的外部电路或机械部分以外,其他所有的系统电路全部集成在一起;高度集成化、固件化;基于SoC开发平台,最大程度系统重用。基于FPGA的SoC应用技术系统功能集成是SoC的核心技术固件集成是SoC的基础设计思想嵌入式系统是SoC的基本结构IP是SoC的设计基础片上总线IP核互连一般采用总线的方式,这种总线称为片上总线(On-ChipBus,OCB)ARM公司的AMBA总线Altera公司Avalon总线IBM公司的CoreConnect总线OpenCore组织的Wishbone总线OpenCore组织的OPC总线片上总线AMBA总线AdvancedMicrocontrollerBusArchitectureARM公司设计的用于高性能嵌入式系统的总线标准,独立于处理器和制造工艺技术片上总线AMBA总线AHB(AdvancedHighPerformanceBus)ASB(AdvancedSystemBus)APB(AdvancedPerpheralBus)片上总线AVALON总线Altera在推出业内第一个软核Nios时开发的片上总线一种简单的总线协议,规定了主部件和从部件之间进行连接的端口和通信的时序片上总线CoreConnect总线IBM公司设计的一种SoC总线协议,能够使处理器、内存控制器和外设在基于标准产品平台设计中的集成和复用更加灵活,从而提高系统性能。片上总线CoreConnect总线处理器局部总线PLB(ProeessorLocalBus):高速的CPU核、高速存储器控制器、仲裁器、高速的DMA控制器等高性能、宽带宽的设备都连接在PLB上。片内外设总线OPB(On-ChipPeripheralBus):低性能的设备都连接在OPB总线上。器件控制寄存器总线DCR(DeviceControlRegister):配置PLB和OPB主/从设备中的状态寄存器和控制寄存器。片上总线Wishbone总线Silicore公司提出,现在已被移交给OpenCores组织维护结构十分简单,它仅仅定义了一条高速总线用户可以按需要自定义Wishbone标准,如字节对齐方式、标志位等片上总线Wishbone总线互连方式点到点(point-to-point):用于两IP核直接互连;数据流(dataflow):用于多个串行IP核之间的数据并发传输;共享总线(sharedbus):多个IP核共享一条总线;交叉开关(crossbarswitch):同时连接多个主从部件,提高系统吞吐量。片上总线Wishbone总线WISHBONESystem-on-Chip(SoC)InterconnectionArchitectureforPortableIPCores片上总线典型主从设备连接单个读周期单个写周期片上总线BIGENDIAN片上总线LITTLEENDIAN嵌入式RISCCPUAlteraNois系列XilinxPowerPC(硬核)PicoBlaze(8位微处理器软核)MicroBlaze(32位微处理器软核,支持CoreConnect总线的标准外设集合)基于EDK开发:EDK中提供的IP核均有相应的设备驱动和应用接口,只需利用相应函数库,就可以编写自己的应用软件和算法程序;对于用户自己开发的IP核,需要自己编写相应的驱动和接口函数。嵌入式RISCCPUGaislerLeon系列(SparcV8架构,开源,完整的工具链)SunOpenSparc(SparcV9架构,开源)OpencoresOpenRiscZPU(最小的32位RISC软核)几十种CPU软核软件无线电软件无线电(SoftwareRadio)在开放公共硬件平台上利用可编程的软件方法实现所需要的无线电系统。基本思想:将宽带模数变换器(A/D)及数模变换器(D/A)尽可能地靠近射频天线(模拟信号的数字化过程尽可能地接近天线)通过软件编程来完成传送信息抽样、量化、编码/解码、运算处理和变换。通过软件编程实现不同的信道调制方式的选择,如调幅、调频、单边带、数据、跳频和扩频。通过软件编程实现不同的保密结构、网络协议和控制终端功能。软件无线电软件无线电AD->DSP->DAAD->DSP+FPGA->DAAD->FPGA->DA编程最终将向FPGA逻辑设计过渡,以嵌入式SoC系统为核心。芯片级应用系统FPGA的两个走向高度并行专用电路设计追求高速度高度的电路优化灵活的SoC系统设计追求灵活性、高性价比嵌入式CPU为核心的软硬件协同设计SoC验证芯片级应用系统通信(仍占据主流)卫星通信、网络交换工业控制(新兴)取代传统MCU汽车电子定位、识别、控制生物医疗医疗信息采集、大规模生物计算第七章基于SystemGenerator的
DSP系统开发技术SystemGenerator简介SystemGenerator安装SystemGenerator基础Simulink简介AccelDSP简介基于SystemGenerator的DSP系统设计基于SystemGenerator的硬件协仿真SystemGenerator简介FPGA是理想的高性能数字信号处理器件包含了逻辑资源,还有多路复用器、存储器、硬核乘加单元以及内嵌的处理器等设备,还具备高度并行计算的能力;特别适合于完成数字滤波、快速傅立叶变换等。FPGA并未在数字信号处理领域获得广泛应用(??)大部分DSP设计者通常对C语言或MATBLAB工具很熟悉,不了解硬件描述语言VHDL和VerilogHDL;部分DSP工程师认为对HDL语言在语句可综合方面的要求限制了其编写算法的思路。SystemGenerator简介SystemGeneratorforDSPXilinx简化FPGA数字处理系统的集成开发工具;和Simulink(MathWorks公司产品)实现无缝链接,利用Simulink建模和仿真环境来实现FPGA设计,无需了解和使用RTL级硬件语言;Xilinx公司XtremeDSP解决方案的关键组成,集成了先进的FPGA设计工具以及IP核,支持Xilinx公司全系列的FPGA芯片;可作为MATLAB软件中的一个硬件设计工具包。SystemGenerator简介SystemGenerator简介SystemGenerator的主要特征可在MATLAB/Simulink环境下对算法以及系统建模,并生成相应的工程;再调用ISE相应的组件进行仿真、综合、实现,并完成芯片的配置。SystemGenerator简介SystemGenerator的主要特征丰富的DSP模块信号处理(如FIR滤波器、FFT)纠错(如Viterbi解码器、Reed-Solomon编码器/解码器)算法存储器(如FIFO、RAM、ROM)数字逻辑功能的Xilinx模块集使用户导入.m函数及HDL模块Simulink设计的VHDL或Verilog的自动代码生成硬件协仿真FPGA在环路(FPGA-in-the-loop),加速用户的硬件验证工作并加速其在Simulink与MATLAB中的仿真嵌入式系统的硬件/软件协设计直接加载Xilinx公司的MicroBlaze32位RISC处理器,甚至构建和调试DSP协处理器SystemGenerator安装软件环境(以SystemGenerator9.1为例)MATLABv7.3/Simulinkv6.5(R2006b)或MATLABv7.4/Simulinkv6.6(R2007a)。MATLAB软件的安装路径上不能出现空格。ISE版本为9.1.01i或者更高版本,ISESimulator的版本为完全版;SystemGenerator软件版本必须和ISE版本一致。IP核库的版本为ISEIP9.1iUpdate1或者更高版本。
系统环境变量$XILINX必须设置为ISE的安装目录。
综合工具SynplifyPro的版本为v8.6.2或v8.8.0.4;仿真工具ModelSim的版本至少为PE或SEv6.1f以及更高版本。SystemGenerator安装与MATLAB关联SystemGenerator基础典型的SystemGenerator设计流程浮点算法开发定点算法实现硬件系统设计代码优化SystemGenerator基础浮点运算开发利用MATLAB软件及其提供的工具包快速地完成浮点算法的开发、验证以及性能评估;借助于Simulink可快速完成原型设计和模型分析。定点算法实现将MATLAB浮点算法通过AccelDSP在Xilinx器件上实现定点逻辑;AccelDSP直接将浮点MATLAB算法的M-文件自动生成可综合的RTL模型,自动进行浮点-定点转换,生成可综合的VHDL或VerilogHDL设计,并创建用于验证的测试平台。SystemGenerator基础硬件系统设计与实现定义使用XilinxIP的详细硬件架构,采用SystemGeneratorforDSP划分协处理器和可编程器件之间的设计;会生成下列文件:设计所对应的HDL程序代码;时钟处理模块,包括系统时钟处理操作以及生成设计中所需的不同频率的时钟信号;用于测试设计的HDL测试代码,可直接将其仿真结果和Simulink输出比较;工程文件以及综合、实现过程所产生的各种脚本文件。SystemGenerator基础代码优化利用ISERTL设计环境生成优化的FPGA设计;不仅要熟悉算法的架构、瓶颈,还需精通RTL设计;属于高级应用,直接对RTL进行修改和优化。Simulink简介Simulink是MATLAB的组件安装程序会自动将其安装到MATLAB目录下;Simulink的运行需要MATLAB后台的支持,因此必须要安装MATLAB软件。工具栏点击或者命令启动Simulink简介Simulink工作原理模型初始化模型执行一般模型是使用数值积分来进行仿真;仿真结束时,模型得出系统的输入、状态和输出。Simulink设计示例例建立一个调幅(AM)系统,信号频率为100KMHz,载波频率为1MHz,调幅系数为0.5,并在示波器中显示出来。启动Simulink;新建一个模型,“NewModel”命令新模型保存为am.mdl;从SimulinklibraryBrowser中加入基本模块;连接各个模块;在工具栏点击运行(RUN)图标,再直接点击Scope模块即可观察运行结果。Simulink设计示例AccelDSP简介AccelDSPAccelDSP是一款第三方综合软件,可将MATLAB浮点算法转换成为可综合RTL代码;XilinxAccelDSP是目前业界唯一能够将MATLAB浮点算法转换成为可综合RTL代码的开发工具;自动地进行浮点-定点转换,生成可综合的VHDL或Verilog代码,并创建用于验证的测试平台;可以生成定点C++模型或由MATLAB算法得到SystemGenerator块;XilinxXtremeDSP解决方案的重要组成部分。AccelDSP简介AccelWare包含一系列参数DSP模块的IP库;可以综合成为RTL代码(VHDL或Verilog)。AccelWareIP(包含三个专用工具箱)信号处理工具包:FIR滤波器、CIC抽取滤波器、CIC内插滤波器、多相抽取滤波器、半带FIR滤波器、FFT以及IFFT等;
通信工具包:直接数字合成器、BCH编码器和解码器、卷积交织器和去交织器、卷积编码器、Reed-Solomon编解码器、Viterbi解码器、开方升余弦滤波器、加扰器、解扰器以及ADC采样-保持电路/正弦比较滤波器等;
高级数学运算工具包:QR分解法、Cholesky分解法、QR求逆、Cholesky求逆、三角形矩阵求逆、特定排列旋转、多项式求值、奇异值分解以及QRD-RLS空间滤波器等。
基于SystemGenerator的DSP系统设计XilinxBlockset库SystemGenerator和Simulink是无缝链接的,可以在MATLAB标准工具栏中直接启动;在Simulink环境中,只有通过Xilinx模块搭建的系统才能保证硬件可实现,类似于HDL语言中的可综合语句。基于SystemGenerator的DSP系统设计SystemGenerator库基于SystemGenerator的DSP系统设计基本单元模块包含了数字逻辑的标准组件模块;可插入时间延迟、改变信号速率、引入常数、计数器以及多路复用器等;包含了3个特殊的模块SystemGenerator标志、黑盒子模块(BlackBox)以及边界定义模块。基于SystemGenerator的DSP系统设计通信模块提供了用于实现数字通信的各种函数基于SystemGenerator的DSP系统设计控制逻辑模块创建各种控制逻辑和状态机的资源包括逻辑表达式、软核控制器、复用器以及存储器基于SystemGenerator的DSP系统设计数据类型模块用于信号的数据类型转换包括移位、量化、并/串、串/并转换以及精度调整模块基于SystemGenerator的DSP系统设计DSP模块SystemGenerator的核心包含了所有常用的DSP模块基于SystemGenerator的DSP系统设计数学运算模块丰富的数学运算库包括基本四则运算、三角运算以及矩阵运算等基于SystemGenerator的DSP系统设计存储器模块包含了所有Xilinx存储器的LogicCore基于SystemGenerator的DSP系统设计共享储存器模块主要用于共享存储器操作基于SystemGenerator的DSP系统设计工具模块ModelSim、ChipScope、资源评估等模块以及算法设计阶段的滤波器设计等基于SystemGenerator的DSP系统设计FPGA边界定义模块通过两个标准模块“GatewayIn”和“GatewayOut”来定义Simulink仿真模型中FPGA的边界;GatewayIn模块标志着FPGA边界的开始,能够将输入的浮点转换成定点数;GatewayOut模块标志着FPGA边界的结束,将芯片的输出数据转换成双精度数。基于SystemGenerator的DSP系统设计SystemGenerator标志每个SystemGenerator应用框图都必须至少包含一个SystemGenerator标志;用来驱动整个FPGA实现过程,不与任何模块相连;打开属性编辑框,能够设置目标网表、器件型号、目标性能以及系统时钟频率等指标。基于SystemGenerator的DSP系统设计建立简易的DSP设计例使用SystemGenerator建立一个3输入(a、b、c)的DSP4模块的计算电路,使得输出p=c+a*b,并利用标准的Simulink模块对延迟电路进行功能验证。1.建立一个新的Simulink模型,并保存为mydsp.mdl。2.选择XilinxDSP48模块,拖到mydsp.mdl;按照同样的方法添加边界定义模块以及SystemGenerator标志模块。3.添加Simulink标准库中的常数模块(Constant)和显示器(Display)模块。其中常数模块用于向DSP计算电路灌数据,作为测试激励;显示器则用于观测输出数据。基于SystemGenerator的DSP系统设计4.连接模块Xilinx模块之间的端口可以直接相互连接Xilinx模块和非Xilinx模块之间的连接需要Gateway连接基于SystemGenerator的DSP系统设计5.设定系统参数多数选项与ISE开发中 选项相同;“Createtestbench”, 自动生成设计的测试 代码。基于SystemGenerator的DSP系统设计6.设置关键模块参数
GatawayIn模块属性可查看输入数据位宽和量化规则基于SystemGenerator的DSP系统设计7.运行测试激励运行Simulink仿真,可以看到显示器输出为18,表明设计的功能是正确的。8.生成HDL代码基于SystemGenerator的DSP系统设计相应的文件夹“netlistsysgen”
子目录中“nonleaf_results.v”可作为子模块直接使用生成的部分代码段基于SystemGenerator的DSP系统设计SystemGenerator中的信号类型“Format”菜单中的“Port/SignalDisplayPortDataTypes”命令,来显示所有端口的数据类型,形象显示整个系统的数据精度。可根据输入端口的数据类型来确定输出数据类型。允许设计人员自定义模块的输入、输出数据的量化效果以及饱和处理。Simulink中的连续时间信号,还必须经过“GatewayIn”模块的采样转换才能使用。
基于SystemGenerator的DSP系统设计自动代码生成SystemGenerator能够自动地将设计编译为低级的HDL描述,且编译方式多样,取决于SystemGenerator标志中的设置。还需要生成一些辅助下载的文件工程文件、约束文件等,以及用于验证的测试代码。详见7.3.3节。基于SystemGenerator的DSP系统设计编译MATLAB设计生成FPGA代码两种方法将MATLAB设计.m文件转化为HDL设计:利用AccelDSP综合器:多应用于复杂或高速设计中,常用来完成高层次的IP核开发。直接接利用MCode模块:支持MATLAB语言的有限子集,实现算术运算、有限状态机和逻辑控制等。要使用MCode模块,必须实现编写.m函数,且代码文件必须和SystemGenerator模型文件放在同一个文件夹中,或者处于MATLAB路径上的文件夹中。基于SystemGenerator的DSP系统设计例使用MATLAB编写一个简单的移位寄存器完成对输入数据乘8以及除以4的操作,并使用MCode将其编译成SystemGenerator直接可用的定点模块。1.相关的.m函数代码为:基于SystemGenerator的DSP系统设计2.新建SystemGenerator设计,添加MCode模块通过Browse按键 将.m函数和模型 设计关联起来
基于SystemGenerator的DSP系统设计3.添加边界模块、SytemGenerator模块、正弦波测试激励以及示波器模块基于SystemGenerator的DSP系统设计4.运行仿真,正确实现了.m文件的功能。左图将信号放大了8倍,右图将信号缩小了4倍。基于SystemGenerator的DSP系统设计5.自动代码生成基于SystemGenerator的DSP系统设计子系统的建立和使用简介建立子系统的方法是利用NGC二进制网表文件;将SystemGenerator设计封装成单独的二进制模块,综合工具将其作为黑盒子看待;管脚约束不能在Gataway模块中定义;同样时钟管脚不能在SystemGenerator模块中定义;通过网表编辑器来指定物理约束。详见7.3.5节。基于SystemGenerator的硬件协仿真硬件协仿真通过在硬件上模拟部分设计,大大提高仿真的速度(通常可以提高一个甚至多个数量级);一旦将设计编译成FPGA比特流文件,SystemGenerator会自动创建一个新的硬件协仿真模块,同时还会生成一个Simulink库来存储生成的模块。此部分相对复杂,通常为高级应用所使用,请参考7.4节的使用方法。第八章基于FPGA的可编程嵌入式开发初步可配置嵌入式系统Xilinx嵌入式开发系统MicroBlazePowerPCIP和及驱动EDK软件XPS软件的基本操作可配置嵌入式系统FPGA在嵌入式系统中获得广泛应用状态机模式:可以无外设、无总线结构和无实时操作系统,达到最低的成本,应用于VGA、LCD控制等,根据用户设计可达到不同的性能。
单片机模式:包括一定的外设,可以利用实时操作系统和总线结构,以中等的成本,应用于控制和仪表,达到中等的性能。定制嵌入模式:高度集成扩充的外设,实时操作系统和总线结构,达到高性能,应用于网络和无线通信等。
采用90nm生产工艺之后,FPGA器件处理能力更强,且成本低、功耗少,已取代了相当数量的中小规模ASIC器件和处理器,使嵌入式系统具备片上系统(SOC)的规模和动态可编程的能力,具有明显的优势,成为嵌入式应用的主力军之一。可配置嵌入式系统Xilinx解决方案PicoBlaze:8位处理器软核,用汇编语言编写的程序经过编译后放入FPGA的BlockRam存储区。MicroBlaze:32位流水线RISC结构,包含32个32位通用寄存器和1个可选的32位移位寄存器,时钟可达150MHz。PowerPC:32位PowerPC嵌入式环境架构。VirtexIIPro、Virtex4、Virtex5系列部分芯片中集成了2~4个PowerPC405处理器核。可配置嵌入式系统开发工具嵌入式开发套件(EDK):用于设计嵌入式可编程系统的全面的解决方案,该套件包括了嵌入式软件工具(PlatformStudio)以及嵌入式IBMPowerPC硬件处理器核和/或XilinxMicroBlaze软处理器核进行Xilinx平台FPGA设计时所需的技术文档和IP。Xilinx公司提供了大量的硬件平台(评估板),提供了大量的软、硬件设计参考。Xilinx嵌入式开发系统MicroBlaze支持CoreConnect总线的标准外设集合;RISC架构,哈佛结构32位指令和数据总线最精简的核只需要将近400个Slice。Xilinx嵌入式开发系统MicroBlaze通用寄存器特殊寄存器PC、MSRXilinx嵌入式开发系统MicroBlaze指令集A型指令:两个源寄存器和一个目的寄存器,完成寄存器到寄存器间的数据运算;B型指令:一个源寄存器、一个目的寄存器和一个16位的立即数,进行寄存器和立即数间的数据运算。Xilinx嵌入式开发系统MicroBlaze三级流水Xilinx嵌入式开发系统PowerPC采用CoreConnect技术,可运行在100-133MHz的高带宽64位总线;独立的指令缓存和数据缓存、1个JTAG端口、TraceFIFO、多个定时器和一个内存管理单元(MMU);集成了辅助处理器单元控制器(APU),可直接控制FPGA架构内的硬件指令协处理;不占用FPGA内部任何逻辑资源。Xilinx嵌入式开发系统Xilinx嵌入式开发系统PowerPC通用寄存器Xilinx嵌入式开发系统PowerPC专用寄存器:计数寄存器、连接寄存器、调试资源、计数器、中断寄存器等。多数是应用程序不能访问的。机器状态寄存器:处理器的工作状态,允许用户修改。条件寄存器:可分为8个区域(CR0-CR7),每区域包含4个比特,可用于控制所有的条件分支。应用软件可访问所有的CR数值。芯片控制寄存器:配置、控制和读取外部处理器,可在特殊软件中通过mtdcr和mfdcr指令来访问。
Xilinx嵌入式开发系统PowerPC指令集执行指令的速度接近每周期执行一条指令
Xilinx嵌入式开发系统PowerPC五级流水取指、译码、执行、写回、加载写回Xilinx嵌入式开发系统常用的IP核以及设备驱动通用I/O设备中断控制器设备定时器外部存储器控制器以太网、串口等
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 青岛幼儿师范高等专科学校《现代汉语I》2023-2024学年第二学期期末试卷
- 庆阳职业技术学院《商务统计》2023-2024学年第二学期期末试卷
- 沈阳医学院《应用多元统计分析实训》2023-2024学年第二学期期末试卷
- 嘉兴南湖学院《历史文献检索与论文写作》2023-2024学年第二学期期末试卷
- 江西理工大学《材料科学基础应用研究》2023-2024学年第二学期期末试卷
- 沈阳师范大学《儿歌表演唱(二)》2023-2024学年第二学期期末试卷
- 丽江文化旅游学院《中外戏剧比较研究》2023-2024学年第二学期期末试卷
- 广东农工商职业技术学院《电工与电子技术A》2023-2024学年第二学期期末试卷
- 新疆工程学院《核医学E》2023-2024学年第二学期期末试卷
- 池州学院《跨文化研究》2023-2024学年第二学期期末试卷
- 《分娩机转》课件
- 口腔医院市场营销新入职员工培训
- 军队文职备考(面试)近年考试真题(参考300题)
- 金融业税收优惠政策指引
- 叶圣陶杯作文
- 脑梗死临床表现护理
- 新高考英语|语法专项之括号法突破长难句 讲解课件-2025届高三英语上学期一轮复习专项
- 《光通信技术简介》课件
- 山西省2024年中考物理试题(含答案)
- 电子商务平台供货方案及风险控制措施
- 文献检索与利用
评论
0/150
提交评论