可编程逻辑功能块:通常多个逻辑功能块会有规律地排成一个阵列结构,是用来实现用户功能的基本单元,它们分布于整个芯片内部;
可编程输入/输出块:用来完成逻辑功能块与芯片外部接口的连接,它们包围了逻辑单元阵列的四周;
可编程内部互连资源:一些可编程连接开关和连线将各个模块连接起来,构成具有一定功能的电路。每个单元的功能以及和各个逻辑模块之间的互连关系都是可以通过编程来设计的[12]。
考虑到实际 FPGA 使用场景下对各种资源的需求,当下几乎所有厂家的 FPGA 器件都在经典FPGA 的架构上加入了一些其他的常用资源,如时钟管理单元(PLL、DLL)、嵌入式存储器单元和硬件乘法器单元,部分高端器件还加入了高速收发器甚至嵌入式硬核处理。更大的容量带来更加丰富的存储器资源和更加灵活的应用方式。
Cyclone IV 器件的核心架构是没有太多的改变,依然延续了与 Cyclone 系列器件的结构。这种结构主要分为三个部分,分别是LE, 乘法器和存储器模块。在使用时,我们可以把存储器模块配置成单端口、双端口等形式,以方便我们对运行过程中的各种数据进行存储。使用乘法器,我们可以设计或实现更加高效的并行结构的数字信号处理算法。除了核心架构资源,Cyclone IV E 还拥有最多 4 个 PLL 时钟管理单元和高达 532 个用户 IO。文献综述
2。2 芯片的优点
Field Programmable Gate Array是FPGA的全称,如果用汉字来形容就是现场可编程门阵列,它的发展是基于许许多多的可编程器件,是很多前辈智慧的结晶。它是一种半定制电路,主要应用于专用集成电路(ASIC)领域中。这种芯片不仅没有定制电路的不足,而且它内部的门电路数也有了很大的提升 [13]。
这种芯片的品种很多,很多家公司都有生产这类芯片,ALTERA 公司的 FIEX 系列、 XILINX 公司的 Vertex系列、TI 公司的 TPC 系列以及 Actel 公司的 ProASIC 系列都是比较出名的。
设置FPGA的工作状态主要是依靠片内 RAM 中的程序来完成的,所以,在FPGA工作前进行一定的编程工作。设计者可以在符合要求的前期下,采用合理编程方式来进行开发和设计[14]。
FPGA 具有非常强的灵活性。首先要配置FPGA,方法就是将编程好的数据导入FPGA。在配置完成后,FPGA 进入工作状态。但是FPGA有一个特点,FPGA在没有电源供应的情况下,一切配置数据都会清除。所以,FPGA 具有很好的操作性。设计者在完成一次设计后仍然可以继续使用,大大节约开发成本。只需通用的 EPROM、PROM 编程器即可对FPGA 进行编程。FPGA具有以下几个优点:
• 集成度高,可实现的功能多。
• 芯片不用担心质量问题,拿到板子后可直接进行配置。节约成本和时间。
• 用户可以用不同软件实现不同的功能。
• 开发FPGA用到的软件功能齐全,熟练的人能够很快的实现自己所需要的功能。
• FPGA简单易学,适合入门人员的学习。
2。3 芯片开发流程
一般来说,要想设计出符合要求的系统,那么他的设计流程大致可以分为如下几个阶段[15]:
(1)设计定义
主要是根据自己要设计的功能,来设定符合的工作环境和一些其他的必要参数。
(2)设计输入
主要是选择输入语言,主要有HDL(VHDL ,Verilog, System C ,System Verilog)。除了输入编程语言外还有其他的方式也能进行编程。由于本次毕业设计没有涉及,所以这里不再介绍
(3)功能仿真来*自-优=尔,论:文+网www.youerw.com
主要是检测编写的程序是否能够正常执行。在软件里写好程序后要先进行一次检测来检查编写是否有误。如果没有错误才能进行下一步的操作。