fpga
Neo的作战室
这个作者很懒,什么都没留下…
展开
-
FPGA信号沿检测(上升沿,下降沿,双沿,单bit,双bit)
这个是我在做HDLBits中遇到的一道题,然后我查了相关资料,就总结了一下(https://hdlbits.01xz.net/wiki/Edgedetect)所有的波形均符合题目中的要求仿真的波形如下:这个是单bit信号的边沿检测,其实如果懂了单bit信号的,多bit信号也自然就会了上面最近的这幅图是每个bit位展开之后波形图,每个检测信号均占据一个时钟周期。虽然和题目中检测信号相比输入信号未延时一个周期,后期如果需要再加寄存器延迟即可。这个是代码module edgeDetect(原创 2020-10-30 11:15:18 · 2412 阅读 · 0 评论 -
记一次面试试题
线下面试某研究所,题目是这样的用1M的时钟(或者一个特别慢的时钟)去检测一个50M时钟域(特别快的时钟)里的一个毛刺信号,这个毛刺宽度为快时钟的一个周期,如何进行检测。(慢时钟频率远远小于快时钟频率)可能基础也不扎实,而且现场面试也紧张,没答出来,等出来后,冷静思考了一下其实难度并不大,大致有两种方法:clka为快时钟,clkb为慢时钟1.对毛刺信号进行扩宽在快时钟域下对毛刺进行打拍延时,具体打几拍就看快时钟是慢时钟的几倍,如果快时钟100M,慢时钟9M,就打12拍。然后对这几拍的所有信号进行或原创 2020-10-21 20:18:38 · 309 阅读 · 0 评论 -
fpga的异步复位同步释放操作
系列文章目录提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例原创 2020-09-14 16:43:55 · 329 阅读 · 0 评论 -
vivado中coe文件的生成
参考了https://www.xilinx.com/support/documentation/ip_documentation/blk_mem_gen/v8_3/pg058-blk-mem-gen.pdf文档的第87页开始的内容,并对其进行了适当的翻译。Specifying Initial Memory Contents指定内存的初始内容 The Block Memory Generator的核心使用coe文件或vivado默认的形式进行初始化.coe文件能填充内存中每一块位置。coe文件原创 2020-05-16 10:09:41 · 12111 阅读 · 2 评论 -
vivado的FIFO IP核
这是vivado中fifo的界面原创 2020-04-26 18:06:14 · 5786 阅读 · 0 评论 -
如何打开modelsim项目
在项目目录中选择.mpf文件即可原创 2020-03-29 17:57:58 · 1665 阅读 · 0 评论 -
FPGA分频——偶分频/奇分频/小数分频
一 偶分频:这个是最简单的分频操作// 偶数分频module oushufenpin( input clk, input rst, output reg div);reg [2:0] counter;always @(posedge clk) begin if (rst) counter <= 3'd0; else ...原创 2020-03-29 17:57:38 · 1125 阅读 · 3 评论 -
modelsim的自动化仿真
代码,需要先在modelsim中建立一个project#此处是注释#退出当前仿真功能quit -sim#清楚命令行显示信息.main clear# ./ 你所建项目的根目录vlib ./lib# work可以取其他名字vlib ./lib/work # 与上面的库名字相对应vmap work ./lib/work # 逻辑工作库 实际工作库 映射对应vl...原创 2020-02-22 18:41:58 · 660 阅读 · 0 评论 -
vivado中制作自己的IP核
1.制作如将下面的代码做成自己的IP核,一个138译码器module v74x138( input g1, input g2a_l, input g2b_l, input [2:0] a, output reg [7:0] y_l );always @(g1 or g2a_l or g2b_l or a) begin if (g1 ...原创 2020-02-12 17:23:16 · 2484 阅读 · 0 评论 -
verilog仿真输出信号值到文件中
如:`timescale 1ns/1nsmodule shift_tb;reg clk, rst;reg [31:0] count = 32'd0;wire k1, k2, k3, k4, k5, z;initial begin file = $fopen("D:/data_o.csv","w"); // 初始化文件endinitial begin clk ...原创 2020-02-11 18:16:07 · 3617 阅读 · 0 评论