摘要: 在Vivado定制IP的时候,或者在IP Catalog中双击一个IP,不论该IP是我们自己添加到工程的自定义IP,还是Vivado自己带的IP,选择"Customize IP"后都会弹出如下图所示的框框。可以看到一种叫做”Global”,一种叫”Out of Context (OOC)”。 Glo 阅读全文
posted @ 2019-01-04 22:58 yiwenbo 阅读(3520) 评论(0) 推荐(0)
摘要: 最近弄Zynq,不懂AXI协议Zynq很难玩儿的转。这些笔记主要攻克AXI中的一些难题。 所有的AXI4包含了5个不同的通道: (1)读/写地址通道(Read/Write address channel, AR/AW):读、写传输每个都有自己的地址通道,对应的地址通道承载着对应传输的地址控制信息。 阅读全文
posted @ 2018-12-24 10:04 yiwenbo 阅读(7023) 评论(0) 推荐(0)
摘要: 学习文本值和基本数据类型的笔记。 1.常量(Literal Value) 1.1.整型常量 例如:8‘b0 32'd0 '0 '1 'x 'z 省略位宽则意味着全位宽都被赋值。 例如: wire [7:0] sig1; assign sig1 = '1; //sig1 = 8'b11111111 1 阅读全文
posted @ 2018-12-11 16:46 yiwenbo 阅读(19523) 评论(0) 推荐(1)
摘要: AHB2 支持多个Bus Master,例如有三个Master,有四个slave,但是同时只有一个Mater可以拿到Bus的访问权。所以,总线的使用权就需要Master去申请,也就需要一个仲裁器(Arbiter)。同时也支持突发传输,分段传输,字节、半字节和字的传输,也可配置总线位宽。AHB 系统由 阅读全文
posted @ 2018-12-10 11:21 yiwenbo 阅读(4222) 评论(0) 推荐(0)
摘要: 为什么要验证(Verification)?在从定SPEC到流片,中间每一步都会出BUG,经可能的找出设计中的bug,IC设计中有70%的工作量在验证上,在SoC设计中至关重要。 什么是验证?验证是确保设计和预定的设计期望一致的过程,设计期望可以说是Spec,通常是通过一个或者多个设计规范来定义的。 阅读全文
posted @ 2018-12-09 13:19 yiwenbo 阅读(2860) 评论(0) 推荐(0)
摘要: 一个简易的(不完整的)APB4 slave的可以没有PREADY和PSLVERR,这两个信号都被赋予常数,以及没有PPROT。 两种不同类型的寄存器: 图: 普通寄存器电路图 图: 带读写控制寄存器电路图 图:带读写控制寄存器时序图 一般来讲,一个模块的interface到内部reg之间,需要的信号 阅读全文
posted @ 2018-11-30 23:00 yiwenbo 阅读(4173) 评论(3) 推荐(0)
摘要: 在APB2协议中,定义了set up stage和access stage; 定义两个stage其实就相当于定义两个时钟周期。因为APB的slave通常来说对应peripheral的registers,访问这些slave registers(control,status,write/read dat 阅读全文
posted @ 2018-11-26 10:51 yiwenbo 阅读(16308) 评论(0) 推荐(0)
摘要: branch指令只有进入decode阶段,CPU才能知道是否跳转。Branch进入到ALU阶段,CPU才知道是否taken。 有什么方式可以降低这种flush掉没用的指令。CPU不知道会不会跳转,以及不知道会跳转到哪里去。如果在TETCH有可以预测branch是否taken,或者知道taken之后的 阅读全文
posted @ 2018-11-25 13:01 yiwenbo 阅读(1944) 评论(0) 推荐(0)