161
Verilog学习笔记简单功能实现(七)...............接口设计(并行输入串行输出)

利用状态机实现比较复杂的接口设计: 这是一个将并行数据转换为串行输出的变换器,利用双向总线输出。这是由EEPROM读写器的缩减得到的,首先对I2C总线特征介绍: I2C总线(inter integrated circuit)双向二线制串行总线协议为:只有总线处于“非忙”状态时,数据传输才开始。在数据 ...

SYoong @ 2018/08/27

162
异步fifo的设计(FPGA)

本文首先对异步 FIFO 设计的重点难点进行分析 最后给出详细代码 一、FIFO简单讲解 FIFO的本质是RAM, 先进先出 重要参数:fifo深度(简单来说就是需要存多少个数据) fifo位宽(每个数据的位宽) FIFO有同步和异步两种,同步即读写时钟相同,异步即读写时钟不相同 同步FIFO用的少 ...

aslmer @ 2018/08/27

163
[经验分享] 最近调试FT232H遇到的坑

cnblogs.com Yeats叶子 原创,转载请注明原始地址 - http://www.cnblogs.com/xiedidan/p/ft232h-poc.html Abstract FT232H出来有些年了,使用类似FIFO的接口,经过测试,同步模式下器件向PC发送数据可以跑到38-40MBy ...

Yeats叶子 @ 2018/08/27

164
Verilog 基础回顾 (一)

Verilog 大小写敏感,且所有关键字都是小写 1 寄存器 register = storage,是数据存储单元的抽象,可视为能够存储数值的变量 (variable that can hold value) 关键字 reg; 缺省值 x; 2 网络连接 net = connection, 表示寄存 ...

胡马依北风 @ 2018/08/27

165
基于basys2驱动LCDQC12864B的verilog设计图片显示

话不多说先上图 前言 在做这个实验的时候在网上找了许多资料,都是关于使用单片机驱动LCD显示,确实用单片机驱动是要简单不少,记得在FPGA学习交流群里问问题的时候,被前辈指教,说给我最好的指教便是别在玩这个了,多看看关于FPGA方面的书籍,比做这个单片机做的东西价值强多了。现在想来确实,自从学习FP ...

NingHeChuan @ 2018/08/27

166
基于basys2用verilog设计多功能数字钟(重写)

话不多说先上图 前言 自从学习FPGA以来,唯一做过的完整系统就是基于basys2得多功能数字表。记得当时做的时候也没少头疼,最后用时间磨出来了一个不是很完整的小系统,当时还是产生了满满的成就感。现在回头看来,先不说功能实现的如何,首先代码书写满是不规范,其中犯得最多的一个问题就是把verilog当 ...

NingHeChuan @ 2018/08/27

167
FPGA学习之路——一路走来

既然选择了远方,便不顾风雨兼程,一路走下去。 —韩彬 在看bingo的书时,看到这样写到。做什么事情都不容易,学习也是,所以一个词很重要不忘初心。作为一名大二的学生,我很高兴能够将自己学习FPGA的过程记录下来,一是方便自己以后回头看的时候能够有所感触,而是想分享自己初学入门是的一些经验给予初学者, ...

NingHeChuan @ 2018/08/27

168
关于Test--Pattern Generator IP核的测试

关于Test--Pattern Generator IP核的测试 1.Test--Pattern Generator 功能介绍 生成24-bit RGB视频流,此IP核可以用于系统测试,不需要先在片上ROM存储图片数据,然后在进行后续操作。 2.Qsys系统搭建 3.将Qsys系统生成的模块添加进入 ...

沉默改良者 @ 2018/08/27

169
异步复位、同步释放机制——系统完美稳定

白驹过隙,寒假已经余额不足,回头想想,也就是看了两本书,做了几个并不大的工程,看着QQ群里面一些大神们聊天,时不时有的没的还插几句,一句话没人理也是正常事情。有时候还帮同是菜鸟的网友解决问题,好不尴尬!在大神们的只言片语中,也汲取出来一点对行业的认识,数电、模电和信号处理这几门课没有系统的学习没有学 ...

NingHeChuan @ 2018/08/27

170
V3学院带你学习-缩短汉明码Hamming(12,8)的FPGA实现

此文章为原创出自 V3学院 www.v3edu.org,FPGA培训专家 汉明码是一种实现简单并且可以检测和纠正错误的编码, 汉明码是在原编码的基础上附加一部分数据比特,使其满足纠错码的条件。它属于线性分组码,由于线性码的编码和译码容易实现,至今仍是应用最广泛的一类码。 V3学院FPGA Veril ...

老凯 @ 2018/08/27

171
基于Vivado调用ROM IP core设计DDS

DDS直接数字式频率合成器(Direct Digital Synthesizer) 下面是使用MATLAB生成正弦波、三角波、方波的代码,直接使用即可。 设计DDS的核心就是调用IP ROM,vivado调用ROM的方法和ISE相类似,都是加载.coe文件,我这里特地做笔记,以防忘记。 这是DDS的 ...

NingHeChuan @ 2018/08/27

172
PCIE_DMA实例三:Xilinx 7系列(KC705/VC709)FPGA的EDK仿真

一:前言 好久没写博客了,前段时间有个朋友加微信请教关于PCIe的一些学习方法。本人也不是专家,只是略知一些皮毛。对于大家反馈的问题未必能一一解答,但一定知无不言。以后我会常来博客园看看,大家可以把问题直接在评论区提出来。这篇博客是应部分网友的要求写的,Xilinx升级到7系列后,原来的pcie i ...

俞则人 @ 2018/08/27

173
verilog 实现中值滤波

图像信号在形成、传输和记录的过程中,由于成像系统、传输介质、工作环境和记录设备等的固有缺陷,不可避免地产生各种类型的噪声,降低了图像的质量,进而影响后续处理(如边缘检测、图像分割、特征提取、模式识别等)的效果或准确性。因此,对噪声图像进行滤波是必要预处理过程。但滤波算法在去除噪声的同时难免对图像造成 ...

aslmer @ 2018/08/27

174
verilog写的LCD1602 显示

在读本文之前,请先阅读 LCD1602 的 datasheet(百度到处都是) ,熟悉有关的11条指令集。 LCD1602的11个指令集链接 http://www.cnblogs.com/aslmer/p/5801363.html(这是我总结的11条指令集,中英文结合) 1、LCD1602基础知识 ...

aslmer @ 2018/08/27

175
lcd1602如何自定义汉字(verilog)

今天一鼓作气,再研究了一下如何用LCD1602自定义汉字 1、用字模软件获取汉字所对应的数据(因为嫌麻烦所以直接用了网上一个帖子里有关“电”的数据,如下:04,1f,15,1f,15,15,1f,04,07)帖子链接:http://www.51hei.com/mcu/3696.html 2、主要知识 ...

aslmer @ 2018/08/27

176
FPGA编程—组合逻辑编码器等verilog实现

本篇博客主要实现对组合逻辑电路的一些常用模块的实现。组合逻辑中,包括译码器,编码器,输入输出选择器,数值比较器,算法单元等。 先来实现编码器,最常用的8-3编码器,这里先讲一下要用到的case ,casex,casez三者的关系和区别。对于8-3编码器因为用到优先级编码,所以三者的区别。Casex中 ...

raymon_tec @ 2018/08/27

177
奇数分频

奇数分频思路:(结合图示进行理解) 第一步:在时钟的上升沿和下降沿分别产生一个计数器。cnt_up 在时钟上升沿计数,cnt_down 在时钟下降沿计数(例:如果是 N 分频,就从0计数到 N-1) 第二步:根据这两个计数器产生两个控制信号 clk_up , clk_down。 注意:clk_up ...

aslmer @ 2018/08/27

178
Verilog学习笔记基本语法篇(二)·········运算符

Verilog HDL的语言的运算符的范围很广,按照其功能大概可以分为以下几类: (1)算术运算符 +,-,*,/,% !~ * / % + - << >> < <= > >= == !== ! & ^ ^~ | && || ?: 最高优先级别 ↓ ↓ ↓ ↓ 最低优先级别 (2)赋值运算符 =,< ...

SYoong @ 2018/08/27

179
Verilog学习笔记基本语法篇(三)·········赋值语句(待补充)

在Verilog HDL语言中,信号有两种赋值方式。 A)非阻塞赋值(Non-Blocking)方式(如:b<=a;) (1)在语句块中,上面语句所赋值的变量不能立即为下面的语句所用; (2)块结束后才能完成这次赋值操作,赋值的职位上次赋值得到的; (3)在编写可综合的时序逻辑模块时,这是最常用的复 ...

SYoong @ 2018/08/27

180
Verilog学习笔记基本语法篇(四)·········块语句

块语句是指将两条或者两条以上的语句组合在一起,使其在格式上更像一条语句。块语句分为两种: 1)用begin_end语句,通常用来标识顺序执行的语句,用它标识的块称作顺序块; 2)用fork_join语句,通常用来标识并行执行的语句,用它标识的块称作并行块。 A)顺序块 begin 语句1; 语句2; ...

SYoong @ 2018/08/27