【基于zynq的卷积神经网络加速器设计】(一)熟悉vivado和fpga开发流程:使用Vivado硬件调试烧写hello-world led闪烁程序实现及vivado软件仿真_zynq加速神经网络-程序员宅基地

技术标签: 卷积神经网络  vivado  fpga  IC  zynq  加速器  

HIGHLIGHT:

  • vivado设计流程:
    在这里插入图片描述
    note:
    分析与综合 和 约束输入 可以调换顺序

【基于zynq的卷积神经网络加速器设计】(一)熟悉vivado和fpga开发流程:使用Vivado硬件调试烧写hello-world led闪烁程序实现及vivado软件仿真

一、硬件调试

(一)新建工程

  1. new project
    在这里插入图片描述
  2. next
    在这里插入图片描述
  3. 编辑,然后next
    在这里插入图片描述
  4. 勾选创建完工程再添加文件
    在这里插入图片描述
  5. 根据实际情况选择型号
    在这里插入图片描述
  6. finish
    在这里插入图片描述

(二)设计输入

  1. add source
    在这里插入图片描述
  2. create design source
  3. create file
    在这里插入图片描述
  4. 命名(一般顶层模块名和工程名保持一致)、ok
    在这里插入图片描述
  5. finish
    在这里插入图片描述
  6. 端口信号不做定义,点击ok
    在这里插入图片描述
  7. 双击创建的.V文件,然后在代码编辑区域输入代码
    在这里插入图片描述

(三)分析

  1. open elaborated design
    verilog转换rtl
    在这里插入图片描述

(四)约束输入

  1. io planing
    在这里插入图片描述
  2. 选择管脚和管脚电平
    自行在自己开发板对应的原理图手册查找
    在这里插入图片描述
  3. 按下ctri+s——>起名——>ok
    在这里插入图片描述
  4. 右键关闭
    在这里插入图片描述
  5. 打开xdc文件
    这个文件可以做IO约束 或者 时序约束
    在这里插入图片描述

note:
约束这里可以自己添加约束文件
在这里插入图片描述
在这里插入图片描述

(五)综合、实现、生成比特流

  1. 点击generate bitstream
    点击generate bitstream后,vivado会自动跑综合和实现。提示框点击yes即可
    在这里插入图片描述

  2. 选择跑的时候运行的处理器核心数
    在这里插入图片描述

  3. 可以点击project summary查看进度
    图中在综合
    在这里插入图片描述

  4. 跑完了后会弹出以下框框
    选择选项3再按ok,或者直接按左边的按钮open hardware manager
    在这里插入图片描述

  5. 开发板上电连接电脑后选择program device 或者 左下角按钮
    在这里插入图片描述

  6. 点击program
    在这里插入图片描述

  7. 验证成功

二、软件仿真

(一)步骤

  1. 右键添加
    创建激励文件(testbench文件)
    在这里插入图片描述

  2. next
    在这里插入图片描述

  3. 编辑名字
    在这里插入图片描述

  4. finish
    在这里插入图片描述

  5. ok
    在这里插入图片描述

  6. 双击testbench文件,把自动生成的注释删去
    在这里插入图片描述

  7. 根据自己需求功能编写信号激励
    这里主要是时钟和复位信号
    在这里插入图片描述

  8. 点击行为仿真
    在这里插入图片描述

结果:
在这里插入图片描述
9. 点击所例化的文件,将cnt信号拖入信号栏
在这里插入图片描述
自行查看结果即可

(二)仿真界面指导

  1. 按钮指导:
    在这里插入图片描述

  2. 设置仿真时间
    在这里插入图片描述
    这里默认打开后仿真1000ns,可以在这里修改
    在这里插入图片描述

  3. 默认为显示十六进制,可以更改为十进制
    在这里插入图片描述

  4. 查看时钟周期
    间隔的两个上升沿分别add marker
    在这里插入图片描述
    单击左边蓝线,可见间隔为20ns,符合代码
    在这里插入图片描述

  5. 注意的是
    代码定义的计数器的值太大,这里只仿真1000ns,如果要跑仿真实际结果,需要很长时间,所以要么就等待,要么就修改计数器的值来模拟即可。

改完代码直接保存,并且relunch即可
在这里插入图片描述

  1. 保存波形文件
    ctrl+s 保存即可
    在这里插入图片描述
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39589455/article/details/120865557

智能推荐

从MIF文件直接读取道路数据-程序员宅基地

文章浏览阅读344次。stringfile=@"C:\Inetpub\wwwroot\SSWeb\node\Road.MIF";//载入数据,使用绝对路径(单独制作的综合节点图层)StreamReadersr=newStreamReader(file);stringnextLine,sTmp;longnTmp,mTmp;..._mif路网数据

为什么要用Python来处理数据分析_用python处理数据的意义是什么-程序员宅基地

文章浏览阅读947次。如果你对数据分析有所了解,一定听说过一些亲民的工具如Excel、Tableau、PowerBI等,都能成为数据分析的得力助手。但它们的不足也是显而易见的:操作繁琐,复用性差,功能相对局限单一。怎么解决呢?——PythonPython有很多优点,如果你能很好的运用到工作中,会发现工作效率大大提升,涨薪也是再正常不过的事情。Python优点一:“流程可控,工作高效”举个例子,Excel做分析..._用python处理数据的意义是什么

Openlayer加载WFS图层及C#编写ASP.net代理解决跨域问题,好长的题目-程序员宅基地

文章浏览阅读283次。NND,openlayers跨域访问geoserver居然要用到代理,貌似Felx就不用,用C#编写代理网上普遍是这样的: public class GeoServerProxy1 : IHttpHandler { public void ProcessRequest(HttpContext context) { ..._asp.net 引入 openlayers

SEC7120: 在 Access-Control-Allow-Origin 标头中未找到源_sec7120 无法支持-程序员宅基地

文章浏览阅读7.6k次。SEC7120: 在 Access-Control-Allow-Origin 标头中未找到源 https://b.test.com。SCRIPT7002: XMLHttpRequest: 网络错误 0x80070005, 拒绝访问。SEC7119: https://api.test.com/api/product/single/queryPageRecommendProductPop?typeId=图文 的 XMLHttpRequest 需要飞行前 CORS。SEC7118: https://api._sec7120 无法支持

kubrnetes集群管理系列之pod详解(三)_集群和pod的关系-程序员宅基地

文章浏览阅读585次。k8s集群的最重要的管理工作都是围绕着pods这个资源来进行的,可以说是最根本的东西,没有之一,pods的地位可以简单理解为docker里的容器,但和容器又有所不同(当然是有所不同了嘛,要不干嘛还叫pods,直接叫容器得了,不是更方便???),因此,在进行管理工作前,我们需要明确pods到底是什么玩意,能干什么,为什么要用它,然后才是对pods的增删改查等等这些具体的管理工作了。pod是一组并置的容器,代表了Kubernetes中的基本构建模 块。在实际应用中我们并不会单独部署容器,更多的是针对组pod 的_集群和pod的关系

笔记——idea修改相关配置(字节码,SDK)的版本_idea修改项目sdk-程序员宅基地

文章浏览阅读3.1k次,点赞4次,收藏4次。1,file→setting中的Java Compiler内,设置项目字节码版本和目标字节码版本。(目标字节码版本在点击maven中刷新时,会被还原成1.5,还没解决。)2,file→project structure→project中,设置SDK以及语言等级This SDK is default for all project modules.对于所有项目模块,这个SDK都是默认的。A module specific SDK can be configured for each of the m_idea修改项目sdk

随便推点

影视处理计算机配置,影视后期制作电脑配置需要什么-程序员宅基地

文章浏览阅读3.4k次。说起电脑配置大家应该都不陌生,配置直译文是配备布置的意思,就是把缺少的不足并且设置好。在这里我们说到的是影视后期制作电脑配置,这是关于影视后期制作的电脑配置,是专门对于后期制作中的电脑的配置方法,下面我们就系统的看一下。电脑配置:主板:映泰 Hi-Fi Z87W,大板,Z87芯片组,4条DDR3插槽,2条显卡插槽,¥699。CPU:酷睿i7-4770K ,最新Haswell架构 第四代i7,四核八..._做视频需要电脑什么配置

Android 自定义漂亮的Seekbar样式_android seekbar 覆盖线条-程序员宅基地

文章浏览阅读2.9k次,点赞2次,收藏18次。Android自定义漂亮的Seekbar样式Seekbar通常用于与用户有交互的操作,便于拖拉进度,显示当前进度,当然一个漂亮的seekbar无疑会增加许多用户体验性,下面我就通过一个实例,展示一下怎么自定义一个漂亮的seekbar.一、Seekbar的属性:android:max[integer]//设置拖动条的最大值android:progress[integer]//设置当前的进度值andro_android seekbar 覆盖线条

Java(TM) 已被阻止,因为它已过时并且需要更新_已阻止java,因为它已过时并且需要更新-程序员宅基地

文章浏览阅读1.9w次,点赞2次,收藏3次。1、问题原因Internet Explorer (IE) 提供了一项新的安全功能,称为 ActiveX 控件阻止,用来检查 IE插件的版本是否为最新版本,如果不是最新版本,则要求用户升级组件。如果此功能发现 Java 已过时,则将阻止应用程序或 Web 页的加载,并且将提供更新 Java 的选项。2、解决方案建议您先更新 Java,然后再允许应用程序运行。单击更新并下载最新_已阻止java,因为它已过时并且需要更新

elasticsearch得分设置以及分词器不同层次定义_elasticsearch 分词词性权重-程序员宅基地

文章浏览阅读1k次。GET _cat/indicesGET hotel/_searchGET /_search{ "query": { "constant_score": { "filter": { "term": { "lvg_mc": "酒店" } }, "boost": 1.2 } }}DELETE /my_index PUT /my_index{ "settings": { "numbe_elasticsearch 分词词性权重

RPI.GPIO使用手册_rpi.gpio用法-程序员宅基地

文章浏览阅读1.6w次,点赞5次,收藏71次。目录(?)[+]RPiGPIO模块基本使用导入模块引脚编号方式设置一个通道输入输出设置多个通道的输出清空GPIO 输入上拉或者下拉电阻测试输入轮询中断与边沿检测线程回调开关去抖GPIO 输出设置RPiGPIO设置为高电平输出设置低电平输出同时设置多个通道的输出清空PWM脉冲宽度调制1.RPi.GPIO模块基本使用导入模_rpi.gpio用法

JavaMail发送邮件和附件(源码)-程序员宅基地

文章浏览阅读8.6k次。JavaMail是Sun发布的处理电子邮件的应用程序接口,它预置了一些最常用的邮件传送协议的实现方法,并且提供了很容易的方法去调用它们。JavaMail是Sun发布的应用程序接口,所以目前它还没有被JDK包含。因此你需要从Sun的官方网站上下载到JavaMail类文件包。除此之外还需要Sun的JAF(JavaBeans Activation Framework ),否则JavaMail将不能运行。

推荐文章

热门文章

相关标签