摘要:
详细的verilog阻塞、非阻塞、延迟的用法概念见以下链接 https://zhuanlan.zhihu.com/p/175078300https://zhuanlan.zhihu.com/p/423993521 本文主要讲述这道笔试题解题思路: 【例题1】 module b1; integer A 阅读全文
摘要:
【问题分析】 全加器(full_adder):是用门电路实现两个二进制数相加并求出和的组合线路,称为一位全加器,一位全加器可以处理低位进位,并输出本位加法进位。多个一位全加器进行级联可以得到多位全加器。 全加器输入信号有三个 dina、dinb、cin,输出的信号有两个sum、cout。 dina和 阅读全文
摘要:
框架与协议理解1--基本框架 框架与协议理解2--portin和portout的访问 masked bit:只对当前位操作,其他位不变GPIO的portin和portout不是一个配置寄存器,它的写和读有不同含义 【以协议中portout为例】 动作为:写入和检测 1.写入比如给pout_wr的第0 阅读全文
摘要:
GPIO的两个重要功能: 1.中断生成 2.掩码访问 1.中断生成--为什么要2个filp-flop同步? 对于sigle bit lever signal(单比特信号),可以用两级flop来同步目标域信号,即俗称的打两拍。 2.中断生成--FCLK HCLK的协议时序理解 协议中FCLK的定义是和 阅读全文
摘要:
框架理解 验证内容:3master连接3slave的AHB Matrix matrix上的master口在真实情况下会有一个slave外设。在AHB VIP的验证环境中,没有slave外设的rtl,因此必须用验证环境提供这个slave的角色,因此我在dw ahb matrix右边增加三个ahbram 阅读全文
摘要:
例如:二维动态数组:cgs_addr_range_mapping[ ][ ] cgs_addr_range_mapping[cfg.mst_num ][cfg.slv_num ] 如取cfg.mst_num=3 cfg.slv_num=2 例化第一层(第一维) cgs_addr_range_mapp 阅读全文
摘要:
1.VIM编辑器--录制宏 调用宏 录制宏 q a进入宏记录模式,a为宏名 shift+w移到词首 i .esc shift+e i () esc q退出宏记录 调用宏@a使用宏名为a的宏 @前加数字表示重复操作的次数 2.VIM编辑器--文本替换 r 替换 :1,$s;a;b;gc(:1,$sa; 阅读全文
摘要:
1.AHB协议中的burst传输 bit、byte、word的联系1byte = 8bit1word = 2byte = 16bit 注意:定长的burst传输期间,一直拉高HBUSREQx信号,目的是为了增加1次burst传输。不然仲裁器要根据仲裁算法把总线授权切换给其他主机了 2.(重中之重)A 阅读全文
摘要:
1.AHB传输 两个阶段 地址阶段,只有一个cycle 数据周期,由HREADY信号决定需要几个cycle 流水线传送 先是地址周期,然后是数据周期 2.AHB协议信号 3.工程架构 测试平台具体用的是RKV前缀的,VIP_LIB里面是lvc的前缀 利用AHB master VIP搭建验证环境:先实 阅读全文
摘要:
1.采样协议的理解 灰色的部分可以当做延迟或者亚稳态理解 协议中的波形图中有的长有的短,这个暂态可能是由于组合电路的延迟,也有可能是时序电路的延迟。 发送激励之前要满足协议,所以要实现AHB协议,lvc_ahb_types和lvc_ahb_transaction在master_driver中实现AH 阅读全文