一、CPLD还是FPGA
- FPGA适合完成时序逻辑,CPLD适合完成各种算法和组合逻辑;
- CPLD的时序延时是均匀的和可预测的,而FPGA的布线结构决定了其延时的不可预测性;
- FPGA的集成度比CPLD高,具有更复杂的布线结构和逻辑实现;
- CPLD无需外部存储器芯片,而FPGA的编程信息需存放在外部存储器上,使用方法复杂;
- CPLD保密性比FPGA强;
- 一般情况下,CPLD的功耗要比FPGA大,且集成度越高越明显。
二、确定器件型号
Altera公司的器件有5V、3.3V、2.5V、1.8V、1.2V等几种,要根据其所接的外电路的工作电压来选择用哪种电压的芯片。
一般来说,同一系列的芯片,在封装相同时,其引脚是兼容的。
三、确定芯片容量大小
因为各公司对门数的算法不同,所以推荐用触发器的多少来衡量芯片的大小。
四、注意事项
- 要尽可能选用速度等级最低的芯片,尽可能选用电压比较低的芯片,尽可能选用贴片封装的芯片;
- 如果是超过256个宏单元的设计,应尽量选用FPGA;
- 如果设计中需要较大的存储器和比较简单的外围逻辑电路,并且对速度、总线宽度和PCB的面积无特殊要求,应尽量采用MAX3000系列的芯片;
- 如需要3000个以上的逻辑单元而且需要较快的运行速度,或者需要PLL等功能,则用Cyclone系列芯片。
- 如果需要硬件乘法累加单元或者性能要求非常高,则选用Stratix系列芯片。
- 为保证及时供货和性价比,建议优先选用以下型号的芯片:EPM3032ALC44-10,EPM3064ATC100-10,EPM3128ATC144-10,EP1C3T144C8,EP1C6QC240C8等。