2015-08-07

Verilog: 多ビットのスライス(indicing)

多bitから1bit抜き取る際のindexは変数でもよいが、スライスの際には定数でなければならない。
しかし、次の記法ならスライス表記ができる。xをスタート地点にして、そこからNこ上がるか下がるかする。

bit[x+:N]  // bit[x: x+N-1]
bit[x-:N]  // bit [x:x-N+1]

これなら

range must be bounded by constant expressions

で怒られることもない。これならforループの中でイテレータ変数をindicesに使える。

参考
system verilog - Indexing vectors and arrays with +: - Stack Overflow

0 件のコメント:

コメントを投稿

アクアリウムはじめました

通りすがりのアクアリウムショップで、ボトルアクアリウムを衝動買いしました(2月5日)。アカヒレ二匹がいます。コンラッド・ローレンツが『ソロモンの指輪』の中でアクアリウムをおすすめしていたので、試してみたかったのです。今回が初めてのアクアリウムなので簡単なものにしたく、また手間をか...