weiqi7777

FPGA之PS2

PS2协议也很简单,和串口接收差不多,只是数据要多一个奇偶校验位。其协议时序如下,只考虑PS2接收,即只接收外部PS2数据。有两根线,一根时钟线,一根数据线。在没有数据传输的时候,两根线都是高电平。传输的时候,PS2器件会开始启动时钟和数据变换,进行数据的传输。

FPGA串口实现(带FIFO)

看了CrazyBingo的书的前几章,开始写代码实践了。刚好自己手上有一个xilinx的开发板,上面有串口的资源。索性,就来实现这个串口的功能。实现串口的发送和接收。串口的协议很简单,从网上找了个图说明下:串口所用的协议时UART协议。UART协议是异步的通信协议。只用一根

认识LUT(2)

之前,分析了LUT。也知道,LUT可以实现任意的组合逻辑电路功能,只需要预先计算输出的结果,将结果存入LUT中,即可。同时,我们还可以分析实现该组合逻辑电路最多会用到LUT个数。以6输入LUT为例。设有N个输入信号,M个输出信号。那么总共就会用到:当N<=6时:

认识LUT(1)

能得到CrazyBingo的赠书,甚是高兴啊。虽然书还没有到,还是还算是先来写篇学习心得。了表新意。学习FPGA,书上看到关于FPGA的结构,就说FPGA是由查找表和触发器来构成,LUT就相

FPGA之显示图片

FPGA之显示图片今天做了一个FPGA显示图片。特将过程记录如下:FPGA显示图片的原理:将图片内容存在FPGA的内部blockrom里面。然后写一个VGA控制模块,将rom的值依次发送,这样显示器就可以显示图片了。显示的图片为:这里要用到一个图片提取软件。pic2Mif作用是将图片转

Verilog中inout的使用

这两天在做verilog的ds1302,ds1302中有一个端口是输入/输出管教。即这个管教即是输出,同时也可以当输入。在verilog中有一个特殊的端口与之对应,就是inout。Inout这个端口,之前用得不多,所以用法也不怎么记得。但是这个地方要用,所以就要学习下。在端口申明中,可

FPGA实现dds(ISE实现)

上次说了dds的原理,这次我们用FPGA来实现dds。因为dds在da之前都是数字器件,所以我们可以用FPGA来实现dds的前两个部分。首先要先规定一下:rom的地址输入是12位,输出时8

dds学习

目前dds,用来产生信号是比较普遍的方法。dds是数字频率合成,利用数字的器件,加上da就可以产生模拟需要的正弦波,三角波,方波波形。对于一个模拟正弦信号sin(t+a)

时序分析之保持时间学习(二)

上次分析了建立时间,现在来分析下保持时间。保持时间:指在时钟上升沿到来之后,输入数据需要稳定的时间。该稳定的时间的最小值就为保持时间。&n

时序分析之建立时间学习(一)

看了摩尔吧的关于时序分析的视频,对时序分析有了真正的理解。。。之前都不知道怎么分析时序分析,看完这视频后,有了大彻大悟的感觉。&nbs

关于verilog仿真使用#和@的仿真结果不同的研究

最近仿真一段很奇怪的代码,testbench中分别使用#和@,但是输出波形不一致。代码如下;modulejdshfks(inputclk,inputen,inputrst_n,input[3:0]a,outputreg[3:0]b);always@(posedgeclk)beginif(!rst_n)beginb<=4'b0;endelsebeginif(en)b<=a;elseb<=b;endendendm

关于一段verilog代码的思考

前段时间有人在网上问以下一段代码,代表什么意思。always@(posedgeclk)beginif(rst_n)din<=0;elsebegindin<=din+1’b1;if(en)din<=a–1’b1;end初看这段代码,发现这里的din有两次进行

【技术分享】FPGA实现除法运算

我们用软件编程的时候,用到除法的时候,一个/这样的除号就搞定了。但是如果用硬件来实现除法,又是怎么样实现的了。计算机存储的数都是以二进制数来存储的,二进制的除法和我们平常用到十进制除法是一样