碧波液压网 欢迎你,游客。 登录 注册

基于21554的无主多处理器系统实现

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  本文给出了基于Intel-21554[1]非透明PCI总线桥的无主多处理器系统的一个具体系统实现。

  1. 21554的Lookuptable基地址模式

  – 支持从Secondary→Primary的一个源Base对N个目标Translated Base-i的“一对多”地址映射。

  – 目标空间分成64 个相同页(Page),每个页采用独立基地址Translated Base。页面利用Chip Control 1 configuration register编程,页面大小P-size从256B到最大4MB变化,可以置为无效。地址空间总容量为:16KB到256MB。如果设置页面大小为“零”,这种模式被禁止。

  – 源Base位于Secondary配置空间Upstream Memory 2 BAR处。源处理器需要按页面总空间安排存储映射。

  – 64个Base32位页面基地址位于CSRs寄存器空间,共256个字节。

  – 在CSRs地址空间提供了Lookuptable Offset Address和Lookuptable Data(偏移地址:02F:02Ch)寄存器来实现对页面基地址Translated Base的间接配置访问。

  – 每个页面Translated Base的 bit[7:0]用于控制或者保留,bit-0有效位,bit-3为可预取控制。基地址由bit[31:8]决定,包括基地址和页内偏移两部份。64个地址通常由Primary接口写入。上行访问时,来自Secondary的基地址的低6位用作地址“索引”,页面基地址结合偏移地址形成目标地址。

  

  2. 地址映射模式

  如图1所示,每个Processor-i的地址空间M都被分为内部和外部两部分。对内部空间的访问都被指向本地主存,而对外部的访问都被推向PCI总线。

  假设:(Base-i-P,TranslatedBase-i-S)表示Processor-i从Primary到Secondary的下行基地址对;

  (Base-i-S,TranslatedBase-i,j-P,j=0,……N-1)表示Processor-i的上行基地址;

  2.1. 下行地址映射

  Bi属于Processor-i的内部地址空间,接受本地Processor-i的内部访问以及Processor-j,j≠i的外部访问,如图1所示。位于Secondary-i接口的下行目标基地址Translated-Base-i指向Bi,由Processor-i根据内部空间分配策略决定。位于Primary-i接口的下行源基地址Base-i-P作为Processor-j的寻址目标,同时考虑文2中B在地址空间②中映射的任意性,可选择把B映射到②的底部,由此基地址应该满足下式:

  Base-i-P = TranslatedBase-j,i -P= i ,j=0,……N-1 ......⑴

  其中:TranslatedBase-j,i-P是Processor-j的在Primary-j接口的第i个上行基地址

  2.2. 上行地址映射

  Bj,j=0,……N-1,j≠i,是属于Processor-i的N-1个外部地址空间,本地Processor-i对这些空间的访问都被推向PCI总线,从而实现对Processor-j, j=0,……N-1,j≠i的外部访问。只需要假设页面Page-i与存储子空间Bi之间满足:P-size=Bi,就可以实现N个上行地址空间。在Secondary-i接口的上行基地址Base-i-S作为B的源基地址指向Processor-i PCI存储空间B0……BN-1底部,由Processor-i的PCI地址分配策略决定,如图1中所示。B的容量为:B-size =N xP-size =N x Bi。

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论