自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (3)
  • 收藏
  • 关注

原创 ISE14.7添加工程外部的IP核

ISE添加外部IP核

2022-04-16 15:11:57 1652 1

原创 ISE MAP出错:“ERROR:PhysDesignRules:1683 - Unsupported programming for BSCAN block and ...............“

FPGA ISE 的ICON核使用

2022-01-19 15:14:56 1125 1

原创 ISE调用除法器IP核注意事项

本人的问题是:被除数:位宽20,固定常数,除数:位宽不固定,但小于20,变量调用IP核时选用的dividend和divisor的位宽均为20,现象时商qutient一直错误。解决办法:被除数位宽改为40或者更大,输出的商正确,(除数和被除数相等时,也出错)...

2021-11-14 12:16:26 2113

原创 ISE14.7用自带XST综合时:ERROR:NgdBuild:604

“ERROR:NgdBuild:604 - logical block 'TEMPERAURE_CTRL/AD7893 ’ with type ‘ad7893’ could not be resolved. A pin name misspelling can cause this, a missing edif or ngc file, case mismatch between the block name and the edif or ngc file name, or the misspellin

2021-10-26 11:01:26 680

转载 2021-01-06

转载博客,Quartus工程中各文件类型的含义

2021-01-06 09:08:25 95

原创 2020-12-29

FPGA中**.sof(SRAM object file)**的定义和作用利用Quartus II里面的”help“菜单搜索就能找到如下的释义:其他介绍可参考如下博客:1、Altera FPGA开发过程中sof、pof、jic文件的区别2、Altera QuartusII 程序BIN文件sof、pof、jic文件的区别...

2020-12-29 09:42:57 161

原创 2020-12-03

Verilog中不同位宽的变量之间赋值问题一、****长位宽赋值给短位宽的截断问题无论左操作数、右操作数是有符号数还是无符号数,都是直接截断高位,如下例子:wire [7:0] a;wire[3:0] b;initialbegina = 8’b1000_0100;# 10endassign b = a;赋值结果为:b = 4’0100二、****短位宽赋值给长位宽的扩展问题对于短位宽赋值给长位宽的情况,需要对高位进行位扩展,具体是扩展1还是扩展0,记住:完全依据右操作数!,具体如

2020-12-03 09:14:55 977

原创 2020-12-02

ModelSim仿真出现红线(不定态),中间信号没连线,没有初始化修改前代码:没有将z1,z2,…,z9赋值给t1,t2,…,t9,ModelSim仿真出现了dx,dy奇葩的不一致现象,红线起始点还不一致。如下图所示:给z1,z2,…,z9赋值之后,代码图和仿真图如下,除了刚上电瞬间,dx,dy的红线消失。...

2020-12-02 11:33:57 160

原创 2020-12-02

ModelSim仿真波形出现蓝线(高阻态),查中间信号如下图所示,pr/cr/nr三个信号输出正常,prb/crb/nrb三个信号输出高阻态(Z)查看相应的顶层模块sf_pipeline,发现pr/cr/nr既是行寄存器row_reg的输出,也是行缓冲器row_buf的输入,只不过这两个模块的中间信号命名和row_reg的输出一样。我出的问题在于声明中间信号pr/cr/nr时位宽出错,row_reg输出信号的位宽为32位,而我声明的为8位,因此导致另一个模块row_buf输出呈现高阻态,如下图所示。

2020-12-02 09:14:14 349

原创 2020-11-27

复位信号rst_n没有拉高在对Sobel边缘检测算子进行仿真时,发送了系统启动信号start之后,节拍信号beat一直维持在0,表示系统根本就没开始工作。我反复查看verilog代码,感觉没错啊,是的,忽视了写tb测试激励的时候,rst_n=0,后面一直没拉高,如此简单的低级错误,我傻坐了半天。。。...

2020-11-27 10:26:07 59

原创 2020-10-25

价值观年轻的时候应该给自己加上无穷的压力,然后把自己所有的潜能都激发出来,哪怕后面灰头土脸、不成功,也无所谓。至少回忆的时候觉得,我度过了一个非常激烈的青春岁月

2020-10-25 22:12:19 73

转载 2020-09-06

锁存器、触发器、寄存器和缓冲器区别https://blog.csdn.net/surgeddd/article/details/4683657

2020-09-06 19:15:12 86

转载 2020-08-20

好文推荐,建立时间和保持时间概念详解,

2020-08-20 19:04:46 154

转载 2020-08-16

FPGA常见面试题(转)转FPGA常见笔试面试题

2020-08-16 09:19:34 175

原创 FPGA实现Sobel边缘检测算法

传统Sobel算法实现主要分为两步:一是图像窗口像素的生成,二是梯度的计算。算法的具体实现步骤可参考https://blog.csdn.net/baidu_34971492/article/details/99976686。这里主要分享一下本人遇到的一点小问题:(1)按照参考例程,平方根器的输入radical会一直是蓝线(高阻态);解决办法:将pa_xpa_x + pa_ypa_y单独拿出来计算并赋值给中间信号i_radical,将其作为平方根器的输入,之后蓝线就会消失。(2)对于有符号数的计算,需要用

2020-05-18 16:31:20 732

原创 编译出错“Error (10170): Verilog HDL syntax error at pc.v(22) near text: "h"; expecting ";"”

难发现的语法错误,把“20’h00000”写成了“20h’00000”,图一错误提示,图二出错之处![在这里插入图片描述](https://img-blog.csdnimg.cn/20200315164616871.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nL...

2020-03-15 16:50:03 33030 1

原创 Modelsim仿真时不报错,不出波形“# A time value could not be extracted from the current line”

组合逻辑如果以always段书写,但是没有写敏感表“@ ()”如下图所示:(1)quartus或者modelsim在编译的时候都不会对这个产生错误或者警告。(2)modelsim仿真时会一直卡在那里,出现“A time value could not be extracted from the current line”,仿真无波形,如下图所示:...

2020-03-04 16:48:36 4499 4

原创 Matlab将TXT文件的十六进制转二进制

MATLAB将txt中的16进制数据转成2进制注意:(1)textread读取文件的路径就是原16进制txt文件的路径(2)txt文件生成的路径就是.m文件的路径clear;clc;a= textread('E:\..prj\liu.txt','%s'); %读取文件中十六进制数据,不能有中文d= hex2dec ( a ); %将十六进制转化成十进制b =...

2019-12-02 16:46:00 4270 1

转载 FPGA时序约束

转载https://blog.csdn.net/u012176730/article/details/54412323

2019-11-28 09:07:59 176

原创 FPGA基础之VGA(四)黑白棋盘

一、VGA原理参见博文VGA(一)二、黑白棋盘2.1 棋盘显示算法根据棋盘中每个小方格行列坐标之和的奇偶性来显示不同的颜色,和是奇数显示白色,偶数显示黑色。2.2 显示原理每个小方格包括40X40个像素点,640X480总共可以形成16X12个小方格。在同一个小方格内的像素点应该具有相同的属性,即它们的行列坐标应该相同。具体实现,水平计数器和垂直计数器分别除40,将得到的结果最低位进行...

2019-11-27 16:09:52 3423 3

原创 FPGA基础之VGA(三)移动方块

一、VGA原理参见文章VGA(一)二、移动方块原理2.1 方块的初始位置和大小初始位置设置为(H0,V0),它距离有效显示区域原点的水平距离为Q_HS_RANGE=20,垂直距离为Q_VS_RANGE=15。方块的大小可以自行设定,定义常量Q_LONG和Q_WIDTH2.2 方块的显示根据水平和垂直方向计数器,产生2个方向的使能脉冲,进而产生方块有效显示区域的使能脉冲en0。2.3 ...

2019-11-27 16:02:36 2397 3

原创 FPGA基础之VGA(二)彩条显示

一、VGA原理基本原理参见前一篇VGA(一)文章二、彩条显示原理彩条显示原理,可以将场同步信号的中间480行依次分成三段,每一段显示一种颜色,根据cnt_vs的计数到哪一行产生使能脉冲,根据使能脉冲输出颜色。三、代码1、顶层模块module vga_stripes ( input wire clk, input wire rst_n, output wi...

2019-11-27 15:54:44 3020 2

原创 FPGA基础之VGA(一)满屏红色

一、 项目分析用VGA显示全屏的红色,VGA(Video Graphics Array,视频图形阵列)是一种电脑显示标准。开发板采用至芯科技zx-1学习板,VGA视频显示接口是256色,颜色位深为8,RGB332的高三位是红色,中间3位是绿色,最低2位是蓝色,当vga_rgb=111_000_000时,显示全红。1.1 原理分析1.1.1 硬件电路原理VGA的硬件电路原理如图1- 1所示,...

2019-11-26 22:47:40 1875

原创 FPGA与Vince步进电机驱动器

一、工程简介1、 本工程实现的功能:用FPGA通过两个按键控制步进电机的启动和停止,硬件包括:黑金开发板、步进电机和Vince步进电机驱动器和电脑。2、FPGA通过控制电机驱动器来控制步进电机的旋转,通过控制脉冲个数来控制电机角位移量,控制发送脉冲频率来控制电机的速度和加速度。3、FPGA与Vince步进电机驱动器之间的通讯协议采用RS232电平标准的串口通信(UART),FPGA发送给驱...

2019-11-08 10:43:17 1645

原创 FPGA基础之数字信号发生器(DDS)

一、DDS原理最近在复习至芯培训课程的DDS部分,DDS的核心主要包括频率发生器、相位累加器和波形存储器三部分。波形存储器的作用是存储不同相位对应地址的波形值,相位累加器根据不同的相位产生对应的地址,用于选择不同的波形值,频率发生器根据输入频率产生频率控制字,其大小决定了相位累加器地址累加的速度,不同的累加速度决定了输出不同的频率大小。二、本工程的相关说明实现的功能如下:输入有四个按键,分别...

2019-10-27 23:00:47 4898 8

原创 FPGA之矩阵键盘

一 、矩阵键盘原理如何将自己理解的东西教给别人,这是一门学问,我很不擅长,所以希望通过写点博客,来锻炼自个的表达能力,如有错误之处,敬请谅解。我们要写的是矩阵键盘的驱动,因此必须先了解键盘的工作原理,只有知道键盘需要什么样的信号、有哪些输入输出,你才好确定驱动该怎么写。...

2019-10-13 23:11:14 6538 7

原创 FPGA之二进制转BCD

一、二进制转BCD的由来电脑中的数据是以二进制来存储的,而人类习惯的是用十进制来表示数据,所以为了人与电脑之间更好的理解与沟通,所以就有了它的存在。二、原理用四位的二进制来表示十进制值,就是二进制转BCD,如10位的二进制最大可以表示4位的十进制数值,所以可以用16的BCD码值来表示这4位十进制数值。三、代码(1)顶层module bin2bcd # (parameter WIDTH_...

2019-10-06 21:02:46 838 2

原创 FPGA之序列检测的状态机实现

一、序列检测的原理比如在FPGA和外设进行通讯时,一般会在发送数据之前,提前发送一段序列如1010110,当检测到发送的数据和正确序列一致时,我们就通过FPGA给外部设备发送一个flag标志信号。二、实现方式-三段式状态机首先要绘制状态转移图,确定状态个数及状态之间的跳转。状态转移图如下 序列检测状态转移图三、...

2019-09-29 22:33:46 1071

原创 使用Modelsim新建工程

一、新建Modelsim工程1、点击File > New > project,如下图1所示。图12、选择工程位置location > 命名工程test > 点击OK,如图2图23、创建.v文件或者添加.v文件,如点击添加 > 选择文件位置 > 打开edge_check,如图3,至此完成工程创建.图3二、在原工程中添加.v文件1、找到project...

2019-09-22 21:44:43 2977 3

FPGA与Vince步进电机驱动器.zip

代码包括两部分:一是按键控制,二是Vince步进电机控制。按键控制包括按键的消抖和边缘检测;步进电机控制包括串口发送数据,可以是实现32数据转8位数据的发送。

2019-11-08

数字信号发生器,代码、仿真和下板均可

DDS(数字信号发生器)的视频课程,实现的具体功能如下: 输入的四个按键可实现波形选择(方波、锯齿波、三角波和正弦波)、幅度调节、对应波形的频率加和频率减;输出对应有蜂鸣器、数码管和波形三个,按键按下蜂鸣器就响一声,同时6个动态数码管显示波形、幅度和频率对应的数字,以及输出波形

2019-10-27

fpga_uart_pc.zip

本工程代码是对串口收发数据的扩展,资源包括串口数据的收发,读出和写入FIFO的调用,以及按键输入和数码管的显示,期间会涉及分频产生特定的波特率和如何用线性序列机实现数据收发。

2015-04-07

空空如也

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

TA关注的人

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