自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (2)
  • 收藏
  • 关注

原创 状态机(verilog)

-------------------------------------------------------------------------------------------------------学习笔记(正点原子)Verilog是硬件描述语言,硬件电路是并行执行的,当需要按照流程或者步骤来完成某个功能时,代码中通常会使用很多个if嵌套语句来实现,这样就增加了代码的复杂度,以及降低了代码的可读性,这个时候就可以使用状态机来编写代码。状态机相当于一个控制器,它将一项功能的完...

2021-10-15 17:07:47 111

原创 亚稳态与异步信号处理

一、亚稳态寄存器的 D 端信号需要满足建立时间 Tsu 和保持时间 Th 要求,否则就会出现 Q 端采样到不确定的值的状态,就是俗称的亚稳态。亚稳态是一个不稳定的状态,这个状态可能会很快迁移到逻辑 1 或者逻辑 0 的状态。如下图所示:绿色表示亚稳态。 产生亚稳态的原因:寄存器采样需要满足一定的建立时间(setup)和保持时间(holdup),而异步电路没有办法保证建立时间(setup)和保持时间(holdup),所以会出现亚稳态。 解决方法: ...

2021-10-12 16:10:00 45

原创 异步FIFO

FIFO 包括同步 FIFO 和异步 FIFO 两种,同步 FIFO 有一个时钟信号,读和写逻辑全部使用这一个时钟信号,异步 FIFO 有两个时钟信号,读和写逻辑用的各种的读写时钟,本节说的全部是异步 FIFO。异步 FIFO 有两个时钟信号,读和写接口分别采用不同时钟,这两个时钟可能时钟频率不同,也可能时钟相位不同,可能是同源时钟,也可能是不同源时钟。在现代逻辑设计中,随着设计规模的不断扩大,一个系统中往往含有数个时钟,多时钟域带来的一个问题就是,如何...

2021-10-12 11:27:14 23

原创 同步FIFO设计

FIFO 包括同步 FIFO 和异步 FIFO 两种,同步 FIFO 有一个时钟信号,读和写逻辑全部使用这一个时钟信号,异步 FIFO 有两个时钟信号,读和写逻辑用的各种的读写时钟,本节说的全部是同步 FIFO。 FIFO 与普通存储器 RAM 的区别是没有外部读写地址线,使用起来非常简单,但缺点就是只能顺序写入数据,顺序的读出数据,其数据地址由内部读写指针自动加 1 完成,不能像普通存储器那样可以由地址线决定读取或写入某个指定的地址。 FIFO 本质上是由 RAM 加读...

2021-10-12 10:56:02 38

原创 奇分频电路

实现奇数分频原理是分别用上升沿计数到 N/2+1,分频后输出时钟进行翻转,再计数到 N/2 输出 out_clk1,再用下降沿计数到 N/2+1,分频后输出时钟再进行翻转,再计数到 N/2 输出 out_clk2,将 out_clk1 和 out_clk2相或即可。我们可以通过修改 N 的值和计数器的位宽来实现其他奇数分频。out_clk1 和 out_clk2 都已经是奇数分频的时钟,只不过占空比不是 50%。`timescale 1ns / 1psmodule jifenpin(...

2021-10-12 10:09:25 23

原创 偶分频电路

(1)方法一 偶数分频,假设N(偶数)分频,只需要计数到N/2-1,然后时钟翻转、计数器清零,如此循环就可以得到N(偶)分频。`timescale 1ns / 1psmodule oufenpindianlu( input clk , input rst_n , output reg out_clk );parameter N=4;reg [N/2-1:0] cnt;always@(posedge clk or negedge rst_n)b...

2021-10-12 09:12:16 21

原创 FPGA和ASIC中的复位

数字电路中寄存器和RAM在上电之后默认的状态和数据是不确定的,如果有复位,我们可以把寄存器复位到初始状态0,RAM的数据可以通过复位来触发RAM初始化到全0。还有一种情况是逻辑进入到了错误的状态,通过复位可以把所有的逻辑状态恢复到初始值,如果没有复位,那么逻辑可能永远运行在错误的状态。因此复位功能是很重要的一个功能。同步复位: 同步复位指的是当时钟上升沿检测到复位信号,执行复位操作,有效的时钟沿是前提。always@(posedge clk)begin ...

2021-10-11 22:07:23 23

原创 格雷码转换电路

格雷码是一种二进制循环码。格雷码的特点是从一个数变为相邻的一个数时,只有一个数据位发生跳变,由于这种特点,就可以避免二进制编码计数组合电路中出现的亚稳态。格雷码常用于通信、异步FIFO或者RAM地址寻址计数器中。(1) 格雷码转换为二进制码原理如下:n位的二进制:Bn,Bn-1,Bn-2。。。B2,B1,B0;n位的格雷码:Gn,Gn-1,Gn-2。。。G2,G1,G0;转换公式:Bn=Gn; Bi-1=Bi^Gi-1;(i=0,1,...

2021-10-11 20:45:11 136

原创 边沿检测电路

边沿检测电路分为上升沿检测、下降沿检测和双沿检测电路。上升沿检测电路:下降沿检测电路:双沿检测电路:双沿检测程序如下:`timescale 1ns / 1psmodule bianyanjiance(input clk ,input rst_n ,input a ,output y1 ,output y2 ,output y3 ); reg a_dly1;always@(posedge clk or ...

2021-10-11 20:07:10 28

原创 时序逻辑中的锁存器、触发器、寄存器

1、基本概念 时序逻辑一般由锁存器、触发器、寄存器构成。 锁存器(latch):锁存器是电平触发的存储单元,数据存储的动作取决于输入时钟(或使能信号)信号的电平值,即当锁存器处于使能状态时,输出才会随着数据的输入发生变化。 触发器(flipflop):触发器是边沿敏感的存储单元,数据存储的动作由某一信号的上升沿或下降沿进行同步的·。(钟控D触发器其实就是D锁存器,边沿触发器才是真正的D触发器) 寄存器(register):寄存器是用来暂时...

2021-10-11 11:29:20 233

原创 组合逻辑中的竞争与冒险

1、概念 竞争冒险:在复杂的数字系统中信号由于经由不同路径传输达到某一汇合点的时间有先有后,就称之为竞争,英文名Race;由于竞争现象所引起的电路输出发生瞬间错误的现象(毛刺),就称之为冒险,英文名Hazard或者Risk。 如下图的简单电路,由于门电路的延时,A非相对于A信号会滞后一段是时间(时间由工艺决定),这就会导致输出产生一个干扰脉冲。 比如对于一个与门,由于跳变过程中存在延迟,A与B同时跳变,则由于A与B的竞争就产生了干扰脉冲:2、竞争与冒险的关...

2021-10-09 11:21:30 111

基于FPGA的运动目标检测与躲避系统 (2).docx

本设计基于Artix7系列的xc7a35t FPGA芯片设计了一种危险运动目标检测及躲避系统,图像采集使用OV5640摄像头,图像缓存采用DDR3,检测结果显示采用HDM显示器,用一个XYZ的三维丝杆滑台进行躲避。

2021-09-05

基于FPGA的运动目标检测与躲避系统.zip

本设计采用达芬奇fpga开发板设计了一种运动目标检测与躲避系统,文件为工程源码。

2021-10-24

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除