基于PCI总线的嵌入式设备驱动程序设计与研究

基于PCI总线的嵌入式设备驱动程序设计与研究

刘仁峰[1]2004年在《基于PCI总线的嵌入式设备驱动程序设计与研究》文中进行了进一步梳理目前,越来越多的电子设备需要由计算机来进行控制,而几乎所有的CPU和外部设备都会提供PCI总线的接口,PCI总线已经是计算机系统中应用最为广泛、最为通用的总线标准。因此,开发PCI设备的驱动程序显得尤为重要。Windows是当今世界使用最为广泛的操作系统,Linux因其免费的开放源代码,以及稳定的性能,越来越受到广大用户所青睐。同时,基于Linux内核的嵌入式操作系统应用势头强劲。开发这两种操作系统下的设备驱动程序,具有很强的实用性和通用性。本文以DSP视频采集处理卡的设计为背景,研究了PCI总线传输、控制机制及其配置技术,阐述了Windows和Linux下驱动程序的特点,开发出了Windows98/2000下PCI设备的WDM驱动程序以及Linux下的驱动程序,同时提供了相应的上层用户可方便调用的动态链接库。在驱动程序的设计中充分考虑了操作的同步与互斥,有效地解决了资源的共享问题。同时,做到了多卡共用一个设备驱动程序而降低了内存使用。整个设计项目采用内核层、API层、应用层叁级编程体系结构,各层编码相对独立,编程思路清晰明了,程序具有较强的通用性、安全性和可移植性。如需对硬件设备升级,只需修改软件的设备驱动程序,而无需对整个系统重新编译。本文的设计为通用的设备驱动程序提供了借鉴,使嵌入式设备驱动程序在不修改和少量修改驱动程序源代码的情况下,可在不同操作系统实现代码级兼容,提高了类似项目的开发效率。

马洪伟[2]2005年在《Linux平台下PCI图像卡的驱动程序设计与研究》文中进行了进一步梳理随着计算机技术的迅猛发展,越来越多的电子设备需要由计算机来进行控制。而几乎所有的CPU 和外部设备都会提供PCI 总线的接口,PCI 总线已经是计算机系统中应用最为广泛、最为通用的总线标准。因此,开发PCI 设备的驱动程序显得尤为重要。Linux 因其免费的开放源代码,以及稳定的性能,越来越受到广大用户所青睐。同时,基于Linux 内核的嵌入式操作系统应用势头强劲。开发基于Linux 的设备驱动程序,具有很强的实用性和通用性。本文以DSP 视频采集处理卡的设计为背景,研究了PCI 总线传输、控制机制及其配置技术,阐述了Linux 下驱动程序的特点,开发出了PCI 设备在Linux 下的驱动程序。在驱动程序的设计中充分考虑了操作的同步与互斥,有效地解决了资源的共享问题。针对DSP 图像卡传输图片实时性要求较高的特点,设计出共享内存的方案,使得图像处理与数据传输同步进行,大大提高了数据传输的速率。工业控制要求运行稳定,遇到故障能够及时恢复,本文探讨在驱动程序中设置监控代码,监控DSP 卡运行状态,一旦发现异常便重新初始化DSP 卡,保证整个系统的健壮性。整个设计项目采用内核层、API 层、应用层叁级编程体系结构,各层编码相对独立,编程思路清晰明了,程序具有较强的通用性、安全性和可移植性。如需对硬件设备升级,只需修改软件的设备驱动程序,而无需对整个系统重新编译。本文的设计为通用的设备驱动程序提供了借鉴,使嵌入式设备驱动程序在不修改和少量修改驱动程序源代码的情况下,可在不同操作系统实现代码级兼容,提高了类似项目的开发效率。同时为驱动程序如何保持稳定提供了自己的参考意见。

胡昌银[3]2003年在《X86嵌入式Internet系统研究及开发》文中指出计算机、通讯网络及Internet技术的飞速发展以及嵌入式系统加快向人们生活的渗透使当前各类电子智能设备面临着愈加迫切的联网需求,这也是嵌入式Internet技术得以发生发展的根本原因。 文章首先概述了嵌入式Internet技术的发生、发展及其应用前景。在介绍了嵌入式Internet技术的基本原理和比较了当前国内外几种主要解决方案的前提下,提出了一种构建基于高端X86微处理器嵌入式网络平台的解决方案。随后详细描述了整个系统的设计原理及硬件组成,并重点研究分析了基于PCI总线的10M/100M自适应以太网络接口的软硬件设计。最后说明了系统接入Internet的TCP/IP协议栈的设计及测试,证明本文方案是可行的。纵观全文,得出如下结论:随着计算机、通信及网络技术的发展,实现大量智能电子设备与Internet的结合,即电子设备Web化是信息时代的新趋势。基于本文方案构建的高端X86嵌入式网络平台具有应用开发简单快速、灵活适应的特点,可广泛应用于电力自动化及各种电气测控设备、通讯终端、在线监测系统、嵌入式Web、网络协议转换、智能仪器仪表等众多工业领域。

丁利国, 罗飞[4]2007年在《一种基于DSP的PCI嵌入式设备设计与实现》文中提出PCI总线是一种广泛应用于微机系统的高性能的外围设备接口总线。本文提出了一种PCI设备的设计方案,通过在PCI设备上引入嵌入式DSP处理器,使用可编程逻辑器件进行时序控制和地址译码,增强了数据处理的能力,缓解了主机CPU的压力,并可根据需要扩展功能。

廖珂[5]2012年在《基于S3C6410的Windows CE的BSP开发与远程控制设计》文中进行了进一步梳理论文基于的研究项目来源于2009年国家科技部科技人员服务企业行动项目“面向高危场所的一体化数据采集仪”(项目编号2009GJE00021)。嵌入式技术是21世纪最具生命力的高新技术之一,而嵌入式远程桌面控制设计则是当今网络环境下数字化设计的一个重要发展方向。本文便是结合安全生产应用中对远程嵌入式设备的可见﹑可记录和可操作等需求,分析研究如何克服硬件自身的差异性,将远程桌面控制功能移植到嵌入式内核中,以支持异地用户能够通过网络控制远程嵌入式设备,实时便捷地获取现场数据,达到将操作与设备拆分开来的目的。首先,本文通过需求分析,选择了Windows CE操作系统作为软件平台,基于ARM内核的S3C6410微处理器作为硬件平台,并设计了整个远程桌面控制系统的软硬件实现方案。在方案的实现过程中,将基于S3C6410硬件平台的BSP开发作为基本点和关键点进行研究,通过分析其中的Boot Loader层的源码构架,完成了在Boot Loader层对CPU、以太网口以及TFTP连接等的初始化设计工作,使操作系统可以通过以太网进行Windows CE映像的加载;通过分析其中的OAL层的设计原理,完成了在OAL层对操作系统的内核初始化、KITL的I/O控制接口以及串口等操作的程序设计和调试工作,使Windows CE内核可以与硬件平台进行交互通信;通过分析Windows CE的缓存结构,采用了四路组相联的设计方案以优化缓存、提升Windows CE的运行效率。其次,对设备驱动进行了分类,基于MDD/PDD模型设计了视频驱动程序,基于UAM模型设计了音频驱动程序,实现了嵌入式设备对音、视频信息的采集。然后,完成了Windows CE系统的远程桌面控制组件的内核定制、无线通信模块的加载、内核编译与系统启动等工作。最后,搭建测试环境,完成了对整个系统的性能测试与分析。经过服务器端、客户机端以及无线局域网等环境的测试,系统在远程登录、远程文件传输、图像采集以及缓存性能等方面的设计均达到了项目对一体化数据采集仪提出的从远程实现监测现场的可见﹑可记录和可操作等要求,非常适合在危险源场所、安防场所等工业领域应用,具有广阔的市场前景。

楼杨, 王广龙, 陈建辉, 郭晓冉, 朱建峰[6]2011年在《基于PowerPC的嵌入式设备数据采集接口的设计与实现》文中进行了进一步梳理文中提出了一种基于PowerPC的数据采集接口设计方案,该方案以PowerPC微处理器为核心,通过其集成的PCI总线控制器和PCI Express总线控制器,扩展了除PCI Express外的多路PCI/PCI-X数据采集通道。系统基于嵌入式Linux操作系统平台完成相关驱动软件的开发,实现了数据的高效率采集,具有低功耗、高带宽和高集成度等优点。测试结果表明:系统处于全效率运行状态,数据采集速率可以达到GB级,满足了系统设计的要求,具有广阔的应用前景。

丁宁[7]2017年在《面向材料试验机领域的嵌入式设备控制中间件的研究与应用》文中提出随着嵌入式在工业领域的发展,越来越需要解决因为底层复杂的设备差异导致的开发周期长、开发人员压力大、需要的知识多等问题。因此借鉴PC机的软总线技术和CORBA的代理机制,通过分析现有的各个领域的嵌入式中间件产品的特点,结合工业控制领域特有的问题,研究并设计了针对小型工业设备的中间件,部署在“嵌入式控制器+触摸屏”的硬件环境下。并在材料冲击试验机上进行了验证,取得了较好的效果。将设备的驱动程序、核心的类似于对文件系统的读写一样的系统调用封装成组件,在应用层生成调用组件的代理机制,这组成了中间件的基本架构和思想。整个中间件由4个功能模块组成,数据存储模块提供统一的接口与Sqlite嵌入式数据库交互。应用管理模块用来管理各个应用的启动、终止和调度。设备控制模块扮演着命令解析的角色,它不但接受本地用户的命令也能处理分布式情况下远端客户的命令。数据处理模块分为数据采集与数据融合两个子模块,扮演着数据处理的角色。将相融矩阵融合算法集成到中间件中,去除无效数据,提高了实验数据的精确度和可信度。又设计了基于全局的两张表,分别是设备文件映射表和数据类型映射表。这两张表作为以上4个功能模块相互联系的纽带共同铺设在操作系统与设备驱动之上,构成了多层次的中间件层。中间件基于CE9200开发板的硬件平台,使用嵌入式Linux系统和Qt的集成开发环境。设计了ApplicationManage,Control Middleware,Data Fusion,DataPicker,Data Save这5个C++类。通过对这几个类的不断扩展细化,可以完善针对工业控制领域的中间件的设计。

李颂[8]2007年在《嵌入式设备接入HPC系统关键技术研究》文中研究表明基于Linux OS的嵌入式装置由于其小型紧凑、接口丰富、价格低廉、抗恶劣环境、源代码公开等特性,目前被大量用作许多控制系统的终端设备和通信设备,承担着数据采集、数据交换及命令执行的重任。由于软硬件资源的限制,嵌入式设备通常不具有较高的智能,难以承担大中型实时系统的复杂数据处理和控制策略优化任务,这部分工作需要由控制中心的高性能计算机(HPC)来完成。由此需要研究嵌入式设备到HPC系统间的接入系统。由于控制系统前后端之间的通信可能面临数据量巨大、时延敏感、缺乏有线信道等问题,因此设计并实现高性能的接入方案并非轻而易举的事情。本课题源于“985”工程“智能信息技术”项目的需要,对嵌入式装置到中心机房高性能计算机接入系统的关键技术进行研究,并实现了一个架构于SCM-7050嵌入式核心板的图像采集装置接入HP RX4640小型机的Demo系统。课题研究的主要工作包括:(1)针对核心板硬件平台进行Linux内核的剖析与精简、硬件驱动程序的改造、内核向Flash芯片的移植,以及引导程序的设计与烧写;(2)在嵌入式Linux平台上完成实时图像采集、传输、回放以及云台控制等一系列软件开发接口和扩展功能模块的设计;(3)针对控制系统地域分散,受控点通信不便等特点,进行了基于GPRS的无线通信信道的设计;(4)在详尽剖析Linux内核TCP/IP实现机制的基础上,结合接入系统的通信需求,改造内核的TCP/IP协议栈,提高传输性能;(5)分析SMP与MPP两种计算机系统实现高性能计算的软件支撑平台,使用OpenMP函数库在小型机上实现一个并行图像处理的示例程序。课题的创新点首先体现在集成与应用的创新:运用高端接入系统实现嵌入式装置与HPC计算机的无缝对接,优势互补,为建立大规模高性能控制系统提供基础框架;其次是在改造Linux内核的TCP/IP协议栈时,引入数据对象和对象池双重管理机制来管理数据单元,类似于CPU内存访问中的一级和二级缓存,以提高内存的利用率以及硬件缓存区级系统总线的利用率。课题进一步的研究内容包括:运用软构件技术改造系统,提高构建各种控制系统中的软件可重用性;针对通信需求进一步优化内核的TCP/IP协议栈,提高接入信道的吞吐量与实时性;本课题研究的侧重点在于接入系统,对于后端高性能并行计算的算法研究属于另一层面的研究范畴,本文只是做了例证,这方面的研究有待深入。

政越伟[9]2013年在《嵌入式多通道监测系统通信技术研究与实现》文中提出现今对各行业设备的多个参数同时进行监测,已经是嵌入式设备的重要功能之一。而现实世界是以模拟信号存在,把模拟信号转化为数字信号是嵌入式设备进行后期数据处理的前提。将采集到的数据经过嵌入式开发板处理,通过套接字应用网络协议上传到远程监控室,监控室通过对设备的各种状态、性能参数进行监测,以达到预测设备故障和工作寿命的作用,从而提高生产效率,减小因设备突发故障而导致的财产损失。系统是以Linux作为嵌入式操作系统,以ARM Cortex-A8系列的s5pv210芯片作为嵌入式处理器,同时用TI (Texas Instruments,德州仪器)公司的ADS8345作为A/D转换模块进行数据采集。Linux系统因为拥有源代码公开、内核可裁剪、资源丰富等特点,在嵌入式领域得到了广泛的应用;s5pv210是叁星公司出品的基于ARM框架的嵌入式处理器芯片,具有高性能、低功耗等特点;ADS8345是一款16位逐次逼近型8通道串行输出的内部采样型模数转换器。论文给出了多通道A/D数据采集的软硬件实现方案,重点是研究挂接在Linux设备模型各种总线的外围设备与Linux内核的通信方法以及嵌入式开发板与上位机测试程序的通信方法。以此为基础实现了ADS8345驱动程序的编写,完成了多通道数据的采集,利用SPI通信协议将采集到的多通道数据传递给嵌入式开发板处理。编写嵌入式应用程序,利用网络TCP通信协议将处理后的数据根据自定义的协议报文打包上传给监控室上位机。上位机测试程序通过解析报文获得各个通道数据,测试、验证和动态显示每个通道的数据曲线。通过模拟实际设备测试系统,证明该采集系统各模块之间的通信具有良好的稳定性。分析测试结果,证明采集到的多通道数据的精度、速率满足系统的技术指标。对后续系统的进一步开发、完善以及性能优化提供了一定的借鉴价值。

王永强[10]2008年在《基于MPC8280的嵌入式设备的通信接口驱动实现》文中研究表明摩托罗拉个人计算机MPC芯片强大的通信和协议处理能力使其在通信与网络设备中得到广泛应用,实现MPC8280 ATM接口驱动具有较大的应用价值。结合项目“星上10Gbps大容量交换原理样机”,本文研究了基于MPC8280的ATM接口驱动的设计与实现。本文首先介绍了ATM接口驱动的软硬件开发平台,分析了ATM协议架构及其工作原理,并研究了ATM控制器的APC调度、地址映射和中断处理叁个核心工作机制以及UTOPIA接口规范。在基于MPC8280的嵌入式开发板上,论文详细研究了ATM接口驱动软件,实现了ATM协议中AAL5和ATM层的功能。根据快速通信控制器FCC设置在ATM协议模式下的工作原理,将驱动软件划分为初始化、数据接收、数据发送、中断处理和差错处理五部分,并在嵌入式Linux操作系统上实现。最后,构建了嵌入式Linux操作系统上的软件开发平台,设计了软件调测试方法,总结了驱动软件实现过程中遇到的若干问题及其解决办法,并提出下一步的研究方向。

参考文献:

[1]. 基于PCI总线的嵌入式设备驱动程序设计与研究[D]. 刘仁峰. 华中科技大学. 2004

[2]. Linux平台下PCI图像卡的驱动程序设计与研究[D]. 马洪伟. 华中科技大学. 2005

[3]. X86嵌入式Internet系统研究及开发[D]. 胡昌银. 西南交通大学. 2003

[4]. 一种基于DSP的PCI嵌入式设备设计与实现[J]. 丁利国, 罗飞. 现代计算机. 2007

[5]. 基于S3C6410的Windows CE的BSP开发与远程控制设计[D]. 廖珂. 电子科技大学. 2012

[6]. 基于PowerPC的嵌入式设备数据采集接口的设计与实现[J]. 楼杨, 王广龙, 陈建辉, 郭晓冉, 朱建峰. 仪表技术与传感器. 2011

[7]. 面向材料试验机领域的嵌入式设备控制中间件的研究与应用[D]. 丁宁. 北方民族大学. 2017

[8]. 嵌入式设备接入HPC系统关键技术研究[D]. 李颂. 厦门大学. 2007

[9]. 嵌入式多通道监测系统通信技术研究与实现[D]. 政越伟. 北方工业大学. 2013

[10]. 基于MPC8280的嵌入式设备的通信接口驱动实现[D]. 王永强. 西安电子科技大学. 2008

标签:;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  ;  

基于PCI总线的嵌入式设备驱动程序设计与研究
下载Doc文档

猜你喜欢