FPGA
文章平均质量分 93
FPGA从小白到大牛
ww丶121
这个作者很懒,什么都没留下…
展开
-
【HLS】流水线仿真之排队函数的调用
①参数retptr返回值funcptr将要调用的HLScomponent这个函数对HLS组件的一次调用进行排队。返回值存储在第一个实参中,该实参应该是指向返回类型的指针。在调用ihc_hls_component_run_all()之前,组件不会运行。②参数funcptr将要调用的HLScomponent这个函数对HLS组件的一次调用进行排队。当HLS组件的返回类型为void时,应该使用这个函数。在调用ihc_hls_component_run_all()之前,组件不会运行。③参数。...原创 2022-07-22 17:04:47 · 649 阅读 · 1 评论 -
【FPGA】I2C读写EEPROM
I2C即Inter-Integrated Circuit(集成电路总线),是由Philips半导体公司(现在的NXP半导体公司)在八十年代初设计出来的一种简单、双向、二线制总线标准。多用于主机和从机在数据量不大且传输距离短的场合下的主从通信。主机启动总线,并产生时钟用于传送数据,此时任何接收数据的器件均被认为是从机。I2C总线由数据线SDA和时钟线SCL构成通信线路,既可用于发送数据,也可接收数据。在主控与被控IC之间可进行双向数据传送数据的传输速率:各种被控器件均并联在总线上,通过器件地址(SLAVEAD原创 2022-07-09 15:27:22 · 3258 阅读 · 0 评论 -
【FPGA】DS18B20数字温度传感器实验
我们将对照原味的“ 英文手册 ”来分析实在看不懂还可以戳这里中文手册传送门!!!全英文,算了摆烂了。。。😭别急,原子哥给出了中文版结构图,这样对照起来一目了然👍DS18B20的内部结构主要由8部分组成:那么,FPGA需要怎样控制才能让DS18B20工作并将温度数据读取出来呢???温馨提示:命令解释有点繁琐,我们可以把此部分当作资料来查看,现在也可以直接去看命令用法ROM功能命令就是操作这一块“ 只读 ”的存储器64位ROM的具体内容如下图:64位ROM中的序列号是出厂前被光刻好的,它可以..原创 2022-06-16 12:03:50 · 5352 阅读 · 12 评论 -
【FPGA】基于VGA的图像显示
vga原创 2022-06-11 23:43:25 · 6892 阅读 · 0 评论 -
【FPGA】UART串口通信---基于FIFO
我们在上一章完成了UART串口通信的收发模块,这一章我们将FIFO引入进来,使用FIFO进行缓存数据,来连接串口通信的收发模块同步FIFO读和写应用同一个时钟。它的作用一般是做交互数据的一个缓冲,也就是说它的主要作用就是一个buffer1。异步FIFO读写应用不同的时钟,它有两个主要的作用,一个是实现数据在不同时钟域进行传递,另一个作用就是实现不同数据宽度的数据接口。同步FIFO和异步FIFO略有不同,下面的参数适用于两者。,用参数FIFO_data_size表示,也就是FIFO存储的数据宽度;,用参原创 2022-06-04 22:17:39 · 9199 阅读 · 4 评论 -
【FPGA】UART串口通信
这一章我们需要理解串行通信,并行通信两种方式。并理清UART串口通信的整个模块设计,然后依次编写发送模块,接收模块定义:串行通信是指利用一条传输线将数据一位位地顺序传送。(也就是说串行通信传输的数据是1比特1比特的传送的)串行通信又称为点对点通信,对于点对点之间的通信根据数据的同步方式,又分为 异步通信 和 同步通信 两种方式根据数据的传输方向与时间关系,又可分为:①单工通信、②半双工通信及③全双工通信三种方式。1.同步通信同步通信一般有一个同步时钟,如下图,一根数据线,一根时钟线。一个时钟传输一原创 2022-06-01 20:56:28 · 5789 阅读 · 1 评论 -
【FPGA】数码管电子时钟(可设置时间和闹钟)
目录前言一丶需求分析1.设置时间2.设置闹钟二丶工程源码1.counter2.seg_driver3.key_debounce4.beep5.顶层模块三丶模块原理图四丶管脚信息五丶上板验证六丶源码前言本次实验内容承接上一篇文章数码管电子时钟,在此基础上新增两个功能:1.设置时间2.设置闹钟,到点响铃一丶需求分析模块:beep counter seg_driver top其中:1.设置时间2.设置闹钟,到点响铃这两个功能都整合在counter模块,里面设置的重要信号如下所示原创 2022-05-30 23:16:12 · 10806 阅读 · 11 评论 -
【FPGA】按键消抖
目录一丶按键原理二丶按键消抖三丶消抖方式1.延迟采样①任务描述②编写代码③时序图分析④仿真2.抖动稳定后采样①任务描述②编写代码③时序图分析④仿真四丶消抖场景五丶消抖应用一丶按键原理我们首先来看原理图可以看到有4条输入线接到FPGA的IO口(最左边四个KEY)上,分两种情况:1.当按键KEY1按下时,D3V3(也就是电源)通过电阻R(原理图上折线的那一段)然后再通过按键KEY1最终进入GND形成一条通路,那么这条线路的全部电压都加到了R这个电阻上,KEY1(最左边四个IO口)这个引脚就是个低电平。原创 2022-05-22 13:31:15 · 10063 阅读 · 1 评论 -
【FPGA】如何理解全加器
目录一丶什么是全加器二丶1位全加器的Verilog实现三丶深层解析sum及cout表达式的逻辑一丶什么是全加器半加器比较容易理解,它的电路指对两个输入数据位(a、b)相加,输出一个结果位(sum)和进位(cout),但没有计算进位输入的加法器电路。输出表达式相比半加器,全加器是将低位进位输入也代入计算的加法电路,同样输出一个结果位和进位。1位全加器就是计算带进位输入的 1位二进制数的加法电路,多个一位全加器进行级联可以得到多位全加器。这里我们来理解一下低位进位和本位加法进位对照真值表:原创 2022-05-23 12:53:48 · 10275 阅读 · 4 评论 -
【FPGA】锁存器、触发器和寄存器
目录一丶锁存器1.什么是锁存器2.锁存器工作原理3.锁存器优缺点二丶触发器1.什么时触发器2.触发器工作原理3.代码实现三丶寄存器四丶锁存器与触发器的区别一丶锁存器1.什么是锁存器锁存器(latch)—对脉冲电平敏感,在时钟脉冲的电平作用下改变状态锁存器是电平触发的存储单元,数据存储的动作取决于输入时钟(或者使能)信号的电平值,当锁存器处于使能状态时,输出才会随着数据输入发生变化。(简单地说,它有两个输入,分别是一个有效信号E,一个输入数据信号D,它有一个输出Q,它的功能就是在E有效的时候把D的值原创 2022-05-22 22:46:20 · 6654 阅读 · 0 评论 -
【FPGA】状态机实验
#123原创 2022-05-12 08:31:24 · 1460 阅读 · 0 评论 -
【FPGA】数码管电子时钟
目录一丶数码管介绍二丶任务描述三丶系统框图四丶模块调用五丶模块原理图六丶工程源码1.计数器模块2.数码管驱动模块3.顶层模块七丶仿真测试1.TestBench2.仿真结果八丶管脚信息九丶上板验证十丶源码一丶数码管介绍Cyclone IV开发板上的数码管一共有6个,我们每次只能选择其中一个显示,怎么解决电子时钟时、分、秒同时显示呢?要实现电子时钟首先要了解什么是余晖效应。余晖效应一般指视觉暂留。 视觉暂留现象即视觉暂停现象(Persistence of vision,Visual staying phe原创 2022-05-24 17:14:20 · 6478 阅读 · 2 评论