找到开始时的新建工程,新建一个 Block Design 原理图设计文件,添加 IP 时就可以搜索到自定义的 LED_MyIP_Lite。 添加ZYNQ,使用自动连接会自动添加复位逻辑和 AXI总线互联结构,添加一个 ILA 集成逻辑分析仪,并设置成 AXI4 LITE 接口,引出 LED 输出,原理图文件右键生成顶层 wrapper。 对ILA 的配置。 新建约束文件...
通过图4‑49知道,IP的顶层接口分成两部分,一个是AXI_Lite接口,这部分上面两节有介绍,一个是GPIO接口,所以需要在顶层文件中增加这一接口。 代码4‑7 自定义IP顶层接口定义 1. module GPIO_LITE_ML # 2.( 3. // Users to add parameters here 4. 5. // User parameters ends 6. // Do not modif...
二、使用自定义的 AXI-Lite的IP 找到开始时的新建工程,新建一个 Block Design 原理图设计文件,添加 IP 时就可以搜索到自定义的 LED_MyIP_Lite。 添加ZYNQ,使用自动连接会自动添加复位逻辑和 AXI总线互联结构,添加一个 ILA 集成逻辑分析仪,并设置成 AXI4 LITE 接口,引出 LED 输出,原理图文件右键生成顶层 wrapper。
选择匹配的AXI4_lite接口名称,我这已经选过了。 之后一直Next直到finish,把原来的S00_AXI接口的地址删除,就得到下图警告也没了: 最后的步骤就是封装IP核,点击左边最后一项Review and Package,点击PackageIP则完成此次操作。 方法二: 工程上先把需要封装的代码添加完成,然后点击封装IP 选择红框的封装当前代码 此时IP...
选择编辑IP,打开的工程由顶层Wrapper和AXI-Lite总线接口逻辑组成。关闭自动弹出的IP封装向导,当添加好用户自定义逻辑后再重新封装,否则封装的仅仅是软件生成的接口逻辑。接口比较多,分为写通道和通道,而每个通道基本逻辑又由地址通道和数据通道组成。除了以上四个通道外,写通道包含应答通道以返回CPU确认信息。每个接口以...
选择匹配的AXI4_lite接口名称,我这已经选过了。 之后一直Next直到finish,把原来的S00_AXI接口的地址删除,就得到下图警告也没了: Package 方法二: 工程上先把需要封装的代码添加完成,然后点击封装IP 选择红框的封装当前代码 此时IP核编辑的页面跳出来了,跟方法一类似: ...
这里讲一个小问题,不知道大家在使用自定义的AXI4-LITE IP时有没有遇到。 比如,我现在制定了一个PWM IP,如果有看我microblaze系列教程的同学应该知道,当时我只设计了:如何控制PWM IP的输入,也就是通过将寄存器和pwm的duty和period参数进行了关联配置。
如果是axi4lite寄存器的初始化,可以参考一些带axi4lite接口配置的ip,比如三速以太网IP,各种以太网IP中关于axi4lite接口初始化配置模块。 初始仿真Locked锁定时候,clkout1周期5ns,200M,clkout2周期100ns,10M,IP核的初始设置频率一致。 通过修改axi4lite寄存器后,Locked锁定时候,clkout1周期10ns,100M,clkout2周期100...
也就是说PL这边的AXI-Stream的接口是不能直接与PS对接的,需要经过AXI4或者AXI4-Lite的转换。比如后面将用到的VDMA IP ,它就实现了在PL内部AXI4到AXI-Stream的转换,VDMA利用的接口就是AXI-HP接口。本文首先介绍AXI总线协议、AXI-Stream协议、AXI-lite协议,然后本文以AXI-Lite作为demo。我们在后续的文章中,...
1、在自定义AXI4-Lite IP内部添加用户逻辑如下: // Add user logic here reg clr; reg Tpr; reg Tpr_r; reg[31:0] Nstd; reg[31:0] Ntest; reg [11:0]rlcd_rgb; always @( posedge S_AXI_ACLK ) if ( S_AXI_ARESETN == 1'b0 ) begin clr <= 1'd0; Tpr <= 1'd0; end else ...