| // Copyright lowRISC contributors. | 
 | // Licensed under the Apache License, Version 2.0, see LICENSE for details. | 
 | // SPDX-License-Identifier: Apache-2.0 | 
 | // | 
 | // xbar_tgl_excl.cfg generated by `topgen.py` tool | 
 |  | 
 | // [UNSUPPORTED] Exclude unused TL port signals at all hierarchies, wherever port toggle coverage is | 
 | // enabled. Exercising these reserved signals will result in assertion errors thrown by the design. | 
 | -node tb.dut*.u_* *tl_*.a_param | 
 | -node tb.dut*.u_* *tl_*.d_param | 
 | -node tb.dut*.u_* *tl_*.d_opcode[2:1] | 
 | -node tb.dut*.u_* *tl_*.a_source[7:6] | 
 | -node tb.dut*.u_* *tl_*.d_source[7:6] | 
 | -node tb.dut.top_${top["name"]} *tl_*.a_param | 
 | -node tb.dut.top_${top["name"]} *tl_*.d_param | 
 | -node tb.dut.top_${top["name"]} *tl_*.d_opcode[2:1] | 
 | -node tb.dut.top_${top["name"]} *tl_*.a_source[7:6] | 
 | -node tb.dut.top_${top["name"]} *tl_*.d_source[7:6] | 
 |  | 
 | // [LOW_RISK] Exclude the full TL a_address signal on all pass-through hierarchies. We instead look | 
 | // at the full coverage of this signal directly at the host or at the device. | 
 | -node tb.dut.top_${top["name"]} *tl_*.a_address | 
 | -node tb.dut.top_${top["name"]}.u_xbar_* tl_*.a_address | 
 |  | 
 | <% | 
 |   import tlgen.lib as lib | 
 | %>\ | 
 | // [UNR] Exclude unused address bits based on IP address range. It is not possible to cover this. | 
 | % for xbar in top["xbar"]: | 
 |   % for device in xbar["nodes"]: | 
 |     % if device["type"] == "device" and not device["xbar"]: | 
 | <% | 
 |     addr_ranges = [] | 
 |     for addr in device["addr_range"]: | 
 |       start_addr = int(addr["base_addr"], 0) | 
 |       end_addr = start_addr + int(addr["size_byte"], 0) - 1 | 
 |       addr_ranges.append((start_addr, end_addr)) | 
 |     excl_bits = lib.get_toggle_excl_bits(addr_ranges) | 
 |     dev_name = device["name"].replace('.', '__') | 
 | %>\ | 
 |       % for bit_range in excl_bits: | 
 | -node tb.dut*.u_${dev_name} *tl_i.a_address[${bit_range[1]}:${bit_range[0]}] | 
 |       % endfor | 
 |     % endif | 
 |   % endfor | 
 | % endfor |