2022FPGA创新设计竞赛选题分析与建议——写给大一大二学弟学妹

2023-11-01

0 写在最前

老师新带了几个大一大二的同学准备参加FPGA创新设计竞赛,他们不具备太多的参赛经验,往往专业知识也没有学太多。有一颗想参赛的心,却又茫然不知所措。因此,此文希望对于大一大二的科创萌新有所帮助。

1 关于选题

1.1 选题分析

2022FPGA创新设计竞赛 比赛官网

高云半导体的选题包括语音识别、声场摄像头、物体识别、加密。专业性比较强,在了解FPGA基础的同时,需要有机器学习算法的基础,了解一些语音、视觉、加密相关的知识。不过赛题给了设计思路,可以利用给的IP核,加快开发速度。需要在推理算法的开发移植上花比较多的功夫。

紫光同创选题有RISC-V架构处理器的实现,实现一个片上操作系统。说明白一点,就是让你们做一个CPU,能够在上面跑一些程序。网上有不少的关于用FPGA实现精简指令集架构处理器的开源项目,可以进行参考移植。如何想要效果更好,涉及处理器架构的优化,专业性较强。

色度亮度提取,任务规定很明确,根据色度亮度去控制led灯,可能需要绘制电路板,掌握简单的PCB绘制即可。

安路科技和Xilinx赛道没有给定具体选题方向,是开放性选题。安路科技建议方向包括移植成熟的应用生态、实现一些开源项目等等,可以利用网上的一些资料以及现有的成果。Xilinx是老牌FPGA厂商,网上相关的培训视频资料比较丰富,能够比较方便地跟着视频学习。

从难度上看,高云半导体题目难度最大,紫光同创其次,安路科技和Xilinx由于是开放性选题,可以制作技术难度不高的参赛作品。同时,根据经验,一般难度和参赛人数都是成反比的,即安路科技和Xilinx的参赛人数将会比较多,紫光同创其次,高云半导体题目参赛人数最少。

但是,赛题难,可能实现一两个基本功能,就可以获奖;赛题简单,特别是开放性赛题,需要作品的功能比较完整,完成度比较高,导致赛道可能比较“卷”。希望大家根据自己团队的情况和兴趣进行选择。

如果想要挑战自己,促进自己多学一点新知识,可以选择高云半导体、以及紫光同创。如果已经有了比较成熟的想法,或者已经有了一些作品想要继续参赛,不想收到赛题的限制,就可以选择安路科技和Xilinx这两个开放赛道。

同时,Xilinx是老牌的FPGA厂商,可能很多学生都选择使用Xilinx的FPGA入门(ZYNQ),其开发生态也比较好,网上有很多的资料。这可能也会导致Xilinx赛道的参赛人数比较多。相反,安路科技是国产半导体厂商,缺点是资料比较少,遇到问题只能够自己想办法解决。

1.2 开放性选题如何选

这是我以前参加集创赛,一开始所遇到的问题。赛题开放,大脑空白没想法,不知道要去做什么。当时我找程老师,让她给我找了一个想法,将开放性题目变成了命题式。

希望你们能够多观察社会,对生活保持热爱。能够发现人类未被满足的需求。在“拿着锤子找钉子”未果之后,不乏倒转思维,去“对着钉子找锤子”。钉子就是需求,锤子就是你所掌握的技能。

当时不知道你的技能能够导向什么产品的时候,不妨去从需求出发,看看社会到底需要什么。再去思考以我的技能,能够做出什么样的产品。

一个需求可以用多种产品形态去解决,蕴含着巨大的创新潜力。

关于解决帕金森老人吃饭的问题
![智能防抖勺](https://img-blog.csdnimg.cn/img_convert/da7bbabaf0351fe5e729e96e054c15a4.jpeg#clientId=uf7eef1f9-22da-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=300&id=u97e71bb2&margin=[object Object]&originHeight=800&originWidth=800&originalType=url&ratio=1&rotation=0&showTitle=true&status=done&style=none&taskId=uae60ffd4-5b9f-4270-aed4-261bf34c4ad&title=智能防抖勺&width=300 “智能防抖勺”)
![Emma Watch](https://img-blog.csdnimg.cn/img_convert/78bd6bc3067026efcaef01778172b339.png#clientId=uf7eef1f9-22da-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=169&id=u87c7a2e4&margin=[object Object]&originHeight=674&originWidth=1200&originalType=url&ratio=1&rotation=0&showTitle=true&status=done&style=none&taskId=u6aaeb92a-8640-48e5-9146-1dc6fc286da&title=Emma Watch&width=300 “Emma Watch”)
为解决帕金森老人吃饭的问题,有智能防抖勺;也有通过震动手腕,减弱导致手抖的神经信号的Emma watch。

从中可以看出,对着钉子找锤子,可以有多种解决方案,我相信其中一定有可以用上你的技术的地方。同时,奇思妙想在比赛评审中,也是很重要的加分项。

如何开拓思维呢?可以看一看每年的“互联网+”比赛,看一看别人发现了哪些需求,他们导出了哪些产品形态?我能不能把他实现,或者我有更好的解决方案。

同时,也可以关注一些科技众筹网站,看一看别人的创意。

Kickstarter

2 如何入门嵌入式开发

2.1 嵌入式开发有哪些知识要学——从点灯出发

后续或许有很多类嵌入式开发类的比赛,核心都是用一个芯片控制一些外部硬件,从而实现一些具体功能。

针对目前低年级同学参赛经验比较少,对于嵌入式开发了解不多,我整理了嵌入式开发需要学习的知识点,可以作为同学日后的学习路线。

梦的开始,从点灯出发。

  1. 简单电平输出,可以点亮一个LED了,以及控制暗灭。
  2. PWM输出(控制LED、电机)。这时,可以自己制作一个炫酷的呼吸灯了。
  3. 定时功能的实现。单片机通过定时器,FPGA可以通过分频器实现。这时候,可以实现更加复杂的程序了。
  4. 通信协议的掌握:串口、IIC、SPI、SBUS等等。掌握了这些,即可以控制显示屏、蓝牙WIFI模块、语音模块等等很多集成功能块。
  5. ADC、DAC的使用。涉及模拟电路会用。

掌握了这5点,基本上就比较系统的熟悉了整个嵌入式开发,可以在控制的基础之上,开始实现复杂的算法。

再具体一点,第一步应该干什么?
报名参赛,借用或者购买对应开发平台,下载对应开发软件,点亮一个LED灯。

多做实验,当一些具体功能实现时,享受成就感带来的快乐。

2.2 FPGA与单片机开发的区别

![image.png](https://img-blog.csdnimg.cn/img_convert/a4416b876a5f529cc7a01db23781100d.png#clientId=uf7eef1f9-22da-4&crop=0&crop=0&crop=1&crop=1&from=paste&height=322&id=u72dd1b36&margin=[object Object]&name=image.png&originHeight=854&originWidth=1180&originalType=binary&ratio=1&rotation=0&showTitle=false&size=228863&status=done&style=none&taskId=uc0c0e24b-023e-40e9-b169-7116a0579aa&title=&width=444.5)
FPGA,可编程逻辑门阵列。实际上,是数字芯片设计中,用来验证前端开发可行性的。数字后端在前端开发的基础之上,进行布局布线,之后,就可以拿去生产芯片了。

因此,虽然FPGA功能强大,单片机能做的它都能做,但是使用起来,还是有很大不同的。

  1. FPGA编程对应的是一个个硬件门电路,具有实时并发性。不像单片机程序,具有顺序逻辑,一般写在前面的代码先执行。而FPGA对应的硬件电路,电子以光速运动,基本上是瞬间,同时运行的。
  2. FPGA依赖时序逻辑电路来实现顺序逻辑。其中有一个很重要的部件叫做触发器,依赖一次又一次的脉冲出发,来区别前后顺序。因此,时序特别重要,一旦时间顺序没有考虑清楚,程序功能无法实现。开发起来,要比单片机难。

跟单片机代码可以拷贝参考别人的一样,FPGA开发同样有许多开源的IP软核,不用从底层去一步步实现已有的功能,直接调用别人的IP即可。

参加FPGA比赛,你需要学习基础的Verilog语法。会调用公用IP,会用图形化的界面设计大规模FPGA。

3 其他

学会自上往下的学习。

现在知识已经筑起了高楼大厦,像高中那种由前因导出后果的自底层开始的学习,在比赛过程中是行不通的。比赛要求你们具备快速学习的能力,而快速学习,要求自上而下的学习。

不用知道为什么,会用就行。快速学习、掌握新技能,能够学以致用,直接“现学现卖”,用在比赛当中。不用纠结于某些细节是为什么,不代表阻止你们求知。往往技术用着用着,就知道为什么了。某一天突然发现,跟你学的某些知识对应上了。

交流促进技术增长

费曼学习法,有所输出。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

2022FPGA创新设计竞赛选题分析与建议——写给大一大二学弟学妹 的相关文章

  • 02黑马数据结构笔记之单向链表搭建(list)

    02黑马数据结构笔记之单向链表搭建 list 1 思路 以STL的容器list类似 将各个数据节点存放在链表当中 实现是靠一个结构体来管理各个数据节点 定义一个节点类型 typedef struct Node 接收任何数据 void dat

随机推荐

  • 远程访问群晖Drive并挂载为电脑磁盘同步备份文件「无需公网IP」

    文章目录 前言 1 群晖Synology Drive套件的安装 1 1 安装Synology Drive套件 1 2 设置Synology Drive套件 1 3 局域网内电脑测试和使用 2 使用cpolar远程访问内网Synology D
  • C语言小游戏——推箱子(基础版)

    推箱子 1 游戏界面 2 游戏说明 3 程序分析 4 整个游戏源代码 1 游戏界面 2 游戏说明 贪吃蛇游戏按键说明 升级版的功能 可以进行通关模式 通过方向键WSAD键或者上下左右键 可以改变人移动方向的改变 3 程序分析 第一部分 绘制
  • 支付宝网页支付交互流程 nest 版

    自己整理了一份支付宝网页支付的交互流程 完全按交互流程响应步骤介绍的代码 效果图 因为平时主要用node开发 所以服务端用的node 框架是 nest 用最精简的代码实现支付功能 1 流程图 为了让下面的交互流程更清楚点 做了一张 简单粗暴
  • ESP32 CAM学习记录 (1) ——安装开发环境及烧录固件至ESP32-CAM开发板(虚拟机开发篇)

    本次开发使用安信可官方提供的开发环境 直接在windows下用虚拟机进行开发 1 搭建开发环境 开发环境连接 https pan baidu com s 1hWJAfeDQbYiD01X6eyqgMw 用 vmware12打开虚拟机 导入安
  • 自然语言处理入门指北 之 one-hot

    自然语言 Natural Language 通常是指一种自然地随文化演化的语言 例如 汉语 英语 日语都是自然语言的例子 与编程语言等为计算机而设的 人造 语言相对 自然语言无法直接被计算机等 理解 在这个前提下 如何让计算机认识 学习乃至
  • vue 的 el-table-infinite-scroll下拉加载

    使用el table infinite scroll 插件 安装插件 npm install save el table infinite scroll 全局引入并注册 main js import elTableInfiniteScrol
  • python基础:字典常用函数和方法

    字典 dictionary dict 字典的每个元素都是由一个key和一个value组成的 键 值 键是唯一的 且键是不可变数据类型 值是可以任意的 数据类型任意 且值可以重复 创建一个字典 dic aa aa的值 bb bb的值 cc c
  • Macbook M1和M2芯片安装Miniconda3、添加镜像和R的安装(超详细,解决PackagesNotFoundError,CondaSSLError: 报错问题)

    0 前言 前段时间由win换了Mac电脑 成功安装了一堆win上的软件 PS AI Office等等 因为之前win11上一直用的wsl2并装了miniconda3 体验感也是不错 就想着苹果电脑自家内置shell应该装个miniconda
  • 大脑视觉信号被Stable Diffusion复现图像!“人类的谋略和谎言不存在了”

    丰色 萧箫 发自 凹非寺量子位 公众号 QbitAI 现在Stable Diffusion已经能重建大脑视觉信号了 就在昨晚 一个听起来细思极恐的 AI读脑术 研究 在网上掀起轩然大波 这项研究声称 只需用fMRI 功能磁共振成像技术 相比
  • 华为OD真题2023新题库(机试通知上写着--A卷2022Q4)

    华为od最近又开始招人了 对于目前市场上行情来看 虽然去od加班可能多 但工资还是可以的 大环境不好都开始卷了 od对于目标院校机试成绩比较低150分 2023年好像又涨了 其他非目标院校350 wx外包300 当你收到邮件 试卷名称 A卷
  • 移动端UI兼容性测试利器-Hydra

    导读 尽管自动化测试技术日新月异 但是自动化case构建成本 执行稳定性等问题的存在 使手工测试依然移动端质量保证的重要手段 传统手工测试必须通过人工操作的方式执行测试用例 效率提升依赖测试人员的操作熟练度 本文从介绍百度内UI兼容性测试现
  • linux系统下nginx的安装

    文章目录 一 安装nginx依赖 二 下载并解压nginx安装包 三 安装nginx 四 配置环境变量 五 启动 六 浏览器访问 七 停止重启nginx 八 设置开机自启动nginx 九 防火墙设置 十 卸载nginx 一 安装nginx依
  • Quartz的12张数据库表说明

    参考地址 https www e learn cn en share 3471635 https blog csdn net xiaoniu 888 article details 83181078 表说明 1 1 qrtz blob tr
  • YOLOv5的介绍

    YOLOv5 You Only Look Once version 5 是一种目标检测模型 用于在视频或图像中识别和定位物体 它是YOLO You Only Look Once 算法的最新版本 在YOLOv4的基础上进行了改进 YOLOv5
  • java的几种基本数据类型及其大小

    Java中的四类八种基本数据类型 第一类 整数类型 byte short int long 第二类 浮点型 float double 第三类 逻辑型 boolean 它只有两个值可取true false 第四类 字符型 char 按照字节排
  • 《Python入门到精通》time模块详解,Python time标准库,time库函数大全

    作者主页 士别三日wyx 作者简介 CSDN top100 阿里云博客专家 华为云享专家 网络安全领域优质创作者 推荐专栏 小白零基础 Python入门到精通 time模块详解 1 获取操作 time time 获取时间戳 float ti
  • ionic android app打包和发布

    1 项目信息 angular 10 0 14 ionic 5 4 3 gradel 6 5 cordova 10 0 0 node 12 14 0 visual studio code 1 68 1 项目代码 http 192 168 1
  • Unity2D Mesh水

    学生一枚 买不起pro 也懒得破解 不能用unity自带的water组件做水 所以用LineRenderer Mesh Sin函数苟了一个 为什么不用shader做 因为用Mesh的方法更容易添加碰撞 浮力组件 表面效应组件的效果 用sha
  • Spring-全面详解(学习总结)

    Spring 1 简介 1 1 简介 简介 Spring 春天 gt 给软件行业带来了春天 2002年 Rod Jahnson首次推出了Spring框架雏形interface21框架 2004年3月24日 Spring框架以interfac
  • 2022FPGA创新设计竞赛选题分析与建议——写给大一大二学弟学妹

    0 写在最前 老师新带了几个大一大二的同学准备参加FPGA创新设计竞赛 他们不具备太多的参赛经验 往往专业知识也没有学太多 有一颗想参赛的心 却又茫然不知所措 因此 此文希望对于大一大二的科创萌新有所帮助 1 关于选题 1 1 选题分析 2