小脚丫FPGA平台上的案例
数字电路基础教程相关的案例:
FPGA入门基础项目
此部分为FPGA初学者入门项目,以STEP MXO2和MAX10两款小脚丫核心板硬件为例(它们的GPIO管脚配置不同),使用Verilog作为编程语言,目的是让初学者快速了解基本的逻辑实现和FPGA的编程过程,我们由浅入深,从如何点亮LED、数码管到利用状态机去完成交通灯的设计。
- 实验1:点亮LED - 对于很多刚刚接触电子硬件的人来说,第一件事就是点亮LED,在这个例程里,我们通过配置FPGA的GPIO的端口电平,实现对外围设备(此处为LED)的逻辑控制。
- 实验2:RGB LED - 成功点亮了普通的LED,试试看点亮三色的LED,光学三基色的混合能够产生什么?
- 实验3 3-8译码器: 数字电路中3-8译码器在理解数制与码制的概念中起了十分重要的作用,本例程实现了利用三个拨码开关作为输入,8个LED作为输出的3-8译码器。
- 实验4: 数码管显示 - 小脚丫开发板上有两位7段数码管,本例程展示了如何显示任意数字。
- 实验5: 时钟分频 - 对于时序电路而言,时钟无疑是最重要的组成部分,如何利用系统时钟产生设计所需的时钟周期也是必须所掌握的的技能。
- 实验6 LED流水灯 - 时钟分频做好了之后,如何利用新得到的时钟做一个流水灯?
- 实验7: 按键消抖 - 按键若未做去抖动将引起误判定,本例程将介绍多种去抖动的方法。
- 实验8: 计时控制 - 用小脚丫做一个计时器或者电子表是不是很酷。
- 实验9: 脉宽调制 - 让你的LED“呼吸”起来!
- 实验10: 状态机 - 状态机设计方法对于FPGA的设计来说至关重要,本例程即利用状态机去完成交通灯功能的实现。
中级项目
基于STEP-Baseboard V2.2板子实验
基于STEP-Baseboard V3.0板子实验
当我们完成了入门教程之后,对小脚丫以及Verilog的编程有了初步了解。在这里我们将通过小脚丫来实现一些有趣的小项目,体会FPGA的强大和灵活,有些项目可能需要用到面包板或者小脚丫扩展底板。
综合项目
综合性项目,相对难度高一些
软核处理器
- 自己设计CPU
- MCS-8051
- Nios软核处理器
- RISC-V处理器
- Arduino测试程序Reindeer_Step_arduino_app1)
- MICO8软核处理器
- MICO32软核处理器