Merge branch 'b100_2rx_fpga' into b100_2rx

This commit is contained in:
Josh Blum 2012-09-04 16:27:57 -07:00
commit d84207264e
4 changed files with 134 additions and 1 deletions

View File

@ -170,7 +170,11 @@ module B100
assign { cgen_sync_b, cgen_ref_sel } = {~cgen_sync, 1'b1};
u1plus_core #(
`ifdef NUM_RX_DSP
.NUM_RX_DSPS(`NUM_RX_DSP),
`else
.NUM_RX_DSPS(1),
`endif
.DSP_RX_XTRA_FIFOSIZE(11),
.DSP_TX_XTRA_FIFOSIZE(12),
.USE_PACKET_PADDER(1)

View File

@ -0,0 +1,17 @@
#
# Copyright 2011 Ettus Research LLC
#
all: B100 B100_2RX
find -name "*.twr" | xargs grep constraint | grep met
clean:
rm -rf build*
B100:
make -f Makefile.$@ bin
B100_2RX:
make -f Makefile.$@ bin
.PHONY: all clean

View File

@ -0,0 +1,106 @@
#
# Copyright 2008-2012 Ettus Research LLC
#
##################################################
# Project Setup
##################################################
TOP_MODULE := B100
BUILD_DIR := build-B100_2RX/
# set me in a custom makefile
CUSTOM_SRCS =
CUSTOM_DEFS =
##################################################
# Include other makefiles
##################################################
include ../Makefile.common
include ../../fifo/Makefile.srcs
include ../../control_lib/Makefile.srcs
include ../../sdr_lib/Makefile.srcs
include ../../serdes/Makefile.srcs
include ../../simple_gemac/Makefile.srcs
include ../../timing/Makefile.srcs
include ../../opencores/Makefile.srcs
include ../../vrt/Makefile.srcs
include ../../udp/Makefile.srcs
include ../../coregen/Makefile.srcs
include ../../gpif/Makefile.srcs
##################################################
# Project Properties
##################################################
export PROJECT_PROPERTIES := \
family "Spartan3A" \
device XC3S1400A \
package ft256 \
speed -4 \
top_level_module_type "HDL" \
synthesis_tool "XST (VHDL/Verilog)" \
simulator "ISE Simulator (VHDL/Verilog)" \
"Preferred Language" "Verilog" \
"Enable Message Filtering" FALSE \
"Display Incremental Messages" FALSE
##################################################
# Sources
##################################################
TOP_SRCS = \
B100.v \
u1plus_core.v \
B100.ucf \
timing.ucf
SOURCES = $(abspath $(TOP_SRCS)) $(FIFO_SRCS) \
$(CONTROL_LIB_SRCS) $(SDR_LIB_SRCS) $(SERDES_SRCS) \
$(SIMPLE_GEMAC_SRCS) $(TIMING_SRCS) $(OPENCORES_SRCS) \
$(VRT_SRCS) $(UDP_SRCS) $(COREGEN_SRCS) $(EXTRAM_SRCS) \
$(GPIF_SRCS)
##################################################
# Process Properties
##################################################
SYNTHESIZE_PROPERTIES = \
"Number of Clock Buffers" 8 \
"Pack I/O Registers into IOBs" Yes \
"Optimization Effort" High \
"Optimize Instantiated Primitives" TRUE \
"Register Balancing" Yes \
"Use Clock Enable" Auto \
"Use Synchronous Reset" Auto \
"Use Synchronous Set" Auto \
"Verilog Macros" "NUM_RX_DSP=2 DISABLE_TX_DSP=1 $(CUSTOM_DEFS)"
TRANSLATE_PROPERTIES = \
"Macro Search Path" "$(shell pwd)/../../coregen/"
MAP_PROPERTIES = \
"Generate Detailed MAP Report" TRUE \
"Allow Logic Optimization Across Hierarchy" TRUE \
"Map to Input Functions" 4 \
"Optimization Strategy (Cover Mode)" Speed \
"Pack I/O Registers/Latches into IOBs" "For Inputs and Outputs" \
"Perform Timing-Driven Packing and Placement" TRUE \
"Map Effort Level" High \
"Extra Effort" Normal \
"Combinatorial Logic Optimization" TRUE \
"Register Duplication" TRUE
PLACE_ROUTE_PROPERTIES = \
"Place & Route Effort Level (Overall)" High
STATIC_TIMING_PROPERTIES = \
"Number of Paths in Error/Verbose Report" 10 \
"Report Type" "Error Report"
GEN_PROG_FILE_PROPERTIES = \
"Configuration Rate" 6 \
"Create Binary Configuration File" TRUE \
"Done (Output Events)" 5 \
"Enable Bitstream Compression" TRUE \
"Enable Outputs (Output Events)" 6 \
"Unused IOB Pins" "Pull Up"
SIM_MODEL_PROPERTIES = ""

View File

@ -316,6 +316,12 @@ module u1plus_core
wire [31:0] sample_tx;
wire strobe_tx, clear_tx;
`ifdef DISABLE_TX_DSP
assign tx_dst_rdy = 1; //null sink
assign run_tx = 0;
assign tx_i = 0;
assign tx_q = 0;
`else
vita_tx_chain #(.BASE(SR_TX_CTRL),
.FIFOSIZE(DSP_TX_FIFOSIZE),
.POST_ENGINE_FIFOSIZE(DSP_TX_XTRA_FIFOSIZE),
@ -346,7 +352,7 @@ module u1plus_core
.set_stb(set_stb),.set_addr(set_addr),.set_data(set_data),
.tx_i(tx_fe_i), .tx_q(tx_fe_q), .run(1'b1),
.dac_a(tx_i), .dac_b(tx_q));
`endif
// /////////////////////////////////////////////////////////////////////////////////////
// Debug circuitry