- 1、本文档共55页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
12.1.1 语法结构的扩展与增强 在Verilog-1995中,书写敏感信号列表时,通常用“or”来连接敏感信号,如: always @(a or b or cin) {cout,sum}=a+b+cin; always @(posedge clk or negedge clr) if (!clr) q=0; else q=d; 在Verilog-2001中可用逗号分隔敏感信号,上面的语句可写为: always @(a, b, cin) //用逗号分隔信号 {cout,sum}=a+b+cin; always @(posedge clock, negedge clr) if (!clr) q=0; else q=d; 12.2 Verilog-2002语法结构 习 题 12 $fgetc的用法如下: c=$fgetc(fd); 从fd指定的文件中读取一个字节,若发生错误,则c被置为EOF(-1)。将c设置为数据宽度大于8比特的变量可以区别EOF(-1)和值为0xFF的字符。 2. $fgetc、$ungetc $fgets可从文件中读取字符串,用法如下: integer code=$fgets(str,fd); 从fd指定的文件中读取字符串到寄存器型变量str中,直到str装满,或者读到“换行符(newline character)”,或者遇到文件结束条件,指令结束。当出现错误时,code中的返回值为0,否则为读取的字符数。 3. $fgets $fscanf和$sscanf用于读取格式化数据。用法如下: integer code=$fscanf(fd, format, args); integer code=$sscanf(str, format, args); 4. $fscanf、$sscanf $fread可从文件中读取二进制数据,其用法如下: integer code=$fread(myreg, fd); integer code=$fread(mem, fd); integer code=$fread(mem, fd, start); integer code=$fread(mem, fd, start, count); integer code=$fread(mem, fd, ,count); 5. $fread $ftell可用于确定文件中正在进行读/写操作的字节的位置,其用法如下: integer pos=$ftell (fd); 返回fd指定的文件中正在进行读/写操作的字节距文件开头的偏移量。 6. $ftell、$fseek、$rewind 12.1.4 VCD文件的扩展 VCD文件用于存储选定的变量数值变化的信息,信息的记录由VCD系统任务来完成。在Verilog-1995标准中只有一种类型的VCD文件,即四状态类型,这种类型的VCD文件只记录变量在0、1、x和z状态之间的变化,而且不记录信号强度信息。而在Verilog-2001标准中增加了一种扩展类型的VCD文件,能够记录变量在所有状态之间的转换,同时记录信号强度信息。 VCD文件建立流程 $dumpports $dumpportsoff $dumpportson $dumpportsall $dumpportslimit $dumpportsflush $vcdclose 扩展型VCD系统任务 为了使综合器输出的结果和基于IEEE Std 1364-2001标准的仿真和分析工具的结果相一致。IEEE Std 1364[1].1-2002标准为Verilog HDL的RTL级综合定义了一系列的建模准则。它将Verilog HDL结构分为了三类: 支持:RTL综合器可将此类结构解释和映射为硬件电路。 忽略;RTL综合器将忽略此类结构,不将其映射到硬件上。遇到此类结构并不会导致综合失败,但是有可能使综合的网表和RTL模型之间出现功能失配。 不支持;RTL综合工具不支持此类结构。当遇到此类结构时,综合失败。 12.2.1 硬件单元建模 组合逻辑建模只能使用always结构、连续赋值和net型变量声明时赋值。在一个always块中不能同时对一个变量进行阻塞赋值(=)和非阻塞赋值(=)。 组合逻辑的敏感信号列表中不能包含有posedge和negedge。为了不使综合结果和仿真结果出现功能上的失配,应将always块中所有出现在右手侧(RHS)的变量都包含在敏感信号列表中。可以使用“@*或@
您可能关注的文档
- 名言录-QUOTES-(中英文)总计761+410=1171则.doc
- (2)掌握数据选择器工作原理和应用.ppt
- (4)计算机检索.ppt
- 山东大学毕业生登记表填写.doc
- USB3500-芯片手册.docx
- (PAT201202)递推求解.ppt
- (PAT201203)贪心算法.ppt
- (北师大版九年级下册)第6课邪恶轴心课件.ppt
- 成都楼顶大字设计制作安装报价.docx
- (必修一)1-2--太阳对地球影响.ppt
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
文档评论(0)