import "primitives/std.lib"; component exponent(base: 32, exp: 4, @go go: 1, @clk clk: 1, @reset reset: 1) -> (out: 32, @done done: 1) { cells { pow = std_reg(32); } wires { out = pow.out; } control {} } component main(@go go: 1, @clk clk: 1, @reset reset: 1) -> (@done done: 1) { cells { r = std_reg(32); const3 = std_const(4, 3); exp0 = exponent(); } wires { group invoke<"static"=0> { exp0.base = r.out; exp0.exp = const3.out; exp0.go = 1'd1; invoke[done] = exp0.done; } } control { @static(0) invoke; } }