read IEEE Standard for verilog(1)
IEEE Standard for Verilog Hardware Description Language
英语说明阅读,首先看导读、目录、摘要等内容。
摘要:
1 Abstract: The Verilog hardware description language (HDL) is defined in this standard. Verilog
2 HDL is a formal notation intended for use in all phases of the creation of electronic systems. Be-
3 cause it is both machine-readable and human-readable, it supports the development, verification,
4 synthesis, and testing of hardware designs; the communication of hardware design data; and the
5 maintenance, modification, and procurement of hardware. The primary audiences for this standard
6 are the implementors of tools supporting the language and advanced users of the language.
7 Keywords: computer, computer languages, digital systems, electronic systems, hardware, hard-
8 ware description languages, hardware design, HDL, PLI, programming language interface, Verilog,
9 Verilog HDL, Verilog PLI
这个格式是不是类似一篇论文,可能就是某个论文或者论文期刊发布的。首先介绍了这个文档的作用是定义verilog,然后说明了verilog的作用是完成电子系统的每个阶段设计。其优点在于可以机读和认读,减少了机器到人之间的距离。支持的有开发、验证、 维护、修改和采购硬件。主要面对的对象是支持该语言的工具使用者及高级用户。
关键词一大堆,可能用于索引。
Introduction
The Verilog hardware description language (HDL) became an IEEE standard in 1995 as IEEE Std 1364-
1995. It was designed to be simple, intuitive, and effective at multiple levels of abstraction in a standard
textual format for a variety of design tools, including verification simulation, timing analysis, test analysis,
and synthesis. It is because of these rich features that Verilog has been accepted to be the language of choice
by an overwhelming number of integrated circuit (IC) designers.
Verilog contains a rich set of built-in primitives, including logic gates, user-definable primitives, switches,
and wired logic. It also has device pin-to-pin delays and timing checks. The mixing of abstract levels is
essentially provided by the semantics of two data types: nets and variables. Continuous assignments, in
which expressions of both variables and nets can continuously drive values onto nets, provide the basic
structural construct. Procedural assignments, in which the results of calculations involving variable and net
values can be stored into variables, provide the basic behavioral construct. A design consists of a set of mod-
ules, each of which has an input/output (I/O) interface, and a description of its function, which can be struc-
tural, behavioral, or a mix. These modules are formed into a hierarchy and are interconnected with nets.
The Verilog language is extensible via the programming language interface (PLI) and the Verilog proce-
dural interface (VPI) routines. The PLI/VPI is a collection of routines that allows foreign functions to access
information contained in a Verilog HDL description of the design and facilitates dynamic interaction with
simulation. Applications of PLI/VPI include connecting to a Verilog HDL simulator with other simulation
and computer-assisted design (CAD) systems, customized debugging tasks, delay calculators, and
annotators.
The language that influenced Verilog HDL the most was HILO-2, which was developed at Brunel Univer-
sity in England under a contract to produce a test generation system for the British Ministry of Defense.
HILO-2 successfully combined the gate and register transfer levels of abstraction and supported verification
simulation, timing analysis, fault simulation, and test generation.
In 1990, Cadence Design Systems placed the Verilog HDL into the public domain and the independent
Open Verilog International (OVI) was formed to manage and promote Verilog HDL. In 1992, the Board of
Directors of OVI began an effort to establish Verilog HDL as an IEEE standard. In 1993, the first IEEE
working group was formed; and after 18 months of focused efforts, Verilog became an IEEE standard as
IEEE Std 1364-1995.
After the standardization process was complete, the IEEE P1364 Working Group started looking for feed-
back from IEEE 1364 users worldwide so the standard could be enhanced and modified accordingly. This
led to a five-year effort to get a much better Verilog standard in IEEE Std 1364-2001.
With the completion of IEEE Std 1364-2001, work continued in the larger Verilog community to identify
outstanding issues with the language as well as ideas for possible enhancements. As Accellera began work-
ing on standardizing SystemVerilog in 2001, additional issues were identified that could possibly have led to
incompatibilities between Verilog 1364 and SystemVerilog. The IEEE P1364 Working Group was estab-
lished as a subcomittee of the SystemVerilog P1800 Working Group to help ensure consistent resolution of
such issues. The result of this collaborative work is this standard, IEEE Std 1364-2005.
这部分是简介部分。在原文中还有注释,这个不是文档内容,可能是后加的。
大致意思:
1995年,verilog成为标准。由于简单、直观、有效,可以在多个设计层次使用,成为IC工作者的重要语言。
verilog结构丰富,有逻辑门、用户定义体、开关、线逻辑。提供门级延时和时序检查。两种形式的数据:net和variable,也就是wire和reg声明的对象类型。在行为综合时的net和variable报错也是这两种数据类型。然后就是module的结构。
verilog可以通过PLI和VPI拓展,可以增加其他函数。modelsim在激励源支持的函数就是这里而来。
verilog的前身是HILO-2,是Brunel大学创建的。
后面则是介绍verilog的发展历史,就不做说明,感兴趣可以看一下。
read IEEE Standard for verilog(1)的更多相关文章
- IEEE Standard 754 for Binary Floating-Point Arithmetic
IEEE 754-2008 - IEEE Standard for Floating-Point Arithmetic https://standards.ieee.org/standard/754- ...
- 【转载】Verilog中的parameter
1. 概述 在Verilog中我们常常会遇到要将一个常量(算法中的某个参数)赋给很多个变量的情况,如: x = 10;y = 10;z = 10;如果此时10要改为9,就需要在代码中修改3个地方,非常 ...
- 对比 Verilog 和 SystemVerilog 中的基本数据类型
作为引子,首先来看一段描述,该段介绍了SystemVerilog对比Verilog在RTL设计和建模时的新特性之一(logic数据类型),然后下文我再展开对比介绍Verilog和SystemVeril ...
- VCS使用学习笔记(0)——写在前面的话
由于毕业设计做的是数字IC相关,虽然不是纯设计,但是也有设计相关.有设计就要有仿真验证,我就趁此机会来学习一下VCS的使用吧.当然,这里只是学习其简单的逻辑仿真功能,从波形仿真到覆盖率等,基本上不涉其 ...
- 【verilog】fdisplay中如何保存有符号形式
2014-01-02 10:10:29 参考:http://xilinx.eetop.cn/viewthread-275584 使用系统任务$signed,如 $fdisplay(fp, " ...
- 自己动手写处理器之第二阶段(2)——Verilog HDL简单介绍
将陆续上传本人写的新书<自己动手写处理器>(尚未出版),今天是第六篇.我尽量每周四篇 2.3 Verilog HDL简单介绍 本书实现的OpenMIPS处理器是使用Verilog HDL编 ...
- 组织:IEEE
电气和电子工程师协会(IEEE,全称是Institute of Electrical and Electronics Engineers)是一个美国的电子技术与信息科学工程师的协会,是世界上最大的非营 ...
- IEEE 754标准
IEEE 754-1985 was an industry standard for representing floating-point numbers in computers, officia ...
- 深入理解计算机系统(2.7)------二进制小数和IEEE浮点标准
整数的表示和运算我们已经讲完了,在实际应用中,整数能够解决我们大部分问题.但是某些需要精确表示的数,比如某件商品的价格,某两地之间的距离等等,我们如果用整数表示将会有很大的出入,这时候浮点数就产生了. ...
- 二进制小数及 IEEE 浮点表示
1.二进制小数 前面这篇博客 进制间的转换 我们已经讲过了各个进制数的表示.现在我们复习一下: 进位计数制的要素: ①.数码:用来表示进制数的元素.比如二进制数的数码为:0,1.十进制数的数码为:0 ...
随机推荐
- java 从零开始手写 redis(五)过期策略的另一种实现思路
前言 java从零手写实现redis(一)如何实现固定大小的缓存? java从零手写实现redis(三)redis expire 过期原理 java从零手写实现redis(三)内存数据如何重启不丢失? ...
- ARP(Address Resolution Protocol) Packet
Address Resolution Protocol The Address Resolution Protocol (ARP) is a communication protocol used f ...
- Springboot+Bootstrap实现增删改查实战
说明 最近有朋友问我有没有Springboot+Bootstrap实现增删改查的DEMO,当时没有,现在他来了! 实现效果 代码地址 https://gitee.com/indexman/bootst ...
- FART 脱壳机原理分析
FART是一个基于Android 源码修改的脱壳机 可以脱整体壳和抽取壳 FART脱壳的步骤主要分为三步: 1.内存中DexFile结构体完整dex的dump 2.主动调用类中的每一个方法,并实现对应 ...
- 矩池云快速安装torch-sparse、torch-geometric等包
租用机器,按自己需要的环境选择一个环境,我这里选择的是Pytorch 1.10. 租用成功后点击租用页面的 Jupyterlab 链接. Jupyterlab 里新建一个Terminal 用来安装环境 ...
- CXP协议的传输层介绍 8b/10b编码
8b/10b编码与K码 upconnection 和downconnection均使用8b/10b编码,因此我们先简单回顾一下8b/10b吧 8B/10B编码被广泛应用到高速串行总线,如IEEE139 ...
- 全面掌握Directory.Build.props
为什么需要集中管理版本号? 1)同一个产品包含多个模块,对同一个包指定了不同的版本 比如A模块用了"Serilog.Sinks.Async"的"1.1.2"版本 ...
- JAVA对象生命周期(三)-对象的销毁
目录 从引用说起 指针直接引用 句柄引用 优缺点 如何判断对象死亡 引用计数法 可达性分析法 垃圾收集算法 标记-清除算法 复制算法 复制算法--优化 有关年轻代的JVM参数 标记-整理算法 分代收集 ...
- Nebula Graph 源码解读系列 | Vol.01 Nebula Graph Overview
上篇序言中我们讲述了源码解读系列的由来,在 Nebula Graph Overview 篇中我们将带你了解下 Nebula Graph 的架构以及代码仓分布.代码结构和模块规划. 1. 架构 Nebu ...
- FeignClient 报错: A bean with that name has already been defined and overriding is disabled.
1. 错误信息 *************************** APPLICATION FAILED TO START *************************** Descript ...