时间:2026-04-03 来源:FPGA_UCY 关于我们 0
Y=A&B&C的FPGA实现基本结构
这就是FPGA实现的原理。
六、知识补充:
6.1、在FPGA内部有着软内核和硬内核之分。
软内核:可以通过门电路随意搭起来实现某种功能的电路。比如在芯片内部实现了一个计数器逻辑,那么在构造计数器逻辑过程中使用到的功能可以被称为“软功能”。
硬内核:实现固定功能的芯片。电路是固定好的,通过硬件去实现的。比如:PLL时钟单元,它的电路是固定的,因为时钟通过外部晶振起振后,通过内部PLL时钟倍频,它不是数字电路可实现的,需要模拟电路倍频实现。AD芯片和DA芯片也是模拟芯片,也是需要固定的资源在里面。
6.2、一种新的SOC FPGA(带嵌入式处理器的FPGA)
在FPGA内部有存储单元片内RAM块,数据存放在RAM中,并由其设置工作状态,若想要FPGA进行工作,就要对RAM进行编程,而如果外部有大量数据进行交互时,就要通过增加外设对数据进行暂时性的存储,如SDRAM存储器或DDR3存储器,暂存在外设中的数据最终也是要通过FPGA内部的RAM进行存储和处理。
目前,主流的FPGA都是基于SRAM工艺,在大部分开发板上都是串行配置模式。由于SRAM掉电就会丢失内部数据,因此往往都会外接一个能够掉电保存数据的片外存储器来保存程序。这样一来,上电时FPGA便将外部存储器种的数据读入片内RAM以完成配置,对FPGA编程完成后便进入工作状态。
目前FPGA内部已经有一些芯片电路,不仅仅有接口,门电路,还有ARM及其它CPU等等已经带入嵌入式处理器的功能。
我们会发现电路板上功能有ARM+FPGA或DSP+FPGA协同合作,一个芯片上实现处理器+FPGA功能,这就是我们更强大的嵌入式处理器的功能。
优点:
1、更有利于PCB布局,面积更小,功能更强大。
2、ARM嵌入在芯片内部,ARM和FPGA之间有更多的总线和通信方式,速度可以更快。
6.3、数据的存储及配置方式
当在EDA工具上将程序设计完成之后,便需要将软件上的程序烧录进FPGA内部。通过不同的配置模式,FPGA便有不同的编程方式,以下为几种常见的配置模式:
1、并行模式:通过并行PROM、Flash配置FPGA;
也就是说把FPGA的程序先写到PROM或Flash里面,上电的时候就会自动读取里面的值,配置FPGA;
![]()
2、主从模式:使用一片PROM配置多片FPGA;
3、串行模式:串行PROM配置FPGA;
4、外设模式:将FPGA作为微处理器CPU的外设,由微处理器对其编程。
![]()
一个是FPGA,一个是CPU,CPU通过接口写FPGA,然后再通过FPGA实现需要的功能。那么CPU配置FPGA参数的数据从哪里来?
可以增加一个RAM或FLASH,CPU读取里面的内容,然后写到FPGA内部,FPGA工作就能实现需要的功能。这是比较常见的一种方式。
这种方式跟CPU直接控制FPGA有什么不同吗?也就是上电后FPGA直接读取PROM的数据不就好了,为什么要多一个CPU呢?
![]()
其中一个原因是FPGA的有些程序是加密的,CPU读取数据并解密后再发给FPGA,FPGA再来实现功能。