read IEEE std for verolog(2)
read IEE standard for verilog (2)
1、阅读前言
前面大致地看完了序言,了解了一下verilog的起源以及基本特性。接下来往下读有相关链接和目录,然后是正文。今天暂时阅读目录,有时间再的话看一下第一章。
2、阅读内容
目录的第一章是总说,余下的是细节。只要阅读第一章,就可以大致地了解文章的结构。
1.1 Scope
Verilog is a hardware description language (HDL) that was standardized as IEEE Std 1364-1995 and first
revised as IEEE Std 1364-2001. This revision corrects and clarifies features ambiguously described in the
1995 and 2001 editions. It also resolves incompatibilities and inconsistencies of IEEE 1364-2001 with IEEE
Std 1800-2005.
这是一个概述,大致描述了这个文章的定位。
1.2 Conventions used in this standard
This standard is organized into clauses, each of which focuses on a specific area of the language. There are
subclauses within each clause to discuss individual constructs and concepts. The discussion begins with an
introduction and an optional rationale for the construct or the concept, followed by syntax and semantic
descriptions, followed by some examples and notes.
这里声明了一些约定,用于理解文章。
子文章的结构是先概念,再语法,最后例子的模式。
1.3 Syntactic description
The formal syntax of the Verilog HDL is described using Backus-Naur Form (BNF). The following
conventions are used:
语句规范:
— Lowercase words, some containing embedded underscores, are used to denote syntactic categories.
For example:
module_declaration
— Boldface words are used to denote reserved keywords, operators, and punctuation marks as a
required part of the syntax. For example:
module => ;
— A vertical bar separates alternative items unless it appears in boldface, in which case it stands for
itself. For example:
unary_operator ::=
+ | - | ! | ~ | & | ~& | | | ~| | ^ | ~^ | ^~
— Square brackets enclose optional items. For example:
input_declaration ::= input [range] list_of_variables ;
— Braces ({}) enclose a repeated item unless it appears in boldface, in which case it stands for itself.
The item may appear zero or more times; the repetitions occur from left to right as with an
equivalent left-recursive rule. Thus, the following two rules are equivalent:
list_of_param_assignments ::= param_assignment { , param_assignment }
list_of_param_assignments ::=
param_assignment
| list_of_param_assignment , param_assignment
— If the name of any category starts with an italicized part, it is equivalent to the category name
without the italicized part. The italicized part is intended to convey some semantic information. For
example, “msb_index” and “lsb_index” are equivalent to “index.”
第一条是小写字作为语句范畴(包括下划线),第二条是黑体字的作用。其他的几项就不细看了,这是verilog编译器开发人员需要看的。
1.4 Use of color in this standard
This standard uses a minimal amount of color to enhance readability. The coloring is not essential and does
not affect the accuracy of this standard when viewed in pure black and white. Color is used to show cross
references that are hyperlinked to other portions of this standard. These hyperlinked cross references are
shown in underlined-blue text (hyperlinking works when this standard is viewed interactively as a PDF file).
verilog中颜色的使用,只是为了提高可读性,不具备必要性。
1.5 Contents of this standard
A synopsis of the clauses and annexes is presented as a quick reference. There are 28 clauses and 9 annexes.
All clauses, as well as Annex A, Annex B, and Annex G, are normative parts of this standard. Annex C,
Annex D, Annex H, and Annex I are included for informative purposes only.
这部分介绍了条款和附件的作用以及位置。
目录的第二节显示了一些相关的参考文件。
3、阅读结果
目前阅读到第3章-Lexical conventions(词法约定)。
read IEEE std for verolog(2)的更多相关文章
- JTAG 标准IEEE STD 1149.1-2013学习笔记(一·)Test logic architecture、Instruction register以及Test data registers
我是 雪天鱼,一名FPGA爱好者,研究方向是FPGA架构探索和SOC设计. 关注公众号[集成电路设计教程],拉你进"IC设计交流群". 注:转载请注明出处 一.Test logic ...
- IEEE二进制浮点数算术标准(IEEE 754)
整理自IEEE 754 IEEE二进制浮点数算术标准(IEEE 754)是20世纪80年代以来最广泛使用的浮点数运算标准,为许多CPU与浮点运算器所采用.这个标准定义了表示浮点数的格式(包括负零-0) ...
- Ethernet & IEEE 802.3 802.X 802.1ag-MEP
ISO/IEC 7498标准,它定义了网络互联的7层框架,也就是开放式系统互连参考模型(OSI模型). 交换机好比是邻近的街道,而路由器则是街道的交汇点. (交换机第二层,即数据链路层,也有四层,七层 ...
- 解读IEEE 7417的软件体系架构描述的概念模型
本文将解读标准IEEE Std 1471-2000(密集型软件的体系结构描述推荐实施规程)的概念模型图部分,从中一窥作为软件架构师的进行架构设计的思考角度与策略.如果我们把世界当做一场游戏,现在要玩的 ...
- IEEE 754 浮点数在计算机中的表示方法
IEEE二进制浮点数算术标准(IEEE 754)是20世纪80年代以来最广泛使用的浮点数运算标准,为许多CPU与浮点运算器所采用.这个标准定义了表示浮点数的格式(包括负零-0)与反常值(denorma ...
- IEEE 754标准--维基百科
IEEE二进制浮点数算术标准(IEEE 754) 是20世纪80年代以来最广泛使用的浮点数运算标准,为许多CPU与浮点运算器所采用.这个标准定义了表示浮点数的格式(包括负零-0)与反常值(denorm ...
- QinQ技术浅析
作者: | 上传时间:2009-11-16 | 关键字: QinQ技术(也称Stacked VLAN 或Double VLAN)是指将用户私网VLAN标签封装在公网VLAN标签中,使报文带着两 ...
- Linux系统1.md
计算机 介绍 电子计算机(英语:computer),亦称电脑,是一种利用电子学原理,根据一系列指令对数据进行处理的工具. 在现代,机械计算机的应用已经完全被电子计算机所替换,其所相关的技术研究叫计算机 ...
- JTAG 学习 -SVF格式
yxr注: 主要zt,附上自己的心得如下: 1)反观SVF文件,除了设置必要的条件之外(初始条件和TIR等四条命令),真正的运行命令就两条,SIR向JTAG TAP状态机的IR寄存器送命令,SDR往J ...
- Quartus 11.0 的AS 下载方式和JTAG下载jic文件的方式
FPGA下载的三种方式:主动配置方式(AS)和被动配置方式(PS)和最常用的(JTAG)配置方式: AS由FPGA器件引导配置操作过程,它控制着外部存储器和初始化过程,EPCS系列.如EPCS1,EP ...
随机推荐
- 【framework】Surface创建流程
1 前言 View添加过程 中介绍了从 WindowManagerImpl 的 addView() 方法到 WindowState.SurfaceSession 的创建流程,本文将介绍 Surface ...
- Function与Object
Function与Object JavaScript中内置了两个顶级对象Function.Object,Object是所有对象的基类,而所有的构造函数同时又是Function对象的实例. Object ...
- Js中数组空位问题
Js中数组空位问题 JavaScript中数组空位指的是数组中的empty,其表示的是在该位置没有任何值,而且empty是区别于undefined的,同样empty也不属于Js的任何数据类型,并且在J ...
- [攻防世界][Reverse]xxxorrr
将目标文件拖入IDA 反汇编main函数 __int64 __fastcall main(int a1, char **a2, char **a3) { int i; // [rsp+Ch] [rbp ...
- MacBook M1 VulnHub靶机搭建(arm Mac搭建x86 ova镜像)
个人博客: xzajyjs.cn 自从换了M1系的arm Mac后,原本的Vulnhub上的几乎所有靶场按照之前的方法都无法正常搭建了(VirtualBox),在外网论坛上找了一遍,有一个相对麻烦一些 ...
- android:加载PDF几种方法汇总对比
在安卓项目中,加载PDF文件,是一个比较常见的需求.又分为两大类, 1.加载网络PDF 2.加载一个本地静态PDF. 查阅资料,纵观网上在安卓中打开PDF的各种方式,大致可以分为以下几类, 1.直接使 ...
- 临时修改session日期格式冲突问题
输入的格式要看你安装的ORACLE字符集的类型, 比如: US7ASCII, date格式的类型就是: '01-Jan-01' alter session set NLS_DATE_LANGUAGE ...
- 尝试通过uniapp仿微信页面
最近一直想弄一个app,然后刚好看到Uniapp这个技术,然后最近就用几个晚上琢磨了下: 先看下成果: 1.通讯页面,这个是通过插件uni-indexed-list 索引列表 进行改造过后:改造过程还 ...
- 【.Net Core】.Net Core 源码分析与深入理解 - 入口 Program.cs (一)
研究原因:学习 .Net Core 两年有余,实际项目也使用了一年半,自己的技术已经到了瓶颈,需要有一个突破,我觉得首先研究架构师的设计思想,其次分析一下.Net Core的源码,这将会是一个很好的学 ...
- ubantu18.04使用APT安装go环境指令报错解决方案
在ubantu下使用sudo apt install golang-go指令安装go环境,安装过程没有报错,在使用时无法识别指令,报错如下: root@sh001:~# go env -w GOPRO ...