博客简介

本篇博客是实验设计:《模型机CPU设计》整套实验报告内容之一,包括构架,分部件和性能分析三个大的模块,每个模块又细分为小的部分,历时1.5周完成。最后实验验收的分为满分。现在将其分享出来,希望能给后续的实验同学一个参考,少走不必要的弯路,设计出性能更优的CPU。

资源下载

设计CPU时,一路做了有三个版本,链接如下:

  • CPU1.0版本是第一代版本,由于刚开始设计,没有做性能的优化,此版本的优点是布局间隙大,线路较为清晰,如果你刚开始设计,那么这个版本可以更好地让你迅速设计出一个CPU CPU1.0版本压缩包下载
  • CPU2.0版本是第二代版本,也是我验收的版本,这个版本对版本一做了布局和时序性能的优化,性能达到了作者当时的巅峰CPU2.0版本压缩包下载
  • CPU3.0版本是第三代版本,对第2代版本做了更深层次的优化,解决了RAM不稳定的问题CPU3.0版本压缩包下载
  • 这篇博客是整个实验的一部分,全套内容请参考:逻辑与计算机设计基础CPU实验

函数发生器ALU

(1) 部件功能:

功能:
1从通用寄存器组中读取内容
2在 S3~ S0 和 M 的控制下,实现运算功能
3 ADD 和 SUB 加减法指令影响状态位 Cf和 Zf。

(2) 接口设计:

输入:

S[3…0]为操作类型判断输入
M是总的使能信号
A[7…0]8位数据接入
B[7…0]8位数据接入
输出:
T[7…0]操作的结果
Cf进位标志
Zf结果为0标志

RTL视图

(3) 功能实现:

判断S输入,如果
S=”1001”,执行加法,将R1+R2赋值给R1
S=”0110”,执行减法,将R1-R2赋值给R1
S=”1011”,执行或运算,将(R1)∨(R2)赋值给R1
S=”0101”,执行取反运算,/R1赋值给R1
判断加减法是否有最高位的进位或借位,如果有那就将cf=1,否则为cf=0
判断加减操作的结果是否为0,如果是那就将zf=1,否则zf=0
VHDL设计:

(4)功能仿真验证:

仿真结果:

时钟为11ns:A=11111111,B=11111111,此时S=0110执行减法,结果为0,输出T=00000000,进位zf=1;
时钟15ns:A=11111111,B=11111111,此时S=1001,执行加法,输出为T=1111110,此时cf=1;
时钟为16ns:A=1111111,B=11111111,此时S=1011,执行或运算,结果T=11111111,
Cf=0,zf=0;
时钟25ns:A=11111111,B=11111111,,此时S=0101,执行非运算,T=00000000,cf=0,zf=0;

结论:仿真结果满足功能要求,设计正确

模型机CPU设计——ALU函数发生器(6)相关推荐

  1. 众友科技计算机组成原理,组成原理:采用微程序控制器的模型机CPU设计(10页)-原创力文档...

    课程设计报告 课程名称: 计算机组成原理 设计题目: 采用微程序控制器的模型机 CPU设计 院 系: 班 级: 设 计 者: 学 号: 指导教师: 目 录 课程设计(大作业)报告 1 昆明学院课程设计 ...

  2. 模型机CPU设计——指令寄存器IR(7)

    博客简介 本篇博客是实验设计:<模型机CPU设计>整套实验报告内容之一,包括构架,分部件和性能分析三个大的模块,每个模块又细分为小的部分,历时1.5周完成.最后实验验收的分为满分.现在将其 ...

  3. HNU-电路与电子学-综合设计-模型机

     写在前面: 每一年的综合设计肯定都有改动,故肯定不能照搬照抄,大家可以借鉴思路,复现成果,但要注意不同之处,以免被0分处理. 模型设计的指导书我不放在这里了,因为那是课程组老师们的成果. 另外一定要 ...

  4. 计算机组成原理课程设计基本模型机,广东海洋大学计算机组成原理课程设计-基本模型机的设计与实现讲解...

    <计算机组成与结构>课程实习 基本模型机的设计与实现 系 别: 信息学院 班 级: 计科1141 指导教师: 刘桃丽 姓名 邓超荣 何涛 邓周光 学号 分工 成绩 201411621110 ...

  5. 函数发生器与计算机电路,模电课程设计(压控函数发生器).ppt

    模电课程设计(压控函数发生器) 四.组装电路的注意事项 集成芯片的插法 导线的剥头和插法 接线样板 1. 集成芯片的插法 由于集成芯片引脚间距离与插孔位置有偏差,必须预先调整好位置,小心插入金属孔中, ...

  6. 计算机组成原理4位ALU运算器设计,计算机组成原理课程设计-alu设计和4位锁存器设计.doc...

    计算机与通信工程学院 计算机组成原理课程设计 专业名称班级学号学生姓名指导教师设计时间207.12.23~2018.1.3 课程设计任务书 专业:: 学生姓名(签名): 设计题目: 设计实验条件 20 ...

  7. 8位12指令硬布线CPU设计

    实验f4a 8位12指令硬布线CPU设计 模型机是计算机的缩细模型,通过它可以理解计算机整机的结构及功能,理解CPU.存储器.中断控制器.接口的结构及实现逻辑和各部件之间的接口关系.本次课程设计的主要 ...

  8. 计算机组系统原理—模型机

    工程仅供参考: pan.baidu.com/s/1-DD4DVfg-WrSyMIk79pSug 码:08t1 HNU计算机组系统原理--1-4周模型机1-2实验报告 一.实验目标 二.实验内容 1.实 ...

  9. 单周期十条指令CPU设计与verilog实现(Modelsim)

    目录 一.实验目的 二.实验内容 三.实验原理 1. 规定 2. 原理图 四.实验步骤 1. CPU各部件实现 pc insMem acc alu cu dataMem 2. CPU例化实现 3. 编 ...

  10. 【Computer Organization笔记10】单周期CPU设计:基于7条MIPS指令的数据通路

    本次笔记内容: P19 计算机组成原理(19) P20 计算机组成原理(20) 本节课对应幻灯片: 组成原理24 singlecycle.pptx 基于上节课的7条MIPS指令的数据通路,分别针对7条 ...

最新文章

  1. 转载CSDN(educast):c# 对两个Datatable的结构相同进行合并
  2. samba服务器_麒麟V10链接SAMBA服务器的方法
  3. python 计算时间重叠_Python基于时间信息(即时、间隔)计算项目之间的相似性...
  4. php三维数组转换二维数组,php 三维数组转二维数组(多维数组变合拼二维数组)(foreach循环 数组叠加)...
  5. zookeeper和eureka的对比
  6. JAVA在线编译,无需环境变量
  7. Codeforces Round #360 (Div. 2) C. NP-Hard Problem 水题
  8. 国际图形学大会(SIGGRAPH)2017届主席竞选答辩是如此场景
  9. ubuntu切换python版本
  10. python爬视频网站数据_Python爬虫:B站排行榜视频播放量,视频评论量等数据采集...
  11. 卡内基梅隆计算机硕士录取案例,大神offer | 恭喜再来人学员录取卡耐基梅隆大学-机器学习硕士!...
  12. 深圳金证股份面试的经历
  13. CF1027D Mouse Hunt(topo总结)
  14. hue oozie spark:GC overhead limt exceed
  15. Python 根据身份证号计算生日,年龄和性别
  16. c语言函数指针 的定义方法,C语言 函数指针一(函数指针的定义)
  17. java打包把依赖也打进去_maven打包时把依赖的jar包打进去
  18. matlab圆周运动仿真,Matlab软件在推导匀速圆周运动方程及绘制图像上的应用
  19. 裸金属服务器租用常见问题
  20. java 对比度_调整图像亮度、对比度、饱和度

热门文章

  1. 11的倍数c语言,11-1,5,11,12的倍数(容斥原理)
  2. LOJ#2339. 「WC2018」通道(边分治+虚树)
  3. 量化投资的Python入门,也很适合机器学习Python入门
  4. 创新思维案列分析——苹果公司
  5. 读研规划,准研究生们看看哦!!!!!!!!!!!!!
  6. APP开发流程都有哪些?
  7. linux iso转换成img文件,Ubuntu下将img 转化成iso的号令[Linux安全]
  8. 【制作脑图】万彩脑图大师教程 | 概括主题
  9. 游戏公司的交互设计人员一般都做什么工作?
  10. win10里面的linux可以分屏吗,Win10上下分屏怎么弄 教你让Win10上下分屏的方法