计算机系统要素-从零开始构建现代计算机--第五章,01-HACK硬件平台规范

概述

PC(程序计数器)芯片的输出端连接到指令内存ROM芯片的地址输入端,使ROM芯片总是输出ROM[PC] (大小为一个word),即“PC所指向的指令内存单元”的值,也就是当前指令。
每个时钟周期内整个计算机的操作可以表示为:

执行(Execute)

当前指令中不同的bit位域被同时送入计算机中不同的芯片。

  • 地址指令(A指令,最高位MSB=0),则A寄存器被置为指令内含的15位常数
  • 计算指令(C指令,最高位MSB=1),则指令中内含的a-位域(指定计算函数)、c-位域(指定计算函数)、d-位域(输出地址)、j-位域成为控制位,导致ALU和寄存器相应执行该指令。
取指令(Fetch)

计算机下一步取哪条指令,取决于当前指令的jump位和ALU的输出。在下一个时钟周期,PC指向的指令在ROM的输出中出现

构建使用的元件
  1. CPU基于ALU
  2. 寄存器和程序计数器基于16位寄存器和16位计数器
  3. ROM和RAM基于16位寄存器
  4. 屏幕和键盘通过内存映像与硬件平台接口,通过有相同接口的内置芯片(如RAM)来实现

中央处理器(Central Processing Unit,CPU)

与两个内存模块相连:

  • 指令内存取指令
  • 数据内存读/写数据

在这里插入图片描述

指令内存(Instruction Memory)

可直接访问的只读内存设备(ROM, Read-Only-Memory),由32K可寻址的16位寄存器组成。

在这里插入图片描述

数据内存(Data Memory)

前面实现的相同,用于通用数据的存储和内存映像的实现。
在这里插入图片描述
n为存储容量,k为寻址所需的位宽。

内存映像

I/O映像介绍

屏幕

准确的映射如下所示:
在这里插入图片描述

键盘

在这里插入图片描述
除了通常的ASCII码,KBD芯片还能识别以下的一些键:
在这里插入图片描述

全局内存(overall memory)

HACK平台的地址空间,也就是整个数据内存,称为Memory芯片,包含RAM(常规的数据内存的指令内存)和屏幕、键盘内存映像:
在这里插入图片描述

计算机(computer)

HACK硬件阶层顶层是一个单一的computer芯片,作为完整计算机系统的抽象。执行程序前首先要把程序代码预加载到ROM中。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值