项目详细描述

news2024/11/26 12:49:12

目录

一、SOC智能游戏机(集创赛-西南赛区三等奖)

二、AXI2AHB Bridge

三、基于FPGA智能导盲拐杖(FPGA竞赛全国二等奖)

三、基于FPGA的倾角监测系统

四、图像压缩核心算法


一、SOC智能游戏机(集创赛-西南赛区三等奖)

        本系统基于安路 EG4S20 FPGA 平台上构建嵌入式 Cortex-M0 软核,利用 AHB-lite总线将各种外设与Cortex-M0 相连接,搭建一个完整的 SoC 系统,共有贪吃蛇、飞行小鸟2个游戏。有丰富的人机交互功能,里面包含了基于UART协议的角度传感器、防沉迷(SIM900A)、语音识别;基于I2C协议的手势识别等,除此之外还有 VGA、HDMI、震感反馈、摇杆、矩阵键盘、音乐播放等。

视频链接:飞行小鸟游戏介绍及操作_哔哩哔哩_bilibili


二、AXI2AHB Bridge

        实现一个可靠的AXI到AHB异步桥,允许在不同的时钟域之间进行数据传输。采用了AXI 3.0和AHB 3.0协议,并在设计中引入了异步FIFO来处理跨时钟域传输的挑战。模块主要包括CMD模块、CTRL模块、WDATA模块和RDATA模块。CMD模块对读写指令进行轮询仲裁,并转换成AHB协议格式。CTRL模块根据读写指令,控制WDATA模块和RDATA模块进行读写操作。能将AXI Master的写数据转换为AHB协议的格式发送到AHB Slave端口,并能正确读回AHB Slave的Response。

        设计文档正在完善,目前整理了握手信号图。

图1 axi2ahb握手信号

  1. axi_valid:axi master发送的信号,包含读/写两个信号,在仿真里模拟。
  2. axi_ready:轮询信号为写 && cmd_fifo没满,包含读/写两个信号。
  3. cmd_valid:cmd_fifo不为空就输出一组读/写命令。
  4. cmd_finish:CTRL模块发送的ready信号,代表一帧数据传输完成,可以准备接收下一帧。
  5. axi_wvalid:写通道数据有效,在仿真里模拟。
  6. axi_wready:说明wdata_fifo有空间,axi master可以往里写数据
  7. wdata_ready:说明wdata_fifo里有数据,可以往外写给ahb slave
  8. wdata_phase:说明数据正在写传输,处于NONSEQ或SEQ的传输状态。
  9. ahb_hready:ahb模块就绪信号,在仿真里模拟。
  10. axi_bvalid:写响应信号有效,即b_fifo内有效数据
  11. axi_bready:axi准备好接收写响应。
  12. axi_rready:axi准备好接收读数据(包含读响应)
  13. axi_rvalid:只要r_data_fifo里有一个完整的burst数据,那就可以发
  14. rdata_ready:反馈给ctrl模块,用于判断r_data_fifo是否有空间接收下一个burst
  15. rdata_phase:说明数据正在读传输,处于NONSEQ或SEQ的传输状态。

三、基于FPGA智能导盲拐杖(FPGA竞赛全国二等奖)

        本系统主要由安路平台的FPGA开发板EG4S20BG256开发板作为主控中心,由 Arduino UNO 作为控制霍尔电机的控制板,由BASYS 2开发板作为盲人家中的辅助板。由FPGA主控中心,实时导航、小车驱动、红绿灯检测、LORA无线传输和超声波避障部分组成,具有摔倒检测、紧急求救、语音报时、消遣娱乐等功能。

        FPGA主控中心主要对各种传感器进行数据采集、数据分析、数据处理、动力设备的驱动。语音输入目的地控制GSM 模块发起 http 请求,从百度 LBS 开放平台获取导航数据,GPS模块辅助定位和超声波、红外线辅助避障的自主导航;通过自主设计的 LORA 模块将盲人和家中信息互联。Arduino 开发板通过PID 算法实现智能拐杖速度、位置、方向的精准控制。心率等身体健康数据发至安路 FPGA 核心板后将心率通过 LORA 实时发至 BASYS 2开发板供家人查看。


三、基于FPGA的倾角监测系统

        基于xilinx XC7Z010CLG400 FPGA平台实现,通过uart协议采样角度信息,将数据发送到fpga开发板进行处理,再通过HDMI显示。

基于FPGA的倾角检测系统(倾角监测,短信提示,定位信息显示等功能)_fpga像素时钟计算_内有小猪卖的博客-CSDN博客


四、图像压缩核心算法

        基于H.264视频标准编码设计2D DCT变换模块,实现多种不同性能及成本的DCT变换单元IP。根据功能需求,将模块划分为运算模块、缓存模块和顶层模块。方案一可提高模块性能,通过可变的行列读写标志,在4周期内完成2D DCT变换,其处理性能提高1倍。方案二可降低模块实现的成本,通过复用1D变换的计算逻辑和存储模块,在8周期内完成变换,其面积降低50%。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/952976.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

vue3 页面显示中文,分页显示中文

vue3 分页默认为英文 ,但想要中文显示 那么在App.vue中的代码为三步即可,引入中文,声明中文 ,绑定中文; 1. import zhCn from element-plus/es/locale/lang/zh-cn; 2. let locale zhCn; 3. :locale&q…

Spring retry(一)-使用指南

一、接入 spring boot 2.7.14 spring retry 从2.0.2版本之后&#xff0c;从spring batch里剥离出来成为一个单独的工程&#xff0c;因此我们引入spring retry最新版本可以直接如下引入 <dependency><groupId>org.springframework.retry</groupId><arti…

力扣92. 局部反转链表

92. 反转链表 II 给你单链表的头指针 head 和两个整数 left 和 right &#xff0c;其中 left < right 。请你反转从位置 left 到位置 right 的链表节点&#xff0c;返回 反转后的链表 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4,5], left 2, right 4 输出&am…

mysql数据库备份还原-mydumper/myloader

目录 一、mydumper介绍1、 mydumper优点2、 mydumper缺点3、工作原理4、备份所生成的文件 二、 mydumper 安装1.编译安装2.直接安装 rpm 包 三、 mydumper 使用1、参数说明2、mydumper用法 四、 myloader 使用1、参数说明2、myloader用法 对比mysqldump、mysqlpump、mydumper和…

2023年9月重庆/南京/深圳CDGA/CDGP数据治理认证考试报名

据DAMA中国官方网站消息&#xff0c;2023年度第三期DAMA中国CDGA和CDGP认证考试定于2023年9月23日举行。 报名通道现已开启&#xff0c;相关事宜通知如下&#xff1a; 考试科目: 数据治理工程师(CertifiedDataGovernanceAssociate,CDGA) 数据治理专家(CertifiedDataGovernanc…

最大正方形

题目链接 最大正方形 题目描述 注意点 matrix[i][j] 为 ‘0’ 或 ‘1’ 解答思路 使用动态规划解决本题&#xff0c;任意一个格子作为正方形右下角时&#xff0c;其最大正方向面积取决于左侧&#xff0c;上方以及左上角三个格子对应的正方形边长最小值E1&#xff0c;改格子…

直播预约|哪吒汽车岳文强:OEM和Tier1如何有效对接网络安全需求

信息安全是一个防护市场。如果数字化程度低&#xff0c;数据量不够&#xff0c;对外接口少&#xff0c;攻击成本高&#xff0c;所获利益少&#xff0c;自然就没有什么攻击&#xff0c;车厂因此也不需要在防护上花费太多成本。所以此前尽管说得热闹&#xff0c;但并没有太多真实…

xml转json

XML有个坑&#xff0c;就是XML转JSON中如何把单个元素转成数组&#xff0c;导致映射到实体类时无法执行&#xff0c;问题如下 初始xml格式如下&#xff1a; <java><version>1.8</version> </java>上述转成json格式就是&#xff1a; {"java&quo…

学习记录——Efficient MOdel轻量化主干模型(iRMB、EMO)

Rethinking Mobile Block for Efficient Attention-based Models 结合 CNN 和 Transformer 的倒残差移动模块设计 ICCV-2023 实例化了一个面向移动端应用的iRMB基础模块&#xff08;Inverted Residual Mobile Block&#xff0c;倒残差移动模块&#xff09;&#xff0c;其同时具…

UI自动化面试题合集

1、什么是UI自动化测试&#xff1f; UI自动化测试是一种通过模拟用户交互并自动执行UI操作的软件测试方法。它用于验证用户界面的功能和稳定性&#xff0c;以确保在不同的操作系统、浏览器和设备上的一致性。 同时&#xff0c;在这我也准备了一份软件测试面试视频教程&#x…

怎么消除人声保留背景音乐?试试这几种简单方法

消除人声保留背景音乐可以用于许多不同的目的。例如&#xff0c;可以在视频制作中使用&#xff0c;以确保观众能够听到清晰的对话&#xff0c;而不会被其他噪音干扰。此外&#xff0c;它也可以用于音乐制作中&#xff0c;以便更好地混合和控制音频元素。教大家几种简单的提取方…

白鲸开源 DataOps 平台加速数据分析和大模型构建

作者 | 李晨 编辑 | Debra Chen 数据准备对于推动有效的自助式分析和数据科学实践至关重要。如今&#xff0c;企业大都知道基于数据的决策是成功数字化转型的关键&#xff0c;但要做出有效的决策&#xff0c;只有可信的数据才能提供帮助&#xff0c;随着数据量和数据源的多样…

【大虾送书第七期】深入浅出SSD:固态存储核心技术、原理与实战

目录 ✨写在前面 ✨内容简介 ✨作者简介 ✨名人推荐 ✨文末福利 &#x1f990;博客主页&#xff1a;大虾好吃吗的博客 &#x1f990;专栏地址&#xff1a;免费送书活动专栏地址 写在前面 近年来国家大力支持半导体行业&#xff0c;鼓励自主创新&#xff0c;中国SSD技术和产业…

Java Stream与多线程

Java Stream 1. 问题引入 学习了尚硅谷的JUC&#xff0c;周阳老师讲的商城比较价格的案例&#xff0c;自己模拟了一个多线程的demo, 多线程处理任务并且汇总结果&#xff0c;出现了疑问&#xff0c;实例代码放在下面&#xff0c;读者有兴趣的话可ctrlcv玩一玩 如下是自定义的任…

BEV感知算法的概念

本文来自自动驾驶之心知识星球的国内首个BEV感知全栈系列学习教程 什么是BEV&#xff1f; ----> 上帝视角 Bird’s-Eye-View&#xff0c;鸟瞰图&#xff08;俯视图&#xff09;尺度变化小 &#xff08;离相机远的尺度比较小&#xff0c;离相机近的尺度比较大&#xff0c;比…

RT_Thread内核机制学习(四)队列

队列 队列中每个消息块都有一个头部&#xff0c;指向下一个消息块。 消息块的内存是连在一起的&#xff0c;但是是用链表组织的。 struct rt_messagequeue {struct rt_ipc_object parent; /**< inherit from ipc_object */void *m…

《独立开发者首次飞行指南》终于来了!!

大家好&#xff0c;我是彭涛。 现在&#xff0c;每年都有各家大厂裁员&#xff0c;各类中小厂跑路&#xff0c;失业人数越来越多的新闻。如果&#xff0c;我们身背房贷&#xff0c;我们应该都会非常焦虑。大环境下&#xff0c;我们不得不逐一探索新的赚钱之道&#xff0c;前段时…

anaconda环境迁移

conda环境迁移第一步 进入anaconda安装文件夹&#xff0c;然后进入envs文件夹&#xff0c;下面的每一个文件夹都是你创建的环境&#xff0c; 准备一个u盘之类的&#xff0c;把整个文件夹复制下来&#xff0c;然后打开另外一台机器&#xff0c;把同样的文件夹复制到同样的文件夹…

JS设置视频播放速度

方法 一&#xff1a;示例代码 document.querySelector(video).playbackRate 5; 进入到要加速的视频页面按F12打开控制控制台输入代码并回车 方法二&#xff1a;示例代码 document.getElementsByTagName("video")[0].playbackRate 5; 进入到要加速的视频页面按F…

钉钉消息已读、未读咋实现的嘞?

前言 一款app&#xff0c;消息页面有&#xff1a;钱包通知、最近访客等各种通知类别&#xff0c;每个类别可能有新的通知消息&#xff0c;实现已读、未读功能&#xff0c;包括多少个未读&#xff0c;这个是怎么实现的呢&#xff1f;比如用户A访问了用户B的主页&#xff0c;难道…