贯穿式综合项目:可配置交通信号控制器
项目目标
设计一个简化的双向道路交通信号控制器。项目规模足以贯穿组合逻辑、时序逻辑、有限状态机、数据通路、RTL、仿真和时序分析,又不会引入复杂处理器架构。
控制器管理主路和支路两组红、黄、绿灯,使用时钟和同步复位工作。基础版本按固定时间循环;扩展版本可接收支路车辆请求,并允许通过参数配置各阶段持续时间。
基础功能规格
- 主路绿灯期间,支路必须为红灯。
- 主路由绿转红之前必须经过黄灯阶段。
- 支路获得绿灯前,主路必须已经进入红灯状态。
- 支路由绿转红之前也必须经过黄灯阶段。
- 任意时刻不得出现两条道路同时为绿灯或黄灯的非法组合。
- 复位后进入安全状态:主路绿灯、支路红灯,计时器清零。
- 基础版本采用固定周期;进阶版本在支路无请求时延长主路通行。
分阶段交付
| 学习阶段 | 项目任务 | 对应知识 |
|---|---|---|
| 第 6~8 章 | 定义灯光编码、输入输出和安全真值表 | 编码、组合逻辑、译码 |
| 第 9~10 章 | 设计阶段计时比较和非法输出检测 | 加法/比较、路径延迟、毛刺 |
| 第 11~13 章 | 用寄存器保存状态和计数值 | 触发器、寄存器、计数器 |
| 第 14~16 章 | 完成状态图、状态表和基本时序约束 | 同步设计、FSM |
| 第 17~18 章 | 划分数据通路与控制器,可选配置寄存器 | 数据通路、存储接口 |
| 第 19~20 章 | 编写 RTL 和自检查测试平台 | HDL、仿真、验证 |
| 第 21~23 章 | 阅读综合/时序结果,讨论功耗和测试 | 综合、STA、物理实现、DFT |
最终交付物
- 需求与接口说明。
- 状态图、状态表和状态编码说明。
- 数据通路与控制器框图。
- 可综合的 SystemVerilog RTL。
- 自检查测试平台和关键波形。
- 安全性质检查清单。
- 简化的综合资源和时序报告解读。
- 一页项目复盘:功能、时序、功耗、验证与可实现性。
选学扩展
- 加入行人请求和全红保护阶段。
- 对异步车辆请求加入双触发器同步器。
- 为不同阶段加入可编程持续时间。
- 加入故障安全模式:检测非法状态后进入全红。
扩展内容只在基础版本通过验证后进行。