diff --git a/Makefile b/Makefile index 53c38789b..130ea78b2 100644 --- a/Makefile +++ b/Makefile @@ -185,7 +185,7 @@ $(foreach DB,$(DATABASES),$(eval $(call database,$(DB)))) ARTIX_PARTS=artix7_50t artix7_200t ZYNQ_PARTS=zynq7010 -KINTEX_PARTS= +KINTEX_PARTS=kintex7_325t SPARTAN_PARTS= XRAY_PARTS=${ARTIX_PARTS} ${ZYNQ_PARTS} ${KINTEX_PARTS} ${SPARTAN_PARTS} @@ -275,4 +275,4 @@ clean: $(MAKE) -C fuzzers clean rm -rf build -.PHONY: clean \ No newline at end of file +.PHONY: clean diff --git a/fuzzers/074-dump_all/ignored_wires/kintex7/xc7k325tffg900-2_ignored_wires.txt b/fuzzers/074-dump_all/ignored_wires/kintex7/xc7k325tffg900-2_ignored_wires.txt new file mode 100644 index 000000000..239eab98e --- /dev/null +++ b/fuzzers/074-dump_all/ignored_wires/kintex7/xc7k325tffg900-2_ignored_wires.txt @@ -0,0 +1,220 @@ +LIOI3_TBYTETERM_X0Y337/LIOI_I2GCLK_TOP1 +RIOI_TBYTESRC_X95Y81/RIOI_I2GCLK_TOP1 +CMT_TOP_R_UPPER_B_X8Y239/CMT_PHASER_UP_DQS_TO_PHASER_D +LIOI3_X0Y9/LIOI_I2GCLK_BOT1 +RIOI_X95Y71/RIOI_I2GCLK_BOT1 +RIOI_TBYTESRC_X95Y31/RIOI_I2GCLK_BOT1 +RIOI_X95Y105/RIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y257/LIOI_I2GCLK_TOP1 +RIOI_TBYTESRC_X95Y131/RIOI_I2GCLK_BOT1 +CMT_TOP_L_LOWER_T_X228Y18/CMT_PHASER_DOWN_DQS_TO_PHASER_A +LIOI3_TBYTESRC_X0Y181/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y181/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y69/LIOI_I2GCLK_TOP1 +RIOI_TBYTETERM_X95Y137/RIOI_I2GCLK_TOP1 +RIOI_TBYTESRC_X95Y93/RIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y113/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y119/LIOI_I2GCLK_BOT1 +RIOI_TBYTETERM_X95Y13/RIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y213/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y13/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y143/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y219/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y331/LIOI_I2GCLK_TOP1 +RIOI_X95Y21/RIOI_I2GCLK_BOT1 +LIOI3_X0Y129/LIOI_I2GCLK_TOP1 +RIOI_TBYTESRC_X95Y119/RIOI_I2GCLK_BOT1 +CMT_TOP_R_LOWER_T_X8Y330/CMT_PHASER_DOWN_DQS_TO_PHASER_A +LIOI3_TBYTESRC_X0Y343/LIOI_I2GCLK_TOP1 +LIOI3_X0Y345/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y43/LIOI_I2GCLK_TOP1 +RIOI_TBYTESRC_X95Y119/RIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y113/LIOI_I2GCLK_TOP1 +RIOI_X95Y41/RIOI_I2GCLK_TOP1 +CMT_TOP_R_LOWER_T_X8Y226/CMT_PHASER_DOWN_DQS_TO_PHASER_A +RIOI_X95Y95/RIOI_I2GCLK_BOT1 +LIOI3_X0Y179/LIOI_I2GCLK_TOP1 +LIOI3_X0Y141/LIOI_I2GCLK_TOP1 +LIOI3_X0Y217/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y281/LIOI_I2GCLK_BOT1 +LIOI3_X0Y255/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y93/LIOI_I2GCLK_TOP1 +LIOI3_X0Y83/LIOI_I2GCLK_BOT1 +RIOI_TBYTESRC_X95Y7/RIOI_I2GCLK_TOP1 +LIOI3_X0Y21/LIOI_I2GCLK_BOT1 +RIOI_X95Y33/RIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y81/LIOI_I2GCLK_BOT1 +RIOI_X95Y29/RIOI_I2GCLK_TOP1 +RIOI_TBYTESRC_X95Y143/RIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y63/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y343/LIOI_I2GCLK_BOT1 +LIOI3_TBYTETERM_X0Y313/LIOI_I2GCLK_BOT1 +LIOI3_X0Y183/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y193/LIOI_I2GCLK_BOT1 +LIOI3_X0Y41/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y263/LIOI_I2GCLK_BOT1 +CMT_TOP_R_LOWER_T_X8Y174/CMT_PHASER_DOWN_DQS_TO_PHASER_A +LIOI3_X0Y195/LIOI_I2GCLK_BOT1 +LIOI3_X0Y241/LIOI_I2GCLK_TOP1 +LIOI3_X0Y105/LIOI_I2GCLK_TOP1 +LIOI3_X0Y17/LIOI_I2GCLK_TOP1 +LIOI3_X0Y121/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y169/LIOI_I2GCLK_TOP1 +LIOI3_X0Y191/LIOI_I2GCLK_TOP1 +RIOI_TBYTETERM_X95Y87/RIOI_I2GCLK_BOT1 +CMT_TOP_L_LOWER_T_X228Y70/CMT_PHASER_DOWN_DQS_TO_PHASER_A +LIOI3_TBYTESRC_X0Y193/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y187/LIOI_I2GCLK_BOT1 +CMT_TOP_L_UPPER_B_X228Y83/CMT_PHASER_UP_DQS_TO_PHASER_D +LIOI3_TBYTESRC_X0Y207/LIOI_I2GCLK_TOP1 +RIOI_X95Y17/RIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y237/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y293/LIOI_I2GCLK_BOT1 +LIOI3_TBYTETERM_X0Y13/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y87/LIOI_I2GCLK_TOP1 +LIOI3_X0Y67/LIOI_I2GCLK_TOP1 +LIOI3_X0Y305/LIOI_I2GCLK_TOP1 +LIOI3_X0Y167/LIOI_I2GCLK_TOP1 +LIOI3_X0Y55/LIOI_I2GCLK_TOP1 +LIOI3_X0Y79/LIOI_I2GCLK_TOP1 +RIOI_TBYTESRC_X95Y57/RIOI_I2GCLK_TOP1 +RIOI_TBYTESRC_X95Y19/RIOI_I2GCLK_TOP1 +LIOI3_X0Y155/LIOI_I2GCLK_TOP1 +CMT_TOP_R_UPPER_B_X8Y187/CMT_PHASER_UP_DQS_TO_PHASER_D +RIOI_TBYTESRC_X95Y93/RIOI_I2GCLK_BOT1 +RIOI_TBYTESRC_X95Y43/RIOI_I2GCLK_BOT1 +LIOI3_TBYTETERM_X0Y313/LIOI_I2GCLK_TOP1 +LIOI3_X0Y159/LIOI_I2GCLK_BOT1 +RIOI_TBYTETERM_X95Y137/RIOI_I2GCLK_BOT1 +RIOI_TBYTESRC_X95Y57/RIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y31/LIOI_I2GCLK_BOT1 +RIOI_TBYTESRC_X95Y19/RIOI_I2GCLK_BOT1 +RIOI_TBYTESRC_X95Y107/RIOI_I2GCLK_BOT1 +RIOI_TBYTESRC_X95Y69/RIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y157/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y87/LIOI_I2GCLK_BOT1 +RIOI_TBYTESRC_X95Y143/RIOI_I2GCLK_BOT1 +LIOI3_X0Y45/LIOI_I2GCLK_BOT1 +RIOI_X95Y5/RIOI_I2GCLK_TOP1 +RIOI_X95Y129/RIOI_I2GCLK_TOP1 +RIOI_TBYTESRC_X95Y7/RIOI_I2GCLK_BOT1 +RIOI_TBYTETERM_X95Y63/RIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y331/LIOI_I2GCLK_BOT1 +CMT_TOP_R_UPPER_B_X8Y135/CMT_PHASER_UP_DQS_TO_PHASER_D +LIOI3_X0Y145/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y131/LIOI_I2GCLK_TOP1 +CMT_TOP_L_LOWER_T_X228Y122/CMT_PHASER_DOWN_DQS_TO_PHASER_A +RIOI_TBYTETERM_X95Y37/RIOI_I2GCLK_BOT1 +LIOI3_X0Y329/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y319/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y7/LIOI_I2GCLK_BOT1 +RIOI_X95Y133/RIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y57/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y137/LIOI_I2GCLK_BOT1 +LIOI3_X0Y321/LIOI_I2GCLK_BOT1 +RIOI_TBYTETERM_X95Y13/RIOI_I2GCLK_BOT1 +LIOI3_X0Y259/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y169/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y257/LIOI_I2GCLK_BOT1 +LIOI3_X0Y279/LIOI_I2GCLK_TOP1 +RIOI_X95Y145/RIOI_I2GCLK_BOT1 +RIOI_TBYTETERM_X95Y113/RIOI_I2GCLK_TOP1 +CMT_TOP_R_LOWER_T_X8Y122/CMT_PHASER_DOWN_DQS_TO_PHASER_A +CMT_TOP_R_UPPER_B_X8Y31/CMT_PHASER_UP_DQS_TO_PHASER_D +LIOI3_TBYTETERM_X0Y37/LIOI_I2GCLK_TOP1 +CMT_TOP_R_LOWER_T_X8Y70/CMT_PHASER_DOWN_DQS_TO_PHASER_A +LIOI3_TBYTESRC_X0Y231/LIOI_I2GCLK_TOP1 +LIOI3_X0Y267/LIOI_I2GCLK_TOP1 +CMT_TOP_L_UPPER_B_X228Y135/CMT_PHASER_UP_DQS_TO_PHASER_D +RIOI_TBYTESRC_X95Y69/RIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y231/LIOI_I2GCLK_BOT1 +RIOI_X95Y117/RIOI_I2GCLK_TOP1 +RIOI_TBYTESRC_X95Y31/RIOI_I2GCLK_TOP1 +RIOI_X95Y141/RIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y269/LIOI_I2GCLK_TOP1 +LIOI3_X0Y205/LIOI_I2GCLK_TOP1 +CMT_TOP_R_LOWER_T_X8Y18/CMT_PHASER_DOWN_DQS_TO_PHASER_A +LIOI3_X0Y71/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y19/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y107/LIOI_I2GCLK_BOT1 +CMT_TOP_R_UPPER_B_X8Y83/CMT_PHASER_UP_DQS_TO_PHASER_D +RIOI_TBYTETERM_X95Y63/RIOI_I2GCLK_TOP1 +CMT_TOP_L_UPPER_B_X228Y31/CMT_PHASER_UP_DQS_TO_PHASER_D +RIOI_X95Y67/RIOI_I2GCLK_TOP1 +RIOI_TBYTETERM_X95Y37/RIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y69/LIOI_I2GCLK_BOT1 +RIOI_X95Y91/RIOI_I2GCLK_TOP1 +RIOI_TBYTETERM_X95Y87/RIOI_I2GCLK_TOP1 +LIOI3_X0Y341/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y213/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y57/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y43/LIOI_I2GCLK_BOT1 +LIOI3_X0Y95/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y219/LIOI_I2GCLK_TOP1 +LIOI3_X0Y91/LIOI_I2GCLK_TOP1 +LIOI3_X0Y309/LIOI_I2GCLK_BOT1 +RIOI_TBYTESRC_X95Y131/RIOI_I2GCLK_TOP1 +LIOI3_X0Y29/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y243/LIOI_I2GCLK_TOP1 +RIOI_TBYTESRC_X95Y43/RIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y31/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y163/LIOI_I2GCLK_BOT1 +LIOI3_X0Y5/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y337/LIOI_I2GCLK_BOT1 +LIOI3_TBYTETERM_X0Y63/LIOI_I2GCLK_BOT1 +LIOI3_TBYTETERM_X0Y187/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y37/LIOI_I2GCLK_BOT1 +RIOI_X95Y59/RIOI_I2GCLK_BOT1 +LIOI3_X0Y317/LIOI_I2GCLK_TOP1 +LIOI3_X0Y233/LIOI_I2GCLK_BOT1 +LIOI3_X0Y283/LIOI_I2GCLK_BOT1 +LIOI3_X0Y291/LIOI_I2GCLK_TOP1 +RIOI_X95Y9/RIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y243/LIOI_I2GCLK_BOT1 +LIOI3_X0Y171/LIOI_I2GCLK_BOT1 +RIOI_X95Y55/RIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y107/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y281/LIOI_I2GCLK_TOP1 +LIOI3_X0Y333/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y143/LIOI_I2GCLK_TOP1 +CMT_TOP_R_UPPER_B_X8Y343/CMT_PHASER_UP_DQS_TO_PHASER_D +LIOI3_X0Y59/LIOI_I2GCLK_BOT1 +LIOI3_TBYTETERM_X0Y137/LIOI_I2GCLK_TOP1 +LIOI3_X0Y133/LIOI_I2GCLK_BOT1 +RIOI_X95Y109/RIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y307/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y163/LIOI_I2GCLK_TOP1 +LIOI3_X0Y117/LIOI_I2GCLK_TOP1 +RIOI_X95Y83/RIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y319/LIOI_I2GCLK_TOP1 +LIOI3_X0Y109/LIOI_I2GCLK_BOT1 +LIOI3_X0Y33/LIOI_I2GCLK_BOT1 +LIOI3_X0Y271/LIOI_I2GCLK_BOT1 +RIOI_TBYTESRC_X95Y107/RIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y237/LIOI_I2GCLK_BOT1 +LIOI3_X0Y221/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y207/LIOI_I2GCLK_BOT1 +LIOI3_TBYTETERM_X0Y287/LIOI_I2GCLK_BOT1 +LIOI3_TBYTETERM_X0Y263/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y307/LIOI_I2GCLK_BOT1 +CMT_TOP_R_UPPER_B_X8Y291/CMT_PHASER_UP_DQS_TO_PHASER_D +LIOI3_X0Y209/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y119/LIOI_I2GCLK_TOP1 +LIOI3_TBYTETERM_X0Y287/LIOI_I2GCLK_TOP1 +RIOI_X95Y121/RIOI_I2GCLK_BOT1 +CMT_TOP_R_LOWER_T_X8Y278/CMT_PHASER_DOWN_DQS_TO_PHASER_A +LIOI3_TBYTESRC_X0Y19/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y293/LIOI_I2GCLK_TOP1 +LIOI3_X0Y245/LIOI_I2GCLK_BOT1 +RIOI_X95Y79/RIOI_I2GCLK_TOP1 +RIOI_X95Y45/RIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y131/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y7/LIOI_I2GCLK_TOP1 +LIOI3_X0Y229/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y157/LIOI_I2GCLK_BOT1 +LIOI3_X0Y295/LIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y81/LIOI_I2GCLK_TOP1 +LIOI3_TBYTESRC_X0Y269/LIOI_I2GCLK_BOT1 +RIOI_TBYTESRC_X95Y81/RIOI_I2GCLK_BOT1 +RIOI_TBYTETERM_X95Y113/RIOI_I2GCLK_BOT1 +LIOI3_TBYTESRC_X0Y93/LIOI_I2GCLK_BOT1 diff --git a/settings/kintex7/devices.yaml b/settings/kintex7/devices.yaml index e889e781e..79e8fab70 100644 --- a/settings/kintex7/devices.yaml +++ b/settings/kintex7/devices.yaml @@ -1,3 +1,5 @@ # device to fabric mapping "xc7k70t": fabric: "xc7k70t" +"xc7k325t": + fabric: "xc7k325t" diff --git a/settings/kintex7_325t.sh b/settings/kintex7_325t.sh new file mode 100644 index 000000000..e18c52079 --- /dev/null +++ b/settings/kintex7_325t.sh @@ -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="kintex7" +export XRAY_PART="xc7k325tffg900-2" +export XRAY_ROI_FRAMES="0x00000000:0xffffffff" + +# FIXME: make entire part +# export XRAY_ROI_TILEGRID="SLICE_X0Y0:SLICE_X145Y349 DSP48_X0Y0:DSP48_X5Y138 RAMB18_X0Y0:RAMB18_X5Y139 RAMB36_X0Y0:RAMB36_X5Y69" + +export XRAY_EXCLUDE_ROI_TILEGRID="" + +export XRAY_IOI3_TILES="LIOI3_X0Y9" + +# These settings must remain in sync +export XRAY_ROI="SLICE_X0Y0:SLICE_X145Y349 DSP48_X0Y0:DSP48_X5Y138 RAMB18_X0Y0:RAMB18_X5Y139 RAMB36_X0Y0:RAMB36_X5Y69 IOB_X0Y0:IOB_X0Y15" +# Part of CMT X0Y1 +export XRAY_ROI_GRID_X1="0" +export XRAY_ROI_GRID_X2="38" +# Include VBRK / VTERM +export XRAY_ROI_GRID_Y1="104" +export XRAY_ROI_GRID_Y2="156" + +source $(dirname ${BASH_SOURCE[0]})/../utils/environment.sh + +env=$(python3 ${XRAY_UTILS_DIR}/create_environment.py) +ENV_RET=$? +if [[ $ENV_RET != 0 ]] ; then + return $ENV_RET +fi +eval $env