主权项 |
一种基于GPU的集成电路电源地线网络的并行仿真方法,其特征在于,包括以下步骤:(1)将集成电路电源地线网络简化为二维规则网络,CPU将所述二维规则网络划分为满足GPU硬件要求的两个以上的分块,并向GPU传输分块信息,具体包括步骤a~c:a.输入所述二维规则网络的信息到CPU,并计算出导纳矩阵A和电流源向量I;b.设置初始值x0和各分块的预条件矩阵Bp的逆矩阵Bp‑1;c.将初始值x0,导纳矩阵A和电流源向量I按各分块划分;(2)GPU接收CPU传输的集成电路电源地线网络的分块信息,并将各分块信息读入到与其线程组对应的局部内存中,具体包括步骤d:d.GPU的各线程组分别将对应各分块的导纳矩阵Ap和电流向量Ip读入到局部内存中,并在其内计算各分块的初始值k=0,rk=Ip‑Apxk,sk=zk=Bp‑1rk;其中,下标p表示分块编号;(3)GPU对上述分块信息进行预条件共轭梯度计算,具体包括步骤e~k:e.各线程组并行地计算出各分块的中间向量Apsk;f.处理各分块的中间向量Apsk之间的行间隙和列间隙,得到Ask;g.各线程组分别利用向量Ask进行以下计算处理:αk=(zk,rk)/(sk,Ask)xk+1=rk+αkskrk+1=rk‑αkAskh.将各分块向量rk+1读入共享内存并调整成按块存放的顺序;i.进行预条件计算,zk+1=Bp‑1rk+1,并将各分块zk+1的顺序调整成按块存放的 顺序;j.计算系数βk,利用βk计算sk+1,βk=(zk+1,rk+1)/(zk,rk)sk+1=zk+1‑βkskk.置k=k+1,并判断是否已经满足结束条件,若未满足,重复步骤(e)至步骤(j),若满足,计算结束;(4)GPU将计算结果输出给所述CPU。 |