自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 我的 FPGA 学习历程(15)—— Verilog 的 always 语句综合

在本篇里,我们讨论 Verilog 语言的综合问题,Verilog HDL (Hardware Description Language) 中文名为硬件描述语言,而不是硬件设计语言。这个名称提醒我们是在描述硬件,即用代码画图。在 Verilog 语言中,always 块是一种常用的功能模块,也是结构最复杂的部分。笔者初学时经常为 always 语句的编写而苦恼,不知道使用哪种赋值语句,...

2019-09-18 17:35:00 1725

转载 雕刻机制作 PCB 指南

之前使用过感光蓝油制作过 PCB,虽然感光法精度高,但个人制作耗时耗力,发给厂家周期又很长。看到国外的网友使用雕刻机制作 PCB 视频之后。几番周折之后还是成功了。有感于网上几乎没有一份完整的雕刻机法制作 PCB 的资料。撰写此文的目的就是希望其他使用雕刻机制作 PCB 的朋友不要像我一样把时间浪费在折腾工具上面。这里我们使用雕刻机制作 PCB,俗话说,工欲善其事,必先利其器,首先...

2019-04-10 12:37:00 2459

转载 我的 FPGA 学习历程(14)—— PWM 脉冲宽度调制

PWM 是一种调节输出功率的技术(俗称调压),其原理在于改变输出方波的占空比,具体输出见下图:输出信号为电压值,当负载为恒阻时,上图中的输出功率分别为 25%、50%、75%。实现方法如下:设置一个计数器,上图中的第一行就是个 4 位的计数器,每满 15 自动变为 0。那么可以得到输出频率等于时钟的 1/16。当计数器的值小于某个值的时候输出 0,高于或者...

2016-06-27 07:32:00 3133

转载 我的 FPGA 学习历程(01)—— FPGA 基础知识和 Quartus 的安装

高级的嵌入式市场主要分为以下三类:ARM、DSP 和 FPGA。 其中 ARM 是行业内的佼佼者,目前几乎所有的安卓智能手机都使用 ARM 授权的 CPU架构;而 DSP(数字信号处理器) 早年就被大面积的应用与电话、DVD、通讯基站等领域。DSP 与 ARM 的区别在于,ARM 是通用 CPU,DSP 则是专用 CPU。FPGA 则与他们不同,FPGA 的...

2016-05-30 13:14:00 552

转载 我的 FPGA 学习历程(13)—— 电子钟项目

在秒表上一些其他模块就可以变成电子钟了,使用以下约定:使用 KEY[0] 作为复位按键,复位后显示 00:00。使用 KEY[1] 作为调整/暂停按键,暂停时电子钟调整的两个灯管保持 1Hz 的频率闪烁。使用 KEY[2] 作为调整左移按钮,KEY[3] 作为调整右移。 具体看原理图,太大了分成四块:代码如下:...

2016-01-10 07:24:00 202

转载 我的 FPGA 学习历程(12)—— 电子钟项目准备

初学 FPGA 的时候,我们总是存在很多疑问,比如:xilinx 和 altera 的 FPGA 那种比较好、verilog 语言被如何综合成具体硬件电路、RTL 级电路是什么意思等等。现在我们就不会迷惑于那些基本的概念问题,是时候来写一个小小的项目了。我决定编写一个没有日期功能的电子钟,还可以来复习以前学过的模块。 这个项目有些复杂,一次不太可能成功,...

2015-12-31 12:02:00 165

转载 我的 FPGA 学习历程(11)—— 实验:按键消抖

按键是一个输入设备,在理论上可以归为开关一类,理想的按键波形如下:然而由于按键的机械特性,断开和闭合动作是不可能在一瞬间完成的,实际的波形如下:抖动期间电平处于临界值,由于晶振的频率相当的高,数字电路会判断到许多个变化的值,数字波形图大致如下: 根据经验总结,按键抖动的时间一般在 5 ~ 10ms 之间,消抖可以使用低通滤波法,但 FPG...

2015-12-25 21:29:00 554

转载 我的 FPGA 学习历程(10)—— 实验:数码管驱动

根据黑金 AX301 手册,数码管位选信号命名为 SEL[5:0],其中 SEL[5] 对应最左边的数码管,而SEL[0] 对应最右边数码管;作为约定,在下面的描述中我们对应的称之为数码管 5 和数码管 0。数码管的段选信号被命名为 DIG[7:0];DIG[7] 为小数点 DP,DIG[6] 为数码管 g 段,DIG[0] 为 a 段,其他类推即可。 由...

2015-12-11 21:40:00 666

转载 我的 FPGA 学习历程(09)—— 时序逻辑入门

讲到这篇时,组合逻辑就告一段落了,下面是一些总结:描述组合逻辑时,always 语句中的敏感信号列表中需要列出全部的可能影响输出的变量描述组合逻辑时,always 语句中的赋值总是使用阻塞赋值符号 =组合逻辑是描述输入和输出关系的功能块,由于延时的原因,输出可能会有毛刺,为避免避免毛刺需要引入冗余逻辑。if..else case 语句只能用在 always 语句中,而...

2015-12-09 11:43:00 296

转载 我的 FPGA 学习历程(08)—— 实验:点亮单个数码管

数码管是一种常见的用于显示的电子器件,根据数码管大致可以分为共阴极和共阳极两种,下图所示的是一个共阳极的数码管的电路图(摘自金沙滩工作室的 51 开发板电路图),我的 AX301 开发板与这张图的情况类似,几乎所有的教科书上都会讲到数码管的原理,这里我就不再详述了。 由于多个数码管的段选信号(下图中的 DB0~DB7)是共用的,想要显示多个数字需要用到动...

2015-12-07 16:29:00 530

转载 我的 FPGA 学习历程(07)—— BCD 编码:移位加 3 算法

2-10 进制码,也称为 BCD 码,它的编码方式则是通过一个 4 位二进制来表示一个 10 进制数,部分十进制对应的 BCD 码如下 十进制数 | BCD 码 13 --> 0001_0011 14 --> 0001_0100 19 --> 0001_1001 20 -->...

2015-12-02 18:37:00 646

转载 我的 FPGA 学习历程(06)—— 二进制转格雷码

格雷码是一种无权编码,其特点是相邻的两数之间只有一个位不同,像这样: 000-->001-->011-->010-->110-->111-->101-->100对比二进制码是这样的: 000-->001-->010-->011-->100-->101-->110--&gt...

2015-11-24 10:17:00 326

转载 我的 FPGA 学习历程(05)—— 使用 Modelsim 仿真工具

在第 3 篇中讲到了如何使用图形进行仿真激励输入,图形输入法尽管简单易学,但如若要求复杂的仿真输入激励、较长的仿真时间或是要求打印输出信息乃至输出文件日志则显得不够用了。 本篇以上一篇的 3-8 译码器为基础,讲一下 Modelsim 仿真工具的使用方法。在 Modelsim 中不再提供图形的激励输入方法,取而代之的testbench 测试脚本。test...

2015-11-22 17:29:00 305

转载 我的 FPGA 学习历程(04)—— 练习 verilog 硬件描述语言

这篇讲的是使用 verilog 硬件描述语言编写一个 3 - 8 译码器。 3 - 8 译码器是一个简单的组合逻辑,用于实现并转串,其输入输出关系如下: | 输入 | 输出 | ----------------- 000 ...

2015-11-22 11:15:00 343

转载 我的 FPGA 学习历程(03)—— 使用 Quaruts 自带仿真工具

在上一篇中详细的介绍了怎样创建原理图工程,这篇同样使用原理图工程新建一个多路选择器,目的是学习使用图形输入的仿真工具输入仿真激励。 新建工程,并绘制以下的原理图。 编译项目,会多出一个警告: Critical Warning (169085): No exact pin location assignment(s) for 4 pins...

2015-11-16 13:14:00 1368

转载 我的 FPGA 学习历程(02)—— 实验:点亮 LED 灯

关于 Quartus 的操作可以使用 Quartus 自带的帮助,帮助中带有全套的操作教程。中文网络教程链接(链接至 altera中文官网,点击观看)Quartus II 软件设计系列:基础Quartus II 软件中的原理图设计SignalTap II 嵌入式逻辑分析器使用 Nios II 处理器系统控制台Nios II 处理器开发软件:设计流程Ni...

2015-11-14 15:40:00 1119

空空如也

空空如也

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

TA关注的人

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