- 博客(46)
- 资源 (10)
- 收藏
- 关注
原创 基于VITIS JESD204B官方IP核的调试
1、参考资料xilinx 官方 PG066 PG198http://www.chinaaet.com/tech/designapplication/3000080357jesd204b应用指南https://github.com/analogdevicesinc/hdl2、工程搭建3、概述系统主要采用官方JESD_PHY(免费),JESD_RX(评估版),JESD_TX(评估版)三个IP核做测试,采用自发自收,外部GT引脚回环方式。其中,PHY采用4个LANE接收和发送数据,一般线速率为参考
2021-12-18 00:23:45
2261
2
原创 关于AXI4-FULL总线 多通道传输相同数据时,合并生成一组数据并对齐的研究讨论
1、对于AXI4-FULL总线时,握手信号共有5路,包括写地址,写数据,写应答,读地址,读数据。2、当主机burst写时,每发起一次猝发交易,需要有一笔应答对应。3、当主机进行读数据时,接受数据即可。4、具体如图所示...
2021-12-11 19:15:45
791
原创 KV260开箱初体验
1、收到板卡以上就是开箱的全部东西了。2、参考官方https://www.xilinx.com/products/som/kria/kv260-vision-starter-kit/kv260-getting-started/getting-started.html3、第一步下载img,然后将应用Win32DiskImager将img烧写SD到卡。4、供电后,等待板卡启动成功,登录login:petalinuxpasswd:1234565、运行例程6、效果图片7、接下来就是使用
2021-10-31 09:25:59
1526
2
原创 基于ZYNQ的multiBoot测试
1、软件版本vivado202001。2、其中程序的源文件都是拷贝过来的只是稍作修改,对其中的操作步骤做细化分析,参考文档UG585https://blog.youkuaiyun.com/weixin_41922484/article/details/1040375133、串口打印FSBL中启动信息。只需要在以下位置的的fsbl_debug.h中,添加一个宏定义即可。#define FSBL_DEBUG_INFO4、新建两个apphello_test1.c#include <stdio.h&g
2021-03-24 16:07:39
2197
3
原创 基于FPGA的TDC延时设计
1、参考‘https://cas.tudelft.nl/fpga_tdc/TDC_basic.html2、原理采用FPGA的CARRY4进位单元,每个CARRY4的COUT连接到下一个CARRY4的CIN,这样级联起来,形成延时链;每个COUT做为抽头输出到触发器,通过本地时钟进行数据采样。假定每个延时链的延时是固定的(最后需要标定),可通过采样值大致估算所测信号与本地时钟上升沿之间的间隔,当得到适当的标定后,可获得较高的精度。3、当前测试的芯片是XC7K325TFFG900 -2仿真中的carr
2021-03-23 18:37:01
17259
120
原创 基于Vitis AI1.2 dpu平台测试
1、软件版本ubuntu18.04.2vivado2020.01petalinux2020.01vitis2020.01芯片:zu3eg784本篇博客较长,可以先看结果,同时dp上有图片输出。参考网站设计:(1)https://github.com/Xilinx/Vitis-Tutorials/tree/2020.1/Vitis_Platform_Creation/Introduction/02-Edge-AI-ZCU104(下载备用)(2)https://www.xilinx.com/
2021-03-10 15:10:03
4374
10
原创 基于Vitis硬件加速平台测试用例-vector-add
1、参考官方网站https://forums.xilinx.com/t5/Design-and-Debug-Techniques-Blog/Creating-an-Acceleration-Platform-for-Vitis-Part-One-Creating/ba-p/1138208https://www.xilinx.com/html_docs/xilinx2020_2/vitis_doc/embeddedplatforms.htmlhttps://www.hackster.io/mohamma
2021-02-10 16:07:31
1172
2
原创 关于Vivado的综合设置使用总结
1、综合-优化资源当选择为none,综合器优化的最少,当选择为full时,综合器优化的最多,选择rebuilt时,工具自动选择一个折中的方案,对当前工程做优化。如果在rebuilt的选项不希望一些信号被优化,则可以调用原语进行约束。对于模块,想保留该模块的层次结构(* keep_hierarchy=“yes” )对于信号,在实际使用中,最好作用于寄存器,有的wire即使约束,也会被优化。( keep=“true” )2、综合-资源共享当选择为on时,使能资源共享,当选择为off时,关闭资源
2021-01-26 13:53:50
2146
原创 基于Vitis Hls加速图像处理
1、unified2020.1linux ubuntu18.04.2推荐文档链接:https://xilinx.github.io/Vitis_Libraries/vision/2020.1/overview.html#hls-standalone-modehttps://forums.xilinx.com/t5/High-Level-Synthesis-HLS/Using-Vitis-Vision-Libraries-and-OpenCV/td-p/1170435https://github.c
2021-01-07 19:04:13
3280
9
原创 Petalinux中Qt调用Opencv
1 petalinux-config -c rootfsmiliopencvqtqt-extendedx112 petalinux-build petalinux-build --sdk petalinux-package --sysroot3 image/linux sdk.sh4 sdk./sdkpath5 qt source environment-setup-aarch64-xilinx-linux6 config environment7 qt(1)**.proI
2021-01-07 10:55:49
829
原创 Petalinux2020.01 内核DMA驱动调试
1 in pl-custom/delete-node/ &axi_dma_0;/ { amba_pl: amba_pl@0 { #address-cells = <2>; #size-cells = <2>; compatible = "simple-bus"; ranges ; axi_dma_0: dma@a0000000 { #dma-cells = <1>; clock-names = "s_axi_lite_aclk
2021-01-05 16:56:52
4796
15
原创 基于FPGA的Sobel算法实现
1、图像的简单预处理对于FPGA来说是十分简单的,本篇博客是以源码的形式实现了一个行列分别均为128个长度图片做边缘检测,未对边界做进一步处理,给需要的人一些修改空间。2、程序中都是源码,未采用任何IP核。vivado:201901matlab:2019a3、模块图像输入输出均采用axis接口,其中tuser信号在输入和输出的第一个像素时被拉高,指示一帧的开始,last在输入和输出最后一个像素被拉高,表示一帧的结束。模块需要两种时钟,算法核模块需要略高于接口模块,窗口为3x3形式,参数输入为有符号数
2020-12-04 11:14:34
1067
4
原创 基于ZYNQ的GPIO多中断使用
1、工程如下2、将gpio_0、gpio_1、gpio_2和gpio_3位宽都配置为1,同时引出0和1的中断,并接入zynq的irq中断控制器。3、生成bitstream,并生成xsa文件。4、main.c#include <stdio.h>#include “xil_printf.h”#include “xparameters.h”#include “gpio.h”int main(){Gpio_Init();while(1);return 0;}gpio.c
2020-11-24 20:38:06
3459
5
原创 Petalinux 通过PL接收图片数据,ADMA或VDMA写入PS USB3.0U盘
工具版本:Ubuntu18.04.2Unified2020.01Petalinux2020.01Qt5.13.2安装过程详见以前的博客。1、工程如下图2、PS设置 对于此工程,仅仅需要配置SD卡,DP接口、USB接口和UART1接口。3、ADMA设置(同VDMA),需要注意的是with of buffer length register 这个参数的设置,这个参数的大小直接影响一次dma的数据长度4、配置数据产生模块switch_dat_gen,一张图片行长4096,列数4096,行间
2020-11-19 17:33:17
2632
4
原创 Petalinux201902-zynqMP write and read VDMA
1,create vivado project like2,export xsa3,create petalinux project4,add qt x11 mali to rootfs. then petalinux-build.5,vmda needs to reserve ddr space,ultra96 v1 has 2GB space,let addr 0x50000000 size 0x10000000 256MB space to user as dma space.so in
2020-11-11 15:49:57
1621
原创 Petalinux201902启动调试
1、报错[ 19.766019] mmc0: Timeout waiting for hardware interrupt.[ 19.771412] mmc0: sdhci: ============ SDHCI REGISTER DUMP ===========[ 19.777835] mmc0: sdhci: Sys addr: 0x00000008 | Version: 0x00001002[ 19.784257] mmc0: sdhci: Blk size: 0x000
2020-10-30 22:27:50
2194
原创 Petalinux201902调试笔记
1、解决linux中午ens33的问题sudo /sbin dhclient2、petalinux下测试U盘的读写速率u盘格式化fat32sync;time dd if=/dev/zero of=/var/sdcard/largefile bs=1024 count=102400;time sync计算存储设备中写入100M数据所需要的时间。...
2020-10-23 16:55:31
2021
原创 基于FPGA应用FFT IP核实现1024点fft运算
1、IP核设置由以上可知,延迟大约在13.772us,所以每秒可以做50000次fft。2、输入的数据,根据自己的需要,实现对1024个数据的FFT运算。比如,数据是连续的,但是我想每1秒做1000次FFT运算,则每1ms开启一次即可。因为前方采样速率是慢速时钟,FFT模块运算是稍高速模块,需要跨时钟域处理,此处应用两个1024深度的FIFO,对数据做跨时钟与处理。3、数据输入FFT,数据输出后,对前400点fft的实部和虚部取模。4、仿真中,DDS输出5M 正弦波,经过FFT以
2020-09-23 19:09:45
7593
7
原创 基于FPGA的MB核下IIC的中断接收
1、新建工程,如图所示2、生成bit,导入sdk3、c代码#include "xparameters.h"#include "xiic.h"#include "xintc.h"#include "xil_exception.h"#include "xil_printf.h"#define IIC_DEVICE_ID XPAR_IIC_0_DEVICE_ID#define INTC_DEVICE_ID XPAR_INTC_0_DEVICE_ID#define IIC_INTR_I
2020-09-03 14:29:58
1113
原创 基于FPGA实现JPEG压缩算法-灰度图像的8x8分块
1、JPEG的算法不做阐述,网上太多了,只关心FPGA代码实现,通过MATLAB的与FPGA的交互,验证代码的正确性,这篇博文主要实现图像的8x8分块处理,如输入图像256(行)x512(列)转换到1x64x2048的过程。2、截取桌面图片,剪裁到256x512个像素大小。3、matlab制作仿真数据,其中image_gray.txt为vivado要读取的数据,image_gray_mat.txt为matlab生成8x8的数据,最后验证FPGA生成数据与MATLAB生成数据是否相同,从而验证逻辑正确性
2020-08-19 14:24:01
3264
原创 基于FPGA的万兆网调试
1、高速接口测试 用ibert2、vivado2019.1无论如何修改片子,在例化ibert时都会报错,放弃vivado,在ise中ibert调试。3、(1)(2)(3)(4)(5)(6)等待生成完成后,关闭ISE.4、打开chipscope,下载example_IBERT.bit.5、在ibert console中可以修改属性,对gtx高速接口进行测试比如回环,眼图分析等,测试比较简单,不做过多介绍。6、GTX测试,VIVADO新建GTX工程,选择 7 series FP
2020-07-31 18:13:52
4640
原创 基于FPGA的CRC32_8原理与实现
最近在开发万兆网mac,由于发送和接收要在数据的尾端添加或者校验CRC32_64,决定写一篇关于CRC的文章,此博客的意义在于帮助自己和大家理解FPGA并行CRC的实现方式,为了简单说明,以CRC32_8为例讲解。1、CRC32_8生成多项式:CRC32=X32+X26+X23+X22+X16+X12+X11+X10+X8+X7+X5+X4+X2+X1+12、CRC校验原理(1)将发送数据左移K位,右侧补零(其中K为生成多项式最高次幂);(2)用移位补零后的数据对G(x)进行模2除法(其实就是异或运
2020-07-28 17:21:42
4082
8
原创 CY3014 SLAVEFIFO
1、基于CYPRESS AN659742、FPGA内部例化数据输出,每帧数据(52B)header+204810244B+(32B)tailer,间隔4096个系统时钟。3、固件(1)修改测试模式(2)修改传输模式理由不解释,可以自己测着看效果,可根据手册来修改其他参数。4、再cypress安装目录下,找到streamer的源码,用VS2015打开,编译,根据报错的提示去修改配置环境,基本改改都能通过。5、测试传输速率,且在bus hound上可以抓取到bulkin的数据。6、通过修改数
2020-07-03 10:01:55
2038
7
原创 基于FPGA PCIE dma(xapp1052)的调试
1、工具FPGA开发工具:vivado2019.1PC上位机开发工具:visual studio 2015驱动开发工具:windriver1021开发板:任意支持PCIE开发的板卡2、下载官方xapp1052资源包。
2020-06-10 18:23:01
5431
3
原创 基于MATLAB的混频测试
1、理论基础就是高中学习的公式。从公式中可以看出,两个信号相乘后,可以得到两个信号频率和和差的叠加,就比如在信号处理时,如果外部输入信号是1MHz,系统本振信号是10MHz,那经过这一系统后,可以得到9M和11M信号的叠加,如果经过一个低通滤波器,比如滤掉10M...
2020-06-10 14:19:23
4615
8
原创 基于FPGA的MB核下UART的中断接收
1、新建microblaze工程2、生成bitstream,并导入SDK,打开SDK软件。3、新建xilinx app工程,选择helloworld模板。4、在system.mss中打开关于uart中断的例子,有些代码是可以直接借鉴的。5、部分代码void user_define(){XUartLite_Recv(&UartLite, ReceiveBuffer, BUF...
2020-04-22 14:47:44
2421
1
原创 Petalinux实现qt程序输出
1、本教程涉及到linux版本下安装vivado(vitis)、qt和petalinux的安装。2、版本对应详见手册UG1144。Ubuntu Linux Workstaton/Server 18.04.02 (64-bit)Xilinx_Vitis_2019.2_1106_2127.tar.gz(需从官网下载,某盘的可能不好用)qt-opensource-linux-x64-5.14.1...
2020-04-21 21:21:25
3895
5
原创 关于时钟输入引脚为n时的调试
1、在xilinx fpga中,当输入时钟为单端时,手册上推荐时钟输入引脚为p,当输入时钟引脚为n时会对系统造成什么样的影响2、新建工程源码module clk_test(input wire clk_sys,output wire clk_out1,input wire clk_in1,output wire clk_out2);wire clk_out1_bufg;clk_...
2020-04-14 12:58:37
4424
1
原创 Petalinux挂载U盘
此过程需要虚拟机上大量的磁盘空间,首先需要正确的安装petalinux。1、基本在vitis2019.2中导出U96_LINUX_wrapper.xsa和U96_LINUX_wrapper.bit文件,通过xftp到处ubuntu虚拟机,在/home/lcl/vitis_prj/下建立xsa文件夹,将文件导出xsa文件夹。2、在petalinux安装文件夹中 source setting.sh...
2020-04-14 10:53:44
1022
原创 基于FPGA的以太网8035调试
1、电路图2、手册上推荐电路(1)2.5v推荐电路(2)1.8/1.5推荐电路3、按照以上电路图,当映射关系正确时,查上网线,网口两个指示灯应该一个常亮另一个偶尔会闪烁,即使我们不对PHY通过MDIO接口进行配置,此时是自协商状态,我的PC是1000Mbps。4、由于使用中的实际情况可能会有所不同,需要对mac-phy通路进行调试,首先进行MAC到PHY的loopback调试,只有...
2020-04-02 15:13:10
1258
4
原创 基于FPGA的摄像头MT9M034配置与采集
1、MT9M034简介具体sensor资料请查阅ds。(1)(2)(3)(4)2、模块顶端接口列表序号名称方向位宽说明1CLOCK_INinput系统时钟输入,当前板卡25M2RESET_Ninput系统复位,低有效3CMOS_DATAinput[11:0]sensor数据输入4CMOS_FRVinputsens...
2020-01-19 11:06:19
1163
原创 Vivado Hls Opencv Canny
1、根据VIVADO HLS U96 opencv这篇博客,新建canny工程,将…\xfopencv_master\examples中canny文件夹中的源文件复制到新建工程中。2、修改个别文件(1)xf_canny_config.h头文件中 ,修改图片的宽和高,为了快速仿真,如下图所示(2)xf_canny_accel.cpp源文件中,将XF_USE_URAM注销掉,如下图所示3、修...
2020-01-15 11:55:21
1127
原创 基于FPGA模块VGA2HDMI
1、模块接口说明序号名称方向说明1PXLCLK_Iinputrgb像素时钟输入71.25M2PXLCLK_5X_Iinputhdmi高速时钟输入71.25Mx5=371.25M3LOCKED_Iinput外部mmcm时钟锁定4RST_Ninput复位,低有效5VGA_RGBinput[23:0]RGB24位数据输入...
2020-01-14 16:25:57
1138
1
原创 基于FPGA的MB核下axi-dma回环测试
1、新建工程,选择正确的芯片,新建bd工程。2、点击添加ip,加入microblaze模块,点击自动连接模块。添加常数模块,将复位模块的两个复位引脚连接。对clk_wiz模块进行修改,修改为自己板卡硬件的时钟输入频率。如果有外接复位引脚则引出,无则取消。3、添加DDR3模块,添加mig 7。双击进行设置,(下列图中对设置的修改也做截图,未截图为默认配置)说明:(1)、确定DDR接口时...
2019-12-31 17:14:16
2900
1
原创 Vivado Hls Opencv Hog
1、下载xfopencv_master库。2、打开VIVADO HLS 新建工程。选择位置后,工程命名后,一直点击默认即可。3、打开xfopencv_master\examples\hog文件夹,将内部源代码和头文件复制到当前工程文件夹。4、回到工程右键点击source,点击add 将源文件和所需的头文件添加进去。5、去百度下载一个640x480像素的jpg格式图像,放到代码问价夹...
2019-12-30 11:13:40
1790
8
eth_tst_t2.rar
2020-04-02
MT9M034.rar
2020-01-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人