当前位置: 首页 > news >正文

关于Verilog和FPGA的自学笔记1

FPGA的一些事情

一点想说的话

在我自学Verilog和FPGA这段时间之前,我找了许多教程,可惜没有一个令自己满意的(大部分视频废话有点多,听着累,很多文本教程也无法站在初学者角度进行讲授)。
于是就结合手头现有的一些例程、仅有的一点资料,外加一个豆包,开始了这段Verilog自学之旅。

花了大量时间弄懂一些东西之后,担心自己遗忘掉花了这么多代价学会的东西,也希望帮助到更多想要学习FPGA的同学们(网上有言论学历低的就不该学FPGA,如果从找工作角度来说,可能有一定合理之处,但我认为,如果喜欢一件东西,应该是去主动追求那份美好的),同时也是记录自己现在这段经历的,对于时代尖端技术的纯粹的向往,初心与一点幼稚的勇气——

于是有了以下一些博文……

希望与大家共勉 (^_^)

什么是FPGA

我最早看到FPGA,相比于CPU、GPU,脑子里是这个:
????
于是求助一下:???
看了以后,脑子里是这个:
?????????
额这什么鬼啊……

查了一些资料以后,加上看过一些自媒体的视频,最初的理解是这样的:
FPGA是一种半定制芯片,它可以根据用户的需要改变内部电路结构,从而做出更适合算法的硬件电路。

虽然看上去理解基本差不多,我想到的还是这个:
半定制?每次烧写程序还得改变硬件结构?怎么做到的?这个芯片用久了内部晶体管会不会接触不良?(捂脸)

直到我用vivado点亮了led灯,我才明白……哦~~~
FPGA内部其实只有查找表(LUT)、D触发器(Filp-flop)、进位链、块RAM组成。

那什么是查找表呢?

一开始我看见这个LUT,天真地认为是让用户对照一张表一个一个查二进制代码,然后发现zynq7020里有53,200个LUT……(再次捂脸)

其实是这样的:
虽然FPGA是可编程逻辑门阵列,但并不意味着FPGA的基本组成单元是与或非这些通用逻辑门,而是查找表
(如果有同学用EEPROM制作过7端数码管译码器就会恍然明白)
查找表本质上是一个ROM,存储着输入和输出之间所有可能的真值组合。
或者说,查找表是一个存储了包含所有可能的真值表的ROM。
FPGA用上万个存储所有可能真值表的ROM,替代了基本逻辑门,实现了更快的逻辑处理。
所以,LUT是一种资源。LUT越多,能够实现的硬件电路就越复杂。
(从一开始希望LUT少一点,到现在盼望LUT能再多一点……哈)
Vivado里的查找表(LUT)
查找表能实现逻辑运算,触发器能实现数据寄存——FPGA能实现世界上几乎所有算法了。

我记得有个博主形容FPGA里面是一堆工程师的“积木”,太恰当了。
MCU,CPU这些直接给出具体的“房子”,我们只能根据自身需要调整每个房间的用途。而FPGA则给了我们一块块砖,我们能根据需要,盖出最符合需求的房子。
这样效率和速度自然就变得极高,在一些特定场景,FPGA所能提供的算法加速,远非CPU,GPU这些"PU"们能够企及的。

那怎样决定这些查找表、触发器之间的连接呢?
这就要靠大名鼎鼎的硬件描述语言——Verilog了。(当然硬件描述语言不止Verilog一种,就像有许多高级语言一样)

关于FPGA本身,就写到这里吧。如果有不明白或错误之处,也希望大家在评论区给出,帮助大家的同时也能再次提升自己对于FPGA和Verilog的理解,感谢大家!!

http://www.dtcms.com/a/454440.html

相关文章:

  • 网站怎么做ipfs郴州 网站建设
  • Linux 串口 dmesg lsusb
  • 哈尔滨网站建设赚钱么青岛手机网站建设电话
  • 益阳高端网站建设企业信息系统案例
  • 北京公司网站优化新吴区推荐做网站价格
  • 网站优化排名875网站建设怎么样
  • 第二章 预备知识(数据操作、数据预处理)
  • 网站开发语言分为几种seo推广的作用
  • 网站空间地址哈尔滨网站设计人
  • 网站搭建运营网站可以做第三方检测报告
  • 凡客装修永康关键词优化
  • 【Spring AI】-Spring AI 概述与环境搭建
  • 什么是Maven?关于 Maven 的标准化结构、配置与项目创建
  • 在学校Linux服务器上配置go语言环境
  • 许昌做网站的公司长春做线上推广的科技公司
  • 广东省建设厅的注册中心网站建网站的公司哪里好
  • 自己做电影网站违法吗做个营销型网站设计
  • 树上启发式合并 学习记录
  • MCP 的核心概念和例子
  • 淘客做网站运营国际网站怎么样做
  • 数据结构-算法C++(额外问题汇总)
  • 广州制作外贸网站邯郸wap网站建设公司
  • 在 Ubuntu22.04 进行envoy沙盒实验
  • 速卖通 item_get 接口对接全攻略:从入门到精通
  • diy建站系统windows 做网站服务器吗
  • 2025年--Lc171--H175 .组合两个表(SQL)
  • 贪心算法 | 每周8题(二)
  • 杭州知名的企业网站建设策划连云港吧
  • 建设工程网站有哪些黄骅贴吧最近发生的事
  • 广西网站建设招标公司如何用网站做招聘