EDA概况
1.1EDA发展阶段
1.早期电子CAD阶段
20世纪70年代,EDA技术发展初期,利用计算机,二维图形编辑与分析的CAD工具,完成布局布线等高度重复性的繁杂工作。
2.20世纪80年代,出现了低密度的可编程逻辑器件(PAL_Programmable Array Logic和GAL_Generic Array Logic),相应的EDA开发工具主要解决电路设计没有完成之前的功能检测等问题。
3.电子设计自动化(EDA)阶段
20世纪90年代,可编程逻辑器件迅速发展,出现功能强大的全线EDA工具。具有较强抽象描述能力的硬件描述语言(VHDL,Verilog HDL)及高性能综合工具的使用,使过去单功能电子产品开发转向系统级电子产品开发 (SOC_System On a Chip:单片系统,或片上系统集成)
开始实现“概念驱动工程”(Concept Driver Engineering CDE)
EDA的定义
广义范围:
半导体工艺设计自动化
可编程器件设计自动化
电子系统设计自动化
印刷电路板设计自动化
仿真与测试,故障诊断自动化
形式验证自动化
狭义范围:
以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机,大规模可编程器件的开发软件及实验开发系统为设计工具,自动完成用软件方式描述的电子系统到硬件系统的逻辑编译,逻辑化简,逻辑分割,逻辑综合及优化,布局布线,逻辑仿真,直至完成对于特定目标芯片的适配编译,逻辑映射,编程下载等工作,最终形成专用集成芯片的技术。
1.2 传统设计方法和EDA方法的区别
传统设计方法的缺点:
*1.设计依赖于手工和经验
*2.设计依赖于现有的通用元器件
*3 设计后期的仿真和调试
*4 自下而上设计思想的局限
*5 设计实现周期长,灵活性差,耗时耗力,效率低
EDA 设计方法:
自上而下(Top-Down)
将数字系统的整体逐步分解为各个子系统和模块,若子系统规模较大,则还需要将子系统进一步分解为更小的子系统和模块,层层分解,直至各子系统关系合理,并便于逻辑电路级的设计和实现为止。
传统设计方法与EDA方法的区别:
*1 描述方式不同
传统设计方法采用电路图为主,EDA设计方法以硬件描述语言为主
*2 设计手段不同
传统设计方法以手工设计为主;EDA为自动实现。其方案验证与设计,系统逻辑综合,布局布线,性能仿真,器件编程等均由EDA工具一体化完成。传统设计方法基于电路板,EDA基于芯片。
可编程逻辑器件 -->芯片设计 -->电路板构成 -->电子系统
1.3EDA技术的主要内容
实现载体:大规模可编程器件(PLD_Programmable Logic Device)
描述方式:硬件描述语言(HDL_Hard descripaTIon Lauguage)VHDL,Verlog HDL等
设计工具:开发软件,开发系统
硬件验证:实验开发系统
大规模可编程逻辑器件
FPGA_Field Programmable Gates Array
CPLD_Complex Programmable Logic Device
主流公司:Xilinx,Altera,LatTIce
FPGA/CPLD显著优点:
开发周期短,投资风险小,产品上市速度快,市场适应能力强,硬件修改升级方便。
硬件描述语言HDL_Hardware DescripTIon Language
VHDL:IEEE标准,系统级抽象描述能力较强
Verilog: IEEE标准,门级开关电路描述能力较强
ABLE:系统级抽象描述能力差,适合于门级电路描述
EDA软件
集成化的开发系统(半导体器件厂商):
Altera 公司:Quartus II,Max II系列
Xilinx 公司:ISE,FoundaTIon,Aillance系列
Lattice公司 :ispDesignEXPERT 系列
AMD:
TI:
特定功能的开发软件:综合软件和仿真软件
Mentor Graphics:
Cadence Design System
Synopsys
Viewlogic Systems
Protel
可编程逻辑器件设计流程:
CPLD与FPGA对比
FPGA为SRAM工艺,掉电后信息丢失,须外加专用配置芯片。上电时,专用配置芯片把数据加载懂啊FPGA中。FPGA功能可在运行时动态配置,实时改变逻辑功能,灵活性强。CPLD程序下载后掉电后不丢失,不需要外接配置芯片。
CPLD的安全性更高。由于配置芯片的存在,FPGA的保密性比CPLD差,逻辑数据有可能被读取。
工艺决定里CPLD是有一定的擦写次数限制的,而FPGA在实际使用中几乎无配置次数的限制。
由于工艺难度的差异,CPLD一般集成度较低,大多为几千门或几万门的芯片规模,做到几十万已经很困难。而FPGA基于SRAM工艺,集成度更高,最新的FPGA产品已经近千万门规模。
CPLD更适合完成复杂的组合逻辑,如编,译码的工作。FPGA更适合复杂的时序逻辑。FPGA更适合触发器丰富的逻辑结构,CPLD适合于触发器有限但与或关系丰富的逻辑结构。
CPLD一般比FPGA的功耗高
CPLD与FPGA的选择
一般组合逻辑多的电路设计采用CPLD,时序控制复杂的电路采用FPGA;
根据电路复杂程度,逻辑资源是否能够用进行选择,需要资源多,FPGA一般更经济;
资源需求少,如仅仅扩展IO,简单通信,控制,保护等,选择CPLD;
信号处理,数据处理,图像处理,复杂控制电路多采用FPGA。
责任编辑:tzh
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)