望麓自卑—湖南大学最具潜力的校园传媒

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 977|回复: 0

FPGA和CPLD

[复制链接]
发表于 2005-5-12 14:30:21 | 显示全部楼层 |阅读模式
FPGA和CPLD都是可编程ASIC元件,由于FPGA和CPLD结构上的差异,彼此之间存在各自的特点:

(1)CPLD适合实现各种运算和组合逻辑,FPGA则适用于实现时序逻辑。

(2)CPLD的时间特性比FPGA稳定。CPLD的布线结构决定了它的时序延迟是稳定和可以预测的,而FPGA的分段式布线结构使得对其时间延迟的预测困难,因而CPLD的速度比FPGA快。

(3)在编程上FPGA比CPLD具有更大的灵活性。CPLD通过修改具有固定内部联线的逻辑功能来编程,而FPGA主要是通过改变内部线路布线来编程。

(4)FPGA的集成度比CPLD高,适合于较复杂的布线结构和逻辑实现,所以FPGA元件的可编程逻辑数比CPLD大得多。

(5)CPLD使用比FPGA方便。CPLD的编程采用E2PROM或Flash技术,而且可以加密,使用时外部不需要另外的存储元件;而FPGA的编程采用SRAM技术,使用外部存储元件来存存程序,使用方法较复杂。另外,电路信息存放在外部芯片中,使得FPGA的保密性较CPLD差,电路资料容易被他人读取,电路容易被剽窃,不适合保密程度要求较高的系统。

(6)在编程方式上,CPLD主要是基于E2PROM或Flash存储编程,可编程次数大于1万次,优点是系统断电时编程信息不会消失。FPGA大部分是基于SRAM编程,编程信息会在系统断电时消失,所以每次上电时系统要重新将编程信息从外部记忆装置读入FPGA的SRAM中。其优点是可编程次数不限,并且在开发过程中可以很方便地随时更改程序,其缺点是系统上电时程序容易受到干扰。

设计时应综合考虑以上各因素,来确定选择CPLD还是FPGA。根据测试功能需求,本系统设计的CPLD芯片内部结构如图4所示。

在CPLD的设计中,采用VHDL语言作为主要的设计手段,是当前ASIC设计的主流方式之一。VHDL语言实现相关的设计过程具有高效、方便、易于移植的特点,而单纯的硬件电路设计缺乏灵活性,修改不方便,动辄印制版报废。这种硬件设计软件化,使得被测对象接入点发生改变或增减时,仅需相应电路的部分软件作适应性修改,底层硬件电路及上层应用软件都不需要作大的改动甚至可以不改,大大节约了系统维护成本。在CPLD的设计过程当中,一边设计,一边在计算机上完成软件仿真工作,使得仿真测试与功能行为的检验贯穿设计始终,保证了各项功能的正确性及可靠性,确保了最终产品的设计质量。

在系统设计中可以根据需要让CPLD完成更多的功能,如将80C196单片见票后部分功能和CPLD完成,其中主要是测试部分,包括串行接口、数据编码/校验、帧构造、定时发送、与外围测试计算机的数据交换。通过长期的积累,拥有大量的可复用IP模块,使系统开发设计更为快捷。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

每日推荐上一条 /1 下一条

小黑屋|手机版|湖南大学望麓自卑校园传媒 ( 湘ICP备14014987号 )

GMT+8, 2024-11-27 21:36 , Processed in 0.055910 second(s), 17 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表