OpenCores
URL https://opencores.org/ocsvn/hwlu/hwlu/trunk

Subversion Repositories hwlu

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /
    from Rev 7 to Rev 8
    Reverse comparison

Rev 7 → Rev 8

/hwlu/trunk/syn/xst/bin/change_dw.pl
0,0 → 1,28
#! /usr/bin/perl
#
# File : change_dw.pl
# Description: Changes values for the DW generic at declaration site.
# To be used with the "hw_loops<num>_top.vhd" top-level file.
# Resulting file is expected to be renamed to
# "hw_loops<num>_top_fix.vhd".
# Usage : ./change_dw.pl <file.vhd> <dw>
#
# Author : Nikolaos Kavvadias (c) 2010
#
 
open(FILE1,"<$ARGV[0]")|| die "## cannot open file $ARGV[0]\n";
 
$dw_ix = 0;
 
while ($line = <FILE1>)
{
if ($line =~ m/.*DW.*:.*integer.*8/)
{
if ($dw_ix < 1)
{
$line =~ s// DW : integer := $ARGV[1]/;
$dw_ix = 1;
}
}
print $line;
}
/hwlu/trunk/syn/xst/bin/run_xst_hwlu.sh
0,0 → 1,65
#!/bin/bash
 
VPP_HOME=/usr/local/bin/vpp
VPP=vpp
 
ARCH=DUMMY
DEVICE=DUMMY
 
 
#for device in 2
#for device in 3
for device in 4
do
#
if [ "$device" = "0" ]
then
ARCH="spartan3"
DEVICE="xc3s200-ft256-4"
elif [ "$device" = "1" ]
then
ARCH="spartan3"
DEVICE="xc3s1000-ft256-4"
elif [ "$device" = "2" ]
then
ARCH="spartan3"
DEVICE="xc3s1500-fg456-4"
elif [ "$device" = "3" ]
then
ARCH="virtex4"
DEVICE="xc4vlx25-ff668-10"
elif [ "$device" = "4" ]
then
ARCH="virtex5"
DEVICE="xc5vlx50t-ff665-1"
fi
#
# for dw in 8 12 16
# for dw in 8
for dw in 12
# for dw in 16
do
# for nlp in 1 2 3 4 5 6 7 8
for nlp in 2 5
do
cd ../../../rtl/vhdl
# ../../sw/gen_priority_encoder ${nlp} prenc
# ../../sw/gen_hw_looping -nlp ${nlp} -nodistrib hw
../../sw/gen_hw_looping -nlp ${nlp} hw
cd ../../syn/xst/bin
./change_dw.pl ../../../rtl/vhdl/hw_loops${nlp}_top.vhd ${dw} >../../../rtl/vhdl/hw_loops${nlp}_top_fix.vhd
make -f Makefile.ise clean
make -f Makefile.ise DEFAULT_ARCH=hw_looping DEFAULT_PART=${DEVICE} PROJECT=hw_looping${nlp} SOURCES="../../../rtl/vhdl/add_dw.vhd ../../../rtl/vhdl/reg_dw.vhd ../../../rtl/vhdl/cmpeq.vhd ../../../rtl/vhdl/index_inc.vhd ../../../rtl/vhdl/prenc_loops${nlp}.vhd ../../../rtl/vhdl/hw_loops${nlp}_top_fix.vhd" TOP=hw_looping hw_looping${nlp}.ngc
done
done
done
 
if [ "$SECONDS" -eq 1 ]
then
units=second
else
units=seconds
fi
echo "This script has been running $SECONDS $units."
 
exit 0
/hwlu/trunk/syn/xst/bin/Makefile.ise
0,0 → 1,117
XDIR = /cygdrive/c/Xilinx92i
 
############################################################################
# Some nice targets
############################################################################
 
#install: $(PROJECT).bit
# ljp $< /dev/parport0
 
floorplan: $(PROJECT).ngd $(PROJECT).par.ncd
$(FLOORPLAN) $^
 
report:
cat *.srp
 
clean::
rm -f *.work *.xst
rm -f *.ngc *.ngd *.bld *.srp *.lso *.prj
rm -f *.map.mrp *.map.ncd *.map.ngm *.mcs *.par.ncd *.par.pad
rm -f *.pcf *.prm *.bgn *.drc
rm -f *.par_pad.csv *.par_pad.txt *.par.par *.par.xpi
rm -f *.bit
rm -f *.vcd *.vvp
rm -f verilog.dump verilog.log
rm -rf _ngo/
rm -rf xst/
 
 
############################################################################
# Simulation using cver and gtkwave
############################################################################
 
#CVER = cver
#GTKWAVE = ~/bin/gtkwave
#CVERFLAGS = $(XDIR)/verilog/src/glbl.v
#CVERFLAGS += -y $(TOPDIR)/Unisims
#CVERFLAGS += +libext+.v+ -q
#CVERFLAGS += +define+SIMULATION
 
#.PRECIOUS: %.vcd
 
#sim_%: %.vcd
# $(GTKWAVE) $^ $@.save
 
#%.vcd: sim_%.v $(SOURCES)
# @rm -f $@.vcd
# $(CVER) $^ $(CVERFLAGS)
# @rm -f verilog.log
 
 
############################################################################
# Xilinx tools and wine
############################################################################
 
XST_DEFAULT_OPT_MODE = Speed
XST_DEFAULT_OPT_LEVEL = 1
 
XBIN = $(XDIR)/bin/nt
XST=$(XBIN)/xst
NGDBUILD=$(XBIN)/ngdbuild
MAP=$(XBIN)/map
PAR=$(XBIN)/par
BITGEN=$(XBIN)/bitgen
PROMGEN=$(XBIN)/promgen
FLOORPLAN=$(XBIN)/floorplanner
 
XSTWORK = $(PROJECT).work
XSTSCRIPT = $(PROJECT).xst
 
.PRECIOUS: %.ngc %.ngc %.ngd %.map.ncd %.bit %.par.ncd
 
ifndef XST_OPT_MODE
XST_OPT_MODE = $(XST_DEFAULT_OPT_MODE)
endif
ifndef XST_OPT_LEVEL
XST_OPT_LEVEL = $(XST_DEFAULT_OPT_LEVEL)
endif
ifndef ARCH
ARCH = $(DEFAULT_ARCH)
endif
ifndef PART
PART = $(DEFAULT_PART)
endif
 
#compile: $(PROJECT).xst
# $(XST)
 
$(XSTWORK): $(SOURCES)
> $@
for a in $(SOURCES); do echo "vhdl work $$a" >> $@; done
 
$(XSTSCRIPT): $(XSTWORK)
> $@
echo -n "run -ifn $(XSTWORK) -ifmt mixed -top $(TOP) -ofn $(PROJECT).ngc" >> $@
echo " -ofmt NGC -p $(PART) -iob false -iobuf no -opt_mode $(XST_OPT_MODE) -opt_level $(XST_OPT_LEVEL)" >> $@
 
%.ngc: $(XSTSCRIPT)
$(XST) -ifn $<
 
%.ngd: %.ngc $(PROJECT).ucf
$(NGDBUILD) -intstyle ise -dd _ngo -uc $(PROJECT).ucf -p $(PART) $*.ngc $*.ngd
 
%.map.ncd: %.ngd
$(MAP) -o $@ $< $*.pcf
 
%.par.ncd: %.map.ncd
$(PAR) -w -ol high $< $@ $*.pcf
 
%.bit: %.par.ncd
$(BITGEN) -w -g UnusedPin:PullNone $< $@ $*.pcf
 
%.prm: %.bit
$(PROMGEN) -o $@ -w -u 0 $<
 
############################################################################
# End
############################################################################

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.