FPGA的基本工作原理
在进行FPGA开发之前,我们必须得了解为什么要使用FPGA,也就必须得知道FPGA的工作原理。我们知道,对于一个简单单片机系统来说,工作原理和上文描述一样,也就是说,对于一个简单的让LED闪烁的功能,单片机要做的事情如下:1、 从(内部或外部)的程序存储器中,取出一条让LED点亮的指令;
2、 将该指令输入到CPU的指令译码器中,根据译码器的结果(此处是将控制LED的GPIO的输出寄存器的bit位拉高)控制相应寄存器;
3、 加载下一条延时指令,输入到译码器中,进行空操作处理;
4、 继续加载下一条让LED灭的指令,译码后,控制GPIO总线上的指定bit位拉低,从而熄灭LED;
5、 循环上述操作达到闪烁LED的目的;
通过上面闪烁LED的例子,我们可以知道,对于单片机来说,它的核心有2点:
指令的加载、译码——其实也就是对指令集的解析,知道这一条语言到底进行了什么硬件上的操作,后面章节会详细的解释;
外设的控制——可以通过写寄存器控制单片机的外设,如GPIO、uart、spi、IIC等;
那么对于FPGA而言呢?
无论是FPGA、单片机,又或是ARM系统、我们的PC,其实本质上就是一个计算平台,是一个信息处理系统。作为一个系统,它的输入、计算、输出的构成是永远不会变的。那变的是什么?变得是计算的原理。
对于单片机而言,取指、译码、输出是它的原理,那么对于FPGA而言,它的原理又是什么?在介绍之前,我们先回顾一下《数字电路》这门课里面的基础内容——组合逻辑和时序逻辑电路。
D触发器是时许逻辑电路的基本组件,与、或、非们是组合逻辑电路的基本组建。利用这些组建我们可以实现很多小的功能。
比如,通过D触发器我们可以设计一个计数器 666666666666666 FPGA的基本工作原理
页:
[1]