前言
计算机硬件结构简略介绍
一、计算机硬件
从软件开发者的角度来看,计算机硬件有三个部件最为关键,分别是中央处理器CPU、
内存、I/O控制芯片
二、早期
早期计算机,CPU的核心频率不高,和内存的频率一样,他们都是直接连接在同一个总线(bus)上。由于I/O设备如显示器键盘磁盘等的速度与CPU和内存的相比还是慢很多,所以需要为低速设备准备数据缓冲区。CPU的信号都是TTL电平,外设大多数都是机电设备,不可能使用TTL电平驱动。此外,CPU总线上传送的都是并行数据,外设并行、串行都有,需要转换格式。因此每个设备都会有一个相应的I/O控制器。早期的计算机硬件结构如下图所示:
I/O控制器需要解决的问题如下:
- 设置数据缓冲区,解决CPU和外设数据不匹配问题
- 设置信号电平转化电路
- 设置数据转换格式(模拟->数据,串转并等等)
- 设置时序控制电路来同步CPU和外部设备
- 提供地址译码(每个硬件需要反馈的信息很多,所以一个I/O接口包含多个端口,即I/O接口上的寄存器,用来存储这些信息的内容。但同一时刻,只有一个端口和CPU数据交换,这就需要I/O接口提供地址译码电路,使得CPU可以选中某一个端口,使其可以访问数据总线)