xilinx搭建axi转avalon通用寄存器读写模块

ops/2024/12/15 23:01:14/

1,axi转avalon bridge配置
在这里插入图片描述
2,block design结构
在这里插入图片描述
3,reg_ctrl.v代码
注意M_AVALON_address要右移两位

module reg_ctrl (input           clk             ,input           rst             ,input       [7:0]   M_AVALON_address           ,input               M_AVALON_read              ,output reg  [31:0]  M_AVALON_readdata          ,input               M_AVALON_write             ,input       [31:0]  M_AVALON_writedata         ,//gpioinput       [3:0]       pid_VER_SEL ,input       [7:0]       pid_IP_SW   ,output reg  [7:0]       pod_CAN_LED 
);wire  [7:0]     fpga_prj_ver_h;wire  [7:0]     fpga_prj_ver_m;wire  [7:0]     fpga_prj_ver_l;reg         M_AVALON_write_r        ;reg [7:0]   M_AVALON_address_r      ;reg [31:0]  M_AVALON_writedata_r    ;assign  fpga_prj_ver_h  = 8'd0;  assign  fpga_prj_ver_m  = 8'd0;           //版本号assign  fpga_prj_ver_l  = 8'd1;            ///****************************************************************************************/always@(posedge clk) beginM_AVALON_write_r        <=  M_AVALON_write        ;M_AVALON_address_r      <=  M_AVALON_address      ;M_AVALON_writedata_r    <=  M_AVALON_writedata    ;endalways @(posedge clk) beginif(rst) beginpod_CAN_LED <= 8'h00;endelse if(M_AVALON_write_r) begincase({M_AVALON_address_r[7:0]})8'h03 : pod_CAN_LED		        <= M_AVALON_writedata_r[7:0]		;endcaseendendalways @(posedge clk)beginif(M_AVALON_read)begincase(M_AVALON_address[7:0])8'h00 : M_AVALON_readdata	<= {8'b0, fpga_prj_ver_h, fpga_prj_ver_m, fpga_prj_ver_l}		;8'h01 : M_AVALON_readdata	<= {28'b0, pid_VER_SEL}	;8'h02 : M_AVALON_readdata	<= {24'b0, pid_IP_SW  }	;8'h03 : M_AVALON_readdata	<= {24'b0, pod_CAN_LED}	;default: beginM_AVALON_readdata  <= 32'hzzzz			;endendcaseendend/****************************************************************************************/

http://www.ppmy.cn/ops/142228.html

相关文章

四十四:HTTP/1.1发展中遇到的问题

引言 HTTP/1.1作为一种广泛使用的应用层协议&#xff0c;自1997年发布以来&#xff0c;成为了互联网通信的重要基石。然而&#xff0c;随着互联网的迅速发展和应用场景的不断扩展&#xff0c;HTTP/1.1在设计和实现过程中暴露出了一些问题。这些问题限制了协议的性能和适应性&a…

黑马 Cpp qt相关笔记

什么是QT QT是一个跨平台的C图像用户界面应用程序框架QT在1991年由奇趣科技开发QT的优点 跨平台,几乎支持所有平台接口简单&#xff0c;容易上手一定程度上简化了内存回收机制有很好的社区氛围可以进行嵌入式开发 QWidget QT注意事项 命名规范 类名 首字母大写&#xff0c;单…

[C#与C++交互] 跨进程通信NamedPipes

目录 1、前言 2、什么是命名管道&#xff1f; 3、实现步骤 4、示例代码 4.1 C 服务器代码 4.2 C# 客户端代码 5、运行步骤 6、注意事项 7、应用场景 8、优缺点 9、总结 1、前言 在 C# 和 C 应用程序之间进行数据交换时&#xff0c;命名管道&#xff08;Named Pipes…

【Google Cloud】VPC Service Controls 的试运行模式

本文介绍了 VPC 服务控制的试运行模式。 什么是 VPC Service Controls VPC Service Controls 是 Google Cloud&#xff08;以前称为 GCP&#xff09;的一项安全功能。它通过设置一个被称为 边界 的逻辑围栏&#xff0c;防止从内部到外部和从外部到内部的双向意外访问&#xf…

文本编辑器与正则表达式

1. VIM 编辑器 1.1 VIM 基本概念 VIM 是一个高度可定制的文本编辑器&#xff0c;广泛用于程序员的日常开发中。与传统的文本编辑器不同&#xff0c;VIM 基于模式操作&#xff0c;具有以下几个主要特点&#xff1a; 普通模式&#xff1a;用于浏览和修改文本。插入模式&#x…

ogg基本架构原理

OGG的基本概念 1.OGG简介 Oracle GoldenGate软件是一种基于日志的结构化数据复制软件。GoldenGate 能够实现大量交易数据的实时捕捉、变换和投递&#xff0c;实现源数据库与目标数据库的数据同步&#xff0c;保持亚秒级的数据延迟。可简称为OGG。文档路径&#xff1a;https:/…

单元测试,集成测试,系统测试的区别是什么?

实际的测试工作当中&#xff0c;我们会从不同的角度对软件测试的活动进行分类&#xff0c;题主说的“单元测试&#xff0c;集成测试&#xff0c;系统测试”&#xff0c;是按照开发阶段进行测试活动的划分。这种划分完整的分类&#xff0c;其实是分为四种 “单元测试&#xff0c…

代码随想录第43天

300.最长递增子序列 # Dynamic programming. class Solution:def lengthOfLIS(self, nums: List[int]) -> int:if not nums: return 0dp [1] * len(nums)for i in range(len(nums)):for j in range(i):if nums[j] < nums[i]: # 如果要求非严格递增&#xff0c;将此行 …