自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 资源 (6)
  • 收藏
  • 关注

原创 Vivado报错:[Opt 31-67] Problem: A LUT6 cell in the design is missing a connection on input pin I5

一、报错原文展示具体报错内容如下:[Opt 31-67] Problem: A LUT6 cell in the design is missing a connection on input pin I5, which is used by the LUT equation. This pin has either been left unconnected in the design or the connection was removed due to the trimming of unuse

2022-05-10 18:29:30 9219 6

原创 基于CORDIC算法的正余弦信号发生器

(1)CORDIC算法的圆周系统之旋转模式原理简介CORDIC算法是一种兼容速度快、精度高和方便硬件资源实现的综合方法。CORDIC算法是一种使用多次预定角度的不断旋转来逼近初值角度的近似逼近方法。CORDIC算法有3种旋转系统:圆周系统、线性系统和双曲系统。每种系统下都有两种工作模式:旋转模式和向量模式。其每个系统每种模式下的应用情况如下:表一:CORDIC算法的3种系统和2种不同模式应用情况旋转模式向量模式圆周系统计算sin、cos计算tan-1线性系统计算乘法

2022-02-24 19:50:10 1616 1

原创 差分时钟信号的使用与引脚绑定(ucf)

1.在模块中例化IBUFDS令差分时钟转化为单点时钟IBUFDS #( .DIFF_TERM("TRUE"), // Differential Termination .IBUF_LOW_PWR("TRUE"), // Low power="TRUE", Highest performance="FALSE" .IOSTANDARD("DEFAULT") // Specify the input I/O standard) u_ibuf_sys_clk ( .O(s

2022-01-07 09:49:16 2487 1

原创 vivado inout数据挂高阻无法接收到数据

最近在用FPGA调试一个器件时,发现在vivado中的block design里面,若有inout数据端口,若不加IOBUF,系统将不会生成三态门。只将其视为输出端口,在代码中挂高阻仍然会接收不到任何数据。IOBUF写法如下:IOBUF #( .DRIVE(12), // Specify the output drive strength .IBUF_LOW_PWR("TRUE"), // Low Power - "TRUE", High Performance = "FALSE"

2021-09-08 10:21:11 1710 1

原创 基于FPGA的有符号位全并行移位相加乘法器设计

1.二进制乘法原理介绍理论部分引用于书籍:基于FPGA的数字信号处理[高亚军 编著]二进制乘法原理与十进制乘法原理类似,都是将乘数的每一位分别与被乘数相乘,除此之外,二进制乘法还有其自身的特点,这对于硬件设计极为关键。二进制乘法可分为两种情况:无符号数乘法和有符号数乘法。无符号数乘法示例如下:有符号数的正数乘负数示例如下:有符号数的负数乘负数示例如下:由上述示例,我们可以得出结论,若两乘数的位宽分别位a,b,则:1.无论是有符号数相乘还是无符号数相乘,其乘积的位宽必定位a+b;2.如

2021-06-26 19:59:56 1602 2

原创 FPGA有符号数相关运算

1.有符号数放大2^n次方倍运用 算数左移符号 <<<,此时会将符号位填补在最低位上。

2021-06-22 19:42:39 2317

原创 vivado 在block design中直接添加.v源文件

在vivado设计中,经常会遇到需要临时添加,如下图,右键——>add Sources——>add or create design sources——>add file——>finish。再右击block design空白处:add module选择即可。生成模块图如下:...

2021-03-31 15:15:12 5365 2

原创 pynq axi_gpio读写 python代码

在vivado设计时,加入block design 中加入AXI_GPIO IP核后,可实现pl与ps的交互。这也是一种AXI4_Lite接口,ps端读写python代码如下:from pynq import Overlaydata_test= Overlay("./ready_to_test/data_test.bit")from pynq.lib import AxiGPIOa_data_instance = data_test.ip_dict['axi_gpio_0']a_data = A

2021-03-31 10:04:39 493

原创 pynq axi4读写ddr python代码

硬件配置:在vivado的设计中,每次点击pynq的按键后,创建的ip核将通过AXI4 Master端口向Slave端指定的4K存储空间中连续写入1024个数据,每个数据占32bit。DDR的起始地址为 0x10000000 ,from pynq import Overlayfrom pynq import Xlnkimport numpy as npfrom pynq import MMIOaxi4_ddr = Overlay("./ready_to_test/axi4_ddr.bit")xl

2021-03-29 19:21:42 730

原创 基于Verilog以同步信号对跳变信号检测

在做FPGA硬件编程时,经常会遇到需要检测的上升沿信号。实际举例如下所示:1.模块运行时钟为clk2.需要检测的上升沿信号为flag_in比较规范的写法如下:reg flag1;reg flag2;wire flag_out;assign flag_out = (!flag2) && flag1;always@(posedge clk)begin if(rst==0)begin flag1 <= 1'b0; flag2 <= 1'b0; end el

2021-03-29 17:58:46 2111

原创 zynq设计学习笔记7-AXI简介

AXI介绍1.什么是AXI?AXI(高级可扩展接口),是ARM,AMBA的一部分;AMBA:高级微控制器总线架构1996年首次引入的一组微控制器总线;开放的片内互联的总线标准,能在多主机设计中实现多个控制器核外围设备之间的连接和管理。详细官方文档见:https://download.csdn.net/download/qq_42025108/157350392.AXI4三种类型AXI4(AXI4-Full)用于高性能的存储区映射需求。存储器映射:主机对从机进行读写操作时,会指定一个目标地址

2021-03-11 22:20:58 856 1

原创 Pynq-z2入门学习资源与注意事项

入门学习资源镜像源与镜像源载入器:https://www.tul.com.tw/ProductsPYNQ-Z2.html 镜像源的下载最好使用迅雷。正点原子的ZYNQ系列开发指南中的“5_领航者ZYNQ之PYNQ开发指南_V1.4”。百度云连接如下:https://pan.baidu.com/s/1OXJLDyFtW7IZsNwhcQW5qw 提取码:yb9j。学习时注意其使用的开发板是正点原子的领航者开发板,但整体设计思路都一致。注意事项:我在入手时,首先用的2.3版本的镜像,但使.

2021-01-30 19:04:21 896

原创 zynq设计学习笔记6——自定义含AXI4接口IP核-ps与pl的交互

在本实验中,我们将采用封装带有AXI4接口的IP的方式,实现PS和PL的数据交换,另外自定义IP核可以定制化系统设计,以达到设计重用的目的,可以很大程度上简化系统设计和缩短产品上市的时间。本次实验任务:通过自定义一个含有AXI总线的加减法器 IP核,接收ps端数据,在pl端进行计算后,将结果发送到ps端并通过uart打印出来。并用pl端控制的LED灯显示此时计算的是加法还是减法。下面开始实验步骤。步骤一:打开Vivado后,点击下图位置的Manage IP,并在选项中选择New IP Location。

2021-01-27 22:22:21 5169 10

原创 zynq设计学习笔记5——AXI_GPIO之按键中断控制LED灯实验

在本实验中,我们将通过调用AXI GPIO IP核,使用中断机制,实现底板上PL端按键控制PS端GPIO,并使用EMIO控制LED灯的亮灭。首先,axi_gpio与之前的GPIO的区别:之前的GPIO是硬核,是ps端实际存在的外设电路;而axi_gpio是软核,实现的时候需要由fpga的pl端去搭建。下面为实验步骤:**第一步:**根据建立Vivado工程,本设计所使用的开发板为pynq-z2。再Create Block Design,先添加zynq,并对其进行设置:(1)添加UART,并设置1位宽的EM

2021-01-22 23:20:50 3128 2

原创 zynq设计学习笔记4——GPIO之中断控制LED实验

本实验任务:使用GPIO的EMIO中断功能,实现按键控制LED的亮灭。即按键下一次灯亮,再按一次灯灭,如此反复。本实验中的PL端设计步骤与学习笔记3中的步骤基本一致,不同的是本次实验只需要两个EMIO端口,即一个按键(D19),一个LED灯(R14),因此在引脚约束中也需要做相应改动。如下图所示:接下来便是SDK的软件设计部分,根据官方给出的ug585-Zynq文档的介绍步骤,如下图所示:在SDK中创建空工程添加suorce文件后,敲入以下代码:#include "stdio.h"#incl

2021-01-18 22:31:24 1029 3

原创 zynq设计学习笔记3——GPIO之EMIO按键控制LED实验

在本设计中,我们将PS端外设GPIO通过EMIO来调用PL端的引脚资源。由于小编此时只有pynq-z2的开发板,暂且用这个来学习zynq系列。这个开发板上PS端没有任何MIO引脚牵出给用户使用,因此该实验极为关键。首先什么是EMIO?EMIO是拓展的MIO,当PS的引脚不够用的时候,可以通过EMIO来进行扩展,从而使用PL的引脚。是PS和PL之间的一个接口。在该实验中,通过EMIO来调用PL端的引脚实现两个拨码开关分别控制两个LED灯的亮灭。首先我们创建工程:Create Block desgin,

2021-01-18 18:40:35 1342

原创 zynq设计学习笔记2——GPIO之MIO控制LED实验

vivado软件操作步骤与学习笔记1——hello world差不多,这里不再过多赘述,不同点是在zynq的设置中添加上GPIO的设置即可。进入SDK软件后,程序如下:#include "stdio.h"#include "xparameters.h"#include "xgpiops.h"#include "sleep.h"#define GPIO_DEVICE_ID XPAR_XGPIOPS_0_DEVICE_ID//核心板上PS MIO0引脚#define Output_Pin

2021-01-17 01:18:05 654 1

原创 zynq设计学习笔记1——helloworld

感谢大佬的制作,原谅再下偷个懒,以下为传送门。https://blog.csdn.net/weixin_42151221/article/details/106391763

2021-01-08 19:32:22 309

原创 matlab 全局变量(global)数据类型报错问题

今天我在做matlab的GUI界面时,其中涉及到定义一个全局的元胞变量(cell)。将其摘录下来如下,出现了以下错误:clc;clear allglobal as1='1';s2=123;s3='a';a(1,1:3)={s1,s2,s3}然后出现错误:从 cell 转换为 double 时出现以下错误:错误使用 double无法从 cell 转换为 double。图如下:由于在网...

2020-04-26 19:26:47 2356

原创 FPGA驱动AD7175-8 调试总结

一、AD7175-8介绍 AD7175-8是一款比较新的ADC器件了,至今还没有找到完整的FPGA的驱动例程,从get新板到最终调试OK也花了快一个月的时间了,终于调试完成。当然,产品介绍在ADI官网上更加详细,我只是简单说几个比较重要,我们经常考虑的几个特点吧: 通道扫描数据速率:50 kSPS 可配置通道数:1-16个 输出数据位宽:24位宽(最高位为符号位,剩下23位就都是数...

2019-11-18 15:18:00 3623 3

原创 vivado之ila抓包改值问题

今天小编在调试FPGA时又遇到一个奇葩的问题!说其奇葩,不知道是我道行不够还是它确实罕见,最后,请一个学长看了半天也没看出来为什么。我来说说这个奇葩问题吧:首先有如下vivado工程示意图:我在模块B中定义了一个位宽为32的变量,然后通过top连接,将数据发送到模块A,最后再传输到PC端的上位机上。然后我在A中例化了一个ila的逻辑分析仪,给他的输入时钟为50mhz,最终显示的值确实为真确...

2019-10-31 21:12:28 1435 7

原创 Python连载笔记(十)——————爬虫初步训练案例

一、网页内网址的爬取import urllib.requestimport re#第一步 确定需要爬取的网址url = "http://www.baidu.com/"#第二步:发送请求获取响应response = urllib.request.urlopen(url)#第三步:通过response.read() 获取响应内容html = response.read().dec...

2019-10-26 16:24:27 148

原创 Python连载笔记(九)——————爬虫基础知识

一、爬虫基础概念爬虫是啥? 蜘蛛?织网?等着猎物?1.网络爬虫: 定义:网络蜘蛛,抓取猎物——网络数据 作用:用Python程序模拟人去访问网站 注意: 爬虫并不能自己生产数据,它只是数据的搬运工 1.有爬虫,就有反爬 爬取 反爬 反反爬 反...

2019-10-26 16:04:47 512

原创 Python连载笔记(八)——————正则语法

一、正则基本知识为什么需要正则? 1.文本处理已经成为计算机常见的工作之一 2.对文本内容进行快速搜索定位,提取是比较繁琐和复杂的 3.为了解决这个问题,产生正则表达式 作用: 可以称之为文本的高级匹配模式,提供搜索、替换、查找等功能, 本质是由一系列特殊符号和字符组成的字符串 特点:...

2019-10-23 21:13:51 137

原创 Python连载笔记(七)——————文本文件的读写

一、文件读写基本概念文件用于数据存储的单位文件通常用来长期存储数据文件中的数据是以字节的方式为单位进行顺序存储操作流程: 1.打开文件 2.读/写文件 3.关闭文件注意: 任何操作系统,同一个应用程序同时打开文件的数量有限——有最大数限制,所以 在用完文件后需要关闭核心功能: 'r':只读,读文件必须存在 'w':只写,打开即...

2019-10-23 20:57:54 230

原创 基于python与mysql交互的学生管理系统

"""名片管理系统:- 需要完成的基本功能: 1. 添加名片 2. 删除名片 3. 修改名片 4. 查询名片 5. 退出系统- 程序运行后,除非选择退出系统,否则重复执行功能"""#**********************************************************************************************...

2019-10-23 20:50:54 2445 2

原创 Python连载笔记(六)——————Python与MySQL数据库的交互

一、pymysql模块的导入用来演示Python 和 MysSQL数据库的交互操作之前需要导入模块: 第一种:import pymysql 电脑的cmd命令: pip install -i https://pypi.douban.com/simple/ pymysql 第二种:import mysqldb 这是Python2的操...

2019-10-23 20:45:26 180

原创 Python连载笔记(五)——————MySQL的安装与基础语法

一、 MySQL数据: 1.什么是数据库: 数据库就是永久存储数据的仓库 2.数据库的分类: 关系型数据库:mysql sqlserver oracle 非关系型数据库:mongo(芒果) Redis 3.哪些公司会使用: 金融机构 游戏公司 购物网站 论坛... 4.选择数据库: M有...

2019-10-22 20:08:48 146

原创 Python连载笔记(四)——————函数与面向对象

一、函数""" 函数的概念: 函数是一组Python语句的组合,他们可以在程序中使用一次或者多次。 大大提高开发的效率,减少复制粘贴的操作 Sublime 函数定义的格式: def 函数名(): 语句 函数调用的格式: 函数名()"""def fozu(): ...

2019-10-22 19:48:24 156

原创 Python连载笔记(三)——————字符串、列表与字典

一、字符串及其相关操作""" 字符串: 使用单双引号括起来的就是字符串,可以看做是字符的数组 取值: 通过下标来取 实际的数据: A B C D E F 内存对应: 0 1 2 3 4 5 下标取值都是从0开始,最后一个是end-1 格式: 字符串[下标] 注意:...

2019-10-22 19:36:30 171

原创 Python连载笔记(二)——————循环语句for、while

一、while循环语句""" while语句: 语法: #********************** while 真值判断: 语句1 else: 语句2 #*********************** 说...

2019-10-22 19:36:17 196

原创 Python连载笔记(一)—————— Python软件安装与基础语法

标题一、Python软件安装与环境配置小编使用的Python版本是Python3.6,软件安装链接在我的软件安装专栏中即可查询。现在先讲解Python工程建立和环境配置相关知识。建立工程步骤如下:第一步:首先点在1中设置工程文件与文件路径,然后点开2第二步:点击红框中设置图标,再点击add local…第三步:然后在1处设置,在Python的安装路径中找出并选择python.exe文...

2019-10-22 19:36:03 216

原创 FPGA的AD采集由usb到labview的显示与存储

摘要目前,通用串行总线(Universal Serial Bus 简称USB)作为计算机领域的新型接口技术,已经应用于我们生活的方方面面。高速、热插拔、通用性强等特点令他在计算机接口上占主导地位;labview是一种基于图像文本语言的程序开发环境,同时作为一款虚拟仪器它已经被工业、学术、研究实验室等领域所普遍认可,在数据采集、信号分析等方面也有广泛应用。本文则基于sub2.0的高速传输和lab...

2019-07-14 00:15:21 4098 82

原创 FPGA CY7C68013A调试经验总结

CY7C68013A调试经验总结本人调试的开发板如上图所示。用FPGA控制usb2.0,并把数据发送到cy768013A的fifo中,最后从电脑中读取出fifo中的知识,最终实现硬件中的数据向电脑pc端的告诉互传。经验总结:1.官网给出的固件不能直接用!!要根据你自己的要求,相应的对寄存器进行配置。2.PCB板引脚标错了!!!!也就是读使能引脚和写使能引脚标反了!3.数据传输频率不能太...

2019-07-09 14:31:31 2094 20

原创 基于FPGA的VGA显示对贪吃蛇游戏的设计

基于FPGA的VGA显示对贪吃蛇游戏的设计摘要目前,电子数码产品已经进入了人生活的方方面面,而大多数电子产品都依靠显示屏来传递信息,由此可见用电路对显示屏进行控制的研究有很大的实用价值和市场需求。且FPGA作为专用集成电路又综合许多其他可编程器件的优点,本文则以FPGA的VGA显示对贪吃蛇游戏的设计,对FPGA的VGA显示进行了较深层次的研究。本文在对贪吃蛇游戏进行设计时,将整个项目细分为菜...

2019-06-23 17:46:53 8122 8

sun,自己测试用,无下载

sun,自己测试用,无下载

2024-04-18

基于CORDIC算法的正余弦信号发生器(verilog代码实现)

详细介绍见博客 https://blog.csdn.net/qq_42025108/article/details/123119003

2022-02-24

verilog有符号加法器设计

verilog代码设计一个有符号累加器,每个累加器输入-8~+7范围有符号数i_data共四个,i_valid在输入数据有效时置高,无效时置低,当接收到4哥数据后,进行有符号数累加运算并输出累加结果o_data,同时拉高o_ready线(此时也可以接收下一轮数据的输入)。o_ready拉高一个时钟周期脉冲表明 一次有效累加输出。

2021-04-03

Zynq AXI协议详细官方文档(全英文,有重点标记)

适合想细致了解AXI协议人群,可接受全英文者。官方文件名:IHI0022D_amba_axi_protocol_spec、ug1037-vivado-axi-reference-guide

2021-03-11

AD7606_中文资料.pdf

良心中文,童叟无欺。本来这种网上能找到的ADI器件中文手册,我都觉得没有发资源的意义。直到我遇到一个连5积分都要骗的博主。免费领取,不谢!

2019-12-19

ad7175_8.v

该Verilog代码是由本人对ADI官网上发布其他相关ADC器件的代码修改得到的,AD7175_8调试一个月成功!当然这个代码也可以用作相关的AD7175器件,稍加修改即可。该代码除了注释,详细的用法介绍见 我博客中随手写栏目里面 “FPGA驱动AD7175-8 调试总结”一文。

2019-11-08

g_snake.rar

这里包含整个 基于FPGA的VGA显示对贪吃蛇游戏的设计 的 ise工程文件,verilog源代码,图片转coe文件的matlab代码等文件,工程中需要调用ip核,所使用的FPGA芯片为:Xilinx Spartan-6 LX9

2019-09-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除