573in1/fpga/fpga.ucf
2024-06-27 08:35:02 +02:00

204 lines
5.4 KiB
Plaintext

CONFIG PROHIBIT = "P77"; # /INIT
CONFIG PROHIBIT = "P153"; # DIN
CONFIG PROHIBIT = "P154"; # DOUT
## System clocks
TIMESPEC "TS_clock29M" = PERIOD "clock29M" 29.4500 MHz HIGH 50 %;
#TIMESPEC "TS_clock19M" = PERIOD "clock19M" 19.6608 MHz HIGH 50 %;
NET "clockIn29M" LOC = "P160";
NET "clock29M" TNM = "clock29M";
#NET "clockIn19M" LOC = "P207";
#NET "clock19M" TNM = "clock19M";
## Host interface
NET "nHostRead" LOC = "P146";
NET "nHostWrite" LOC = "P145";
NET "nHostEnable" LOC = "P142";
NET "hostAddress[0]" LOC = "P117";
NET "hostAddress[1]" LOC = "P116";
NET "hostAddress[2]" LOC = "P115";
NET "hostAddress[3]" LOC = "P114";
NET "hostAddress[4]" LOC = "P113";
NET "hostAddress[5]" LOC = "P112";
NET "hostAddress[6]" LOC = "P110";
NET "hostData[0]" LOC = "P138";
NET "hostData[1]" LOC = "P137";
NET "hostData[2]" LOC = "P136";
NET "hostData[3]" LOC = "P135";
NET "hostData[4]" LOC = "P134";
NET "hostData[5]" LOC = "P133";
NET "hostData[6]" LOC = "P132";
NET "hostData[7]" LOC = "P129";
NET "hostData[8]" LOC = "P128";
NET "hostData[9]" LOC = "P127";
NET "hostData[10]" LOC = "P126";
NET "hostData[11]" LOC = "P125";
NET "hostData[12]" LOC = "P124";
NET "hostData[13]" LOC = "P123";
NET "hostData[14]" LOC = "P122";
NET "hostData[15]" LOC = "P120";
## SRAM interface
NET "nSRAMRead" LOC = "P40";
NET "nSRAMRead" FAST;
NET "nSRAMWrite" LOC = "P55";
NET "nSRAMWrite" FAST;
NET "nSRAMEnable" LOC = "P34";
NET "nSRAMEnable" FAST;
NET "sramAddress[0]" LOC = "P30";
NET "sramAddress[1]" LOC = "P32";
NET "sramAddress[2]" LOC = "P35";
NET "sramAddress[3]" LOC = "P37";
NET "sramAddress[4]" LOC = "P41";
NET "sramAddress[5]" LOC = "P43";
NET "sramAddress[6]" LOC = "P45";
NET "sramAddress[7]" LOC = "P47";
NET "sramAddress[8]" LOC = "P46";
NET "sramAddress[9]" LOC = "P44";
NET "sramAddress[10]" LOC = "P36";
NET "sramAddress[11]" LOC = "P42";
NET "sramAddress[12]" LOC = "P49";
NET "sramAddress[13]" LOC = "P48";
NET "sramAddress[14]" LOC = "P56";
NET "sramAddress[15]" LOC = "P58";
NET "sramAddress[16]" LOC = "P57";
NET "sramData[0]" LOC = "P28";
NET "sramData[1]" LOC = "P24";
NET "sramData[2]" LOC = "P22";
NET "sramData[3]" LOC = "P21";
NET "sramData[4]" LOC = "P23";
NET "sramData[5]" LOC = "P27";
NET "sramData[6]" LOC = "P29";
NET "sramData[7]" LOC = "P31";
## DRAM interface
# TODO: trace these pins out
NET "dramControl[0]" LOC = "P188";
NET "dramControl[1]" LOC = "P189";
NET "dramControl[2]" LOC = "P190";
NET "dramControl[3]" LOC = "P191";
NET "dramControl[4]" LOC = "P193";
NET "dramControl[5]" LOC = "P194";
NET "dramControl[6]" LOC = "P196";
NET "dramControl[7]" LOC = "P197";
NET "dramControl[8]" LOC = "P198";
NET "dramControl[9]" LOC = "P199";
NET "dramControl[10]" LOC = "P200";
NET "dramControl[11]" LOC = "P201";
NET "dramAddress[0]" LOC = "P186";
NET "dramAddress[1]" LOC = "P184";
NET "dramAddress[2]" LOC = "P180";
NET "dramAddress[3]" LOC = "P178";
NET "dramAddress[4]" LOC = "P176";
NET "dramAddress[5]" LOC = "P174";
NET "dramAddress[6]" LOC = "P175";
NET "dramAddress[7]" LOC = "P177";
NET "dramAddress[8]" LOC = "P179";
NET "dramAddress[9]" LOC = "P181";
NET "dramAddress[10]" LOC = "P185";
NET "dramAddress[11]" LOC = "P187";
NET "dramData[0]" LOC = "P15";
NET "dramData[1]" LOC = "P14";
NET "dramData[2]" LOC = "P10";
NET "dramData[3]" LOC = "P8";
NET "dramData[4]" LOC = "P2";
NET "dramData[5]" LOC = "P206";
NET "dramData[6]" LOC = "P205";
NET "dramData[7]" LOC = "P204";
NET "dramData[8]" LOC = "P3";
NET "dramData[9]" LOC = "P4";
NET "dramData[10]" LOC = "P5";
NET "dramData[11]" LOC = "P9";
NET "dramData[12]" LOC = "P11";
NET "dramData[13]" LOC = "P17";
NET "dramData[14]" LOC = "P19";
NET "dramData[15]" LOC = "P20";
## MP3 decoder interface
NET "mp3Reset" LOC = "P152";
NET "mp3Ready" LOC = "P159";
NET "mp3ClockIn" LOC = "P163";
NET "mp3ClockOut" LOC = "P162";
NET "mp3SDA" LOC = "P150";
NET "mp3SCL" LOC = "P151";
NET "mp3StatusCS" LOC = "P149";
NET "mp3StatusError" LOC = "P168";
NET "mp3StatusFrameSync" LOC = "P161";
NET "mp3StatusDataReq" LOC = "P148";
NET "mp3InSDIN" LOC = "P167";
NET "mp3InBCLK" LOC = "P164";
NET "mp3InLRCK" LOC = "P166";
NET "mp3OutSDOUT" LOC = "P172";
NET "mp3OutBCLK" LOC = "P169";
NET "mp3OutLRCK" LOC = "P171";
## I2S audio output
NET "dacSDIN" LOC = "P96";
NET "dacBCLK" LOC = "P94";
NET "dacLRCK" LOC = "P95";
NET "dacMCLK" LOC = "P97";
## Light outputs
NET "lightBankAH[0]" LOC = "P84";
NET "lightBankAH[1]" LOC = "P83";
NET "lightBankAH[2]" LOC = "P82";
NET "lightBankAH[3]" LOC = "P81";
NET "lightBankAL[0]" LOC = "P80";
NET "lightBankAL[1]" LOC = "P76";
NET "lightBankAL[2]" LOC = "P75";
NET "lightBankAL[3]" LOC = "P74";
NET "lightBankBH[0]" LOC = "P73";
NET "lightBankBH[1]" LOC = "P72";
NET "lightBankBH[2]" LOC = "P70";
NET "lightBankBH[3]" LOC = "P69";
NET "lightBankD[0]" LOC = "P68";
NET "lightBankD[1]" LOC = "P67";
NET "lightBankD[2]" LOC = "P60";
NET "lightBankD[3]" LOC = "P59";
## General-purpose inputs (unused)
#NET "inputBank[0]" LOC = "P61";
#NET "inputBank[1]" LOC = "P62";
#NET "inputBank[2]" LOC = "P63";
#NET "inputBank[3]" LOC = "P64";
## Serial interfaces
# TODO: are pins 98 and 99 swapped?
NET "networkTXEnable" LOC = "P98";
NET "networkTX" LOC = "P99";
NET "networkRX" LOC = "P100";
NET "serialTX" LOC = "P89";
NET "serialRX" LOC = "P88";
NET "serialRTS" LOC = "P93";
NET "serialCTS" LOC = "P90";
NET "serialDTR" LOC = "P87";
NET "serialDSR" LOC = "P85";
## 1-wire bus
NET "ds2433" LOC = "P107";
NET "ds2401" LOC = "P109";