嵌入式FPGA处理器慕国锋

点赞:27670 浏览:129456 近期更新时间:2024-02-26 作者:网友分享原创网站原创

摘 要:20世纪90年代是嵌入式系统发展飞快的时代,功能越来越强大,出现的问题也越来越多,这种现象促进了嵌入式处理器的发展,现场可编程门阵列(FPGA)也油然而生,本文着力探讨FPGA处理器.

关 键 词:FPGA原理与结构嵌入式注意事项

嵌入式系统是以应用为中心,计算机软件与微电子技术为基础,软件硬件可以裁剪并协同开发设计,适应于微型专用计算机系统.嵌入式系统一般包括控制器、微处理器、存储器、转化器、寄存器、定时器以及一些特殊传感器等一批微电子芯片和器件,完整的嵌入式系统还有在存储器中的嵌入式操作系统、控制应用软件.可以实现远程监控,并发处理,实时存储等各种自动化任务.

随着FPGA处理器芯片制作工艺与处理性能不断改进,芯片处理速度在不断提高,数据处理能力不断加强.目前多个处理器系统一般都采用多个FPGA处理器架构,依据不同型号的FPGA依据自身的特点,在硬件平台中负责不同功能实现,多FPGA之间相互配合,并行处理,充分发挥各自的优势.


一、嵌入式FPGA的原理与结构

FPGA即现场可编程门阵列,属于PLD即可编程逻辑器件.也就是FPGA是在PLA、GAL和CPLD等之后发展起来的.在嵌入式技术迅速发展的今天,FPGA芯片的出现为半制订的集成电路设计与开发提供了有效的支撑,既解决了制定电路缺陷和原有器件资源有限的问题.

FPGA的工作原理是基于查找表(Look-Up-Table,LUT),LUT实质上是一个RAM,FPGA一般使用4个或多个的LUT.首先,通过HDL硬件描述语言,编写逻辑电路然后再通过FPGA相应的开发工具例如XilinxISE等,可以自动计算逻辑电路并将所有结果写入LUT中.这样,当有信号输入并需要逻辑运算时,可以不用使用门电路而直接给输入一个地址,让其按地址进行查找表,找到对应地址所存储的内容输出就可以.如果对于一个LUT不能完成的电路,可以将多个LUT相连,即可实现复杂的逻辑功能.对于不同系列的FPGA芯片,其内部的结构也是不相同的,Xilinx的FPGA系列主要由6部分组成分别为:输入输出块、可配置逻辑块、数字时钟管理、BRAM、布线资源、内嵌软硬核模块.

二、多FPGA系统相关技术

①多处理器系统架构

多处理器系统(MPS),就是在一个硬件平台或计算机中集成了多个处理器芯片的系统,基于某种的总线协议或拓扑网络,协同互助运行,并共享硬件平台的大多数资源,对于硬件系统的功能性和扩展性都有很大的提高.多处理器系统的架构是相对于单处理器系统而言的,在结构上和设计上都比后者复杂许.现阶段,多处理器系统结构主要有三种:对称处理器结构(P)、非对称多处理器结构(AMP)以及混合多处理器结构(BMP).

②多处理器与多核处理器的区别

多处理器与多核处理器区别主要在于硬件制作工艺以及芯片的结构的不同.多处理器也称作多芯片处理器,是相同或者不同的芯片处理器共同分布在开发板上,它们会独立拥有一部分的硬件资源像cache缓存等,不同的芯片会根据功能和作用的不同在系统中扮演不同的角色,例如有些芯片善于主控,可以作为主控处理器,而有些芯片善于处理和计算,可以作为协处理器.多核处理器在工艺上是将多个核心控制单元集成在一个处理器上,在开发板上仅仅只存在一个处理器芯片,但是在处理器内部却由多个处理单元核,在多核处理器系统中,所有硬件资源基本是处于共享状态的,没有私有硬件资源.

尽管多处理器与多核处理器在结构上存在区别,但是两者在实现功能上是基本相同的,都具有并行处理多个任务的能力,并且在高需求的嵌入式系统中都有广泛的应用.

三、FPGA的注意事项

①基础问题

FPGA的基础就是数字电路和VHDL语言,想学好FPGA的人,建议床头都有一本数字电路的书,不管是哪个版本的,这个是基础,多了解也有助于形成硬件设计的思想.在语言方面,建议初学者学习Verilog语言,VHDL语言语法规范严格,调试起来很慢,Verilog语言容易上手,而且,一般大型企业都是用Verilog语言,VHDL语言规范,易读性强,所以一般军工都用VHDL.

②工具问题

熟悉几个常用的就可以的,开发环境Quartusll,或ISE就可以了,这两个基本是相通的,会了哪一个,另外的那个也就很Easy了.功能仿真建议使用Modelsim,如果你是做芯片的,就可以学学别的仿真工具,做FPGA的,Modelsim就足够了.综合工具一般用Synplify,初学先不用太关心这个,用Quartus综合就OK了.

嵌入式FPGA处理器慕国锋参考属性评定
有关论文范文主题研究: 关于嵌入式的文章 大学生适用: 学年论文、学位论文
相关参考文献下载数量: 73 写作解决问题: 学术论文怎么写
毕业论文开题报告: 标准论文格式、论文目录 职称论文适用: 期刊目录、中级职称
所属大学生专业类别: 学术论文怎么写 论文题目推荐度: 优秀选题

③思想问题

对于初学者,特别是从软件转过来的,设计的程序既费资源又速度慢,而且很有可能综合不了,这就要求我们熟悉一些固定模块的写法,可综合的模块很多书上都有,语言介绍上都有,不要想当然的用软件的思想去写硬件.

④习惯问题

FPGA学习要多练习,多仿真,signaltapll是很好的工具,可以看到每个信号的真实值,建议初学者一定要自己多动手,光看书是没用的.关于英文文档问题,如果要学会Quartusll的所有功能,只要看它的handbook就可以了,很详细,对于IT行业的人,大部分知识来源都是英文文档,一定要耐心看,会从中收获很多的.

⑤算法问题

做FPGA的工程师,最后一般都是专攻算法了,这些基础知识都是顺手捏来的,如果你没有做好搞理论的准备,学FPGA始终只能停留在初级阶段上.对于初学者,数字信号处理是基础,应该好好理解,往更深的方向,不用什么都学,根据你以后从事的方向,比如说通信、图像处理,雷达、声纳、导航定位等.