tag 标签: vivado

相关帖子
相关博文
  • 热度 17
    2021-7-6 15:40
    3693 次阅读|
    0 个评论
    1.Report Clock Networks report_clock_networks -name {network_1} 2.分析设计中逻辑级数的分布 report_design_analysis -logic_level_distribution -logic_level_dist_paths 5000 -name design_analysis_prePlace 3.筛选"clk"时钟域逻辑级数在 之间的c条路径 report_timing -name longPaths -of_objects -max_paths c = a && LOGIC_LEVELS<= b }] 4.扇出分析 扇出大于a的b条路经 report_high_fanout_nets -fanout_greater_than a -max_nets b 5. freq & level 125M以下:13级 125-250: 6级 250-350: 5级 350-400: 4级 400以上: 3级 6. ERROR : Finished Running Vector-less Activity Propagation 604 INFO: Applying IDT optimizations ... 605 INFO: Applying ODC optimizations ... 606 ERROR: Unhandled exception occurred during power optimization. 607 ERROR: Power Optimization encountered an error. 解决方法:opt_design -directive NoBramPowerOpt
  • 热度 2
    2018-9-29 21:12
    10938 次阅读|
    0 个评论
    跟着实验指导书,难得的又遇到问题了,在最后生成Bitstream的时候出错了,无法生成Bitstream。 报错信息如下 Unspecified I / O Standard : 4 out of 134 logical ports use I / O standard ( IOSTANDARD ) value 'DEFAULT' , instead of a user assigned specific value . This may cause I / O contention or incompatibility with the board power or connectivity affecting performance , signal integrity or in extreme cases cause damage to the device or the components to which it is connected . To correct this violation , specify all I / O standards . This design will fail to generate a bitstream unless all logical ports have a user specified I / O standard value defined . To allow bitstream creation with unspecified I / O standard values ( not recommended ), use this command : set_property SEVERITY { Warning } . NOTE : When using the Vivado Runs infrastructure ( e . g . launch_runs Tcl command ), add this command to a . tcl file and add that file as a pre - hook for write_bitstream step for the implementation run . Problem ports : LEDs_out_0 . Unconstrained Logical Port : 4 out of 134 logical ports have no user assigned specific location constraint ( LOC ). ... Problem ports : LEDs_out_0 . 在我绝望的时候在网上搜到了解决方法,问题还是出在了XDC文件上 我是直接复制的实验指导书中的XDC文件中的内容,但是在生成ked_controller这个ip核的port的时候,生成的port的名字和实验中的并不一样。 xdc文件内容如下: set_property PACKAGE_PIN M14 }] set_property IOSTANDARD LVCMOS33 }] set_property PACKAGE_PIN M15 }] set_property IOSTANDARD LVCMOS33 }] set_property PACKAGE_PIN G14 }] set_property IOSTANDARD LVCMOS33 }] set_property PACKAGE_PIN D18 }] set_property IOSTANDARD LVCMOS33 }] 注意下我的DRC报错信息就会发现一个重要的信息 Problem ports : LEDs_out_0 这报错的port似乎有点不对劲,和约束文件中声明的port不一样,这也是为什么报错说LEDs out 0这个port unspecified的原因,因为你XDC中声明的是LEDs_out啊。 解决方法很简单,把这个port的名字改了就好,更改方法如图。 - END - 个人博客
  • 热度 18
    2016-1-23 19:22
    1729 次阅读|
    1 个评论
    【声明】纯属原创,未经允许,禁止转载。       如果修改嵌入式程序后,想重新下载,首先需要断开当前的链接,操作如下: (1)点击“Teminate”工具图标,此时Console不再更新显示串口输出数据。     通过启动其他的串口助手软件,该串口能够打开,但是其他串口助手软件上也不显示数据,说明点击“Teminate”按钮后,开发板上的嵌入式系统暂停运行了。   (2)点击“Remove Lainch”或者“Remove All Terminated Launches”工具图标,能够断开SDK与开发板的链接,为下一次更新嵌入式软件做好准备。。   (3)直接点击Run工具图标,或则在下拉列表中选择相应的配置设定,就可以下载新的嵌入式程序了。       这样,只需要下载嵌入式程序,而不需要重新下载FPGA硬件配置,十分便于修改嵌入式程序。 【后来发现的情况】:     要想重新下载嵌入式程序,只需要执行完Terminate操作即可,不必要一定执行“Remove Lainch”或者“Remove All Terminated Launches”操作。   【----- The End --------】     至此,第一个示例工程到此完成。     对word文档编了个vba的程序统计了一下,总共176张贴图。够诚意吧。 开始两个示例还是学习阶段。从第三个示例开始,将会是我自己全新琢磨的额,至少我在网上是没有搜索到相关资料,敬请期待!        【预告】下一个示例工程,学习用户如何创建字节的IP核,并能够与Zynq中的ARM Core进行数据交互。  
  • 热度 17
    2016-1-23 18:06
    1617 次阅读|
    0 个评论
    【声明】纯属原创,未经允许,禁止转载。   4.5 下板测试     硬件和嵌入式软件都设计完毕,并且编译成功之后,就需要下板测试了。     首先保证硬件电路连接正确,下载器驱动安装正确,开发板上电。     Vivado + SDK + Zynq环境中的下载方式与XPS + SDK + VII Pro中的下载方式不同,在VII Pro时代,需要将保存在Block RAM中的嵌入式软件,编译到BitStream文件中,只需要下载一个BitStream文件,则所有的硬件配置和软件程序就都下载到板子里了。     但是在Vivado + SDK + Zynq环境下,软硬件是分开的,需要先下载BitStream文件,构建好SoC硬件系统,再像普通ARM开发一样下载嵌入式软件。     因为前面讲硬件的BitStream文件也导入到SDK中,因此可以在SDK中执行BitStream文件的下载工作。     工作的操作入口可以通过菜单或工具栏,具体如下所示:       但是在工具栏中发现一个按钮,提示显示的是“Scan Repositories”,猜想类似与JTAG链扫描,但是点击完了没有反应,无论是console页面还是terminal页面都看不到反馈的信息。     运行Program FPGA操作之后,显示如下提示对话框,用于选择欲下载的bit文件。如果工程配置没有问题,采用默认的即可。点击“Program”按钮进行下载。       下载嵌入式软件主要工作依赖于Run菜单。其中Run是直接下载嵌入式软件,然后另嵌入式软件直接运行。     也可用工具栏上的按钮。     第一次下载时必须先执行“Run Configurations...”       弹出“Run Configurations”对话框如下所示:       在左侧“Xilinx C/C++ application(GDB)”项目上单击鼠标右键,在弹出菜单中选择New,创建一个新的配置。   (1)“Target Setup”是配置开发板的硬件信息,其中Hardware Platform项和Processor项默认是已经配置好的。一般保持默认即可。     【重点】需要配置Initialization file项,如果不配置该项,将来嵌入式软件下载完后,没法正常进行zynq子系统的初始化,也就没法正常开始运行程序,而且到时候SDK软件还会显示有一个业务正在运行,因为Zynq没有复位,无法接收SDK的任何指令,使得整个开发环境都卡在哪里,只能重新启动SDK。因此切记,一定要配置这里。     点击Initialization files项的Search...按钮。弹出如下对话框,选择“ps7_init.tcl”,点击OK按钮。     如果,在Target Setup页面中下图所示的位置,默认是什么都不选的     如果保持默认,发现下载完后,显示如下错误。表示系统没有激活。     如果此时重新下载,会显示如下异常。       此时整个SDK的开发环境就堵死在那里了,只能关闭SDK软件后,重新再开启SDK软件,才能重新下载程序。     为了保证Application下载后能够正常激活,需要配置成如下情况。       后来经过测试,这个配置只有在bitStream配置之后的第一次下载Application是才需要配置,如果不在更新下载BitStream文件,只是不断更新下载Application时,后面几次的Application下载并不需要必须勾选这两项,但是为了同意建议,勾选这两项成为必选项。       (2)“Application”是配置欲下载的嵌入式软件信息,默认是空的。需要自行配制。     点击Project Name项后方的“Browse...”按钮,弹出如下对话框。     选择需要下载的嵌入式用户工程,可以看到,可以编写多个用户工程,在这里选择具体是哪个工程会下载到开发板上。     双击选中的工程,或选中工程后,点击OK退出Project Selection对话框。     可以看到“Application”页面内会自动配置好.elf文件。点击“Apply”按钮保存配置。   (3)“STDIO Connection”页面,用于配置嵌入式软件中stdio.c文件中定义的数据输入输出的物理通道,在我们设计的系统中,可以用的只有串口,因此可以加你给串口配置给STDIO。勾选“Connect STDIO to Console”,顾名思义,就可以利用SDK中的Console窗口显示开发板通过串口发送来的信息,不用再额外开一个串口助手软件了。     其中Port需要根据电脑的配置查看USB转串口得到的串口编号。     Baud Rate:是串口波特率,这个9600是在进行Zynq子系统的Block Design设计时设定的。   (4)“Profile Options”和“Common”页面现在还没有深入的认识,暂时不管它们了。     所有配置完毕后,点击“Apply”进行保存。     点击Run开始按照保存的信息向开发板中下载嵌入式程序。       下载成功之后,可以看到SDK的Console页面会切换的一个新的回话,点击Console页面右侧的工具按钮,会显示当前工程中已经打开了多少个Console会话窗口。       在当前的Console会话的名称为:     New_configuration     在该窗口下能够看到开发板通过串口输出的数据。  
  • 热度 20
    2016-1-23 17:50
    1259 次阅读|
    0 个评论
    【声明】纯属原创,未经允许,禁止转载。   【接前文】 查找到函数的定义,相当复杂,以下是函数说明:        可以看出,使用库函数,大大简化了驱动层面的开发工作。   4.3 创建用户工程     无论如何都需要创建用户自己的工程,来实现用户自己的特殊功能。         可以选择一个提供例程,简化工程的架构搭建。这里选择Hello World。点击Finish。软件将会创建用户工程。       在platform.c文件中包含init_platform()函数和cleanup_platform()函数。     在init_platform()函数中有个init_uart()函数,该函数会配置波特率吗?     通过查找,发现init_uart()函数也在platform.c文件中。     看到一个貌似相关的函数XUartNs550_SetBaud();还是在在platform.c文件中查找,发现传入的参数UART_BAUD就是我们在Block Design中设置的新的波特率。 修改主程序如下:   4.4 编译     嵌入式软件程序编写完毕后,需要经过编译转换成可执行的指令集。在SDK的Project菜单下,有关于编译的所有控制指令。其中,默认配置为“Build Automatically”,即只要嵌入式软件的代码发生了修改,一旦执行文件保存操作,软件会自动在后台进行编译。     剩下的clean,build all,都跟ARM开发的相应操作类似。     当然,用于工程(AzSysApp)的编译需要依赖于硬件工程(MySystem_wrapper_ hw_platform_0)和板载资源库(standalone_bsp_0)的基础上。     因此,如果Clean All Project之后,再执行Build All操作,会发现,先编译: 09:46:47 **** Build of project standalone_bsp_0 ****     编译成功后,再编译AzSysApp。 09:46:56 **** Build of configuration Debug for project AzSysApp ****         当然,对工程的编译操作,还可以选中工程后,在右键菜单中启动。       或者是工具栏中的下列按钮。     Console页面中显示编译成功,如果没有显示错误信息,表示编译成功。   【未完待续】.......      
相关资源
  • 所需E币: 0
    时间: 2023-4-24 16:23
    大小: 51.6MB
    XilinxFPGA权威设计指南:Vivado2014集成开发环境-何宾(epub格式,附阅读器安装程序)
  • 所需E币: 0
    时间: 2023-3-6 13:04
    大小: 12.59KB
    上传者: 燃烧的冰棍
    Basys3_xdc_for_vivado约束文件
  • 所需E币: 4
    时间: 2022-10-29 16:04
    大小: 3.45MB
    上传者: 秋刀红鱼
    verilog语法介绍与规范、Vivado操作教程与实操
  • 所需E币: 0
    时间: 2022-9-29 20:41
    大小: 14.84MB
    上传者: 西风瘦马
    VIVADO时序分析使用误区与进阶官方书籍.pdf
  • 所需E币: 4
    时间: 2022-7-7 09:47
    大小: 27.87MB
    上传者: 978461154_qq
    zynq工程vivado2018.3……
  • 所需E币: 0
    时间: 2020-12-24 15:25
    大小: 89.08MB
    上传者: 西风瘦马
      ·Vivado设计导论  ·Vivado HLS信号处理流程  ·Vivado工程模式和非工程模式设计流程  ·System Generator设计流程
  • 所需E币: 0
    时间: 2020-12-24 15:18
    大小: 273.87KB
    上传者: 西风瘦马
    Vivado还不精通_6个精彩设计实例
  • 所需E币: 0
    时间: 2020-12-24 15:26
    大小: 5.01MB
    上传者: 西风瘦马
    Vivado简明教程
  • 所需E币: 1
    时间: 2020-5-25 23:10
    大小: 1.09MB
    上传者: Argent
    FPGA技术一直是比较火的领域,其开发的难度也让许多开发人员望而却步。了解FPGA的基础编程语言是非常有必要的。本人收集了一些关于CPLD和VerilogHDL编程技术资料,有需要的网友自行下载,希望能帮到您。
  • 所需E币: 1
    时间: 2020-5-25 23:10
    大小: 1.5MB
    上传者: Argent
    FPGA技术一直是比较火的领域,其开发的难度也让许多开发人员望而却步。了解FPGA的基础编程语言是非常有必要的。本人收集了一些关于CPLD和VerilogHDL编程技术资料,有需要的网友自行下载,希望能帮到您。
  • 所需E币: 1
    时间: 2020-5-25 23:10
    大小: 1.05MB
    上传者: Argent
    FPGA技术一直是比较火的领域,其开发的难度也让许多开发人员望而却步。了解FPGA的基础编程语言是非常有必要的。本人收集了一些关于CPLD和VerilogHDL编程技术资料,有需要的网友自行下载,希望能帮到您。
  • 所需E币: 1
    时间: 2020-5-25 23:09
    大小: 1.02MB
    上传者: Argent
    FPGA技术一直是比较火的领域,其开发的难度也让许多开发人员望而却步。了解FPGA的基础编程语言是非常有必要的。本人收集了一些关于CPLD和VerilogHDL编程技术资料,有需要的网友自行下载,希望能帮到您。
  • 所需E币: 5
    时间: 2019-12-24 10:57
    大小: 637KB
    上传者: 二不过三
    赛灵思自爆八大专家秘笈之一。十招加速VivadoIPIntegrator设计作者:赛灵思公司Xilinx在Vivado2013.2中,推出了全新的图形化设计工具IPIntegrator,让嵌入式设计更加直观。新工具上手,也会有些不适应的地方。下面十招,可以让你更快​适应IPIntegrator,开始定制自己的嵌入式系统芯片。凭借IPIntegrator,可以像Freescale、TI一样设计SOC,自豪吗?第一招:使用“Run ConnectionAutomation”自动连接IP。 [pic]  第二招:隐藏暂时不关心的信号类型,简化设计图。点击左上角的推门图标,马上就有一个新窗口“BlockDesignOptions”显示,再选中其中的“Layers”。这个窗口按类型显示了所有的信号。一类信号,就是一​个layer。只有选中的layer,才会在设计图中显示。  [pic] 第三招:指定信号颜色,让信号更显眼。比如可以给选中的信号设置红色等更明亮的颜色。同样是“BlockDesignOptions”窗口,再选中其中的“Colors”,则会有颜色配置窗口显示,可以按对象类型指定颜色。​常用的是给选中的信号“Selection”指定一个显眼的颜色。 [pic]  第四招:选中“AutoFitSelection”模式,让设计图适配你的屏幕大小。图太小了,可以点[pic]放大。图太大了,可以点[pic]变小。点击[pic],设计图可以适配你的窗口大小。如果图太大了,选中一个信号,还不一定找得到它在哪儿。那就请[pic]帮忙,它能让你选中的信号在图的正中,而且高亮显示。  [pic] 第五招:在“DesignHierarchy”中搜索信号,让信号自己跑出来。点击[pic],……
  • 所需E币: 4
    时间: 2019-12-24 10:55
    大小: 4.32MB
    上传者: 16245458_qq.com
    本培训文档将通过对一个具体案例的流程进行“逐层拆解(Step-by-Step)一个设计案列”的方式,向您介绍如何利用VivadoHLS(高层次综合)配合优化综合的视频库和VivadoIP集成器,为一个特定的视频应用打造一个定制化的加速器。该设计流程可以在兼具高性能和低功耗的条件下快速地实现许多计算机视觉算法。此设计流程还可以让设计人员能够在可编程逻辑中实现高数据速率的像素级处理任务,同时在ARM核中处理那些基于帧的低数据速率的任务。下载此文档,您将了解到:·如何在Zynq-7000AllProgrammableSoC中执行OpenCV应用。·如何重构一个使用I/O功能来封装加速器的OpenCV应用。·如何在加速器功能中,通过替换为HLS综合视频库功能的方迅速加速OpenCV功能调用。·如何在ZynqZC702参考设计中迅速将VivadoHLS建立的加速器功能集成到VivadoIP集成器中。·赛灵思SmarterVision方案在计算机视觉领域的应用如何使用VivadoHLS视频库加速Zynq-7000AllProgrammablegSoCOpenCVp应用2013年9月11日Copyright2013Xilinx.OpenCV简介开源计算机视觉机)被广泛用于开发计算机视觉应用(OpenCV)(p机……
  • 所需E币: 5
    时间: 2019-12-24 10:55
    大小: 61KB
    上传者: wsu_w_hotmail.com
    VivadoHLS中指针作为top函数参数的处理。本文采用浅显易懂的描述方式,结合具体的c代码例子,详细描述了常用三种指针的设计类型,以及其作为顶层函数参数时,采用不同的编码风格和HLS约束策略,满足设计者对指针作为RTL接口的需求。VivadoHLS中指针作为top函数参数的处理           HarvestGuo:xilinx    指针作为C语言精华,对于软件设计者比较好理解,但是在xilinxvivadoHLS高级语言综合的设计中,由于其综合后对应的硬件元素难以用软件的概念解释,常常令程序设计者和VHLS工具使用者头痛。本文采用浅显易懂的描述方式,结合具体的c代码例子,详细描述了常用三种指针的设计类型,以及其作为顶层函数参数时,采用不同的编码风格和HLS约束策略,满足设计者对指针作为RTL接口的需求。 1.1.      基本指针类型基本指针类型指的是指针没有运算或者没有多次的存取(读写)。指针作为top函数的参数时,指针综合为wire型或者握手协议类型接口。如下例子1-1: voidpointer_basic(dio_t*d){staticdio_tacc=0;acc+=*d;*d=acc;} 例子1-1基本类型指针作为顶层函数参数 在这个例子中,只是简单的读写指针指向的变量值,并没有对指针做偏移或者指针(地址)运算,其接口综合为线​型的RTL接口。 1.2.      指针运算类型。指针作为top层函数参数,并且函数中有对指针运算时,我们称之为指针运算类型。指针运算常常限制指针可能综合的接口类型​。如下例中,指针做了偏移运算用于累加数据,从第二个值开始读出累加,并将每次累加结果写入上一个地址中。 voidpointer_arith(dio_t*d){staticintacc=0;inti;for(i=0;iacc+=*(d+i+1);*(d+i)=acc;}} 例子1……
  • 所需E币: 3
    时间: 2019-12-24 10:52
    大小: 97.92KB
    上传者: 二不过三
    •硬件平台:ZC706开发板•软件工具:Vivado2013.2Step1:创建工程Step2:配置ZynqStep3:配置MIGStep4:建立IP之间的连接Step5:创建约束Step6:设计验证……
  • 所需E币: 3
    时间: 2019-6-12 19:28
    大小: 10.25MB
    上传者: royalark_912907664
    该书汇集了赛灵思专家团队在客户支持时所碰见的诸多实际案例,以及相对应的解决方案;还有多年总结下来的设计技巧与代码参数详解。是您学习和掌握Vivado开发套件的一本不可多得的实战指导资料。本书通过9篇文章,总共64页的篇幅向大家详细讲解了那些在设计中非常重要、经常碰见的一些场景下Vivado的正确(高效)的使用方法。本书目录如下:第一章:十分钟教会你UltraFast第二章:XDC约束技巧之时钟篇第三章:XDC约束技巧之CDC篇第四章:XDC约束技巧之I/O篇(上)第五章:XDC约束技巧之I/O篇(下)第六章:Tcl在Vivado中的应用第七章:用Tcl定制Vivado设计实现流程第八章:在Vivado中实现ECO功能第九章:读懂用好TimingReport赛灵思Vivado设计套件推出已经两年多了,从Vivado的早期计划开始,本文作者Ally以及她的同事们就已经投入到客户的支持与推广工作中,两年多的时间里面,Vivado不断成熟,客户也从最初的焦虑到全面接受。随着与用户更深层次的技术交流之后,Ally发现其实很多Vivado的用户并没有真正地了解Vivado的好处和优势(或者说,要么不够深入,要么有些偏差),而赛灵思提供的官方文档又动辄上百页,且多是英文,阅读学习起来颇有些难度。正因为此,Ally开始整理和总结她以及她同事日常支持客户时候积累下来的案例与解决方案,陆续推出了《Vivado使用误区与进阶》系列博文,希望用一些简洁明快的文字和一目了然的图文叙事来把一些常见的理解误区或者他们所总结的设计方法技巧呈现出来。希望通过这样的方式让更多的Vivado用户真正体会和掌握到这一高效的设计工具的优势。