🖥️ 8位复古电脑课程

从零用Verilog搭建8位复古电脑——从CPU到内存映射到BASIC解释器,Verilator验证

📖 课程简介

本课程从最基础的布尔逻辑出发,一步步教你用Verilog搭建一台完整的8位复古电脑。30课涵盖:数字逻辑基础→CPU核心设计→内存系统→IO外设→软件工具链,所有代码均通过Verilator仿真验证。

灵感来自Apple II、Commodore 64、ZX Spectrum等经典8位电脑——但这次,每一个晶体管都由你亲手设计。

课程路线图 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 基础概念 (01-03) CPU核心 (04-08) CPU实现 (09-12) ┌──────────┐ ┌──────────┐ ┌──────────┐ │01 概述 │ │04 寄存器 │ │09 数据通路│ │02 布尔逻辑│ ───→ │05 ALU │ ───→ │10 单周期 │ │03 组合逻辑│ │06 指令集 │ │11 多周期 │ └──────────┘ │07 指令解码│ │12 流水线 │ │08 控制器 │ └──────────┘ └──────────┘ │ ▼ 内存系统 (13-18) IO外设 (19-24) 软件集成 (25-30) ┌──────────┐ ┌──────────┐ ┌──────────┐ │13 存储器 │ │19 PS/2 │ │25 汇编器 │ │14 内存映射│ ───→ │20 VGA │ ───→ │26 监控程序│ │15 ROM │ │21 UART │ │27 BASIC基 │ │16 RAM │ │22 定时器 │ │28 BASIC IO│ │17 堆栈 │ │23 GPIO │ │29 系统集成│ │18 DMA │ │24 中断 │ │30 毕业项目│ └──────────┘ └──────────┘ └──────────┘

📘 第一部分:基础概念

🖥️018位复古电脑概述 🔌02布尔逻辑与门电路 ⚙️03组合逻辑电路

📗 第二部分:CPU核心

💾04寄存器设计 🧮05算术逻辑单元ALU 📋06指令集设计 🔍07指令解码器 🎛️08控制器设计

📕 第三部分:CPU实现

🔀09数据通路 10单周期CPU 🔄11多周期CPU 🏃12流水线基础

📙 第四部分:内存系统

🗄️13存储器原理 🗺️14内存映射 💿15ROM设计 📊16RAM设计 📚17堆栈实现 🚀18DMA基础

📓 第五部分:IO外设

⌨️19PS/2键盘接口 🖥️20VGA文本模式 📡21串口UART ⏱️22定时器 🔌23GPIO 24中断控制器

📒 第六部分:软件与集成

🔧25汇编器 📟26简单监控程序 💻27BASIC解释器基础 🔢28BASIC运算与IO 🏗️29完整系统集成 🎓30毕业项目:8位复古电脑

🔧 Verilog源代码

所有课程的Verilog代码均保存在 verilog/ 目录下,通过Verilator --lint-only验证。

文件课程功能
ps2_keyboard.v19PS/2键盘接收器
vga_text_mode.v20VGA 80×25文本模式
uart.v21可配置波特率UART
timer.v2216位可编程定时器
gpio.v238位GPIO控制器
interrupt_controller.v248源中断控制器

8位复古电脑课程 © 2026 | 从零到一的计算机架构之旅