资料介绍
我常年担任多个有关 FPGA 学习研讨的 QQ 群管理员,长期以来很多新入群的菜鸟们总是在重复的问一些非常简单但是又让新手困惑不解的问题。作为管理员经常要给这些菜鸟们普及基础知识,但是非常不幸的是很多菜鸟怀着一种浮躁的心态来学习 FPGA,总是急于求成。再加上国内大量有关 FPGA 的垃圾教材的误导,所以很多菜鸟始终无法入门。为什么大量的人会觉得 FPGA 难学?详细讲一下菜鸟觉得 FPGA 难学的几大原因:
1、不熟悉 FPGA 的内部结构,不了解可编程逻辑器件的基本原理。 FPGA 为什么是可以编程的?恐怕很多菜鸟不知道,他们也不想知道。因为他们觉得这是无关紧要的。他们潜意识的认为可编程嘛,肯定就是像写软件一样啦。软件编程的思想根深蒂固,看到 Verilog 或者 VHDL 就像看到 C 语言或者其它软件编程语言一样。一条条的读,一条条的分析。如果这些菜鸟们始终拒绝去了解为什么 FPGA 是可以编程的,不去了解 FPGA 的内部结构,要想学会 FPGA 恐怕是天方夜谭。虽然现在 EDA 软件已经非常先进,像写软件那样照猫画虎也能综合出点东西,但也许只有天知道 EDA 软件最后综合出来的到底是什么。也许点个灯,跑个马还行。这样就是为什么很多菜鸟学了N 久以后依然是一个菜鸟的原因。那么 FPGA 为什么是可以“编程”的呢?首先来了解一下什么叫“程”。启示“程”只不过是一堆具有一定含义的 01 编码而已。编程,其实就是编写这些 01 编码。只不过我们现在有了很多开发工具,通常都不是直接编写这些 01 编码,而是以高级语言的形式来编写,最后由开发工具转换为这种 01 编码而已。对于软件编程而言,处理器会有一个专门的译码电路逐条把这些 01 编码翻译为各种控制信号,然后控制其内部的电路完成一个个的运算或者是其它操作。所以软件是一条一条的读,因为软件的操作是一步一步完成的。而 FPGA 的可编程,本质也是依靠这些 01 编码实现其功能的改变,但不同的是 FPGA 之所以可以完成不同的功能,不是依靠像软件那样将 01 编码翻译出来再去控制一个运算电路, FPGA 里面没有这些东西。FPGA 内部主要三块:可编程的逻辑单元、可编程的连线和可编程的 IO 模块。可编程的逻辑单元是什么?

其基本结构某种存储器( SRAM 、FLASH 等)制成的 4 输入或 6 输入 1 输出地“真值表”加上一个 D 触发器构成。任何一个 4 输入 1 输出组合逻辑电路,都有一张对应的“真值表”,同样的如果用这么一个存储器制成的 4 输入 1 输出地“真值表”,只需要修改其“真值表”内部值就可以等效出任意 4 输入 1 输出的组合逻辑。这些“真值表”内部值是什么?就是那些 01 编码而已。如果要实现时序逻辑电路怎么办?这不又 D 触发器嘛,任何的时序逻辑都可以转换为组合逻辑+D 触发器来完成。但这毕竟只实现了 4 输入 1 输出的逻辑电路而已,通常逻辑电路的规模那是相当的大哦。那怎么办呢?这个时候就需要用到可编程连线了。在这些连线上有很多用存储器控制的链接点,通过改写对应存储器的值就可以确定哪些线是连上的而哪些线是断开的。这就可以把很多可编程逻辑单元组合起来形成大型的逻辑电路。最后就是可编程的 IO ,这其实是 FPGA 作为芯片级使用必须要注意的。
- 单片机初学者编程经常会碰到的问题及处理办法
- Python新手经常会犯那些错误 16次下载
- 学习EMC经常会碰到哪些问题
- 使用FPGA经常会碰到哪些问题应该如何解决 14次下载
- Linux入门经常会碰到那些问题应该如何解决 21次下载
- 模拟噪声分析经常会出现那些误区
- 射频电路设计经常会碰到那些问题应该如何解决
- 物联网经常会碰到那些安全威胁 0次下载
- SPI总线经常会碰到什么错误应该如何解决 6次下载
- JLINK_V8固件烧写经常会碰到那些常见的错误
- 写Keil C51经常会遇到的那些坑你碰到过吗没
- Protel使用中经常会碰到那些常见问题及详细解答 0次下载
- 初学单片机会碰到那些误区
- FPGA设计有哪些良好的设计方法及误区 23次下载
- FPGA良好设计方法及误区的详细资料说明 13次下载
- 新手学习单片机最常见的六大误区! 1.8k次阅读
- 综合布线系统的常见误区 1.1k次阅读
- 单片机的程序开发经常会出现那些错误 5.5k次阅读
- 常见的电源适配器经常会碰到那些问题 4.9k次阅读
- PCB设计过程经常会犯那些错误 2.1k次阅读
- 电子负载经常会碰到什么故障应该如何解决 5.9k次阅读
- 使用protel经常会碰到的60个问题详细解答 6k次阅读
- 初学单片机经常会有那些不容易掌握的知识点 3.8k次阅读
- 使用Word经常会碰到的小问题解决方法详细说明 4.5k次阅读
- 关于FPGA学习的一些误区 1.2k次阅读
- FPGA设计的接口模块 2.6k次阅读
- 浅析机器学习建模中常见的7个误区 4k次阅读
- 分享六大秘诀来克服RF信号路径上常会碰到的问题 6k次阅读
- FPGA学习的四大误区 771次阅读
- 新手福音:概述学习FPGA的一些常见误区 8.5k次阅读
下载排行
本周
- 1MDD品牌三极管MMBT3906数据手册
- 2.33 MB | 次下载 | 免费
- 2MDD品牌三极管S9012数据手册
- 2.62 MB | 次下载 | 免费
- 3联想flex2-14D/15D说明书
- 4.92 MB | 次下载 | 免费
- 4收音环绕扩音机 AVR-1507手册
- 2.50 MB | 次下载 | 免费
- 524Pin Type-C连接器设计报告
- 1.06 MB | 次下载 | 免费
- 6新一代网络可视化(NPB 2.0)
- 3.40 MB | 次下载 | 免费
- 7MS1000TA 超声波测量模拟前端芯片技术手册
- 0.60 MB | 次下载 | 免费
- 8MS1022高精度时间测量(TDC)电路数据手册
- 1.81 MB | 次下载 | 免费
本月
- 1爱华AIWA HS-J202维修手册
- 3.34 MB | 37次下载 | 免费
- 2PC5502负载均流控制电路数据手册
- 1.63 MB | 23次下载 | 免费
- 3NB-IoT芯片厂商的资料说明
- 0.31 MB | 22次下载 | 1 积分
- 4H110主板CPU PWM芯片ISL95858HRZ-T核心供电电路图资料
- 0.63 MB | 6次下载 | 1 积分
- 5UWB653Pro USB口测距通信定位模块规格书
- 838.47 KB | 5次下载 | 免费
- 6技嘉H110主板IT8628E_BX IO电路图资料
- 2.61 MB | 4次下载 | 1 积分
- 7苏泊尔DCL6907(即CHK-S007)单芯片电磁炉原理图资料
- 0.04 MB | 4次下载 | 1 积分
- 8100W准谐振反激式恒流电源电路图资料
- 0.09 MB | 2次下载 | 1 积分
总榜
- 1matlab软件下载入口
- 未知 | 935137次下载 | 10 积分
- 2开源硬件-PMP21529.1-4 开关降压/升压双向直流/直流转换器 PCB layout 设计
- 1.48MB | 420064次下载 | 10 积分
- 3Altium DXP2002下载入口
- 未知 | 233089次下载 | 10 积分
- 4电路仿真软件multisim 10.0免费下载
- 340992 | 191439次下载 | 10 积分
- 5十天学会AVR单片机与C语言视频教程 下载
- 158M | 183353次下载 | 10 积分
- 6labview8.5下载
- 未知 | 81602次下载 | 10 积分
- 7Keil工具MDK-Arm免费下载
- 0.02 MB | 73822次下载 | 10 积分
- 8LabVIEW 8.6下载
- 未知 | 65991次下载 | 10 积分
电子发烧友App





创作
发文章
发帖
提问
发资料
发视频
上传资料赚积分
评论