EDA技术进行电路设计的大部分工作是在EDA软件平台上进行的。EDA的设计流程主要包括设计输入、设计处理、设计验证、器件编程和硬件测试等5个步骤。 1.设计输入 设计输入有多种方式,主要包括文本输入方式、图形输入方式和波形输入方式,还支持文本输入和图形输入两者混合的方式。 文本输入方式是采用硬件描述语言进行电路设计的方式,主要有Verilog HDL、VHDL等,具有很强的逻辑功能表达能力,描述简单,是目前进行电路设计最主要的设计方法。 图形输入方式是最直接的设计输入形式。利用设计软件提供的元件库,将电路的设计以原理图的方式输入。这种输入方式直观,便于电路的观察及修改,但是不适用于复杂电路的设计。 2.设计处理 设计处理是EDA设计流程中重要的设计环节,主要对设计输入的文件进行逻辑化简,综合优化,最后产生编程文件。此阶段主要包括设计编译与检查、逻辑分割、 逻辑优化、布局布线等过程。 设计编译与检查是对输入文件进行语法检查,例如,原理图文件中是否有短路现象,文本文件的输入是否符合语法规范等。 逻辑分割是将设计分割成多个成便于识别的逻辑小块形式映射到相应器件的逻辑单元中,分割可以自动实现,也可以由设计者控制完成。 逻辑优化主要包括面积优化和速度优化。面积优化的目标是使设计占用的逻辑资源最少,速度优化是使电路中信号的传输时间最短。 布局布线是指完成电路中各电路元件的分布及线路的连接。 3.设计验证 设计验证即时序仿真和功能仿真。通常情况下,先进行功能仿真,因此功能仿真又称为前仿真,它直接对原理图描述或其他描述形式的逻辑功能进行测试模拟,验证其实现的功能是否满足原设计的要求,仿真的过程不涉及任何具体形式的硬件特性,不经历综合和适配。在功能仿真已经完成,确认设计文件表达的功能满足要求后,再进行综合适配和时序仿真。时序仿真是在选择了具体器件并且完成布局布线之后进行的时序关系仿真,因此又称为时延仿真或后仿真。 4.器件编程 器件编程是指将设计处理中产生的编程数据下载到具体的可编程器件中。如果之前的步骤都满足设计的要求,就可以将适配器产生的配置或下载文件通过CPLD/FPGA编程器或下载电缆载入目标芯片CPLD或FPGA中。 5.硬件测试 硬件测试是指将含有载入了设计的FPGA或CPLD的硬件系统进行统一测试,便于在真实的环境中检验设计效果。
|