# # Copyright (C) 2007, Peter C. Wallace, Mesa Electronics # http://www.mesanet.com # # This program is is licensed under a disjunctive dual license giving you # the choice of one of the two following sets of free software/open source # licensing terms: # # * GNU General Public License (GPL), version 2.0 or later # * 3-clause BSD License # # # The GNU GPL License: # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation; either version 2 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License # along with this program; if not, write to the Free Software # Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA # # # The 3-clause BSD License: # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions # are met: # # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # # * Redistributions in binary form must reproduce the above # copyright notice, this list of conditions and the following # disclaimer in the documentation and/or other materials # provided with the distribution. # # * Neither the name of Mesa Electronics nor the names of its # contributors may be used to endorse or promote products # derived from this software without specific prior written # permission. # # # Disclaimer: # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE # COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, # INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, # BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; # LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN # ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. # #NET "INIT" LOC = "p58" | IOSTANDARD = LVCMOS33 #NET "SPIIN" LOC = "p76" | IOSTANDARD = LVCMOS33 | PULLUP NET "CLK" TNM_NET = "CLK"; TIMESPEC "TS_CLK" = PERIOD "CLK" 19.5 ns HIGH 50 %; TIMESPEC "TS_P2P" = FROM "PADS" TO "PADS" 50 ns; #PACE: Start of Constraints generated by PACE #PACE: Start of PACE I/O Pin Assignments NET "CLK" LOC = "p53" | IOSTANDARD = LVCMOS33 ; NET "DATABUS<0>" LOC = "p68" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ; NET "DATABUS<1>" LOC = "p63" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ; NET "DATABUS<2>" LOC = "p60" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ; NET "DATABUS<3>" LOC = "p59" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ; NET "DATABUS<4>" LOC = "p51" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ; NET "DATABUS<5>" LOC = "p50" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ; NET "DATABUS<6>" LOC = "p47" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ; NET "DATABUS<7>" LOC = "p46" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | KEEPER ; NET "IOBITS<0>" LOC = "p127" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<10>" LOC = "p11" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<11>" LOC = "p8" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<12>" LOC = "p6" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<13>" LOC = "p4" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<14>" LOC = "p135" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<15>" LOC = "p131" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<16>" LOC = "p129" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<17>" LOC = "p124" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<18>" LOC = "p122" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<19>" LOC = "p118" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<1>" LOC = "p33" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<20>" LOC = "p98" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<21>" LOC = "p100" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<22>" LOC = "p103" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<23>" LOC = "p105" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<24>" LOC = "p128" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<25>" LOC = "p32" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<26>" LOC = "p30" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<27>" LOC = "p27" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<28>" LOC = "p25" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<29>" LOC = "p23" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<2>" LOC = "p31" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<30>" LOC = "p20" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<31>" LOC = "p17" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<32>" LOC = "p14" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<33>" LOC = "p12" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<34>" LOC = "p10" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<35>" LOC = "p7" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<36>" LOC = "p5" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<37>" LOC = "p137" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<38>" LOC = "p132" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<39>" LOC = "p130" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<3>" LOC = "p28" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<40>" LOC = "p125" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<41>" LOC = "p123" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<42>" LOC = "p119" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<43>" LOC = "p116" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<44>" LOC = "p97" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<45>" LOC = "p99" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<46>" LOC = "p102" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<47>" LOC = "p104" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<4>" LOC = "p26" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<5>" LOC = "p24" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<6>" LOC = "p21" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<7>" LOC = "p18" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<8>" LOC = "p15" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "IOBITS<9>" LOC = "p13" | IOSTANDARD = LVCMOS33 | DRIVE = 24 | SLEW = SLOW | PULLUP ; NET "LEDS<0>" LOC = "p96" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8 ; NET "LEDS<1>" LOC = "p95" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8 ; NET "LEDS<2>" LOC = "p93" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8 ; NET "LEDS<3>" LOC = "p92" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8 ; NET "LEDS<4>" LOC = "p90" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8 ; NET "LEDS<5>" LOC = "p89" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8 ; NET "LEDS<6>" LOC = "p87" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8 ; NET "LEDS<7>" LOC = "p86" | IOSTANDARD = LVCMOS33 | SLEW = SLOW | DRIVE = 8 ; NET "PARACONFIG" LOC = "p40" | IOSTANDARD = LVCMOS33 | DRIVE = 4 | SLEW = SLOW ; NET "RECONFIG" LOC = "p52" | IOSTANDARD = LVCMOS33 | DRIVE = 4 | SLEW = SLOW ; NET "HRECONFIG" LOC = "p44" | IOSTANDARD = LVCMOS33 | DRIVE = 4 | SLEW = SLOW ; NET "SPICLK" LOC = "p70" | IOSTANDARD = LVCMOS33 | DRIVE = 4 | SLEW = SLOW ; NET "SPICS" LOC = "p78" | IOSTANDARD = LVCMOS33 | DRIVE = 4 | SLEW = SLOW ; NET "SPIIN" LOC = "p76" | IOSTANDARD = LVCMOS33 | PULLUP ; NET "SPIOUT" LOC = "p77" | IOSTANDARD = LVCMOS33 | DRIVE = 4 | SLEW = SLOW ; NET "USB_RD" LOC = "p55" | SLEW = SLOW | IOSTANDARD = LVCMOS33 | DRIVE = 4 ; NET "USB_RXF" LOC = "p69" | IOSTANDARD = LVCMOS33 | PULLUP ; NET "USB_TXE" LOC = "p83" | IOSTANDARD = LVCMOS33 | PULLUP ; NET "USB_WRITE" LOC = "p56" | IOSTANDARD = LVCMOS33 | DRIVE = 4 | SLEW = SLOW ; NET "clk0fx" TNM_NET = "async_med"; # For async sserial processor NET "CLK" TNM_NET = "async_low"; TIMESPEC "TSLowToMed" = FROM "async_low" to "async_med" TIG; TIMESPEC "TSMedtoLow" = FROM "async_med" to "async_low" TIG;