zynq-sandbox

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README

commit a5e89b5ced7eb951b696a4e22f0abee35b6b662a
parent 08545e39000228bd097d3ddc103c130d985e60b1
Author: Brian Swetland <swetland@frotz.net>
Date:   Tue, 22 Jul 2014 07:54:33 -0700

nexys4 ethernet hackery (work in progress)

Diffstat:
MMakefile | 17+++++++++++++++++
Ahdl/nexys4.sv | 280+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Ahdl/nexys4.xdc | 732+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
3 files changed, 1029 insertions(+), 0 deletions(-)

diff --git a/Makefile b/Makefile @@ -3,6 +3,11 @@ include build/init.mk all: list-all-targets +MODULE_NAME := eth-mdio-test +MODULE_SRCS := hdl/eth_mdio.sv +MODULE_SRCS += hdl/test/eth_mdio_test.sv +include build/verilator-sim.mk + MODULE_NAME := zybo-simple-io MODULE_PART := xc7z010clg400-1 MODULE_SRCS := hdl/zybo_simple_io.sv @@ -67,6 +72,18 @@ MODULE_SRCS += hdl/zybo_eth.xdc MODULE_SRCS += hdl/testpacket.hex include build/vivado-bitfile.mk +MODULE_NAME := nexys4 +MODULE_PART := xc7a100tcsg324-1 +MODULE_SRCS := hdl/nexys4.sv +MODULE_SRCS += hdl/eth_rmii_rx.sv +MODULE_SRCS += hdl/eth_rmii_tx.sv +MODULE_SRCS += hdl/eth_mdio.sv +MODULE_SRCS += hdl/mmcm_1in_3out.sv +MODULE_SRCS += hdl/jtag_debug_port.sv +MODULE_SRCS += hdl/nexys4.xdc +MODULE_SRCS += hdl/testpacket.hex +include build/vivado-bitfile.mk + clean:: rm -rf sim synth out diff --git a/hdl/nexys4.sv b/hdl/nexys4.sv @@ -0,0 +1,280 @@ +// Copyright 2014 Brian Swetland <swetland@frotz.net> +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +module top( + input clk, + output [15:0]led, + output phy0_mdc, + inout phy0_mdio, + output phy0_rstn, + input phy0_crs, + input phy0_rxerr, + input [1:0]phy0_rx, + output phy0_txen, + output [1:0]phy0_tx, + output phy0_clk, + input phy0_intn, + output [3:0]JD + ); + +wire clk50; +wire clk50b; + +assign phy0_clk = clk50; +//assign phy0_mdc = 1; +//assign phy0_mdio = 1; +assign phy0_rstn = 1; + + +//assign JD[0] = phy0_clk; +//assign JD[1] = phy0_txen; +//assign JD[2] = phy0_tx[0]; +//assign JD[3] = phy0_tx[1]; +//assign JD[0] = phy0_clk; +//assign JD[1] = phy0_crs; +//assign JD[2] = phy0_rx[0]; +//assign JD[3] = phy0_rx[1]; + +//assign phy0_txen = 0; +//assign phy0_tx = 0; + +mmcm_1in_3out #( + .CLKIN_PERIOD(10.0), + .VCO_MUL(10.000), + .VCO_DIV(1), + .OUT0_DIV(20.000), // 50MHz + .OUT1_DIV(20), // 50MHz + .OUT2_DIV(4) // 250MHz + ) mmcm0 ( + .i_clk(clk), + .o_clk0(clk50), + .o_clk1(clk50b), + .o_clk2() + ); + +wire [7:0]rxdata; +wire rxvalid; +wire rxeop; + +(* keep_hierarchy = "yes" *) +eth_rmii_rx phy0rx( + .clk50(clk50), + .rx(phy0_rx), + .crs_dv(phy0_crs), + .data(rxdata), + .valid(rxvalid), + .eop(rxeop) + ); + +wire go; + +reg [7:0]txptr = 0; +reg [7:0]pdata[0:128]; +initial $readmemh("testpacket.hex", pdata); + +wire txbusy; +wire txadvance; +wire [7:0]txdata = pdata[txptr]; +reg txpacket = 0; + +always @(posedge clk50b) begin + if (txpacket) begin + if (txadvance) begin + txptr <= txptr + 1; + if (txptr == 101) begin + txpacket <= 0; + txptr <= 0; + end + end + end else if (go) begin + txpacket <= 1; + end +end + +eth_rmii_tx phy0tx( + .clk50(clk50b), + .tx(phy0_tx), + .txen(phy0_txen), + .data(txdata), + .packet(txpacket), + .busy(txbusy), + .advance(txadvance) + ); + +wire i_mdio; +wire o_mdio; +wire t_mdio; +IOBUF buf_mdio( + .O(i_mdio), + .I(o_mdio), + .T(t_mdio), + .IO(phy0_mdio) + ); + +assign JD[0] = phy0_mdc; +assign JD[1] = i_mdio; + +wire mi_read; +wire mi_write; +wire [31:0]mi_txdata; +wire [15:0]mi_rxdata; +wire mi_busy; + +(* keep_hierarchy = "yes" *) +eth_mdio mdio0( + .clk(clk50), + .do_read(mi_read), + .do_write(mi_write), + .txdata(mi_txdata), + .rxdata(mi_rxdata), + .busy(mi_busy), + .i_mdio(i_mdio), + .o_mdio(o_mdio), + .t_mdio(t_mdio), + .mdc(phy0_mdc) + ); + +(* keep_hierarchy = "yes" *) +packetlogger log0( + .clk50(clk50), + .rxdata(rxdata), + .rxvalid(rxvalid), + .rxeop(rxeop), + .go(go), + .mi_read(mi_read), + .mi_write(mi_write), + .mi_txdata(mi_txdata), + .mi_rxdata(mi_rxdata), + .mi_busy(mi_busy) + ); + +endmodule + +module packetlogger( + input clk50, + input [7:0]rxdata, + input rxvalid, + input rxeop, + output reg go = 0, + output reg mi_read = 0, + output reg mi_write = 0, + output [31:0]mi_txdata, + input [15:0]mi_rxdata, + input mi_busy + ); + +reg [11:0]rdptr = 0; +reg [11:0]rxptr = 0; +reg [11:0]next_rdptr; +reg [11:0]next_rxptr; + +wire [8:0]rdata; +reg bufrd = 0; + +ram rxbuffer( + .clk(clk50), + .wen(rxvalid | rxeop), + .waddr(rxptr), + .wdata( { rxeop, rxdata } ), + .ren(bufrd), + .raddr(rdptr), + .rdata(rdata) + ); + +wire [31:0]dbg_wdata; +reg [31:0]dbg_rdata; +wire [2:0]dbg_addr; +wire dbg_rd; +wire dbg_wr; + +assign mi_txdata = dbg_wdata; + +always_comb begin + next_rxptr = rxptr; + next_rdptr = rdptr; + bufrd = 0; + if (rxvalid | rxeop) begin + if (rxptr != 12'b111111111111) + next_rxptr = rxptr + 1; + end + if (dbg_rd) begin + if (dbg_addr == 1) begin + next_rdptr = rdptr + 1; + bufrd = 1; + end + end + case (dbg_addr) + 0: dbg_rdata = 32'h12345678; + 1: dbg_rdata = { 23'd0, rdata }; + 2: dbg_rdata = { 20'd0, rxptr }; + 3: dbg_rdata = { 15'd0, mi_busy, mi_rxdata }; + default: dbg_rdata = 0; + endcase +end + +always_ff @(posedge clk50) begin + rxptr <= next_rxptr; + rdptr <= next_rdptr; + if (dbg_wr) begin + if (dbg_addr == 0) go <= 1; + if (dbg_addr == 3) begin + mi_read <= (dbg_wdata[29:28] == 2'b10); + mi_write <= 1; + end + end else begin + go <= 0; + mi_read <= 0; + mi_write <= 0; + end +end + +(* keep_hierarchy = "yes" *) +jtag_debug_port port0( + .clk(clk50), + .o_wdata(dbg_wdata), + .i_rdata(dbg_rdata), + .o_addr(dbg_addr), + .o_rd(dbg_rd), + .o_wr(dbg_wr) + ); + +endmodule + +module ram( + input clk, + input ren, + input [11:0]raddr, + output reg [8:0]rdata, + input wen, + input [11:0]waddr, + input [8:0]wdata + ); + +reg [8:0]memory[0:4095]; + +always_ff @(posedge clk) begin + if (ren) + rdata <= memory[raddr]; + if (wen) + memory[waddr] <= wdata; +end + +endmodule + + + + + + + diff --git a/hdl/nexys4.xdc b/hdl/nexys4.xdc @@ -0,0 +1,732 @@ +## This file is a general .xdc for the Nexys4 rev B board +## To use it in a project: +## - uncomment the lines corresponding to used pins +## - rename the used ports (in each line, after get_ports) according to the top level signal names in the project + +## Clock signal +##Bank = 35, Pin name = IO_L12P_T1_MRCC_35, Sch name = CLK100MHZ +set_property PACKAGE_PIN E3 [get_ports clk] +set_property IOSTANDARD LVCMOS33 [get_ports clk] +create_clock -add -name sys_clk_pin -period 10.00 -waveform {0 5} [get_ports clk] + + +# 30 MHz JTAG TCK +create_clock -period 33.333 -name jtag_tck [get_pins log0/port0/bscan/TCK] + +# human readable generated clock name +create_generated_clock -name clk50 [get_pins mmcm0/mmcm_adv_inst/CLKOUT0] + +set_clock_groups -asynchronous -group [get_clocks -include_generated_clocks sys_clk_pin] -group jtag_tck + + +## Switches +##Bank = 34, Pin name = IO_L21P_T3_DQS_34, Sch name = SW0 +#set_property PACKAGE_PIN U9 [get_ports {sw[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[0]}] +##Bank = 34, Pin name = IO_25_34, Sch name = SW1 +#set_property PACKAGE_PIN U8 [get_ports {sw[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[1]}] +##Bank = 34, Pin name = IO_L23P_T3_34, Sch name = SW2 +#set_property PACKAGE_PIN R7 [get_ports {sw[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[2]}] +##Bank = 34, Pin name = IO_L19P_T3_34, Sch name = SW3 +#set_property PACKAGE_PIN R6 [get_ports {sw[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[3]}] +##Bank = 34, Pin name = IO_L19N_T3_VREF_34, Sch name = SW4 +#set_property PACKAGE_PIN R5 [get_ports {sw[4]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[4]}] +##Bank = 34, Pin name = IO_L20P_T3_34, Sch name = SW5 +#set_property PACKAGE_PIN V7 [get_ports {sw[5]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[5]}] +##Bank = 34, Pin name = IO_L20N_T3_34, Sch name = SW6 +#set_property PACKAGE_PIN V6 [get_ports {sw[6]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[6]}] +##Bank = 34, Pin name = IO_L10P_T1_34, Sch name = SW7 +#set_property PACKAGE_PIN V5 [get_ports {sw[7]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[7]}] +##Bank = 34, Pin name = IO_L8P_T1-34, Sch name = SW8 +#set_property PACKAGE_PIN U4 [get_ports {sw[8]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[8]}] +##Bank = 34, Pin name = IO_L9N_T1_DQS_34, Sch name = SW9 +#set_property PACKAGE_PIN V2 [get_ports {sw[9]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[9]}] +##Bank = 34, Pin name = IO_L9P_T1_DQS_34, Sch name = SW10 +#set_property PACKAGE_PIN U2 [get_ports {sw[10]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[10]}] +##Bank = 34, Pin name = IO_L11N_T1_MRCC_34, Sch name = SW11 +#set_property PACKAGE_PIN T3 [get_ports {sw[11]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[11]}] +##Bank = 34, Pin name = IO_L17N_T2_34, Sch name = SW12 +#set_property PACKAGE_PIN T1 [get_ports {sw[12]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[12]}] +##Bank = 34, Pin name = IO_L11P_T1_SRCC_34, Sch name = SW13 +#set_property PACKAGE_PIN R3 [get_ports {sw[13]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[13]}] +##Bank = 34, Pin name = IO_L14N_T2_SRCC_34, Sch name = SW14 +#set_property PACKAGE_PIN P3 [get_ports {sw[14]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[14]}] +##Bank = 34, Pin name = IO_L14P_T2_SRCC_34, Sch name = SW15 +#set_property PACKAGE_PIN P4 [get_ports {sw[15]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sw[15]}] + + + +## LEDs +##Bank = 34, Pin name = IO_L24N_T3_34, Sch name = LED0 +set_property PACKAGE_PIN T8 [get_ports {led[0]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[0]}] +##Bank = 34, Pin name = IO_L21N_T3_DQS_34, Sch name = LED1 +set_property PACKAGE_PIN V9 [get_ports {led[1]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[1]}] +##Bank = 34, Pin name = IO_L24P_T3_34, Sch name = LED2 +set_property PACKAGE_PIN R8 [get_ports {led[2]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[2]}] +##Bank = 34, Pin name = IO_L23N_T3_34, Sch name = LED3 +set_property PACKAGE_PIN T6 [get_ports {led[3]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[3]}] +##Bank = 34, Pin name = IO_L12P_T1_MRCC_34, Sch name = LED4 +set_property PACKAGE_PIN T5 [get_ports {led[4]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[4]}] +##Bank = 34, Pin name = IO_L12N_T1_MRCC_34, Sch name = LED5 +set_property PACKAGE_PIN T4 [get_ports {led[5]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[5]}] +##Bank = 34, Pin name = IO_L22P_T3_34, Sch name = LED6 +set_property PACKAGE_PIN U7 [get_ports {led[6]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[6]}] +##Bank = 34, Pin name = IO_L22N_T3_34, Sch name = LED7 +set_property PACKAGE_PIN U6 [get_ports {led[7]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[7]}] +##Bank = 34, Pin name = IO_L10N_T1_34, Sch name = LED8 +set_property PACKAGE_PIN V4 [get_ports {led[8]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[8]}] +##Bank = 34, Pin name = IO_L8N_T1_34, Sch name = LED9 +set_property PACKAGE_PIN U3 [get_ports {led[9]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[9]}] +##Bank = 34, Pin name = IO_L7N_T1_34, Sch name = LED10 +set_property PACKAGE_PIN V1 [get_ports {led[10]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[10]}] +##Bank = 34, Pin name = IO_L17P_T2_34, Sch name = LED11 +set_property PACKAGE_PIN R1 [get_ports {led[11]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[11]}] +##Bank = 34, Pin name = IO_L13N_T2_MRCC_34, Sch name = LED12 +set_property PACKAGE_PIN P5 [get_ports {led[12]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[12]}] +##Bank = 34, Pin name = IO_L7P_T1_34, Sch name = LED13 +set_property PACKAGE_PIN U1 [get_ports {led[13]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[13]}] +##Bank = 34, Pin name = IO_L15N_T2_DQS_34, Sch name = LED14 +set_property PACKAGE_PIN R2 [get_ports {led[14]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[14]}] +##Bank = 34, Pin name = IO_L15P_T2_DQS_34, Sch name = LED15 +set_property PACKAGE_PIN P2 [get_ports {led[15]}] +set_property IOSTANDARD LVCMOS33 [get_ports {led[15]}] + +##Bank = 34, Pin name = IO_L5P_T0_34, Sch name = LED16_R +#set_property PACKAGE_PIN K5 [get_ports RGB1_Red] + #set_property IOSTANDARD LVCMOS33 [get_ports RGB1_Red] +##Bank = 15, Pin name = IO_L5P_T0_AD9P_15, Sch name = LED16_G +#set_property PACKAGE_PIN F13 [get_ports RGB1_Green] + #set_property IOSTANDARD LVCMOS33 [get_ports RGB1_Green] +##Bank = 35, Pin name = IO_L19N_T3_VREF_35, Sch name = LED16_B +#set_property PACKAGE_PIN F6 [get_ports RGB1_Blue] + #set_property IOSTANDARD LVCMOS33 [get_ports RGB1_Blue] +##Bank = 34, Pin name = IO_0_34, Sch name = LED17_R +#set_property PACKAGE_PIN K6 [get_ports RGB2_Red] + #set_property IOSTANDARD LVCMOS33 [get_ports RGB2_Red] +##Bank = 35, Pin name = IO_24P_T3_35, Sch name = LED17_G +#set_property PACKAGE_PIN H6 [get_ports RGB2_Green] + #set_property IOSTANDARD LVCMOS33 [get_ports RGB2_Green] +##Bank = CONFIG, Pin name = IO_L3N_T0_DQS_EMCCLK_14, Sch name = LED17_B +#set_property PACKAGE_PIN L16 [get_ports RGB2_Blue] + #set_property IOSTANDARD LVCMOS33 [get_ports RGB2_Blue] + + + +##7 segment display +##Bank = 34, Pin name = IO_L2N_T0_34, Sch name = CA +#set_property PACKAGE_PIN L3 [get_ports {seg[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {seg[0]}] +##Bank = 34, Pin name = IO_L3N_T0_DQS_34, Sch name = CB +#set_property PACKAGE_PIN N1 [get_ports {seg[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {seg[1]}] +##Bank = 34, Pin name = IO_L6N_T0_VREF_34, Sch name = CC +#set_property PACKAGE_PIN L5 [get_ports {seg[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {seg[2]}] +##Bank = 34, Pin name = IO_L5N_T0_34, Sch name = CD +#set_property PACKAGE_PIN L4 [get_ports {seg[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {seg[3]}] +##Bank = 34, Pin name = IO_L2P_T0_34, Sch name = CE +#set_property PACKAGE_PIN K3 [get_ports {seg[4]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {seg[4]}] +##Bank = 34, Pin name = IO_L4N_T0_34, Sch name = CF +#set_property PACKAGE_PIN M2 [get_ports {seg[5]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {seg[5]}] +##Bank = 34, Pin name = IO_L6P_T0_34, Sch name = CG +#set_property PACKAGE_PIN L6 [get_ports {seg[6]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {seg[6]}] + +##Bank = 34, Pin name = IO_L16P_T2_34, Sch name = DP +#set_property PACKAGE_PIN M4 [get_ports dp] + #set_property IOSTANDARD LVCMOS33 [get_ports dp] + +##Bank = 34, Pin name = IO_L18N_T2_34, Sch name = AN0 +#set_property PACKAGE_PIN N6 [get_ports {an[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {an[0]}] +##Bank = 34, Pin name = IO_L18P_T2_34, Sch name = AN1 +#set_property PACKAGE_PIN M6 [get_ports {an[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {an[1]}] +##Bank = 34, Pin name = IO_L4P_T0_34, Sch name = AN2 +#set_property PACKAGE_PIN M3 [get_ports {an[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {an[2]}] +##Bank = 34, Pin name = IO_L13_T2_MRCC_34, Sch name = AN3 +#set_property PACKAGE_PIN N5 [get_ports {an[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {an[3]}] +##Bank = 34, Pin name = IO_L3P_T0_DQS_34, Sch name = AN4 +#set_property PACKAGE_PIN N2 [get_ports {an[4]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {an[4]}] +##Bank = 34, Pin name = IO_L16N_T2_34, Sch name = AN5 +#set_property PACKAGE_PIN N4 [get_ports {an[5]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {an[5]}] +##Bank = 34, Pin name = IO_L1P_T0_34, Sch name = AN6 +#set_property PACKAGE_PIN L1 [get_ports {an[6]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {an[6]}] +##Bank = 34, Pin name = IO_L1N_T034, Sch name = AN7 +#set_property PACKAGE_PIN M1 [get_ports {an[7]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {an[7]}] + + + +##Buttons +##Bank = 15, Pin name = IO_L3P_T0_DQS_AD1P_15, Sch name = CPU_RESET +#set_property PACKAGE_PIN C12 [get_ports btnCpuReset] + #set_property IOSTANDARD LVCMOS33 [get_ports btnCpuReset] +##Bank = 15, Pin name = IO_L11N_T1_SRCC_15, Sch name = BTNC +#set_property PACKAGE_PIN E16 [get_ports btnC] + #set_property IOSTANDARD LVCMOS33 [get_ports btnC] +##Bank = 15, Pin name = IO_L14P_T2_SRCC_15, Sch name = BTNU +#set_property PACKAGE_PIN F15 [get_ports btnU] + #set_property IOSTANDARD LVCMOS33 [get_ports btnU] +##Bank = CONFIG, Pin name = IO_L15N_T2_DQS_DOUT_CSO_B_14, Sch name = BTNL +#set_property PACKAGE_PIN T16 [get_ports btnL] + #set_property IOSTANDARD LVCMOS33 [get_ports btnL] +##Bank = 14, Pin name = IO_25_14, Sch name = BTNR +#set_property PACKAGE_PIN R10 [get_ports btnR] + #set_property IOSTANDARD LVCMOS33 [get_ports btnR] +##Bank = 14, Pin name = IO_L21P_T3_DQS_14, Sch name = BTND +#set_property PACKAGE_PIN V10 [get_ports btnD] + #set_property IOSTANDARD LVCMOS33 [get_ports btnD] + + + +##Pmod Header JA +##Bank = 15, Pin name = IO_L1N_T0_AD0N_15, Sch name = JA1 +#set_property PACKAGE_PIN B13 [get_ports {JA[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JA[0]}] +##Bank = 15, Pin name = IO_L5N_T0_AD9N_15, Sch name = JA2 +#set_property PACKAGE_PIN F14 [get_ports {JA[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JA[1]}] +##Bank = 15, Pin name = IO_L16N_T2_A27_15, Sch name = JA3 +#set_property PACKAGE_PIN D17 [get_ports {JA[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JA[2]}] +##Bank = 15, Pin name = IO_L16P_T2_A28_15, Sch name = JA4 +#set_property PACKAGE_PIN E17 [get_ports {JA[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JA[3]}] +##Bank = 15, Pin name = IO_0_15, Sch name = JA7 +#set_property PACKAGE_PIN G13 [get_ports {JA[4]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JA[4]}] +##Bank = 15, Pin name = IO_L20N_T3_A19_15, Sch name = JA8 +#set_property PACKAGE_PIN C17 [get_ports {JA[5]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JA[5]}] +##Bank = 15, Pin name = IO_L21N_T3_A17_15, Sch name = JA9 +#set_property PACKAGE_PIN D18 [get_ports {JA[6]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JA[6]}] +##Bank = 15, Pin name = IO_L21P_T3_DQS_15, Sch name = JA10 +#set_property PACKAGE_PIN E18 [get_ports {JA[7]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JA[7]}] + + + +##Pmod Header JB +##Bank = 15, Pin name = IO_L15N_T2_DQS_ADV_B_15, Sch name = JB1 +#set_property PACKAGE_PIN G14 [get_ports {JB[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JB[0]}] +##Bank = 14, Pin name = IO_L13P_T2_MRCC_14, Sch name = JB2 +#set_property PACKAGE_PIN P15 [get_ports {JB[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JB[1]}] +##Bank = 14, Pin name = IO_L21N_T3_DQS_A06_D22_14, Sch name = JB3 +#set_property PACKAGE_PIN V11 [get_ports {JB[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JB[2]}] +##Bank = CONFIG, Pin name = IO_L16P_T2_CSI_B_14, Sch name = JB4 +#set_property PACKAGE_PIN V15 [get_ports {JB[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JB[3]}] +##Bank = 15, Pin name = IO_25_15, Sch name = JB7 +#set_property PACKAGE_PIN K16 [get_ports {JB[4]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JB[4]}] +##Bank = CONFIG, Pin name = IO_L15P_T2_DQS_RWR_B_14, Sch name = JB8 +#set_property PACKAGE_PIN R16 [get_ports {JB[5]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JB[5]}] +##Bank = 14, Pin name = IO_L24P_T3_A01_D17_14, Sch name = JB9 +#set_property PACKAGE_PIN T9 [get_ports {JB[6]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JB[6]}] +##Bank = 14, Pin name = IO_L19N_T3_A09_D25_VREF_14, Sch name = JB10 +#set_property PACKAGE_PIN U11 [get_ports {JB[7]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JB[7]}] + + + +##Pmod Header JC +##Bank = 35, Pin name = IO_L23P_T3_35, Sch name = JC1 +#set_property PACKAGE_PIN K2 [get_ports {JC[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JC[0]}] +##Bank = 35, Pin name = IO_L6P_T0_35, Sch name = JC2 +#set_property PACKAGE_PIN E7 [get_ports {JC[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JC[1]}] +##Bank = 35, Pin name = IO_L22P_T3_35, Sch name = JC3 +#set_property PACKAGE_PIN J3 [get_ports {JC[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JC[2]}] +##Bank = 35, Pin name = IO_L21P_T3_DQS_35, Sch name = JC4 +#set_property PACKAGE_PIN J4 [get_ports {JC[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JC[3]}] +##Bank = 35, Pin name = IO_L23N_T3_35, Sch name = JC7 +#set_property PACKAGE_PIN K1 [get_ports {JC[4]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JC[4]}] +##Bank = 35, Pin name = IO_L5P_T0_AD13P_35, Sch name = JC8 +#set_property PACKAGE_PIN E6 [get_ports {JC[5]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JC[5]}] +##Bank = 35, Pin name = IO_L22N_T3_35, Sch name = JC9 +#set_property PACKAGE_PIN J2 [get_ports {JC[6]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JC[6]}] +##Bank = 35, Pin name = IO_L19P_T3_35, Sch name = JC10 +#set_property PACKAGE_PIN G6 [get_ports {JC[7]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JC[7]}] + + + +##Pmod Header JD +##Bank = 35, Pin name = IO_L21N_T2_DQS_35, Sch name = JD1 +set_property PACKAGE_PIN H4 [get_ports {JD[0]}] +set_property IOSTANDARD LVCMOS33 [get_ports {JD[0]}] +##Bank = 35, Pin name = IO_L17P_T2_35, Sch name = JD2 +set_property PACKAGE_PIN H1 [get_ports {JD[1]}] +set_property IOSTANDARD LVCMOS33 [get_ports {JD[1]}] +##Bank = 35, Pin name = IO_L17N_T2_35, Sch name = JD3 +set_property PACKAGE_PIN G1 [get_ports {JD[2]}] +set_property IOSTANDARD LVCMOS33 [get_ports {JD[2]}] +##Bank = 35, Pin name = IO_L20N_T3_35, Sch name = JD4 +set_property PACKAGE_PIN G3 [get_ports {JD[3]}] +set_property IOSTANDARD LVCMOS33 [get_ports {JD[3]}] +##Bank = 35, Pin name = IO_L15P_T2_DQS_35, Sch name = JD7 +#set_property PACKAGE_PIN H2 [get_ports {JD[4]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JD[4]}] +##Bank = 35, Pin name = IO_L20P_T3_35, Sch name = JD8 +#set_property PACKAGE_PIN G4 [get_ports {JD[5]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JD[5]}] +##Bank = 35, Pin name = IO_L15N_T2_DQS_35, Sch name = JD9 +#set_property PACKAGE_PIN G2 [get_ports {JD[6]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JD[6]}] +##Bank = 35, Pin name = IO_L13N_T2_MRCC_35, Sch name = JD10 +#set_property PACKAGE_PIN F3 [get_ports {JD[7]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JD[7]}] + + + +##Pmod Header JXADC +##Bank = 15, Pin name = IO_L9P_T1_DQS_AD3P_15, Sch name = XADC1_P -> XA1_P +#set_property PACKAGE_PIN A13 [get_ports {JXADC[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC[0]}] +##Bank = 15, Pin name = IO_L8P_T1_AD10P_15, Sch name = XADC2_P -> XA2_P +#set_property PACKAGE_PIN A15 [get_ports {JXADC[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC[1]}] +##Bank = 15, Pin name = IO_L7P_T1_AD2P_15, Sch name = XADC3_P -> XA3_P +#set_property PACKAGE_PIN B16 [get_ports {JXADC[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC[2]}] +##Bank = 15, Pin name = IO_L10P_T1_AD11P_15, Sch name = XADC4_P -> XA4_P +#set_property PACKAGE_PIN B18 [get_ports {JXADC[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC[3]}] +##Bank = 15, Pin name = IO_L9N_T1_DQS_AD3N_15, Sch name = XADC1_N -> XA1_N +#set_property PACKAGE_PIN A14 [get_ports {JXADC[4]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC[4]}] +##Bank = 15, Pin name = IO_L8N_T1_AD10N_15, Sch name = XADC2_N -> XA2_N +#set_property PACKAGE_PIN A16 [get_ports {JXADC[5]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC[5]}] +##Bank = 15, Pin name = IO_L7N_T1_AD2N_15, Sch name = XADC3_N -> XA3_N +#set_property PACKAGE_PIN B17 [get_ports {JXADC[6]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC[6]}] +##Bank = 15, Pin name = IO_L10N_T1_AD11N_15, Sch name = XADC4_N -> XA4_N +#set_property PACKAGE_PIN A18 [get_ports {JXADC[7]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {JXADC[7]}] + + + +##VGA Connector +##Bank = 35, Pin name = IO_L8N_T1_AD14N_35, Sch name = VGA_R0 +#set_property PACKAGE_PIN A3 [get_ports {vgaRed[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaRed[0]}] +##Bank = 35, Pin name = IO_L7N_T1_AD6N_35, Sch name = VGA_R1 +#set_property PACKAGE_PIN B4 [get_ports {vgaRed[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaRed[1]}] +##Bank = 35, Pin name = IO_L1N_T0_AD4N_35, Sch name = VGA_R2 +#set_property PACKAGE_PIN C5 [get_ports {vgaRed[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaRed[2]}] +##Bank = 35, Pin name = IO_L8P_T1_AD14P_35, Sch name = VGA_R3 +#set_property PACKAGE_PIN A4 [get_ports {vgaRed[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaRed[3]}] +##Bank = 35, Pin name = IO_L2P_T0_AD12P_35, Sch name = VGA_B0 +#set_property PACKAGE_PIN B7 [get_ports {vgaBlue[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaBlue[0]}] +##Bank = 35, Pin name = IO_L4N_T0_35, Sch name = VGA_B1 +#set_property PACKAGE_PIN C7 [get_ports {vgaBlue[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaBlue[1]}] +##Bank = 35, Pin name = IO_L6N_T0_VREF_35, Sch name = VGA_B2 +#set_property PACKAGE_PIN D7 [get_ports {vgaBlue[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaBlue[2]}] +##Bank = 35, Pin name = IO_L4P_T0_35, Sch name = VGA_B3 +#set_property PACKAGE_PIN D8 [get_ports {vgaBlue[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaBlue[3]}] +##Bank = 35, Pin name = IO_L1P_T0_AD4P_35, Sch name = VGA_G0 +#set_property PACKAGE_PIN C6 [get_ports {vgaGreen[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaGreen[0]}] +##Bank = 35, Pin name = IO_L3N_T0_DQS_AD5N_35, Sch name = VGA_G1 +#set_property PACKAGE_PIN A5 [get_ports {vgaGreen[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaGreen[1]}] +##Bank = 35, Pin name = IO_L2N_T0_AD12N_35, Sch name = VGA_G2 +#set_property PACKAGE_PIN B6 [get_ports {vgaGreen[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaGreen[2]}] +##Bank = 35, Pin name = IO_L3P_T0_DQS_AD5P_35, Sch name = VGA_G3 +#set_property PACKAGE_PIN A6 [get_ports {vgaGreen[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {vgaGreen[3]}] +##Bank = 15, Pin name = IO_L4P_T0_15, Sch name = VGA_HS +#set_property PACKAGE_PIN B11 [get_ports Hsync] + #set_property IOSTANDARD LVCMOS33 [get_ports Hsync] +##Bank = 15, Pin name = IO_L3N_T0_DQS_AD1N_15, Sch name = VGA_VS +#set_property PACKAGE_PIN B12 [get_ports Vsync] + #set_property IOSTANDARD LVCMOS33 [get_ports Vsync] + + + +##Micro SD Connector +##Bank = 35, Pin name = IO_L14P_T2_SRCC_35, Sch name = SD_RESET +#set_property PACKAGE_PIN E2 [get_ports sdReset] + #set_property IOSTANDARD LVCMOS33 [get_ports sdReset] +##Bank = 35, Pin name = IO_L9N_T1_DQS_AD7N_35, Sch name = SD_CD +#set_property PACKAGE_PIN A1 [get_ports sdCD] + #set_property IOSTANDARD LVCMOS33 [get_ports sdCD] +##Bank = 35, Pin name = IO_L9P_T1_DQS_AD7P_35, Sch name = SD_SCK +#set_property PACKAGE_PIN B1 [get_ports sdSCK] + #set_property IOSTANDARD LVCMOS33 [get_ports sdSCK] +##Bank = 35, Pin name = IO_L16N_T2_35, Sch name = SD_CMD +#set_property PACKAGE_PIN C1 [get_ports sdCmd] + #set_property IOSTANDARD LVCMOS33 [get_ports sdCmd] +##Bank = 35, Pin name = IO_L16P_T2_35, Sch name = SD_DAT0 +#set_property PACKAGE_PIN C2 [get_ports {sdData[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sdData[0]}] +##Bank = 35, Pin name = IO_L18N_T2_35, Sch name = SD_DAT1 +#set_property PACKAGE_PIN E1 [get_ports {sdData[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sdData[1]}] +##Bank = 35, Pin name = IO_L18P_T2_35, Sch name = SD_DAT2 +#set_property PACKAGE_PIN F1 [get_ports {sdData[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sdData[2]}] +##Bank = 35, Pin name = IO_L14N_T2_SRCC_35, Sch name = SD_DAT3 +#set_property PACKAGE_PIN D2 [get_ports {sdData[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {sdData[3]}] + + + +##Accelerometer +##Bank = 15, Pin name = IO_L6N_T0_VREF_15, Sch name = ACL_MISO +#set_property PACKAGE_PIN D13 [get_ports aclMISO] + #set_property IOSTANDARD LVCMOS33 [get_ports aclMISO] +##Bank = 15, Pin name = IO_L2N_T0_AD8N_15, Sch name = ACL_MOSI +#set_property PACKAGE_PIN B14 [get_ports aclMOSI] + #set_property IOSTANDARD LVCMOS33 [get_ports aclMOSI] +##Bank = 15, Pin name = IO_L12P_T1_MRCC_15, Sch name = ACL_SCLK +#set_property PACKAGE_PIN D15 [get_ports aclSCK] + #set_property IOSTANDARD LVCMOS33 [get_ports aclSCK] +##Bank = 15, Pin name = IO_L12N_T1_MRCC_15, Sch name = ACL_CSN +#set_property PACKAGE_PIN C15 [get_ports aclSS] + #set_property IOSTANDARD LVCMOS33 [get_ports aclSS] +##Bank = 15, Pin name = IO_L20P_T3_A20_15, Sch name = ACL_INT1 +#set_property PACKAGE_PIN C16 [get_ports aclInt1] + #set_property IOSTANDARD LVCMOS33 [get_ports aclInt1] +##Bank = 15, Pin name = IO_L11P_T1_SRCC_15, Sch name = ACL_INT2 +#set_property PACKAGE_PIN E15 [get_ports aclInt2] + #set_property IOSTANDARD LVCMOS33 [get_ports aclInt2] + + + +##Temperature Sensor +##Bank = 15, Pin name = IO_L14N_T2_SRCC_15, Sch name = TMP_SCL +#set_property PACKAGE_PIN F16 [get_ports tmpSCL] + #set_property IOSTANDARD LVCMOS33 [get_ports tmpSCL] +##Bank = 15, Pin name = IO_L13N_T2_MRCC_15, Sch name = TMP_SDA +#set_property PACKAGE_PIN G16 [get_ports tmpSDA] + #set_property IOSTANDARD LVCMOS33 [get_ports tmpSDA] +##Bank = 15, Pin name = IO_L1P_T0_AD0P_15, Sch name = TMP_INT +#set_property PACKAGE_PIN D14 [get_ports tmpInt] + #set_property IOSTANDARD LVCMOS33 [get_ports tmpInt] +##Bank = 15, Pin name = IO_L1N_T0_AD0N_15, Sch name = TMP_CT +#set_property PACKAGE_PIN C14 [get_ports tmpCT] + #set_property IOSTANDARD LVCMOS33 [get_ports tmpCT] + + + +##Omnidirectional Microphone +##Bank = 35, Pin name = IO_25_35, Sch name = M_CLK +#set_property PACKAGE_PIN J5 [get_ports micClk] + #set_property IOSTANDARD LVCMOS33 [get_ports micClk] +##Bank = 35, Pin name = IO_L24N_T3_35, Sch name = M_DATA +#set_property PACKAGE_PIN H5 [get_ports micData] + #set_property IOSTANDARD LVCMOS33 [get_ports micData] +##Bank = 35, Pin name = IO_0_35, Sch name = M_LRSEL +#set_property PACKAGE_PIN F5 [get_ports micLRSel] + #set_property IOSTANDARD LVCMOS33 [get_ports micLRSel] + + + +##PWM Audio Amplifier +##Bank = 15, Pin name = IO_L4N_T0_15, Sch name = AUD_PWM +#set_property PACKAGE_PIN A11 [get_ports ampPWM] + #set_property IOSTANDARD LVCMOS33 [get_ports ampPWM] +##Bank = 15, Pin name = IO_L6P_T0_15, Sch name = AUD_SD +#set_property PACKAGE_PIN D12 [get_ports ampSD] + #set_property IOSTANDARD LVCMOS33 [get_ports ampSD] + + +##USB-RS232 Interface +##Bank = 35, Pin name = IO_L7P_T1_AD6P_35, Sch name = UART_TXD_IN +#set_property PACKAGE_PIN C4 [get_ports RsRx] + #set_property IOSTANDARD LVCMOS33 [get_ports RsRx] +##Bank = 35, Pin name = IO_L11N_T1_SRCC_35, Sch name = UART_RXD_OUT +#set_property PACKAGE_PIN D4 [get_ports RsTx] + #set_property IOSTANDARD LVCMOS33 [get_ports RsTx] +##Bank = 35, Pin name = IO_L12N_T1_MRCC_35, Sch name = UART_CTS +#set_property PACKAGE_PIN D3 [get_ports RsCts] + #set_property IOSTANDARD LVCMOS33 [get_ports RsCts] +##Bank = 35, Pin name = IO_L5N_T0_AD13N_35, Sch name = UART_RTS +#set_property PACKAGE_PIN E5 [get_ports RsRts] + #set_property IOSTANDARD LVCMOS33 [get_ports RsRts] + + + +##USB HID (PS/2) +##Bank = 35, Pin name = IO_L13P_T2_MRCC_35, Sch name = PS2_CLK +#set_property PACKAGE_PIN F4 [get_ports PS2Clk] + #set_property IOSTANDARD LVCMOS33 [get_ports PS2Clk] + #set_property PULLUP true [get_ports PS2Clk] +##Bank = 35, Pin name = IO_L10N_T1_AD15N_35, Sch name = PS2_DATA +#set_property PACKAGE_PIN B2 [get_ports PS2Data] + #set_property IOSTANDARD LVCMOS33 [get_ports PS2Data] + #set_property PULLUP true [get_ports PS2Data] + + + +##SMSC Ethernet PHY +##Bank = 16, Pin name = IO_L11P_T1_SRCC_16, Sch name = ETH_MDC +set_property PACKAGE_PIN C9 [get_ports phy0_mdc] +set_property IOSTANDARD LVCMOS33 [get_ports phy0_mdc] +##Bank = 16, Pin name = IO_L14N_T2_SRCC_16, Sch name = ETH_MDIO +set_property PACKAGE_PIN A9 [get_ports phy0_mdio] +set_property IOSTANDARD LVCMOS33 [get_ports phy0_mdio] +##Bank = 35, Pin name = IO_L10P_T1_AD15P_35, Sch name = ETH_RSTN +set_property PACKAGE_PIN B3 [get_ports phy0_rstn] +set_property IOSTANDARD LVCMOS33 [get_ports phy0_rstn] +##Bank = 16, Pin name = IO_L6N_T0_VREF_16, Sch name = ETH_CRSDV +set_property PACKAGE_PIN D9 [get_ports phy0_crs] +set_property IOSTANDARD LVCMOS33 [get_ports phy0_crs] +##Bank = 16, Pin name = IO_L13N_T2_MRCC_16, Sch name = ETH_RXERR +set_property PACKAGE_PIN C10 [get_ports phy0_rxerr] +set_property IOSTANDARD LVCMOS33 [get_ports phy0_rxerr] +##Bank = 16, Pin name = IO_L19N_T3_VREF_16, Sch name = ETH_RXD0 +set_property PACKAGE_PIN D10 [get_ports {phy0_rx[0]}] +set_property IOSTANDARD LVCMOS33 [get_ports {phy0_rx[0]}] +##Bank = 16, Pin name = IO_L13P_T2_MRCC_16, Sch name = ETH_RXD1 +set_property PACKAGE_PIN C11 [get_ports {phy0_rx[1]}] +set_property IOSTANDARD LVCMOS33 [get_ports {phy0_rx[1]}] +##Bank = 16, Pin name = IO_L11N_T1_SRCC_16, Sch name = ETH_TXEN +set_property PACKAGE_PIN B9 [get_ports phy0_txen] +set_property IOSTANDARD LVCMOS33 [get_ports phy0_txen] +##Bank = 16, Pin name = IO_L14P_T2_SRCC_16, Sch name = ETH_TXD0 +set_property PACKAGE_PIN A10 [get_ports {phy0_tx[0]}] +set_property IOSTANDARD LVCMOS33 [get_ports {phy0_tx[0]}] +##Bank = 16, Pin name = IO_L12N_T1_MRCC_16, Sch name = ETH_TXD1 +set_property PACKAGE_PIN A8 [get_ports {phy0_tx[1]}] +set_property IOSTANDARD LVCMOS33 [get_ports {phy0_tx[1]}] +##Bank = 35, Pin name = IO_L11P_T1_SRCC_35, Sch name = ETH_REFCLK +set_property PACKAGE_PIN D5 [get_ports phy0_clk] +set_property IOSTANDARD LVCMOS33 [get_ports phy0_clk] +##Bank = 16, Pin name = IO_L12P_T1_MRCC_16, Sch name = ETH_INTN +set_property PACKAGE_PIN B8 [get_ports phy0_intn] +set_property IOSTANDARD LVCMOS33 [get_ports phy0_intn] + + + +##Quad SPI Flash +##Bank = CONFIG, Pin name = CCLK_0, Sch name = QSPI_SCK +#set_property PACKAGE_PIN E9 [get_ports {QspiSCK}] + #set_property IOSTANDARD LVCMOS33 [get_ports {QspiSCK}] +##Bank = CONFIG, Pin name = IO_L1P_T0_D00_MOSI_14, Sch name = QSPI_DQ0 +#set_property PACKAGE_PIN K17 [get_ports {QspiDB[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {QspiDB[0]}] +##Bank = CONFIG, Pin name = IO_L1N_T0_D01_DIN_14, Sch name = QSPI_DQ1 +#set_property PACKAGE_PIN K18 [get_ports {QspiDB[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {QspiDB[1]}] +##Bank = CONFIG, Pin name = IO_L20_T0_D02_14, Sch name = QSPI_DQ2 +#set_property PACKAGE_PIN L14 [get_ports {QspiDB[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {QspiDB[2]}] +##Bank = CONFIG, Pin name = IO_L2P_T0_D03_14, Sch name = QSPI_DQ3 +#set_property PACKAGE_PIN M14 [get_ports {QspiDB[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {QspiDB[3]}] +##Bank = CONFIG, Pin name = IO_L15N_T2_DQS_DOUT_CSO_B_14, Sch name = QSPI_CSN +#set_property PACKAGE_PIN L13 [get_ports QspiCSn] + #set_property IOSTANDARD LVCMOS33 [get_ports QspiCSn] + + + +##Cellular RAM +##Bank = 14, Pin name = IO_L14N_T2_SRCC_14, Sch name = CRAM_CLK +#set_property PACKAGE_PIN T15 [get_ports RamCLK] + #set_property IOSTANDARD LVCMOS33 [get_ports RamCLK] +##Bank = 14, Pin name = IO_L23P_T3_A03_D19_14, Sch name = CRAM_ADVN +#set_property PACKAGE_PIN T13 [get_ports RamADVn] + #set_property IOSTANDARD LVCMOS33 [get_ports RamADVn] +##Bank = 14, Pin name = IO_L4P_T0_D04_14, Sch name = CRAM_CEN +#set_property PACKAGE_PIN L18 [get_ports RamCEn] + #set_property IOSTANDARD LVCMOS33 [get_ports RamCEn] +##Bank = 15, Pin name = IO_L19P_T3_A22_15, Sch name = CRAM_CRE +#set_property PACKAGE_PIN J14 [get_ports RamCRE] + #set_property IOSTANDARD LVCMOS33 [get_ports RamCRE] +##Bank = 15, Pin name = IO_L15P_T2_DQS_15, Sch name = CRAM_OEN +#set_property PACKAGE_PIN H14 [get_ports RamOEn] + #set_property IOSTANDARD LVCMOS33 [get_ports RamOEn] +##Bank = 14, Pin name = IO_0_14, Sch name = CRAM_WEN +#set_property PACKAGE_PIN R11 [get_ports RamWEn] + #set_property IOSTANDARD LVCMOS33 [get_ports RamWEn] +##Bank = 15, Pin name = IO_L24N_T3_RS0_15, Sch name = CRAM_LBN +#set_property PACKAGE_PIN J15 [get_ports RamLBn] + #set_property IOSTANDARD LVCMOS33 [get_ports RamLBn] +##Bank = 15, Pin name = IO_L17N_T2_A25_15, Sch name = CRAM_UBN +#set_property PACKAGE_PIN J13 [get_ports RamUBn] + #set_property IOSTANDARD LVCMOS33 [get_ports RamUBn] +##Bank = 14, Pin name = IO_L14P_T2_SRCC_14, Sch name = CRAM_WAIT +#set_property PACKAGE_PIN T14 [get_ports RamWait] + #set_property IOSTANDARD LVCMOS33 [get_ports RamWait] + +##Bank = 14, Pin name = IO_L5P_T0_DQ06_14, Sch name = CRAM_DQ0 +#set_property PACKAGE_PIN R12 [get_ports {MemDB[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[0]}] +##Bank = 14, Pin name = IO_L19P_T3_A10_D26_14, Sch name = CRAM_DQ1 +#set_property PACKAGE_PIN T11 [get_ports {MemDB[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[1]}] +##Bank = 14, Pin name = IO_L20P_T3_A08)D24_14, Sch name = CRAM_DQ2 +#set_property PACKAGE_PIN U12 [get_ports {MemDB[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[2]}] +##Bank = 14, Pin name = IO_L5N_T0_D07_14, Sch name = CRAM_DQ3 +#set_property PACKAGE_PIN R13 [get_ports {MemDB[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[3]}] +##Bank = 14, Pin name = IO_L17N_T2_A13_D29_14, Sch name = CRAM_DQ4 +#set_property PACKAGE_PIN U18 [get_ports {MemDB[4]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[4]}] +##Bank = 14, Pin name = IO_L12N_T1_MRCC_14, Sch name = CRAM_DQ5 +#set_property PACKAGE_PIN R17 [get_ports {MemDB[5]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[5]}] +##Bank = 14, Pin name = IO_L7N_T1_D10_14, Sch name = CRAM_DQ6 +#set_property PACKAGE_PIN T18 [get_ports {MemDB[6]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[6]}] +##Bank = 14, Pin name = IO_L7P_T1_D09_14, Sch name = CRAM_DQ7 +#set_property PACKAGE_PIN R18 [get_ports {MemDB[7]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[7]}] +##Bank = 15, Pin name = IO_L22N_T3_A16_15, Sch name = CRAM_DQ8 +#set_property PACKAGE_PIN F18 [get_ports {MemDB[8]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[8]}] +##Bank = 15, Pin name = IO_L22P_T3_A17_15, Sch name = CRAM_DQ9 +#set_property PACKAGE_PIN G18 [get_ports {MemDB[9]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[9]}] +##Bank = 15, Pin name = IO_IO_L18N_T2_A23_15, Sch name = CRAM_DQ10 +#set_property PACKAGE_PIN G17 [get_ports {MemDB[10]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[10]}] +##Bank = 14, Pin name = IO_L4N_T0_D05_14, Sch name = CRAM_DQ11 +#set_property PACKAGE_PIN M18 [get_ports {MemDB[11]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[11]}] +##Bank = 14, Pin name = IO_L10N_T1_D15_14, Sch name = CRAM_DQ12 +#set_property PACKAGE_PIN M17 [get_ports {MemDB[12]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[12]}] +##Bank = 14, Pin name = IO_L9N_T1_DQS_D13_14, Sch name = CRAM_DQ13 +#set_property PACKAGE_PIN P18 [get_ports {MemDB[13]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[13]}] +##Bank = 14, Pin name = IO_L9P_T1_DQS_14, Sch name = CRAM_DQ14 +#set_property PACKAGE_PIN N17 [get_ports {MemDB[14]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[14]}] +##Bank = 14, Pin name = IO_L12P_T1_MRCC_14, Sch name = CRAM_DQ15 +#set_property PACKAGE_PIN P17 [get_ports {MemDB[15]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemDB[15]}] + +##Bank = 15, Pin name = IO_L23N_T3_FWE_B_15, Sch name = CRAM_A0 +#set_property PACKAGE_PIN J18 [get_ports {MemAdr[0]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[0]}] +##Bank = 15, Pin name = IO_L18P_T2_A24_15, Sch name = CRAM_A1 +#set_property PACKAGE_PIN H17 [get_ports {MemAdr[1]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[1]}] +##Bank = 15, Pin name = IO_L19N_T3_A21_VREF_15, Sch name = CRAM_A2 +#set_property PACKAGE_PIN H15 [get_ports {MemAdr[2]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[2]}] +##Bank = 15, Pin name = IO_L23P_T3_FOE_B_15, Sch name = CRAM_A3 +#set_property PACKAGE_PIN J17 [get_ports {MemAdr[3]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[3]}] +##Bank = 15, Pin name = IO_L13P_T2_MRCC_15, Sch name = CRAM_A4 +#set_property PACKAGE_PIN H16 [get_ports {MemAdr[4]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[4]}] +##Bank = 15, Pin name = IO_L24P_T3_RS1_15, Sch name = CRAM_A5 +#set_property PACKAGE_PIN K15 [get_ports {MemAdr[5]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[5]}] +##Bank = 15, Pin name = IO_L17P_T2_A26_15, Sch name = CRAM_A6 +#set_property PACKAGE_PIN K13 [get_ports {MemAdr[6]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[6]}] +##Bank = 14, Pin name = IO_L11P_T1_SRCC_14, Sch name = CRAM_A7 +#set_property PACKAGE_PIN N15 [get_ports {MemAdr[7]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[7]}] +##Bank = 14, Pin name = IO_L16N_T2_SRCC-14, Sch name = CRAM_A8 +#set_property PACKAGE_PIN V16 [get_ports {MemAdr[8]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[8]}] +##Bank = 14, Pin name = IO_L22P_T3_A05_D21_14, Sch name = CRAM_A9 +#set_property PACKAGE_PIN U14 [get_ports {MemAdr[9]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[9]}] +##Bank = 14, Pin name = IO_L22N_T3_A04_D20_14, Sch name = CRAM_A10 +#set_property PACKAGE_PIN V14 [get_ports {MemAdr[10]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[10]}] +##Bank = 14, Pin name = IO_L20N_T3_A07_D23_14, Sch name = CRAM_A11 +#set_property PACKAGE_PIN V12 [get_ports {MemAdr[11]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[11]}] +##Bank = 14, Pin name = IO_L8N_T1_D12_14, Sch name = CRAM_A12 +#set_property PACKAGE_PIN P14 [get_ports {MemAdr[12]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[12]}] +##Bank = 14, Pin name = IO_L18P_T2_A12_D28_14, Sch name = CRAM_A13 +#set_property PACKAGE_PIN U16 [get_ports {MemAdr[13]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[13]}] +##Bank = 14, Pin name = IO_L13N_T2_MRCC_14, Sch name = CRAM_A14 +#set_property PACKAGE_PIN R15 [get_ports {MemAdr[14]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[14]}] +##Bank = 14, Pin name = IO_L8P_T1_D11_14, Sch name = CRAM_A15 +#set_property PACKAGE_PIN N14 [get_ports {MemAdr[15]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[15]}] +##Bank = 14, Pin name = IO_L11N_T1_SRCC_14, Sch name = CRAM_A16 +#set_property PACKAGE_PIN N16 [get_ports {MemAdr[16]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[16]}] +##Bank = 14, Pin name = IO_L6N_T0_D08_VREF_14, Sch name = CRAM_A17 +#set_property PACKAGE_PIN M13 [get_ports {MemAdr[17]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[17]}] +##Bank = 14, Pin name = IO_L18N_T2_A11_D27_14, Sch name = CRAM_A18 +#set_property PACKAGE_PIN V17 [get_ports {MemAdr[18]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[18]}] +##Bank = 14, Pin name = IO_L17P_T2_A14_D30_14, Sch name = CRAM_A19 +#set_property PACKAGE_PIN U17 [get_ports {MemAdr[19]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[19]}] +##Bank = 14, Pin name = IO_L24N_T3_A00_D16_14, Sch name = CRAM_A20 +#set_property PACKAGE_PIN T10 [get_ports {MemAdr[20]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[20]}] +##Bank = 14, Pin name = IO_L10P_T1_D14_14, Sch name = CRAM_A21 +#set_property PACKAGE_PIN M16 [get_ports {MemAdr[21]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[21]}] +##Bank = 14, Pin name = IO_L23N_T3_A02_D18_14, Sch name = CRAM_A22 +#set_property PACKAGE_PIN U13 [get_ports {MemAdr[22]}] + #set_property IOSTANDARD LVCMOS33 [get_ports {MemAdr[22]}] +