3.5.8.22PDM→L2BM分配命令
指定したグループのPDMから読み出したデータを 8 分割して各グループのL2BMに書き込む。
単位動作はPDM側 512 長語、L2BM側 64 長語である。分割方法は 16 長語単位で 0 から 7 のL2B通し
番号方向にラウンドロビンである。詳細は効果のパートを参照のこと。
スループットはPDM側 8 長語/サイクル、L2BM側 1 長語/サイクルである。
文法
mvd/n[]$p<addr_p>@<group_p> $lc<addr_c>
code:txt
効果
uint_t n=size / 64
for i= 0:n
uint_t src_addr=addr_p + 512 *i
uint_t dst_offset= addr_c+ 64 * i
LongWord buf512 =MEMgroup_p.pdmsrc_addr:src_addr+512
for j= 0:4
forall group,l2b
uint_t buf_addr = (j* 8 + group* 2 +l2b) * 16
uint_t dst_addr =dst_offset +j* 16
MEMgroupl2b.l2bmdst_addr:dst_addr+16 = bufbuf_addr:buf_addr+16
code:txt
エラー
sizeが単位動作 64 の倍数でないとエラーになる。
code:txt
例
mvd/n64 $p0@0 $lc0
code:txt
0 番グループのPDMから 512 長語を読んで各L2BMに 64 長語ずつ書き込む。