下载
加入VIP
  • 专属下载特权
  • 现金文档折扣购买
  • VIP免费专区
  • 千万文档免费下载

上传资料

关闭

关闭

关闭

封号提示

内容

首页 Xilinx_ISE_大学计划使用教程PPT_2

Xilinx_ISE_大学计划使用教程PPT_2.ppt

Xilinx_ISE_大学计划使用教程PPT_2

qingyacomeon
2013-04-02 0人阅读 举报 0 0 暂无简介

简介:本文档为《Xilinx_ISE_大学计划使用教程PPT_2ppt》,可适用于IT/计算机领域

PicoBlaze指令集详解SL,SL,SLX,SLA,RLPicoBlaze指令集详解SL,SL,SLX,SLA,RLPicoBlaze指令集详解INPUTOUTPUTPicoBlaze指令集详解INPUTOUTPUTPicoBlaze指令集详解INPUTOUTPUT时序PicoBlaze指令集详解INPUTOUTPUT时序PicoBlaze指令集详解RESETPicoBlaze指令集详解RESETPicoBlaze指令集详解STOREPicoBlaze指令集详解STOREPicoBlaze指令集详解FETCHPicoBlaze指令集详解FETCHKCPSM汇编器原理及操作KCPSM汇编器原理及操作KCPSM汇编器提供一个简单的DOS可执行文件和三个模版文件将KCPSMEXE,ROMformvhdROMformv和ROMformcoe文件复制到工作目录下。程序可用标准的Notepad和Wordpad工具编写文件扩展名为psm(字符名字限制)。打开一个DOS对话框并定位到当前的工作路径下。然后运行汇编器“kcpsm<filename>psm”来汇编所编写的程序(运行速度很快)。KCPSM汇编器原理及操作KCPSM汇编器原理及操作KCPSM汇编器错误处理KCPSM汇编器错误处理当遇到错误时汇编器将停下来。将显示一个短消息来帮助判断引起错误的原因。汇编器将显示遇到问题的行。设计者然后修改错误重新运行汇编器程序。KCPSM汇编器文件组成KCPSM汇编器文件组成KCPSM汇编器使用个输入文件产生个输出文件。下面给出详细的说明。KCPSM汇编器ROMformvhdKCPSM汇编器ROMformvhd该文件提供模版该模版用于汇编器产生的VHDL文件和汇编器一起提供在工作路径下。该文件为Spartan,VirtexII,VirtexIIPro的单端口BRAM配置为ROM下面给出该文件的模版。KCPSM汇编器ROMformvhdKCPSM汇编器ROMformvhd汇编器读取ROMformvhd模版将其信息复制到输出文件<filename>vhd。不进行其语法的检查。该文件包含一些特殊的文本串,包含{}。AttributeAttributeNameofObjectList:ObjectTypeisAttributeValue汇编器使用{begintemplate}来标识VHDL定义开始的地方,然后理解和使用合适的信息来替换所有其它特殊的串。{name}被输入程序“psm”的名字替换。KCPSM汇编器ROMformcoeKCPSM汇编器ROMformcoe该文件为汇编器生成的系数文件的提供模版该文件和汇编程序一起提供并且同在一个工作目录下。ROMformcoe模版文件为SpartanVirtexII和其它FPGA定义了一个双端口存储器。汇编器读取ROMformcoe模版将其信息复制到输出文件<filename>vhd。不进行其语法的检查。{name}被输入程序“psm”的名字替换。文件的最后一行关键字memoryinitializationvector=将要被核生成器标识后面的数据值。汇编器将添加个所要求的值。KCPSM汇编器ROMformcoeKCPSM汇编器ROMformcoeKCPSM汇编器<Filename>fmt文件KCPSM汇编器<Filename>fmt文件该文件是对原始的psm文件的格式化使源文件看上去更好看。下面给出该文件。KCPSM汇编器<Filename>log文件KCPSM汇编器<Filename>log文件该文件提供了汇编器执行过程中的详细信息。KCPSM汇编器constanttxt文件和labelstxt文件KCPSM汇编器constanttxt文件和labelstxt文件这两个文件提供了行标号的列表和它相关的地址以及常数的列表和值。KCPSM汇编器passdat文件KCPSM汇编器passdat文件passdat文件是汇编器的内部文件用来表示汇编过程中的中间步骤。这些文件可不去理会但能帮助识别汇编器如何理解(翻译)程序的。当开始汇编时这些文件自动删除。KCPSM编程语法简单的规则KCPSM编程语法简单的规则)没有空行空行将被汇编器自动去除如果保持一行用一个空的注释(用分号“”))注释用分号“”开始汇编器忽略注释。)寄存器所有寄存器必须用“s”定义,后面跟进制数F。汇编器接受大小写的混合输入但是将其转换为“sX”格式。)常数常数用两个进制数表示范围“”“FF”,汇编器接受大小写的混合输入但是将其转换为大写。)标号标号是用户定义的字符串区分大小写。中间不能有空格支持下划线“”。KCPSM编程语法简单的规则KCPSM编程语法简单的规则)行标号用来标识一个程序行用于JUMP和CALL指令的参考行标号后面跟一个冒号“:”。KCPSM编程语法简单的规则KCPSM编程语法简单的规则)汇编器允许使用空格和<TAB>字符但是指令和第一个操作数之间必须至少有一个空格。带有两个操作数的指令其两个操作数之间必须用“,”分割符。)汇编器接受大小写混合编程但是自动的将其转化为大写。KCPSM编程语法简单的规则KCPSM编程语法简单的规则KCPSM编程语法常数指令KCPSM编程语法常数指令常数是全局的即使常数在程序的末尾定义它也能在程序的任何地方被使用。KCPSM编程语法NAMEREG指令KCPSM编程语法NAMEREG指令KCPSM编程语法ADDRESS指令KCPSM编程语法ADDRESS指令LOG文件给出的描述。ADDRESS强迫指令在给定地址执行。KCPSM中断处理中断使能KCPSM中断处理中断使能使用ENABLEINTERRUPT指令来使能中断。当不允许中断时使用DISABLEINTERRUPT来禁止中断。使用RETURNIENABLEDISABLE指令来从中断返回主程序。当中断产生时进行下面的步骤:)将程序计数器入栈保护CARRY和ZERO标志)禁止中断输入)程序计数器的值为“FF”。KCPSM中断处理中断处理过程KCPSM中断处理中断处理过程KCPSM中断处理中断处理基本方法KCPSM中断处理中断处理基本方法当中断时PC跳到“FF”所以必须保证在此位置有一个跳转到正确的中断服务程序的跳转向量。没有JUMP指令程序将转向“”。中断服务程序可以放在程序的任何位置。ISR执行所要求的任务用RETURNI结束。KCPSM中断处理中断处理基本方法KCPSM中断处理中断处理基本方法下面给出一个简单的中断的处理例程通过向端口写和AA到waveformport端口来产生波形。通过对S寄存器递减来以固定的间隔来写数值。响应中断后PicoBlaze停止产生波形然后对sA寄存器递增将计数器的值写到counterport。KCPSM中断处理VHDL设计例子KCPSM中断处理VHDL设计例子KCPSM中断处理中断服务程序KCPSM中断处理中断服务程序InterruptexampleCONSTANTwaveformport,bitwillbedataCONSTANTcounterport,CONSTANTpattern,AANAMEREGsA,interruptcounterstart:LOADinterruptcounter,resetinterruptcounterLOADs,patterninitialoutputconditionENABLEINTERRUPTdrivewave:OUTPUTs,waveformportLOADs,delaysizeloop:SUBs,delayloopJUMPNZ,loopXORs,FFtogglewaveformJUMPdrivewaveADDRESSBintroutine:ADDinterruptcounter,incrementcounterOUTPUTinterruptcounter,counterportRETURNIENABLEADDRESSFFsetinterruptvectorJUMPintroutineKCPSM中断处理ISR中断服务程序KCPSM中断处理ISR中断服务程序KCPSM中断处理中断所执行的操作KCPSM中断处理中断所执行的操作KCPSM中断处理中断脉冲的时序KCPSM中断处理中断脉冲的时序建议中断信号保持至少个KCPSM上升沿时钟周期KCPSMCALLRETURN栈调用和返回处理过程KCPSMCALLRETURN栈调用和返回处理过程PicoBlaze包含一个自动的嵌入式的堆栈用来当遇到CALL指令时保存PC的值在遇到RETURN(I)是恢复PC的值。堆栈不需要初始化(或者用户的控制)。然而堆栈只支持到最多级的嵌套的子程序。下面给出一个例子来说明这个问题。KCPSMCALLRETURN栈调用和返回处理过程KCPSMCALLRETURN栈调用和返回处理过程KCPSM共享程序空间一个奇妙的想法KCPSM共享程序空间一个奇妙的想法为了设计容易和满足系统的性能要求经常需要在一个可编程芯片内使用多个KCPSM宏。在SPARTAN或者VirtexII芯片内使用一个BRAM来提供个地址空间。下面给出多个KCPSM共享程序空间的方法。KCPSM共享程序空间一个奇妙的想法KCPSM共享程序空间一个奇妙的想法KCPSM输出端口的设计简单输出端口KCPSM输出端口的设计简单输出端口对于少于个输出的端口可以尝试分配”onehot”地址然后确保只解码正确的PORTID信号。这省去大量的逻辑和地址解码。同时降低了PORTID总线上的负载。在程序中使用CONSTANT指令使代码可读并且确保使用了正确的端口。KCPSM输出端口的设计简单输出端口KCPSM输出端口的设计简单输出端口KCPSM输出端口的设计带解码和高性能的输出端口KCPSM输出端口的设计带解码和高性能的输出端口KCPSM输入端口的设计简单输入端口KCPSM输入端口的设计简单输入端口对于少于个的简单输入端口使用多路复用开关将其接入输入端口。建议检查综合的结果以确保特殊的MUXF和MUXF被用来构成高效的多路复用结构。在程序中使用CONSTANT来定义多路开关。由于PORTID保持有效个周期因此在多路复用器后加入寄存器来保持其性能。KCPSM输入端口的设计复杂输入端口KCPSM输入端口的设计复杂输入端口有时候一个提供数据到KCPSM电路,以知道数据已经被读取。一个典型的例子是使用FIFO缓冲区可以准备下一个被读取的数据。下面给出其结构和时序图。KCPSM输入端口的设计复杂输入端口FIFO时序KCPSM输入端口的设计复杂输入端口FIFO时序KCPSM和存储器的连接提高性能的设计方法KCPSM和存储器的连接提高性能的设计方法与存储器的连接是最容易降低系统性能的原因。插入并行的寄存器分割输入多路复用器认真的分配端口地址这些都是提高系统系统的方法。KCPSM和存储器的连接提高性能的设计方法KCPSM和存储器的连接提高性能的设计方法EXCD开发板主要基于XilinxSpartanEFPGA器件XCSEPQ板上含有Mbytes的Flash和Kbytes的SRAM以及各种输入输出设备。基于该板可以设计具有各种功能的数字系统并可以完成含有位PicoBlaze微控制器和MicroBlaze软核的嵌入式处理器系统。SOC实验室解决方案EXCD硬件开发平台EXCD硬件开发平台介绍硬件平台外观EXCD硬件开发平台介绍硬件平台外观EXCD硬件开发平台介绍硬件平台资源EXCD硬件开发平台介绍硬件平台资源)SRAM:Bytes静态RAM存储器(kx))Flash:MbytesFlash存储器(Mx))按键开关:个按键开关)拨码开关:个拨码开关)时钟资源:MHZ晶振)VGA接口:受JP控制JP拨到上面为VGA模式)串行接口:采用DB连接器)PS接口:采用PS连接器进行鼠标键盘连接)IO扩展接口:个脚IO扩展接口)脚SCSI接口:外部IO扩展接口EXCD硬件开发平台介绍SPARTANE芯片特点及功能EXCD硬件开发平台介绍SPARTANE芯片特点及功能SpartanE是目前Spartan系列最新的产品具有系统门数从万到万的多款芯片是在Spartan成功的基础上进一步改进的产品提供了比Spartan更多的IO端口和更低的单位成本是Xilinx公司性价比最高的FPGA芯片。由于更好地利用了nm技术在单位成本上实现了更多的功能和处理带宽是Xilinx公司新的低成本产品代表是ASIC的有效替代品主要面向消费电子应用如宽带无线接入、家庭网络接入以及数字电视设备等。EXCD硬件开发平台介绍SPARTANE芯片特点及功能EXCD硬件开发平台介绍SPARTANE芯片特点及功能EXCD硬件开发平台介绍SPARTANE芯片特点及功能EXCD硬件开发平台介绍SPARTANE芯片特点及功能其主要特点如下:采用nm工艺大量用户IO端口最多可支持个IO端口或者对差分端口端口电压为V、V、V、V、V单端口传输速率可以达到Mbps支持DDR接口最多可达个专用乘法器、BRAM、k分布式RAM宽时钟频率以及多个专用数字时钟管理模块(DCM)。PicoBlaze位微控制器的设计实现设计内容PicoBlaze位微控制器的设计实现设计内容PicoBlaze位微控制器设计由六个实验构成:)实验一:Xilinx工具流程)实验二:ArchitectureWizard和PACE)实验三:全局时钟约束)实验四:综合技术)实验五:核生成器(IP核生成器))实验六:ChipScopePro调试实验一:Xilinx工具流程设计结构原理实验一:Xilinx工具流程设计结构原理实验一:Xilinx工具流程实验任务实验一:Xilinx工具流程实验任务了解ISE软件工具的使用将完成和实现一个已经存在的PicoBlaze设计。该实验由下面步骤实现:步骤:创建一个新的工程步骤:添加设计文件到工程步骤:汇编程序步骤:完成设计步骤:实现HDL行为仿真步骤:实现(Implement)设计实验一:Xilinx工具流程创建工程实验一:Xilinx工具流程创建工程打开ISE:点击桌面图标或选择开始>所有程序>XilinxISEDesignSuite>ISE>ProjectNevigator在ISE主界面下在主菜单下选择File>NewProject出现下面的界面实验一:Xilinx工具流程创建工程实验一:Xilinx工具流程创建工程鼠标点击实验一:Xilinx工具流程创建工程实验一:Xilinx工具流程创建工程在DeviceProperties界面中选择合适的:)产品范围(productcategory))芯片的系列(Family))具体的芯片型号(Device))封装类型(Package))速度信息(speed))综合工具(SynthesisTool))仿真工具(Simulator))设计语言(PreferredLanguage)。左图是参数的具体设置鼠标点击实验一:Xilinx工具流程创建工程实验一:Xilinx工具流程创建工程创建新源文件窗口由于这些设计文件已经存在在此不需要建立新的文件。鼠标点击实验一:Xilinx工具流程创建工程实验一:Xilinx工具流程创建工程左图显示添加已经存在的文件对话框界面。鼠标点击实验一:Xilinx工具流程创建工程实验一:Xilinx工具流程创建工程定位所要添加文件的目录然后点击打开按钮。实验一:Xilinx工具流程创建工程实验一:Xilinx工具流程创建工程文件被添加进来然后点击“Next”按钮。实验一:Xilinx工具流程创建工程实验一:Xilinx工具流程创建工程工程总结界面点击“Finish”按钮。实验一:Xilinx工具流程创建工程实验一:Xilinx工具流程创建工程至此工程的框架就这样完成了。实验一:Xilinx工具流程创建工程实验一:Xilinx工具流程创建工程主界面又一次出现了。思考:发生了什么变化?实验一:Xilinx工具流程完成设计实验一:Xilinx工具流程完成设计一个示例psm汇编程序叫inittestpsm包含在工程中下面对汇编程序进行汇编来生成指令ROM文件并将其添加到设计中。打开E:labsolutionsVHDLlabAssembler找到预先复制的inittestpsm所在的工程目录。实验一:Xilinx工具流程完成设计实验一:Xilinx工具流程完成设计用标准的文本编辑器打开inttestpsm文件选择开始>所有程序>附件>命令提示符。浏览到Assembler目录下cd路径名称实验一:Xilinx工具流程完成设计实验一:Xilinx工具流程完成设计实验一:Xilinx工具流程完成设计实验一:Xilinx工具流程完成设计键入命令:kcpsminttestpsm,出现下面的界面。实验一:Xilinx工具流程完成设计实验一:Xilinx工具流程完成设计将生成的inttestvhd文件添加到工程中注意这里有很多方法:方法:ISE主界面下主菜单选择Project>NewSource,定位到生成的文件然后打开该文件。方法:ISE主界面下的处理子窗口下鼠标点击AddExistingSource然后打开该文件。然后在主窗口中看到该文件已经被添加到工程中。实验一:Xilinx工具流程完成设计实验一:Xilinx工具流程完成设计思考:深入掌握VHDL元件声明和元件例化的方法。并打开顶层设计文件进行分析分析文件的结构。实验一:Xilinx工具流程仿真设计实验一:Xilinx工具流程仿真设计测试平台以行为级描述为主不使用寄存器传输级的描述形式。测试向量的生成可以使用两种方法:)波形文件)HDL语言描述思考:到底那个方法好?为什么?波形直观适合小规模设计的测试向量的生成HDL语言描述不直观但灵活性非常好设计越复杂其优越性就越明显。实验一:Xilinx工具流程仿真设计实验一:Xilinx工具流程仿真设计下面先添加测试向量文件然后再分析这样就能掌握和适应HDL语言描述测试平台的方法。在主菜单下选择Project>AddCopyofSource并打开测试向量文件testbenchvhd该文件就被添加到工程中。思考:分析工程文件结构?实验一:Xilinx工具流程仿真测试文件实验一:Xilinx工具流程仿真测试文件顶层设计文件在测试平台文件中被声明和例化表明测试是对顶层设计文件进行的。声明部分实验一:Xilinx工具流程仿真测试文件(难点)实验一:Xilinx工具流程仿真测试文件(难点)例化部分软件仿真中时钟信号的激励产生周期时钟信号使用VHDL语言中的行为描述语句实验一:Xilinx工具流程仿真测试文件实验一:Xilinx工具流程仿真测试文件软件仿真中中断信号的激励产生中断脉冲信号使用VHDL语言中的行为描述语句来描述。实验一:Xilinx工具流程仿真设计实验一:Xilinx工具流程仿真设计仿真参数及环境的设置。在处理子窗口选择XilinxISESimulator,并展开选择SimulateBehavioralModel,点击鼠标右键选择Properties…点击鼠标右键出现后面的界面实验一:Xilinx工具流程仿真设计实验一:Xilinx工具流程仿真设计修改仿真的时间长度ns,点击OK,接受修改的参数。实验一:Xilinx工具流程仿真设计实验一:Xilinx工具流程仿真设计在处理子窗口选择XilinxISESimulator,并展开选择SimulateBehavioralModel并用鼠标双击。小圆圈开始转动仿真过程开始不要着急此时ISE要完成一项重要的工作就是要生成行为级仿真的模型稍微等一下下面的窗口就出现了。实验一:Xilinx工具流程仿真设计实验一:Xilinx工具流程仿真设计看到仿真的结果思考:如何分析仿真的结果?如果你想看到更多内部的信号下面将告诉你如何做。实验一:Xilinx工具流程仿真设计实验一:Xilinx工具流程仿真设计这张图说明了这个过程:)在Source窗口展开kcpsminttest)在下面的窗口选中address:并点击鼠标右键)选择AddToWaveform,想要观察的信号终于出现了。实验一:Xilinx工具流程设计综合实验一:Xilinx工具流程设计综合行为级综合可以自动将系统直接从行为级描述综合为寄存器传输级描述。行为级综合的输入为系统的行为级描述输出为寄存器传输级描述的数据通路。行为级综合工具可以让设计者从更加接近系统概念模型的角度来设计系统。同时行为级综合工具能让设计者对于最终设计电路的面积、性能、功耗以及可测性进行很方便地优化。行为级综合所需要完成的任务从广义上来说可以分为分配、调度以及绑定。实验一:Xilinx工具流程设计综合实验一:Xilinx工具流程设计综合Xilinx综合工具在对设计的综合过程中主要执行以下三个步骤:)语法检查过程检查设计文件语法是否有错误)编译过程翻译和优化HDL代码将其转换为综合工具可以识别的元件序列)映射过程将这些可识别的元件序列转换为可识别的目标技术的基本元件实验一:Xilinx工具流程设计综合实验一:Xilinx工具流程设计综合在ISE的主界面的处理子窗口的synthesis的工具可以完成下面的任务:)查看综合报告(viewSynthesisReport))查看RTL原理图(ViewRTLschematic))查看技术原理图(ViewTechnologySchematic))检查语法(CheckSyntax))产生综合后仿真模型(GeneratePostSynthesisSimulationModel)。实验一:Xilinx工具流程设计综合属性设置实验一:Xilinx工具流程设计综合属性设置在处理子窗口下选择SynthesisXST,单击鼠标右键,选择Properities…出现下面的窗口注意:看起来好像很复杂但是掌握方法就知道其中的奥妙了实验一:Xilinx工具流程设计综合属性设置实验一:Xilinx工具流程设计综合属性设置如果你想彻底的弄懂参考文献会告诉你全部的答案。其实对于竞赛和教学没必要都弄清楚这点要切记。实验一:Xilinx工具流程设计综合实验一:Xilinx工具流程设计综合实现综合很简单只需在处理子窗口中用鼠标双击SynthesizeXST,小圆圈出现并且在控制台窗口显示综合过程中的信息。当出现绿色小圆圈的时候综合就完成了。下面将揭开综合过程的一些迷目的深入了解XST的综合过程。实验一:Xilinx工具流程设计综合实验一:Xilinx工具流程设计综合查看RTL符号双击展开内部结构一目了然实验一:Xilinx工具流程设计综合实验一:Xilinx工具流程设计综合实验一:Xilinx工具流程设计实现实验一:Xilinx工具流程设计实现在ISE中的实现(Implement)过程是将综合输出的逻辑网表翻译成所选器件的底层模块与硬件原语将设计映射到器件结构上进行布局布线达到在选定器件上实现设计的目的。实验一:Xilinx工具流程设计实现实验一:Xilinx工具流程设计实现实现过程主要分为个步骤:翻译(Translate)逻辑网表映射(Map)到器件单元与布局布线(PlaceRoute)。翻译的主要作用是将综合输出的逻辑网表翻译为Xilinx特定器件的底层结构和硬件原语。映射的主要作用是将设计映射到具体型号的器件上。布局布线的主要作用是调用Xilinx布局布线器根据用户约束和物理约束对设计模块进行实际的布局并根据设计连接对布局后的模块进行布线产生PLD配置文件。实验一:Xilinx工具流程设计实现实验一:Xilinx工具流程设计实现实验一:Xilinx工具流程设计实现参数设置实验一:Xilinx工具流程设计实现参数设置选择ImplementDesign,点击鼠标左键选择Properties…,出现下面的属性设置界面。实验一:Xilinx工具流程设计实现参数设置实验一:Xilinx工具流程设计实现参数设置如果你想彻底的弄懂参考文献会告诉你全部的答案。其实对于竞赛和教学没必要都弄清楚这点要切记。实验一:Xilinx工具流程设计实现实验一:Xilinx工具流程设计实现实现很简单只需在处理子窗口中用鼠标双击ImplementDesign,小圆圈出现并且在控制台窗口显示综合过程中的信息。当出现绿色小圆圈的时候综合就完成了。下面将揭开实现过程的一些迷目的深入了解XST的实现过程。实验一:Xilinx工具流程设计实现实验一:Xilinx工具流程设计实现实现结果的查看。实验一:Xilinx工具流程设计实现实验一:Xilinx工具流程设计实现布局布线的查看芯片内部结构一目了然放大实验一:Xilinx工具流程设计实现实验一:Xilinx工具流程设计实现实验二:ArchitectureWizard和PACE设计目标实验二:ArchitectureWizard和PACE设计目标ArchitectureWizard使设计人员配置和添加FPGA资源到设计。PACE使设计人员添加位置约束到设计。实验二的设计目标:)使用ArchitectureWizard来配置和初始化DCM(DigitalControllerManagement))使用PACE来实现位置约束)实现设计并确保使用了位置约束)使用硬件下载和测试设计。实验二:ArchitectureWizard和PACE设计步骤实验二:ArchitectureWizard和PACE设计步骤该实验包含下面几个步骤:)配置DCM)初始化DCM)分配引脚位置)用硬件测试设计

用户评价(0)

关闭

新课改视野下建构高中语文教学实验成果报告(32KB)

抱歉,积分不足下载失败,请稍后再试!

提示

试读已结束,如需要继续阅读或者下载,敬请购买!

文档小程序码

使用微信“扫一扫”扫码寻找文档

1

打开微信

2

扫描小程序码

3

发布寻找信息

4

等待寻找结果

我知道了
评分:

/100

Xilinx_ISE_大学计划使用教程PPT_2

VIP

在线
客服

免费
邮箱

爱问共享资料服务号

扫描关注领取更多福利