#CSDN博客地址
https://blog.csdn.net/LionelZhao/article/details/130540088?spm=1001.2014.3001.5501
设计了一个单核顺序执行支持16条指令的简易8位CPU,无中断和异常处理、无流水线并行、无乱序执行等高效计算技术。该处理器支持内存读写、寄存器读写、跳转指令及常见的算数、逻辑运算,片上集成了16Byte的寄存器组,可拓展为GPIO用于控制常见的外设。
#1、设计概述
设计了一个单核顺序执行支持16条指令的简易8位CPU,无中断和异常处理、无流水线并行、无乱序执行等高效计算技术。该处理器支持内存读写、寄存器读写、跳转指令及常见的算数、逻辑运算,片上集成了16Byte的寄存器组,可拓展为GPIO用于控制常见的外设。
#2、指令集
该处理器所支持的指令集长度类型有两种,分别为短指令和长指令。短指令8位,包含指令编码和寄存器地址;长指令16位,包含指令编码、寄存器地址和存储器地址,由于总线为8位,因此需要两次取指操作才能读取完整的指令。长指令和短指令的格式如下图所示:
指令编码采用四位二进制表示,定义了16种指令,如下表所示:
#3、系统组成
根据冯诺依曼架构,计算机由运算器、存储器、控制器、输入和输出组成,整个处理器系统由CPU核和存储器两部分组成,CPU包含了运算器和控制器;由于输入输出种类多样且需要外设控制、中断和异常控制等功能,这在本设计中并未实现,因此本设计不包含输入输出接口。整个CPU系统如下图所示:
CPU核由程序计数器PC、指令寄存器IR、累加器ACC、通用寄存器REG、地址选择器ADDR_MUX、算数逻辑单元ALU和控制器CTRL组成;存储器由ROM和RAM组成,ROM中存放程序和数据,RAM中存放数据。CPU核的结构框图如下所示:
存储器部分
①只读存储器ROM
②随机读写存储器RAM
处理器核部分
①程序计数器PC
②指令寄存器IR
③累加器ACC
④通用寄存器REG
⑤地址选择器ADDR_MUX
⑥算数逻辑单元ALU
⑦控制器CTRL

forked from lionelZhaowy/CPU8bit
-
Notifications
You must be signed in to change notification settings - Fork 0
设计了一个单核顺序执行支持16条指令的简易8位CPU,无中断和异常处理、无流水线并行、无乱序执行等高效计算技术。该处理器支持内存读写、寄存器读写、跳转指令及常见的算数、逻辑运算,片上集成了16Byte的寄存器组,可拓展为GPIO用于控制常见的外设。
License
durongze/CPU8bit
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
About
设计了一个单核顺序执行支持16条指令的简易8位CPU,无中断和异常处理、无流水线并行、无乱序执行等高效计算技术。该处理器支持内存读写、寄存器读写、跳转指令及常见的算数、逻辑运算,片上集成了16Byte的寄存器组,可拓展为GPIO用于控制常见的外设。
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- Verilog 100.0%