1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
云汉达人 邀请回答
FPGA是英文Field Programmable Gate Array的缩写,即现场可编程门阵列,它是在PAL、GAL、EPLD等可编程器件的基础上进一步发展的产物。它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。 FPGA采用了逻辑单元阵列LCA(Logic Cell Array)这样一个新概念,内部包括可配置逻辑模块CLB(Configurable Logic Block)、输出输入模块IOB(Input Output Block)和内部连线(Interconnect)三个部分。FPGA的基本特点主要有: 1)采用FPGA设计ASIC电路,用户不需要投片生产,就能得到合用的芯片。 --2)FPGA可做其它全定制或半定制ASIC电路的中试样片。 3)FPGA内部有丰富的触发器和I/O引脚。 4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。 5) FPGA采用高速CHMOS工艺,功耗低,可以与CMOS、TTL电平兼容。 可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一。 目前FPGA的品种很多,有XILINX的XC系列、TI公司的TPC系列、ALTERA公司的FIEX系列等。 FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。 加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可。当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能。因此,FPGA的使用非常灵活。 FPGA有多种配置模式:并行主模式为一片FPGA加一片EPROM的方式;主从模式可以支持一片PROM编程多片FPGA;串行模式可以采用串行PROM编程FPGA;外设模式可以将FPGA作为微处理器的外设,由微处理器对其编程。 |
|
|
|
云汉达人 邀请回答
FPGA入门学习 第一,首先得学会其语言。个人比较推荐学习Verilog HDL,VHDL不是太推荐,因为学VHDL的人相对少一些,如果你硬是要学习VHDL的话,可能要走的路会更崎岖一点,当你遇到困难,你能求助的人会比较有限,如果你对VHDL特别有情怀的话,也可以先学习Verilog HDL再学VHDL,先入门(Verilog HDL)再锦上添花(VHDL)。 第二,学会了编程语言,接下来最好再预习或者复习一下数电这本书,对数字电路有一个清晰的理解。 第三,学了那么久的语法书,是不是想小试牛刀一下,现在你需要一本FPGA工具使用书籍,先理解FPGA工具的使用,试着自己不看书去编写简单代码,并在集成开发环境(比如赛灵思的Vivado和ISE)中编译通过,如果遇到报错,看看是不是语法上是不是出错了,比如少个标点或者使用了中文字符,这个阶段你只需要按照你的逻辑去编写代码,编译通过即可。 第四,前面进行了大量的准备,现在是时候开始实战了,如果你资金充沛,可以去购买一款适合自己的FPGA开发板,一分钱一分货,有入门的也有专业性很强的开发套件。 第五,你把前面那些路都走过了,那么恭喜你,你已经成功入门FPGA,你现在需要的是提升自己,做一些进阶性的训练。现在,你又得回归课本,去好好的学习高等数学学习算法,试着编写DDS、数字滤波器等代码,因为FPGA大多数时候是应用在大数据处理或者实时性要求高的场合中,所以,做FPGA开发算法要比较好一些。 第六,提升自己的过程都是有一些难度的,懂得求助别人是一个非常重要的品质,期间你可以在很多论坛都可以发帖求助,比如电子创新网,DIGILENT中文技术论坛等。 FPGA技能树 以下是在知乎上看到的FPGA工程师的技能树(可点击放到哦),挺有意思的,看看你爬到哪儿了呢? FPGA就业谈 最后说说就业。FPGA就业领域比较集中在通信、图像和一些高端设备中,进入门槛会高一些。笔者在通信行业从事FPGA开发工作,日常的主要工作职责包括修改代码以满足客户提出的需求,再或者有更高性价比的芯片出来,进行芯片的更替,除此以外,还有新机型的评估与设计。 个人理解,FPGA开发的核心主要有三点:1、系统需求和FPGA资源评估;2、代码编写以及仿真验证;3、板上调试;这3点都需要在学习和工作中慢慢积累经验,目前有一些前沿技术对FPGA有较大需求,如对实时性准确性要求很高的无人机和机器人,还有高速摄像机等,都对当前的微处理提出了相当高的要求,FPGA是一个很不错的选择。 最后简单说一下体会吧,归结起来就多实践、多思考、多问。实践出真知,看100遍别人的方案不如自己去实践一下。实践的动力一方面来自兴趣,一方面来自压力,我个人觉得后者更重要。有需求会容易形成压力,也就是说最好能在实际的项目开发中锻炼,而不是为了学习而学习。 在实践的过程中要多思考,多想想问题出现的原因,问题解决后要多问几个为什么,这也是经验积累的过程,如果有写项目日志的习惯更好,把问题及原因、解决的办法都写进去。最后还要多问,遇到问题思索后还得不到解决就要问了,毕竟个人的力量是有限的,问同学同事,问搜索引擎,问网友,都可以,一篇文章、朋友们的点拨都可能帮助自己快速解决问题。 |
|
|
|
只有小组成员才能发言,加入小组>>
788 浏览 0 评论
1151 浏览 1 评论
2527 浏览 5 评论
2860 浏览 9 评论
移植了freeRTOS到STMf103之后显示没有定义的原因?
2709 浏览 6 评论
keil5中manage run-time environment怎么是灰色,不可以操作吗?
1068浏览 3评论
193浏览 2评论
455浏览 2评论
368浏览 2评论
M0518 PWM的电压输出只有2V左右,没有3.3V是怎么回事?
453浏览 1评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 21:23 , Processed in 1.039630 second(s), Total 80, Slave 61 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号