凔海笔记之FPGA(二):聊聊FPGA的内部结构_上
时间:10-02
整理:3721RD
点击:
以我现在的水平来说FPGA内部结构,那简直就是管中窥豹,盲人摸象,螳臂挡车,猪鼻子插大蒜,总之,定会献丑与众,贻笑大方。
知乎说:“FPGA是现场可编程们阵列,基于硬件描述语言,半定制设计电路”。
老师言:“它就好比一张白纸,你可以在上面描述出自己想要的电路”。
可是,它到底是什么呢?
在我看来,任何构造都来源于简单的元件和复杂的逻辑,FPGA就是用简单的元件搭建出复杂的操作平台,让我们在上面定制自己想要的东西。前人是用一个一个元件去连接构造,而我们是用语言描述。例如我要进行串口通讯,那就Description一个、我想进行滤波,那就写个fir、我想模拟51单片机,那也没问题。所以说,无论是Verilog HDL还是VHDL,其中最能体现其特点的就是D(Description)。
我是从单片机转到FPGA的,所以总想对比二者区别以便更好了解。
单片机写程序是为了实现某种控制,我们把写好的程序下载到单片机的程序存储器中,然后一条条的执行,而FPGA是把所写的程序翻译成电路,从而构造出自己想要的电路。例如串口通讯,单片机已有该模块,我们的工作是开启并选择模式,而FPGA需要你描述uart的波特率,如何接收字节发送字节,这一切FPGA里面是没有的,是我们描绘出来的。
曾想到一个例子来理解FPGA。假设有一张神奇桌子,它如同哆啦a梦的四次元口袋,里面有你想要的各种食材、调味品还有饮料和酒,量是一定的但可以重复使用。而你是世界级的厨师,假设完毕。
今天心情格外的好,所以你要做这样的一桌饭。
这和FPGA有何关系呢?下面就要进行映射啦。
桌子就好比是FPGA,那桌子上食材就好比FPGA里面的资源,厨房如同开发软件,一道道菜就是一个一个模块,这一道道菜是独立的但他们也是关联的,因为他们构成这个满汉全席一份子,而满汉全席就是你的杰作。一双双筷子就好比一个个引脚,它完成输出,而且还是并行。人少你可以少做点,人多你可以多做点,但总有一个限度,就是这个神奇桌子里面食材数量的限制。
FPGA(Field-Programmable Gate Array)即现场可编程门阵列。现场可编程是不是就可以认为可以快速定制,也就是说,FPGA是可定制的,所以内部结构构造目的就是为了实现快速构造出所需要的芯片(电路)。而这个电路(芯片)是用编程的方式实现的。之所以能用编程方式而所谓的编程就是写下代码,由软件将它翻译出来,下载到FPGA。
所谓的翻译出来,就是软件把你写的代码翻译成01,如同灌溉农田一样关闭一些通道,打开一些通道,以实现你的目的。为此,FPGA采用了大量的查找表(LUT)、数据选择器和触发器来实现。具体怎么实现,下节聊
学识浅薄出拙文,如察错误望赐教,小弟在此感涕零。
凔海笔记
好文,顶一个 最近也刚弄完430,准备学arm
这个必须得顶呀
还不错,有自己的理解和认识!顶一个
!
谢谢鼓励
小编多久更新一次 啊
作为我这小菜鸟初学者,最希望有这易懂点的文章了
写的比较实在形象啊,不错不错。
“任何构造都来源于简单的元件和复杂的逻辑,FPGA就是用简单的元件搭建出复杂的操作平台”,这句话足见小编认识之深刻,受教了
一个星期更新俩三次吧
哈哈,菜鸟最懂菜鸟了
谢谢夸奖啦,说得我都惭愧了,毕竟还是菜鸟,
谢谢,持续跟进!
OK,,,,,,,
不错,看好lz,好好写。
点赞N++++++++++ 刚开始学习,简单易懂非常好
有没有持续更新呢
很好
谢谢分享,很生动形象的比喻,让人一目了然,通俗易懂,太感谢了!
笔者写的相当不错。看完了清楚了许多,学了大半年的FPGA都没搞懂,看完之后深受启发,期待下期
对对对,我也有这种感觉。特别是单片机上的程序可以单步调试,我昨天还在想在quartus上对FPGA单步调试,结果转念一想,妈蛋,并行信号那么多怎么单步啊!
2,quartus上的technology map viewer让我感觉这真的是一个个的与非门、触发器组成的,再看chip planner,哇我的工作就是来连线啊!
就这么多了
谢谢小编分享,谢谢小编分享,谢谢小编分享!
赞!
赞!1
有自己的思想给个赞
谢谢小编的分享,给2个赞!
怎么说,fpga真的是一张白纸,可以描绘出自己想要的图画,点赞
很形象啊,学习,学习,学习!
111111111111111111111111
厉害!学习了~~~~