自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 FPGA拾忆_(11):按键控制呼吸灯_按键消抖_递进计时条件错误

对比之前我写的消抖逻辑,这次我减少了一些不必要变量,比如pose_flag,nege_flag(直接用edge_flag代替即可,不必判断是上升还是下降沿),优化了key_filter的输出逻辑(稳定后可以直接用key赋值给key_filter),具体对比可看代码。

2024-04-07 09:59:49 758

原创 数字IC学习路线总结

这个时候,你已经会使用FPGA了,但是还有很多事情做不了(比如,FIR滤波器、PID算法、OFDM等),因为理论没学好。大概地分几个方向供大家参考,后面跟的是要掌握的理论课。,参考书籍《CMOS VLSI Design A Circuits and Systems Perspective》、nMos/pMos、反相器输入输出响应、“0/1”定义,延时的定义,影响电路延时的因素(PVT)Cshell、Perl、Python学习资料挺多,不难找。--CMOS晶体管原理:半导体材料及。原理:基本组合逻辑单元、

2024-04-05 09:59:12 491 1

原创 FPGA拾忆_(10):按键控制蜂鸣器_边沿检测_按键消抖

按键消抖模块,边沿检测模块,同步打拍子操作(解决亚稳态问题)

2024-04-04 18:59:16 1135 1

原创 FPGA拾忆_(9):按键控制流水灯实验回顾

略。

2024-04-03 10:17:49 523 1

原创 FPGA拾忆_(8):LED简单实验知识点回顾

/计时器最大计数值........//时钟周期20ns。

2024-04-03 09:58:19 339 1

原创 解决用VScode写中文注释,Vivado打开之后是乱码的方法

这样就解决了中文注释乱码的问题,此外如果使用notepad++写verilog代码的话直接在notepad++上面将编码格式改为ANSI格式即可,更加方便快捷,所以此方法仅针对习惯用VScode写Verilog的同学,如果有其他好办法的话欢迎评论区补充。首先,VScode中的中文默认编码格式是UTF-8,然后Vivado的编码格式是vivado 默认的应该是ANSI编码格式,刚开始我先按照网上说明的,将VScode中的编码格式改为GBK格式(点击右下角->点击通过编码保存)。

2024-03-29 18:06:38 1533 2

原创 FPGA拾忆_(7):正点原子达芬奇pro板载资源与开发流程

在 FPGA 开发的过程中会产生很多不同功能的文件,为了方便随时查找到对应文件,所以在开始开发设计之前,第一个需要考虑的问题是工程内部各种文件的管理。1)开发过程中使用的辅助文档文件,比如一些器件的时序说明文件,绘图软件绘制的波形图文件等,该类文件存放的文件夹我们命名为 doc;4)仿真工程与仿真文件,(比如用modelsim仿真时产生的各种文件)该类文件存放的文件夹我们命名为 sim;3)开发过程中的 RTL 代码文件(各种模块代码),该类文件存放的文件夹我们命名为 rtl;

2024-03-23 21:52:59 421 2

原创 FPGA拾忆_(6):使用参数化设计实现模块的重用

parameter语句可用于设计文件和仿真文件中的参数不一致情况,比如为了减少仿真时间,需要将一些参数比如计数器计数值设置小一点,而实际的设计文件的目标计数值较大,此时可以通过parameter语句(放在设计文件)和defparam语句(放在仿真文件中的例化语句之后)来重定义参数;此外parameter也可以用于需要多次修改某个贯穿全代码的常量时,使用parameter定义常量可以方面快捷的进行修改,还可以通过设定有意义的名字来增加可读性。代码2:四个不同频率闪烁的led代码(调用四次实现)

2024-02-20 19:50:20 447 1

原创 FPGA拾忆_(5):通过计数器实现小灯闪烁_流水灯

如设置小灯闪烁时间为500ms(亮500ms,灭500ms),即周期为1s(但是周期无所谓,只看他需要多长时间翻转一次即可),而晶振频率为50MHz,时间为20ns,说明时钟周期为20ns,(如果占空比为50%,则clock信号每10ns翻转一次),目标每500ms翻转一次(即500ms来一次触发翻转的信号),则目标计数值为500ms/20ns=25000000。事实上只需要得到小灯周期的一半即可,因为小灯的周期是由亮的一半时间加上灭的一半时间得到的。(1):每计数500ms,Led

2024-02-20 00:49:07 368 1

原创 FPGA拾忆_(4):新手使用Vivado软件开发FPGA常见问题_窗口属性说明_操作说明

第一种 错误说明管脚电平未指定(通常为3.3V),第二种错误说明管脚未与芯片IO口绑定。

2024-02-19 20:08:35 448 1

原创 FPGA拾忆_(3):调用IP 计数器&BCD计数器

999之后再来cin信号,计数值错误,两个时钟之后,才恢复正常值,这是因为999+1=000,但是个位向十位传递进位时,需要一个周期,十位向百位传递进位时,也需要一个周期,所以出问题了,把cout的输出逻辑改为assign语句(即迅速传递进位信息),可以解决。通过搜索counter来添加计数器模块,需要设置的内容有:bit位(几位输出寄存器)、计数值、 加一or减一、使能方式(clock enable ,count enable)、计数方式(时钟 or carry in)、清零,置数,预载等功能。

2023-11-30 11:01:17 1194 1

原创 ZYNQ开发板相关知识----待补充

zynq是一个电路板,又有处理器(mcu)又有FPGA,分别对应PS端和PL端,可以直接在PS端写,像写stm32差不多。也可以直接在PL上写,就是平时写的FPGA。

2023-11-26 15:17:59 573 1

原创 FPGA拾忆_(2):多路选择器&仿真指导&3_8译码器

进行仿真前,如果是想在quartus中直接启动modelsim的功能仿真和时序仿真,则需要将工程的testbench仿真程序放入路径中,设置步骤:assignments-settings-EDA tools settings-simulation-设置工具名字以及testbench文件的路径,如果testbench是与工程文件夹放在一起的话,则每一次仿真时都需要选择路径,找到要仿真的testbench文件。与综合代码中的端口类型定义是不一致的,甚至可能是相反的。激励信号是reg类型!检测信号是wire型!

2023-11-26 15:15:45 491 1

原创 FPGA拾忆_(1):FPGA设计总流程

FPGA设计流程如下图所示: 设计定义:确定要实现的功能,如用按键来控制LED灯的亮灭,本质是设计一个 多路选择器(由一个按键控制两路信号),即 将功能抽象成基本电路的组合设计。 设计输入:确定输入信号与输出信号,使用硬件描述语音来描述功能。 分析和综合:综合是将抽象的RTL语言转变成具体的电路的过程,编译(Compile)与纠错过程。 功能仿真:RTL级别仿真,通过quartus II软件可以直接调用modelsim-altera进行,初下载的配置操作:(1)quartus-tool

2023-11-26 10:29:39 469 1

空空如也

空空如也

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

TA关注的人

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