浅谈FPGA
浅谈FPGA
前言
生活中永远都不会缺少「 为什么 」,于最近就被合胜学长了,问了一个看似简单却又极具意义的问题,为什么需要FPGA?FPGA与单片机的区别是什么?瞬间刷新了我入门三天FPGA的冲击感,虽然之前有一知半解,一时间竟无法回答上来,经历了一番查资料以及咨询建云学长,至此对此问题有一个浅显的认识,后续将会随着认识的提高,不断补充此篇博客。
FPGA
啥叫FPGA?「 Field Programmable Gate Array 」,领域可编程门阵列,依然是晦涩难懂,对于一个CS的学生来说,相对醒目的还是”Programmable“这个词。相对于以往的Python、PHP、C、C++、C#、Java、JavaScript,等等之类的编程语言来说,我们一直都是基于CPU在编程,由高级语言转换为汇编语言,再进一步转化为机器语言,最后才能成为让CPU看得懂的机器码。我们始终都是基于CPU编程,CPU内部的电路结构,顺序执行指令的方式永远都不会变化。
而FPGA则是基于电路编程,通过硬件描述语言,像Verilog HDL、VHDL对硬件的电路进行描述,通过各大公司的集成设计环境,如XilinX的ISE以及Vivado一样,转化为相应的电路,并烧写到FPGA板卡中,进而实现所需功能。
因而,可以总结类似Python、C等等之类的高级程序语言是软件编程,而Verilog HDL等硬件描述语言则为硬件编程。
FGPA之于单片机
| FPGA | 单片机 | |
|---|---|---|
| 芯片 | FPGA | CPU |
| 应用领域 | 通信、图像处理、 芯片验证等 | 控制 |
| 执行速度 | 快 | 慢 |
| 串行/并行 | 并行 | 串行 |
小弟大胆设想,通过FPGA可以实现出CPU。深入解剖CPU来说,CPU内部无非是一些门电路,而通过FPGA恰巧可以设计出各种各样的电路,虽然通过FPGA实现的CPU性能方面肯定会比专用CPU性能差上几个级别,这也恰巧体现了FPGA可以用于芯片验证的特点。在设计芯片的过程中,之与以往直接上硬件的验证方式,成本消耗巨大,而FPGA的出现大大降低的研发成本,不得不说FPGA确实是改变世界的一项技术。
浅谈FPGA的更多相关文章
- 浅谈FPGA资源评估
在使用FPGA过程中,通常需要对资源做出评估,下面简单谈谈如何评估FPGA的资源. FF和LUT的数目: 这个在写出具体代码之前,初学者通常没法估算,但资深FPGA工程师会估算出一个数量级.通常的做法 ...
- 浅谈FPGA的选型
工欲善其事必先利其器,开发FPGA的第一步,当然是选择一片符合设计需求的芯片. 器件特色 选片第一个关注的应该是FPGA器件的专用资源. 例如是否需要高速接口,如果需要的话,需要多少个通道,各个通道需 ...
- 浅谈FPGA有限状态机
状态机几乎可以实现一切时序电路. 有限状态机(FiniteStateMachine, FSM),根据状态机的输出是否与输入有关,可分为Moore型状态机和Mealy型状态机.Moore型状态机输出仅仅 ...
- 浅谈用ModelSim+Synplify+Quartus来实现Altera FPGA的仿真
浅谈用ModelSim+Synplify+Quartus来实现Altera FPGA的仿真 工作内容: Mentor公司的ModelSim是业界最优秀的HDL语言仿真软件,它能提供友好的仿真环境,是业 ...
- 浅谈 Fragment 生命周期
版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/Fragment 文中如有纰漏,欢迎大家留言指出. Fragment 是在 Android 3.0 中 ...
- 浅谈 LayoutInflater
浅谈 LayoutInflater 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 源码:AndroidDemo/View 文中如有纰漏,欢迎大家留言指出. 在 Android 的 ...
- 浅谈Java的throw与throws
转载:http://blog.csdn.net/luoweifu/article/details/10721543 我进行了一些加工,不是本人原创但比原博主要更完善~ 浅谈Java异常 以前虽然知道一 ...
- 浅谈SQL注入风险 - 一个Login拿下Server
前两天,带着学生们学习了简单的ASP.NET MVC,通过ADO.NET方式连接数据库,实现增删改查. 可能有一部分学生提前预习过,在我写登录SQL的时候,他们鄙视我说:“老师你这SQL有注入,随便都 ...
- 浅谈WebService的版本兼容性设计
在现在大型的项目或者软件开发中,一般都会有很多种终端, PC端比如Winform.WebForm,移动端,比如各种Native客户端(iOS, Android, WP),Html5等,我们要满足以上所 ...
随机推荐
- 13.3SolrCloud集群使用手册之Zookeeper指令
转载请出自出处:http://www.cnblogs.com/hd3013779515/ 1.upconfig java -classpath .:/home/solr/cloud/lib/* org ...
- [USACO2004OPEN]Cave Cows 3
嘟嘟嘟 看完题后突然想起jf巨佬的话:"看到曼哈顿距离就想转切比雪夫距离." 于是我就转换了一下. 然后问题变成了求 \[max_{i, j \in n} \{ max \{ |x ...
- Android4.4 ContentResolver查询图片无效 及 图库删除 增加图片后,ContentResolver不更新的问题解决
问题背景: 参考链接 做了一个图片浏览,用ContentResolver扫描图库照片,且严格按照时间拍摄顺序排好序显示在listview里.如下图所示: 遇到的问题是在4.2的手机上能正常显示,但是新 ...
- Android 使用第三方登录(QQ和新浪微博)
账号申请什么的我就在这里略过了!(相信大家看看文档都能够处理的)本篇博客仅作引导用--主要提供给哪些不知道怎样入手的朋友.(如果需要更加强大的功能大家可以看一下开放平台上的文档,上面都有的) 使用QQ ...
- C# 匿名类型var
格式: var 名字=new {字段赋值}:c#中只是作为推断,根据赋值推断出类型,隐式类型 var. 隐式类型的本地变量是强类型变量(就好像您已经声明该类型一样),但由编译器确定类型. 1)var类 ...
- 解决eth0网卡无法自动加载的问题
问题:输入ifup eth0显示无法加载网卡所在的文件 解决办法: vi /etc/rc.d/rc.local 最后一行加入: ifup eth0 然后重启虚拟机即可解决问题. 本文为博主原创文章,未 ...
- 20155209 林虹宇 Exp3 免杀原理与实践
Exp3 免杀原理与实践 使用msf生成后门程序的检测 将上周msf生成的后门文件放在virscan.org中进行扫描 结果很危险 使用msf编码一次进行扫描 使用msf编码10次进行扫描 结果同样很 ...
- Exp9 20155218 Web安全基础实践
Exp9 Web安全基础实践 1.实验环境配置: 1.在命令行里执行:java -jar webgoat-container-7.1-exec.jar运行WebGoat,文件夹里明明有了,但是没成功: ...
- 20155229《网络对抗技术》Exp9:Web安全基础
实验内容 Webgoat实践下相关实验. 实验步骤 WebGoat: Webgoat是OWASP组织研究出的一个专门进行web漏洞实验的应用品台,这个平台里包含了web中常见的各种漏洞,例如:跨站脚本 ...
- 4字节emoji表情对应的Unicode编码获取和编码转换
GitHub Flavored Markdown 今天研究了一天Markdown移动端和pc端统一实现方式,由于以前有搞过移动端富文本编辑器,搞Markdown简单多了: 其中GFM的表情语法不错,比 ...