统一标准和统一标准的比较.doc
《统一标准和统一标准的比较.doc》由会员分享,可在线阅读,更多相关《统一标准和统一标准的比较.doc(14页珍藏版)》请在咨信网上搜索。
Verilog_1995和Verilog_比较 版本登记表 作者 版本号 日期 修改内容 王长友 V1.00.a .5.24 第一次创立 作为一门如今世界最流行硬件描述语言之一,Verilog HDL拥有自己独有特点和优势。固然同步作为一门不断完善和发展硬件描述语言,她同样也具备她局限性之处。 Verilog HDL是在用途最广泛C语言基本上发展起来一种硬件描述语言,它是由GDA(Gateway Design Automation)公司PhilMoorby在1983年末首创,最初只设计了一种仿真与验证工具,之后又陆续开发了有关故障模仿与时序分析工具。1985年Moorby推出它第三个商用仿真器verilog-XL,获得了巨大成功,从而使得Verilog HDL迅速得到推广应用。1989年CADENCE公司收购了GDA公司,使得VerilogHDL成为了该公司独家专利。1990年CADENCE公司公开刊登了Verilog HDL,并成立LVI组织以增进Verilog HDL成为IEEE原则,即IEEE Standard 1364-1995。 Verilog HDL虽然得到了广泛应用,但是然们在应用过程中也发同大多数新兴编程语言同样,有诸多不完善、缺陷。在,OVI(Open Verilog Initiative)向IEEE提交了一种改进了顾客觉得原始Verilog-1995原则缺陷新原则。这一扩展版本成为了 IEEE1364-原则,也就是Verilog 。Verilog 是1995增补,当前几乎所有工具都支持Verilog 。Verilog 也被称作Verilog 2.0。 作为一种verilog初学者,基本是最重要。当前将我在学习中理解到verilogIEEE1364-95原则和最新IEEE1364-原则做一种简朴比较和分析,但愿可以在加深我学习和理解同步可以以便人们探讨、学习和补充。 我从以几种方面来比较verilog HDLIEEE1364-1995原则和IEEE1364-变化: 1、 模块声明扩展 1)、Verilog- 容许将端口声明和数据类型声明放在同一条语句中,例如: Verilog -1995: Module mux8(y,a,b,en); output [7:0] y; input [7:0]a,b; input en; reg [7:0] y; wire [7:0] a,b; wire en; …… Verilog-: Module mux8(y,a,b,en); output reg [7:0] y; input wire [7:0] a,b; input wire en; …… 2)、Verilog- 中增长了ANSI C风格输入输出端口阐明,可以用于module、task和function。例如: Verilog -1995: Module mux8(y,a,b,en); output [7:0] y; input [7:0]a,b; input en; reg [7:0] y; wire [7:0] a,b; wire en; …… Verilog-: Module mux8( output reg [7:0] y; input wire [7:0] a,b; input wire en); …… 3)、对于具有parametermodule, 例如: Verilog -1995: Module adder(sum,co,a,b,ci); parameter MSB = 31, LSB = 0; output [MSB:LSB] sum; output co; input [MSB:LSB] a,b; input ci; reg [MSB:LSB] sum; reg co; wire [MSB:LSB] a,b; wire ci; ……. Verilog-: Module adder #(parameter MSB = 31,LSB = 0) ( output reg [MSB:LSB] sum, output reg co, input wire [MSB:LSB] a,b, input wire ci; ); ………. 2、 带有初始化寄存器类型变量声明 在Verilog-1995中定义和初始化reg需要两条语句,而在Verilog-中可以合成一条语句。 实例如下: Verilog-1995: reg clock; initial clk = 0; Verilog-: reg clock = 0; 3、 敏感表改进 1)、Verilog-使用逗号隔开敏感信号 Verilog-中可以用逗号来代替or隔开敏感信号(or也可以) Verilog-1995: always @(a or b or c or d or sel) Verilog-: always @(a,b,c,d,sel) 2)、Verilog-组合逻辑敏感信号通配符 在组合逻辑设计中,需要在敏感信号列表中包括所有组合逻辑输入信号,以免产生锁存器。在大型组合逻辑中比较容易遗忘某些敏感信号,因而在Verilog-中可以使用@*包括所有输入信号作为敏感信号。 Verilog-1995: always @(sel or a or b) if (sel) y = a; else y = b; Verilog- always @* //combinational logic sensitivity if (sel) y = a; else y = b; 这样做好处是避免敏感表切合不完整导致latch。 4、 带有符号算数运算扩展 1)、net型和reg型可以声明为带符号变量,如: Reg signed [63:0] data; Wire signed [11:0]address; 2)、函数返回值可以是有符号数,例如: Function signed [128:0] alu; 3)、literal integer number 可以定义为有符号,如: 16’hc501 //an unsigned 16-bit hex value 16’shc501 //a singned 16-bit hex value 4)、增长了算数左移和右移(>>>,<<<) 操作符“<<<”和“>>>”。对于符号数,执行算数移位操作时,将符号弥补移出位。例如: D=8’b10100011; D>>3; //逻辑右移成果为:8’b00010100 D>>>3; //算数右移成果是:8’11110100 5)、增长了系统函数$signed,$unsigned。用于在有符号和无符号数之间转换。如: Reg [63:0] a;//unsigned data type always@(a) begin result1 = a/2; // unsfned arithmetic result2 = $signed(a)/2; //signed ariithmetic end 5、 可变向量域选取 [<starting_bt>+:<width>] part-select increments from the staeting bit [<starting_bt>-:<width>] part-select increments from the staeting bit Reg [63:0] vector1; //little-endian Reg [0:63] ventor2; //big-endian Byte = vector1[31-:8]; //selects vector1[31:24] Byte = vector1[24+:8]; //selects vector1[31:24] Byte = vector2[31-:8]; //selects vector1[24:31] Byte = vector2[24+:8]; //selects vector1[24:31] 其中,起始位可以是变量,但是位宽必要是整数。因而可以用变量域选取,用循环语句选用一种很长向量所有位。 for(j=0;j<=31;j=j+1) byte=data1[(j*8)+:8]; //用于初始化向量一种域 data1[(byteNum*8)+:8]=8’b0; 6、 多维数组建立 Verilog-1995中只容许对reg,integer和time建立一维数组,惯用于RAM,ROM建模。 Verilog-中可以对net和variable建立多维数组。 //-dimensional array of 8-bit reg varibales //(allowed n verilog-1995 and verilog-) Reg [7:0] array1 [0:255]; Wire [7:0] out1 = array1[address]; //3-dimensional array of 8-bit wire nets //(new for verilog-) Wire [7:0] array2 [0:255] [0:255] [0:15]; Wire [7:0] out2 =array2[addr1] [addr2] [addr3]; 7、 多维数组赋值 Verilog-1995不容许直接访问矩阵某一位或者某几位,必要将整个矩阵字复制到另一种暂存变量中,从暂存中访问。 Verilog- 可以直接访问矩阵某一维或者某一位 如: Verilog-1995: Reg [31:0] ram [0:255]; Reg [7:0] high_btye; Reg [31:0] temp; temp =ram[5]; high_btye = temp [31:24]; verilog- reg [31:0] ram [0:255]; reg [7:0] high_btye; high_btye =ram[5][31:24]; //select the high_order byte of one word in a 2-dimensional array of 32-bit reg variables Reg [31:0] array2[0:255][0:15]; Wire [7:0] out = array2[100][7][31:24]; 8、 乘方运算符 增长乘方运算(power operate),运算符是“**”,如果其中有一种操作数是real类型,返回值讲师real类型。两个操作数都是integer类型,返回值才是integer类型。 9、 自动(可重入)任务和自动(递归)函数 1)、可重入任务 任务本质上是静态,同步并发各种任务共享存储区。当某个任务在各种模块中被调用,则这些任务对同一块存储空间进行操作,成果也许是错误。 Verilog-增长了核心之automatic,内存空间是动态分派,是任务变为可重入。 2)、递归函数:例如: Function automatic [63:0] factorial; Input [31:0] n; If(n==1) factorial =1; else factoral = n*factorial(n-1); endfunction 10、 自动宽位扩展 Verilog-1995中对不指定位数位宽超过32位总线赋高阻是:只对低32位赋值为高阻,高位将为0。 Verilog-将高阻或者不定态赋值给未指定位宽信号时,可以自动扩展到整个位宽范畴。 11、 常数函数 Verilog语法规定必要使用数值或者常数表达式来定义向量位宽和阵列规模。 如:parameter width = 8; Wire [width-1:0] data ; Verilog-1995中规定上述表达式必要为算数操作。 Verilog-中可以使用函数,成为常数函数,它数值在编译或者详细描述中被拟定。如: Parameter ram_size =1024; Input [clogb(ram_size)-1:0] address_bus; …. Function integer clogb; Input[31:0] depth; Begin For(clogb=0;depth>0;clogb=clogb+1) Depth =depth>>1; End endfunction 12、 增长了文献输入输出操作 Verilog-1995中在文献输入、输出操作方面功能非常有限,文献操作疆场借助于verilog PLI(接口编程语言),普通与c语言文献输入、输出库访问来解决。并且规定同步打开I/O文献不能超过31个。 Verilog-增长了新系统任务和函数,并且规定同步打开文献数目为230个。 13、 显示参数重载 Verilog-1995中参数重载有两种办法:一种是defparam语句显式重新定义。第二种是在模块实体调用时使用#符号隐式重新定义参数。 Verilog-中增长了一种新办法,成为显式重载。 14、 Generate语句 Verilog-新增了语句“generate”,通过generate循环,可以产生一种对象(例如一种元件或者一种模块等)各种例化,为可变尺度设计提供了以便。 Generate语句普通在循环和条件语句中使用。Verilog-增长了四个核心字generate、endgenerate、genvar和localparam,其中个genvar是一种新数据类型,用在generate循环中标尺变量必要定义为genvar类型数据。 15、 Redister变成了variable 由于自1998年verilog一来,regiser始终用来描述一种变量类型,经常让人误觉得register和硬件寄存器一致,在verilog-参照手册中将register变成了variable。 16、 对条件编译改进 Verilog-1995中支持’ifdef、’else、’endif、’undef进行条件编译,verilog-中增长了’ifndef和’elseif 17、 文献和行编译显示 Verilog需要不断跟踪元代码行号和文献名,可编程语言接口(PLI)可以获得并运用行号和源文献信息,以标记运营是错误。但是如果verilog代码通过其她工具解决,源代码行号和文献名也许丢失。故在verilog-中增长了’line,用来标定元代码行号和文献名。 18、 属性 随着仿真器之外工具把verilog作为设计输入,这些工具需要verilog语言可以加入指定工具备关信息和命令。 Verilog么有定义原则属性,属性名和数值由工具厂商或者其她原则来定义。当前尚未指定原则。 19、 系统任务和系统函数扩展 Verilog-增长了17个文献输入、输出任务:$fgetc、$ungetc、$fflush、$ferror、$fgets、$rewind、$swrite、$swrited、$swriteh、$sformat、$sdf_annotate、$fscanf、$sscanf、$fread、$fttell、$fseek. 增长了两个转换函数:$signed和$unsingned。 增长了命令行输入任务:$test$plusargs和$value$plusargs 20、 VCD文献扩展 VCD文献用于存储选定变量数值变化信息,信息记录由VCD系统任务来完毕。在verilog-1995原则中只有一种类型VCD文献,即四状态类型,这种类型VCD文献只记录变量在0、1、x和z状态之间变化,并且不记录信号强度信息。而在verilog-原则中增长了一种扩展类型VCD文献,可以记录变量在状态之间转换,同步记录信号强度。 扩展名VCD系统任务$dumpports、$dumpportsoff、$dumpportson、$dumpportsall、$dumpportslimit、$dumpportsfulsh、$vcdclose。 21、 其她 除上面讲内容外,Verilog-还增长了其她某些有用特性如增长了verilog设计内容配备功能、增强 SDF(Standard Delay File)支持、PLI增强改进等,感兴趣读者可以Verilog-原则文献。- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 统一标准 比较
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【w****g】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【w****g】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文