alteraFPGA的设计流程-2资料课件_第1页
alteraFPGA的设计流程-2资料课件_第2页
alteraFPGA的设计流程-2资料课件_第3页
alteraFPGA的设计流程-2资料课件_第4页
alteraFPGA的设计流程-2资料课件_第5页
已阅读5页,还剩361页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

贺光辉清华大学电子工程系AlteraFPGA的设计流程1撅畜伦稚肃奖曳芜蜗麻秆柜父珐野丫久誓臻窗粹袋贩迅茬螺谭鲤腮蚀矿蒲alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)贺光辉AlteraFPGA的设计流程1撅畜伦稚肃奖曳芜1目标掌握FPGA的标准设计流程和工具用Modelsim进行功能级仿真并诊断RTLCode用QuartusII做设计综合和布局布线用FPGAMega-functions做设计返标SDF并运行门级的仿真掌握FPGA的时序约束了解FPGA的设计原则2癣邢桥烃拷室扛她厉鲍顺乾枕晓歹畏促蛋晾肃蓖喝酋谅哼型烟演泪畦儒酉alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)目标掌握FPGA的标准设计流程和工具2癣邢桥烃拷室扛她厉鲍顺2提纲FPGA概要FPGA的设计流程用Modelsim进行仿真和调试用QuartusII进行时序分析、综合等FIR滤波器的设计实例3徘漓囱屁孤车瞻钮救退臣肋蜗顽削布氰颖幂圭村刮口谈敌砍浊糠版臂享豢alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)提纲FPGA概要3徘漓囱屁孤车瞻钮救退臣肋蜗顽削布氰颖幂圭村3FPGA概要4茧劝幻其俘矫谗话衔群膨话巨剁熔旨刘坟仔族粥阿常丢买鸭福鲜锰雄胳丛alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)FPGA概要4茧劝幻其俘矫谗话衔群膨话巨剁熔旨刘坟仔族粥阿常4FPGA的优点集成度高,可以替代多至几千块通用IC芯片极大减小电路的面积,降低功耗,提高可靠性具有完善先进的开发工具提供语言、图形等设计方法,十分灵活通过仿真工具来验证设计的正确性可以反复地擦除、编程,方便设计的修改和升级灵活地定义管脚功能,减轻设计工作量,缩短系统开发时间布局布线容易,设计过程相当于只有ASIC设计的前端研发费用低不需要投片费用5哎毡外犯娘捡鸦怖忙荤相城崇骋吐漂铺抓楚捐俗夏贴谴刻弹牧卫钟昌禽寞alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)FPGA的优点集成度高,可以替代多至几千块通用IC芯片5哎毡5FPGA的应用前景通信、控制、数据计算等领域得到了广泛的应用减少电子系统的开发风险和开发成本缩短上市时间(timetomarket)通过在系统编程、远程在线重构等技术降低维护升级成本系统的原型实现+ASIC的原型验证6ASIC常用FPGA进行原型机验证化慌唬瓜艘泊鱼睡遏祷盖啥剔痴阅钉槽痴蚀彰篙曼辉粮仰唁亩阵摩售蔗凭alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)FPGA的应用前景通信、控制、数据计算等领域得到了广泛的应用6CPLD与FPGA的区别CPLDFPGA内部结构Product-termLook-upTable程序存储内部EEPROMSRAM,外挂EEPROM资源类型组合电路资源丰富触发器资源丰富集成度低高使用场合完成控制逻辑能完成比较复杂的算法速度慢快其他资源-EAB(嵌入式逻辑块),锁相环保密性可加密一般不能保密7荆岛拳您株沧者瞻革獭扑硼硕必沤裂伯裙辣摄荔五堵诊葱廓终析媒悄出擂alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)CPLD与FPGA的区别CPLDFPGA内部结构Produc7

CPLD还是FPGA?

复杂组合逻辑:CPLD–PLD分解组合逻辑的功能很强,一个宏单元就可以分解十几个甚至20~30多个组合逻辑输入• 复杂时序逻辑:FPGA–FPGA芯片中包含的LUT和触发器的数量非常多,往往都是成千上万8驹撵册韦贰青隧士即茫涌判库溪枪尚陋聚熏仙兔喳蜘高晒瞅僚危住缆赞瞒alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)

CPLD还是FPGA?

复杂组合逻辑:CPLD8驹撵册8推荐书籍VerilogVerilog数字系统设计教程夏宇闻北京航天航空大学出版社硬件描述语言Verilog刘明业等译清华大学出版社FPGA基于FPGA的嵌入式系统设计任爱锋西安电子科技大学出版社基于FPGA的系统设计(英文版)WayneWolf机械工业出版社IC设计Reusemethodologymanualforsystem-on-a-chipdesigns3rded.MichaelKeating,PierreBricaud.

片上系统:可重用设计方法学沈戈,等译电子工业出版社,2004Writingtestbenches:functionalverificationofHDLmodels/JanickBergeronBoston:KluwerAcademic,c2000

9咯肛隶帽沥灰雷偶毛美风钵搅绅躺农轧球榆棺霄僚炊热颅异番蛙爱躬儡漫alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)推荐书籍Verilog9咯肛隶帽沥灰雷偶毛美风钵搅绅躺农轧球9推荐文章/papers/VerilogCodingStylesForImprovedSimulationEfficiencyStateMachineCodingStylesforSynthesisSynthesisandScriptingTechniquesforDesigningMulti-AsynchronousClockDesignsSynchronousResets?AsynchronousResets?Iamsoconfused!

NonblockingAssignmentsinVerilogSynthesis,CodingStylesThatKill!

10某惹总鲤吁苹坚肢檀恐棋噪胡益楷懂了遇却狸停院铺祭番康忽陵豁钉羞络alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)推荐文章http://www.sunburst-design10FPGA的设计流程11吻羊肖眯县岩休鸽裳藕往右癌伸才枝前陌忍女审吝馋宗敲澜床绊目毅泪缕alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)FPGA的设计流程11吻羊肖眯县岩休鸽裳藕往右癌伸才枝前陌忍11目标完成本单元的学习后你将会列出FPGA设计过程的步骤(以Altera的FPGA为设计例子)用缺省的软件选项来实现一个FPGA的设计QuatursIIModelsim12申周处侗啄沈亩陋待羔总张躲杉软旺坤被掷庞返间飘冀诣巧玛利颜们荔潜alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)目标12申周处侗啄沈亩陋待羔总张躲杉软旺坤被掷庞返间飘冀诣巧12FPGA的设计流程FPGA的设计流程用ModelSim进行仿真用QuartusII进行综合和时序分析用QuartusII进行布局布线、调试和下载13枢绿繁店锣描镜癣坷琉附幂骚僚椰淳森斌损粹软朱惠熔吞皑洛置疙熏顽岳alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)FPGA的设计流程FPGA的设计流程13枢绿繁店锣描镜癣坷琉1314票吹尔秸瑰骨洁烬骂势搐姻丰鼠包烛榆公排凌此彦脑币吗述逞挂即毕惶殴alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)14票吹尔秸瑰骨洁烬骂势搐姻丰鼠包烛榆公排凌此彦脑币吗述逞挂14FPGA设计流程15综合-TranslateDesignintoDeviceSpecificPrimitives-OptimizationtoMeetRequiredArea&PerformanceConstraints-Synplify,QuartusIIDesignSpecification布局布线-MapPrimitivestoSpecificLocationsinsideTargetTechnologywithReferencetoArea&PerformanceConstraintsDesignEntry/RTLCoding-BehavioralorStructuralDescriptionofDesignRTL仿真

-

FunctionalSimulation(Modelsim®,QuartusII)-VerifyLogicModel&DataFlow(NoTimingDelays)

LEM512M4KI/O蚊拟炼搂旷晦翻儡十腊鸡吓楞峡菌眠载汁崩扯抠挪怪讲锨旬才浙乾诲廉倘alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)FPGA设计流程15综合DesignSpecificati15FPGA设计流程16时序分析-VerifyPerformanceSpecificationsWereMet-StaticTimingAnalysis门级仿真-

TimingSimulation-VerifyDesignWillWorkinTargetTechnologyPCBoardSimulation&Test-

SimulateBoardDesign-Program&TestDeviceonBoard-UseSignalTapIIforDebuggingtclk累钨痘蔷脖吴咆碉举霹蠢妊筛碰泵细营乌墟靶幸丑雀二咨撅乳缉岸主袜衡alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)FPGA设计流程16时序分析门级仿真PCBoardSim16系统规划和预算系统功能的总体规划:功能集的定义;端口的定义;模块的基本划分和功能定义:每个模块应该完成的功能;模块之间的接口定义;模块间通讯的问题一定要考虑好,硬件通信的成本一般比较大。17恳猩延佰洽地瑰耘吃肇胞涩相蓉溪檄古茅羚妒铃关射鸦颊巡歪巳俞莎杖盐alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)系统规划和预算系统功能的总体规划:17恳猩延佰洽地瑰耘吃肇胞17设计的整体规划设计规模的初步估计,大致应该选择哪一层次的芯片;设计时序的宏观规划:频率和时钟结构;可能的关键路径,着重优化;模块的进一步细化,考虑可重用性等的规划:可以考虑基本单元,比如加法、乘法器和寄存器等。18设计文档化非常重要哈今诡掷肯痘胎猫芽旱贺空抬哥储蘑予睫君毙刃蟹徘田刚节囤皋顷侗却该alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)设计的整体规划设计规模的初步估计,大致应该选择哪一层次的芯片18设计实现用电路框图或者HDL描述实现自己的设计:图形输入:状态图输入,波形图输入,原理图输入简单的设计可以用电路框图;大型复杂的一般倾向于用HDL描述;HDL描述和计算机编程中的高级语言描述有很大不同,每一个描述都要考虑硬件的实现能力,是不是可以综合的等等,目前HDL语言标准中仍然有不能被综合的语法,这些要尤其注意。19赚窥填甜昏辱委奔久耪缩液裴藏序悠皇浩扮蹬椅脚八铀悟懈蔬拴滑溃潍比alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)设计实现用电路框图或者HDL描述实现自己的设计:19赚窥填甜19功能仿真对逻辑功能进行验证:不考虑时序问题,认为门都是理想门,没有延时;详细一些的可以认为门延时都是一样,而忽略互连线的延时。20RTL代码逻辑仿真器调用模块的行为仿真模型测试数据测试程序(testbench)拥每榆毁汞坛铺酣腺漾避挖伟呆姜如脉年终努堑把治撵依副骇靖抿奇呐涵alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)功能仿真对逻辑功能进行验证:20逻辑仿真器拥每榆毁汞坛铺酣腺20逻辑综合通过映射和优化,把逻辑设计描述转换为和物理实现密切相关的工艺网表:21RTL代码逻辑综合器调用模块的黑盒子接口设置综合目标和约束条件EDIF网表(netlist)HDL网表(netlist)批娃治捶蹭撅却苫删薄邮媚殴吉组瘸阵注万衙庚丛逃珊富床竟邯旅粹贰悍alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)逻辑综合通过映射和优化,把逻辑设计描述转换为和物理实现密切相21逻辑综合将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配而成的过程。22幢渔管砰逻硝践恕趣鱼躺厌若琶萎反腕烈甚必屠提侣我霜钞翟培即戳潮熬alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)逻辑综合将用行为和功能层次表达的电子系统转换为低层次的便于具22布局布线也叫适配将综合生成的网表文件,在FPGA内部进行布局布线的设计,并最终生成用于下载的二进制配置文件;如JEDEC、JAM格式的文件,适配所选定的目标器件必须属于原综合器指定的目标器件系列23逻辑综合器EDIF网表(netlist)FPGA厂家工具调用模块的综合模型设置布局布线约束条件HDL网表(netlist)SDF文件(标准延时格式)下载/编程文件伦端卯句谆帜贪腹础宿播潮借甘镶谜记铬房痹吐讹钳职最供拿喝摸存征占alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)布局布线也叫适配将综合生成的网表文件,在FPGA内部进行布局23时序逼近时序逼近流程是一个推荐的设计方法可以帮助设计满足它们的时序目标24衅步站搽赚糟臃遣膝脉虑产峨坎附软礼背赤膏仙疵略墓厉挣陇哑将弹泽青alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)时序逼近时序逼近流程是一个推荐的设计方法可以帮助设计满足它们24门级仿真25FPGA厂家工具HDL网表(netlist)SDF文件(标准延时格式)逻辑仿真器测试数据FPGA基本单元仿真模型测试程序(testbench)弄护概超殃搐会觅寒渭俱侥陛尹纽西疑崖何保蓄测噪侈扔雨椿柬析爸努顷alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)门级仿真25FPGA厂家工具逻辑仿真器弄护概超殃搐会觅寒渭俱25SDF文件IndustryStandardFormatAutomaticallyGeneratedWhenYouCompileaDesign(OutputFilewithExtension.sdo)ContainTimingInformationDeviceDelaysInterconnectDelaysPortDelaysPathDelaysTimingChecksCanbeBack-annotatedtoaDesignforAccurateModelofDelays26背夫旬倦崇糜奢露懦君饵凶矗橇挛免够叔榷形藩寺嘘东玛崩钨圈抠雾拧稼alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)SDF文件IndustryStandardFormat26物理验证将生成的二进制配置文件下载到FPGA上,进行实际的功能和时序的测试;Altera(.sof文件)Xlinx(.bit文件),由于FPGA常常是作为整个系统一部分,因此还应该将FPGA放到整个系统中进行验证,整个系统工作正常,才算完成了开发过程。27宏济揍染矿惜凰慰椅俞炉咱授舰谬毡唯储渺靛朵挣杏哮焉芝递丢裔嗣控亚alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)物理验证将生成的二进制配置文件下载到FPGA上,进行实际的功2728用ModelSim

仿真折汲捐薛警逆福协亚伐濒箔政峨磋街佑植关千泅它慈语艺劈狸郡瓢郝去肇alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)28用ModelSim

仿真折汲捐薛警逆福协亚伐濒箔政峨磋街28内容ModelSim产品简介ModelSim的用途用ModelSim进行功能仿真用ModelSim进行时序仿真29喧亦曹臃熏卢阀把淳照鼓丢恩颧降乱知繁频戏始祷几严舵杭磁救乡沫邦在alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)内容ModelSim产品简介29喧亦曹臃熏卢阀把淳照鼓丢恩颧29ModelSim产品简介(1)由MentorGraphics公司的子公司ModelTech公司开发工业上最通用的仿真器之一支持Verilog和VHDL仿真OEM版本允许Verilog仿真或者

VHDL仿真ModelSim/SE首要的版本,能混合仿真Verilog和VHDLModelSim/XEOEM版,包含Xilinx公司的库文件ModelSim/AEOEM版,包含Altera公司的库文件30戍订语拄裴御刽霄超宰职乐顽宽梯癸狙饶宠蔷厦紊萌肤众搀岳尚咆疆廉孵alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)ModelSim产品简介(1)由MentorGraphic30ModelSim产品简介(2)ModelSim用户界面31main主窗口:structure结构窗口process处理窗口:Signal&variable信号和变量窗口dataflow数据流窗口source源窗口Wave&list波形和列表窗口娄棋磺芯刨腺傈尘菩药橇预要研浪逸否稚宜仍湘揪钮痴模迄哗极狄冶平鸳alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)ModelSim产品简介(2)ModelSim用户界面3131ModelSim的用途RTL仿真(功能仿真)验证设计HDL的基本逻辑功能,属于最基本的验证仿真速度最快门级仿真采用综合软件综合后生成的门级网表不带有布局布线后产生的时序信息时序仿真(后仿真)在门级仿真的基础上加入时延文件“.sdf”文件速度很慢,需要很长时间32彤涝稗卢越伙鬃捻盎澳峪京篷焕侨淄鸦桥稍岂扑饼衔从哎坊灰冯暇爱粳盼alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)ModelSim的用途RTL仿真(功能仿真)32彤涝稗卢32用ModelSim作功能仿真(1)ModelSim的实现方法:交互式的命令行(Cmd)利用控制台的命令行用户界面(UI)能接受菜单输入和命令行输入批处理模式从DOS或UNIX命令行运行批处理文件33诫般矮匪童猩阅互丸荚光附搓瓤徘盟栽省们啮忆飘嚏忧胞蕾旋管氢确鸟钥alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作功能仿真(1)ModelSim的实现方33用ModelSim作功能仿真(2)基本仿真步骤:1

建立库2映射库到物理目录3编译源代码 -所有的HDL代码必须被编译4启动仿真器5执行仿真34事穆碳瓶骨艘郸橇映蛔棒戍饥狸泻馈卸寐褂隋咖九讳糜垂浇评奸讨扁与狞alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作功能仿真(2)基本仿真步骤:34事穆碳瓶34用ModelSim作功能仿真(3)1 建立库UI)从主菜单里面:

Design->CreateaNewLibraryCmd)从main,记录窗口:

ModelSim>vlib<库名>35班眺品绰闹辐殴韶朋嗽元撂凿舌谬沿颇扣自烛叠淆蹬顾蕴盯袋蝉垢梆巧乙alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作功能仿真(3)1 建立库35班眺品35用ModelSim作功能仿真(4)2 映射库到物理目录UI)从主菜单:

Design->BrowseLibraries

Design->CreateaNewLibraryCmd)从主体的记录窗口:ModelSim>vmap<logical_name><directory_path>36唾刊遥曲造励继佳贸危酗伦较跨偏讳岛涸皑酋业淳片情障九孙条挫衙绅侩alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作功能仿真(4)2 映射库到物理目录36用ModelSim作功能仿真(5)3 编译源代码(Verilog)UI)

Design->CompileCmd)

vlog-work<library_name><file1>.v<file2>.v文件按出现的顺序被编译文件的顺序或者编辑的顺序不重要支持增量式编译(只有被改动的设计单元被编译)缺省编译到work库例如.vlogmy_design.v37裴悉歌那瑞敦贪按咱笑昔苯坡脸捍海丫象荚票做物尸符羡隆笨陛氏灭骄肚alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作功能仿真(5)3 编译源代码(Ve37用ModelSim作功能仿真(6)3编译源代码38点亮一个或多个文件并点击Compile钱吻凯勇曹畴闯墒吠累秃孜划割插燕忻阂鹃妻瞳涨垢奶谣黍右式陡捣豫豢alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作功能仿真(6)3编译源代码38点38用ModelSim作功能仿真(7)4 启动仿真器UI)

Design->LoadNewDesign

Cmd)

vsim-lib<library_name><top_level_design>VHDLvsimtop_entitytop_architectureVerilogvsimtop_level39掀足摘睬隅榆街海辱郑颤匣铁粳衫外雄瑞宏蔫指之散渍砖券彻喉肉饼旺握alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作功能仿真(7)4 启动仿真器39掀39用ModelSim作功能仿真(8)4 启动仿真器40选择库选择顶级module或entity/architecture安秀智物勾岔败舍诅翟特仍眷怪鸵雹们邓负勺疥贼甘旋擦谤械焉呛疆烦炽alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作功能仿真(8)4 启动仿真器4040用ModelSim作功能仿真(9)5 执行仿真UI)

Run

CMD)

run<time_step><time_units>按timesteps指定的时间长度执行仿真41叮劫牟勉对给虽谨案钠末饭沏银晕喇顺滩闯皿医匣镑悟丈跌蒜法穴膘颊线alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作功能仿真(9)5 执行仿真41叮劫4142用ModelSim作功能仿真(10)5 执行仿真(UI)选择timesteps数量就可以执行仿真Restart–重装任何已改动的设计元素并把仿真时间设为零COM)restart掸雇隘徐诬诺槛管筑跋酵漫败荆多平默爹嘶谊壤鼎尔霄亚芽萍歼雀旅详施alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)42用ModelSim作功能仿真(10)5 执行仿真(4243用ModelSim作功能仿真(11)5 执行仿真----run命令举例run1000- 从当前位置运行仿真1000timestepsrun2500ns- 从当前位置运行仿真2500nsrun@3000- 运行仿真到timestep3000卜吮辖粥档摇计靴沂锋逊投贤缴邢纂帅昨嘿涤卤防谰酱狼穆趋侯锰拷忠臆alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)43用ModelSim作功能仿真(11)5 执行仿真-4344用ModelSim作功能仿真(12)5 执行仿真----仿真器激励测试台- Verilog或VHDL代码- 非常复杂的仿真(交互式仿真、数据量大的仿真)force命令- 简单的模块仿真- 直接从命令控制台输入- .DO文件(宏文件)工几厉细歼晦睬形淡扒踪洪携漓割气颊茨砖舷晒摈少烯甚奉乃寿险凉凝毕alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)44用ModelSim作功能仿真(12)5 执行仿真-4445用ModelSim作功能仿真(13)5 执行仿真----仿真器激励.do文件自动完成仿真步骤的宏文件库设置编译仿真强制仿真激励能在所有的ModelSim模式里被调用UI)

Macro->ExecuteCOM)

do<filename>.do能调用其他的DO文件陈较际茫窖武强荡坷犊社莉韵鞘室综乖押夯洗蜡摸锁八蓝颖雁伊胀庆靴绢alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)45用ModelSim作功能仿真(13)5 执行仿真-45addwave/clkaddwave/clraddwave/loadaddwave-hex/dataaddwave/qforce/clk00,150-repeat100force/clr00,1100run500force/load10,0100force/data16#A50force/clk00,150-repeat100run100046用ModelSim作功能仿真(14)5 执行仿真----仿真器激励.do文件举例vlibworkvcomcounter.vhdvsimcounterview*addwave/*addlist/*dorun.docdc:\mydirvlibworkvcomcounter.vhdvsimcounterview*dostimulus.domy_sim.dostimulus.do努氓抿摘迄韵呵伏卯吧身蜒讼诫它久限抡聋终魂若新灿慧尖谤枫稽峻女镭alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)addwave/clk46用ModelSim作功能仿真(4647用ModelSim作功能仿真(15)5 执行仿真----仿真器激励测试台文件(testbench)针对复杂的仿真在测试台文件中将设计模块实例化 --将测试台文件置于TOP层,调用设计模块

--在测试台文件中加载时钟激励信号,以及给部分信号赋初值测试台文件的写法与设计模块写法有区别 --一些符合语法但又无法被综合的语句(根据具体的综合工具而定),可以在测试台文件中使用朴腾哲乓吠凋根汤离魔枢攫描和塞隘浚己侍寝畴脑芯穆海歧闪挣夫挡茎缘alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)47用ModelSim作功能仿真(15)5 执行仿真-47用ModelSim作功能仿真(总结)基本仿真步骤:1

建立库(AlteraMegaFunction库)2映射库到物理目录3编译源代码 -所有的HDL代码必须被编译4启动仿真器5执行仿真48#Createlibaryvlibwork#Compilethealtera_mflibraryvlogd:/quartus51/eda/sim_lib/altera_mf.v#Createaltera_mflibraryandmapittoworkexecvmapaltera_mfwork#sourcefiles#FIFOvlog../core/INFIFO.v#top_levelvlog../src/chip_top.vvlog../src/tb_top.v#simulationandtestbenchesvsim-Lworktb_topdowave_tb_top.dorun5ms慢帽壬他否竹鹅卑滚缸亢膜橙酬角互医稠牙皖节崎晶湍宣仗牙胁滤炒锦申alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作功能仿真(总结)基本仿真步骤:48#C48用ModelSim作时序仿真(1)时序仿真的含义:布局布线后进行的后仿真包含有延时信息仿真结果可能与功能仿真不相同除功能仿真时需要的文件以外,还需要网表文件(如time_sim.vhd或time_sim.v)和包含延时信息的文件(time_sim.sdf文件)在Quartus中是.vo和.sdo文件49趋嘴潭仅杜闺替剩输置马敢闽灸阂盟珠肥初寿龋皇常落膝袍展奸烫眷尹瘦alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作时序仿真(1)时序仿真的含义:49趋嘴潭49用ModelSim作时序仿真(2)指定SDF文件50指定SDF文件使用定时值的等级的类型(如果不是顶级)噪轩频臻泵嗡盆撂淋谴醉匿氯哇膨洼据沤赣吨撮侵鸟国滨痉渴圣华颅每贡alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作时序仿真(2)指定SDF文件50指定S50用ModelSim作时序仿真(3)vsim命令的参数参数-t<time_unit>指定仿真的时间分辨率单位可以是{fs,ps,ns,ms,sec,min,hr}如果用了Verilog的‘timescale指令,将使用整个设计中的最小的时间精度可选项(缺省是ns)-sdfmin|-sdftyp|-sdfmax<instance>=<sdf_filename>注释SDF文件可选项使用实例名也是可选项;如果没有使用,SDF用于顶级51色丑宫乎垄炊机岗逢禽奈瑚滋豹菠酬牌掌温迢商厦缴慰域浙妥石寻渔钞讶alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作时序仿真(3)vsim命令的参数51色51用ModelSim作时序仿真(总结)基本仿真步骤:建立库编译Altera器件库3映射库到物理目录4编译综合后网表5加入SDF文件4启动仿真器5执行仿真52#scriptforModelsimposttimingsimulationofAlteracyclonedevice#byWayne#setyourPCenvironmentsetmodelsim_homed:/edatools/Modeltech_6.1dsetquartus_homed:/quartus51#buildworklibvlibwork#addcyclonedevicelibanditssimmodelsvlog-reportprogress300-workcyclone$quartus_home/eda/sim_lib/cyclone_atoms.v程序接下页站梭绊杨册哎唆侵外赋衬丙烷炮慢邢嚷粒腕绩爆丧欺蔓强芭蛰皆哄蹈憾晶alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)用ModelSim作时序仿真(总结)基本仿真步骤:52#s5253vmapcyclonework#postsimulationinmodelsimforAlteradevicessetdesign_namechip_topsethome../impvlog../src/tb_top.vvlog../imp/simulation/modelsim/$design_name.vovsim-sdftyp/tb_top/UUT=chip_top_v.sdo-tpswork.tb_topdowave.dorun500us程序接上页友晾猎叙楷尔威揩钾碑灼泣滨微挺徐沃鼎番膜寞组妹泻饯锗反程痔荚享蠢alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)53vmapcyclonework程序接上页友晾猎叙楷尔5354用QuartusII

进行综合、时序分析和布局布线

济矾芽詹楚深犁眠诚殊疮日娩村宣贯鞭墨掇立磋浅乒贝州录登汞屋双复精alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)54用QuartusII进行综合、时序分析和布局布线

济54设计流程CreateaNewQuartusIIProjectCompileaDesignintoanFPGALocateResultingCompilationInformationAssignDesignConstraints(Timing&Pin)PerformTimingAnalysis&ObtainResultsConfigureanFPGA55晰翔鼓萌策橇迫状术伪铭欺谅疽拙硝课鳞没重单刮恤抢仕量虏褥刊紧包龄alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)设计流程CreateaNewQuartusIIPr55创建一个新的工程56意乍琢团瞻笔抬杏危右油麓臆缚蜘票妊痊找炯胎考侗纯倦叠出哑规嘎等琉alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)创建一个新的工程56意乍琢团瞻笔抬杏危右油麓臆缚蜘票妊痊找炯56添加文件57球巡锣榷守叙舶册鹏职肿斥说映肌到日袒谨疫扶叫待绩艘懈粱英袭酶锨赃alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)添加文件57球巡锣榷守叙舶册鹏职肿斥说映肌到日袒谨疫扶叫待绩57器件选择58ChooseDeviceFamily列寡麻节敖抓褐倾禹碾肤铱梳么累娱综操挽撒返巩硷蔚脐君荧迷慎议涵菲alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)器件选择58ChooseDeviceFamily列寡麻节58管脚分配Assignmentsmenu->AssignmentEditor->Pins59链藏凝蜘焚塞输帮栈瘦呼郁堆诸震丧鳖酞习讨泻霞靡峪樱瑶迷涤桨俐碑盗alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)管脚分配Assignmentsmenu->Assignme59PinPlanner窗口60UnassignedPinsListPackageView(ToporBottom)AssignedPinsList种诊傍茶譬选池枯桑狰拜莆吮乌弯胚邓鉴钎整吱僚汰伶详尽复娇八殿渡梆alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)PinPlanner窗口60UnassignedPin60Altera的IP工具IP的概念:

用于ASIC、ASSP、PLD等芯片中预先设计好的常用但较复杂的电路功能模块,经过严格测试和优化,如FIR滤波器、SDRAM控制器、PCI接口等。使用IP的优势:提高设计性能降低开发成本缩短设计周期设计灵活性强仿真方便61瓢逸核弊雏著赴握亭邀疽流逮债荧杏沧言弘驴完愿呵达素超去盲铁呕捧她alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)Altera的IP工具IP的概念:61瓢逸核弊雏著赴握亭邀疽6162IP的分类:软IP、固IP和硬IPMegafunctions/LPM(免费的宏功能模块):如算术组件、门、I/O组件、存储器、存储组件MegaCore(需要授权的):如数字信号处理类、通信类、接口和外设类、微处理器类Altera的IP工具度臆降基蒲棺瘸抒萤陆搬闸踌呀翰巷厨筹磐奶划农絮裂伙渴聊滞灭庞傀伺alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)62IP的分类:Altera的IP工具度臆降基蒲棺瘸抒萤陆搬62IP使用的步骤下载所要的MegaCore通过MegaWizard的界面打开IP核的统一界面IPToolbench定制要生成的IP的参数产生IP的封装和网表文件,以及功能模型对IP的RTL模型做功能仿真将IP的封装和网表文件放在工程中,并实现设计购买IP许可证63唐眠搭度恰绑叼赋究叭下裤舟结拯辰炉厩篱捞庶胰鲸捷闪鼎赘嚷瓣宋猛蜜alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)IP使用的步骤下载所要的MegaCore63唐眠搭度恰绑叼赋63MegaWizardPlug-InManagerEasesImplementationofMegafunctions&IP64ToolsMegaWizardPlug-InManager珍笼码腺栽雾狞紧汇必孝疾脾儡缠撞枚棉柿恶浦妒年遥领逢刘婿糠撂刊劈alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)MegaWizardPlug-InManagerEase64MegaWizard示例65Multiply-AddPLLLocateDocumentationinQuartusIIHelportheWeb圃胶冕国挪倍殷书赌泛统呜雷喝糟缕辈饮仑盆品垢易币七肌止姑襄阴另憋alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)MegaWizard示例65Multiply-AddPL65时序分析66誊丰扳贾焉诵盅惋佩迅客陵中峰洼借盖哦柯捏炬队其篮注锯株练非拖淖巡alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)时序分析66誊丰扳贾焉诵盅惋佩迅客陵中峰洼借盖哦柯捏炬队其篮66TimingAssignments

5typesoftimingassignmentsexist:–

fmax,tsu,thold,tco,tpdThesetimingassignmentscanbeassignedgloballyorindividually67带荚淄帘更赞减阜傣弯卉仙纸饼散介渣淋礼幌遣谩谊占废口熏酝刁青绿糯alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)TimingAssignments

5typesof6768Register的参数DClkQDQClktc-qtholdTtsutsu:建立时间,在时钟有效沿到来之前寄存器数据输入应保持稳定的时间,它间接约束了组合逻辑的最大延时thold:保持时间,在寄存器数据输入的引脚的数据在系统有效时钟沿到来后需要保持稳定的时间,它间接约束了组合逻辑的最小延时tc-q:寄存器从有效时钟沿到来到输出有效的最大时间违反建立或保持时间,都会造成触发器工作异常,产生Metastability。为了可靠工作,在建立时间开始到保持时间为止的这段时间内,触发器的输入端信号不应发生变化。拳涂伦迅煞旦蛾撇炬袭孺躁阐糜黑鲍珊挎壁雄十鬃组悸寂间饲求耕盒郴注alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)68Register的参数DClkQDQClktc-qtho6869ClockSkew在同一个时钟域或者两个时钟域之间时钟信号到达寄存器的最大时间差别产生原因主要有:时钟源到达各端点的路径长度不同,各端点负载不同,时钟网络中插入的缓冲器不同等在两个点之间,可以大体认为Skew是固定的值注意:ClockSkew影响的是时钟的到达时间不同,也就是时钟发生相移,并不影响时钟的周期宽度涪麦理剁园猛尉懈森阁唤练诵脓揪拍尔葵臼中拐幸摘吊丁饮勃迢堑孵花蕾alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)69ClockSkew在同一个时钟域或者两个时钟域之间时钟6970ClockSkew(2)瑟茧燥哟蜂涉啮钾寇粤林鸡瓜刊功腐冻语侠捉颠狭慢类再霓鼎鼎瞎湃洛脂alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)70ClockSkew(2)瑟茧燥哟蜂涉啮钾寇粤林鸡瓜刊功7071时钟参数满足的条件时钟周期应大于寄存器延时、组合逻辑延时、和目标寄存器建立时间的和本寄存器有效输出通过组合逻辑的延时应该大于目的寄存器的保持时间要求奈墙巴悉韶戈宵歉斥馆耪砖憋币险移踢妖阔噬形白衙喉始借镁曲梦翰梁供alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)71时钟参数满足的条件时钟周期应大于寄存器延时、组合逻辑延时71FmaxAssignment72填超第腰表靴徘灌品倚斧云掺明彝耙锅遥化甩谅锑掠扩怪刹犁亿葬狈戴抵alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)FmaxAssignment72填超第腰表靴徘灌品倚斧云掺72FmaxAssignment:Single/MultipleClock73芯汹诺壳澎柴慷沼闷嘶秧次哺促此昭汞爷碗牛返邵恕糕窝弯桂烃缚萍措华alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)FmaxAssignment:Single/Multip73ClockSetup(fmax)Worst-CaseClockFrequency74ClockPeriod =Clock-to-Out+DataDelay+SetupTime-ClockSkew =tco+B+tsu-(E-C)

fmax =1/ClockPeriodBCtcotsuEClockPeriod矣筛鹃锈肄驰断膝比沿檀慌馏掌构张栽委葵烬苔邑桐唁判灌浙哭悍型亚沦alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)ClockSetup(fmax)Worst-CaseC74ClockSetup(fmax)Tables75SelectClockSetupWorstfmaxFmaxValuesAreListedinAscendingOrder;WorstFmaxIsListedontheTopSource,DestinationRegisters&AssociatedFmaxValues蹄疼洼狮瞅虞洁闪狈义案恋氮赢恶督呛窑砍罪驯签宴甲峭霖佩峭合密我缘alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)ClockSetup(fmax)Tables75Sel75fmaxAnalysisDetails76DataDelay(B)SourceRegisterClockDelay(C)SetupTime(tsu)BCtcotsuEClockPeriodDestinationRegisterClockDelay(E)ClocktoOutput(tco)10.384ns+7.445ns+0.180ns-0.000ns=124.86MHzMessagesWindow(SystemTab)inQuartusII套波匈逐湖燥陕科暇裴琳悟势昔汤唇鼓靖硕牺淖接宴痒川阉锥席胁狼学调alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)fmaxAnalysisDetails76DataDe76I/OAssignments:Tsu,Tco77屹呛篆陶耪娥阜摈起陷绵肌堑裂崖邓氯识墩整炯匀躇罩滴隐晃脸贺髓滩捅alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)I/OAssignments:77屹呛篆陶耪娥阜摈77TimingAssignmentsWhatcanbetaggedwithatimingassignments?Registers(all)ClockPins(all)InputPins(tsu,th)OutputPins(tco)BidirectionalPins(all)78冷快琼巍灶撼熙蛰或苛寞饵资种颖翰奇奥怒拙甜乘付撩胜嘛心矢粕蝎也靛alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)TimingAssignmentsWhatcanbe78TimingSettings

EasywaytoentertimingassignmentsConsolidatesalltimingassignmentsinone menu

–IndividualclocksettingsORoverallcircuitfrequency

–Defaultsystemtiming

•tsu

•th

•tco

•tpd

–Defaultexternalinput/outputdelays

–Enable/Disabletiminganalysisduring compilation

–Timingdrivencompilation79屁桑又疮鹰蛇充舞弊责躺坎茶蝎俭乱塘迎乔茅站骤巍讹师澈换杯趟汁牺选alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)TimingSettings

Easywaytoen79ReportingTimingResultsTiminginformationispartoftheCompilationReport

–SummaryTimingAnalyses

–fmax(notincl.delaysto/frompins)orfmax(incl.delaysto/frompins)

–Register-to-RegisterTable

–tsu(InputSetupTimes)

–th(InputHoldTimes)

–tco(ClocktoOutDelays)

–tpd(PintoPinDelays)•Alltimingresultsarereportedhere80签斟熊钝搭耘蜜力屈粮铣菏奸拉晾鉴满忿彩挨铀端据嫂宾旗刨改研昆袱烽alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)ReportingTimingResultsTiming80I/O建立时间和保持时间81ClockdelaytsuthDatadelaytsu=datadelay-clockdelay+intrinsictsuintrinsictsu&holdth=clockdelay-datadelay+intrinsicth凝砸灵篆智纠膘侧蠢从弦框晚姓胞疡号帜太矢郧旬跪饯伶镇辙坐铅羡稚待alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)I/O建立时间和保持时间81Clockdelaytsu81I/OClock-to-OutputAnalysis(tco)82DatadelaytcoClockdelayclockdelay+intrinsictco+datadelay=tcointrinsictco切草意帧笋饶矢审麻祷丙折傈线剑晃或棋镶峰哮法辟悸栗挡火遮撬贵约兽alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)I/OClock-to-OutputAnalysis(8283TimeSlackslack=期望数据到达时间–数据实际到达时间Slack为正,表示数据提前到达,此时组合逻辑延迟满足条件,Register有足够的建立时间;Slack为负,表示数据比预期的时间晚到达,此时显然不满足Register的建立时间,不满足约束;骗稠缩酬瞧毛橡庆噬股荧肥扎读戮形阂孽南室忻酋斤彦疑赶卜问洲渔玩蓟alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)83TimeSlackslack=期望数据到达时间–83SlackEquations(Setup)84Slack=LargestRequiredTime-LongestActualTimeRequiredTime=ClockSetup

-tco-tsu+(clk’-clk)ActualTime=DataDelaylaunchedgeclkclk’setuplatchedgeClockSetup*clktcotsuCombinatorialLogicclk’Register1Register2data

delay洽夜结急武妊幕敞慈茫晨痢唯震萨惜本祭子辣单土晒赃祈瓤杭犯丘母退祁alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)SlackEquations(Setup)84Slack84SlackEquations(Hold)85launchedgeclkholdlatchedgeClockHold*clktcothCombinatorialLogicclk’Register1Register2datadelaySlack=ShortestActualTime-SmallestRequiredTimeActualTime=DataDelayRequiredTime=

ClockHold

-tco+th+(clk’-clk)clk’赵麓骤丛敖豫签肯痘浑妓戌掸苇帛拎悯括箱天抬贱凯氏垄程蛾奈弯蝉包民alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)SlackEquations(Hold)85launch8586inoutclkreg1reg2clk’clkclk’slack=p2prequired–p2pdelayp2pp2prequired=setuprelationship+clockskew–µtCO-µtSUsetuprelationship=latchedge–launchedgeclockskew=clk’–clklaunchlatchSimpleRegistertoRegister示例臃氢私淌俏掣雕峻栏胜颤拟盔涧伸襄扑朝汽邪驾俞斯紧涧描妓霄腕兼周详alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)86inoutclkreg1reg2clk’clkclk’s8687inoutclkreg1reg2clk’slack=p2prequired–p2pdelayp2pp2prequired=setuprelationship+clockskew–µtCO–µtSU

setuprelationship=latchedge–launchedge =5.0–0.0 =5.0

clockskew=clk’–clk

2.2660.110.082µtcoµtsu0.0820.11=2.521-2.993=5.0+(-0.472)–0.11–0.082=4.336–2.266=-0.472=4.336µtcoµtsu=2.072.9932.5212.9932.521SimpleRegistertoRegister示例(con)肆蒜蔚了料腿稠赚撬妥激阔时类狮粪要傲擒船嗓巾湍续影笛缘罗罩辟需下alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)87inoutclkreg1reg2clk’slack=87InputMinimumDelayMinimumDelayfromExternalDevicetoAlteraI/ORepresentsExternalDevicetco+PCBDelay+PCBClockSkewConstrainsRegisteredInputPath(th)88AtcothAlteraDeviceExternalDevicePCBDelaythA

InputMinimumDelayInputMinimumDelaythACLKCLK讥讫休汽节栈藤炕疚舷锗宪陕馈茄简裹尼酗炊炔芳翰绽风咕旨累壶剿乖卷alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)InputMinimumDelayMinimumDel88OutputMaximumDelayMaximumDelayfromAlteraI/OtoExternalDeviceRepresentsExternalDevicetsu+PCBDelay+PCBClockSkewConstrainsRegisteredOutputPath(Max.tco)89BtcotsuAlteraDeviceExternalDevicePCBDelaytcoB

tCLK-OutputMaximumDelaytcoOutputMaximumDelayCLKCLK花辨斥醚菊溢梦咎扩叙湖愈契荔泥皑心安冻刮诲制类惦企碑萄沤法凡毁扳alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)OutputMaximumDelayMaximumDe89OutputMinimumDelayMinimumDelayfromAlteraI/OtoExternalDeviceRepresentsExternalDeviceth-PCBBoardDelayConstrainsRegisteredOutputPath(Min.tco)90BtcothAlteraDeviceExternalDeviceBoardDelaytcoB

≥OutputMinimumDelaytcoOutputMaximumDelayCLKCLK旗袁帽嫉牙朴毕朋污价神揪雁皑唉粪坦眼巍计祈寄政横啪肋慌测邻婚抖戈alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)OutputMinimumDelayMinimumDe90ExampleInputMaximumDelay91Notice:InputPind(6)&d(3)TimingInformationIsIncludedwithClockSetup(fmax)AnalysisInputDelayHasBeenAddedtoListPathCalculationInputMaximumDelay(d)=4ns

掉嘘肾佃荐诧泣撅辆赔梢坷府翻陀沽茄攻吠避忿灸降堤菏今诵帝奈切威遍alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)ExampleInputMaximumDelay91N91CompilinginQuartus92算工途数乎凝丁坐颁蛹改嫂口赔佑圆韶塑砖往狭庆桩滦觅谩存凭伯虱嘻虫alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)CompilinginQuartus92算工途数乎凝丁坐92CompilinginQuartus(Start)93拙咀济昨柞尿橡扯钉坊滨臭蹦起霖额吼羞萧翻茸鞍光牡比揍雾栓雇砒挟闷alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)CompilinginQuartus(Start)9393CompilinginQuartus

94吾鳃笔梁学颂喻煽伊孝仁彩舵澜焦教篡空痴焚奏逾档房训蔡教峡杀谢爱肇alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)CompilinginQuartus

94吾鳃笔梁学颂喻94Done!95偷靖农咕党滨坡鉴农毛蛤摧薛睁析秋霞主淫湘昼籍馏喂殷网薯框充劳独品alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)Done!95偷靖农咕党滨坡鉴农毛蛤摧薛睁析秋霞主淫湘昼籍馏95DownloadBitFile96瘸椿琅藏绘邓讫更歼掺遁饵冤协趴禽法牡挝彝携渗戍极纳断贿滁悲揪气昌alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)DownloadBitFile96瘸椿琅藏绘邓讫更歼掺遁96DownloadBitFileintoFPGA97断雇漫割凶场胺稽毋瑟定疽霸汾从则侈伪孙恃咐蒜千蛛仪膨贱穴典脉匈坦alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)DownloadBitFileintoFPGA97断97AlteraFPGA配置列表98配置模式典型应用被动串行模式(PS)运用增强配置芯片(EPC16,EPC8或EPC4)EPC1,EPC2,EPC1441,串行同步微处理器,USB接口下载电缆,MasterBlasterTM通信电缆,ByteBlasterTMII并口下载电缆或ByteBlasterMVTM并口下载电缆。主动串行模式(AS)应用串行配置芯片EPCS1,EPCS4等被动并行同步模式(PPS)并行同步微处理器配置快速被动并行模式(FPP)增强型配置芯片或8位同步并行微处理器速度为PPS模式的8倍。被动并行异步模式(PPA)采用异步微处理器,这种模式下微处理器对于目标芯片如同一个存储器。被动串行异步模式(PSA)串行异步处理器JTAG模式根据IEEEStd.1149.1(JTAG)引脚标准说悦卢圾搏禹窟狰瞧吴驻飘厌丙炬腾壬澳敦煎蹿胁并掏嫌记癣狠砷烹尘凭alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)AlteraFPGA配置列表98配置模式典型应用被动串行模98DebugwithSignalTapII99亢氟芍晓长悄鼓稠子奉谰钨赌团灿身毕响戌写慰巾留阑虽醒存萤秘虾雅沼alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)Debugwith99亢氟芍晓长悄鼓稠子奉谰钨赌团灿身毕99QuartusII嵌入式逻辑分析仪特点100特点优点可以灵活的改变缓冲器模式在循环模式或间隔模式采样时,使每次不同的触发均能采到更加精确的数据。每个器件最高支持1024个通道可以支持多个采用通道和很宽的总线模式采样。每个器件支持128K采样存储使每个通道得到更多的采样数据。采样时钟最高可达270MHz可以采集速率更高的数据。资源使用的评价者可以评估逻辑或存储器件的资源使用情况。不需要额外费用SignalTapIIlogicAnalyzer是QuartusII免费提供的。可对一个器件进行多重逻辑分析可以从一个复杂的时钟信号中分析出想要得到的数据通过一个JTAG接口可对多个器件进行多重的逻辑分析使设计者可以通过一个JTAG接口同步得到多个芯片的数据对每个信号均有10种触发模式可以捕捉到更加复杂的数据信号,更加景区的找到问题的所在。增加的编译可以在综合编译之前对逻辑分析仪进行修改。块芥呛椎妄勃做豆炙死同私肉级终久侩类凄巳套苇穗丛烈黄速谢常刁珠撼alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)QuartusII嵌入式逻辑分析仪特点100特点优点可以100FIR滤波器设计实例101肉坛盼探位犬皆身氰仙狐赎之窃彭龙甲狞谗谤选汕总找烤坏诛辙谤概盈矽alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)FIR滤波器设计实例101肉坛盼探位犬皆身氰仙狐赎之窃彭龙甲101一个综合的例子FIR滤波器的设计Modelsim的使用QuartusII的使用宏功能模块的使用仿真、综合等过程及报告的查看102艳谚鞭梧务雀焦辖抚兜亩姿沈脂粟策光评寻面期卢贯艰恩讽坝磊拭窗誊篆alteraFPGA的设计流程(2)alteraFPGA的设计流程(2)一个综合的例子FIR滤波器的设计102艳谚鞭梧务雀焦辖抚兜亩102设计要求设计一个14阶FIR滤波器,已给出滤波器系数,要求用Verilog/VHDL实现该滤波器,并且选用Altera的Stratix或StratixII器件。要求充分利用AlteraStratix/StratixII的器件的DSPBLOCK资源。要求每一级都一级流水线(pipeline)。能够利用Altera的megafunction。能够在Modelsim下进行仿真。选用EP2S60F484C3器件。Fm

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论