一、面积与速度的平衡交换准则
这儿的面积指的是FPGA的芯片资源,包含逻辑资源和I/O资源等;这儿的速度指的是FPGA作业的最高频率(和DSP或许ARM不同,FPGA规划的作业频率是不固定的,而是和规划自身的推迟严密相连)。 在实践规划中,运用最小的面积规划出最高的速度是每一个开发者寻求的方针,可是“鱼和熊掌不行兼得”,取舍之间展现了一个开发者的才智。
1.速度换面积
速度优势能够交换面积的节省。面积越小,就意味着能够用更低的成原本完成产品的功用。速度换面积的准则在一些较杂乱的算法规划中常常会用到。在这些算法规划中,流水线规划常常是有必要用到的技能。在流水线的规划中,这些被重复运用可是运用次数不同的模块将会占用很多的FPGA资源。对FPGA的规划技能进行改造,将被重复运用的算法模块提炼出最小的复用单元,并运用这个最小的高速替代原规划中被重复运用但次数不同的模块。当然,在改造的进程中必然会添加一些其他的资源来完成这个替代的进程。可是只需速度具有优势,那么添加的这部分逻辑仍然能够完成下降面积进步速度的意图。
能够看到,速度换面积的关键是高速根本单元的复用。
2、面积换速度
在这种方法中面积的仿制能够交换速度的进步。支撑的速度越高,就意味着能够完成更高的产品功用。一些重视产品功用的应用领域能够选用并行处理技能,完成面积换速度。
二。硬件可完成准则
FPGA规划通常会运用HDL言语,比方Verilog HDL或许VHDL。当选用HDL言语来描绘一个硬件电路功用的时分,一定要保证代码描绘的电路是硬件可完成的。
Verilog HDL言语的语法与C言语很类似,可是它们之间有着实质的差异。C言语是根据进程的高档言语,编译后能够在CPU上运转。而Verilog HDL言语描绘的自身便是硬件结构,编译后是硬件电路。因而,有些句子在C言语的环境中应用是没有问题的,可是在HDL言语环境下就会导致成果不正确或许不抱负。如:
for(i=0;i《16;i++)
DoSomething();
在C言语中运转没有任何问题,可是在Verilog HDL的环境下编译就会导致归纳后的资源严峻糟蹋。
三、 同步规划准则
同步电路和异步电路是FPGA规划的两种根本电路结构方式。
异步电路的最大缺陷是会发生毛刺。同步规划的中心电路是由各种触发器构成的。这类电路的任何输出都是在某个时钟的边缘驱动触发器发生的。所以,同步规划能够很好地防止毛刺的发生。
责任编辑:gt