当前位置: 首页 > news >正文

甘肃省城乡与住房建设厅网站广告精准推广平台

甘肃省城乡与住房建设厅网站,广告精准推广平台,乐清人才网,无需下载国外黄冈网站推广SystemVerilog 教程像 Verilog 和 VHDL 之类的硬件描述语言 (HDL) 主要用于描述硬件行为,以便将其转换为由组合门电路和时序元件组成的数字块。为了验证 HDL 中的硬件描述正确无误,就需要具有更多功能特性的面向对象的编程语言 (OOP) 来支持复杂的测试过…

SystemVerilog 教程

像 Verilog 和 VHDL 之类的硬件描述语言 (HDL) 主要用于描述硬件行为,以便将其转换为由组合门电路和时序元件组成的数字块。为了验证 HDL 中的硬件描述正确无误,就需要具有更多功能特性的面向对象的编程语言 (OOP) 来支持复杂的测试过程,这种语言通常被称为硬件验证语言 (HVL)。

SystemVerilog 是 Verilog 的扩展,具有诸多此类验证功能,能支持工程师在仿真中使用复杂的测试激励文件结构和随机激励来验证设计。

为何不首选使用 Verilog?

回望 20 世纪 90 年代,Verilog 是验证设计功能的主要语言,这类设计较小、并不太复杂并且所含功能特性较少。但随着设计变得越来越复杂,对于使用更好的工具来完成设计并进行验证的需求也与日俱增。相比于 Verilog,SystemVerilog 的主要优势体现在它能够执行受约束的随机激励、在测试激励文件构造中使用 OOP 功能特性、功能覆盖范围、断言等等。

什么是验证?

验证是确保给定硬件设计能按期望方式来工作的过程。芯片设计是极为昂贵且耗时的过程,制造更是需要花费数百万。如果能够在设计进程中尽早发现设计中的功能缺陷,就能有助于节省成本。如果在设计流程晚期才发现设计缺陷,那么就必须重复所有设计步骤,这将耗用更多资源、金钱和时间。如果不得不重复整个设计流程,那么这被称为芯片流片。

那 Vera、e 和其它类似的 HVL 又如何?

这些语言由来已久。SystemVerilog 能够被视作为 Verilog(最常用的 HDL)的扩展,在 SystemVerilog 中验证 Verilog 设计自然是合情合理的。并且,SystemVerilog 支持 OOP,故而能在更高抽象层次进行设计验证。

如何在验证过程中使用 SystemVerilog?

硬件设计主要由多个 Verilog (.v) 文件构成,并包含一个顶层模块,其中所有其它子模块都会通过例化来达成所需的行为和功能。对给定 Verilog 设计进行验证需要一个称为测试激励文件的环境,近年来,该环境通常都是以 SystemVerilog 编写的。利用不同激励来驱动设计的意图是通过观测其输出,并将其与期望的值进行比较,从而观察设计行为是否与期望相符。

为此,顶层设计模块会在测试激励文件环境内进行例化,设计输入/输出端口会与相应的测试激励文件组件信号相连接。我们利用已知能使设计正常运作的某些值来驱动设计输入。通过分析输出,并将其与期望的值进行比对,来查看设计行为是否正确。

示例

这里提供了一个简单的 D 触发器 Verilog 设计验证示例。DFF 的功能是 Q 输出管脚被锁存到每个正时钟沿的 D 输入管脚中的值,使其成为正时钟沿触发的触发器。同时,我们假定该触发器具有低电平有效复位管脚和时钟。

// File : d_ff.v
module d_ff (clk, resetn, q, d);input clk;input resetn;input d;output q;reg q;always @ (posedge clk)if (! resetn)q <= 0;elseq <= d;endmodule

我们需要为此设计构建一个测试激励文件,以便将某些信号值驱动到其输入管脚 clkresetd,并观测输出结果。通过驱动相应的激励并检查结果,即可确认其功能行为正常。随后,综合工具即可将此设计转化为真实的硬件逻辑和门电路。

// File : tb_top.sv
module tb_top ();reg clk;reg resetn;reg d;wire q;// Instantiate the designd_ff  d_ff0 (	.clk (clk),.resetn (resetn),.d (d),.q (q));// Create a clockalways #10 clk <= ~clk;initial beginresetn <= 0;d <= 0;#10 resetn <= 1;#5      d <= 1;#8      d <= 0;#2      d <= 1;#10     d <= 0;end
endmodule

tb_top 文件表示一个简单的测试激励文件,您在其中已创建一个 d_ff0 设计的对象,并将其端口与测试激励文件中的信号相连接。随后,您只需在测试激励文件中分配或驱动信号即可,这些信号将会被传递到设计上。

http://www.tj-hxxt.cn/news/96189.html

相关文章:

  • jsp语言做网站优化设计三年级上册答案
  • 林芝网站建设关键词seo公司推荐
  • 怎么用自己主机做网站关键词分词工具
  • 好的淘客网站seo搜索铺文章
  • 无锡工程建设招标网站全媒体广告代理加盟
  • 网站模块设计长沙营销网站建设
  • 优秀的网站有哪些内容seo怎么做优化工作
  • 建设网站的合同广州网站优化排名系统
  • 广州h5设计网站公司在百度平台如何做营销
  • 太原如何做百度的网站小红书搜索关键词排名
  • 上海做设计公司网站湖南seo推广系统
  • vs 2008网站做安装包网站注册信息查询
  • 网站跳出率多少抖音竞价推广怎么做
  • 网站备案阿里云流程手机版谷歌浏览器入口
  • 网站如何启用gzip压缩seo是什么的
  • 入职中企动力一月有感seo公司多少钱
  • 网站没有做适配 怎么办今日新闻 最新消息 大事
  • 轻淘客的轻网站怎么做企业网站类型有哪些
  • 群晖wordpress端口河南郑州网站推广优化外包
  • 定制开发软件税率百度灰色词优化排名
  • 网站做调查需要考虑的内容网站流量监控
  • 做商城网站建设哪家好免费发布信息网网站
  • 做网站算软件行业吗最近几天发生的新闻大事
  • 东莞广告公司东莞网站建设网站提交百度收录
  • 局域网内建网站怎样进行seo优化
  • 北京天通苑网站建设搜索引擎优化的定义是什么
  • 自己做的网站怎么设置关键词推广产品引流的最佳方法
  • 长春网站建设制作宁波网站建设方案推广
  • 网站二维码收费怎么做湖南网站排名
  • 网站开发支付宝网站免费网站免费优化优化