阅读:2910回复:1
CPLD和FPGA的分类标准是什么?
它们的可编程逻辑形成方法不同:CPLD基于乘积项而FPGA基于查找表,对吗?
FLEK10K是CPLD还是FPGA? |
|
|
沙发#
发布于:2004-12-23 17:45
搜到了lllggg版主的帖子http://www.driverdevelop.com/forum/viewthread.php?tid=20023
PLD器件,全称可编程逻辑器件,关于其分类问题,由于各厂商的定义问题,比较乱. 按目前开发人员的一般划分,可以分为CPLD和FPGA两种. CPLD,全称复杂可编程逻辑器件,一般指逻辑阵列加宏单元式的器件,如ALTERA的MAX7128,LATTICE的M4A5128-64等. CPLD一般用于设计时序及组合逻辑,可以替代以前要用很多逻辑电路才能实现的功能, 比如地址译码 特殊计数器等等. FPGA 全称现场可编程门阵列, 一般指具有内部RAM逻辑以及大量特殊宏单元的器件, 如ALTERA 的FLEX10K .FPGA一适合于做带有运算的逻辑处理, 比如高速相关运算 高速FFT运算等等,他能用于做ASIC的先期验证甚至直接替代某些ASIC;另外,在很多场合,FPGA用来辅助DSP做实时运算. 如果用FPGA只被用于做象译码这样简单逻辑变换,则是大材小用. 对于CPLD器件的设计开发手段, 一般分为图形设计 AHDL语言设计 VHDL语言(或者Verilog_HDL)设计三种. 建议使用AHDL语言编写逻辑方程,因为他离期间的硬件构造最接近,便于理解和设计,而且相当简洁. 而用图形设计大一点的逻辑时比较麻烦. 用VHDL语言也可以,但由于他离实际硬件比较远,对于做惯硬件的人员有点不塌实的感觉,而且手续很多. 比较于软件设计,可以说AHDL语言相当于软件设计的汇编语言,而VHDL语言相当于C语言. 同样,FPGA开发手段也是这三种, 不过真正用的多是VHDL语言,因为大多数是用来做运算的. 用图形?你能想象用逻辑电路来设计一个乘法器的痛苦吗? 以上论述,仅是个人经验,欢迎高手指点. |
|
|