Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding Spartan7 50 to kokoro #1535

Closed
wants to merge 3 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/kokoro/continuous-db-spartan7.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Format: //devtools/kokoro/config/proto/build.proto

build_file: "symbiflow-prjxray-continuous-db-spartan7/.github/kokoro/nothing.sh"
build_file: "symbiflow-prjxray-continuous-db-spartan7/.github/kokoro/db-full.sh"

timeout_mins: 4320

Expand Down
6 changes: 1 addition & 5 deletions .github/kokoro/kokoro-cfg.py
Original file line number Diff line number Diff line change
Expand Up @@ -57,11 +57,7 @@
"""

for part in ['artix7', 'kintex7', 'zynq7', 'spartan7']:
if part != 'spartan7':
script = 'db-full.sh'
else:
# Emit dummy script for spartan7 for now until it is working.
script = 'nothing.sh'
script = 'db-full.sh'

with open("continuous-db-%s.cfg" % part, "w") as f:
f.write(
Expand Down
2 changes: 1 addition & 1 deletion .github/kokoro/presubmit-db-spartan7.cfg
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Format: //devtools/kokoro/config/proto/build.proto

build_file: "symbiflow-prjxray-presubmit-db-spartan7/.github/kokoro/nothing.sh"
build_file: "symbiflow-prjxray-presubmit-db-spartan7/.github/kokoro/db-full.sh"

timeout_mins: 4320

Expand Down
12 changes: 10 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -132,7 +132,7 @@ check-license:
# Targets related to Project X-Ray databases
# ------------------------

DATABASES=artix7 kintex7 zynq7
DATABASES=artix7 spartan7 kintex7 zynq7

define database

Expand Down Expand Up @@ -173,10 +173,11 @@ $(foreach DB,$(DATABASES),$(eval $(call database,$(DB))))
# --------------------------------------

ARTIX_PARTS=artix7_50t artix7_200t
SPARTAN_PARTS=
ZYNQ_PARTS=zynq7010
KINTEX_PARTS=kintex70t

XRAY_PARTS=${ARTIX_PARTS} ${ZYNQ_PARTS} ${KINTEX_PARTS}
XRAY_PARTS=${ARTIX_PARTS} ${SPARTAN_PARTS} ${ZYNQ_PARTS} ${KINTEX_PARTS}

define multiple-parts

Expand Down Expand Up @@ -223,6 +224,13 @@ db-extras-artix7-harness:
$(MAKE) -C minitests/roi_harness \
HARNESS_DIR=$(XRAY_DATABASE_DIR)/artix7/harness/arty-a7/swbut copy

db-extras-spartan7-parts: $(addprefix db-part-only-,$(SPARTAN_PARTS))

db-extras-spartan7-harness:
+source settings/spartan7_50.sh && \
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is not required anymore.

XRAY_PART=xc7s50csga324-1 \
$(MAKE) -C fuzzers roi_only

db-extras-kintex7-parts:
@true

Expand Down
3 changes: 3 additions & 0 deletions database/spartan7/mapping/devices.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

9 changes: 9 additions & 0 deletions database/spartan7/mapping/parts.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions database/spartan7/settings.sh

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
LIOI3_TBYTESRC_X0Y143/LIOI_I2GCLK_TOP1
LIOI3_X0Y145/LIOI_I2GCLK_BOT1
LIOI3_X0Y141/LIOI_I2GCLK_TOP1
CMT_TOP_R_UPPER_B_X8Y135/CMT_PHASER_UP_DQS_TO_PHASER_D
LIOI3_TBYTESRC_X0Y143/LIOI_I2GCLK_BOT1
LIOI3_TBYTETERM_X0Y137/LIOI_I2GCLK_TOP1
LIOI3_TBYTETERM_X0Y137/LIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y131/LIOI_I2GCLK_TOP1
LIOI3_X0Y129/LIOI_I2GCLK_TOP1
LIOI3_X0Y133/LIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y131/LIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y119/LIOI_I2GCLK_TOP1
LIOI3_X0Y117/LIOI_I2GCLK_TOP1
LIOI3_X0Y121/LIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y119/LIOI_I2GCLK_BOT1
LIOI3_TBYTETERM_X0Y113/LIOI_I2GCLK_TOP1
LIOI3_TBYTETERM_X0Y113/LIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y107/LIOI_I2GCLK_TOP1
LIOI3_X0Y105/LIOI_I2GCLK_TOP1
CMT_TOP_R_LOWER_T_X8Y122/CMT_PHASER_DOWN_DQS_TO_PHASER_A
LIOI3_X0Y109/LIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y107/LIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y93/LIOI_I2GCLK_TOP1
RIOI3_TBYTESRC_X43Y93/RIOI_I2GCLK_TOP1
LIOI3_X0Y91/LIOI_I2GCLK_TOP1
CMT_TOP_R_UPPER_B_X8Y83/CMT_PHASER_UP_DQS_TO_PHASER_D
LIOI3_X0Y95/LIOI_I2GCLK_BOT1
CMT_TOP_L_UPPER_B_X106Y83/CMT_PHASER_UP_DQS_TO_PHASER_D
RIOI3_X43Y91/RIOI_I2GCLK_TOP1
RIOI3_X43Y95/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y93/LIOI_I2GCLK_BOT1
RIOI3_TBYTESRC_X43Y93/RIOI_I2GCLK_BOT1
LIOI3_TBYTETERM_X0Y87/LIOI_I2GCLK_TOP1
RIOI3_TBYTETERM_X43Y87/RIOI_I2GCLK_TOP1
LIOI3_TBYTETERM_X0Y87/LIOI_I2GCLK_BOT1
RIOI3_TBYTETERM_X43Y87/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y81/LIOI_I2GCLK_TOP1
RIOI3_TBYTESRC_X43Y81/RIOI_I2GCLK_TOP1
LIOI3_X0Y79/LIOI_I2GCLK_TOP1
LIOI3_X0Y83/LIOI_I2GCLK_BOT1
RIOI3_X43Y79/RIOI_I2GCLK_TOP1
RIOI3_X43Y83/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y81/LIOI_I2GCLK_BOT1
RIOI3_TBYTESRC_X43Y81/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y69/LIOI_I2GCLK_TOP1
RIOI3_TBYTESRC_X43Y69/RIOI_I2GCLK_TOP1
LIOI3_X0Y67/LIOI_I2GCLK_TOP1
LIOI3_X0Y71/LIOI_I2GCLK_BOT1
RIOI3_X43Y67/RIOI_I2GCLK_TOP1
RIOI3_X43Y71/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y69/LIOI_I2GCLK_BOT1
RIOI3_TBYTESRC_X43Y69/RIOI_I2GCLK_BOT1
LIOI3_TBYTETERM_X0Y63/LIOI_I2GCLK_TOP1
RIOI3_TBYTETERM_X43Y63/RIOI_I2GCLK_TOP1
LIOI3_TBYTETERM_X0Y63/LIOI_I2GCLK_BOT1
RIOI3_TBYTETERM_X43Y63/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y57/LIOI_I2GCLK_TOP1
RIOI3_TBYTESRC_X43Y57/RIOI_I2GCLK_TOP1
CMT_TOP_R_LOWER_T_X8Y70/CMT_PHASER_DOWN_DQS_TO_PHASER_A
LIOI3_X0Y55/LIOI_I2GCLK_TOP1
LIOI3_X0Y59/LIOI_I2GCLK_BOT1
RIOI3_X43Y59/RIOI_I2GCLK_BOT1
RIOI3_X43Y55/RIOI_I2GCLK_TOP1
CMT_TOP_L_LOWER_T_X106Y70/CMT_PHASER_DOWN_DQS_TO_PHASER_A
LIOI3_TBYTESRC_X0Y57/LIOI_I2GCLK_BOT1
RIOI3_TBYTESRC_X43Y57/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y43/LIOI_I2GCLK_TOP1
RIOI3_TBYTESRC_X43Y43/RIOI_I2GCLK_TOP1
CMT_TOP_R_UPPER_B_X8Y31/CMT_PHASER_UP_DQS_TO_PHASER_D
LIOI3_X0Y45/LIOI_I2GCLK_BOT1
LIOI3_X0Y41/LIOI_I2GCLK_TOP1
CMT_TOP_L_UPPER_B_X106Y31/CMT_PHASER_UP_DQS_TO_PHASER_D
RIOI3_X43Y41/RIOI_I2GCLK_TOP1
RIOI3_X43Y45/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y43/LIOI_I2GCLK_BOT1
RIOI3_TBYTESRC_X43Y43/RIOI_I2GCLK_BOT1
LIOI3_TBYTETERM_X0Y37/LIOI_I2GCLK_TOP1
RIOI3_TBYTETERM_X43Y37/RIOI_I2GCLK_TOP1
LIOI3_TBYTETERM_X0Y37/LIOI_I2GCLK_BOT1
RIOI3_TBYTETERM_X43Y37/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y31/LIOI_I2GCLK_TOP1
RIOI3_TBYTESRC_X43Y31/RIOI_I2GCLK_TOP1
LIOI3_X0Y33/LIOI_I2GCLK_BOT1
LIOI3_X0Y29/LIOI_I2GCLK_TOP1
RIOI3_X43Y29/RIOI_I2GCLK_TOP1
RIOI3_X43Y33/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y31/LIOI_I2GCLK_BOT1
RIOI3_TBYTESRC_X43Y31/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y19/LIOI_I2GCLK_TOP1
RIOI3_TBYTESRC_X43Y19/RIOI_I2GCLK_TOP1
LIOI3_X0Y17/LIOI_I2GCLK_TOP1
LIOI3_X0Y21/LIOI_I2GCLK_BOT1
RIOI3_X43Y17/RIOI_I2GCLK_TOP1
RIOI3_X43Y21/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y19/LIOI_I2GCLK_BOT1
RIOI3_TBYTESRC_X43Y19/RIOI_I2GCLK_BOT1
LIOI3_TBYTETERM_X0Y13/LIOI_I2GCLK_TOP1
RIOI3_TBYTETERM_X43Y13/RIOI_I2GCLK_TOP1
LIOI3_TBYTETERM_X0Y13/LIOI_I2GCLK_BOT1
RIOI3_TBYTETERM_X43Y13/RIOI_I2GCLK_BOT1
LIOI3_TBYTESRC_X0Y7/LIOI_I2GCLK_TOP1
RIOI3_TBYTESRC_X43Y7/RIOI_I2GCLK_TOP1
LIOI3_X0Y9/LIOI_I2GCLK_BOT1
LIOI3_X0Y5/LIOI_I2GCLK_TOP1
CMT_TOP_R_LOWER_T_X8Y18/CMT_PHASER_DOWN_DQS_TO_PHASER_A
RIOI3_X43Y9/RIOI_I2GCLK_BOT1
CMT_TOP_L_LOWER_T_X106Y18/CMT_PHASER_DOWN_DQS_TO_PHASER_A
RIOI3_X43Y5/RIOI_I2GCLK_TOP1
LIOI3_TBYTESRC_X0Y7/LIOI_I2GCLK_BOT1
RIOI3_TBYTESRC_X43Y7/RIOI_I2GCLK_BOT1
8 changes: 8 additions & 0 deletions settings/spartan7.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,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
source $(dirname ${BASH_SOURCE[0]})/spartan7_50.sh
19 changes: 19 additions & 0 deletions settings/spartan7/resources.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# part number to pins
"xc7s50fgga484-1":
pins:
0: "F14"
1: "F13"
2: "F12"
3: "F11"
4: "G11"
5: "G10"
6: "G13"
"xc7s50csga324-1":
pins:
0: "F14"
1: "F13"
2: "H16"
3: "H13"
4: "H14"
5: "H15"
6: "G13"
35 changes: 35 additions & 0 deletions settings/spartan7_50.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
# 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
export XRAY_DATABASE="spartan7"
export XRAY_PART="xc7s50fgga484-1"
export XRAY_ROI_FRAMES="0x00000000:0xffffffff"

# All CLB's in part, all BRAM's in part, all DSP's in part.
# tcl queries IOB => don't bother adding
export XRAY_ROI_TILEGRID="SLICE_X0Y0:SLICE_X65Y99 SLICE_X0Y100:SLICE_X57Y149 RAMB18_X0Y0:RAMB18_X1Y59 RAMB36_X0Y0:RAMB36_X1Y29 RAMB18_X2Y0:RAMB18_X2Y39 RAMB36_X2Y0:RAMB36_X2Y19 DSP48_X0Y0:DSP48_X1Y59"

export XRAY_EXCLUDE_ROI_TILEGRID=""

# This is used by fuzzers/005-tilegrid/generate_full.py
# (special handling for frame addresses of certain IOIs -- see the script for details).
# This needs to be changed for any new device!
# If you have a FASM mismatch or unknown bits in IOIs, CHECK THIS FIRST.
export XRAY_IOI3_TILES="LIOI3_X0Y9 RIOI3_X43Y9"

# These settings must remain in sync
export XRAY_ROI="SLICE_X0Y100:SLICE_X35Y149 RAMB18_X0Y40:RAMB18_X0Y59 RAMB36_X0Y20:RAMB36_X0Y29 DSP48_X0Y40:DSP48_X0Y59 IOB_X0Y100:IOB_X0Y149"
# Most of CMT X0Y2.
export XRAY_ROI_GRID_X1="10"
export XRAY_ROI_GRID_X2="58"
# Include VBRK / VTERM
export XRAY_ROI_GRID_Y1="0"
export XRAY_ROI_GRID_Y2="51"

source $(dirname ${BASH_SOURCE[0]})/../utils/environment.sh

eval $(python3 ${XRAY_UTILS_DIR}/create_environment.py)