Verilog状态机设计与Lattice调试实战

📚 共计 30 章节
01
状态机基础
什么是状态机、Moore与Mealy分类、FPGA应用场景
概念分类
02
Verilog状态机编码风格
一段式、两段式、三段式区别与选择
编码风格
03
Moore状态机设计实战
以序列检测器为例,检测“101”序列
Moore序列检测
04
Mealy状态机设计实战
检测“101”序列,与Moore对比
Mealy对比
05
状态编码策略
二进制、格雷、独热编码优缺点及选择
编码优化
06
状态机复位设计
同步复位与异步复位影响及最佳实践
复位可靠性
07
状态机中的毛刺问题
组合逻辑输出毛刺产生原因与消除
毛刺时序
08
状态机时序约束
Lattice Diamond中添加时序约束
时序约束
09
Lattice Diamond入门
工程创建、文件管理、综合选项设置
工具入门
10
Lattice Diamond RTL视图
查看状态机RTL结构,验证状态转换
RTL视图
11
Lattice Diamond仿真设置
调用ModelSim/Active-HDL功能仿真
仿真设置
12
Testbench编写基础
为状态机编写高效测试激励
Testbench激励
13
状态机覆盖率分析
状态覆盖率和转换覆盖率检查
覆盖率验证
14
Chip Planner布局查看
查看状态机在FPGA内部的布局布线
布局Chip
15
Reveal调试器基本原理
信号采集设置与原理
调试Reveal
16
Reveal调试实战
在线调试状态机的状态跳转
在线调试
17
Reveal触发条件设置
复杂触发条件捕获特定状态序列
触发条件
18
Reveal波形分析
从采集波形中定位状态机错误
波形分析
19
亚稳态与跨时钟域处理
跨时钟域状态转换同步处理
亚稳态同步
20
多状态机协同设计
主从状态机、状态机与数据路径交互
协同主从
21
状态机优化技巧
状态合并、化简、冗余消除
优化化简
22
超时处理与看门狗
设计看门狗定时器防止死锁
看门狗超时
23
错误恢复机制
设计错误状态与恢复机制
错误恢复
24
时序分析 (Diamond)
查看关键路径建立/保持时间
时序分析
25
功耗分析
状态机翻转率对功耗的影响
功耗翻转率
26
常见错误与规避
未定义状态、跳转缺失、输出锁存器
错误规避
27
代码风格规范
可读性、可维护性、团队协作
规范风格
28
设计实例1:UART接收器
UART接收器状态机设计
UART实例
29
设计实例2:SPI主控制器
SPI主控制器状态机设计
SPI实例
30
设计实例3:简易CPU控制单元
简易CPU控制单元状态机设计
CPU实例