发明名称 |
用于执行直接存储器存取的方法和系统 |
摘要 |
提供一种构造为松散地耦合的直接存储器存取引擎(DE)和总线引擎(BE)的直接存储器存取(DMA)设备。DE将编程的数据块分拆成单独的事务,解释分散/聚集(scatter/gather)描述符,以及在通道间判优。DE和BE使用能够在该DE和BE之间排队的组合的读写(RW)命令。总线引擎(BE)具有两个读队列和一个写队列。第一读队列用于“新的读”以及第二读队列用于“旧的读”,旧的读是已经在总线上重试过至少一次的读。BE将绝对优先级给新的读,并且仍避免死锁状况。 |
申请公布号 |
CN101149714B |
申请公布日期 |
2012.06.27 |
申请号 |
CN200710152817.0 |
申请日期 |
2007.09.18 |
申请人 |
国际商业机器公司 |
发明人 |
乔拉·拜兰;卢斯·E·德拉托尔;伯纳德·C·德雷鲁普;约蒂·古普塔;理查德·尼古拉斯 |
分类号 |
G06F13/28(2006.01)I |
主分类号 |
G06F13/28(2006.01)I |
代理机构 |
北京市柳沈律师事务所 11105 |
代理人 |
黄小临;周少杰 |
主权项 |
一种用于在直接存储器存取设备中执行直接存储器存取块移动的方法,该方法包括:在直接存储器存取设备内的直接存储器存取引擎处接收直接存储器存取块移动请求,其中该直接存储器存取块移动请求指示源和目标;在直接存储器存取设备内从直接存储器存取引擎向总线引擎发出关于直接存储器存取块移动请求的一个或多个读写命令;以及由总线引擎对于一个或多个读写命令中的每一个执行从源读取数据的读操作和将数据写入目标的写操作,以满足直接存储器存取块移动请求,其中执行所述读操作和写操作包括:将与给定读写命令相关联的读事务置于在总线引擎内的新的读队列中,其中执行所述读操作和写操作进一步包括:从新的读队列中运行读事务;确定该读事务是否是被重试;以及如果该读事务不是被重试,则将与读写命令相关联的写事务置于在总线引擎内的写队列中,其中执行所述读操作和写操作进一步包括:如果该读事务是被重试,则将该读事务置于旧的读队列中,其中,旧的读队列是在总线上重试过至少一次的读取,而新的读取是在在总线上没有重试过的读取。 |
地址 |
美国纽约阿芒克 |