大规模I/O共享系统PCI桥非预取访存空间扩展方法技术方案

技术编号:9033971 阅读:197 留言:0更新日期:2013-08-15 00:49
本发明专利技术公开了一种大规模I/O共享系统PCI桥非预取访存空间扩展方法,其实施步骤如下:1)建立目标地址译码器,通过目标地址译码路由表维护I/O结点的结点间地址与输出端口之间的映射关系;2)在操作系统枚举PCI设备时,获取每一个I/O结点的结点间地址并与每一个I/O设备的32位非预取访存地址拼装为I/O设备的目标地址;3)处理器发出PCI非预取访存事务时,目标地址译码器将目标地址进行解析,根据目标地址的结点间地址找到输出端口,根据低32位目标地址重构PCI非预取访存事务,并通过输出端口输出。本发明专利技术具有可扩展性强、扩展范围灵活、实现简单方便、兼容性好的优点。

【技术实现步骤摘要】

本专利技术涉及大规模i/o共享系统领域,具体涉及一种大规模i/o共享系统PCI桥非预取访存空间(non-prefetchable memory-mapped)扩展方法。
技术介绍
PCI是计算机中的一种总线标准,是目前计算机领域基本的外设部件连接与接口规范,是业界处理器、主板、外设等厂商普遍遵循的研发、生产标准。PCI标准最初由英特尔(Intel)公司开发,于1992年发布1.0版本。目前,PCI规范由国际标准化组织外设部件互连专业组(Peripheral Component Interconnect Special Interest Group,PCISIG)负责制定与发布,并衍生出PC1-E (PC1-Express)和PC1-X两个实现分支,最新版本是2010年11月发布的PC1-E 3.0。PCI桥连接两个独立的PCI总线,实现从一个PCI总线到另一个PCI总线的PCI事务转发。基于PCI桥,计算机系统或PCI板卡可以实现层次式1/0扩展。PCI桥中,靠近CPU的接口称为主接口(primary interface),而远离CPU的接口称为次接口(secondaryinterface),从主接口发往次接口的事务称为下行(downstream)事务。PCI桥的次接口可以连接另一个PCI桥的主接口,从而实现PCI系统结构的层次式树形设计。处理器计算核、内存通过1/0芯片(1/0 Hub, Ι0Η)与PCI总线互连。IOH及其下属的所有10设备,包括PCI桥、PCI设备,构成一个1/0结点。IOH之间通过1/0结点连接器互连,实现大规模的I/O共享。大规模输入/输出(Input/Output,1/0)共享系统即为利用该方法实现的系统。PCI桥主接口收到下行事务后,进行目标地址的合法性判断。当目标地址属于该桥处理的地址范围时,才向次接口转发,否则认为事务地址非法。相应地,PCI桥在其配置空间提供相关的配置寄存器,用以设置I/o事务、非预取访存事务、预取访存事务等不同类型事务的目标地址范围 。比如,通过“非预取访存空间基址(memory base)”寄存器设置非预取访存事务的最小目标地址,“非预取访存空间地址上限(memory limit)”寄存器设置非预取访存事务的最大目标地址,处于二者之间的地址范围即是该PCI桥可以处理的非预取访存事务的合法目标地址。目前,PCI标准规范定义的PCI桥接口中,对非预取访存操作只支持32位的目标地址,且只有高12位地址可以配置,S卩非预取访存操作的空间配置以IMB (22°)为最小粒度。而且,非预取访存是PCI设备必须支持的访问方式,每个PCI桥、PCI设备都包含一定范围的通过非预取访存操作访问的地址空间。因此,32位地址空间难以满足大规模1/0系统对于非预取访存地址空间的需求,限制了 1/0共享系统的可扩展性,成为大规模1/0共享系统的实现制约。
技术实现思路
本专利技术要解决的技术问题是提供一种可扩展性强、扩展范围灵活、实现简单方便、兼容性好的大规模I/o共享系统PCI桥非预取访存空间扩展方法。为了解决上述技术问题,本专利技术采用的技术方案为: 一种大规模I/O共享系统PCI桥非预取访存空间扩展方法,其实施步骤如下: 1)预先将多个I/O结点分别连接至大规模I/O共享系统的结点连接器并通过指定位数的结点间地址编码识别,在所述结点连接器中建立用于PCI非预取访存操作的目标地址译码器,所述目标地址译码器中通过一个目标地址译码路由表维护每一个I/O结点的结点间地址与结点连接器的输出端口之间的映射关系; 2)在操作系统进行PCI设备枚举时,搜索结点连接器连接的所有I/O结点,针对每一个目标I/O结点,根据目标I/O结点的结点标识号查找目标地址译码路由表得到目标I/O结点的结点间地址,分别读取目标I/O结点中所有I/O设备的32位非预取访存地址,将每一个I/O设备的32位非预取访存地址作为低32位与所述结点间地址拼装后分别作为I/O设备非预取访存空间访问的目标地址提交给PCI设备驱动程序; 3)当处理器调用所述PCI设备驱动程序向PCI设备发出下行PCI非预取访存事务时,通过目标地址译码器将所述PCI非预取访存事务的目标地址进行解析得到结点间地址和低32位非预取访存地址,根据结点间地址查找所述目标地址译码路由表找到目标地址对应的结点连接器的输出端口,将所述PCI非预取访存事务根据低32位非预取访存地址重构为PCI非预取访存事务,并通过所述输出端口将重构的PCI非预取访存事务转发给目标PCI总线上的PCI设备。作为本专利技术上述技术方案的进一步改进: 所述指定位数的结点间地址具体是指32位的结点间地址。 本专利技术具有下述优点: 1、本专利技术在操作系统枚举PCI设备时,将每一个I/O设备的32位非预取访存地址作为低32位与结点间地址拼装后分别作为I/O设备非预取访存空间访问的目标地址提交给PCI设备驱动程序,从而实现了将PCI非预取访问支持的32位地址空间扩展为更多位,因此能够将PCI桥支持的非预取方式访问资源的地址范围由原来的32位扩展到更多位,而且扩展范围的具体实现可根据需求灵活设计,解决了 PCI桥非预取访存空间的32位地址限制问题,能够消除PCI桥中非预取访存空间的地址范围瓶颈、增强I/O共享系统中PCI桥的可扩展性,能够满足大规模I/O系统对于非预取访存地址空间的需求,满足了大规模I/O系统对可扩展性的要求,为大规模I/O共享系统的实现提供了基础,具有可扩展性强、扩展范围灵活、实现简单方便的优点。2、本专利技术通过在结点连接器中建立用于PCI非预取访存操作的目标地址译码器,然后在枚举时读取PCI设备的32位非预取访存地址作为低32位拼装得到地址作为扫描结果提交给PCI设备驱动程序,在发出PCI非预取访存事务将译码后的低32位目标地址封装在PCI非预取访存事务中并通过目的端口转发给目的端口对应的PCI总线,因此本专利技术的PCI桥非预取访存空间扩展方法对10H、PCI桥、PCI设备以及PCI设备驱动程序透明,现有技术的10H、PCI桥、PCI设备、PCI设备驱动程序无需作任何修改,即可实现系统PCI非预取访存空间的扩展,因此对IOH设计、PCI设计以及应用软件透明,具有兼容性好的优点。附图说明图1为本专利技术实施例中I/O结点与大规模I/O共享系统的结点连接器的连接示意图。图2为本专利技术实施例中PCI桥中对非预取访存方式的访问地址空间的布置示意图。图3为本专利技术实施例中枚举PCI设备时声称I/O设备的目标地址的原理示意图。图4为本专利技术实施例中目标地址译码器进行地址译码的原理示意图。具体实施例方式在大规模I/O共享系统中,由结点连接器实现PCI事务在结点间的转发,处理器发出的PCI非预取访存事务后,首先交给结点连接器。本实施例的大规模I/O共享系统PCI桥非预取访存空间扩展方法的实施步骤如步骤I) 3)所示。I)预先将多个I/O结点分别连接至大规模I/O共享系统的结点连接器并通过32位的结点间地址编码识别,在结点连接器中建立用于PCI非预取访存操作的目标地址译码器,目标地址译码器中通过一个目标地址译码路由表维护每一个I/O结点的结点间地址与结点连接器的输出端口之间的映射关系。参见图1,本文档来自技高网
...

【技术保护点】
一种大规模I/O共享系统PCI桥非预取访存空间扩展方法,其特征在于实施步骤如下:1)预先将多个I/O结点分别连接至大规模I/O共享系统的结点连接器并通过指定位数的结点间地址编码识别,在所述结点连接器中建立用于PCI非预取访存操作的目标地址译码器,所述目标地址译码器中通过一个目标地址译码路由表维护每一个I/O结点的结点间地址与结点连接器的输出端口之间的映射关系;2)在操作系统进行PCI设备枚举时,搜索结点连接器连接的所有I/O结点,针对每一个目标I/O结点,根据目标I/O结点的结点标识号查找目标地址译码路由表得到目标I/O结点的结点间地址,分别读取目标I/O结点中所有I/O设备的32位非预取访存地址,将每一个I/O设备的32位非预取访存地址作为低32位与所述结点间地址拼装后分别作为I/O设备非预取访存空间访问的目标地址提交给PCI设备驱动程序;3)当处理器调用所述PCI设备驱动程序向PCI设备发出下行PCI非预取访存事务时,通过目标地址译码器将所述PCI非预取访存事务的目标地址进行解析得到结点间地址和低32位非预取访存地址,根据结点间地址查找所述目标地址译码路由表找到目标地址对应的结点连接器的输出端口,将所述PCI非预取访存事务根据低32位非预取访存地址重构为PCI非预取访存事务,并通过所述输出端口将重构的PCI非预取访存事务转发给目标PCI总线上的PCI设备。...

【技术特征摘要】

【专利技术属性】
技术研发人员:刘勇鹏庞征斌张峻蒋杰迟万庆卢凯唐宏伟樊葆华王睿伯李根王小平高颖慧冯华
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1