红色飓风E45开发板实验手册与用户手册
红色飓风E45 FPGA开发板的实验手册与用户手册,很好的学习资料REDOSimple DevelopmentCYCLONE FPGA Design Expert红色飓风E45实验手册目录前言实验指导手册使用说明:第一章使用介绍1概述2lSL122设计过程63建立工程设计输入5设计仿真6综7管脚分配148设计实现159程序下载.1610调试与在线逻辑分析仪的使用19第二章数字电路与数字系统实验第一部分基础实验实验一3/8译码器.25实验二十进制计数器实验36-实验三按键及拨仍开关实验实验四蜂鸣器“梁祝”乐曲演奏38实验五LLD流水灯实验.实验六数码管扫描显小-40-实验七字符型ICD显示实验43-第二部分中级实验实验八串口通信实验45实验九VGA输出八色彩条实验-49-实验十VGA显示乒乓球实验实验十一PS2显示LCD实验实验十二PS2显小串口实验56实验十三PS2鼠标显示LED实验实验十四分频器设计实验实验十五正弦函数发生器实验…实验十六AD转换实验68-第三部分高级实验实验十七IR滤波器实验|八USB输入输出实验∴…实验十九音频输入输出实验…∴84-北京威视锐科技有限公司Web(中国)(国际)REDOSimple DevelopmentCYCLONE FPGA Design Expert红色飓风E45实验手册第四部分存储器实验实验二|双口RAM仿真实现85实验二十一SRAM读写实验…-86实验二十二 EEPROM读写实验-89-实验二十三 SDRAM读写实验第五部分软嵌入式系统操作讲解北京威视锐科技有限公司Web(中国)(国际REDOSimple DevelopmentCYCLONE FPGA Design Expert红色飓风E45实验手册第一章使用介绍概述ISE是使用ⅩLLNX的FPGA的必备的设计工具,它可以完成FPGA开发的全部流程,包括设计输入、仿真、综合、布局布线、生成BIT文件、配置以及在线调试等,功能非常强大,对于大多数FPGA设计者米说,使用ISE就可以完成设计任务,取得满意的效果。这个实验手册针对的ⅠSE版木是12.2,ISD12.2增强了部分可重配置功能,逻辑综合平均速度提升了2倍,大型设计实施运行速度加快了1.3倍,同吋强化了嵌入式设计的方法。当然,用其他版本的ISE也能进行手册上的实验。北京威视锐科技有限公司Web(中国)(国际)REDOSimple DevelopmentCYCLONE FPGA Design Expert红色飓风E45实验手册设计过程设计验证设计输入行为仿真综功能仿真设计实现「静态时序时序仿真配置下载在线调试图1.2.1ISE设计过程建立工程双击桌面上的 Xilinx ise12.2的快捷图标启动ISE集成开发环境。新建工程,如图1.3.1,1.3.2和1.33所示:北京威视锐科技有限公司Web(中国)(国际)REDOSimple DevelopmentCYCLONE FPGA Design Expert红色飓风E45实验手册Enter a name locatios, and comment for the projectsmp日LI:V3FPGh1Worki:g Directory: D: V3FPGhTop-levelP比LLMlxg工nf图1.3.1Project SettinGspecify device and project propertie⊥ ow for thErice距CES瓶45Loperty Specification in Project Fiore notrdefault values olyAnalysis stV山L3三b1。 Message fi1tCancel图1.32北京威视锐科技有限公司Web(中国)(国际)REDOSimple DevelopmentCYCLONE FPGA Design Expert红色飓风E45实验手册File edit y1E No single design modile4回5图1.3在新建工程时,需要注意一下几点(1)工程名,最好用英文不要有汉字,因为ISE下有些工具对于含有汉字的文件目录支持不是很好。(2)仿真工具 Modelsim-SE是第三方软件,需要另外安装。也可使用ISE自带的Isim。设计输入1.设计输入就是将一个概念设计转换为使件描述的过程。可以利川多种不同方式打开新建源代码智能向导,如图1.4.1所示:2.ISE支持多种新建文件类型,如图14.2所示:IP( coregen& Architecture Wizard)ISE软件中提供的各种IP。Schematic:原理图源代码。User document:用户文档。● Verilog Module: Verilog模块Verilog Test Fixture: erilog模块测试激励北京威视锐科技有限公司Web(中国)(国际)REDOSimple DevelopmentN∈ FPGA Design Expert红色飓风E45实验手册● VHDL Module:VHDL模块VHDL Library:VHDL厍文件。VHDL Package:VHDL包文件。● Embedded Processor:嵌入式处理器文件等各种不同的类犁。seISE Project Navi gator (M63c)-D:v3FPGAex ample.xiseFile edit View Project Source PrTools indow LHelp百Ⅹview:图mp1 em entail M Si熊部145-3fge484新建源文件Lew SourceThe vie目 dd sourceFiles. yorAdd Copy of SourccommanManual Compile OrderTEnu anp工 mplement Top ModuleprOpRFile/Path Displ图1.4.1新建源代码方式selecrca type, file name and its lD目P地Verilog Modulverilog fes. F:FilMore lntHCancel北京威视锐科技有限公司Web(中国)(国际)REDOSimple DevelopmentCYCLONE FPGA Design Expert红色飓风E45实验手册图1.4.2工程所支持的文件格式3. Verilog或VHDL源代码输入模板ISE软件提供了很多源代码模板用使用者参考设计,如图1.4.3所示:I: 13FFile edit vien prL4□百XW队a:M3m,/ Notc: CLI muot bc dcfinc回amyl彐中□ Levice fEcr I,ss begi白uk3Lnu1u拜PER-D/2sRu⊥,LBE tTon-50% Duty C由-□卫1ays9|2n中 c synthesize-XsT由2 Implant3ai8DesLanguage Tenlates EError且Br0rs四【x出1AC的11s取:图14.3源代码模板4.源代码语法检查。源代码设计完成后,在进行其他操作以前需要先对设计源代码进行语法检查,保证没有语法错误。双 Synthesize -XST下的 Check Syntax,即进行语法检查,如图1.44所示:北京威视锐科技有限公司Web(中国)(国际)
- 2020-11-30下载
- 积分:1
Vivado约束指导手册
Vivado约束指导手册输入端口到输出端口路径在从输入端口直接到输出端口的路径上,数据:不需要在器件内部锁存(atch),直接从输入端口到输出端口。他们通常被称为ln-to-out数据路径端口时钟可以是虚拟时钟也可以是设计时钟路径举例图3-1描述了上面所有的路径,在此例图中,设计时钟CLKo可被用作端口时钟,这样既可以约束D|N延时也可以约束DOUT延时FPGA DEVICEBoardDeviceInternal Delay REGAData Path DelayREGB Internal DelayBoardDINi DOUT Device○A4InpOutputDelayBUFGPort ClockCLKOPort clockIn-2-out Data PathFigure 3-1: Path Example时钟路径部分每一个时钟路径由三个部分组成:源时钟路径数据路径目标时钟路径源时钟路径源时钟路径是由源时钟从它的源点(典型的是输入端口)到发送时序单元的时钟引脚之间的路径。对于从输入端口起始的时序路径来说,就不存在源时钟路径数据路径对内部电路,数据路径是发送时序单元和捕捉时序单元之间的路径发送时序单元的有效时钟管脚称为路径起始点捕捉时序单元的数据输入管脚称为路径结束点对于输入端口路径,数据路径起始于输入端口。输入端口是路径的起始点对于输出端口路径,数据路径结朿语输岀端口。输岀端口是路径的结束点。目标时钟路径目标时钟路径是由目标时钟从其源点(典型的是输入端口)到捕捉时序单元的时钟管脚之间的路径。对于结束于输出端口的时序路径,就没有目标时钟路径图3-2显示了3段典型的时序路径REGAData PathREGBEndpointSource Clock PathStartpointDestination Clock PathFigure 3-2: Typical Timing PathSetup和Hold分析vⅳ ado ide分析时序并且在时序路径终点时候报告时序裕量。时序裕量是指在时序路径终点数据要求时间和抵达时间的差异。如果裕量为正,从时序的角度考虑此路径是有效的。Setup检查为了计算数据所需的 setup时间,时序引擎:1.决定源时钟和目的时钟之间的普通周期。如果没有被发现,为分析考虑多达1000个时钟周期。2.检查覆盖普通周期上的起始点和终点所有上升和下降沿。3.在任何两个有效 active沿之间的最小正差值dela。这个deta被称为 setup分析的时序路径要求Setup路径要求示例假象2个寄存器之间的一条路径,这些寄存器由其相应时钟上升沿触发。这条路径有效的时钟沿只有上升沿。时钟定义如下:.clko周期6nsck1周期4nsCommon periodclko launch edgesSetup(1)Setup(2)clk1 capture edgesOns 2ns 4nss 8n5 10ns 12nsFigure 3-3: Setup Path Requirement Example图33显示有2个单独的源和目的时钟沿有资格受到 setup分析: setup(1和 setup(2):源时钟发送沿时间:0ns+1*T(ck0)=6ns目的时钟抓取沿时间:0ns+2*(ck1)=8nsSetup Path Requirement=抓取沿时间-发送沿时间=2ns在计算路径要求时候,需要考虑2个重要的点:1.时钟沿是理想的,那就是说,时钟树插入延迟不在考虑之内2.默认时钟在0时间点是 phase-aligned,除非他们的波形定义引进了 phase-shit。异步时钟相位关系未知。时序引擎在分析其间路径时候会考虑默认值。关于异步时钟的更多内容看下部分Setup分析数据要求时间Setup分析数据要求时间是指为了让目的单元能安全的采样数据,数据必须在这个时间点之前稳定。这个值基于:目的时钟采样沿时间.目地时钟延时源时钟和目的时钟的不确定性目的单元 setup时间Setup分析的数据抵达时间Setup分析的数据抵达时间,是指由源时钟发送的数据在路径终点的稳定时候所需要的时间。它的值基于:源时钟发送沿时间源时钟延时数据路径延时数据路径延时包括所有从起点到终点的单元(cel)和线(ne延时。在时序报告中, Vivado将 setup时序考虑为数据路径的一部分。相应的,数据到达和要求时间的公式为:Data Required Time (setup)= destination clock capture edge time+destination clock path delayclock uncertaintyData Arrival Time(setup)= source clock launch edge timesource clock path delay+ datapath delaysetup timeSetup裕量是指要求时间和实际抵达时间的差值:Slack (setup)= Data Required Time -Data Arrival Time在输入数据引脚寄存器上 Setup裕量为负值,说明寄存器有可能锁存到未知的值跳转到错误状态Hod检查Hod裕量的计算与 setup裕量计算直接相关。当 setup分析证明了在最悲观的情况下数据可以被安全捕捉,hold分析确保了:同样的数据不可能被前面目地时钟沿错误的抓取下一个源时钟沿发送的数据不能被用来分析 setup的目的数据沿抓取因此,为了找到hold分析的时序路径,时序引擎考虑了所有为 setup分析的源和目的时钟沿结合的可能。对每一种可能的组合,时序引擎:检查发送沿和减去一个目的时钟周期的抓取沿之间的差值.检查了加上一个源时钟周期的发送沿和抓取沿之间的差值.只保留时间差值最大的发送沿和抓取沿hold路径要求示例采用page33中 setup路径要求示例中的时钟。对于 setup分析那仅有2个可能的时钟沿组合:Setup Path Requirement (S1)=1*T(clk1)-0*T(clk0)= 4nsSetup Path Requirement (S2)=2*T(clk1)-1*T(clk0)=2ns那么相应的hod要求如下:For setup s1:Hold path Requirement (Hla)-(1*T(clk1)-1*T(clk1))-0*T(clko)=onsHold Path Requirement (Hlb)=1*T(clkl)-(0*T(clk0)+I*T(clko))=-2nsFor setup $2:Hold Path Requirement (H2a)=(2*T(clk1)-1*T(clk1))-1*T(clko)2nsHold path Requirement(H2b)=2*T(clk1)-(1*T(clk0)+1*T(clk0))=-4ns从上面可以看出最大的要求时间是Ons,这正好与源时钟和目的时钟第一次上升沿相吻合。Hold路径要求示例,page36显示了 setup检查沿和他们相关的hold检查。cIko launch edgesHla S1 H1b/H2a522bclk1 capture edgesOns 2ns 4ns 6ns 8ns 10ns 12nsFigure 3-4: Hold Path Requirement Example此例中,最终的hod要求时间不是来源于最紧的 setup要求。这是因为所有可能的 setup沿都会被考虑在内,是为了找到最又挑战性的hod要求。正如在 setup分析中,数据要求时间和数据抵达时间是基于以下条件计算的:源时钟发送沿时间.目的时钟抓取沿时间源和目的时钟延时时钟不确定性数据延时.目的寄存器hod时间Data Required Time (hold)= destination clock capture edge timedestination clock path delayclock uncertaintyData Arrival Time (hold)= source clock launch edge timesource clock path delaydatapath delayhold timeHod裕量是要求时间和抵达时间的差值Slack (hold)= Data Arrival Time Data Required Time正的时序裕量意味着即使在最悲观的情况下数据也不会被错误的时钟沿抓取。而负的hold裕量说明抓取的数据错误,而且寄存器可能进入不稳定状态。矫正( recovery和移除( removal分析矫正和移除时序检查与 setup和hold检查相似,区别就是它们应用于异步数据管脚例如set或者clear o对于异步复位的寄存器.矫正时间是异步 reset信号为了锁定新数据已经切换到它的无效状态之后,到下一个有效时钟沿之间的最小时间。移除时间是在异步复位信号安全切换到其无效状态之前,到第一个有效时钟沿之后的最小时间。下面的等式描述了这两种分析的sack是如何计算的Recovery check下面的等式描述了下面如何计算:Data Required Time (recovery ) =destination clock edge start time+ destination clock path delayclock uncertaintyData Arrival Time (recovery )= source clock edge start timesource clock path delaydatapath delayrecovery timeSlack (recovery)= Data Required Time Data Arrival TimeRemoval checkData Required Time (removal)= destination clock edge start timedestination clock path delayclock uncertaintyData Arrival Time (removal)= source clock edge start timesource clock path delay+ datapath delayremoval timeSlack (removal)= Data Arrival Time -Data Required Time正如 setup和hold检査,一个负的 recovery裕量和 remova裕量说明寄存器可能进入亚稳态,并且将未知的电子层带入设计中。定义时钟时钟数字设计中,时钟提供了从寄存器到寄存器之间可靠的传输数据的时间参考。 Vivado ide时序引擎用时钟特征来:计算时钟路径要求以裕量计算的方式报告设计时序裕量更多信息,参考时序分析这章为了得到最精确的最大的时序路径覆盖,时钟必须合理的定义。可以用下面的特征定义时钟:源时钟是指定义在时钟驱动引脚或者时钟树跟端口的时钟时钟沿可以由周期和波形特性的组合描述周期是ns级的,与描述的波形的时间周期相匹配.时钟波形是在时钟周期里,在数ns内时钟上升沿和下降沿绝对时间的列表列表必须包含偶数个值。第一个值一般与第一个上升沿吻合,除非另外指定,默认的时钟占空比是50%相位是ns。如图4-1所示,ck0周期10ns,占空比50%,相位0ns。Ck1周期8ns,占空比75%,相位2ns。CIkO: period 10, waveform =10 5]CIk1: period =8, waveform=2850%50%ClaOns5ns10ns15ns25%75%clkbOns 2ns8ns 10ns16nsFigure 4-1: Clock Waveforms Example传播【 propagated clock)时钟周期和波形特征体现了时钟的理想特征。当时钟进入FPGA器件并且经过时钟树传播时候,时钟沿会有延时而且会随着噪声和硬件特性而改变。这些特点被称为时钟网络延时( latency)和时钟不确定{ uncertainty)时钟不确定性包含下面内容:clock jitterphase error任何额外指定的不确定Vivado会默认的将时钟作为传播时钟,这意味着,这是非理想的时钟。这么做是为了提供包含时钟树插入延时和不确定性的裕量的值。特定硬件资源
- 2021-05-06下载
- 积分:1