
FPGA
文章平均质量分 78
起魔
身处美帝水深火热中,深度DIY爱好者
展开
-
FPGA基础入门【18】开发板MicroSD接口控制--初始化
上一篇挖了个MicroSD的坑,当时以为是个小坑,做了才发现是个天坑,光是介绍就要写一整篇,因此打算把它分成两部分,一部分专门介绍SD卡接口,另一部分介绍逻辑设计和调试其实在介绍开发板的几种烧写方式时,有略微提到了怎么用MicroSD卡来烧写,但没有深入介绍是怎么使用这种小巧轻便,而且容量不小,还比较通用的存储方式,对于嵌入式攻城狮们挺有用的FPGA基础入门【15】开发板MicroSD接口控制...原创 2019-12-21 09:14:07 · 13257 阅读 · 11 评论 -
FPGA基础入门【12】开发板USB鼠标控制
FPGA基础入门【11】开发板USB-UART串口通信配置The Auxiliary Function microcontroller (Microchip PIC24FJ128) provides the Nexys4 DDR with USB Embedded HIDhost capability. After power-up, the microcontroller is in con...原创 2019-08-22 12:19:40 · 17223 阅读 · 1 评论 -
FPGA基础入门【13】开发板USB键盘控制,教你做硬核键盘侠
键盘对键盘来说,它用的是扫描码,每个按键对应一个代码,当一个按键被按下,每100ms会重复发送一次;当这个按键被松开,一个0xF0被发出,跟着是那个被松开的按键。那些可以被shift的按键,比如大小写字母和可以代表符号的数字键,它的扫描码后面会跟着shift码,FPGA需要根据这个来决定用哪个ASCII字符。有些按键,比如Ctrl和Alt被按下时,会在扫描码前先发一个E0,当它们被松开时,会发E...原创 2019-08-22 12:20:01 · 20129 阅读 · 4 评论 -
FPGA基础入门【10】开发板Ethernet PHY局域网配置
上一篇教程介绍了NEXYS4 开发板中DDR2的使用方式,这一篇介绍不可或缺的网络接口RJ45在FPGA开发板中的使用FPGA基础入门【10】开发板Ethernet PHY局域网配置板载局域网芯片网络层级模型芯片简介引脚定义数据通路控制寄存器收发时序逻辑设计状态机设计顶层代码设计板载局域网芯片NEXYS 4上的局域网接口RJ45使用常见的LAN8720A物理层芯片,支持10兆网和100兆网,...原创 2019-08-17 10:45:06 · 16392 阅读 · 1 评论 -
FPGA基础入门【15】开发板I2C温度传感器配置
上一篇教程结束了NEXYS4 开发板中MicroSD的天坑,这一篇来电不这么重口味的温度传感器配置。在NEXYS 4开发板上的温度传感器使用的是I2C接口,这个接口很常见,可以写一个模块留着以后使用FPGA基础入门【17】开发板I2C温度传感器配置开发板温度传感器I2C接口简介ADT7420简介寄存器逻辑设计I2C控制模块开发板温度传感器NEXYS 4文档中写着它使用的温度传感器名字是Ana...原创 2019-08-30 21:02:14 · 17664 阅读 · 9 评论 -
FPGA基础入门【16】开发板加速度传感器配置
上一篇教程介绍的是NEXYS4开发板上的温度传感器,用上了串口通信和I2C接口,这次使用的加速度传感器使用的是SPI接口,是除了I2C之外另一种常用的接口,实用性很高FPGA基础入门【16】开发板加速度传感器配置开发板加速度传感器ADXL362引脚定义SPI接口开发板加速度传感器NEXYS 4文档中写着它使用的加速度传感器是Analog Device的ADXL362,它和FPGA的连接如下...原创 2019-08-30 21:03:03 · 13990 阅读 · 14 评论 -
FPGA基础入门【17】开发板音频接口控制配置
上一篇教程介绍的是NEXYS4开发板上的温度传感器,用上了串口通信和I2C接口,这次使用的加速度传感器使用的是SPI接口,是除了I2C之外另一种常用的接口,实用性很高FPGA基础入门【17】开发板音频接口控制配置开发板音频控制麦克风接口简介音频输出接口简介逻辑设计结果开发板音频控制NEXYS 4文档中写着它的麦克风芯片是Analog Device的ADMP421,从前面两篇教程可以看出,NE...原创 2019-09-05 21:39:56 · 19695 阅读 · 16 评论 -
FPGA基础入门【8】开发板外部存储器SPI flash访问
前两篇教程利用数码管project介绍了chipscope和各种烧写开发板的方式,这篇开始继续探索开发板,这次关注外置存储器的控制,外置指的是芯片外部,不是开发板外部。FPGA基础入门【8】开发板外部存储器访问开发板中的外置存储器调用开发板中的外置存储器开发板的具体介绍参考此链接:NEXYS 4 DDR Manual PDF开发板上有两种外置存储器,一种是DDR2,另一种就是上一篇博文中用...原创 2019-08-13 12:52:38 · 17413 阅读 · 13 评论 -
FPGA基础入门【11】开发板USB-UART串口通信配置
上一篇教程介绍了NEXYS4 开发板中DDR2的使用方式,这一篇介绍不可或缺的网络接口RJ45在FPGA开发板中的使用FPGA基础入门【11】开发板USB-UART串口通信配置开发板串口芯片开发板串口芯片NEXYS 4开发板自带一根USB mini-B线,在板子上的接口上写着PROG_UART,就是程序烧写和UART串口通信通用接口复用的。用来实现串口通信的芯片名称是FTDI(Future...原创 2019-08-20 22:34:09 · 18437 阅读 · 1 评论 -
FPGA基础入门【2】ModelSim官方免费版安装
FPGA的入门学习中,仿真模拟是非常重要的,和软件编程中的debug是同个过程。你不会写完代码就直接用,因为你不知道写的对不对,硬件编程也一样,只是形式有所不同。ModelSim是Mentor公司的仿真软件,功能强大速度快,比起Vivado自带的仿真软件,我更爱用这个,业界也普遍这么用。如果已经下载安装过ModelSim就可以跳过这篇了多图预警FPGA基础入门【2】ModelSim官方免费版安...原创 2019-02-01 02:04:00 · 40043 阅读 · 12 评论 -
FPGA基础入门【3】Blink逻辑及仿真
从这一篇开始正式介绍FPGA中的硬件逻辑,第一个目标就是从零开始在NEXYS 4开发板上实现闪烁LED。软件编程中hello world是初学语言中实现的第一个功能,而硬件编程中blink是同等的地位,有这跨出的第一步才有之后的进步FPGA基础入门【3】Blink逻辑及仿真功能设计设计流程图blink代码详解仿真testbench详解ModelSim仿真流程功能设计硬件设计的过程是自上而下...原创 2019-02-02 02:09:23 · 2462 阅读 · 3 评论 -
FPGA基础入门【4】Blink开发板实现
继上一篇博文仿真模拟了blink代码后我们可以实际的操作vivado编译真正的image了FPGA基础入门【3】Blink开发板实现开发板信息Vivado新建项目配置constraints文件编译及烧写开发板信息我们使用的开发板是Digilent的NEXYS 4 DDR开发板,这是一款在学生圈中使用广泛的开发板,相信受众不少,使用其他板子例如Zybo或者Zedboard也可以参考相应流程。在...原创 2019-02-04 09:37:26 · 13025 阅读 · 0 评论 -
FPGA基础入门【5】数码管仿真及实现
上一篇博文介绍了NEXYS 4的第一个工程blink闪烁,初步了解了FPGA使用的流程,从这一篇开始以难度从低到高的层次逐个介绍开发板上的接口。这次就用上按钮和数码管。FPGA基础入门【5】数码管数码管介绍功能设计代码数码管介绍数码管是用来显示数字的led阵列,由7个LED显示数字并加上一个LED显示小数点。数码管分共阴极和共阳极,共阳极的意思是这八个LED的阳极是连到同一个信号上的,共阴极...原创 2019-02-05 07:41:16 · 22595 阅读 · 5 评论 -
FPGA基础入门【6】ChipScope的使用
当FPGA设计中复杂度慢慢变高的时候,仿真的手段也要增加,目前我们仿真的手段都是在ModelSim中配置相应的testbench,给模块发送需要的信号。这种软件仿真的方式有几个缺点:一个是软件仿真速度很慢,一般都不会仿真超过1秒,对于一些需要等待一段时间的逻辑就只好暂时降低等待时间;二是软件只能仿真逻辑,不会考虑电路内的逻辑延迟、时钟问题(其实可以设置延迟,但具体数字很难确定);三是软件不...原创 2019-02-06 13:06:32 · 21954 阅读 · 0 评论 -
FPGA基础入门【7】开发板的启动配置方式
到目前为止,我们把代码下载到开发板里的方式都是通过USB-JTAG数据线,编程方式简单易用。但是这种方式需要有一台电脑作为基础,需要一根数据线,而且断电之后要重新烧写,在一些情况下就会显得很不方便,比如你要拿着一块开发板做现场展示,或者直接做成产品的时候,能插上电直接用才是正道。以NEXYS 4 DDR为基础,它的manual里介绍的编程方式有4种。还是利用之前的数码管project在这篇教程一...原创 2019-02-06 14:50:16 · 15091 阅读 · 0 评论 -
FPGA中的基础逻辑单元--Altera
FPGA中的基础单元--AlteraAltera FPGA的组成部分LAB逻辑阵列方块MLABALM可编程逻辑单元LUT查找表Adder加法器Register寄存器Embedded Memory Blocks嵌入式存储模块Digital Signal Processing (DSP)数字信号处理器Clock Network时钟系统I/O接口Routing布线Altera FPGA的组成部分Al...原创 2019-01-31 05:32:09 · 12115 阅读 · 2 评论 -
FPGA中的基础逻辑单元--Xilinx
FPGA中的基础架构--XilinxXilinx FPGA的组成部分Slice系统逻辑单元Xilinx FPGA的组成部分本文是以Xilinx Kintex UltraScale+ 系列为参考所写,其他系列有所不同,可以参考相应的user guide文档。Xilinx家的FPGA有这么些基本组成部分:System Logic Cells (Slice)系统逻辑单元Block Memor...原创 2019-01-31 05:13:37 · 6796 阅读 · 2 评论 -
FPGA基础入门【9】开发板外部存储器DDR2访问
调用在这里我们需要第一次调用Xilinx的IP,所谓IP是自动生成打包好的模块,Xilinx把一些常用的功能做成了可以通过GUI配置的选项,这样可以省去大量的设计时间,使用者不需要知道所有细节知识,比如此处对DDR2的配置细节。使用的IP名为MIG,具体可以参考此文档:UG586...原创 2019-08-15 02:11:48 · 15584 阅读 · 6 评论 -
FPGA基础入门【1】Vivado官方免费版安装
本人自本科大二开始接触FPGA相关知识,现已将近五年,从这篇开始将从比较基础的角度讲述如何一步步了解FPGA。我相信动手一步步做下去是从零开始学习知识的最快方法,因此不会从最基础开始讲,而是在碰到相应知识时尽量做到对每一句做出解释。不过我依然会在合适时候写出些基础的总结篇,毕竟学习过却没有总结,总是觉得不系统。我会在一段基础知识基本出现过之后贴上链接供参考。FPGA基础入门【1】Vivado ...原创 2019-01-31 23:50:42 · 26666 阅读 · 2 评论