设备控制器基本功能
接收和识别命令
cpu可以向控制器发送多种不同的命令,设备控制器应能接收并识别这些命令。为此,在控制器中应具有相应的控制寄存器,用来存放接收的命令和参数,并对所接收的命令进行译码。例如,磁盘控制器可以接收cpu发来的read、write、format等15条不同的命令,而且有些命令还带有参数;相应地,在磁盘控制器中有多个寄存器和命令译码器等。
数据交换
这是指实现cpu与控制器之间、控制器与设备之间的数据交换。对于前者,是通过数据总线,由cpu并行地把数据写入控制器,或从控制器中并行地读出数据;对于后者,是设备将数据输入到控制器,或从控制器传送给设备。为此,在控制器中须设置数据寄存器。
标识和报告设备的状态
控制器应记下设备的状态供cpu了解。例如,仅当该设备处于发送就绪状态时,cpu才能启动控制器从设备中读出数据。为此,在控制器中应设置一状态寄存器,用其中的每一位来反映设备的某一种状态。当cpu将该寄存器的内容读入后,便可了解该设备的状态。
地址识别
就像内存中的每一个单元都有一个地址一样,系统中的每一个设备也都有一个地址,而设备控制器又必须能够识别它所控制的每个设备的地址。此外,为使cpu能向(或从)寄存器中写入(或读出)数据,这些寄存器都应具有唯一的地址。例如,在ib-mpc机中规定,硬盘控制器中各寄存器的地址分别为320~32f之一。控制器应能正确识别这些地址,为此,在控制器中应配置地址译码器。
数据缓冲
由于i/o设备的速率较低而cpu和内存的速率却很高,故在控制器中必须设置一缓冲器。在输出时,用此缓冲器暂存由主机高速传来的数据,然后才以i/o设备所具有的速率将缓冲器中的数据传送给i/o设备;在输入时,缓冲器则用于暂存从i/o设备送来的数据,待接收到一批数据后,再将缓冲器中的数据高速地传送给主机。
差错控制
设备控制器还兼管对由i/o设备传送来的数据进行差错检测。若发现传送中出现了错误,通常是将差错检测码置位,并向cpu报告,于是cpu将本次传送来的数据作废,并重新进行一次传送。这样便可保证数据输入的正确性。
变革性的RFID解决方案可满足智能工厂、物流和医疗应用的需求
哪些因素影响着3D打印的成型速度?
高压变频器在钢铁烧结厂高压同步电机上的应用
多串口通信服务器
高速转换器中的PCB布局布线规则
设备控制器基本功能
Linux 编程之经典多级时间轮定时器(上)
国家标准《氢系统安全的基本要求》4月1日起实施
【世说芯品】赋能绿色未来 | 芯讯通助力能耗大户书写“绿色答卷”
Lava Be U在印度正式发布 采用八核SC9863A处理器
PCB设计检查规范指南你值得拥有
达实智能大厦开放性平台助力智慧建筑园区数字化转型升级
格力“色界”手机-让世界知道格力不只做空调,更多的还有手机行业!
瀚天天成IPO获受理,拟于上交所科创板上市
安森美开设欧洲电动汽车系统应用实验室
华润微:IPM模块已经处于稳定上量的过程中
受疫情影响 冰箱空调洗衣机必须得抗住短时间的压力
养羊场智能养殖方案
华为微博更名并宣布鸿蒙操作系统及全场景新品发布会将在6月2日举行
重磅!传感器圈30大超亿元融资案