combinational_critical_path { total_delay_ps: 493 nodes { total_delay_ps: 493 op: OP_TUPLE id: 64 ir: "tuple.64: (bits[1], bits[8], bits[7]) = tuple(sign: bits[1], and.80: bits[8], and.83: bits[7], id=64, pos=[(2,394,4)])" } nodes { total_delay_ps: 493 node_delay_ps: 23 op: OP_AND id: 83 ir: "and.83: bits[7] = and(fraction: bits[7], sign_ext.82: bits[7], id=83, pos=[(2,394,4)])" } nodes { total_delay_ps: 470 op: OP_BIT_SLICE id: 68 ir: "fraction: bits[7] = bit_slice(shll.27: bits[8], start=1, width=7, id=68, pos=[(2,385,37)])" } nodes { total_delay_ps: 470 node_delay_ps: 161 op: OP_SHLL id: 27 ir: "shll.27: bits[8] = shll(x: bits[8], add.26: bits[4], id=27, pos=[(2,385,20)])" } nodes { total_delay_ps: 309 node_delay_ps: 141 op: OP_ADD id: 26 ir: "add.26: bits[4] = add(lz: bits[4], literal.25: bits[4], id=26, pos=[(2,385,26)])" } nodes { total_delay_ps: 168 node_delay_ps: 50 op: OP_ENCODE id: 22 ir: "lz: bits[4] = encode(one_hot.21: bits[9], id=22, pos=[(2,383,16)])" } nodes { total_delay_ps: 118 node_delay_ps: 118 op: OP_ONE_HOT id: 21 ir: "one_hot.21: bits[9] = one_hot(reverse.20: bits[8], lsb_prio=true, id=21, pos=[(2,383,16)])" } nodes { op: OP_REVERSE id: 20 ir: "reverse.20: bits[8] = reverse(x: bits[8], id=20, pos=[(2,383,16)])" } nodes { op: OP_PARAM id: 16 ir: "x: bits[8] = param(name=x, id=16)" } } all_nodes { op: OP_PARAM id: 16 ir: "x: bits[8] = param(name=x, id=16)" } all_nodes { op: OP_REVERSE id: 20 ir: "reverse.20: bits[8] = reverse(x: bits[8], id=20, pos=[(2,383,16)])" } all_nodes { node_delay_ps: 118 op: OP_ONE_HOT id: 21 ir: "one_hot.21: bits[9] = one_hot(reverse.20: bits[8], lsb_prio=true, id=21, pos=[(2,383,16)])" } all_nodes { node_delay_ps: 50 op: OP_ENCODE id: 22 ir: "lz: bits[4] = encode(one_hot.21: bits[9], id=22, pos=[(2,383,16)])" } all_nodes { op: OP_LITERAL id: 91 ir: "sign: bits[1] = literal(value=0, id=91, pos=[(2,387,14)])" } all_nodes { op: OP_BIT_SLICE id: 85 ir: "bit_slice.85: bits[1] = bit_slice(lz: bits[4], start=3, width=1, id=85, pos=[(2,387,14)])" } all_nodes { op: OP_BIT_SLICE id: 87 ir: "bit_slice.87: bits[3] = bit_slice(lz: bits[4], start=0, width=3, id=87, pos=[(2,387,14)])" } all_nodes { op: OP_LITERAL id: 25 ir: "literal.25: bits[4] = literal(value=1, id=25, pos=[(2,385,31)])" } all_nodes { op: OP_LITERAL id: 53 ir: "literal.53: bits[4] = literal(value=0, id=53)" } all_nodes { node_delay_ps: 22 op: OP_SUB id: 86 ir: "sub.86: bits[1] = sub(sign: bits[1], bit_slice.85: bits[1], id=86, pos=[(2,387,14)])" } all_nodes { op: OP_NOT id: 88 ir: "not.88: bits[3] = not(bit_slice.87: bits[3], id=88, pos=[(2,387,14)])" } all_nodes { op: OP_LITERAL id: 35 ir: "literal.35: bits[8] = literal(value=0, id=35, pos=[(2,394,12)])" } all_nodes { node_delay_ps: 141 op: OP_ADD id: 26 ir: "add.26: bits[4] = add(lz: bits[4], literal.25: bits[4], id=26, pos=[(2,385,26)])" } all_nodes { op: OP_CONCAT id: 92 ir: "concat.92: bits[8] = concat(literal.53: bits[4], sub.86: bits[1], not.88: bits[3], id=92)" } all_nodes { op: OP_LITERAL id: 49 ir: "BIAS: bits[8] = literal(value=127, id=49)" } all_nodes { node_delay_ps: 96 op: OP_NE id: 90 ir: "ne.90: bits[1] = ne(x: bits[8], literal.35: bits[8], id=90, pos=[(2,394,4)])" } all_nodes { node_delay_ps: 161 op: OP_SHLL id: 27 ir: "shll.27: bits[8] = shll(x: bits[8], add.26: bits[4], id=27, pos=[(2,385,20)])" } all_nodes { node_delay_ps: 212 op: OP_ADD id: 32 ir: "bexp: bits[8] = add(concat.92: bits[8], BIAS: bits[8], id=32, pos=[(2,388,15)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 79 ir: "sign_ext.79: bits[8] = sign_ext(ne.90: bits[1], new_bit_count=8, id=79, pos=[(2,394,4)])" } all_nodes { op: OP_BIT_SLICE id: 68 ir: "fraction: bits[7] = bit_slice(shll.27: bits[8], start=1, width=7, id=68, pos=[(2,385,37)])" } all_nodes { node_delay_ps: 17 op: OP_SIGN_EXT id: 82 ir: "sign_ext.82: bits[7] = sign_ext(ne.90: bits[1], new_bit_count=7, id=82, pos=[(2,394,4)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 80 ir: "and.80: bits[8] = and(bexp: bits[8], sign_ext.79: bits[8], id=80, pos=[(2,394,4)])" } all_nodes { node_delay_ps: 23 op: OP_AND id: 83 ir: "and.83: bits[7] = and(fraction: bits[7], sign_ext.82: bits[7], id=83, pos=[(2,394,4)])" } all_nodes { op: OP_TUPLE id: 64 ir: "tuple.64: (bits[1], bits[8], bits[7]) = tuple(sign: bits[1], and.80: bits[8], and.83: bits[7], id=64, pos=[(2,394,4)])" }