1、微型计算机组成
一个传统微型计算机硬件组成如下图
CPU通过地址线、数据线和控制信号线组成的本地总线(内部总线)与系统其他部分进行数据通信。
- 地址线用于提供内存或I/O设备的地址,即指明需要读/写数据的具体位置;
- 数据线用于在CPU和内存或I/O设备之间提供数据传输的通道;
- 控制线负责指挥执行的具体读/写操作。
对于80386CPU来说,其内部地址线和数据线都是32根,即32位,因此地址空间范围为2^32字节,从0~4GB。
现代PC机主板主要通过2个超大规模芯片构成的芯片组或芯片集组成:北桥(Northbridge)芯片和南桥(Southbridge)芯片。
- 北桥芯片用于与CPU、内存和AGP视频接口,这些接口具有很高的传输速率,北桥芯片和可以起存储器控制作用,因此Intel把该芯片标号为MCH(Memory Controller Hub);
- 南桥芯片用来管理低、中速的组件,例如:PCI总线,IDE硬盘接口、USB端口等,因此南桥芯片被称为ICH(I/O Controller Hub)。
2、I/O端口寻址和访问控制方式
CPU通过I/O端口地址来访问I/O接口控制器或控制卡上的数据和状态信息。通常一个I/O控制器包含访问数据的数据端口、输出命令的命令端口和访问控制器执行状态的状态端口。端口地址的设置方法一般有两种:统一编址和独立编址。
- 统一编址的原理:把I/O控制器中的端口地址归入存储器寻址地址空间范围内。CPU访问一个端口的操作与访问内存的操作一样,也使用访问内存的指令。
- 独立编址的原理:把I/O控制器和控制卡的的寻址空间单独作为一个独立的地址空间对待,称为I/O地址空间。每个端口有一个I/O地址与之对应,并且使用专门的I/O指令来访问端口。
PC机I/O接口数据传输控制方式一般可采用程序循环查询方式、中断处理方式和DMA传输方式。
- 循环查询方式是指CPU通过在程序中循环查询指定设备控制器中的状态来判断是否可以与设备进行数据交换。这种方式不需要过多的硬件支持,使用和编程都比较简单,但是特别耗费CPU时间。
- 中断处理控制方式需要中断控制器的支持,当I/O设备通过中断向CPU提出处理请求时,CPU会暂时中断当前执行的程序转而执行相应的I/O中断处理服务过程。当执行完成后,CPU又会继续执行刚才被中断的程序。在I/O控制器或设备发出中断请求时,CPU通过使用中断向量表(中断描述符表)来寻址相应的中断处理服务过程的入口地址。因此采用中断控制方式时需要首先设置好中断向量表,并编制好相应的中断处理服务过程。
- 直接存储器访问DMA(Direct Memory Access)方式用于I/O设备与系统内存之间进行批量数据传输,整个过程需要使用专门的DMA控制器来进行而无需CPU插手。
串行通信是指在线路上以比特位数据流一次一个比特进行传输的通信方式。串行通信可分为异步和同步串行通信两种。
- 异步串行通信以一个字符作为通信单位或一帧进行传输;
- 同步串行通信以多个字符或字节组成的序列作为一帧数据进行传输。