什么控制设备控制器?

什么控制设备控制器?

我的理论是,设备驱动程序控制设备控制器,而设备控制器又控制硬件设备。这个推理正确吗?请原谅我知识不足。只是读了一下,就偶然想到了这个想法?

答案1

什么控制设备控制器?

主机(设备控制器所连接的)使用设备命令。

我的理论是,设备驱动程序是控制设备控制器的,而设备控制器又控制硬件设备。

设备驱动程序是在主机 CPU 上执行的 OS 软件。驱动程序必须将 OS I/O 请求和数据转换为外围设备可以执行的操作。

设备控制器是外围设备子系统的一部分。控制器被视为硬件,但典型的(现代)控制器具有处理器(通常是微控制器或微处理器),经过编程(即安装在非易失性存储器(如 NAND 闪存)中的固件),本质上是一台嵌入式计算机,其目的是提供主机和设备之间的接口。设备控制器可以制造为单个 IC(尤其是大批量生产和/或由于封装要求时),也可以与 SoC 中的 CPU 完全集成,也可以是电路板上的几个芯片。

设备控制器与主机的硬件接口是一组“设备寄存器”。一些控制器可能有一组复杂的寄存器(又名端口),尤其是当与 CPU 集成在硅片上时(又名 SoC,片上系统)。通过电缆连接到主机的其他控制器通常具有类似于通信链路的硬件接口(例如 SATA、USB)。

设备控制器的软件接口各不相同。
通常有一组命令可以写入命令寄存器。或者可以有一个数据寄存器用于写入命令和/或数据包(例如 SATA)。这些命令(例如执行读取或写入或重置操作)通过低级操作“控制”设备控制器和实际设备。

相关内容