鉴于精力有限,虽然博主本科专业涉及到了一些硬件方面知识,但时间已经久远,所以博客的内容仅限于扫盲用,记录一下过程吧:

博主这边从Xilinx着手了解,一些信息可以从官网获取。Xilinx在2020年被AMD收购。

这款开发板上的FPGA芯片的信息介绍可从官网获取到

https://www.xilinx.com/products/silicon-devices/fpga/artix-7.html#productTable

其主流几款系列的介绍可见如下博客

xilinx 产品系列 - 知乎

什么是SOC芯片? - 知乎

另个一大原厂品牌就是Altera,2015年被英特尔收购。

ARM和FPGA之间的通信(硬件原理图篇)_illusionistyy的博客-CSDN博客_arm fpga

FPGA与DSP/ARM通信方式详解_programmer-guan的博客-CSDN博客_arm fpga 通信

博主又抽时间大概翻了翻数电

不翻还好,翻下后,感概颇多,看到了熟悉的逻辑函数,真值表示法,逻辑表达式,逻辑图,波形图,卡诺图表示法,逻辑函数中的最小项,CMOS构成的非门,与非门、或非门、异或门等功能电路,CMOS漏极开路门,三态输出门电路,组合逻辑电路的分析(输出只与输入有关系),明确逻辑功能,写真值表,写出逻辑表达式,SR锁存器,D锁存器,D触发器、JK触发器、T触发器,SR触发器,了解各触发器的特性表,后面最为重要的时序逻辑电路(除了输入之外,还和上一次状态相关),相关的逻辑方程组,状态表,状态图,时序图的表达,逻辑方程组求解中的一些步骤(输出方程组、激励方程组、状态方程组),然后常用的74HC/HCT374寄存器的逻辑图,一些典型的集成电路,如74LVC161的功能表,包括后面的555电路,这边只能到这种程度了,知道下数字电路实现的方式,以及如何去了解分析它的逻辑功能。毕竟计算机世界是由0和1构成的,还是得知道下如何靠数字电路去实现0和1的功能的。这本书里其实也介绍了verilog语法和FPGA,当年在校时并没有深入去探究,读研和毕业工作后,路也越走越偏,渐渐往软件和算法方向去了,现在基本也接触不到了,还是很可惜的,虽然现在还是挺感兴趣的,无奈时间精力有限。但博主硬件方面大概的原理还是了解的,后续不会生计奔波了,也许会再当兴趣爱好整整!

1.下载安装VIVADO

2.在Quick Start栏选择Create Project

3. 如下界面参见自己所用开发板配置

4.完毕后进入主界面

5.添加一个sources

6.创建一个文件

7.接下来开始编辑test.v

8.简单的实现一个与功能

`timescale 1ns / 1ps
//
// Company:
// Engineer:
//
// Create Date: 2022/04/01 21:52:08
// Design Name:
// Module Name: test
// Project Name:
// Target Devices:
// Tool Versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
//
//function: a&b
// 0 0 0 ;0 1 0 ;0 0 0; 1 1 1module test(
a,
b,
out
);input a;
input b;
output out;assign out = a & b;endmodule

9.完毕后,点击Run Synthesis

10.完毕后,再次Add sources(仿真文件)

11.这边取名为test_tb

12.打开生成的text_tb文件

13.文件中内容如下:

`timescale 1ns / 1ns
//
// Company:
// Engineer:
//
// Create Date: 2022/04/01 22:18:49
// Design Name:
// Module Name: test_tb
// Project Name:
// Target Devices:
// Tool Versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
//module test_tb();reg s_a;reg s_b;wire out;test test_inst0(.a(s_a),.b(s_b),.out(out));initial begins_a=0;s_b=0;#200;s_a=0;s_b=1;#200;s_a=1;s_b=0;#200s_a=1;s_b=1;endendmodule

14.完毕后点击如下按钮进行仿真

15.查看仿真生成的时序图,结果是对的

16.接下来点击Run Implementation,等待处理完毕

17. 再选择时序仿真,可以查看时序波形图

18.点击Open Implemented Design,可看到

19.菜单栏选择I/O Planning

引脚分配如下:

完毕后保存下,可以查看一些相关信息

20.创建Bitstream

21.打开Open Hardware Manager, 连接上FPGA开发板

22.如下将程序下载到板子上去跑跑看

23.观察板子情况,可以看到两个开关朝上拨,即两个变量都为1时,led亮了

 如上一个简单的通过verilog语言控制FPGA的demo就结束了,鉴于精力有限,博主后面不会再深入研究,只是扫扫盲。

Verilog语言控制Xilinx FPGA引脚demo相关推荐

  1. xilinx c语言u16,Xilinx FPGA LVDS应用

    最近项目需要用到差分信号传输,于是看了一下FPGA上差分信号的使用.Xilinx FPGA中,主要通过原语实现差分信号的收发:OBUFDS(差分输出BUF),IBUFDS(差分输入BUF). 注意在分 ...

  2. Xilinx FPGA引脚官网以及导入Excel编辑

    在工程中,不可避免地需要分配管脚和经常查阅引脚信息,所以将Xilinx FPGA引脚相关信息整理: xilinx官方,关于fpga管脚的网址如下: https://china.xilinx.com/s ...

  3. 基于FPGA的永磁同步伺服控制系统的设计,在FPGA实现了伺服电机的矢量控制, 坐标变换,电流环,速度环,位置环,电机反馈接口,SVPWM 都是通过Verilog 语言来实现的

    基于FPGA的永磁同步伺服控制系统的设计,在FPGA实现了伺服电机的矢量控制, 坐标变换,电流环,速度环,位置环,电机反馈接口,SVPWM. . . 都是通过Verilog 语言来实现的,具有很高的研 ...

  4. 通过Verilog 语言来实现基于FPGA的永磁同步伺服控制系统的设计,在FPGA实现了伺服电机的矢量控制

    基于FPGA的永磁同步伺服控制系统的设计,在FPGA实现了伺服电机的矢量控制, 坐标变换,电流环,速度环,位置环,电机反馈接口,SVPWM... 都是通过Verilog 语言来实现的,具有很高的研究价 ...

  5. 基于FPGA的永磁同步伺服控制系统的设计,在FPGA实现了伺服电机的矢量控制 都是通过Verilog 语言来实现的

    基于FPGA的永磁同步伺服控制系统的设计,在FPGA实现了伺服电机的矢量控制, 坐标变换,电流环,速度环,位置环,电机反馈接口,SVPWM. . . 都是通过Verilog 语言来实现的,具有很高的研 ...

  6. 基于FPGA的数字电子琴——数电小系统设计【数字电子技术】(使用Vivado中的verilog语言)含piano代码文件(全)

    目录 一.电路功能描述 二.方案设计 1. 总体设计方案 2. 对原理框图或程序流程图做出简单解释 3. 各模块介绍 3.1 音频驱动模块 3.2 LED显示模块 3.3 数码管显示模块 3.4 矩阵 ...

  7. FPGA学习之verilog语言入门指导

    本人985硕士,在此分享下学习过程,verilog通关!本人博客页也分享了很多课程设计和毕业设计,欢迎收藏观看订阅!谢谢支持! 在学习之前,要思考下为什么学习FPGA,老师要求?项目要求?课题组要求? ...

  8. verilog语言实现FPGA板的交通信号灯

    数字电子技术课程设计报告 设计题目: 交通信号灯 目录 一.概述 二.任务书(任务功能介绍) 三.系统设计 1.基本原理 2.系统设计框图 四.各单元设计(Verilog源代码及仿真图) 五.总体电路 ...

  9. XILINX FPGA和CPLD引脚约束步骤

    XILINX FPGA和CPLD管教约束 1.XILINX CPLD引脚配置 打开ISE,这个工程所用的芯片是Coolrunner II CPLD系列的XC2C32A,找到floorplan IO-P ...

最新文章

  1. Python学习(四)
  2. Visual Studio中检测内存泄漏的方法(一)
  3. VTK:ShareCamera分享相机用法实战
  4. HTML5 Canvas中绘制矩形
  5. ×××数据库导数据ora-01400错误小计
  6. KVM虚拟机安装使用教程(Ubantu)
  7. 5·29 深圳 | 百度大脑生态合作计划及 AI 市场发布会即将登场
  8. dell2100服务器组装,戴尔poweredge r730服务器配置及系统安装详解教程
  9. android 动态添加listview,动态向listView Android添加元素
  10. [WP8.1UI控件编程]SemanticZoom控件实现分组列表
  11. 编程基本功:以输入法为例,谈谈测试案例的设计
  12. 谷歌代码规范的中文版
  13. Java 坐标系相互转换
  14. 如何升级iOS 16正式版?iOS 16正式版一键刷机教程
  15. HBulider 制作 手机APP
  16. 在這個神奇的國度找個正常點兒的DNS都很困難
  17. JVM和Java体系架构
  18. 孩子发烧是细菌感染还是病毒感染?教你秒懂血常规!
  19. 罗克韦尔Rockwell Automation EDI 项目
  20. 浅析配音的类别以及不同

热门文章

  1. 整理下OSS方面的资料,免得到处找,linux音频编程,open sound system
  2. Dell+win10 进入Bios界面设定u盘启动详细图解
  3. 关于思科无线网络无法连接解决
  4. 「Python」利用高德地图做你想做之事
  5. 微信小程序开发学习5(自定义组件)
  6. SONET、SDH、POS简介
  7. django发送ajax请求 获取 b站视频封面图片
  8. 2021基于Debian的All in One(NAS+软路由)配置教程
  9. Hair-Gan论文翻译
  10. 【Proe】三维模型转二维CAD图