VHDL

编辑
本词条由“匿名用户” 建档。

VHDL,是一种硬件描述语言,可以用它来描述基于文本的数字系统。 自 1987 年以来,VHDL 已被定义为 IEEE 标准,现在有一些标准化的语言扩展。 此外,还有VHDL-AMS等语言的衍生物,也可用于描述模拟或混合信号系统。

作为一种描述语言,VHDL 不是一种编程语言; 然而,由于它描述了其任务主要是信息处理的对象,因此数据处理仍然可以通过它们的模拟进行,因为为该模拟运行提供的“输入数据”由(模拟)硬件处理为“结果数据”。 这个弯路允许VHDL(结合模拟器)像编程语言一样描述图灵完备的数据处理,高级电路发生器有时甚至可以指定算法本身而不是硬件结构; 相关电路完全自动生成。 这使 VHDL 更接近编程语言。

工作原理

编辑

使用 VHDL,您无需处理单个电子元件,而是在更高的抽象层次上描述电路的预期行为。 VHDL 支持快速开发需要高效率(在时间和经济方面)的大型复杂电路(例如,具有超过 2000 万个晶体管微处理器),并支持开发人员的所有工作

这样,就可以对系统进行仿真、综合,最后创建网表。 可以通过完整的模拟和正式的方式进行验证。

网表可用于生产用于制造 MPGA(掩模可编程门阵列)或类似 LSI(大规模集成)芯片的掩模,或者它可以(在转换为合适的比特流后)直接进入 FPGA(现场可编程门阵列) ) 或 CPLD (复杂可编程逻辑器件)可以加载。

除了VHDL,还有Verilog和ABEL。 世界上使用最多的硬件描述语言是VHDL和Verilog。

综合和功能性 VHDL 代码

有必要区分可综合代码功能代码,因为有些结构可以模拟,但不能转换为真实硬件,从而转换为网表。 从广泛的功能性 VHDL 代码中实际可合成的 VHDL 代码主要取决于为 VHDL 合成选择的翻译程序(合成工具)。 功能性的、不可综合的代码放在 al 之前lem 在电路仿真领域并创建所谓的测试台,有时还用于预先测试新方法,例如接口协议的行为。

创建可综合的 VHDL 代码通常更复杂,开发人员必须故意放弃大部分 VHDL 语言选项,并更好地了解目标硬件及其确切属性。 例如,无法合成通过操作系统 (textio) 输入和输出的 VHDL 代码,例如写入和读取文件或屏幕上的文本输出。

VHDL代码的仿真与验证

编辑

与此同时,VHDL 已成为知识产权 (IP) 仿真模型的标准。 实际要测试和综合的 VHDL 代码或 VHDL 模块嵌入到仿真模型中,因此硬件在所谓的“测试台”中尽可能忠实地再现。 仿真模型通常用不可综合的 VHDL 编写,允许对外部电路部件的时间行为或某些物理参数进行建模。

VHDL硬件描述语言

一个例子应该解释这个过程:

  • 在创建 SDRAM 控制器(一种用于控制 SDRAM 内存模块的电路)时,SDRAM 及其内存及其时间行为在仿真模型中进行模拟,就像真实的 SDRAM 硬件一样。 通过这种方式,可以模拟控制器的逻辑功能,也可以在不需要真实硬件的情况下验证极端时间条件下的行为。 如有必要,SDRAM 控制器将在功能上进行改进以满足仿真边界条件。 只有当这个模拟成功时,以这种方式创建的 SDRAM 控制器才能在硬件上运行,例如在 FPGA 中,结合“真正的”SDRAM 组件。 这意味着 IP 核的开发过程在很大程度上独立于特定的硬件。

创建允许相应语句的良好测试平台是一项通常被低估的任务,它约占 IP 核整个开发时间的 50%。 然而,除了开发中的系统方法外,它比在早期阶段使用通常不会立即工作的电路部件的真实硬件要有效得多 - 然后只能在所有参数中进行困难和费力的验证.

此外,在仿真中对不同的仿真类型进行了区分:

  • 要实施的 IP 核的纯行为模拟。 从根本上检查电路中的功能关系。 例如,各个信号的逻辑组合是否合适。 优点是计算量低,这意味着可以模拟更长的部分。
  • 完全放置的 IP 核的仿真(适配后仿真)。 IP核首先被综合、布线和布局,然后从完成的电路布置中确定目标硬件的网络列表和相关的运行时信息。

内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/371964/

(6)
词条目录
  1. VHDL
  2. 工作原理
  3. 综合和功能性 VHDL 代码
  4. VHDL代码的仿真与验证

轻触这里

关闭目录

目录