#!/usr/bin/env python3 # -*- coding: utf-8 -*- # # Copyright (C) 2017-2020 The Project X-Ray Authors. # # Use of this source code is governed by a ISC-style # license that can be found in the LICENSE file or at # https://opensource.org/licenses/ISC # # SPDX-License-Identifier: ISC import argparse def main(): parser = argparse.ArgumentParser( description="Converts generic BRAM pips to BRAM_L and BRAM_R pips.") parser.add_argument('--bram_x', required=True) parser.add_argument('--bram_l', required=True) parser.add_argument('--bram_r', required=True) args = parser.parse_args() with open(args.bram_x, 'r') as f_in, open( args.bram_l, 'w') as f_l_out, open(args.bram_r, 'w') as f_r_out: for l in f_in: # BRAM_L has the same pip names as BRAM_X print(l.strip(), file=f_l_out) # BRAM_R has some _R_ added to some pips. # # BRAM.BRAM_ADDRARDADDRL0.BRAM_IMUX_ADDRARDADDRL0 # # becomes # # BRAM.BRAM_ADDRARDADDRL0.BRAM_IMUX_R_ADDRARDADDRL0 print( l.strip().replace('BRAM_IMUX_ADDR', 'BRAM_R_IMUX_ADDR'), file=f_r_out) if __name__ == '__main__': main()