iob: PULLTYPE

Signed-off-by: John McMaster <johndmcmaster@gmail.com>
This commit is contained in:
John McMaster 2018-12-17 17:52:16 -08:00
parent 7e25affa0e
commit 2dee2b329b
4 changed files with 19 additions and 23 deletions

View File

@ -1,26 +1,16 @@
N := 1
SPECIMENS := $(addprefix build/specimen_,$(shell seq -f '%03.0f' $(N)))
SPECIMENS_OK := $(addsuffix /OK,$(SPECIMENS))
include ../fuzzer.mk
database: $(SPECIMENS_OK)
${XRAY_SEGMATCH} -o build/segbits_ioblx.db $(addsuffix /segdata_liob33.txt,$(SPECIMENS))
database: build/segbits_liob33.db
#pushdb:
# ${XRAY_MERGEDB} ioblm_l build/segbits_ioblx.db
# ${XRAY_MERGEDB} ioblm_r build/segbits_ioblx.db
build/segbits_liob33.rdb:
${XRAY_SEGMATCH} -o build/segbits_liob33.rdb $(addsuffix /segdata_liob33.txt,$(SPECIMENS))
$(SPECIMENS_OK):
bash generate.sh $(subst /OK,,$@)
touch $@
build/segbits_liob33.db: build/segbits_liob33.rdb
${XRAY_DBFIXUP} --db-root build --zero-db bits.dbf --seg-fn-in $^ --seg-fn-out $@
run:
$(MAKE) clean
$(MAKE) database
$(MAKE) pushdb
touch run.ok
pushdb:
${XRAY_MERGEDB} liob33 build/segbits_liob33.db
clean:
rm -rf build
.PHONY: database pushdb run clean
.PHONY: database pushdb

1
fuzzers/030-iob/bits.dbf Normal file
View File

@ -0,0 +1 @@
38_98 39_97 39_99,LIOB33.IOB_Y1.PULLTYPE.PULLDOWN

View File

@ -1,6 +1,7 @@
#!/usr/bin/env python3
from prjxray.segmaker import Segmaker
from prjxray import segmaker
segmk = Segmaker("design.bits")
@ -22,7 +23,11 @@ for l in f:
PULLDOWN
PULLUP X X
'''
segmk.add_site_tag(site, "PULL.NONE", val in ("", "KEEPER", "PULLUP"))
if val == "":
val = "NONE"
segmaker.add_site_group_zero(
segmk, site, "PULLTYPE.", ("NONE", "KEEPER", "PULLDOWN", "PULLUP"),
"PULLDOWN", val)
segmk.compile()
segmk.write()

View File

@ -55,10 +55,10 @@ proc loc_pins {} {
set_property -dict "PACKAGE_PIN $pin IOSTANDARD LVCMOS33" $port
# list_property isn't working
# list_property isn't working (maybe due to empty?)
# set keys [list_property_value PULLTYPE $port]
set keys "PULLUP PULLDOWN KEEPER"
# set keys "NONE KEEPER"
# NONE placeholder for ""
set keys "NONE PULLUP PULLDOWN KEEPER"
set val [randsample_list 1 $keys]
if { $val == "NONE" } {
set val ""