Verilog HDL 基础.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Verilog HDL 基础 分类:电路与IC 一 基本要素 (1)Verilog HDL与VHDL 1.它于1995年成为IEEE标准,即standard 1364-1995。VHDL于1987年成为IEEE标准。 2.类C语言,不允许自定义数据类型(VHDL可以)。 3.可描述开关级电路模型,但信号初值不确定,必须由程序初始化;VHDL系统数据定义后没有赋值则默认为0,对系统级支持能力要强一些。 (2)IC设计流程: 系 统结构设计与仿真——HDL设计——TestBench功能模拟测试、逻辑仿真——综合成逻辑门(工艺库、约束文件)—— 初步时序分析(静态、电压、温度)——自动布线布局——后端报告(布局布线后增加的电阻、电容)——动态(布局后)时序 仿真,任何的建立例外都必须通过优化产生该例外的路径,以减小延迟;任何保持例外都必须通过在产生例外的路径上增加缓存,来增加延迟——逻辑验证 ——投片生产。 (3)标识符与关键字命名 1.标识符首字不能为数字或$,可以为字母和下划线, 2.命名长度不能超过1024, 3.区分大小写(与VHDL不同); 4.系统任务和系统函数前必须在标识符前加上$。 5.转义标识符 \ 开头,以空格、制表符(tab键)或换行符结尾,可显示打印ASCII字符。 (4)系统任务和系统函数 1.display(信息输出到标准输出设备,带行结束符)和write(输出信息不带行结束符)。用于显示输出的特殊字符:   \\n?? 换行   \\t?? 制表符   \\\\? 字符\\\   \\? 字符   \\ddd? 值为十六进制字符   %%?? 字符% 格式定义:     %h或%H:?? 十六进制     %d或%D:?? 十进制     %o或%O:?? 八进制     %b或%B:?? 二进制     %c或%C:?? ASCII字符     %v或%V:?? 线网信号长度     %m或%M:?? 层次名     %s或%S:?? 字符串     %t或%T:?? 当前时间格式 缺省如$displayb:? 显示二进制数, 2.monitor 监控和显示指定任务的参数值, 3.strobe 显示数据,保证数据只在所有赋值语句执行完毕时才被显示;(而$display()任务执行通常是确定的)。 4.文件输入输出 a.文件打开和关闭:系统函数$fopen()和$fclose(), b.输出值到文件:$fdisplay,$fwrite,$fstrobe,$fmonitor,这些任务的第一个参数都是文件指针,其余参数为带有从参数表的格式定义序列。 c.从文件中读出数据并载入存储器:$readmemb,$readmenh用于指定文件中读取并载入数据到指定的存储器。可在模拟时间的任何时刻执行,读取的文件只能包含如下内容:   空格、换行符、制表符(tab键)、换页;注释;二进制和十六进制; 5.模拟时间 访问当前模拟时间, a.$time:返回64位的整型模拟时间值,由`timescale激活; b.$stime:返回32位无负号整型时间值,在`timescale中指定单位, c.$realtime:返回一个实数,在`timescale中指定单位; 6.模拟控制 a.$finish[(n)];使模拟器窗口关闭并控制返回主机操作系统; b.$stop[(n)];将模拟进程挂起; 7.随机函数 $random[(seed)];   产生随机数,每次调用时根据种子变量(seed)的取值返回一个新的32位有符号随机数。种子变量必须是寄存器型、整型或时间寄存器型,种子变量来控制函数返回值,改变量的值应该在调用$random系统函数之前就已定义好。其他产生随机数函数:   $dist_uniform(seed,start,end);   $dist_normal(seed,mean,standard_deviation,upper);   $dist_exponential(seed,mean);   $dist_poisson(seed,mean);   $dist_chi_square(seed,degree_of_freedom);   $dist_t(seed,degree_of_freedom);   $dist_erlang(seed,k_stage,mean); (5)编译指令 1.`difine,`undef,产生/取消文本替换的宏; 2.`ifdef,`else,`endif,条件编译; 3.`default_nettype,为隐式线网指定线网类型,在模块外使用,影响其后的所有模块;线网类型的关键字有:   wire,tri,tri0,wand,triand,tri1,wor,trior,trireg

文档评论(0)

精华文档888 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档