補足 - parameter値のビット幅の求め方
ある値をparameter化したのに伴い、値のビット幅もparameter化しなければならないときは、$clog2( )を使えばよい。
// データ数がDEPTH個ならそのアドレスはWAビット parameter DEPTH = 640; localparam WA = $clog2(DEPTH); reg[7:0] mem[0:DEPTH-1]; reg[WA-1:0] mem_adr; |
ここで$clog2(N)は「Nのビット幅」ではなく「N-1のビット幅」であることに注意。
$clog2(3) = 2
$clog2(4) = 2 ← $clog2(4) = 3ではない
$clog2(5) = 3