Commit 1e12b1dd authored by Matthieu Cattin's avatar Matthieu Cattin Committed by mcattin

First release of ucf with pin loc and iostandard.

parent cde0734a
......@@ -14,6 +14,8 @@ IGNORED_NETNAMES = ["GND", "P3V3", "P2V5","P1V5", "P1V2", "P1V8",
"MTG_AVC_A", "MTG_AVC_B", "VREF_DDR3",
"FMC1_VREFAM2C", "FMC2_VREFAM2C"]
IOSTANDARD = "LVCMOS33"
filename = raw_input("Enter the input netlist filename (Must be Calay format!): ")
if filename != "":
......@@ -31,7 +33,7 @@ if filename != "":
UCF_FILENAME = filename
try:
ucf = open(UCF_FILENAME,"w")
ucf = open(UCF_FILENAME+".raw","w")
print "%s .ucf opened." % UCF_FILENAME
except:
print "ERROR %s file doesn't exist!" % UCF_FILENAME
......@@ -65,5 +67,25 @@ if pin_cnt == 1:
else:
print " => %d pins found in %s" % (pin_cnt, PART_DESIGNATOR)
yesno = ""
while (yesno.lower() != 'y') and (yesno.lower() != 'n'):
yesno = raw_input("Do you want to generate default IOSTANDARD [y/n]: ")
if yesno == 'y':
net = open(NETLIST_FILENAME,"r")
ucf.write("\n\n\n\n")
# Iterate over lines in netlist file
for line in net:
# Remove non-alphanumerical char
line = re.sub(r'[^\w]', ' ', line)
# Split line into strings
ln = line.split()
for s in ln:
# Look for lines containing the given part designator
if (ln[0] != s) and (PART_DESIGNATOR in s) and not(ln[0] in IGNORED_NETNAMES) and not(re.match("Net", ln[0])):
# print "%s %s %s" % (s, ln[0], ln[ln.index(s)+1])
ucf.write("NET \""+ln[0].lower()+"\" IOSTANDARD = \""+ IOSTANDARD +"\";\n")
net.close()
ucf.close()
......@@ -146,3 +146,155 @@ NET "sfpga_done" LOC = P13;
NET "prog_tms" LOC = A15;
NET "prog_tdo" LOC = E14;
NET "prog_tck" LOC = C14;
NET "vme_write_n" IOSTANDARD = "LVCMOS33";
NET "vme_trst" IOSTANDARD = "LVCMOS33";
NET "vme_tms" IOSTANDARD = "LVCMOS33";
NET "vme_tdo_oe" IOSTANDARD = "LVCMOS33";
NET "vme_tdo" IOSTANDARD = "LVCMOS33";
NET "vme_tdi" IOSTANDARD = "LVCMOS33";
NET "vme_tck" IOSTANDARD = "LVCMOS33";
NET "vme_sysreset_n" IOSTANDARD = "LVCMOS33";
NET "vme_sysclk" IOSTANDARD = "LVCMOS33";
NET "vme_retry_oe" IOSTANDARD = "LVCMOS33";
NET "vme_retry_n" IOSTANDARD = "LVCMOS33";
NET "vme_lword_n" IOSTANDARD = "LVCMOS33";
NET "vme_iackout_n" IOSTANDARD = "LVCMOS33";
NET "vme_iackin_n" IOSTANDARD = "LVCMOS33";
NET "vme_iack_n" IOSTANDARD = "LVCMOS33";
NET "vme_gap" IOSTANDARD = "LVCMOS33";
NET "vme_dtack_oe" IOSTANDARD = "LVCMOS33";
NET "vme_dtack_n" IOSTANDARD = "LVCMOS33";
NET "vme_ds2_n" IOSTANDARD = "LVCMOS33";
NET "vme_ds1_n" IOSTANDARD = "LVCMOS33";
NET "vme_d_oe_n" IOSTANDARD = "LVCMOS33";
NET "vme_d_dir" IOSTANDARD = "LVCMOS33";
NET "vme_berr" IOSTANDARD = "LVCMOS33";
NET "vme_as_n" IOSTANDARD = "LVCMOS33";
NET "vme_a_oe_n" IOSTANDARD = "LVCMOS33";
NET "vme_a_dir" IOSTANDARD = "LVCMOS33";
NET "rst_n" IOSTANDARD = "LVCMOS33";
NET "pushbutton" IOSTANDARD = "LVCMOS33";
NET "boot_clk" IOSTANDARD = "LVCMOS33";
NET "boot_config" IOSTANDARD = "LVCMOS33";
NET "boot_done" IOSTANDARD = "LVCMOS33";
NET "boot_dout" IOSTANDARD = "LVCMOS33";
NET "boot_status" IOSTANDARD = "LVCMOS33";
NET "lclk_n" IOSTANDARD = "LVCMOS33";
NET "noga0" IOSTANDARD = "LVCMOS33";
NET "noga1" IOSTANDARD = "LVCMOS33";
NET "noga2" IOSTANDARD = "LVCMOS33";
NET "noga3" IOSTANDARD = "LVCMOS33";
NET "noga4" IOSTANDARD = "LVCMOS33";
NET "pll_2sfpga_n" IOSTANDARD = "LVCMOS33";
NET "pll_2sfpga_p" IOSTANDARD = "LVCMOS33";
NET "pll_ce" IOSTANDARD = "LVCMOS33";
NET "sfpga_cclk" IOSTANDARD = "LVCMOS33";
NET "sfpga_cso_b" IOSTANDARD = "LVCMOS33";
NET "sfpga_init_b" IOSTANDARD = "LVCMOS33";
NET "sfpga_m0" IOSTANDARD = "LVCMOS33";
NET "sfpga_m1" IOSTANDARD = "LVCMOS33";
NET "sfpga_miso" IOSTANDARD = "LVCMOS33";
NET "sfpga_mosi" IOSTANDARD = "LVCMOS33";
NET "switch0" IOSTANDARD = "LVCMOS33";
NET "switch1" IOSTANDARD = "LVCMOS33";
NET "usega" IOSTANDARD = "LVCMOS33";
NET "vme_irq7" IOSTANDARD = "LVCMOS33";
NET "vme_irq6" IOSTANDARD = "LVCMOS33";
NET "vme_irq5" IOSTANDARD = "LVCMOS33";
NET "vme_irq4" IOSTANDARD = "LVCMOS33";
NET "vme_irq3" IOSTANDARD = "LVCMOS33";
NET "vme_irq2" IOSTANDARD = "LVCMOS33";
NET "vme_irq1" IOSTANDARD = "LVCMOS33";
NET "vme_ga4" IOSTANDARD = "LVCMOS33";
NET "vme_ga3" IOSTANDARD = "LVCMOS33";
NET "vme_ga2" IOSTANDARD = "LVCMOS33";
NET "vme_ga1" IOSTANDARD = "LVCMOS33";
NET "vme_ga0" IOSTANDARD = "LVCMOS33";
NET "vme_d31" IOSTANDARD = "LVCMOS33";
NET "vme_d30" IOSTANDARD = "LVCMOS33";
NET "vme_d29" IOSTANDARD = "LVCMOS33";
NET "vme_d28" IOSTANDARD = "LVCMOS33";
NET "vme_d27" IOSTANDARD = "LVCMOS33";
NET "vme_d26" IOSTANDARD = "LVCMOS33";
NET "vme_d25" IOSTANDARD = "LVCMOS33";
NET "vme_d24" IOSTANDARD = "LVCMOS33";
NET "vme_d23" IOSTANDARD = "LVCMOS33";
NET "vme_d22" IOSTANDARD = "LVCMOS33";
NET "vme_d21" IOSTANDARD = "LVCMOS33";
NET "vme_d20" IOSTANDARD = "LVCMOS33";
NET "vme_d19" IOSTANDARD = "LVCMOS33";
NET "vme_d18" IOSTANDARD = "LVCMOS33";
NET "vme_d17" IOSTANDARD = "LVCMOS33";
NET "vme_d16" IOSTANDARD = "LVCMOS33";
NET "vme_d15" IOSTANDARD = "LVCMOS33";
NET "vme_d14" IOSTANDARD = "LVCMOS33";
NET "vme_d13" IOSTANDARD = "LVCMOS33";
NET "vme_d12" IOSTANDARD = "LVCMOS33";
NET "vme_d11" IOSTANDARD = "LVCMOS33";
NET "vme_d10" IOSTANDARD = "LVCMOS33";
NET "vme_d9" IOSTANDARD = "LVCMOS33";
NET "vme_d8" IOSTANDARD = "LVCMOS33";
NET "vme_d7" IOSTANDARD = "LVCMOS33";
NET "vme_d6" IOSTANDARD = "LVCMOS33";
NET "vme_d5" IOSTANDARD = "LVCMOS33";
NET "vme_d4" IOSTANDARD = "LVCMOS33";
NET "vme_d3" IOSTANDARD = "LVCMOS33";
NET "vme_d2" IOSTANDARD = "LVCMOS33";
NET "vme_d1" IOSTANDARD = "LVCMOS33";
NET "vme_d0" IOSTANDARD = "LVCMOS33";
NET "vme_am5" IOSTANDARD = "LVCMOS33";
NET "vme_am4" IOSTANDARD = "LVCMOS33";
NET "vme_am3" IOSTANDARD = "LVCMOS33";
NET "vme_am2" IOSTANDARD = "LVCMOS33";
NET "vme_am1" IOSTANDARD = "LVCMOS33";
NET "vme_am0" IOSTANDARD = "LVCMOS33";
NET "vme_a31" IOSTANDARD = "LVCMOS33";
NET "vme_a30" IOSTANDARD = "LVCMOS33";
NET "vme_a29" IOSTANDARD = "LVCMOS33";
NET "vme_a28" IOSTANDARD = "LVCMOS33";
NET "vme_a27" IOSTANDARD = "LVCMOS33";
NET "vme_a26" IOSTANDARD = "LVCMOS33";
NET "vme_a25" IOSTANDARD = "LVCMOS33";
NET "vme_a24" IOSTANDARD = "LVCMOS33";
NET "vme_a23" IOSTANDARD = "LVCMOS33";
NET "vme_a22" IOSTANDARD = "LVCMOS33";
NET "vme_a21" IOSTANDARD = "LVCMOS33";
NET "vme_a20" IOSTANDARD = "LVCMOS33";
NET "vme_a19" IOSTANDARD = "LVCMOS33";
NET "vme_a18" IOSTANDARD = "LVCMOS33";
NET "vme_a17" IOSTANDARD = "LVCMOS33";
NET "vme_a16" IOSTANDARD = "LVCMOS33";
NET "vme_a15" IOSTANDARD = "LVCMOS33";
NET "vme_a14" IOSTANDARD = "LVCMOS33";
NET "vme_a13" IOSTANDARD = "LVCMOS33";
NET "vme_a12" IOSTANDARD = "LVCMOS33";
NET "vme_a11" IOSTANDARD = "LVCMOS33";
NET "vme_a10" IOSTANDARD = "LVCMOS33";
NET "vme_a9" IOSTANDARD = "LVCMOS33";
NET "vme_a8" IOSTANDARD = "LVCMOS33";
NET "vme_a7" IOSTANDARD = "LVCMOS33";
NET "vme_a6" IOSTANDARD = "LVCMOS33";
NET "vme_a5" IOSTANDARD = "LVCMOS33";
NET "vme_a4" IOSTANDARD = "LVCMOS33";
NET "vme_a3" IOSTANDARD = "LVCMOS33";
NET "vme_a2" IOSTANDARD = "LVCMOS33";
NET "vme_a1" IOSTANDARD = "LVCMOS33";
NET "rsvd0" IOSTANDARD = "LVCMOS33";
NET "rsvd1" IOSTANDARD = "LVCMOS33";
NET "rsvd2" IOSTANDARD = "LVCMOS33";
NET "rsvd3" IOSTANDARD = "LVCMOS33";
NET "rsvd4" IOSTANDARD = "LVCMOS33";
NET "rsvd5" IOSTANDARD = "LVCMOS33";
NET "rsvd6" IOSTANDARD = "LVCMOS33";
NET "rsvd7" IOSTANDARD = "LVCMOS33";
NET "debugled2" IOSTANDARD = "LVCMOS33";
NET "debugled1" IOSTANDARD = "LVCMOS33";
NET "sfpga_program" IOSTANDARD = "LVCMOS33";
NET "sfpga_done" IOSTANDARD = "LVCMOS33";
NET "prog_tms" IOSTANDARD = "LVCMOS33";
NET "prog_tdo" IOSTANDARD = "LVCMOS33";
NET "prog_tck" IOSTANDARD = "LVCMOS33";
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment