新書推薦:
![千秋堂丛书002:北洋之乱——一本书讲清武夫治国、军阀混战的北洋时代](http://103.6.6.66/upload/mall/productImages/24/29/9787577301068.jpg)
《
千秋堂丛书002:北洋之乱——一本书讲清武夫治国、军阀混战的北洋时代
》
售價:HK$
112.7
![声学手册 第7版 声学设计与建筑声学实用指南](http://103.6.6.66/upload/mall/productImages/24/31/9787115633606.jpg)
《
声学手册 第7版 声学设计与建筑声学实用指南
》
售價:HK$
218.3
![掼蛋入门到精通(礼盒版)](http://103.6.6.66/upload/mall/productImages/24/31/9787122452740.jpg)
《
掼蛋入门到精通(礼盒版)
》
售價:HK$
193.2
![中国书法散论(熊秉明文艺三书)](http://103.6.6.66/upload/mall/productImages/24/31/9787208187726.jpg)
《
中国书法散论(熊秉明文艺三书)
》
售價:HK$
71.3
![战争事典083:细说靖难之役 : 明成祖朱棣的戎马征程](http://103.6.6.66/upload/mall/productImages/24/30/9787513945899.jpg)
《
战争事典083:细说靖难之役 : 明成祖朱棣的戎马征程
》
售價:HK$
114.8
![时尚箱包及配饰 [英]达拉-简·吉尔罗伊](http://103.6.6.66/upload/mall/productImages/24/31/9787111756842.jpg)
《
时尚箱包及配饰 [英]达拉-简·吉尔罗伊
》
售價:HK$
170.2
![当代历史学新趋势:理论、方法与实践(论世衡史丛书,当下历史学在研究什么?未来历史学的趋势是什么?)](http://103.6.6.66/upload/mall/productImages/24/31/9787220134739.jpg)
《
当代历史学新趋势:理论、方法与实践(论世衡史丛书,当下历史学在研究什么?未来历史学的趋势是什么?)
》
售價:HK$
112.7
![晋国600年(全四册)](http://103.6.6.66/upload/mall/productImages/24/30/9787510476303.jpg)
《
晋国600年(全四册)
》
售價:HK$
250.7
|
編輯推薦: |
1.努力追踪微机快速发展的历程,努力反映计算机科技的*成果。读者可以从每一章中看到这一点。2.以应用为目的,删繁就简,突出重点、内容少而精。加强基本概念、基本分析方法基本技术手段的阐述;密切结合计算机专业实际。3.《微型计算机原理及接口技术》类的教材甚多,但鉴于计算机科技的深奥,本书为降低其难度,在语言描述上下了大工夫。本书努力贯彻启发式的教学原则,使逻辑线索简明、清晰、合理;物理概念清楚,深入浅出;语言生动流畅,通俗易懂。并注重典型电路和芯片的介绍。4.注重实践技能的培养和分析问题解决问题能力的培养;5.图表精选,说明性强。
|
內容簡介: |
微型计算机原理及接口技术是高等学校工科电类和信息类各专业,特别是涉及软硬件结合的芯片级计算机应用各类专业大学生必修的一门专业基础课。其目的在于让学生理解与掌握微型计算机的基本组成、工作原理、各类接口部件的功能以及构建微机系统等方面的知识,使学生具有微机应用系统软硬件开发的初步能力。 本书既适合高等学校工科电子类和电气自动化类以及信息类各专业,特别是涉及单片机、嵌入式等芯片级计算机应用各类专业大学本科学生使用,也适合相关专业的应用型本科生选用,还可供广大工程技术人员和对计算机硬件爱好的读者学习参考。 本书为任课教师配有电子教案,此教案用PowerPoint制作,可以任意修改。选用本教材的教师可通过清华大学出版社网站获取该电子教案。网址是www.tup.com.cn。
|
目錄:
|
目录
第1章概述1
1.1计算机及其基本组成1
1.1.1信息社会和计算机1
1.1.2计算机的分类2
1.1.3计算机的基本组成4
1.1.4微型计算机的硬件系统和软件系统5
1.2进位计数制7
1.2.1数制7
1.2.2数在不同进制之间的转换9
1.3微型计算机中数的编码和字符的表示12
1.3.1二进制数值数据的编码12
1.3.2十进制数值数据的编码BCD码17
1.3.3定点数与浮点数在计算机中的表示19
1.3.4计算机中非数值数据的编码22
1.4计算机和微型计算机的发展概况24
1.4.1计算机的发展24
1.4.2微型计算机的发展27
1.4.3计算机的应用范围28
习题130
第2章微处理器34
2.1微处理器概述34
2.1.1CPU的基本概念34
2.1.28086 CPU的编程结构37
2.1.3通用CPU的组成42
2.1.4微型计算机的存储器组织44
2.1.58086的工作模式和引脚功能48
2.1.68086 CPU的总线时序55
2.1.78086的总线控制权60[1]〖2〗深入浅出微机原理与接口技术(第2版)[1]目录〖2〗2.1.8指令系统62
2.1.9CPU的架构和封装方式63
2.1.10CPU主流技术术语浅析66
2.2典型的CPU及其发展历程72
2.2.1Intel CPU73
2.2.2Intel CPU型号的标注法76
2.2.3AMD CPU76
2.2.4AMD CPU型号的编号78
2.2.5从CPU表面看其性能指标80
2.2.6龙芯CPU81
2.3CPU的潮流与未来82
2.3.1多核的发展82
2.3.2APU83
2.3.3向量机84
习题284
第3章微型计算机指令系统88
3.1汇编语言源程序的3种语句88
3.2指令语句的操作数的表现形式寻址方式92
3.2.1与数据有关的寻址方式93
3.2.2程序转移地址的寻址方式之一JMP无条件跳转指令98
3.380868088处理器的指令系统101
3.3.1数据传送指令101
3.3.2算术运算指令105
3.3.3逻辑运算指令110
3.3.4移位指令111
3.3.5串操作指令113
3.3.6控制转移指令115
3.3.7循环指令117
3.3.8过程调用和返回指令117
3.3.9中断指令118
3.3.10处理机控制指令119
3.3.1132位新增指令简介119
3.480868088微机系统的伪指令120
3.4.1段定义伪指令120
3.4.2ASSUME伪指令121
3.4.3数据定义伪指令123
3.4.4符号定义伪指令123
3.4.5用伪指令LABEL定义变量和标号125
3.4.6PTR操作符、LABEL伪指令与THIS操作符的区别126
3.4.7置汇编地址计数器伪指令127
3.4.8地址定位伪操作128
3.4.9基数控制伪指令130
3.4.10子程序定义伪指令PROC和ENDP130
习题3131
第4章汇编语言及汇编程序设计139
4.1汇编语言概述139
4.1.1从机器语言到汇编语言139
4.1.2汇编环境介绍140
4.1.3汇编语言上机过程140
4.2系统功能调用141
4.2.1系统功能调用概述141
4.2.2基本系统功能INT 21H调用142
4.3汇编语言源程序的设计的基本步骤146
4.3.1源程序的基本框架146
4.3.2汇编语言源程序设计的基本步骤148
4.4顺序结构的汇编语言源程序的编写149
4.5分支结构的汇编语言源程序的编写153
4.5.1条件转移指令153
4.5.2汇编语言分支结构程序的编写155
4.6循环结构的汇编语言源程序的编写162
4.6.1循环控制指令162
4.6.2程序的循环结构163
4.6.3控制程序循环的方法164
4.6.4多重循环173
4.7汇编与CC接口175
4.7.1高级语言与汇编语言的接口需要解决的问题176
4.7.2C语言与汇编语言的接口176
习题4176
第5章总线和主板179
5.1总线基本概念179
5.1.1总线和微机系统的总线结构179
5.1.2总线分类和性能指标182
5.2总线工作原理185
5.2.1总线的控制与总线仲裁185
5.2.2数据传送188
5.3微机的系统总线标准190
5.3.1系统总线标准190
5.3.2芯片级总线191
5.3.3常见系统总线标准193
5.3.4外部总线204
5.4主板结构规范215
5.4.1主板结构规范215
5.4.2主板上的芯片217
5.4.3主板的插槽218
5.4.4主板对外接口部分219
5.5主板控制芯片组220
5.5.1概念及结构220
5.5.2流行芯片组221
5.5.3BIOS与CMOS227
5.6主板发展趋势228
5.6.1主板总线速度的提升228
5.6.2主板超频稳定性能的成熟230
5.6.3主板安全稳定性能的增强230
5.6.4主板方便性能的提高231
5.6.5主板能源功能的改进231
5.6.6整合技术日新月异232
习题5233
第6章存储器237
6.1存储器的概念、分类和指标237
6.1.1计算机存储系统简介237
6.1.2半导体存储器的分类238
6.1.3存储器的工作时序240
6.1.4选择存储器件的指标242
6.2内存储器244
6.2.1随机读写存储器(RAM)基本结构244
6.2.2静态RAM(SRAM)245
6.2.3动态RAM(DRAM)249
6.2.4RAM技术的发展及芯片类型251
6.3高速缓冲存储器253
6.3.1高速缓冲存储器Cache的由来254
6.3.2Cache的命中率255
6.3.3Cache与主存的地址映射255
6.4只读存储器(ROM)259
6.4.1掩膜式ROM(Mask ROM)259
6.4.2可编程的ROM(Programmable ROM,PROM)260
6.4.3可擦除可编程的ROM(EPROM)261
6.4.4电可擦可编程的ROM(EEPROM)263
6.4.5闪速存储器(Flash Memory)263
6.5通用微机中的存储器、扩展存储器及其管理269
6.5.1内存条的构成和空间的分配269
6.5.2ROM子系统272
6.5.3RAM子系统275
6.5.4双通道内存技术276
6.5.5存储器的管理277
6.6CPU与存储器的连接280
6.6.1CPU与存储器连接时应注意的问题280
6.6.2存储器片选信号的产生方式和译码电路281
6.6.3CPU与存储器的连接282
6.7外存储器288
6.7.1早期的外存储器设备发展概况288
6.7.2磁盘存储器289
6.7.3光盘存储器292
6.7.4纳米存储器296
6.7.5电子硬盘297
6.7.6移动存储器297
6.7.7网络存储与云存储298
习题6299
第7章中断系统303
7.1中断系统基本概念303
7.1.1中断的概念和作用303
7.1.2中断的分类304
7.2中断的全过程306
7.2.1中断请求与中断屏蔽307
7.2.2中断源识别与中断优先级的管理308
7.2.3中断服务的过程312
7.3中断向量及其操作314
7.3.1中断向量的设置314
7.3.2中断向量的修改315
7.3.3中断类型号的获取316
7.4Intel 8259A可编程中断控制器316
7.4.18259A的框图和引脚317
7.4.28259A中断响应过程319
7.4.38259A中断触发方式321
7.4.48259A工作方式322
7.4.5屏蔽中断源的方式323
7.4.6结束中断处理的方式324
7.4.7中断级联方式325
7.4.88259A初始化命令字和操作方式命令字326
7.4.98259A在以80x86为CPU的计算机中的应用333
习题7336
第8章微型计算机接口技术概述和直接存储器访问339
8.1微机接口的基础知识339
8.1.1微机接口概念、类型及功能339
8.1.2输入输出接口的编址方式341
8.2CPU和外部设备的数据传输方式及汇编语言指令格式344
8.2.1程序控制方式344
8.2.2中断传送方式348
8.2.3直接存储器访问(DMA)方式349
8.2.4IO处理机方式349
8.3输入输出接口逻辑电路的地址译码349
8.3.1IO端口地址译码349
8.3.2Intel CPU的输入输出时序353
8.3.3IO保护354
8.4DMA传送和DMA控制器8237356
8.4.1概述DMA主要用于需要大批量高速度数据传输的场合356
8.4.2可编程DMA控制器Intel 8237358
8.5硬盘接口和常见微机外部接口372
8.5.1常见微机外部实用接口372
8.5.2硬盘接口376
习题8380
第9章并行通信及接口芯片384
9.1并行通信的概念与简单并行接口384
9.1.1并行通信的概念384
9.1.2简单并行接口384
9.1.3简单并行口芯片8212385
9.2可编程并行接口芯片8255A388
9.2.18255A的结构框图388
9.2.28255A的控制字389
9.3并行接口芯片8255A应用举例396
9.3.1PC系统板上的8255A396
9.3.2PCXT中的并行打印机接口电路399
9.3.3PCXT中的微机与键盘的接口404
9.3.48255A与32位CPU连接408
习题9410
第10章串行数据接口413
10.1串行通信概述413
10.1.1串行通信的概念413
10.1.2串行通信的连接方式415
10.1.3同步通信和异步通信416
10.2串行接口标准RS232C和可编程串行接口芯片8251A419
10.2.1串行接口标准RS232C419
10.2.2一般串行通信接口常见的几种连接方式424
10.3串行接口芯片426
10.3.1串行接口芯片UART和USART426
10.3.2可编程串行接口芯片8251A426
习题10438
第11章8253可编程定时计数器440
11.1概述440
11.1.18253的结构框图440
11.1.28253的引脚441
11.28253的编程控制字和工作方式443
11.2.18253的控制字443
11.2.28253的工作方式444
11.2.38253的读操作449
11.2.4PCXT中8253的应用449
习题11450
第12章数模、模数转换器及其与CPU的接口452
12.1数模转换器及其与CPU的接口452
12.1.1DA转换器(DAC)的基本原理及其转换特性452
12.1.2DA芯片的性能参数和术语453
12.1.3DAC和微处理器接口中需要考虑的问题454
12.1.4DA芯片简介455
12.1.5DAC与微处理器接口实例455
12.2模数转换器及其与CPU的接口458
12.2.1采样、量化和编码459
12.2.2AD芯片460
习题12463
附录A虚地址保护方式详述466
附录BASCII字符码表500
附录CPentium指令系统一览表501
附录DDOS功能调用508
参考文献516
|
內容試閱:
|
丛书序为什么开发深入浅出系列丛书?目的是从读者角度写书,开发出高质量的、适合阅读的图书。不积跬步,无以至千里;不积小流,无以成江海。知识的学习是一个逐渐积累的过程,只有坚持系统地学习知识,深入浅出,坚持不懈,持之以恒,才能把一类技术学习好。坚持的动力源于所学内容的趣味性和讲法的新颖性。计算机课程的学习也有一条隐含的主线,那就是提出问题分析问题建立数学模型建立计算模型通过各种平台和工具得到最终正确的结果,培养计算机专业学生的核心能力是面向问题求解的能力。由于目前大学计算机本科生培养计划的特点,以及受教学计划和课程设置的原因,计算机科学与技术专业的本科生很难精通掌握一门程序设计语言或者相关课程。各门课程设置比较孤立,培养的学生综合运用各方面的知识能力方面有欠缺。传统的教学模式以传授知识为主要目的,能力培养没有得到充分的重视。很多教材受教学模式的影响,在编写过程中,偏重概念讲解比较多,而忽略了能力培养。为了突出内容的案例性、解惑性、可读性、自学性,本套书努力在以下方面做好工作。1. 案例性所举案例突出与本课程的关系,并且能恰当反映当前知识点。例如,在计算机专业中,很多高校都开设了高等数学、线性代数、概率论,不言而喻,这些课程对于计算机专业的学生来说是非常重要的,但就目前对不少高校而言,这些课程都是由数学系的老师讲授,教材也是由数学系的老师编写,由于学科背景不同和看待问题的角度不同,在这些教材中基本都是纯数学方面的案例,作为计算机系的学生来说,学习这样的教材缺少源动力并且比较乏味,究其原因,很多学生不清楚这些课程与计算机专业的关系是什么。基于此,在编写这方面的教材时,可以把计算机上的案例加入其中,例如,可以把计算机图形学中的三维空间物体图像在屏幕上的伸缩变换、平移变换和旋转变换在矩阵运算中进行举例;可以把双机热备份的案例融入马尔科夫链的讲解;把密码学的案例融入大数分解中等。2. 解惑性很多教材中的知识讲解注重定义的介绍,而忽略因果性、解释性介绍,往往造成知其然而不知其所以然。下面列举两个例子。(1) 读者可能对OSI参考模型与TCPIP参考模型的概念产生混淆,因为两种模型之间有很多相似之处。其实,OSI参考模型是在其协议开发之前设计出来的,也就是说,它不是针对某个协议族设计的,因而更具有通用性。而TCPIP模型是在TCPIP协议栈出现后出现的,也就是说,TCPIP模型是针对TCPIP协议栈的,并且与TCPIP协议栈非常吻合。但是必须注意,TCPIP模型描述其他协议栈并不合适,因为它具有很强的针对性。说到这里读者可能更迷惑了,既然OSI参考模型没有在数据通信中占有主导地位,那为什么还花费这么大的篇幅来描述它呢?其实,虽然OSI参考模型在协议实现方面存在很多不足,但是,OSI参考模型在计算机网络的发展过程中起到了非常重要的作用,并且,它对未来计算机网络的标准化、规范化的发展有很重要的指导意义。[1]〖2〗深入浅出微机原理与接口技术(第2版)[1]丛书序〖2〗(2) 再例如,在介绍原码、反码和补码时,往往只给出其定义和举例表示,而对最后为什么在计算机中采取补码表示数值?浮点数在计算机中是如何表示的?字节类型、短整型、整型、长整型、浮点数的范围是如何确定的?下面我们来回答这些问题(以8位数为例),原码不能直接运算,并且0的原码有 0和-0两种形式,即00000000和10000000,这样肯定是不行的,如果根据原码计算设计相应的门电路,由于要判断符号位,设计的复杂度会大大增加,不合算;为了解决原码不能直接运算的缺点,人们提出了反码的概念,但是0的反码还是有 0和-0两种形式,即00000000和11111111,这样是不行的,因为计算机在计算过程中,不能判断遇到0是 0还是-0;而补码解决了0表示的唯一性问题,即不会存在 0和-0,因为 0是00000000,它的补码是00000000,-0是10000000,它的反码是11111111,再加1就得到其补码是100000000,舍去溢出量就是00000000。知道了计算机中数用补码表示和0的唯一性问题后,就可以确定数据类型表示的取值范围了,仍以字节类型为例,一个字节共8位,有00000000~11111111共256种结果,由于1位表示符号位,7位表示数据位,正数的补码好说,其范围从00000000~011111111,即0~127;负数的补码为10000000~11111111,其中,11111111为-1的补码,10000001为-127的补码,那么到底10000000表示什么最合适呢?8位二进制数中,最小数的补码形式为10000000;它的数值绝对值应该是各位取反再加1,即为01111111 1=10000000=128,又因为是负数,所以是-128,即其取值范围是-128~127。3. 可读性图书的内容要深入浅出,使人爱看、易懂。一本书要做到可读性好,必须做到善用比喻,实例为王。什么是深入浅出?就是把复杂的事物简单地描述明白。把简单事情复杂化的是哲学家,而把复杂的问题简单化的是科学家。编写教材时要以科学家的眼光去编写,把难懂的定义,要通过图形或者举例进行解释,这样能达到事半功倍的效果。例如,在数据库中,第一范式、第二范式、第三范式、BC范式的概念非常抽象,很难理解,但是,如果以一个教务系统中的学生表、课程表、教师表之间的关系为例进行讲解,从而引出范式的概念,学生会比较容易接受。再例如,在生物学中,如果纯粹地讲解各个器官的功能会比较乏味,但是如果提出一个问题,如人的体温为什么是37℃?以此为引子引出各个器官的功能效果要好得多。再例如,在讲解数据结构课程时,由于定义多,表示抽象,这样达不到很好的教学效果,可以考虑在讲解数据结构及其操作时用程序给予实现,让学生看到直接的操作结果,如压栈和出栈操作,可以把PUSH和POP()操作实现,这样效果会好很多,并且会激发学生的学习兴趣。4. 自学性一本书如果适合自学学习,对其语言要求比较高。写作风格不能枯燥无味,让人看一眼就拒人千里之外,而应该是风趣、幽默,重要知识点多举实际应用的案例,说明它们在实际生活中的应用,应该有画龙点睛的说明和知识背景介绍,对其应用需要注意哪些问题等都要有提示等。一书在手,从第一页开始的起点到最后一页的终点,如何使读者能快乐地阅读下去并获得知识?这是非常重要的问题。在数学上,两点之间的最短距离是直线。但在知识的传播中,使读者感到阻力最小的书才是好书。如同自然界中没有直流的河流一样,河水在重力的作用下一定沿着阻力最小的路径向前进。知识的传播与此相同,最有效的传播方式是传播起来损耗最小,阅读起来没有阻力。欢迎联系清华大学出版社白立军老师投稿: bailj@tup.tsinghua.edu.cn。
2014年12月15日随着电子计算机科技的迅速普及和发展,微型计算机的性能已达到或超过以前的大中型机,并被广泛应用于科学计算、数据处理、办公自动化、工程控制、辅助系统、仿真,甚至日常通信等诸多领域。人类已进入到以计算机技术为主导的信息社会。计算机科技几乎每隔一段时间就有一个重大变化,最近十年更是处于加速发展阶段。这一点也为编者带来了巨大的困难。计算机科学与技术发展到今天,单纯的微机操作技能已经在社会生活中得到普及,单纯的软件编程人才已不能满足社会的需求,而软硬件结合的计算机科学技术人才供不应求。因此,微型计算机原理及接口技术为高等学校理工科众多学科类专业大学生必修的一门专业基础课。本书按照本科的教学大纲的要求和教学特点进行编写。学习本课程的目的在于让学生从理论与实际结合的基础上理解与掌握微型计算机的基本组成、工作原理、各类接口部件的功能,以及构建微机系统等方面的知识,使学生初步具有微机应用系统软硬件综合开发的能力。为了给读者奉献一本高质量的教材,我们在编写中努力坚持以下几个原则。(1) 努力追踪微机快速发展的历程,努力反映计算机科技的最新成果。读者可以从每一章中看到这一点。(2) 以应用为目的,删繁就简,突出重点、内容少而精。加强基本概念、基本分析方法基本技术手段的阐述;密切结合计算机专业实际。(3) 微型计算机原理及接口技术类的教材甚多,但鉴于计算机科技的深奥,本书为降低其难度,在语言描述上下了大工夫。本书努力贯彻启发式的教学原则,使逻辑线索简明、清晰、合理;物理概念清楚,深入浅出;语言生动流畅,通俗易懂。并注重典型电路和芯片的介绍。(4) 注重实践技能的培养和分析问题解决问题能力的培养。(5) 图表精选,说明性强。本书共分为13章,主要内容如下。第1章介绍计算机的分类及应用、微型计算机的基本组成、微型计算机中数制转换、数和字符的编码等内容。第2章介绍CPU。为了说明CPU的复杂结构和工作原理,我们从最简单、最容易说明问题的典型芯片80868088微处理器说起,叙述了CPU相关的基础知识,讨论了CPU的主流技术术语(诸如超标量流水线技术、指令分支预测技术、Pentium Pro的乱序执行、RISC、SIMD以及MMX、SSE(SSE2)、64位新体系等新理论和[1]〖2〗深入浅出微机原理与接口技术(第2版)[1]前言〖2〗新技术等),回顾了CPU发展的辉煌历程以及CPU发展的潮流和未来。第3章讨论微型计算机的寻址方式和指令系统。第4章讨论了汇编语言初步。第5章讨论了总线与主板,介绍了总线与主板结构的新变化和新技术。第6章讨论了存储器及管理模式,介绍了USB 2.0和移动存储等等新技术。第7章讨论了中断技术,介绍了PCI中断等新技术。第8章概述了微型计算机接口技术并讨论了直接存储器访问技术,并从实践的角度介绍了常用微机外部实用接口,讨论了USB接口、IEEE 1394串行接口、SCSI接口、SATA接口和PCI接口等等新技术。第9章讨论了并行通信及接口芯片。第10章讨论了串行数据接口。第11章讨论了8253可编程定时计数器。第12章讨论了数模、模数转换器及其与CPU的接口。微型计算机原理及接口技术是一门实践性很强的课程。为了加强对学习的辅导和实践能力的培养,本书配有《深入浅出微机原理与接口技术(第2版)实验与解题指导》一书。本书适合高等学校理工科电子类和电气自动化类以及信息类各专业,特别是涉及单片机、嵌入式等芯片级计算机应用各类专业大学生本科的学生使用,也可供相关专业的应用型本科生选用,还可供广大工程技术人员学习参考。本书为任课教师配有电子教案,此教案用PowerPoint制作。本书由何超教授主编,钟建、龙君芳、徐昊、孔令美、钟桂凤、张艳红、何翔等参编。限于编者的水平,书中错误和不妥之处在所难免,敬请广大读者和专家批评指正。
编者2016年10月
第5章总线和主板同所有的电子设备一样,在电路板正面,放置棱角分明的各个部件: CPU、各类芯片、电阻、电容等。电路板反面,是错落有致的电路连线的印刷电路。CPU工作的时候还需要同外围硬件设备(如键盘、鼠标、外存等)进行数据交换。假如每种设备都分别引入一组线路同CPU相连,那么系统线路显然是杂乱无章的,为了避免这种情况,将系统线路条分缕析,构成几组通用线路排线,在主板上设置多个插槽或接口,不同的外部设备通过各自的排线端的插头插入各自插槽或接口。于是,主板和总线技术就应运而生,总线(见51节)成为计算机的一个子系统。主板的英文名称是Motherboard,也可以译做母板。当主机加电时,电流会在瞬间通过主板上CPU、南北桥等各类芯片、内存和各类总线插槽、硬盘IDE接口以及主板边沿的串口、并口、PS2接口等。随后,主板会根据BIOS基本输入输出体系来辨认硬件,并进入操作系统,支持计算机体系工作的功能。5.1总线基本概念〖*89〗5.1.1总线和微机系统的总线结构〖*34〗1. 总线从物理来看,总线(BUS)是在计算机系统各部件之间传输信息地址、数据和控制信号的公共通用线路。它由一组导线和相关的控制、驱动电路组成。在微机系统中除了采用总线技术外,还采用了标准接口技术。接口一般是指主板和某类外设之间连接的适配电路,其功能是解决主板和外设之间在电压等级、信号形式和速度上的匹配问题。有关接口的内容后面有专门章节讲述。由于目前的一些新型接口标准,如USB、IEEE 1394等,允许同时连接多种不同的外设,因此也把它们称为外设总线。此外,连接显示系统的新型接口AGP,由于习惯上的原因(原来的显卡要插入ISA或者PCI总线插槽中),也被称为AGP总线,但实际上它应该是一种接口标准。之所以在此提出这个问题,是想说明在某些情形下,总线和接口其实是没什么分别的,关键在于你从什么角度看问题。2. 微机系统的总线结构在CPU、内存与外设确定的情况下,总线上数据传输速度是制约计算机整体性能的关键。因此,总线结构方式已经成为微机性能的重要指标之一。虽然一个系统中可以存在多种总线,它们在物理位置上、形态上、功能上各不相同,但这并不妨碍把总线视为微型计算机系统中的一个独立子系统。通过下面的讨论,可以由浅入深地理解总线的体系结构和发展历程。[1]〖2〗深入浅出微机原理与接口技术第2版[1]第5章总线和主板〖2〗1) 单总线结构单总线结构是一对多结构,如图51所示,它是将CPU、主存、IO设备都挂在一组总线上,允许IO之间、IO与主存之间直接交换信息。单总线结构简单,也便于扩充,但所有的传送都共享一组总线,不允许两个以上的部件在同一时刻向总线传输信息,因此极易形成冲突。再者,当IO设备量很大时,总线发出的控制信号从一端顺序传递到第n个设备,其传播的延迟时间就不能忽视。这两点会严重地影响系统的工作效率。在数据传输需求量和传输速度要求不太高的情况下,可以采用增加总线宽度和提高传输速率的方法来解决问题。单总线多为小型机或微型机所采用。图51单总线结构图但当总线上的设备,其数据量很大或对传输速度要求相当高的时候,如高速视频显示器、网络传输接口等,为了加快数据传输速率,解决CPU、主存与IO设备之间传输速率的不匹配问题,实现CPU与其他设备相对同步,就要采用多总线结构。2) 多总线结构多总线构成是高低速分流结构的基本思路,就是把与CPU相连的设备按传输速率分类,分为高速线路和低速线路。如图52所示的4总线结构。图524总线结构图这里设置了总线转换桥电路详见5.3.2节,引出一条高速的系统总线直接连内存,又增加了一条经总线转换桥与计算机系统紧密相连的高速系统总线,挂接了一些高速性能的外设,如高速局域网、图形工作站、多媒体和SCSI等。又从高速总线通过总线转换桥这个扩展总线接口电路引出扩展外部总线,再去连接较低速的设备如图文传真、调制解调器及串行接口等。这种结构对高速设备而言,其自身的工作可以很少依赖处理器,同时它们又比扩展总线上的低速设备更贴近处理器,这样,对于高性能设备与处理器来说,各自的效率将获得更大的提高。在这种结构中,处理器、高速总线的速度以及各自信号线的定义完全可以不同,以至各自改变其结构也不会影响高速总线的正常工作,反之亦然。3. 微机总线发展概述自计算机问世以来,总线技术就因为数据传输的需要不断地发展。20世纪60年代末,美国DEC公司在其PDP1120小型计算机上首次采用了Unibus总线。在世界上第一台微处理器4004问世4年后的1975年,一家位于美国新墨西哥镇名为MITS的小公司,由Ed Roberts用8080微处理器,设计安装了全球第一台微机(简称PC)Altair单板机系统。在其结构中,制成了全球第一条PC扩展总线,得到了IEEE的认可,被命名为IEEE 696总线标准。微机系统一开始就采用了总线这种技术构造,它可以使各种CPU模块、存储器模块、IO模块像积木那样相互组合,实现不同的性能,还便于实现系统的扩展与维护。由于CPU的处理能力迅速提升,而与其相连的外围设备通道带宽过窄且总落后于CPU的处理能力。迫使人们不断改进总线。总线已由PCXT发展经历了ISA、MCA、EISA、VESA再到PCI、AGP、IEEE 1394、USB总线等,并且还在发展、完善。不同总线拥有各自特定的应用领域。目前,AGP系统总线传输率可达533MBs,PCIX系统总线可达2.1GBs,系统总线也由133MBs到266MBs、533MBs、667MBs、1066MBs甚至更高。除此之外,又出现了EV6总线、NGIO总线、超线程总线HT(HyperThreading)和主板上的集成电路互连的超级总线HT(Hyper Transport等。它们的出现,从某种程度上代表了未来总线技术的发展趋势。图53所示的是现代微机总线结构示意图。其中Bridge是桥接控制器。Audio、Video为音频和视频处理器,Graphics为图形图像处理模块,LAN为网络接口,SCSI、ISA、IDE为各种接口设备类型,Base IO为基本输入输出。图53现代微机总线机构示意图5.1.2总线分类和性能指标〖*34〗1. 总线分类方法总线分类方法很多,并且各种定义歧义较大,本书整合概念如下,供参考。1) 按连接层次分(1) 片内总线(即芯片内部的总线)是连接CPU(或IO芯片)内部的各功能单元(如寄存器、算术逻辑部件ALU、控制部件等)之间用于传输数据的总线。这一级总线是芯片外部看不见的。(2) 芯片级总线是一块电路板上各芯片之间连接的总线,即芯片一级的互连总线。如前端总线(FSB,也称CPU总线)、HT总线(HT总线是AMD为K8平台专门设计的高速串行总线,它的发展历史可回溯到1999年,原名为LDT总线,Lightning Data Transport,意为闪电般数据传输)、QPI总线、I2C总线、SPI总线、SCI总线、DMI总线等。(3) 系统总线(又称为内总线、板级总线、部件总线)是微机中各插件板与系统板之间的总线,用于插件板一级的互连。如VESA总线、数据总线(DB)、控制总线(CB)、地址总线(AB)、IBM PC总线、ISA总线、EISA总线、PCI总线、APG总线、C(Intel Integrated Circuit Bus管理总线,C总线是由飞利浦公司于20世纪80年代为音频和视频设备开发的串行总线,主要运用于服务器、MCA总线(微通道结构总线)等。现已发展为用于楼宇自动化和家庭电器设备管理的广泛客户群系统总线。在计算机系统总线中,还有另一大类为适应工业现场环境而设计的系统总线,有STD总线、VME总线、PC104总线、Compact PCI坚实的PCI,是当今第一个采用无源总线底板结构的PCI系统,是PCI总线的电气和软件标准加欧式卡的工业组装标准,是当今最新的一种工业计算机标准、PCIE总线等。(4) 外部总线(又称为设备总线、通信总线)是微机和微机、微机和外部设备之间的总线。如RS232C总线、RS485总线、IEEE488总线、SCSI总线、IDE总线、USB总线、Fire wire串行总线(IEEE1394)、Centronics总线等。2) 按总线传送信息的类别分类可把总线分为传送地址的地址总线(Address Bus,AB)、传送数据信息的数据总线(Data Bus,DB)和传送控制信号(如读写信号、片选信号和读入中断响应信号等)和时序信号的控制总线(Control Bus,CB)。通常所说的总线都包括这3个组成部分。不少系统中,如8086 CPU,数据总线和地址总线可以在地址锁存器控制下被共享,分时复用。3) 按总线传送信息的方向分可把总线分为单向总线和双向总线。如地址总线属于单向总线,方向是从CPU或其他总线主控设备发往其他设备。数据总线属于双向总线。双向传输数据总线通常采用双向三态形式的总线。控制总线中的每一根控制线方向是单向的,但各控制线的方向有进有出。4) 按传输方式分按照数据传输的方式划分,总线可分为串行(数据顺序传输)总线和并行(数据并行传输)总线。通俗地讲,并行总线就像多车道公路,而串行总线则像单车道公路。显然,当传输数据量较大时,并行传输方式优于串行传输方式,但其成本上会有所增加。常见的串行总线有SPI、I2C、USB、IEEE 1394、RS232、CAN等,而并行总线相对来说种类要少,常见的如IEEE 1284、IEEE 488总线、ISA、PCI、 STD、PC总线等。5) 按时钟信号方式分按照时钟信号是否独立,可以分为同步总线和异步总线。同步总线的时钟信号独立于数据,也就是说要用一根单独的线来作为时钟信号线,而异步总线的时钟信号是从数据中提取出来的,通常利用数据信号的边沿来作为时钟同步信号。2. 总线的标准化和总线规范标准化的总线可以为生产厂家和使用者带来方便。每种总线标准都有详尽的规范说明,一般包括下列机、电、能、时四个方面的内容。1) 机械结构规范机械结构规范是指总线在机械方式上的一些性能,如插头与插座、连接器使用的标准,它们的几何尺寸、形状、引脚的个数以及排列的顺序,接头处的可靠接触等。2) 电气规范电气规范是指总线的每一根传输线上信号的传递方向和有效的电平范围、最大额定负载能力以及动态转换时间等。通常规定由CPU发出的信号叫输出信号,送入CPU的信号叫输入信号。总线的电平定义与TTL相符。如RS232C(串行总线接口标准),其电气特性规定低电平表示逻辑1;用高电平表示逻辑0。3) 功能结构规范功能结构规范也称逻辑规范,包括总线中每根传输线的定义(名称)、信号的描述(功能及相互作用的协议、信息流向及管理规则)等。如地址总线指示地址,数据总线传递数据,控制总线发出控制信号等。可见各条线其功能结构规范是不一样的。4) 时间规范时间规范是指总线中的每一根线在什么时间内有效。每条总线上的各种信号,互相存在着一种有效时序的关系,以及相互之间的配合等。因此,时间特性一般可用信号时序图来描述。3. 总线性能指标总线的各种性能指标决定了系统的整体性能。总线的性能指标包括如下几个部分。1) 总线宽度它是指数据总线的根数以及总线传输信息的串并行性。根数,像我们所称的8位机、16位机、32位机、64位机等都是指系统总线的宽度,用bit(位)表示。串行总线在同一根信号线上分时传输同一数据字的不同位;并行总线采用数据有多少位就用多少根线,每一根线传输数据的一位,同时传输一个数据字的不同位。数据总线宽度W,它表示构成计算机系统的计算能力和计算规模;地址总线位数,它决定了系统的寻址能力,表明构成计算机系统的规模;控制总线信号,它反映了总线的控制技巧,因而表示了总线的设计思想及其特色。2) 工作频率f总线的工作频率也称为总线的时钟频率f,以MHz为单位。它是指用于协调总线上的各种操作的时钟信号的频率。工作频率f越高,总线工作速度越快。3) 总线频带宽Q总线频带宽Q又称标准传输率。总线的频带宽指的是总线本身所能达到的最大传输率,即单位时间内总线上可传送的数据量,通常用MBs表示或bits(每秒多少位)表示。与总线频带宽Q密切相关的两个概念是总线宽度W和总线的工作频率f。在工作频率一定的条件下,总线的频带宽与总线宽度成正比。总线频带宽的计算公式如下: Q=fWN式中,f总线工作频率(MHz);W总线宽度(Byte);N传送一次数据所需时钟周期T的个数。例如,在EISA总线上进行8位存储器存取时,一个存储器存取周期最快为3个T,因而当f为8.33MHz时,Q=8.3313,即其总线传输率为2.78MBs。但在EISA总线上进行32位突发(Burst)存取方式时,每一个存取周期为1个T,因而当T为833MHz时,Q=8.3341,其总线传输率为33MBs(考虑了第一次存取周期要长),这也是EISA总线的最大传输率。4) 时钟同步异步总线上的数据与时钟同步工作的总线称同步总线,与时钟不同步工作的总线称为异步总线。一般有同步协议、异步协议、半同步协议和分离式协议。5) 总线的多路分时复用通常地址总线与数据总线在物理上是分开的两种总线。为了提高总线的利用率,优化设计,特将地址总线和数据总线共用一条物理线路,只是某一时刻该总线传输地址信号,另一时刻传输数据信号或命令信号,这叫总线的多路分时复用。6) 信号线数即地址总线、数据总线和控制总线3种总线数的总和。7) 总线控制方式包括并发工作方式、自动配置方式、仲裁方式、逻辑方式、计数方式等。8) 其他指标如负载能力、电源电压等级等。5.2总线工作原理〖*89〗5.2.1总线的控制与总线仲裁〖*34〗1. 总线的控制可以控制总线并启动数据传送的任何设备称为总线主控设备或主设备,响应总线主控器发出的总线命令的任何设备称为从设备。系统中可以有多个主控设备,但任一时刻一组总线上只能有一个设备经申请同意后,工作在主控方式。总线的控制贯穿在从总线主设备申请使用总线到数据传送完毕的整个过程,要经过几个步骤: 总线请求、总线仲裁、寻址、传送数据、检错和出错处理。总线控制器主要包括总线仲裁逻辑电路、驱动器和中断逻辑电路等。2. 总线仲裁总线是多个部件所共享的,使用分时复用技术,即在总线上某一时刻只能有一个总线主控设备控制总线,为了正确地实现多个部件之间的通信,避免各部件同时发送信息到总线的冲突,必须要有一个总线控制器。当总线上的一个部件要与另一个部件进行通信时,首先应该向总线控制器发出请求信号。若多个主设备同时要使用总线时,就由总线控制器判优,按一定的优先等级顺序,确定哪个主设备能使用总线。只有获得总线使用权的主设备才能开始传送数据。总线判优控制可分集中仲裁式和分布仲裁式两种,前者将控制逻辑电路集中在一处(如在CPU中),后者将控制逻辑电路分散在与总线连接的各个部件或设备上。1 集中仲裁式常见的集中仲裁有3种优先权仲裁方式: 链式查询、计数器定时查询和独立请求方式。(1) 链式查询方式。为减少总线授权线数量,采用了图54所示的菊花链查询方式,其中已标出地址线、数据线。其他3条线是由总线控制部件发出的控制线: BS线若为0,表示总线忙,正被某外设使用;总线请求信号线BG若为1,表示该外设向总线提出使用请求;总线允许信号线BG若为1,表示总线授权,允许该外设使用。链式查询方式的主要特点是,总线授权信号BG串行地从一个IO接口传送到下一个IO接口,若某接口i提出总线请求BR,便不再往下查询,尽管后面其他接口也有总线请求。这意味着只有该IO接口获得总线控制权,在图54中用粗线显示。图54总线总裁的链式查询逻辑电路示意图显然,在查询链中离总线控制器最近的设备具有最高优先级,离总线控制器越远,优先级越低。因此,链式查询是通过接口的优先级排队电路来实现的。链式查询方式的优点是,只用很少几根线就能按一定优先次序实现总线仲裁,并且这种链式结构很容易扩充设备。 链式查询方式的缺点是对询问链的电路故障很敏感,如果第i个设备的接口中有关联的电路有故障,那么第i个以后的设备都不能进行工作。另外查询链的优先级是固定的,如果优先级高的设备出现频繁的请求时,那么优先级较低的设备可能长期不能使用总线。(2) 计数器定时查询方式。原理如图55所示。中央仲裁器接到总线上某设备通过BR线发出的请求信号以后,在BS线为0的情况下让计数器开始计数,计数值包含所有设备的地址。计数值通过一组地址线发向各设备。每个设备接口都有一个设备地址判别电路,当地址线上的计数值与请求总线的设备地址相一致时,该设备置BS线为1,获得了总线使用权,此时中止计数查询,在图55中用粗线框显示。 图55总线总裁的计数器定时查询逻辑电路示意图每次计数可以从0开始,也可以从中止点开始。如果从0开始,各设备的优先次序与链式查询法相同,优先级的顺序是固定的。如果从中止点开始,则每个设备使用总线的优先级相等。计数器的初值也可用程序来设置,这就可以方便地改变优先次序,显然这种灵活性是以增加线数为代价的。(3) 独立请求方式原理如图56所示。在独立请求方式中,每一个共享总线的设备均有一对总线请求线BRi和总线授权线BGi。当设备要求使用总线时,便发出该设备的请求信号。中央仲裁器中有一个排队电路,它根据一定的优先次序决定首先响应哪个设备的请求,给该设备授权信号BGi。图56总线总裁的独立请求逻辑电路示意图独立请求方式的优点是响应时间快,即确定优先响应的设备所花费的时间少,用不着一个设备接一个设备地查询。其次,对优先次序的控制相当灵活。它可以预先固定,例如 BR9优先级最高, BR1次之BRn最低;也可以通过程序来改变优先次序;还可以用屏蔽(禁止)某个请求的办法,不响应来自无效设备的请求。因此当代总线标准普遍采用独立请求方式。对于单处理器系统总线而言,中央仲裁器又称为总线控制器,它是CPU的一部分。按照目前的总线标准,中央仲裁器一般是一个单独的功能模块。2) 分布式仲裁分布式仲裁不需要中央仲裁器,每个潜在的主方功能模块都有自己的仲裁信号和仲裁器。当它们有总线请求时,把它们唯一的仲裁号发送到共享的仲裁总线上,每个仲裁器将仲裁总线上得到的号与自己的号进行比较。如果仲裁总线上的号比自己的大,则它的总线请求不被响应,并撤销它的仲裁号。最后,获胜者的仲裁号保留在仲裁总线上。显然,分布式仲裁是以优先级仲裁策略为基础。3. 总线驱动和其他控制总线的驱动能力是有限的,换句话说,总线的负载能力是有限的,在计算机系统中通常采用三态输出电路或集电极开路输出电路来驱动总线,使其带更多负载。总线驱动除考虑信号线外,电源的驱动能力有时也是考虑的重要方面,特别是现在的一些外设总线,设备的电源完全从总线获得,更应该考虑这个问题。总线应具有中断处理机制,包括中断请求线、中断认可线和中断判优逻辑,能正确处理总线设备发出的中断请求。总线还具有系统时钟、复位、各种协议等其他控制内容。5.2.2数据传送数据在总线上传送时,送出数据的部件叫源部件,接收数据的部件叫目的部件。要确保在源部件和目的部件之间数据传送可靠,总线上的数据传送必须由定时信号控制,定时信号使源部件和目的部件之间同步,实现两部件间的协调和配合。另外,在数据传输中还有传输方式、传输方向等概念。1. 总线数据传输方式分为正常传输方式和突发传输方式(Burst Mode)两种。正常传输方式是指在一个传输周期内,一般是先给出地址,然后给出数据。在下面的传输周期里,不断重复这种先送地址、后送数据的方式进行传输。突发方式是指在传输连续大批量地址的数据时,除了第一个周期先送首地址、后给出数据外,以后的传输周期内,不需要再送地址(地址自动加1)而直接送数据,从而达到快速传送数据的目的。2. 总线传输方向分为单向和双向传输,一般地址总线和控制总线为单一方向传输,而数据总线一般为双向传输。3. 定时信号的实现方式定时信号的实现方式有3种: 同步方式、异步方式和半同步方式。1) 同步方式通信双方由统一时钟控制数据的传送,这个公共时钟通常由总线控制部件发出,送到总线上的所有部件;也可以由每个部件的时序发生器发出,但必须由总线控制部件发出的时钟信号进行同步。同步方式的优点是规定明确、统一,模块间的配合简单一致。缺点是对部件速度的一致性要求较高,缺乏灵活性。同步方式适合于总线长度较短、各部件存取时间比较一致的场合,可以工作在较高的时钟频率下。
|
|