首页 理论教育 复杂结构原理

复杂结构原理

时间:2022-02-12 理论教育 版权反馈
【摘要】:目前主要应用的复杂 PLD 器件有 CPLD、FPGA,之前提到的简单PLD器件除了少部分应用于特定的设计中,大部分逐渐被淘汰不用,主要是因为简单PLD器件阵列规模小,资源不足,编程不方便等缺点。早期的复杂可编程逻辑器件CPLD就是从PAL和GAL结构上扩展而来的,它的集成度更高,规模更大,有更多的输入端、乘积项及宏单元,图6 5 8为一般CPLD的结构框图。结构外围的I/O模块可以对外界提供单独可选的输入、输出和双向访问控制。

目前主要应用的复杂 PLD 器件有 CPLD、FPGA,之前提到的简单PLD器件除了少部分应用于特定的设计中,大部分逐渐被淘汰不用,主要是因为简单PLD器件阵列规模小,资源不足,编程不方便等缺点。早期的复杂可编程逻辑器件CPLD就是从PAL和GAL结构上扩展而来的,它的集成度更高,规模更大,有更多的输入端、乘积项及宏单元,图6 − 5 − 8为一般CPLD的结构框图。从图中可以看出CPLD一般由三部分组成,分别是逻辑阵列块LAB(Logic Array Block)、可编程连线阵列PIA(Programmable Interconnect Array)和I/O单元。其中逻辑阵列块LAB主要由可编程乘积项阵列、乘积项分配和宏单元组成;可编程连线阵列PIA的作用是实现逻辑块与逻辑块之间、逻辑块与I/O单元之间以及全局信号到逻辑块和I/O单元之间的连接;I/O单元是CPLD外部封装引脚和内部逻辑间的接口,每个I/O单元对应一个封装引脚,对I/O编程时,可将引脚定义为输入、输出和双向功能。

图6 − 5 − 8 CPLD基本结构框图

除了复杂可编程逻辑器件 CPLD 外,另外一种常用的复杂 PLD 为现场可编程门阵列FPGA,与CPLD通过PLA、PAL、GAL类型的逻辑块由可编程连线结构组成不同,不再使用PAL、PLA类型的与或阵列结构,而是另一类可编程逻辑的形成,主要由许多规模小的可配置逻辑块CLB(Configurable Logic Block)排成的阵列、互连资源(Interconnections)和可编程输入/输出(I/O)模块组成,图6 − 5 − 9为一般FPGA的基本结构框图。结构外围的I/O模块可以对外界提供单独可选的输入、输出和双向访问控制。与CPLD相比,FPGA的集成度更高,使用更加方便,芯片内资源利用率高。

最后简单介绍一下如何通过硬件描述语言进行设计,一般的EDA软件都是基于自顶向下的设计流程,该方法与传统的自底向上电子设计技术不同,可以避免传统设计过程中因为底层目标器件更换、技术参数不满足要求、供货不足甚至是因为成本上的要求而更改设计方案的可能性,通用的设计流程如图6 − 5 − 10所示。

(1)需求分析,根据客户需求进行论证分析和系统设计,相对完善功能齐全的电路都需要一个完美的设计,通过实际应用的需求分析才能设计出满足客户或实际应用要求的电路。

(2)设计输入,有了明确的需求分析,就可以对电路进行具体的设计了,设计输入有多种方式,主要包括文本输入、图形输入和波形输入三大类,此外也支持混合输入模式。

(3)功能仿真,又称为前仿真,该仿真步骤主要集中于设计电路功能是否满足原设计需求,仿真过程并不涉及具体的硬件特性及时序特性,但是同样可以产生报告文件和波形文件,可以根据生成文件观察各节点变化,发现错误及时修改设计。

图6 − 5 − 9 FPGA基本结构框图

图6 − 5 − 10 EDA设计流程

(4)综合适配,指的是将RTL级层次描述转化为较低层次(门级或更底层)电路描述的网表文件,是将软件设计转化为硬件电路的关键步骤。

(5)时序仿真,又称为后仿真,该仿真是最接近真实器件运行特性的仿真,该仿真包含了硬件特性参数,仿真精度较高,可以估计门电路带来的延时影响,但是不能估计布线延时,因此和实际情况还是不完全符合,一般来说,虽然该仿真都可以操作进行,但是可以省略。

(6)布局布线,使用工具将综合后的逻辑连接关系映射到目标器件资源中,决定逻辑最优布局,产生相应的电路制造所需版图信息。

(7)编程下载,将适配生成的下载或配置文件直接向FPGA或CPLD下载,以便进行硬件调试和验证。

(8)硬件测试,将包含了设计文件的FPGA或CPLD进行统一系统测试,测试是否能够满足设计要求,然后根据测试随时排错和改进设计。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈