集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 914|回复: 0

《至芯学习笔记》HDL概念(一)

[复制链接]
米饭张 发表于 2015-8-27 09:07:17 | 显示全部楼层 |阅读模式
本帖最后由 米饭张 于 2015-8-27 09:09 编辑

硬件描述语言(Hardware Discription Language )是一种用形式化方法来描述数字电路和系统的语言。数字电路系统的设计开发者使用语言文本的形式来描述数字系统的硬件结构和行为。它允许设计者用它来进行各种级别的逻辑设计,可以用它进行数字逻辑系统的仿真验证、时序分析、逻辑综合。
HDL语言可以从顶层到底层(从抽象到具体)逐层描述自己的设计思想,用一系列分层次的模块来表示极其复杂的数字系统,通过逐层描述来完成整个数字系统的建模(Modeling)。然后利用电子设计自动化(以下简称为EDA)工具逐层进行仿真验证(Simulation Verification),再把其中需要变为具体物理电路的模块组合经由自动综合工具转换到门级电路网表。接下去再用专用集成电路(ASIC)或现场可编程门阵列(FPGA)自动布局布线工具把网表转换为具体电路布线结构的实现。在制成物理器件之前,还可以用Verilog的门级模型(原语元件或UDP)来代替具体基本元件。因其逻辑功能和延时特性与真实的物理元件完全一致,所以在仿真工具的支持下能验证复杂数字系统物理结构的正确性,使投片的成功率达到100%。目前,这种称之为高层次设计(High-Level-Design)的方法已被广泛采用。

建模(Modeling)
HDL语言的核心是描述功能,有不少书籍文档将HDL语言对数字逻辑的描述称之逻辑设计,在本系列文档中成为建模。在一个基本的电路中必定具有必要的输入输出端口、必要的内部信号、必要的内部功能电路,HDL语言是则是通过语言文本对一个电路的输入输出端口、必要的内部信号、必要的内部功能电路进行详细描述来完成对一个电路的模型建立。其他计算机语言则是最终生成一些列的计算机指令,例如,C语言虽然进行了一系列的逻辑算法设计,但最终生成的是计算机指令,通过分时序列调用计算机固定的逻辑单元完成代码的设计的算法逻辑。

综合(Systhesis)
综合就是将HDL描述的数字系统模型转换为门级模型。对于FPGA综合实际是HDL源码转换成门级源码经优化后映射到FPGA器件的原语(FPGA的底层逻辑资源)。FPGA综合实际完成了编译与映射,编译即将HDL描述的数字系统转换为门级模型的过程,映射则是给编译后的门级模型分配具体的实际硬件逻辑资源和布局路由资源。
在Xilix系列的FPGA中 ,综合实际只是完成了编译与门级描述变换成FPGA逻辑资源分配,还需后续的实现过程。实现分为三个步骤,翻译(Translate)逻辑网表,映射(Mapping)到具体物理位置逻辑单元,器件单元的布局布线(Place&&Route)。

仿真验证(Simulation Verification)
由于HDL描述到实际FPGA实现必须经过综合这一步骤的,对数字系统的仿真验证技术就是综合而言可以分为综合前验证(Pre-synthesis Verification),综合后验证(Post-synthesis Verification)。
综合前验证(Pre-synthesis Verification) 又称功能仿真或RTL仿真(Function /RTL Simulation),有时也简单的称之为前仿(Pre-simulation)。 其Testbench 加载的模型是用户RTL模型,此模型仅仅带有功能性和逻辑性,没有门级电路延时等模型数据。
综合后验证(Post-Synthesis Verification),又称时序仿真或门级仿真(Timing/Gate-level Simulation), 其Testbench 加载的模型是经过综合后已经完成逻辑映射、布局布线的模型(即网表),此模型除了带有功能性和逻辑性,还有门级电路延时等实际环境模型数据。
HDL语言发展简介
硬件描述语言的发展至今已有近三十年的历史,并成功地应用于设计的各个阶段:建模、 仿真、验证 和综合等。到 80 年代时,已出现了上百种硬件描述语言,它们对设计自动化曾 起到了极大的促进和推动作用。但是,这些语言一般各自面向特定的设计领域与层次,而且 众多的语言使用户无所适从。因此急需一种面向设计的多领域、多层次、并得到普遍认同的 标准硬件描述语言。进入 80 年代后期,硬件描述语言向着标准化的方向发展。最终,VHDL 和 Verilog HDL 语言适应了这种趋势的要求,先后成为 IEEE 标准。把硬件描述语言用于自动 综合还只有十多年的历史。最近十多年来,用综合工具把可综合风格的 HDL 模块自动转换 为具体电路发展非常迅速,大大地提高了复杂数字系统的设计生产率。
早期数字电路的设计师,通过布尔表达式、卡诺图逻辑化简、状态转移图等一系列手工手段完成电路设计。随着计算机的发展和HDL语言的完善,使用HDL语言建模并用EDA实验实现,已成为现代数字电路设计的不可或缺重要手段。现代EDA技术完成了许多早期需人工处理的工程,设计者只需把关注点放在电路的逻辑上。虽然早期的电路设计工具对于工程师而言不是那么必须,但也随着EDA技术的发展产生了新的课题或新的知识,如面积和速度的折中、流水线等。



帖子内容为至芯学习时的笔记,内容来自至芯培训教材以及网络资料。
内容参考了较多的书籍、论文和网络文献,为FPGA学习者提供了大量的翔实,文档在此向广大作者表示深深感谢。
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|fpga论坛|fpga设计论坛 ( 京ICP备20003123号-1 )

GMT+8, 2025-5-4 09:00 , Processed in 0.056940 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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