微机接口原理 第11章 微型计算机应用系统.ppt
本章教学重点和难点: ◆微型计算机应用系统设计方法、设计步骤、基本组成及应用实例。 ◆PCI总线和USB总线接口设计 ◆WINDOWS驱动程序设计、嵌入式系统介绍,第11章 微型计算机应用系统,,,,本章教学内容: 11.1 微型计算机应用系统设计 11.2 PCI总线和USB总线接口设计 11.3 WINDOWS驱动程序设计 11.4 嵌入式系统,11.1.1 概述 微机应用系统设计包括:硬件选择、接口设计和应用软件的设计。 1.微机接口电路分析与设计的基本方法 微机接口电路分析与设计要考虑接口两边的硬件,CPU总线与I/O设备之间信号的转换,I/O接口芯片的合理选用,硬件间的连接。,11.1 微型计算机应用系统设计,根据硬件连接情况,进行接口驱动程序的分析与设计,基本方法有以下四步: 1)分析接口两侧的情况 凡是接口都有两侧,一侧是CPU,另一侧是外设。对CPU:什么类型,数据线的宽度,地址线的宽度和控制线的逻辑定义,时序关系有什么特点。 外设:外设的工作原理与特点上,找出需要接口为它提供哪些信号才能正常工作,它能反馈给接口哪些状态信号反映其工作过程,以达到与CPU交换数据的目的。 2)进行信号转换 3)合理选用外围接口芯片 4)接口驱动程序分析,1)确定系统的功能目标 2)系统设计和初步评价 3)硬件和软件的任务划分 4)硬件和软件设计 5)系统综合测试 6)系统性能评价,2.微机应用系统的设计步骤,微机应用系统通常包括应用对象、传感测试部件、传输转换接口电路、微机处理和反馈控制接口电路组成,如图11-1所示。 (1)应用对象 (2)传感测试部件 (3)传输转换接口电路 (4)微机处理 (5)反馈控制接口电路,3.微机应用系统的基本组成,,1.在生物控制中的应用 2.在辅助科学实验中的应用,11.1.2 微型计算机应用系统设计举例,DSP: Digital Signal Processor数字信号处理器:体现三个学科(计算机、通信和消费类电子)的新器件。 DSP在航空航天、工业控制、医疗设备、消费类电子、通信、计算机和科学研究等各个领域有广泛应用,典型应用有数字滤波、调制解调器、可视电话、视频会议、语音合成、语音识别、声控、机器人控制、数据采集、CT扫描、导弹制导、数字电视和电动玩具等。,11.2 PCI总线和USB总线接口设计,(1)用可编程逻辑组件FPEG或CPLD 1)随意可以根据插卡功能进行最优化, 2)可以将PCI插卡上的其它用户逻辑与PCI接口逻辑集成在一个芯片上,实现紧凑的系统设计。3)当系统升级时只需对可编程器件重新进行逻辑设计,而无需更新印刷电路板(Printed Circuit Board,PCB)图。 (2)用PCI桥芯片 PCI接口芯片可以实现完整的PCI主控模块和目标模块的接口功能,将复杂的PCI总线接口转换为相对简单的用户接口。,11.2.1 PCI总线与DSP通信接口设计,3.PCI总线与DSP接口设计过程 PCI总线与DSP接口电路设计过程主要有四步: 1)确定基于接口电路的应用系统功能,并细化; 2)性价等选择DSP、PCI桥、电源管理、时序芯片; 3)连接各部件,把PCI桥芯片与微机PCI总线连接; 4)设计PCI桥芯片及DSP处理驱动程序,并测试。,,4.PCI总线与DSP接口设计实例1)系统功能分析 2)接口元件选择 3)各部件连接① CY7B933与CY7C09449的互连② TMS320VC33与CY7C09449的互连 4)软件设计,,1.USB总线的传输特性 USB总线的数据传输有4种类型: (1)控制传输:在设备连接时对设备进行设置,还可以对管道等进行控制。 (2)中断传输:用来传输中断数据。 (3)批传输:大批量数据传输,传输数据的速率有很大的动态范围。 (4)同时传输:在预定的USB总线带宽里,由预先确定的传输延迟来传输数据。,11.2.2 USB总线与DSP通信接口设计,2.USB总线与DSP的接口设计形式 3.USB总线与DSP接口设计过程 1)确定基于此接口电路的应用系统功能,并进行细化; 2) 根据性能、价格等选择DSP、USB接口芯片、电源管理、时序控制芯片; 3)连接各部件,把USB接口芯片与微机USB接口连接; 4)设计USB接口芯片及DSP处理驱动程序,并测试。,1)系统功能分析 2)接口元件选择 3)各部件连接 ① 该系统各部件的连接如图11-6所示。 ② USB系统的的工作过程 4)软件设计,4.USB总线与DSP接口设计实例,11.3.1 驱动程序概述 1.设备驱动程序的概念 设备驱动程序:是驱动物理设备和DMA控制器或I/O控制器等直接进行I/O操作的程序集合。负责设置相应设备有关寄存器的值,启动设备进行I/O操作,指定操作的类型和数据流向等。,11.3 WINDOWS驱动程序设计,2.驱动程序的分类 (1)虚拟设备驱动程序(VxD) 虚拟机管理器(Virtal Manage Machine VMM)。VxD中的x指各种不同的设备,如虚拟键盘驱动程序(vkd)、虚拟鼠标驱动程序(vmd)。 (2)内核模式驱动程序(KMD) KMD(Kernel Mode Driver) (3)Windows驱动模型(WDM) WDM(Windows Driver Mode) 在WDM驱动程序中,PnP(即插即用)管理器会告知何时向系统添加了一个设备,或是从系统删除了一个设备。,3.Windows驱动程序模型(WDM)的层次结构 Windows驱动程序模型重新定义了驱动程序的分层以适用于即插即用系统,各个不同层次的驱动程序一起构成了一个设备驱动程序栈,如图11-7所示。,(1)Microsoft公司的DDK http://www.microsoft.com/ddk/免费下载。 (2)Numega公司的VtoolsD Numega公司的产品VtoolsD基于C/C++,支持Borland C++和Visual C++,使用和维护都较Windows DDK容易。 (3)CompuWare公司的Driver Studio Driver Studio是CompuWare公司发布的一套Windows下的全套驱动开发工具集。Driver Studio能加速开发、调试、测试、调整和配置用户的VxD、WDM驱动程序。,4.Windows驱动程序开发工具,1.PCI设备驱动程序的特点 一是PCI设备可被重新安装在地址空间中(无硬件布线支持),PCI设备驱动程序将利用存储在设备结构空间寄存器中的映射信息,来确定将设备映射到哪里和中断的使用方式。 二是PCI中断可共享,系统将会用一条中断线连接不止一个设备,所以需要可支持共享中断的PCI设备驱动程序。,11.3.2 PCI设备VxD驱动程序设计,2.设计PCI设备驱动程序时的硬件分析 (1)设备的总线结构。不同的总线硬件工作机制不同,会造成驱动程序设计也不同。 (2)设备的控制寄存器、数据寄存器和状态寄存器,以及这些寄存器工作的特性。设备利用驱动程序设置、读取各种寄存器。 (3)设备的状态和错误信号。它们要通过驱动程序返回给用户。 (4)设备产生中断的条件和使用中断的数量。 (5)设备的数据传输机制。 (6)设备内存。要将PCI设备的内存映射到PC系统的物理内存。,3.PCI设备驱动程序模式和开发工具的选择 4.PCI设备驱动程序的基本功能实现,5.设备驱动的调用 6.设备驱动的进一步封装,1.USB驱动程序的结构 USB驱动程序属于标准WDM驱动程序,USB设备驱动程序也叫客户驱动程序,它仅靠创建URB(USB请求块)并使用USB驱动程序接口(USBDI)将URB提交到总线驱动程序就可完成硬件操作。,11.3.3 USB设备WDM驱动程序设计,1)选择开发工具 CompuWare公司发布的Driver Studio。 2)编写驱动程序 3)编译驱动程序 4)安装驱动程序 编写设备安装的INF文件,系统根据其安装驱动程序。用户可以将各种安装的信息(如文件、路径、版本号、设计者信息等)写入INF文件中,指导安装过程。,2.USB设备驱动程序开发流程,11.4.1 概述 1.嵌入式系统的基本概念IEEE认为:嵌入式系统是“用于控制、监视或者辅助操作的机器、设备或装置”,包括拥有嵌入式系统的核心——嵌入式微处理器。我国微机学会定义:嵌入式系统是以嵌入式应用为目的的计算机系统。可分为系统级、板级、片级。 系统级:各种类型的工控机等。■ 板级:各种类型的带CPU的主板及OEM产品。 ■ 片级:各种以单片机、DSP、微处理器为核心产品。,11.4 嵌入式系统,嵌入式处理器与通用型处理器的不同是: 前者大多工作在为特定用户设计的系统里,具有功耗低、体积小、集成度高等特点,可以把通用处理器中许多由板卡完成的任务集成在芯片内部,且嵌入式处理器所对应的应用软件和操作系统都是和具体开发任务紧密结合,不像通用PC系统中那样具有通用性。,2.嵌入式系统模型嵌入式系统的基本模型:由硬件层做最低层支持,在此基础上叠加可选定的系统软件层,再在选定系统软件层的基础上选择应用程序层。 3.嵌入式系统的相关标准 这些标准目前涉及的领域包括:消费类电子产品、医疗、工业自动化与控制、汽车、网络与通信、航空航天、国防、甚至商务办公自动化等方面。,(2)嵌入式技术的发展四个阶段: ① 第一:以单芯片为核心的可编程控制器形式的系统,同时具有与监测、指示设备等相配合的功能。 ② 第二:以嵌入式CPU为基础,以简单操作系统为核心的嵌入式系统。特点是系统开销少,效率高,操作系统具有一定的兼容性和扩展性。 ③ 第三:以嵌入式操作系统为标志的嵌入式系统。特点是嵌入式操作系统能运行在多种不同类型的CPU上,兼容性较好,内核精干效率高,具有相当程度的模块化和扩展性,有大量的应用程序接口(API)。 ④ 第四:以基于Internet为标志的嵌入式系统。主要特点是与Internet技术和信息家电、工业控制技术等结合日益密切,也是目前正在迅速发展的阶段。,1. 中央处理单元CPU 嵌入式系统的核心部件包括运算器、控制器、寄存器、CPU内部总线和其他核心控制电路。有独立的指令系统,可用于编制嵌入式系统的应用程序,字长也直接影响着嵌入式系统的运算速度和处理能力。 2. 总线技术 总线是连接嵌入式系统内部各功能部件的公共信息传递通路的总称。嵌入式系统使用的总线技术一般和PC机系统的不一样。,11.4.2 嵌入式系统硬件组成,3. 存储器 (1)按照读写属性划分,可以ROM和RAM。 (2)按照存储器的位置和承担的任务划分,可分为: 程序存储器、数据存储器和高速缓冲存储器。4.I/O接口和特殊功能部件 I/O接口负责完成系统内外的信息交互。 常见的有串行接口、并行接口、人机交互接口等。,1.嵌入式系统的开发步骤 1)系统需求分析。 2)规格说明。 3)系统结构设计。 4)构件设计。 5)系统调试与集成。,11.4.3 嵌入式系统软件开发,对于嵌入式系统主要有以下阶段: (1)软件总体设计。 (2)程序模块设计。 (3)系统调试。,(1)需求分析阶段。 (2)设计阶段。 (3)生成代码阶段。 考虑开发环境:程序设计语言、编码器、预处理器、编译器、汇编器、连接器、定位器等具体内容。 在嵌入式系统中一般采用的是交叉开发环境(Cross – Development Environment)。 代码编程。是C语言和汇编语言混合编程。 交叉编译和链接。 (4)固化阶段。,2.嵌入式系统的软件开发,,作业:,