国外大学生都用FPGA做什么项目(十三)
看看国外大学的FPGA开发项目
据我了解,目前国内很多大学是没有开设FPGA相关课程的,所以很多同学都是自学,但是自学需要一定的目标和项目,今天我们就去看看常春藤盟校Cornell University 康奈尔大学开设的FPGA项目课程,大部分课程是有源码的,而且和国内使用习惯类似都是Verilog开发,还是很有借鉴意义的。
项目链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/
项目介绍
Fall 2008 开发板 CycloneII
Parallel Tetris - 2 人俄罗斯方块
![65e4db91602750cbbefc6cf07a2b01d7.png](https://img-blog.csdnimg.cn/img_convert/65e4db91602750cbbefc6cf07a2b01d7.png)
流行的俄罗斯方块游戏的 2 人版本。让每个玩家在自己的屏幕上使用 PS/2 键盘进行游戏,同时他的游戏会影响对手的游戏:当玩家清除游戏中的线时,他的对手将在游戏中上升预定数量的线(其中每条线都是随机的方块序列)。
![531104865de87e93db0073298244c2cb.png](https://img-blog.csdnimg.cn/img_convert/531104865de87e93db0073298244c2cb.png)
![745561b0e52ebc8641e6116d6f2a94e5.png](https://img-blog.csdnimg.cn/img_convert/745561b0e52ebc8641e6116d6f2a94e5.png)
项目介绍
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/aj77/aj77/finalreport.html
代码链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/aj77/aj77/tetris.zip
参考链接
http://www.ee.ualberta.ca/~elliott/ee552/projects/1999_w/TETRIS/
http://www.contrib.andrew.cmu.edu/~davidfu/
http://www.youtube.com/watch?v=8rs6IW4WK4o
Speaker Recognition - 说话人识别
![eb51a69ad256cc85909cc2ee4af4bbd9.png](https://img-blog.csdnimg.cn/img_convert/eb51a69ad256cc85909cc2ee4af4bbd9.png)
能够仅根据音频输入实时区分不同的扬声器。在文献中,这个问题被称为说话人识别(Speaker Recognition)。
项目介绍
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/pae26_jsc59/pae26_jsc59/index.html
代码链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/pae26_jsc59/pae26_jsc59/src/
Triangle Graphics Processing Unit - 三角形图形处理单元
![d826c43624b86294c91ac511b1a53b82.png](https://img-blog.csdnimg.cn/img_convert/d826c43624b86294c91ac511b1a53b82.png)
![ed66ea052427630d619890ee639c81db.png](https://img-blog.csdnimg.cn/img_convert/ed66ea052427630d619890ee639c81db.png)
实现了一个 GPU(图形处理单元)来渲染基于三角形的模型。目标是使用可移动相机生成复杂的模型。
项目介绍
![78537a217dd1964932da4921ddebcef5.png](https://img-blog.csdnimg.cn/img_convert/78537a217dd1964932da4921ddebcef5.png)
![4d6c276a2c2b573ba330c7507a7c81da.png](https://img-blog.csdnimg.cn/img_convert/4d6c276a2c2b573ba330c7507a7c81da.png)
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/ap328_sjp45/website/introduction.htm
视频链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/ap328_sjp45/Rabbit.MP4
代码链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/ap328_sjp45/website/graphics_pipeline.zip
Brute Force Search of a DES Keyspace - 暴力搜索 DES 密钥空间
![92c2eb96ec0e5304599af666884b8825.png](https://img-blog.csdnimg.cn/img_convert/92c2eb96ec0e5304599af666884b8825.png)
![4293a63cc4357abf4f1647795ef167d3.png](https://img-blog.csdnimg.cn/img_convert/4293a63cc4357abf4f1647795ef167d3.png)
![735fb6e0672f1aa2d603d2d06cb0bd31.png](https://img-blog.csdnimg.cn/img_convert/735fb6e0672f1aa2d603d2d06cb0bd31.png)
使用 Verilog 硬件描述语言设计了一个绰号 Red 的暴力 DES 密钥破解器 ,用于搜索 LM 算法的缩写密钥空间。用户通过与四个按钮和一个拨动开关交互来控制设备。信息最后显示在液晶显示屏上。
![ff28127c7818939448d2b932cc57c8af.png](https://img-blog.csdnimg.cn/img_convert/ff28127c7818939448d2b932cc57c8af.png)
项目介绍
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/tt236/tt236/index.html
视频链接
http://www.youtube.com/watch?v=kh2PwUCR7A8&NR=1
代码链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/tt236/tt236/verilog/
Implementing a SoC Design on an FPGA - 在 FPGA 上实现 SoC 设计
![bf1914954f94b48ca8cdf764d3993291.png](https://img-blog.csdnimg.cn/img_convert/bf1914954f94b48ca8cdf764d3993291.png)
重现康奈尔大学 Big Red Chip (BRC) 项目团队设计的处理器,并修改为可以和MATLAB交互。
![705c92764aeebd486bac957ab0f4eec6.png](https://img-blog.csdnimg.cn/img_convert/705c92764aeebd486bac957ab0f4eec6.png)
项目介绍
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/djd36_fac24_wy47/djd36_fac24_wy47/index.html
代码链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/djd36_fac24_wy47/djd36_fac24_wy47/index.html
L-System
目标是探索在 FPGA 上创建 L 系统。L系统是Lindenmayer系统的缩写,是研究简单多细胞生物发育的理论框架。利用几何学的基本原理,可以对 L 系统进行图形解释,可用于渲染植物结构的分形和进行可视化,显示植物的基本生长和发育过程。
![6ee20c2403a051b30d3cbf307721b93b.png](https://img-blog.csdnimg.cn/img_convert/6ee20c2403a051b30d3cbf307721b93b.png)
项目介绍
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/ed267/erik_webpage_files/ed267_576.htm
视频链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/ed267/LSystem.MP4
代码链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/ed267/erik_webpage_files/ed267_576.htm
All Digital, FPGA Based, Lock-in Amplifier - 基于 FPGA 的全数字锁相放大器
![5609e3d1dd06cee6584d51343232250f.png](https://img-blog.csdnimg.cn/img_convert/5609e3d1dd06cee6584d51343232250f.png)
在 FPGA 上使用全数字架构实现锁相放大器。从历史上看,锁定放大器是由精密模拟元件、滤波器、混频器等构成的,这种架构需要高质量、昂贵的元件和精心的工程。通过在 FPGA 上以数字形式实现所有信号路径组件,可以实现许多优点。首先,使用数字乘法器,可以创建理想的数字混频器和滤波器。
![7278baba31cb9a590a4689930abc5d60.png](https://img-blog.csdnimg.cn/img_convert/7278baba31cb9a590a4689930abc5d60.png)
![269e2e9f8e27f6ebd0d252459386bbef.png](https://img-blog.csdnimg.cn/img_convert/269e2e9f8e27f6ebd0d252459386bbef.png)
项目介绍
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/tor2/main.html
代码链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/tor2/
Simulation of Ideal Gas Particles - 理想气体粒子模拟
![4681c9a1d2c45118d57d2b5c1f0000f4.png](https://img-blog.csdnimg.cn/img_convert/4681c9a1d2c45118d57d2b5c1f0000f4.png)
![fad843418dcc778377dec63e23bf1e97.png](https://img-blog.csdnimg.cn/img_convert/fad843418dcc778377dec63e23bf1e97.png)
在 VGA 显示器上模拟理想气体。让显示器显示代表理想气体中的粒子的白色像素,并在它们相互碰撞或与屏幕边缘碰撞时执行适当的计算。
![383662db3675e4e498031a98725d1b8a.png](https://img-blog.csdnimg.cn/img_convert/383662db3675e4e498031a98725d1b8a.png)
![af7edee2f64812794ff7ba5b232ab8ca.png](https://img-blog.csdnimg.cn/img_convert/af7edee2f64812794ff7ba5b232ab8ca.png)
项目介绍
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/sdh78_cc459/sdh78_cc459/ideal_gas_simulator.html
视频链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/sdh78_cc459/CollisionSystem.MP4
代码链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/sdh78_cc459/sdh78_cc459/
Video guided, ball-following robot - 视觉引导,球跟随机器人
![262c60cd7d63546cf5cc02efe60e5de3.png](https://img-blog.csdnimg.cn/img_convert/262c60cd7d63546cf5cc02efe60e5de3.png)
![866dcf9dbc8e323f2e13da442b5a344a.png](https://img-blog.csdnimg.cn/img_convert/866dcf9dbc8e323f2e13da442b5a344a.png)
创建一个自动机器人,它使用摄像头并在主要为白色/灰色的环境中跟踪橙色球。利用这些信息,机器人的神经元将控制四个电机来引导机器人朝球移动。
![8531e3ccbdfd35d37e5c14b4d5590487.png](https://img-blog.csdnimg.cn/img_convert/8531e3ccbdfd35d37e5c14b4d5590487.png)
项目介绍
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/cc464_mrm58/FinalProjWebsite/index.html
视频链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/cc464_mrm58/BallEFloor.MP4
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/cc464_mrm58/BallEVideoProcess.MP4
代码链接
https://people.ece.cornell.edu/land/courses/ece5760/FinalProjects/f2008/cc464_mrm58/FinalProjWebsite/DE2_TV.zip
总结
项目很多,从2006~2023年,应该有一部分项目没有展现出来,大部分都有视频介绍,但是我看了一些视频,都是简单演示一下功能,并没有设计思路,所以需要自行查看源码中的文档。