... | @@ -44,7 +44,7 @@ pub struct Row { |
... | @@ -44,7 +44,7 @@ pub struct Row { |
|
- value_hi:cnt >= 16的Bytecode的最终累加值,即最终的acc_hi
|
|
- value_hi:cnt >= 16的Bytecode的最终累加值,即最终的acc_hi
|
|
- value_lo:cnt < 15的Bytecode的最终累加值,即最终的acc_lo
|
|
- value_lo:cnt < 15的Bytecode的最终累加值,即最终的acc_lo
|
|
|
|
|
|
注:Opcode的 cnt、is_high、acc_hi、acc_lo、value_hi、value_lo值都为0
|
|
注:Opcode(非PUSH)的 cnt、is_high、acc_hi、acc_lo、value_hi、value_lo值都为0
|
|
|
|
|
|
假如有如下指令:
|
|
假如有如下指令:
|
|
|
|
|
... | @@ -186,7 +186,7 @@ cnt_prev!=0, cnt=0,value_hi=acc_hi, value_lo=acc_lo |
... | @@ -186,7 +186,7 @@ cnt_prev!=0, cnt=0,value_hi=acc_hi, value_lo=acc_lo |
|
|
|
|
|
## Lookup约束
|
|
## Lookup约束
|
|
|
|
|
|
每一个byte都应该在fixed电路中Lookup到,即每一个字节大小都应该在0~255范围内
|
|
每一个byte都应该在fixed电路中Lookup到,即每一个字节大小都应该在0~255范围内(是否真的有必要进行Lookup,因为bytecode列是从instance_bytecode来的,是公共数据)
|
|
|
|
|
|
Lookup Fixed table, 约束Bytecode是否为正确的Opcode
|
|
Lookup Fixed table, 约束Bytecode是否为正确的Opcode, <tag=Bytecode, bytecode, is_push, cnt>
|
|
|
|
|