pm2i单级网络
搞linux,折腾ubuntu;还有正常的工作,但回头一看自己普复习过的内容,忘记的差不多了;重头开始吧。备考的四门中,系统结构仍是需要重点理解的,一方面是自己的专业课并且与平时的工作也有相关,所以拿出时间来仔细推敲下,是非常有价值的事。另一方面,也是计算机课程里一个难点,需要综合掌握。
如题:2020年10月

分析
这部分内容肯定是之前看过的,只是隐约记得了…。
基本知识
这部分属于SIMD互连网络的内容。如何实现单指令多数据流呢?已经把处理单元的关系抽象成函数了,依据这些函数来实现向量的操作,进而控制底层阵列。
为什么不用总线方式呢?因为成本,每个处理单元都相连的话,成本太高。
PM2I
再复习下这个概念,PM2I(plus-minus 2^i),名称已经是给出了这个互连函数的计算方法,能够实现与j号处理单元直接相连的号为:
P M 2 + i ( j ) = j + 2 i m o d N PM2_ + i(j)=j+2^i mod N PM2+i(j)=j+2imodN
P M 2 − i ( j ) = j − 2 i m o d N PM2_ -i(j)=j-2^i mod N PM2−i(j)=j−2imodN
对于本题的第一问,N=8,j也是从0开始的,所以是0<=j<=N-1=7; 0 ≤ i ≤ L o g 2 N − 1 0\leq i \leq Log2N-1 0≤i≤Log2N−1,也就是0<=i<=2;要求写出所有的互连函数的一般形式,就是这个公式:
P M 2 + 0 ( j ) = j + 2 0 m o d N = j + 1 m o d 8 PM2_+0(j)=j+2^0 mod N=j+1 mod 8