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