SLW好久没用vivado了,最近有事重新回来看了看,对于新版本已经不知道怎么用了,于是就摸索了一下,写一篇帖子,以作记录。一、2018与之后的版本的不同2018之后的版本将硬件和软件部分进行了分离,我感觉不是很舒服,可能对厂家比较有利吧。之前是需要将比特流导进去就行,好久没用了,具体忘了。2019及以后的版本,前面的流程都是差不多的,一直到生成比特流。之后需要根据硬件生成一个xsa文件,这个文件的作用就是在vitis里生成platform,工程就建立在platform之上。二、vivado中的工作1.搭建block工程,生成顶层文件最好Uart也打开,方便调试。一定要注意DDR的选型!不然可
最近在做一个项目,需要使用到高精度的ADC采集,由于项目对采集速率并没有太高的要求,所以就将成本尽可能地花在采样精度上,最后选择了TI的ADS1256这款比较热门的24位高精度AD芯片,调完后来写篇文章记录一下。手册分析老规矩,在介绍如何用FPGA控制其进行AD转换之前先来聊聊它的数据手册。(1)框图以及引脚介绍如上所示为ADS1256的整体框图,从左到右为整片的测量顺序,模拟输入经过选择器后到Buffer,然后是PGA,再是模数转换单元,最后是通信和时钟接口,一目了然,下面介绍一下该芯片的引脚。(左图为ADS1255,使用方式和ADS1256一摸一样,只是片内资源少了许多,改一下寄存器配置即
初学FPGA第一天,一遍听课一边总结的笔记分析不一定准确若有错误请务必指出 来源:小明教IC-1天学会verilog(2)_哔哩哔哩_bilibiliVerilogHDL基础知识-百度文库一.分析计数器:从表中看出1.q*应该是q的下一个数值 比如q^n+1和q^n的关系 clk的向上箭头表示时钟上升沿触发2.reset为1时cin中的x意思是无论cin取何值,遇到时钟上升沿时,q*置03.reset为0且cin为0时,遇到时钟上升沿时,q*=q,保持计数4.reset为0且cin为1时,遇到时钟上升沿时,q*=q+1,开始计数5.同步清0指的是当4位达到最大值的时候(2进制的1111,也就
简介卷积是图像处理中很常见的一种操作,3x3是最常见的窗口大小。如果像素是一个个来的,要想实现3x3卷积,就得同时获取一个像素和它周围的8个像素,将输入像素缓存2行,这样就能同时获取3行的像素输入,此时再将这3个并行输入的像素移位进3x3窗口,就获得了3x3卷积模板,如图:这里要注意,输入像素此时作为第三行数据输入3x3窗口,最下面的行缓存输出的才是第一行像素,上图窗口的右下角是3x3卷积模板的左上角,窗口的左上角是3x3卷积模板的右下角。实现两行缓存并获取3x3卷积窗口,用shift-ram是最简单的实现方法。shift-ram简介shift-ram是一个ip核,quartus13.0中叫做
一、各类存储器简介ROM:只读,只有读接口(读地址、读数据)RAM:可读可写,有读接口(读地址、读数据)和写接口(写使能、写数据、写地址),默认任何时刻都能读,没有读使能,大小和位宽查手册,需要持续供电才能将数据保存在其中(易失性存储器),断电数据丢失单端口RAM:读写共用一个数据通道,读写不能同时进行伪双端口RAM:两个数据通道,一个用来读一个用来写真双端口RAM:两个数据通道,都可以用来读或写DRAM:动态随机存取存储器,数据存储在电容器中,通过保持电荷实现数据存储(比如电容器充电和放电分别为1和0),价格低,消耗功率高,最常用作计算机的主存储器,需要不断刷新(由于电容器内部用于分隔导电板
信号发⽣器的设计与实现1.输出波形:⽅波(占空⽐50%)、锯⻮波、三⻆波、脉冲信号(占空⽐连续可调)、正弦波、任意波等2.输出频率:100KHz3.波形选择:使⽤拨码开关选择思路: 使用FPGA搭建信号发生器DDS,重点是制作能够提前下载进开发板板载ROM的数据文件,这里用到的是mif文件,里面保存了数种波形(正弦波,方波,三角波,锯齿波)的点值,这些点值是由前期采样得来的,然后编写verilog代码,实现功能选择(波形选择等),在quartus中配置所选器件的ROM,将mif文件加载进去,在代码中调用rom中的数据,然后仿真时绘制显示波形,这时显示的是离散的数字信号,可以在仿真端mods
目录1.算法描述2.仿真效果预览3.verilog核心程序4.完整verilog1.算法描述 AES,高级加密标准,是采用区块加密的一种标准,又称Rijndael加密法.严格上来讲,AES和Rijndael又不是完全一样,AES的区块长度固定为128比特,秘钥长度可以是128,192或者256.Rijndael加密法可以支持更大范围的区块和密钥长度,Rijndael使用的密钥和区块长度均可以是128,192或256比特.AES是对称加密最流行的算法之一. AES算法在对明文加密的时候,并不是把整个明文一股脑的加密成一整段密文,而是把明文拆分成一个个独立的明文块,每一个明文块长度1
Vivado2018.3手把手详细下载很多人在下载vivado的时候很头疼,牛马哥也是一样,下载了巨久。所有这里带大家手把手下载。1、官网下载安装包先找到vivado官网,注册xilinx的账号,在他们的产品里面找到vivado。因为我们要下载的是2018.3这个版本的,所以找到他们的历史版本,在2018.3里面选择下载上图框出来的安装包。我的阿里云盘也有安装包分享:https://www.aliyundrive.com/s/MjQfRcAJMRz提取码:ya182、开始安装我们双击点开下载好的安装包,之后会和下图一样提醒你是否更新最新版的vivado,我们这里选择continue来继续
文章目录前言一、便携式数字示波器设计1.1设计原理及思路1.2系统技术指标二、示波器各模块作用2.1LCT2308介绍2.2adc.v模块介绍2.3time_scaler.v模块介绍2.4trigger.v模块介绍2.5vga.v模块介绍三、VGA两种像素数据传递方式四、硬件介绍及结果分析五、工具使用5.1运用逻辑分析仪及Modelism5.2制作嵌入式linux-SD系统启动卡5.3学习HPS和FPGA的地址映射5.4将电脑与开发板通过NFS进行挂载六、设计过程中方向上出现的问题前言 本设计是一个4通道便携式数字示波器,采用DE1-SOC双核心开发板进行设计。示波器的数模转换器采用LCT2
目录前言一、时钟BUFFER使用总结二、普通IO输出时钟信号时的推荐方法使用ODDR前言Xilinx-FPGA开发过程中,关于时钟信号和普通IO信号引入FPGA内部需要遵循一定的使用方法,现在自己一年多使用过的内容做一个总结,也供新手参考。关于BUFFERS原语,主用用于对端口时钟信号及其他重要信号的缓冲和驱动,满足FPGA底层硬件综合布线规则,以正确且充分的利用FPGA全局时钟树资源。一、使用总结1、IBUFG+BUFGIBUFG+BUFG是最常用的使用方法,可以用BUFGP,BUFGP=IBUFG+BUFG。个人经验:如工程设计中使用局时钟树资源,一般使用clockingwizardIP和