FPGA
文章平均质量分 51
星空之火
FPGA 图像算法工程师
展开
-
modelsim/Questasim中添加xilinx ip库,并仿真成功
由于vivado自带仿真工具运行速度较慢,有时候需要在modelsim环境下仿真xilinx的ip,因此需要将xilinx的ip重新编译并添加至modelsim。原创 2022-04-20 21:40:07 · 2486 阅读 · 0 评论 -
DDR3 Vivado 仿真测试成功
DDR3 Vivado 仿真测试成功原创 2021-12-29 21:34:53 · 4863 阅读 · 1 评论 -
PCI Express Base Specification Revision 3.0 英文手册 免费下载
自己花钱找的资源免费分享给所有学习PCIe的同学们:百度链接:链接:https://pan.baidu.com/s/1lydqD_SiS54bq7Zyz9VsCA提取码:evpx原创 2021-05-23 12:38:38 · 5288 阅读 · 20 评论 -
Xilinx FPGA AXI4 总线学习和参考代码
AXI 总线概述以下的网址讲的非常详细,不懂的可以详细看看。我在这里也不想浪费时间了,最主要看各种信号的含义:参考网址:https://blog.csdn.net/meng1506789/article/details/111565579?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522162115029116780265443223%2522%252C%2522scm%2522%253A%252220140713.130102334.原创 2021-05-16 16:11:48 · 1903 阅读 · 3 评论 -
Aurora 8b/10b 协议和IP核设置
8B/10B编码8B/10B编码是1983年由IBM公司的Al Widmer和PeterFranaszek所提出的数据传输编码标准,目前已经被广泛应用到高速串行总线,如IEEE1394b、SATA、PCI-Express、Infini-band、FiberChannel、XAUI、RapidIO、USB 3.0的美好。8B/10B编码将待发送的8位数据转换成10位代码组,其目的是保证直流平衡,以及足够密集的电平转换。用途功能框图光纤通信的物理层介绍...原创 2020-08-08 15:41:50 · 3352 阅读 · 0 评论 -
vivado 编辑 gvim ,quartus 使用gvim
下面这个链接:vivado 设置gvim编辑器http://www.fpgabbs.cn/forum.php?mod=viewthread&tid=969&highlight=vivado%2Bgvim下面这个链接:quartus 设置gvim编辑器//blog.csdn.net/qq_33231534/article/details/104834251?ops_...转载 2020-05-03 19:24:59 · 742 阅读 · 0 评论 -
SDRAM
SDRAM主要的原理过程,首先就是要进行初始化,初始化一共有四个过程,在这些过程中,可能会有一些等待周期。然后初始化结束之后进入工作状态。其中工作状态就是写操作,读操作,还有就是自动刷新操作。如果没有写读命令时,刷新操作也会定时工作,这也是为什么sdram,就做动态存储器。如果一旦有读写命令请求时,就会进入突发读写状态。这个是SDRAM的常见参数...原创 2020-02-23 10:42:42 · 521 阅读 · 0 评论 -
组合电路
这是一个多路选择器的程序顶层文件module muxtwo(input sys_clk,input sys_rst_n,input a,input b,input sel,output reg out);always @(*)begin if(!sel) out=a; else out=b;endendm...原创 2020-02-13 10:54:41 · 228 阅读 · 0 评论 -
Altera fir ip核滤波器设计与实现
1.滤波器是信号处理中经常使用东西。自己在这两天中,也遇到很多的问题,也不断的理解滤波器的实质,其实就是一个乘累加,alter 有专门的ip核,我们可以直接使用。但是就算是调用ip核,也会遇到很多的问题,需要破解fir_ip的核,默认的licence可能没有下面自己简单的记录一下fir ip核的过程。希望可以帮到一些人。2.首先先建立一个工程。建好如下:...原创 2019-12-28 22:20:45 · 2943 阅读 · 2 评论 -
FPGA VGA学习
这篇文章写的非常好参考:https://blog.csdn.net/qq_26652069/article/details/90549752转载 2019-12-01 10:40:37 · 128 阅读 · 0 评论 -
Error (176310): Can't place multiple pins assigned to pin location Pin_F16
1.双击2.3.nceo,选中regular I/O原创 2019-11-30 14:50:34 · 2720 阅读 · 0 评论 -
IIC 读写过程
原创 2019-11-25 23:07:51 · 2103 阅读 · 0 评论 -
Xilinx ROM 仿真实验
基础:最好对xilinx vivado 的仿真熟悉。对ip核使用熟悉。1.创建一个工程2.添加顶层文件rom.v`timescale 1ns / 1psmodule rom(input clk,input rst_n,output [15:0] data ); reg [8:0] addr; //rom地址,每个地址对应一个数据...原创 2019-11-19 23:00:29 · 1859 阅读 · 0 评论 -
Xilinx ROM coe 文件matlab生成
clear allclose allclcwidth=16; %rom的位宽depth=512; %rom的深度x=linspace(0,2*pi,depth); %在一个周期内产生1024个采样点y_sin = sin(x);fid = fopen('sin.coe','wt');fprintf(fid,'memory_initialization_radix = 10;...原创 2019-11-19 22:22:13 · 478 阅读 · 0 评论 -
Altera rom 的modelsim仿真过程
modelsim ,如果不会用,自己找教程多练习一下1.仿真文件放在同一个文件夹里。其中altera_mf.v可以到C:\altera\13.1\quartus\eda\sim_lib (quartus安装的位置)port1_rom_ipcore.v 这个是rom ipcore的文件。rom_top_tb.v 是测试文件。2.我用的是modelsim SE-64 10.4...原创 2019-11-19 16:47:19 · 539 阅读 · 0 评论 -
Altera rom mif
2.默认3.根据自己的FPGA,选择4.5.新建一个顶层文件rom_top.v6.生成rom ip core7.NEXT8.9.10.11.如何生成mif,可以看一下我之前的博客:https://mp.csdn.net/postedit/10314377512.13....原创 2019-11-19 15:36:46 · 319 阅读 · 0 评论 -
Altera Rom mif 文件
clear all;% 这一处是写我们所需要的数据width=8; %宽度是 depth=256; %深度是1024 %yn=fopen('data','r');%读出来该文件夹下的数据%===============================开始写mif文件=============================== addr=0:depth-1; str_wi...原创 2019-11-19 15:35:40 · 775 阅读 · 0 评论 -
Altera FPGA FIFO注意细节
FIFO 主要用于不同的时钟域数据传输FIFO 这个地方还是有需要注意的地方。wrempty这个信号,和rdfull,最好加上下图中,rd_req,已经拉高了,但是数据并没有出来。应该是0而是延后了一个后期。稍微有些疑问。如果在实际使用时,一定要注意这一点,否者数据可能差一个周期。...原创 2019-11-18 10:10:52 · 541 阅读 · 0 评论 -
FPGA 串口发送和接收程序
更新一篇博客吧,写一写关于这周自己对串口通信的理解。也会分享一下自己写的代码,先简单的介绍一下一些概念:并行通信是指数据的各个位用多条数据线同时进行传输 串行通信是将数据分成一位一位的形式在一条传输线上逐个传输同步通信:带时钟同步信号的数据传输;发送方和接收方在同一时钟的控制下,同步传输数据。异步通信:不带时钟同步信号的数据传输。发送方与接收方使用各自的时钟控制数据...原创 2019-11-16 15:29:08 · 10603 阅读 · 5 评论 -
AP3216C
这是一款集成光传感器,距离传感器,红外LED的芯片.通讯方式:I2C器件地址:7'1E寄存器:环境光值程序过程:先向0x00地址,写入0x03,ALS+PS+IR激活,然后等待12.5ms,开始读取0XOC地址的ALS低位值,两次读需要大2us-4的等待时间,然后读取0XOD地址的ALS高位值,然后返回到等待12.5ms,继续循环下去这个比较简单:但是自己在调试过程中,...原创 2019-11-10 16:36:07 · 9300 阅读 · 0 评论 -
DS18B20 FPGA
最近,写了好几个关于通信的,只要原理理解对了,你按照时序要求,写就好了。可是有些时候,我们对通讯的时序会理解的不对。这个时候多写几个通讯时序,就慢慢熟悉了。你的DQ数据线要设置为:inout,千万别忘记了写程序之前,还是先介绍一下ds18b20的时序图:ds18b20的经典通讯过程如下:我们就可以按照这个通讯方式去写程序:只要按照这个步骤,一步一步的写就可以了:首先任何的通...原创 2019-11-09 20:02:51 · 3167 阅读 · 2 评论 -
I2C E2PROM通信
这个程序写了一天,大概10个小时吧首先:最重要的就是理解I2C的通讯协议,这点非常重要I2C:有两个引脚:SCL(时钟) SDA(数据)下面是我自己画的I2C的协议,我还是讲讲如何写FPGA的代码吧SCL时钟频率我设置为:250K我们还需要一个时钟:CLOCK为:250K*4=1M ,这个时钟可以通过系统分频产生写E2PROM的过程:读E2PROM的...原创 2019-11-04 15:35:37 · 475 阅读 · 0 评论 -
FPGA红外遥控
这个程序写了大概快一周了,每天大概花两个小时左右。第一次写这种通讯的协议,自己写代码能力不够强,经验不足。犯了很多的错误。下面是我自己对这次的总结:1.第一:写程序不能写的太多,写一点验证一点。初期,你不要太相信自己的代码水平。2.第二:要花时间去验证你写的代码,比如用sigaltap去调试你的代码,或者用led,或者是数码管3.第三:先把通信协议的原理看懂,这个所谓的看懂,是在你...原创 2019-11-04 10:51:59 · 3154 阅读 · 2 评论