还剩58页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
《微型计算机原理》课程介绍欢迎各位同学参加《微型计算机原理》课程的学习本课程是计算机科学与技术专业的核心课程,旨在帮助大家掌握微型计算机的基本工作原理、系统结构和设计方法我们将深入学习微处理器的工作机制、指令系统、存储器结构、总线系统以及输入输出接口等关键知识点,通过理论学习和实践操作相结合的方式,让大家真正理解计算机底层的运作机制希望通过本课程的学习,能够为大家后续深入学习计算机专业课程打下坚实的基础,培养大家的系统思维和硬件设计能力课程目标和学习要求掌握基本概念熟悉关键技术理解微型计算机的基本架构、工作原理及各个功能部件的作深入学习处理器结构、存储器组织、指令系统、中断机制、用,建立系统化的微机知识体系总线系统和接口技术等微机关键技术培养实践能力提升创新思维通过实验和项目设计,培养汇编语言编程能力和微机系统设了解微机技术的发展动态,培养创新思维和终身学习能力,计能力,提高解决实际工程问题的能力为未来深入研究计算机技术奠定基础第一章微型计算机概述概念定义发展历程基本结构微型计算机是以微处理器为核心,配以从早期的位微机到现代的多核处理器,微型计算机采用冯诺依曼结构,由中8·存储器、输入输出接口等部件构成的完微型计算机经历了显著的技术进步每央处理器、存储器、输入输出设备和/整计算机系统它具有体积小、功耗低、一代技术的革新都带来了性能、功能和总线系统组成,各部件协同工作,完成性价比高等特点,是当今最普及的计算应用范围的扩展信息处理任务机类型微型计算机的发展历史1971年1977年1981年1990年至今英特尔推出世界第一个商用微苹果、和推出个人电脑,采用从奔腾处理器到多核,从II CommodorePET IBM PC CPU处理器,开启了微型计算等早期个人计算机问世,英特尔处理器和微软台式机到笔记本、平板和智能4004TRS-808088DOS机时代这是一个位处理器,标志着微型计算机进入家庭和操作系统,奠定了现代的标手机,微型计算机不断朝着高4PC包含个晶体管,时钟频率个人使用阶段准架构性能、低功耗、小型化和移动2300为化方向发展740kHz微型计算机的特点和应用主要特点典型应用领域体积小、重量轻、功耗低办公自动化••性价比高、适用性广工业控制与自动化••可靠性好、易于维护科学计算与数据处理••模块化设计、扩展性强网络通信••人机交互友好教育与娱乐••智能家居•嵌入式系统•微型计算机凭借其强大的计算能力和灵活的架构,已经渗透到社会生活的各个方面,成为现代信息社会的基础设施随着物联网和人工智能技术的发展,微型计算机的应用前景更加广阔微型计算机系统的基本组成存储器中央处理器CPU用于存储程序和数据,包括主存和只读RAM系统的核心部件,负责执行指令、处理数据存储器,形成存储器层次结构ROM和控制系统工作包括控制单元、算术逻辑单元和寄存器组输入设备将信息输入计算机,如键盘、鼠标、扫描仪、传感器等总线系统输出设备连接各个部件的数据通路,包括数据总线、地址总线和控制总线将计算结果输出,如显示器、打印机、音箱等冯诺依曼结构·结构特点冯诺依曼于年提出的计算机基本结构,特点是存储程序、程序控制,·1945程序和数据都存储在同一个存储器中,按地址访问五大部件包括运算器、控制器、存储器、输入设备和输出设备其中运算器和控制器共同构成中央处理器工作流程计算机工作时,控制器从存储器取出指令,解码后发出控制信号,控制运算器进行数据处理,结果再存回存储器或输出冯氏瓶颈程序和数据共享同一存储器和总线,导致和存储器之间的数CPU据传输成为系统性能的瓶颈,现代计算机引入缓存技术等来缓解这一问题第二章数制与编码数制概念数制转换编码表示数制是表示数值的系统,规定数字符号及其不同进制之间的数值转换技术,包括二进制使用特定的编码规则表示数据,如码表示BCD组合规则计算机中主要使用二进制,同时与十进制、八进制、十六进制之间的相互转十进制数,码表示字符信息,这些编码ASCII也涉及八进制、十六进制等换方法是数据处理的基础掌握数制与编码是学习计算机原理的基础,它是理解计算机如何表示和处理信息的关键本章将详细介绍各种数制特点、转换方法以及常用编码的规则和应用二进制、八进制、十六进制数制基数数字符号在计算机中的意义二进制硬件实现简单,与电子元件的开关20,1/两种状态对应八进制每位二进制可表示为位八进制,便80,1,2,3,4,5,6,731于记忆和书写十六进制每位二进制可表示为位十六进制,160-9,A,B,C,D,E,F41更简洁在计算机系统中,二进制是最基本的数据表示形式,直接对应电路的开关状态而八进制和十六进制则主要用于简化二进制的表示和阅读,使复杂的二进制序列能够以更简洁的形式呈现和处理数制间的转换十进制转二进制整数部分除取余,逆序排列2小数部分乘取整,顺序排列2二进制转十进制按权展开法每位数字乘以对应位权值,再求和2^n例如
101.1₂=1×2²+0×2¹+1×2⁰+1×2⁻¹=
5.5二进制与八/十六进制转换二进制转八进制位一组3二进制转十六进制位一组4反向转换则是将每位八十六进制数展开为对应位数的二进制/掌握数制转换技术对于理解计算机数据表示和进行底层程序设计至关重要在实际应用中,程序员经常需要在不同进制之间进行转换,以便更有效地设计和调试程序码和码BCD ASCIIBCD码二进制编码十进制ASCII码美国信息交换标准代码用位二进制表示一个十进制数字,共有种组合,其中种用位二进制表示一个字符,包括英文字母、数字、标点符号和控40-91667不用制字符,共个字符1010-1111128常见类型分类码最常用的码,权值分别为、、、控制字符如回车、换行等•8421BCD8421•0-31余码码加可打印字符如字母、数字、符号等•384213•32-127码权值分别为、、、•24212421扩展使用位二进制,可表示个字符ASCII8256优点便于十进制与二进制间转换,适合用于人机接口应用键盘输入、显示输出、数据通信缺点存储效率低,算术运算复杂第三章微处理器结构结构与功能微处理器的内部结构和工作原理指令执行指令周期、机器周期与指令执行过程寄存器组织内部寄存器分类与功能地址生成分段机制与物理地址的计算本章将以微处理器为例,深入讲解微处理器的内部结构和工作原理这种经典的位处理器虽然已不再是最先进的技术,但其基本Intel8086/808816概念和架构设计思想仍然体现在现代处理器中,是理解当代计算机系统的重要基础微处理器概述8086/8088基本特性技术创新发布时间于年,指令预取队列提高执行效率•808619788088•于年1979分段存储管理简化大型程序设•位宽为位,为位计•80861680888外部数据总线多种寻址模式提高编程灵活性•时钟频率•
4.77MHz-10MHz晶体管数量约个丰富的指令系统支持多种数据•29,000•操作地址空间位地址总线•1MB20历史意义奠定了架构的基础,成为的核心处理器,开创了个人电脑时代其架x86IBMPC构特点和指令集影响了之后数十年的处理器设计,至今仍在现代和处理Intel AMD器中保持兼容性内部结构8086执行单元EU总线接口单元BIU负责指令的解码和执行,包含负责与外部总线的通信,包含通用寄存器组数据存储和处理指令队列预取指令,提高执行效率••段寄存器组存储段地址段寄存器与共享段寄存器数据••EU指令指针指向下一条指令地址加法器生成物理地址••标志寄存器反映处理器状态总线控制逻辑管理总线传输••算术逻辑单元执行算术和逻辑运算总线通信接口与系统总线连接•ALU•控制电路解释指令和产生控制信号•采用流水线结构,和可以并行工作当正在执行当前指令时,已经开始预取下一条指令,提高了处理器的整体性能这种8086BIU EUEU BIU设计思想是现代处理器流水线技术的早期实现寄存器组织通用寄存器组包括四个位数据寄存器,可分别访问高位和16AX,BX,CX,DX8AH,BH,CH,DH低位每个寄存器有其推荐用途,如为累加器,为基址寄存8AL,BL,CL,DL AXBX器等指针和变址寄存器包括栈指针、基址指针、源变址和目标变址四个位寄存器,主要SP BPSI DI16用于寻址和字符串操作段寄存器包括代码段、数据段、栈段和附加段四个位寄存器,用于确定内CS DSSS ES16存中的段基址状态控制寄存器指令指针位,指向下一条要执行的指令地址;标志寄存器包含个IP16FLAGS9状态标志位,反映处理器的状态和运算结果存储器分段分段概念采用分段存储管理模式,将的物理内存空间划分为多个的段,通过段地址和偏移地址来访问内存80861MB64KB地址结构逻辑地址由段地址位和偏移地址位组成,物理地址计算方式为物理地址段地址偏移地1616=×16+址分段优势使用位寄存器可以寻址内存空间;简化了程序的重定位;便于程序、数据和堆栈的161MB分离管理;提高了存储空间的利用效率段重叠不同段之间可以重叠,同一物理地址可以有多个不同的逻辑地址表示,这提供了灵活性但也带来了管理复杂性引脚功能8086时钟和控制引脚处理器控制引脚总线引脚时钟输入、最小最大模地址数据CLKMN/MX/AD0-AD15/复位输入、式、总线复用引脚、RESETHOLD/HLDAA16-等待状态、保持应答、高位地址、READY/A19测试等,用于中断请求高字节使能等,TESTINTR/INTA/BHE系统控制和同步应答等,用于系统交用于地址和数据传输互总线控制引脚读信号、写信RDWR号、存储器M/IO选择、数/I/ODT/R据发送接收、/数据使能等,用DEN于总线操作控制的引脚功能反映了其内部结构和外部接口设计通过这些引脚,能够与存储器、设备和80868086I/O其他系统组件进行通信,构成完整的微型计算机系统工作模式8086最小模式MN/MX=1最大模式MN/MX=0适用于单处理器系统,直接产生所有控制信号适用于多处理器系统,需要外部总线控制器来产生控制信号CPU8288特点特点系统结构简单•系统结构复杂硬件成本低••支持多处理器配置控制信号直接由生成••CPU控制信号由生成不支持多处理器•8288•支持更复杂的系统功能•应用小型嵌入式系统、单任务计算机应用多处理器系统、复杂控制系统工作模式的选择取决于系统设计的需求和复杂度最小模式简化了硬件设计,适合简单系统;最大模式则增强了系统功能,支持更复杂的配置和应用场景第四章存储器组织高速缓存速度最快、容量最小主存储器速度中等、容量适中辅助存储器速度慢、容量大存储器是计算机系统的重要组成部分,用于存储程序和数据现代计算机采用层次化的存储结构,以平衡速度、容量和成本之间的矛盾本章将深入探讨存储器的基本概念、分类、工作原理以及在微型计算机系统中的应用和扩展技术我们将首先了解不同类型存储器的特点和适用场景,然后学习如何组织和访问这些存储资源,最后掌握存储器扩展的方法和技术,为理解完整的计算机系统打下基础存储器的分类按访问速度分类按功能分类高速存储器寄存器、缓存主存储器直接与交换信息••CPU中速存储器主存辅助存储器大容量数据存储•RAM•低速存储器硬盘、光盘等高速缓存缓解与主存速度差异••CPU按信息保持特性分类按物理特性分类易失性存储器断电信息丢失如•RAM半导体存储器、等•RAM ROM磁表面存储器硬盘、磁带•非易失性存储器断电信息保持如•光存储器、、蓝光•CD DVD、闪存ROM和RAM ROM随机存取存储器RAM只读存储器ROM特点读写操作速度相近,易失性断电数据丢失特点非易失性断电数据保持,通常只读或写入次数有限分类分类静态用触发器存储信息,速度快,集成度低,功掩模内容在制造时确定,不可更改•RAMSRAM•ROMMROM耗大,成本高可编程用户可一次性编程•ROMPROM动态用电容存储信息,需要定期刷新,速度较慢,•RAMDRAM可擦除可编程紫外线擦除,电写入•ROMEPROM集成度高,功耗低,成本低电可擦除可编程电擦除电写入•ROMEEPROM应用主存储器、高速缓存闪存块擦除,字节写入•Flash Memory应用存储程序、固件、启动程序BIOS存储器地址空间地址空间概念存储器映射存储器地址空间是可以直接寻址将物理存储器分配到地址空间的过程CPU的全部存储单元的集合处理器根据系统设计需求,可以将、8086RAM ROM有位地址线,可寻址的物理地址空和接口的寄存器映射到特定的地20I/O间为址区域2²⁰=1MB地址空间大小由地址总线的宽度决定,系统通常将映射到较高地址8086ROM位地址总线可寻址个存储单元区域,映射到较低地址区域,便n2ⁿRAM于系统启动和程序执行地址译码通过地址译码电路,将发出的地址信号转换为特定存储器芯片的选通信号,实CPU现对不同存储器区域的访问控制译码方式包括线选法、全译码法和部分译码法,选择何种方式取决于系统的复杂度和成本要求存储器扩展技术容量扩展通过增加存储芯片数量,扩大存储器容量需要使用地址译码器进行片选,将相同地址位置的多个芯片组织为一个完整的地址空间•低位地址线连接芯片内部地址线•高位地址线连接译码器,产生片选信号•数据线直接并联,共同构成数据总线位扩展通过并联多个存储芯片,扩展数据位宽例如,用两个8位宽的芯片构成16位宽的存储器•所有芯片共用地址线•各芯片的数据线连接到对应的数据总线位•片选信号需要控制高/低字节的选择容量与位宽同时扩展结合上述两种方法,同时扩展存储器的容量和位宽这种扩展方式常用于构建大型计算机系统的存储子系统•需要复杂的地址译码和片选逻辑•要考虑时序问题和负载能力•合理规划地址映射和存储器组织第五章汇编语言基础3编程层次汇编语言是低级编程语言,介于机器语言和高级语言之间1:1指令映射一条汇编指令通常对应一条机器指令103+指令数量8086处理器支持100多条不同的汇编指令40%代码效率与高级语言相比,汇编程序通常可提高约40%的执行效率汇编语言是一种低级程序设计语言,使用助记符代替机器指令的操作码,使程序员能够直接控制计算机硬件它提供了对CPU和内存的直接访问,允许程序员精确控制程序的执行过程,因此在系统软件、设备驱动程序和性能关键应用中仍然具有重要价值汇编语言的特点高执行效率硬件相关性由于与机器代码有直接对应关系,汇编程序通常具有较高的执行效率和较小的代码汇编语言与特定处理器架构紧密相关,不体积,适合对性能要求较高的场合同处理器有不同的汇编语言汇编程8086序不能直接在或其他架构上运行ARM精确控制允许程序员直接访问和控制硬件资源,如寄存器、内存地址和端口,便于开I/O发系统软件和驱动程序知识需求高编程复杂性要求程序员深入了解计算机硬件结构和工作原理,掌握处理器指令系统和寻址方式编写和调试难度大,生产效率低,程序可读性和可维护性差,不适合开发大型应用软件汇编语言程序格式基本语句格式程序结构一个完整的汇编语句通常包含四个字段一个完整的汇编程序通常包含三个主要部分段定义部分使用和伪指令定义代码段、数据段和堆栈段•SEGMENT ENDS[标号:]操作码[操作数][;注释]程序体部分包含实际执行的指令序列•结束部分使用伪指令标记程序结束•END标号可选,表示该语句的地址•操作码指令助记符或伪指令例如•操作数指令的源、目的操作数•DATA SEGMENT注释以分号开始的说明文字•VAR1DB12H例如DATA ENDSSTART:MOV AX,1234H;将1234H送入AX CODESEGMENTASSUME CS:CODE,DS:DATASTART:MOV AX,DATAMOV DS,AXMOV AL,VAR
1...MOV AH,4CHINT21HCODE ENDSENDSTART伪指令和宏指令伪指令宏指令不产生机器码的指令,用于指导汇编过程,告诉汇编程序如何翻译源程序用户自定义的指令集合,通过一个宏名来代表一组汇编语句常见伪指令宏定义和调用段定义、•SEGMENT ENDS;宏定义段关联•ASSUMEPRINT MACROMSG程序入口结束•/END MOVAH,09H数据定义、、、、LEA DX,MSG•DB DWDD DQDTINT21H重复定义•DUPENDM地址对齐、•EVEN ALIGN过程定义、•PROC ENDP;宏调用PRINT MESSAGE伪指令的执行时间为汇编阶段,不占用程序运行时间宏与过程的区别宏是在汇编时展开,过程是在运行时调用•每次宏调用都生成一份代码,过程只有一份•宏没有调用开销,过程有调用开销•宏增加代码长度,过程减少代码长度•第六章指令系统8086指令系统概述指令格式处理器指令系统是一组约多指令由操作码和操作数组成操80861008086条指令的集合,按功能可分为数据传作码指明要执行的操作,操作数可以送指令、算术运算指令、逻辑操作指是寄存器、内存地址或立即数令、串操作指令、控制转移指令等多指令长度可变,从字节到字节不等,16个类别这种可变长度指令格式提高了代码密这些指令共同构成了处理器的功能基度,但也增加了指令解码的复杂性础,程序就是由这些指令按特定顺序组成的序列指令执行周期指令执行分为取指、译码、执行和存储结果四个基本阶段采用指令预取技8086术,当执行单元处理当前指令时,总线接口单元已开始预取下一条指令不同指令的执行时间不同,简单指令可能只需几个时钟周期,复杂指令可能需要几十个时钟周期寻址方式寄存器寻址立即寻址操作数在寄存器中,指令直接指定寄存器例如操作数是常数,直接包含在指令中例如MOV AX,MOV AX,1234H(将内容传送到)这是最快的寻址方式,因为不需(将十六进制数送入)指令执行快,但指令长度BX BX AX1234H AX要访问内存较长直接寻址寄存器间接寻址操作数在内存中,指令直接给出有效地址的偏移量例如操作数在内存中,地址存放在、、或寄存器中例BX BPSI DI(将内存地址处的字送入)如(将所指内存单元的内容送入)适MOV AX,[1000H]DS:1000H AXMOV AX,[BX]BXAX适合访问固定位置的数据合访问数组或表格基址变址寻址相对寻址操作数地址由基址寄存器或和变址寄存器或相操作数地址由寄存器内容加上一个偏移量得到例如BX BPSI DIMOV加得到例如适合访问二维数组或复在访问数据结构成员时很有用MOV AX,[BX+SI]AX,[BX+20H]杂数据结构数据传送指令指令格式示例功能说明MOV MOVAX,BX将源操作数传送到目的操作数PUSH PUSHAX将操作数压入堆栈POP POPBX将堆栈顶的数据弹出到操作数XCHG XCHGAX,BX交换两个操作数的内容LEA LEASI,[BX]将操作数的有效地址送入指定寄存器LDS LDSSI,DWORD PTR[BX]将内存中的双字送入DS和指定寄存器LES LESDI,DWORD PTR[BX]将内存中的双字送入ES和指定寄存器LAHF LAHF将标志寄存器低8位送入AHSAHF SAHF将AH内容送入标志寄存器低8位数据传送指令是最基本、使用最频繁的指令类型,它们实现了寄存器、内存和I/O端口之间的数据移动,为后续的数据处理奠定基础算术运算指令加法指令减法指令乘法指令普通加法,如普通减法,如无符号乘法,如ADD ADDAX,SUB SUBAX,MUL MULBXBX BX带进位加法,如带借位减法,如有符号乘法,如ADC ADCAX,SBB SBBAX,IMUL IMULBX BXBX加操作,如减操作,如乘法调整INC1INC AXDEC1DEC AXAAM ASCII码调整,用于求补运算,如AAA ASCIIBCD NEGNEG AX码运算比较操作,如CMP CMP AX,BX除法指令无符号除法,如DIV DIVBX有符号除法,如IDIV IDIVBX除法调整AAD ASCII字节扩展为字CBW字扩展为双字CWD算术运算指令执行后会影响标志寄存器的状态,如进位标志、零标志、符号标志、溢出标志等,程序CFZFSFOF可通过检查这些标志来判断运算结果的特性逻辑运算指令逻辑运算类移位指令逻辑与操作,两操作数对应位同为则结果为,否则为逻辑左移算术左移,低位补,最高位进•AND110•SHL/SAL/0CF逻辑或操作,两操作数对应位有一个为则结果为逻辑右移,高位补,最低位进•OR11•SHR0CF逻辑异或操作,两操作数对应位不同则结果为,相同则为算术右移,保持符号位不变,最低位进•XOR10•SAR CF逻辑非操作,操作数各位取反循环左移,最高位进,同时进最低位•NOT•ROL CF逻辑比较,执行运算但不保存结果,仅设置标志位循环右移,最低位进,同时进最高位•TEST AND•ROR CF带进位循环左移,通过循环•RCL CF格式示例带进位循环右移,通过循环•RCR CFANDAX,BX;AX=AX ANDBX格式示例OR CX,0FFH;CX=CX ORFFH左移位SHL AX,1;AX1将清零XOR DX,DX;DX右移位SHR BX,CL;BX CL各位取反NOT AL;AL循环左移位ROL DX,4;DX4逻辑运算和移位指令在位操作、数据掩码处理和乘除法快速计算等领域有广泛应用它们也是实现加密算法和数字信号处理的重要工具串操作指令基本串操作指令串传送,将指向的数据传送到,并根据标志自动增减和格式有字节、MOVS DS:SI ES:DI DFSI DIMOVSB字MOVSW串比较,比较和指向的数据,并设置标志位格式有字节、字CMPS DS:SI ES:DI CMPSBCMPSW扩展串操作指令存入串,将的内容存入指向的内存,并更新格式有字节、字STOS AL/AX ES:DI DISTOSBSTOSW取出串,将指向的内存内容取入,并更新格式有字节、字LODS DS:SI AL/AX SILODSBLODSW扫描串,将与指向的内存比较,并更新格式有字节、字SCAS AL/AX ES:DI DISCASBSCASW重复前缀无条件重复,重复执行串操作直到适用于和REP CX=0MOVS STOS相等为零时重复,重复执行直到或适用于和REPE/REPZ/CX=0ZF=0CMPS SCAS不相等不为零时重复,重复执行直到或适用于和REPNE/REPNZ/CX=0ZF=1CMPS SCAS应用示例内存块复制REP MOVSB内存块初始化REP STOSB字符串搜索REPNE SCASB字符串比较REPE CMPSB控制转移指令无条件转移指令JMP直接跳转到指定目标地址,可分为段内直接、段内间接、段间直接和段间间接四种形式例如JMP START条件转移指令根据标志寄存器的状态决定是否跳转,有多种类型,如JZ零标志置位时跳转、JNZ零标志未置位时跳转、JC进位标志置位时跳转等例如CMPAX,BX/JE EQUAL若AX=BX则跳转循环指令LOOP CX减1后若非零则转移,用于实现循环例如LOOP NEXTLOOPE/LOOPZ CX减1后若非零且ZF=1则转移LOOPNE/LOOPNZ CX减1后若非零且ZF=0则转移子程序调用指令CALL调用子程序,将返回地址压栈后转移到子程序入口处RET从子程序返回,弹出栈顶保存的返回地址并转移到该地址RETF远返回,弹出段地址和偏移地址中断指令INT软件中断,例如INT21H调用DOS功能5INTO溢出中断,OF=1时执行中断类型4的中断服务程序IRET中断返回,弹出IP、CS和FLAGS第七章中断系统中断技术的意义中断系统组成中断是一种重要的控制机制,它允许中断源产生中断请求的设备或条件CPU外部事件或特殊条件迫使暂停当前任CPU中断控制器接收、处理和管理中断请务,转而处理更紧急的事务,处理完毕求后再返回原来的任务中断服务程序响应中断并执行相应处中断技术大大提高了计算机的实时响应理的程序能力和利用率,是实现多任务处理和CPU中断向量表存储中断服务程序入口地外设并行工作的基础址的表格中断处理过程中断请求的产生与识别、响应中断的判断、中断现场的保护、中断服务程序的执行、CPU中断现场恢复和中断返回等步骤组成完整的中断处理过程通过中断处理机制,能够及时响应外部事件,提高系统的响应速度和处理效率CPU中断的概念和类型软件中断异常中断由执行指令产生的中断INT由内部异常条件引起的中断CPU指令中断执行指令引起硬件中断•INT n故障可恢复性错误的中断•Fault由外部设备通过中断请求线向发CPU陷入报告条件陷阱中断由程序调试工具设置•Trap处理器间中断•出的中断信号引起的断点触发终止严重错误•Abort在多处理器系统中,一个处理器向另可屏蔽中断可通过设置•INTR一个处理器发出的中断请求标志位禁止IF同步通信中断非屏蔽中断不受标志••NMI IF位控制,始终有效处理器协同工作中断•4中断系统8086中断类型中断优先级中断向量表支持种类型的中断,中断优先级从高到低位于内存的最低808625680861KB000H-分为两类为区域3FFH
①外部中断包括可屏蔽
①类型的每个中断向量占字节2NMI4中断信号和非屏蔽INTRCS:IP
②类型的单步中断1中断信号NMI可寻址个中断服务程序256
③类型的断点中断3
②内部中断包括软件中入口地址
④类型的溢出中断断指令和处理器内部4INT中断号对应的向量地址为n异常
⑤类型的除法错误0n×4
⑥输入的可屏蔽中断INTR中断响应过程
①保存标志寄存器入栈FLAGS
②清除和标志位IF TF
③保存当前和入栈CS IP
④从中断向量表获取新的CS:IP
⑤转向中断服务程序执行中断向量表中断类型向量地址功能描述除法错误中断指令商溢出0000H-003H DIV单步中断时每执行一条指1004H-007H TF=1令产生非屏蔽中断2008H-00BH NMI断点中断指令300CH-00FH INT3溢出中断指令与4010H-013H INTOOF=1保留给定义的异常和中断5-31014H-07FH Intel用户自定义中断或外部硬件中32-255080H-3FFH断中断向量表是中断系统的核心部分,它将中断类型号映射到相应的中断服务程序入口地址系统初始化时8086需要设置各种中断向量,确保中断发生时能够正确调用相应的服务程序在和早期系统中,是调用操作系统服务的主要方式,通过在寄存器中设置不同的功能号DOS WindowsINT21H AH来实现文件操作、内存管理等功能中断服务程序保存现场CPU自动保存FLAGS、CS和IP寄存器的值程序员需要在中断服务程序开始处保存用到的其他寄存器,如AX、BX、CX、DX等PUSH AXPUSHBXPUSH CXPUSHDX处理中断执行具体的中断处理逻辑,如读取I/O端口数据、更新系统状态、响应用户请求等如果中断可能嵌套,可通过STI指令开中断;处理中断的具体代码IN AL,PORT_A;读取设备状态CMP AL,80H;检查状态JNZ NORMAL;正常则跳转MOV AL,ERROR_CODEOUT PORT_B,AL;输出错误代码发送EOI信号对于硬件中断,特别是通过8259A中断控制器的中断,需要发送EOIEnd OfInterrupt信号,通知中断控制器中断处理完毕MOV AL,20H;EOI命令OUT20H,AL;发送到主8259AOUT0A0H,AL;对于从8259A的中断还需这行恢复现场按照与保存相反的顺序恢复之前保存的寄存器值,然后通过IRET指令返回被中断的程序IRET会自动恢复IP、CS和FLAGSPOP DXPOPCXPOP BXPOPAXIRET;中断返回可编程中断控制器8259A功能特点级联工作模式是一种可编程中断控制器,能够管理个中断源,通过级联可支持多达个中在系统中,通常使用两片级联,主片连接的引脚,从片连接主片的8259A864PC8259A CPU INTR断源它的主要功能包括引脚,共提供个中断请求线IR215IRQ0-IRQ15接收多个设备的中断请求中断请求线分配•根据优先级确定处理顺序•系统定时器•IRQ0向发送中断信号•CPU键盘控制器•IRQ1提供中断类型号•连接从片•IRQ2支持中断屏蔽和优先级控制•串行口•IRQ3COM2支持轮询和自动模式•EOI串行口•IRQ4COM1并行口•IRQ5LPT2软盘控制器•IRQ6并行口•IRQ7LPT1实时时钟•IRQ8其他设备•IRQ9-IRQ15通过三个初始化命令字和一个操作命令字进行编程控制通过合理设置这些命令字,可以实现灵活的中断处理策略,满足不同系统的需求8259A ICW1-ICW3OCW第八章总线结构地址总线数据总线传输内存或端口的地址信息,决定了传输实际的数据信息,决定了系统的数据I/O系统的寻址能力传输能力扩展总线控制总线连接外部设备和扩展卡,提供系统的扩展传输控制信号,协调和控制系统各部件的能力工作总线是计算机系统中连接各个功能部件的公共通信通道,它使、存储器和设备能够相互交换信息总线的设计对系统的性能、兼容CPU I/O性和可扩展性有着重要影响本章将介绍总线的基本概念、分类、性能指标以及常见的总线标准总线的概念和分类总线的定义总线是计算机系统内部的公共传输线路,用于在各个功能部件之间传送地址、数据和控制信息它由多根导线组成,每根导线传送一位二进制信息总线的使用实现了计算机各部件间的标准化互连,简化了系统设计按层次结构分类内部总线内部连接各个功能单元的总线CPU系统总线连接、存储器和接口的总线CPU I/O外部总线连接设备和接口的总线I/O I/O通信总线连接不同计算机系统的总线按功能分类地址总线单向传输,发出地址信号CPU数据总线双向传输,在与其他部件间传送数据CPU控制总线大部分单向传输,传送各种控制信号按时序特性分类同步总线所有设备遵循统一时钟信号,传输时序严格异步总线不依赖统一时钟,通过握手信号协调,灵活但复杂半同步总线结合同步和异步的特点系统总线处理器总线最高层次,性能最高内存总线连接北桥与内存的专用总线I/O总线、等标准接口总线PCI PCIe扩展总线、等外部设备总线USB SATA系统总线是现代计算机体系结构中的核心组件,它遵循一定的协议规范和标准,实现了系统各部件之间的高效通信随着计算机技术的发展,系统总线已经从早期的、发展到现在的,速度和带宽得到了极大提升ISA EISAPCI Express在现代系统中,总线结构通常采用分层设计,处理器通过北桥内存控制器集线器连接到高速设备如内存和显卡,通过南桥控制器集线器连接到各种低PCI/O速外设,这种分层结构有效平衡了性能和兼容性需求数据总线、地址总线和控制总线数据总线地址总线控制总线特点特点特点双向传输线路,可从发送数据到外设,单向传输线路,只能从发出大部分是单向传输线路•CPU•CPU•也可从外设接收数据到CPU位宽决定了可寻址的空间大小,如位地传送各种控制信号和时序信号•n•位宽决定了一次可传送数据的位数,如址线可寻址个存储单元•82^n种类和数量因处理器和系统架构而异•位、位、位、位等163264影响系统的最大内存容量和设备数量•I/O常见控制信号影响系统的数据传输效率•存储器读写信号•MEMR,MEMW功能功能读写信号•I/O IOR,IOW在与存储器之间传送指令和数据指定存储器单元的地址•CPU•中断请求和应答信号•INTR,INTA在与设备之间传送数据指定端口的地址•CPU I/O•I/O总线请求和授权信号•HOLD,HLDA在系统各部件之间传送信息•8086处理器的地址总线宽度为20位,可寻址•时钟信号CLK、复位信号RESET等的物理内存空间处理器的数据总线宽度为位,可一次1MB2^20808616传送字节数据2总线仲裁总线仲裁的概念常见仲裁方式8086总线仲裁在多设备系统中,当多个设备同时申请使用总线时,集中式仲裁由中央仲裁器统一管理总线请求处理器通过信号实现总线仲裁•8086HOLD/HLDA需要通过总线仲裁机制来决定哪个设备可以获得总和授权外部设备向发出总线请求信号•HOLD CPU线的使用权总线仲裁保证了总线资源的有序使用,链式查询方式按物理位置确定优先级•响应请求,释放总线控制权•HLDA CPU HOLD避免了设备间的冲突计数器定时查询方式轮询各设备请求•当接收到信号后,会在完成当前总线•CPUHOLD总线仲裁通常由专门的总线仲裁器或总线控制器负独立请求方式每个设备有专用请求线•周期后驱动信号,表示已让出总线控制权HLDA责,根据预定的算法决定优先级和授权顺序分布式仲裁设备自行协商总线使用权•外部设备使用完总线后,撤销信号,•HOLD CPU•自举仲裁方式通过总线状态信号判断随即撤销HLDA信号,重新获得总线控制权冲突检测仲裁方式检测并处理冲突•第九章接口技术I/O接口基本概念I/O寻址方式1连接设备与系统总线的硬件电路独立与统一编址两种方式I/O数据传输方式可编程接口芯片3程序控制、中断和三种方式灵活配置的专用接口DMA I/O接口是微型计算机系统中连接与外部设备的重要桥梁,它实现了内部总线与外设之间的电气特性、时序特性和功能特性的转换,使I/O CPU不同工作特性的设备能够与计算机系统协调工作本章将介绍接口的基本概念、工作原理以及几种典型的可编程接口芯片I/O接口的基本概念I/O功能和作用基本结构I/O寻址方式I/O接口是连接CPU与外部设备的一个典型的I/O接口包含以下基8086支持两种I/O寻址方式硬件电路,主要功能包括本部件
①独立I/O编址使用专门的I/O
①地址译码识别CPU发出的设
①数据寄存器暂存传输的数据指令IN/OUT访问I/O端口,端备地址口地址空间独立于内存地址空间,8086可寻址64KB的I/O端口
②数据缓冲暂存传输数据,平
②状态寄存器反映设备的工作0000H-FFFFH衡速度差异状态
②统一编址内存映射I/O将
③信号转换电平转换、串并转
③控制寄存器存放控制信息I/O设备的寄存器映射到内存地换等
④地址译码电路选择特定的址空间,使用内存访问指令MOV
④控制和时序协调CPU与设备I/O端口等操作I/O设备间的数据传输
⑤总线驱动电路与系统总线的
⑤状态监测检测和报告设备工接口作状态数据传输方式CPU与I/O设备之间的数据传输主要有三种方式
①程序查询方式CPU不断查询设备状态,效率低
②中断方式设备就绪时中断CPU,减少等待时间
③DMA方式直接存储器访问,不通过CPU传输数据并行接口8255A基本特性工作模式是公司推出的可编程并行接口芯片,是微机系统中使用最广泛的并行接口支持三种工作模式8255A IntelI/O8255A芯片之一模式基本输入输出模式0/主要特点三个端口可独立配置为输入或输出•提供个可编程引脚,分为、、三个位端口•24I/O A B C8无握手信号,简单直接•可工作在三种不同模式下•适合简单的控制•I/O直接与系列微处理器兼容•Intel模式选通输入输出模式1/电源为单电源供电•+5V端口和可作为数据端口,部分端口引脚用作握手信号•ABC兼容的输入输出电平•TTL带有选通和中断控制功能•适合与打印机等需要握手的设备连接•模式双向总线模式2仅端口可配置为双向数据传输•A使用根端口引脚作为控制和状态信号•5C适合与其他处理器或智能设备通信•的编程是通过向控制寄存器写入控制字来实现的控制字定义了各端口的工作模式和输入输出方向在实际应用中,常用于连接键盘、显示器、打印机、开关量采集和控制8255A/8255A等场合串行接口8251A基本特性8251A是Intel公司生产的通用同步/异步收发器USART,是微机系统中常用的串行通信接口芯片它可以将CPU的并行数据转换为串行数据传输,也可以将接收到的串行数据转换为并行数据供CPU处理主要特点包括同步/异步模式选择、可编程波特率、可编程数据格式5-8位数据位、1-2位停止位、奇偶校验等同步模式在同步模式下,8251A与外设之间的数据传输以字符或字节为单位进行,没有起始位和停止位,需要同步字符来建立同步这种模式传输效率高,适合大量数据的高速传输,常用于计算机间通信或与同步调制解调器连接同步模式下的数据格式、同步字符和传输控制方式都可以通过编程设置异步模式在异步模式下,每个字符都带有起始位和停止位,传输不需要同步字符,字符之间的间隔可以任意长这种模式灵活方便,是最常用的串行通信模式,适合终端、打印机等设备的连接异步模式下可以设置数据位数5-8位、停止位数
1、
1.5或2位以及是否使用奇偶校验等参数寄存器结构8251A内部包含数据缓冲寄存器、控制寄存器和状态寄存器
①数据缓冲寄存器用于存放待发送或刚接收的数据
②控制寄存器存放控制字,设置工作方式和参数
③状态寄存器反映芯片的工作状态和错误信息这些寄存器通过读写操作进行访问和控制,从而实现串行通信的各种功能定时器计数器/8253/8254基本特性工作模式是公司推出的可编程定时器计数器芯片,是的改进支持六种工作模式8253/8254Intel/825482538253/8254版本,功能更强它们主要用于产生精确的时间延迟、事件计数、脉冲产生模式计数中断计数器加载初值后开始递减计数,计到时输出高电平,00和频率测量等功能可用于产生中断信号主要特点模式可重触发单稳态收到触发信号后输出低电平,计数到后恢复高电10内含三个独立的位计数器计数器、、平,可用于延时触发•16012每个计数器都可独立工作在不同模式下•模式频率发生器输出连续的方波信号,周期由计数初值决定,适合产2•计数频率高达8MHz8253或10MHz8254生时钟信号计数方式可选二进制或码•BCD模式方波发生器与模式类似,但能确保输出波形的占空比为3250%内部计数器既可单独使用,也可级联使用•模式软件触发脉冲加载初值后一段时间输出一个短脉冲,适合定时触4与系列微处理器兼容•Intel发模式硬件触发脉冲类似模式,但由外部信号触发计数开始54在机中,主要用于产生系统时钟中断信号、刷新请求和扬声器音调控制通过编程设置不同的计数初值和工作模式,可以实现各种定时和PC/AT8254IRQ0DRAM计数功能,为系统提供准确的时间基准第十章技术DMA32传输模式数据通路支持单字节、块和按需传输三种模式存储器到设备或设备到存储器两种方向DMA I/O I/O10X4性能提升通道数量与程序控制相比,可提高数据传输性能倍以上典型的控制器提供个独立的通道I/O DMA108237A DMA4DMA直接存储器访问是一种高效的数据传输技术,它允许外部设备在不通过的情况下直接与内存进行数据交换技术大大减轻了的负担,提高了系统的数据传输效率,特别适用于大量数据的DMA CPU DMA CPU高速传输,如磁盘操作、网络数据传输和高速打印等应用场景本章将介绍的基本概念、工作原理、控制器结构以及在微机系统中的应用,重点讲解控制器的功能和编程方法DMA8237A DMA直接存储器访问概念DMA传统I/O的局限DMA的原理DMA的优势在程序控制和中断方式下,数据传输必须通技术通过专门的硬件控制器控制器,接管大幅提高数据传输效率尤其是大量数据的传输;I/O I/O DMA DMA过进行,即使使用中断方式,每传送一个数据也总线控制权,实现外设与内存之间的直接数据传输,减轻负担,使可以并行执行其他任务;降低CPU CPU CPU要中断一次,当数据量大时,将花费大量时无需干预,只在传输开始和结束时需要参与系统中断开销,提高实时响应能力CPU CPUCPUCPU间处理操作,影响系统性能I/O传输通常需要以下步骤首先初始化控制器,设置传输方向、地址、数据量等参数;然后发出开始传输命令;接着控制器向申请总线控制权通过DMA CPUDMA CPUDMA CPUHOLD信号;让出总线通过信号响应;控制器控制数据传输过程;传输完成后,控制器释放总线并可选择性地向发出中断信号通知传输完成CPUHLDADMADMA CPU控制器DMA8237A通道结构寄存器组织1四个独立通道,可同时为不同设备服务每通道拥有地址、计数和模式寄存器DMA传输模式优先级控制3支持单字节、块和按需三种传输方式固定优先级或轮转优先级两种仲裁方式是公司生产的可编程控制器,在兼容机中广泛使用它可以管理四个独立的通道,每个通道都能执行存储器到或到存储器的数据8237A IntelDMA PC/AT DMA I/O I/O传输,无需干预在系统中,通常使用两片级联,提供总计个通道为第一片,为第二片,通道用于级联CPU PC8237A7DMA0-35-74每个通道都有一组专用寄存器,包括当前地址寄存器、当前字计数寄存器、基地址寄存器、基字计数寄存器和模式寄存器等通过对这些寄存器的编程,可DMA以控制传输的各个方面,如传输方向、传输模式、地址增减方向和传输数据量等DMA传送过程DMADMA初始化通过编程设置控制器的各个寄存器,包括基地址、计数值、传输模式等参数同时,初始化与配合工作的设备,使其做好数据传CPUDMADMA I/O输准备请求DMA传输当外设准备好数据传输时,向控制器发出请求信号控制器收到请求后,判断优先级并确定是否响应当前请求DMA DRQDMA总线控制权转移控制器向发出信号,请求总线控制权完成当前总线周期后,通过信号响应,将总线控制权交给控制器DMACPUHOLD CPU HLDA DMA数据传输执行控制器接管总线后,向外设发出应答信号,然后产生读写信号和地址信号,控制数据从源地址传输到目标地址每传输一DMA DACK个数据,地址寄存器会根据设置自动增加或减少,计数寄存器减1传输完成处理当计数寄存器减到时,表示传输完成控制器释放总线控制权撤销信号,撤销信号重新获得总线控制控制器通0DMAHOLDCPUHLDADMA过信号通知外设传输完成,并可选择性地向发出中断请求,通知传输状态TCTerminal CountCPU第十一章微机系统设计需求分析1确定系统功能和性能指标体系结构设计2选择、总线和组件CPU硬件电路设计处理器、存储器和接口电路软件系统开发4系统和应用软件设计系统测试与优化功能测试、性能评估与改进微机系统设计是将所学的微机原理知识综合应用于实际工程实践的重要环节通过系统设计,可以深入理解微处理器、存储器、接口电路等组件的工作原理和相互关系,培养系统思维和工程实践能力微机系统设计原则功能要求成本效益可靠性设计兼容性与标准化系统设计首先要满足预定的功能需求,在满足功能需求的前提下,追求最佳系统应具有良好的稳定性和容错能力遵循行业标准和规范,确保与现有系包括处理能力、响应时间、可靠性等的性价比这包括硬件成本、开发成通过冗余设计、故障检测与恢复机制、统和未来技术的兼容性采用标准接指标选择的硬件平台和架构方案应本、生产成本和维护成本等各个方面电气保护电路等措施提高系统可靠性口和协议,便于系统集成和扩展标能支持所有必要功能,同时考虑未来避免过度设计和资源浪费,合理利用关键应用可能需要考虑看门狗定时器、准化设计还有利于降低开发难度和缩的扩展需求标准组件和模块化设计降低成本掉电保护等功能短开发周期可维护性良好的系统设计应考虑后期维护的便利性采用模块化设计,提供自检和诊断功能,完善的文档记录,合理的器件布局和测试点设置,都有助于提高系统的可维护性存储器设计存储器层次结构设计存储器电路设计微机系统存储器设计通常采用层次化结存储器电路设计包括地址译码、读写控构,包括高速缓存、主存储器制、数据缓冲和刷新控制等电路地址Cache和辅助存储器硬盘等根据系统译码电路负责将发出的地址信号转换RAMCPU需求合理配置各级存储器的容量和速度,为相应的片选信号;读写控制电路生成平衡性能和成本存储器的读写控制信号;数据缓冲电路用于隔离和存储器,增强驱动能力CPU对于嵌入式系统,可能需要考虑片内存储器、片外、闪存等不同存储器设计时要特别注意时序问题,确保存储RAM/ROM的组合方式存储器层次结构的优化对器访问满足各种时序要求,避免读写冲系统性能有重大影响突存储器映射设计存储器映射是指将物理存储器分配到地址空间的方案设计时需要考虑系统启动需求、和的分布、设备映射、中断向量表位置等因素ROM RAMI/O在多处理器系统中,可能还需要考虑共享内存区域的设计良好的存储器映射方案有助于提高系统的灵活性和可扩展性接口设计I/O接口选型硬件电路设计软件驱动设计根据系统功能需求和外设特性,选择合适的接口接口电路设计包括以下几个方面接口的软件驱动是硬件功能得以发挥的关键驱I/O芯片或设计自定义接口电路常用的接口芯片包动设计通常包括地址译码确定接口在空间或内存空间的•I/O括地址范围初始化程序设置接口工作模式和参数•并行接口用于通用并行,适合键•8255AI/O数据缓冲平衡与外设间的速度差异数据传输程序实现数据读写功能•CPU•盘、显示器等电平转换匹配不同设备间的电气特性状态检测程序监控设备工作状态••串行接口用于串行通信,适合远程数•8251A保护电路防止外部干扰和静电损害中断服务程序响应设备中断请求••据传输驱动能力确保信号具有足够的驱动能力出错处理程序处理传输错误和异常••定时器用于定时、计数、脉冲生•8253/8254成电路设计时要注意信号时序、干扰抑制和可靠性良好的驱动程序设计应该模块化、可重用,并提保障等问题供清晰的应用程序接口中断控制器用于多中断源管理API•8259A控制器用于高速数据传输•DMA8237A除了标准接口芯片外,现代设计中也常使用FPGA或专用集成电路实现自定义接口功能系统总线设计总线拓扑结构系统总线设计首先要确定拓扑结构,如单总线结构、分级总线结构或多总线结构单总线结构简单但可能存在性能瓶颈;分级总线结构可以分离高速设备和低速设备,提高效率;多总线结构适合多处理器系统,但复杂度高选择合适的拓扑结构取决于系统规模、性能需求和成本限制等因素总线时序设计总线时序设计涉及时钟频率选择、总线周期安排、握手信号控制、等待状态插入等方面同步总线需要设计时钟分配网络,确保时钟信号的同步性和抗干扰性;异步总线则需要精心设计握手信号的时序关系总线时序设计直接影响系统的可靠性和最大工作频率,是系统设计的关键环节总线电气特性总线的电气特性包括逻辑电平标准、负载能力、阻抗匹配、信号完整性等方面设计时需要考虑总线驱动器的输出能力、接收器的输入灵敏度、电源噪声抑制等因素对于高速总线,可能需要考虑传输线效应,采用阻抗匹配和终端匹配技术;对于长距离传输,可能需要考虑差分信号技术和隔离措施总线仲裁机制在多主控系统中,需要设计总线仲裁机制,解决多个主控设备对总线访问权的竞争问题常用的仲裁方式包括固定优先级、轮询式和自适应优先级等仲裁电路可以集中式实现,也可以分布式实现集中式仲裁电路简单直观但存在单点故障风险;分布式仲裁电路可靠性更高但设计复杂总线保护和错误处理总线设计中需要考虑各种异常情况的处理,如总线超时、非法访问、数据错误等常用的保护措施包括看门狗定时器、奇偶校验、校验、总线监视器等CRC错误处理机制应能及时检测错误,生成适当的错误报告,并在可能的情况下进行错误恢复或降级运行课程总结与展望《微型计算机原理》课程是计算机科学与技术专业的核心课程,通过本课程的学习,我们系统掌握了微型计算机的基本结构、工作原理和设计方法从数制与编码基础,到结构、指令系统,再到存储器组织、总线结构和接口,我们建立了完整的微机系统知识体系CPUI/O微机技术正在持续发展,多核处理器、异构计算、量子计算等前沿技术不断涌现未来的学习和研究方向包括高性能计算架构、低功耗设计、片上系统、人工智能专SoC用硬件等领域希望大家能够在本课程的基础上,继续深入探索计算机体系结构的广阔天地。
个人认证
优秀文档
获得点赞 0