首页>>科技 >>内容

系统芯片设计—驱动程序 Driver

发布时间:2023-09-18 11:20:15编辑:温柔的背包来源:

很多朋友对系统芯片设计—驱动程序,Driver不是很了解,每日小编刚好整理了这方面的知识,今天就来带大家一探究竟。

系统芯片设计—驱动程序 Driver

驱动程序是一种特殊的底层软件,可以使应用软件与硬件进行通信。其功能是为上层软件提供调用接口,控制硬件设备的工作。固定是指硬件厂商固化在硬件中的驱动。

系统芯片的软硬件架构自下而上可分为硬件设备、硬件驱动和上层软件,其中硬件驱动又可分为硬件依赖层和硬件抽象层,如图5-98(a)所示。硬件驱动作为系统架构的重要组成部分,主要完成以下功能:初始化和释放设备;读取上层软件向硬件设备发送的请求数据和硬件设备发回的响应数据;检测错误和处理中断。

因为硬件驱动与硬件设备密切相关,所以硬件驱动通常由系统芯片厂商提供。硬件厂商根据硬件特点编写硬件驱动。硬件驱动需要实现的接口和功能是由硬件特性决定的。从片上系统软件框架来看,硬件驱动程序向下控制硬件设备的运行,向上提供标准的调用接口,方便上层软件的使用。

对于上层软件来说,硬件驱动是一个独立的“黑匣子”,其作用是使特定的硬件以标准化的应用接口向上层软件提供服务,隐藏设备工作过程中的详细操作。只要驱动层的调用接口相同,软件设计者就可以让应用运行在不同的硬件上,硬件设计者可以不断升级硬件,而不影响旧软件在新设备上运行。

当上层软件需要使用某个硬件功能时,上层软件会先向外设驱动发送相应的指令,外设驱动将指令翻译成外设控制器可以读取的电信号命令。

在操作系统中,硬件依赖层通常由硬件厂商以固件的形式提供,而硬件抽象层集成到操作系统中,由操作系统厂商以标准设备驱动程序的形式提供,如图5-98(b)所示。目前,硬件抽象层集成在市场份额领先的Windows和Linux操作系统内核中。而不同操作系统的设备驱动程序接口不一致,不同设备厂商的固件接口也不一样,这就使得软件开发者无法随意选择设备厂商。

未来,标准的设备驱动程序接口和固件接口将进一步标准化,以便软件开发人员可以在不同设备制造商的设备之间无缝切换。

审核编辑:李倩

以上知识分享希望能够帮助到大家!