    'lui'   : 'x' + 'xxx' + '01101',
    'auipc' : 'x' + 'xxx' + '00101',
    'jal'   : 'x' + 'xxx' + '11011',
    'jalr'  : 'x' + 'xxx' + '11001',#funct3 = 000?
    'beq'   : 'x' + '000' + '11000',
    'bne'   : 'x' + '001' + '11000',
    'blt'   : 'x' + '100' + '11000',
    'bge'   : 'x' + '101' + '11000',
    'bltu'  : 'x' + '110' + '11000',
    'bgeu'  : 'x' + '111' + '11000',
    'lb'    : 'x' + '000' + '00000',
    'lh'    : 'x' + '001' + '00000',
    'lw'    : 'x' + '010' + '00000',
    'lbu'   : 'x' + '100' + '00000',
    'lhu'   : 'x' + '101' + '00000',
    'sb'    : 'x' + '000' + '01000',
    'sh'    : 'x' + '001' + '01000',
    'sw'    : 'x' + '010' + '01000',
    'addi'  : 'x' + '000' + '00100',
    'slti'  : 'x' + '010' + '00100',
    'sltiu' : 'x' + '011' + '00100',
    'xori'  : 'x' + '100' + '00100',
    'ori'   : 'x' + '110' + '00100',
    'andi'  : 'x' + '111' + '00100',
    'slli'  : '0' + '001' + '00100',
    'srli'  : '0' + '101' + '00100',
    'srai'  : '1' + '101' + '00100',
    'add'   : '0' + '000' + '01100',
    'sub'   : '1' + '000' + '01100',
    'sll'   : '0' + '001' + '01100',
    'slt'   : '0' + '010' + '01100',
    'sltu'  : '0' + '011' + '01100',
    'xor'   : '0' + '100' + '01100',
    'srl'   : '0' + '101' + '01100',
    'sra'   : '1' + '101' + '01100',
    'or'    : '0' + '110' + '01100',
    'and'   : '0' + '111' + '01100',
    'fence' : 'x' + 'xxx' + '00011',#funct3=000?
    'ecall' : 'x' + '000' + '11100',#ebreak same but op20=1
    'csrrw' : 'x' + '001' + '11100',
    'csrrs' : 'x' + '010' + '11100',
    'csrrc' : 'x' + '011' + '11100',
    'csrrwi': 'x' + '101' + '11100',
    'csrrsi': 'x' + '110' + '11100',
    'csrrci': 'x' + '111' + '11100',
