存储器带宽计算

wzzyhg 81 0
  1. 基本概念

(1)存储器的读取

1.存储周期:存储器读取数据需要一定时间,这个时间叫“存储周期”,用 T 表示。
2.总线传输周期:数据通过总线传输的时间,用 \tau 表示。

(2)顺序存储器

1.顺序存储器是 每个模块 存储完整的一个字。
2.读取连续4个字时,依次从 同一个模块 读取,模块不能并行工作,每个字的读取都需要完整的存储周期。

(3)交叉存储器

1.交叉存储器将连续的字分散存储在 不同模块 上。
2.读取连续4个字时,不同模块可以 并行工作,流水线读取数据,从而提高效率。

  1. 信息总量

每个字 64 位,连续读取 4 个字,总信息量是:

Q = 64 \, \text{bit/字} \times 4 \, \text{字} = 256 \, \text{bit}

无论是顺序存储器还是交叉存储器,总信息量都是 256 \, \text{bit}

  1. 顺序存储器的时间计算

每次读取一个字的时间:

1.读取一个字需要 存储周期 T = 200 \, \text{ns}
2.总线传输这个字需要 \tau = 50 \, \text{ns}

但因为存储周期 T 包含了数据传输时间 \tau ,每次完整读取一个字只需 存储周期 T = 200 \, \text{ns}

连续读取4个字的时间:

顺序存储器不能并行,每次只能读一个字,总共需要 4次存储周期:

t_{\text{顺序}} = 4 \times 200 \, \text{ns} = 800 \, \text{ns} = 8 \times 10^{-7} \, \text{s}

  1. 交叉存储器的时间计算

流水线并行工作

1.第1个字需要 完整的存储周期 T = 200 \, \text{ns}
2.从第2个字开始,不同模块可以同时读取数据,每个字的间隔只需 总线传输周期 \tau = 50 \, \text{ns}

总时间计算:

1.第1个字:200 ns
2.后续3个字:每个字50 ns,3个字共 3 \times 50 = 150 \, \text{ns}

总时间:

t_{\text{交叉}} = 200 \, \text{ns} + 150 \, \text{ns} = 350 \, \text{ns} = 3.5 \times 10^{-7} \, \text{s}

  1. 带宽计算

带宽的定义是 单位时间内传输的数据量:

W = \frac{\text{总数据量}}{\text{传输时间}}

顺序存储器带宽:

W_{\text{顺序}} = \frac{256 \, \text{bit}}{8 \times 10^{-7} \, \text{s}} = 320 \, \text{Mbit/s}

交叉存储器带宽:

W_{\text{交叉}} = \frac{256 \, \text{bit}}{3.5 \times 10^{-7} \, \text{s}} \approx 730 \, \text{Mbit/s}

  1. 总结

    • 顺序存储器:每次读取一个字,不能并行,所以时间较长,带宽较低。
    • 时间: 800 \, \text{ns}
    • 带宽: 320 \, \text{Mbit/s}
    • 交叉存储器:利用模块并行和流水线技术,读取更快,带宽更高。
    • 时间: 350 \, \text{ns}
    • 带宽: 730 \, \text{Mbit/s}

发表评论 取消回复
表情 图片 链接 代码

分享