顶层模块讲解.pptVIP

  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文档。上传文档
查看更多
LDPC译码器顶层模块实现;Src_Rom模块 Control控制模块;变量节点更新模块(VNP模块) 校验节点更新模块(CNP模块);中间信息储存器mess_mem模块 地址交织器模块inter_rom模块,从交织器出来的地址一个是读地址,一个是写地址,这两个地址是相对于中间信息储存器mess_mem模块而言的。 ;译码结果存储单元result_mem模块 顶层模块 ;调试用系统任务和常用编译预处理语句;系统任务$stop 格式: $stop? ; $stop 任务的作用是把测试文件程序运行置成暂停模式。 系统任务$readmemb 和 $readmemh 这两个系统任务可以在仿真的任何时刻被执行,其使用格式共有以下6种: ;对于$readmemb 系统任务,每个数字必须是二进制,对于? $readmemh? 系统任务,每个数字必须是十六进制。 地址一词是指对存储器建模数组的寻址指针。当数据文件被读取时,每一个被读取的数字都被存放到地址连续的存储器单元中去。存储器单元的存放地址范围由系统任务声明语句中的起始地址和结束地址来说明,每个数据的存放地址在数据文件中进行说明。当地址出现在数据文件中,其格式为字符“@”后跟上二进制数或十六进制数。?? 如:@hh...h ? 对于这个十六进制的地址数中,允许大写和小写的数字。在字符“@”和数字之间不允许存在空白位置。当系统任务遇到一个地址说明时,系统任务将该地址后的数据存放到存储器中相应的地址单元中去。; 对于上面6种系统任务格式,需补充说明以下5点: (1)如果系统任务声明语句中和数据文件里都没有进行地址说明,则缺省的存放起始地址为该存储器定义语句中的起始地址。数据文件里的数据被连续存放到该存储器中,直到该存储器单元存满为止或数据文件里的数据存完。 (2)如果系统任务中说明了存放的起始地址,没有说明存放的结束地址,则数据从起始地址开始存放,存放到该存储器定义语句中的结束地址为止。 (3)如果在系统任务声明语句中,起始地址和结束地址都进行了说明,则数据文件里的数据按该起始地址开始存放到存储器单元中,直到该结束地址,而不考虑该存储器的定义语句中的起始地址和结束地???。 (4)如果地址信息在系统任务和数据文件里都进行了说明,那么数据文件里的地址必须在系统任务中地址参数声明的范围之内。否则将提示错误信息,并且装载数据到存储器中的操作被中断。 (5)如果数据文件里的数据个数和系统任务中起始地址及结束地址暗示的数据个数不同的话,也要提示错误信息。 ;举例说明: 先定义一个有256个地址的字节存储器mem: Reg[7:0] mem[1:256]; 下面给出的系统任务以各自不同的方式装载数据到存储器mem中。 initial $readmemh(“mem.data”,mem); initial $readmemh(“mem.data”,mem,16); initial $readmemh(“mem.data”,mem,12,24); 第一条语句在仿真时刻为0时,将数据装载到以地址为1的存储器单元为起始存放单元的存储器中去;第二条语句将数据装载到以地址为16的存储器单元为起始存放单元的存储器中去,一直到地址是256的单元为止;第三条语句将从地址是12的单元开始装载数据,一直到以地址为24的存储器单元;在第三种情况中,当装载完毕,系统要检查在数据文件是否有12个数据,如果没有,系统将提示错误信息。 ;系统任务 $random 这个系统函数提供了一个产生随机数的手段。当函数被调用时返回一个随机数。它是一个带符号的整形数。 $random 一般的用法是: $random%b,其中b0。它给出了一个范围在(-b+1):(b-1)中的随机数。下面给出一个产生随机数的例子: reg[23:0] rand; rand=$random%60; 上面的例子给出了一个范围在-59到59之间的随机数。;编译预处理指令 “编译预处理”是Verilog HDL编译系统的一个组成部分。 在Verilog HDL语言中,为了和一般的语句相区别,这些预处理命令以符号“`”开头。这些预处理命令的有效作用范围为定义命令之后到本文件结束或到其它命令定义替代该命令之处。下面主要讲述以下几个预处理编译命令: (1)宏定义`define 用一个指定的标志符(即名字)来代表一个字符串,它的一般形式为:`define signal string 它的作用是指定用标识符signal来代替string这个字符串,在编译预处理时,把程序中在该命令以后所有的signal替换成string。 `define WORDSIZE

文档评论(0)

iphone0b + 关注
官方认证
文档贡献者

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

认证主体如皋市辰森技术服务工作室
IP属地江苏
统一社会信用代码/组织机构代码
92320682MA278Y740Q

1亿VIP精品文档

相关文档