[其他]用于向处理器给出输入/输出通知的装置无效
| 申请号: | 86103678 | 申请日: | 1986-06-02 |
| 公开(公告)号: | CN86103678A | 公开(公告)日: | 1986-12-31 |
| 发明(设计)人: | 戴威·V·詹姆斯;费尔南多·A·卢兹 | 申请(专利权)人: | 惠普公司 |
| 主分类号: | G06F13/32 | 分类号: | G06F13/32 |
| 代理公司: | 中国专利代理有限公司 | 代理人: | 李先春,黄向阳 |
| 地址: | 美国加利福尼亚*** | 国省代码: | 暂无信息 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 用于 处理器 给出 输入 输出 通知 装置 | ||
本发明涉及在计算机系统内的数据传输。一般说来,当输入/输出(I/0)设备准备好可以运行接受处理器的服务时,例如在向存储器或从存储器的一次数据存取之后,I/0设备将通知处理器。通常,这个通知是由通过特殊硬件线路的信号来完成的。例如可以从每个I/0设备连一条中断线到系统处理器,当I/0设备中的某一个准备好运行时,它便通过中断线路发送一个信号,处理器即可调用合适的软件子程序为该I/0设备服务。一般而言,处理器要采用某种类型的中断优先级结构。指定一I/0设备具有哪一个优先级是由硬件来设置的。适当的优先级数目常常是基于对为提供每一个优先级所需的硬件费用和能够识别优先级,对更有效地完成它的任务的处理器的重要性这两个因素进行平衡、分析来选择的。
如果一处理器正运行一具有高优先级的I/0设备时,便不允许具有较低优先级的I/0设备去中断该处理器。因而处理器必须对来自I/0设备的中断提供缓冲或是排队,或者I/0设备需要继续不断的将它需要服务通知处理器。实现这样一种缓冲方案的硬件可能是十分复杂的。
按照本发明所推荐的实施方案,给出了一个用于向处理器发出数据传输完成通知的方法和装置。输入/输出(I/0)设备单独地或者多个地与它们的位于系统存储器中的指令链表相关联。在每一个处理器中都已置放了指令单元。通常每个单元规定了在I/0设备和存储器的存储单元之间的数据传输的方向、长度和存储器地址。
一指令单元组的子集包含了专用于报告数据传输状态的单元。在这个指令单元组的子集中的每一个指令单元都包含一个指示某个状态记录的指针。状态记录当它被一I/0设备修改时,被置入一个存放在存储器内的状态链表中。一个I/0设备可以有自己的状态链表,也可以与若干其它的设备共享一个状态链表。一般而言,共享一个状态链表的I/0设备在关于接受处理器的服务方面是处于同一优先级的。状态记录包含一I/0设备和存储器的存储单元之间传输状态的信息。将状态记录插入状态链表是由硬件的一系列不间断操作完成的。根据执行I/0的情况,硬件即可向在处理器内的控制程序给出新的单元已加到第二个链表中的非同步通知。这个通知将使在处理器中目前正运行的过程产生中断。
本发明比先有技术具有多种优点。指令链表和状态链表的数目是由软件决定的,因而能容易地加以改变。与状态链表相关的I/0设备可以根据过程的相关性、服务的优先级、资源的临界状态或某个其它判据或判据的组合加以选择。处理器中的控制程序选择在指令链表的何处存放用于报告状态的指令单元以及哪个信息将被存放到状态记录中去,从而可以利用它们识别等待过程和监视在特定的状态表上的过程的状态。此外,当一新的状态记录被存放到状态链表中去时,控制程序还具有拒绝接受中断的选择,使处理器能控制何时为I/0服务。无论如何,状态信息不会丢失,而是保存在状态链表中直到处理器引用它们。
图1给出在总线上的处理器和各种I/0设备的方块图。
图2给出了一个按照本发明所推荐的实施方案的指令链表。
图3给出了一个按照本发明所推荐的实施方案的指令单元。
图4给出了按照本发明所推荐的实施方案的指令单元,状态记录和状态记录链表。
图5给出了一个按照本发明所推荐的实施方案的新的状态记录。
图6A-6C给出了按照本发明所推荐的实施方案的被加到状态记录链表中去的图5所给出的新的状态记录。
图7给出了按照本发明所推荐的实施方案的图4所给出的状态记录链表的首部。
图1给出了计算机系统的简化方块图,它包括处理器11、输入/输出(I/0)设备12、I/0设备13、I/0设备14和系统存储器15,它们都连接到数据传输总线16上。I/0设备12、13和14都是直接存取存储器(DMA)装置,即它们能够从系统存储器15存取数据。
图2是一个由指令单元21、22、23、24、25、26和27组成的在系统存储器15中的指令链表。在所推荐的实施方案中,每个指令单元系4个32位的字,如图3和图4中所示。指令单元21、22、23、25和27都有同样的格式。
作为一典型的例子,图3给出了指令单元23的格式。指令单元23包含一个32位字31、一个32位字32、一个32位字33和一个32位字34。字31是一个指针,它存放指令单元24的存储器地址,指令单元24是链表20中指令单元23的下一个指令单元。字32是一个编码指令,它指示一I/0设备去完成哪个操作,例如,是向存储器写入还是从存储器读出。字33是系统存储器15中的一个据以写入或读出数据的地址。字34是一个字节计数,它提供了要传输的数据字节的数目。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于惠普公司,未经惠普公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/86103678/2.html,转载请声明来源钻瓜专利网。





