- 博客(44)
- 收藏
- 关注
原创 南京邮电大学电子电路课程设计可编程音乐自动演奏电路
抖动时间的长短由按键的机械特性决定,一般为5ms~10ms。当状态为NONE时,不播放音乐,address为0,当状态为LED0时,播放第一段音乐,address等于address_1,播放第一段音乐;设置一拍时间为 1 秒,那么四分音符也就是 1 秒,三十二分音符也就是 1/8 秒,可以看到最短的时值为三十二分音符,按 1/8 秒作为最小时间单位,时间 ROM 里读出的时长数据,就是有多少个时间单位,比如第一个简谱名中音 3,为四分音符,也就是 8 个时间单位,ROM中存储的值为 8,也就是 1 秒。
2022-10-10 13:49:27
7797
原创 基于FPGA的遥控数字时钟设计
数字时钟是一种通过数字显示时间的计时装置,本次项目采用Cyclone Ⅳ系列芯片,使用QuartusII开发环境,使用VerilogHDL硬件描述语音,通过遥控进行数字时钟控制显示,本项目具备日期显示,时间显示以及闹钟等功能,同时可远程控制,使用更加便捷。关键词:遥控数字时钟;VerilogHDL;FPGA正常显示功能:正常显示时,六位数码管显示日期,时间以及闹钟。对于日期来说,前两位显示年份的后两位数,中间两位显示月份,最后两位显示日。
2022-10-10 13:37:08
2458
原创 时域中的离散时间信号02—详解离散卷积
离散卷积的八字真言:反转、平移、相乘、相加(time-reversal,delay,multiplication,addition)将h[k]进行时间反转得到h[-k],然后将h[-k]依次进行延时操作,当h[-k]的最右侧的数值和x[k]最左侧的数值重合时,开始相乘和相加操作,图中的h[k]和x[k]都是从0开始的,因此y[k]也是从0开始的,将两者k值重合的值全部对应相乘,然后相加,得到的一个数值就是对应的y[k]的值,h[-k]依次右移,直至两者没有重合k值,将得到的数值进行排列,就得到了卷积之后
2022-09-02 09:46:02
8474
原创 时域中的离散时间信号01
Sequences:离散时间信号,即时间变量离散化的信号。连续时间变量经过抽样,就可以得到离散时间信号。通常抽样时间间隔是均匀的,所以得到的信号可以称为等间隔离散时间信号。序列可以表示为{x[n]}(或x[n]),其中的n仅仅为整数的时候为有效值。例:{x[n]}={…,2,2.4,1,5,4,6,4.4,…},在一个序列中,通常要知道序列零点的位置,可以看作time index(时间索引),在零点左边的n值依次为-1,-2,…在零点右边的n值依次为1,2,…
2022-09-02 01:56:08
2055
原创 南京邮电大学电工电子(数电)实验报告——数字电路与模拟电路的综合应用
开关K2K1=01时,输出信号波形为正斜率锯齿波。开关K2K1=10时,输出信号波形为负斜率锯齿波。K2K1=11时,转换器先输入加法计数结果,然后输入减法计数结果。开关K2K1=11时,输出信号波形为正负斜率锯齿波组成的三角波。输出锯齿波时/=1KHZ;输出三角波时/,=0.5KHZ。当K1K2=11时,计数器先增后减。当K1K2=11时,计数器先增后减。当K1K2=01时,计数器递增。当K1K2=10时,计数器递减。当K1K2=01时,计数器递增。当K1K2=10时,计数器递减。...
2022-08-18 21:48:40
10751
4
原创 南京邮电大学电工电子(数电)实验报告——组合逻辑电路 & 时序逻辑电路
3、模M计数器(实现模5计数器,五个状态为3,4,5,6,7)2、D触发器(异步复位与同步使能、异步置位与异步复位)1、使用ISE软件完成时序逻辑电路的设计输入并仿真。6、掌握Testbech中组合逻辑测试文件的写法。5、使用ISE软件完成组合逻辑设计的输入并仿真。2、掌握tb中时序逻辑测试文件的写法。7、下载并测试实现的逻辑功能。3、下载并测试实现的逻辑电路。4、移位寄存器74194。...
2022-08-18 21:30:44
17166
原创 南京邮电大学电工电子(数电)实验报告——计数器 & 移位寄存器
用移位寄存器附加数据选择器电路设计101001序列信号发生器,要求具有自启动特性,用实验验证。用示波器双踪观察并记录时钟脉冲和输出波形。3、掌握数字电路多个输出波形相位关系的正确测试方法。3、掌握移位寄存型计数器的自启动特性的检测方法。1、分频比为N=5的整数分频电路波形图。4、了解非均匀周期信号波形的测试方法。4、掌握不均匀周期信号波形的测试方法。1、掌握计数器的逻辑功能及应用方法。2、掌握任意进制计数器的设计方法。2、掌握移位寄存器的具体应用方法。1、掌握移位寄存器的逻辑功能。...
2022-08-18 21:07:39
27232
1
原创 南京邮电大学电工电子(数电)实验报告——动态显示电路 & 存储器的应用
通过IP核产生位宽为4bit、存储深度为8的只读存储器,对该ROM进行数据的写入,写入4路序列信号:F1=11001100,F2=11110000,F3=11011011,F4=10111001。1.译码器及其应用:译码器一般都是具有 n 个输入和 m 个输出的组合逻辑电路,常用的译码器是有成品的,只要根据需要选用合适的型号就行了,无需自己进行设计。示波器显示:F1=11001100,F2=11110000,F3=11011011,F4=10111001。2、熟悉十进制数字显示电路的构成方法。......
2022-08-18 12:28:04
21865
2
原创 南京邮电大学电工电子(数电)实验报告——二进制全加器 & 数据选择器 & 集成触发器
设计一个3bit可控延时电路,该电路有一个输入信号CP,一个串行输入信号F1,一个串行输出信号F2,F1和F2与CP同步,另有两个控制信号K1和K2。②3bit延时电路:运用D触发器实现,将F1置于触发器D端,在后续CP作用下,触发器Q端输出即为延迟一个时钟周期的F2,将3个D触发器级联,可实现3bit延时。③控制电路:利用四选一数据选择器在开关控制下依次选择F1,Q1,Q2,Q3到数据选择器的输出端即可。用M8_1E,画出F的卡诺图,降一维,实现电路。1、掌握常用译码器的工作原理与逻辑功能。...
2022-08-18 12:09:25
25436
原创 南京邮电大学电工电子(数电)实验报告——组合逻辑电路(数字锁实验和险象的判断与消除)
用与非门设计一数字锁逻辑电路,该锁有3个按钮A、B、C,当A、B、C同时按下,或A、B同时按下,或只有A或B按下时开锁,如果不符合上述条件应发出报警。对于逻辑组合电路来说,可以根据题目给的要求列真值表,画出卡洛图得出表达式,最后再画出电路图。②卡诺图若出现“相切”的卡诺圈,且相切部分未被另外卡诺圈包围,即可断定存在逻辑冒险。按短暂尖峰极性的不同,可将冒险分为“0-1-0”型险象(也称“1”型)和。①增加多余项,在卡诺图中两圈相切处增加一个冗余圈,可以消除逻辑冒险。“1-0-1”型险象(也称“0”型)...
2022-08-18 09:22:58
8573
原创 南京邮电大学电工电子(数电)实验报告——周期信号的频谱分析 & 连续时间系统模拟
根据信号与系统相关知识可知,一个非正弦周期信号,运用傅氏级数总可分解为直流分量与许多正弦分量之线性叠加。这些正弦分量的频率必定是基波频率的整数倍,称之为谐波分量。各谐波分量的振幅和相位不尽相同,取决于原周期信号的波形。3.在电学中,系统的模拟就是从传输函数入手,用基本运算单元电路构成的具有同样传输函数的模拟装置来模拟实际系统。1.学习如何根据给定的连续系统的传输函数,用基本运算单元组 成模拟装置。2.两系统传输函数完全相同,则两系统传输特性相同。1.传输函数反应了系统的传输特性。...
2022-08-18 09:15:51
17237
1
原创 基于FPGA的IIR滤波器的实现(1)— MATLAB函数实现
本章讲解根据MATLAB提供的多种设计IIR数字滤波器的函数设计滤波器,采用根据原型转换法原理实现的四种IIR设计函数:butter、cheby1、cheby2、ellip、yulewalk。
2022-08-17 09:23:19
2455
原创 Verilog语法基础HDL Bits训练11:Counters
设计一个缓慢的计数值为10的从0到9的十进制计数器,要求在slowena信号为高电平的时候计数值进行计数,否则保持原来的计数状态。设计一个计数值为10的十进制计数器,计数值从1到10,且有同步复位。设计一个计数值为10的十进制计数器,从0计数到9,并且有同步复位。设计一个四位的计数器,从0计数到15,并且有同步复位。设计一个12小时计的时钟。...
2022-08-16 17:03:12
1018
原创 Verilog语法基础HDL Bits训练10
是一个锁存器,一般在Verilog中不是故意设计出来的锁存器是错误的,要注意避免锁存器的出现,因为锁存器不仅仅会使设计出现意料之外的错误,也会大幅占用资源。在D触发器的基础上加一个同步复位控制,根据时钟的变化而起作用。在D触发器中加入同步复位,要求复位时数值为十六进制的34。一个简单的D触发器,输出q在每个时钟上升沿根据d变化。边沿检测,具体操作就是打一拍,然后做与运算。在D触发器中加入异步复位。一个门电路加一个D触发器。一个异步复位的D触发器。一个同步复位的D触发器。创建8个DFF触发器。......
2022-08-12 13:52:35
1008
原创 基于FPGA的FIR滤波器的实现(5)— 并行结构FIR滤波器的FPGA代码实现
设计一个15阶的低通线性相位FIR滤波器,采用布莱克曼窗函数设计,截止频率为500Hz,采样频率为2000Hz;采用FPGA实现并行结构的滤波器,系数的量化位数为12bit,输入数据位宽为12bit,输出数据位宽为29bit,系统时钟2000Hz。并行结构,并行实现滤波器的累加运算,即并行将具有对称系数的输入数据进行相加,而后采用多个乘法器并行实现系数与数据的乘法运算,最后将所有乘积结果相加输出。可以看到,并行结构的FIR滤波器设计成功,并且性能相比于串行结构更好,设计成功。...
2022-08-10 22:19:20
2593
原创 基于FPGA的FIR滤波器的实现(4)— 串行结构FIR滤波器的FPGA代码实现
前面已经详尽的介绍了有关FIR滤波器的matlab实现,使用matlab生成了FIR滤波器设计所需要的响应参数,本章开始讲解如何使用Verilog语言设计FIR滤波器。
2022-08-10 13:09:34
2460
1
原创 基于FPGA的FIR滤波器的实现(3)—采用Filter Design & Analysis设计
前文已使用了几种函数进行FIR滤波器的设计,本章使用matlab提供的专用数字滤波器设计工具Filter Design & Analysis进行滤波器设计,工具的突出优点是直观,方便,使用简单,只需设计几个滤波器参数,就可以查看滤波器频率响应、零极点图、单位脉冲响应、滤波器系数等信息。......
2022-08-09 08:38:34
685
原创 基于FPGA的FIR滤波器的实现(2)—采用kaiserord & fir2 & firpm函数设计
本篇文章继续使用matlab设计FIR滤波器,采用kaiserord和fir2来设计滤波器。
2022-08-08 14:51:41
2616
2
原创 基于FPGA的FIR滤波器的实现(1)—采用fir1函数设计
在FPGA或其他硬件平台上按所需结构设计满足要求的FIR滤波器,关键在于设计出滤波器的单位脉冲响应,或者说是FIR滤波器各级延时单元的加权系数,这步便是在matlab中实现设计的,所以第一步要做的就是如何在matlab中设计出符合要求的滤波器的单位脉冲响应。本篇文章采用fir1函数设计滤波器相关参数。......
2022-08-07 22:21:42
3017
原创 Verilog语法基础HDL Bits训练 08
使用已经编辑好的一位BCD码加法器实例化进行四位BCD码加法器设计。设计一个全加器,相比较于半加器,全加器有一个进位输入。设计一个有符号数的加法器,同时判断是否溢出。设计一个一百位的二进制加法器。...
2022-07-29 21:56:16
992
原创 Verilog语法基础HDL Bits训练 07
256个这么多的选择项,case就不能用了,使用变量索引可以完成任务,同时在使用时注意变量和向量的位宽。使用位拼接法使选择更灵活。设计一个十六选一多路器。设计一个二选一多路器。
2022-07-29 19:25:25
921
原创 Verilog语法基础HDL Bits训练 06
本题可以硬解,即用case语句列出所有可能,当然,本题想要考察的是根据真值表列出逻辑表达式的知识点,推荐使用卡诺图法化简。本题需要使用前两题的语句做铺垫。看仿真波形图就可以看明白代码啦。制作一个恒温器的控制单元。...
2022-07-25 22:54:41
561
原创 Verilog语法基础HDL Bits训练 04
这是锁存器的错误示范,一般情况下,锁存器使我们不想要的,因此在编写if语句时,要加上else语句保证输出不会被锁存。分别使用连续赋值语句和always块来实现与门。使用时钟控制的always块。建立一个二选一多路器。...
2022-07-22 16:42:33
387
原创 FPGA之红外遥控
红外遥控系统由红外发射部分和红外接收部分组成。发射部分由遥控案件、编码以及调制电路、红外发光二极管等组成。接收部分由光敏二极管、解调电路等组成,最后将解调的信号输入FPGA内进行解码输出。使用的红外接收头要购买一体化红外接收头...
2022-07-21 14:44:45
2446
2
原创 Verilog语法基础HDL Bits训练 03
实例化三个模块,并且使用always块和case语句进行选择输出。有选择性的输出,用case语句和二选一判断语句都可以。在代码内部实例化模块,这在顶层文件代码中尤为多见。实例化三个模块,注意端口的连线。...
2022-07-21 00:19:00
429
原创 Verilog语法基础HDL Bits训练 02
实现将a和b按位或赋值给out_or_bitwise,将a和b逻辑或赋值给out_or_logical,将a和b按位非、非b赋值给高三位out_not、非a赋值给第三位out_not。Vectors向量,定义一组向量,可以整体赋值给另一个变量,也可以拆分为单个位数据赋值。声明向量,需要说明的是[70]w表示最高位是w[7],而[07]w最高位是w[0];未打包和打包阵列,变量名前面是位宽,后面是深度,可以近似理解为c语言中的二维数组。实现将一个八位数据扩展为32位数据,数据符号不改变。...
2022-07-18 18:38:06
722
原创 Verilog语法基础HDL Bits训练 01
在我学习FPGA之前,看过好多up主讲解怎样学习FPGA,在他们的视频中,总是能不约而同地能看到一个网站的名字HDLBits,这是一个训练Verilog语法的网站,可以对语法基础起到很正向的作用,因此我在今天开始,每天都会将HDLBits中的练习题整理出来,并附上一些自己的理解,如有表述错误,请敬请见谅,并且在评论区告诉我~...
2022-07-17 17:43:16
1582
原创 Modelsim报错“Instantiation of ‘****‘ failed. The design unit was not found.”
使用Modelsim进行仿真时出现错误:Instantiation of ‘****’ failed. The design unit was not found.在进行仿真测试文件编写时,引用了除被仿真的主体文件之外的其他模块,比如IP核、仿真模型等,出现报错:Instantiation of ‘****’ failed. The design unit was ...
2022-07-13 16:08:36
6244
6
原创 FPGA之简易DDS信号发生器设计
设计一个能产生频率可变、相位可调的能产生正弦波、三角波、方波、锯齿波的信号发生器。DDS 是直接数字式频率合成器(Direct Digital Synthesizer)的英文缩写,是一项关键的数字化技术。与传统的频率合成器相比,DDS 具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛使用在电信与电子仪器领域,是实现设备全数字化的一个关键技术。作为设计人员,我们习惯称它为信号发生器,一般用它产生正弦、锯齿、方波等不同波形或不同频率的信号波形,在电子设计和测试中得到广泛应用。...
2022-07-13 12:12:39
17370
6
原创 使用matlab使图片生成.mif文件
在使用fpga进行显示图片时,需要使用ROM IP核来进行图片的mif文件储存,本文将使用matlab生成图片的mif文件
2022-07-09 17:34:46
3095
1
原创 FPGA之简易频率计的设计
频率测量在电子设计领域和测量领域经常被使用,本篇文章将使用基于等精度测量的方法设计一个建议频率计,计算出输入信号的频率并显示在数码管上。
2022-07-07 11:41:49
6359
5
原创 FPGA基于串口RS232的数据收发及数据回环实验
在之前的文章中,我已经分别做过一次RS232的数据接收和数据发送了,本次用更容易理解的方式重新编写两种代码以及进行数据回环实验。以及学习使用In-System Sources & Probes Editor工具和串口调试工具进行调试。...
2022-07-06 12:16:01
2375
原创 FPGA按键消抖—两种按键消抖形式的对比
按键消抖是FPGA学习中的一个必备的基础知识模块,在我的学习过程中,共碰到过两种按键消抖模块,分别是在**《小梅哥FPGA自学笔记》**和**《FPGA Verilog开发实战指南》**之中,两种方式的实现有着略大的不同,下面分别列举两种方式。**如果赶时间,可以跳过第一种方式,之间看第二种。**...
2022-07-02 10:49:23
3874
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人