| #!/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 |
| """ |
| Add bits that are considered always on to the db file. |
| |
| This script is Zynq specific. |
| |
| There are three bits that are present in all Zynq bitstreams. |
| The investigation that was done to reach this conclusion is captured on GH |
| (https://github.com/SymbiFlow/prjxray/issues/746) |
| In brief, these bits seem to be bitstream properties related, |
| but no evidence of this could be found. |
| Due to the fact that the base address of these bits is the same as for the |
| CFG_CENTER_MID tile it has been decided to append the bits to its db file. |
| """ |
| |
| import sys |
| |
| constant_bits = { |
| "CFG_CENTER_MID.ALWAYS_ON_PROP1": "26_2206", |
| "CFG_CENTER_MID.ALWAYS_ON_PROP2": "26_2207", |
| "CFG_CENTER_MID.ALWAYS_ON_PROP3": "27_2205" |
| } |
| |
| with open(sys.argv[1], "a") as f: |
| for bit_name, bit_value in constant_bits.items(): |
| f.write(bit_name + " " + bit_value + "\n") |