当前位置:   article > 正文

国外大学生都用FPGA做什么项目(十一)

国外fpga工作

e49b5daaa344d5161e2f5b050f1d747a.png

  • 看看国外大学的FPGA开发项目

国外大学生都用FPGA做什么项目(二)

据我了解,目前国内很多大学是没有开设FPGA相关课程的,所以很多同学都是自学,但是自学需要一定的目标和项目,今天我们就去看看常春藤盟校Cornell University 康奈尔大学开设的FPGA项目课程,大部分课程是有源码的,而且和国内使用习惯类似都是Verilog开发,还是很有借鉴意义的。

项目链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/

项目介绍

Fall 2010 开发板 CycloneII

Falling Sand Game - Falling Sand 游戏

ca55fe61871b770c45a680254008b9c6.png

2D 粒子模拟器模拟“落沙”的某些动力学。

53aa4b259a3620ca9d638652172a4e33.png c68649c3ead2a6a15da6acd435fda450.png 0b4e99fb0405df89dca835ebce4a1d3f.png
  • 项目介绍

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ss868/ss868/index.html

  • hackaday项目介绍

http://hackaday.com/2010/12/15/falling-sand-game-on-and-fpga/

  • 视频链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ss868/ss868/ss868_p1.avi

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ss868/ss868/ss868_p2.avi

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ss868/ss868/ss868_p3.avi

  • 代码链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ss868/ss868/index.html

Video Realtime Cartoonifier - 实时视频卡通化

32b7f19fd501d7b3eeeebeb633e30fa8.png
  • 项目介绍

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/kaf42_jay29_teg25/teg25_jay29_kaf42/index.html

  • 视频链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/kaf42_jay29_teg25/Demo_1_tom.MOV

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/kaf42_jay29_teg25/Demo_2_jeff_line.MOV

  • 代码链接

Virtual Paint - 虚拟绘画

91413aecc8b0fb66312745e0bdfcf0c1.png fdf6c20edb3c1baf8cfd57abc486b10b.png 9daf0e164d19730ef2b859cbe726fabf.png

虚拟绘画是可用于使用手部动作和手指(带有彩色带)在任何平面(例如墙壁)上绘制彩色图片的系统。该项目的灵感来自于麻省理工学院媒体实验室完成的第六感项目(http://www.pranavmistry.com/projects/sixthsense/#ABOUT),使用不同的手势检测和颜色分割技术,在手持计算设备上运行的软件执行各种不同的任务,例如在空中做笔记、阅读带有投影的新闻报纸视频、用手动作拍摄照片,甚至在墙上画画。因此,在硬件和时间的限制下,我们实现了虚拟绘画。

91563c4b5c4858105f94f4e19e3f1736.png 1394f0ee80007ce64be6126d87795d7b.png 6a0bbfa591a5d5405bd48f34549e0e9a.png
  • 项目介绍

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/dj238_ssb224_aa764/MyWebSites/index.htm

  • 视频链接

http://www.youtube.com/watch?v=-U31GxYNMEA

http://www.youtube.com/watch?v=FbLjXyvnrO0

  • 代码链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/dj238_ssb224_aa764/Virtual%20Paint.zip

Stereographic Depth Mapping - 立体深度映射

b85192b3bef53f61725e4ffd93190048.png 8f4beabc17c322c798e21e7727a6886b.png

随着立体电视、电脑显示器以及 3D 电影的兴起,三维视觉感知变得越来越普遍。通过在图像中添加基于硬件的深度信息,该技术可以开辟各种实际应用。一个例子是一种电子乐器,其中所演奏的音符的音高或音调取决于弦或条相对于深度相机放置的距离。我们的目标是使用两个完全由硬件处理的相同相机来设计一种非常高效且具有成本效益的实时视频深度相机。

0c37a70853c88134a27407935001f1b6.png 1b56ed8ceb8cd678cbcad668caacdeae.png 1fb516255962bfcb1bab05bcf28735e3.png
  • 项目介绍

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/pfk5_jk459/pfk5_jk459/index.html

  • 视频链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/pfk5_jk459/Stereo_1.MOV

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/pfk5_jk459/depth_image.jpg

  • 代码链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/pfk5_jk459/pfk5_jk459/code/

Fractal Landscape - 分形景观

570d8b976b699aafc499437ffa2a8bac.png

本项目随机生成 2D 分形景观并创建该景观的 3D 投影图像。为了实现这一点,我们使用了菱形平方算法,该算法通常用于在计算机中创建高度图。我们在 verilog 中实现了菱形平方算法 8 次迭代,将生成分形景观的二维高度图。然后添加了高斯模糊算法使高度图更加真实。最后,我们添加了一种算法,使用正交投影从 2D 高度图创建 3D 投影视图。该算法以自定义时间间隔扫描 0 到 90 度,并显示每个角度的正交投影。

71f7a758b264c81aa54851dc15439365.png 027ec0845a23759aa7036a4a0d0e882d.png
  • 项目介绍

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/tss64_rs423/rs423_tss64/index.html

  • 视频链接

http://www.youtube.com/watch?v=jCGw_JQi2nA

http://www.youtube.com/watch?v=lr58PStpBD4

  • 代码链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/tss64_rs423/rs423_tss64/code/rs423_tss64_FractalLandscape_files.zip

3D pong with video overlay - 带视频叠加的 3D pong

2ae511e3983abcdcc639eaf68ba3f373.png 606646a74ce241675465e2715bb11e4e.png

POTION 是一种动作控制的游戏系统,允许两名玩家正面交锋,或者允许一名玩家与 AI 争夺乒乓球冠军。

23cd971cba73480f4b7b614f0955a7c1.png
  • 项目介绍

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ssc88_yl477/ssc88_yl477/index.html

  • hackaday项目介绍

http://hackedgadgets.com/2010/12/15/altera-de2-based-3d-pong-game/

  • 视频链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ssc88_yl477/game_1.MOV

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ssc88_yl477/game_2.MOV

  • 代码链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ssc88_yl477/ssc88_yl477/source/potion_slave.zip

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ssc88_yl477/ssc88_yl477/source/potion_master.zip

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ssc88_yl477/ssc88_yl477/source/potion_software.zip

Music Visualization - 音乐可视化

a0e0c0541e172772f1b60406d8bd96a7.png 9b3a9b155389d467d998c94a50743cc2.png

该项目的主要重点和测试是通过计算机播放音乐。该项目使用的 FPGA 板、板载音频编解码器和带有外部显示器的 VGA 显示驱动器。该设置让用户在板上线路上输入音乐,然后我们项目的逻辑将根据传入的信号在 VGA 端口上输出视觉效果。

d3cf147c2ab2f431b52b40765e3b24dc.png a9b79ae6f1f13ff749ad235ff75b2503.png 3341737e8564a92e42fb8ea66b4fba1a.png
  • 项目介绍

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/der34_mpl56/mpl56_der34/musicvisualization.html

  • 视频链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/der34_mpl56/music_1.MOV

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/der34_mpl56/music_4.MOV

  • 代码链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/der34_mpl56/mpl56_der34/musicvisualization.html

PID temperature controller - PID温度控制器

3cf01856cb0792c41c7418b98a4181ad.png 01514cb7b85e3629f5f64d0f5e88ad23.png

该项目的目标是在 FPGA 上实现用于控制应用的数字 PID 控制器。我们设计了一个控制器来跟踪和维持水箱的设定点温度,以尽可能低的超调,同时保持最大可能的上升时间。使用多个控制器和加热器来有效地控制温度。我们使用 MATLAB 设计控制器并根据实验数据开发系统模型。加热器使用来自 FPGA 的 PWM 信号进行驱动,该信号使用 BUZ 73 晶体管进行放大。

2f8c5c0d1ed33fdcce5b296c6004532d.png
  • 项目介绍

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ma638_ca325_as2454/ma638_ca325_as2454/index.html

  • 代码链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/ma638_ca325_as2454/ma638_ca325_as2454/

WAV player - WAV播放器

2598c7967142b0970c583568afe5d34f.png 4c60f448ebaf1c53cf44d12a184dac9f.png

我们实现了一个功能齐全的音乐播放器,能够通过 FPGA 开发板播放音乐文件。

  • 项目介绍

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/vs327_rw363/WAV_player/ECE%205760.htm

  • 代码链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/vs327_rw363/WAV_player/c%20code.zip

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/vs327_rw363/WAV_player/DE2_SD_Card_Audio.v

Word recognition - 实时语音识别引擎

9d5308dbb88a8ef3ddf77170aadda3f5.png 6744be3f1254d6e045e57726c86a8d1a.png

实现了一个实时语音识别引擎,将来自麦克风的时域信号作为输入,并对样本执行频域特征提取识别正在说出的单词。

42f0833d547bd547260f12bfb58833f9.png
  • 项目介绍

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/np276_ksp55_aj355/np276_ksp55_aj355/index.html

  • 代码链接

https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2010/np276_ksp55_aj355/np276_ksp55_aj355/index.html

总结

项目很多,从2006~2023年,应该有一部分项目没有展现出来,大部分都有视频介绍,但是我看了一些视频,都是简单演示一下功能,并没有设计思路,所以需要自行查看源码中的文档。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/黑客灵魂/article/detail/773078
推荐阅读
相关标签
  

闽ICP备14008679号