Picon

Linux on Nanoboard



Hello Experts,


could someone help me load Linux on to the Altium Nanoboard?. I could sucessfully load the bitfile of LEON3 on to the Nanoboard. Now, I would like to run linux on this softcore. Since, I am beginner I would appreciate any kind of support in this regard.


Thanks and Regards,

Ravi



__._,_.___
Posted by: potluri.ravikumar-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org



__,_._,___
Picon

Compile Toolchain with GCC 4.9.1 [4 Attachments]



Hello everybody !

As I undestand the latest versions of GCC and corresponding libraries (newlib, binutils etc) supports LEON 3 compilation. So I tied to compile toolchain :)
 It seems that compilation process of toolchain is okay, but when I trying to compile main.c the following error appears:

af <at> af-kubuntu:~/leon3/toolchains/sparc-elf-4.9.1/bin$ ./sparc-leon3-elf-gcc main.c
/home/af/leon3/toolchains/sparc-elf-4.9.1/bin/../lib/gcc/sparc-leon3-elf/4.9.1/../../../../sparc-leon3-elf/lib/crt0.o: In function `zerobss':
/home/af/leon3/gcc-4.9.1-newlib-2.2.0-build/sparc-leon3-elf/libgloss/sparc_leon/../../../../newlib-2.2.0/libgloss/sparc_leon/crt0.S:53: undefined reference to `bdinit2'
/home/af/leon3/gcc-4.9.1-newlib-2.2.0-build/sparc-leon3-elf/libgloss/sp arc_leon/../../../../newlib-2.2.0/libgloss/sparc_leon/crt0.S:56: undefined reference to `prelibchook'
/home/af/leon3/gcc-4.9.1-newlib-2.2.0-build/sparc-leon3-elf/libgloss/sparc_leon/../../../../newlib-2.2.0/libgloss/sparc_leon/crt0.S:59: undefined reference to `_call_initcalls'
/home/af/leon3/gcc-4.9.1-newlib-2.2.0-build/sparc-leon3-elf/libgloss/sparc_leon/../../../../newlib-2.2.0/libgloss/sparc_leon/crt0.S:63: undefined reference to `atexit'
/home/af/leon3/gcc-4.9.1-newlib-2.2.0-build/sparc-leon3-elf/libgloss/sparc_leon/../../../../newlib-2.2.0/libgloss/sparc_leon/crt0.S:71: undefined reference to `_exit'
collect2: error: ld returned 1 exit status


My makefiles attached if necessary.


Alexander






__._,_.___ View attachments on the web
Posted by: alfedotov-/E1597aS9LQAvxtiuMwx3w@public.gmane.org



__,_._,___
include Makefile.versions

TOOLBASE=/opt/sparc-elf-$(GCC_VERSION)
PREFIX = /opt/sparc-elf-$(GCC_VERSION)/
BIN    = $(PREFIX)/bin
CONFIG_PATH = $(PATH)
EXPORT_PATH = export PATH=$(BIN):$(CONFIG_PATH)
TMPDIR_EXTRA = gcc-$(GCC_VERSION)-$(TUNE_PREFIX)
BUILD=`uname -m`-linux-gnu
HOST=`uname -m`-linux-gnu

TARGET=sparc-leon3-elf

BINUTILS_DIR=binutils-$(BINUTILS_VERSION)
GMPDIR=gmp-$(GMP_VERSION)
MPFRDIR=mpfr-$(MPFR_VERSION)
NEWLIBDIR=newlib-$(NEWLIBC_VERSION)
MPCDIR=mpc-$(MPC_VERSION)
M_MYSELF=Makefile.gcc-$(GCC_VERSION)

build-all: symlink\
	   gmp-clean \
	   mpfr-clean \
	   mpc-clean \
	   newlib-clean \
	   gcc-clean \
	   binutils-clean \
	   binutils-configure \
	   binutils-compile \
	   binutils-install \
	   gmp-configure \
	   gmp-compile \
	   gmp-install \
	   mpfr-configure \
	   mpfr-compile \
	   mpfr-install \
	   mpc-configure \
	   mpc-compile \
	   mpc-install \
	   gcc-configure \
	   gcc-compile-gcc \
	   gcc-install-gcc \
	   newlib-configure \
	   newlib-compile \
	   newlib-install \
	   gcc-configure \
	   gcc-compile \
	   gcc-install

# --------------------------------------
gcc-build: gcc-clean gcc-configure gcc-compile gcc-install

gcc-configure:
	if [ ! -d $(TMPDIR_EXTRA)gcc-$(GCC_VERSION)-build ] ; then mkdir
$(TMPDIR_EXTRA)gcc-$(GCC_VERSION)-build; fi
	cd $(TMPDIR_EXTRA)gcc-$(GCC_VERSION)-build; $(EXPORT_PATH); \
	../$(GCC-GIT-PREFIX)gcc-$(GCC_VERSION)/configure \
	--target=$(TARGET) --prefix=$(PREFIX) \
	--with-gnu-as --with-gnu-ld \
	--with-gmp=$(CURDIR)/$(TMPDIR_EXTRA)$(GMPDIR)-install \
	--with-mpfr=$(CURDIR)/$(TMPDIR_EXTRA)$(MPFRDIR)-install \
	--with-mpc=$(CURDIR)/$(TMPDIR_EXTRA)$(MPCDIR)-install \
	--verbose --enable-languages=c,c++ --disable-shared  --disable-nls \
	--with-pkgversion='BCC $(GCC_VERSION) release $(RELEASE_VERSION)' \
	--with-newlib --with-cpu=leon3 2>&1 | tee compile-gcc-configure.out
	
gcc-compile:
	cd $(TMPDIR_EXTRA)gcc-$(GCC_VERSION)-build; $(EXPORT_PATH); \
	make all 2>&1 | tee compile-gcc-make.out

gcc-compile-gcc:
	cd $(TMPDIR_EXTRA)gcc-$(GCC_VERSION)-build; $(EXPORT_PATH); \
	make all-gcc 2>&1 | tee compile-gcc-make.out

gcc-clean-gcc:
	cd $(TMPDIR_EXTRA)gcc-$(GCC_VERSION)-build; $(EXPORT_PATH); \
	make clean-gcc 2>&1 | tee clean-gcc-make.out
	
gcc-install:
	cd $(TMPDIR_EXTRA)gcc-$(GCC_VERSION)-build; $(EXPORT_PATH); \
	make install 2>&1 | tee compile-gcc-install.out

gcc-install-gcc:
	cd $(TMPDIR_EXTRA)gcc-$(GCC_VERSION)-build; $(EXPORT_PATH); \
	make install-gcc 2>&1 | tee compile-gcc-install.out

gcc-clean:
	-rm -rf $(TMPDIR_EXTRA)gcc-$(GCC_VERSION)-build

gcc-configure-nonewlib:
	if [ ! -d $(TMPDIR_EXTRA)gcc-$(GCC_VERSION)-build ] ; then mkdir gcc-$(GCC_VERSION)-build; fi
	cd $(TMPDIR_EXTRA)gcc-$(GCC_VERSION)-build; $(EXPORT_PATH); \
	../$(GCC-GIT-PREFIX)gcc-$(GCC_VERSION)/configure --target=$(TARGET) --prefix=$(PREFIX) \
	--with-gnu-as --with-gnu-ld \
	--verbose --enable-languages=c --disable-shared  --disable-nls \
	--with-cpu=leon3 2>&1 | tee compile-gcc-configure.out
	
	

include Makefile.common		
include Makefile.versions

TARGET-NEWLIB?=$(TARGET)

newlib-all: newlib-clean newlib-configure newlib-compile newlib-install

newlib-dir:
	if [ ! -d $(TMPDIR_EXTRA)newlib-$(NEWLIBC_VERSION)-build ] ; then mkdir
$(TMPDIR_EXTRA)newlib-$(NEWLIBC_VERSION)-build; fi

newlib-configure: newlib-dir
	cd $(TMPDIR_EXTRA)newlib-$(NEWLIBC_VERSION)-build; $(EXPORT_PATH); \
	../newlib-$(NEWLIBC_VERSION)/configure --build=$(BUILD) --host=$(HOST)
--target=$(TARGET-NEWLIB) --prefix=$(PREFIX) \
	--with-cpu=leon3  2>&1 | tee compile-newlib-configure.out
#--enable-maintainer-mode

newlib-compile: newlib-dir
	cd $(TMPDIR_EXTRA)newlib-$(NEWLIBC_VERSION)-build; $(EXPORT_PATH); \
	make $(EXTRA_FLAGS) 2>&1 | tee compile-newlib-make.out

newlib-compile-libgloss: newlib-dir
	cd $(TMPDIR_EXTRA)newlib-$(NEWLIBC_VERSION)-build; $(EXPORT_PATH); 
	make $(EXTRA_FLAGS) maybe-all-target-libgloss 2>&1 | tee compile-newlib-make.out
	
newlib-install: newlib-dir
	cd $(TMPDIR_EXTRA)newlib-$(NEWLIBC_VERSION)-build; $(EXPORT_PATH); \
	make  $(EXTRA_FLAGS) install 2>&1 | tee compile-newlib-install.out

newlib-install-libgloss: newlib-dir
	cd $(TMPDIR_EXTRA)newlib-$(NEWLIBC_VERSION)-build; $(EXPORT_PATH); \
	make  $(EXTRA_FLAGS) maybe-install-target-libgloss 2>&1 | tee compile-newlib-install.out
	
newlib-clean:
	-rm -rf $(TMPDIR_EXTRA)newlib-$(NEWLIBC_VERSION)-build
	
# --------------------------------------
binutils-all: binutils-clean binutils-configure binutils-compile binutils-install

TARGET-BINUTILS?=$(TARGET)

binutils-dir:
	if [ ! -d $(TMPDIR_EXTRA)$(BINUTILS_DIR)-build ] ; then mkdir
$(TMPDIR_EXTRA)$(BINUTILS_DIR)-build; fi
	
binutils-configure: binutils-dir
	cd $(TMPDIR_EXTRA)$(BINUTILS_DIR)-build; $(EXPORT_PATH); \
	../$(BINUTILS-GIT-PREFIX)$(BINUTILS_DIR)/configure \
	--build=$(BUILD) --host=$(HOST) --target=$(TARGET-BINUTILS) --prefix=$(PREFIX)
$(BINUTIL_EXTRA) \
	--with-cpu=leon3 $(PAGE_SIZE_EXTRA_FLAG)  2>&1 | tee compile-binutils-configure.out

binutils-compile: binutils-dir
	cd $(TMPDIR_EXTRA)$(BINUTILS_DIR)-build; $(EXPORT_PATH); \
	 make $(EXTRA_FLAGS) 2>&1 | tee compile-binutils-make.out

binutils-install: binutils-dir
	cd $(TMPDIR_EXTRA)$(BINUTILS_DIR)-build; $(EXPORT_PATH); \
	make  $(EXTRA_FLAGS) install 2>&1 | tee compile-binutils-install.out

binutils-clean:
	rm -rf $(TMPDIR_EXTRA)$(BINUTILS_DIR)-build

testexport:
	echo $(EXPORT_PATH)

#---------------------------------------
gmp-all:  gmp-configure gmp-compile gmp-install

gmp-dir:
	if [ ! -d $(TMPDIR_EXTRA)$(GMPDIR)-build$(GMPTARGET) ] ; then mkdir
$(TMPDIR_EXTRA)$(GMPDIR)-build$(GMPTARGET); fi
	if [ ! -d $(TMPDIR_EXTRA)$(GMPDIR)-install$(GMPTARGET) ] ; then mkdir
$(TMPDIR_EXTRA)$(GMPDIR)-install$(GMPTARGET); fi
	
gmp-configure: gmp-dir
	cd $(TMPDIR_EXTRA)$(GMPDIR)-build$(GMPTARGET); $(EXPORT_PATH); \
	../$(GMPDIR)/configure  \
	--build=$(BUILD) --host=$(HOST) --verbose
--prefix=$(CURDIR)/$(TMPDIR_EXTRA)$(GMPDIR)-install$(GMPTARGET) \
	--disable-shared  2>&1 | tee compile-gmp-configure.out

gmp-compile: 
	     cd $(TMPDIR_EXTRA)$(GMPDIR)-build$(GMPTARGET); $(EXPORT_PATH); \
	make 2>&1 | tee compile-gmp-compile.out

gmp-install: 
	     cd $(TMPDIR_EXTRA)$(GMPDIR)-build$(GMPTARGET); $(EXPORT_PATH); \
	make install 2>&1 | tee compile-gmp-install.out

gmp-clean: 
	     cd $(TMPDIR_EXTRA)$(GMPDIR)-build$(GMPTARGET); $(EXPORT_PATH); \
	make clean 2>&1 | tee compile-gmp-clean.out

gmp-configure-target:
	make -f $(M_MYSELF) gmp-configure GMPTARGET=-target GMPTARGETOPT="--host=sparc-linux
CC=sparc-linux-gcc "
	
#---------------------------------------
mpfr-all: mpfr-configure mpfr-compile mpfr-install
	
mpfr-dir:
	if [ ! -d $(TMPDIR_EXTRA)$(MPFRDIR)-build$(MPFRTARGET) ] ; then mkdir
$(TMPDIR_EXTRA)$(MPFRDIR)-build$(MPFRTARGET); fi
	if [ ! -d $(TMPDIR_EXTRA)$(MPFRDIR)-install$(MPFRTARGET) ] ; then mkdir
$(TMPDIR_EXTRA)$(MPFRDIR)-install$(MPFRTARGET); fi
	
mpfr-configure: mpfr-dir
	cd $(TMPDIR_EXTRA)$(MPFRDIR)-build$(MPFRTARGET); $(EXPORT_PATH); \
	../$(MPFRDIR)/configure  \
	--verbose --prefix=$(CURDIR)/$(TMPDIR_EXTRA)$(MPFRDIR)-install \
	--build=$(BUILD) --host=$(HOST) --disable-shared \
	 --with-gmp=$(CURDIR)/$(TMPDIR_EXTRA)$(GMPDIR)-install  2>&1 | tee compile-mpfr-configure.out

mpfr-compile: 
	     cd $(TMPDIR_EXTRA)$(MPFRDIR)-build$(MPFRTARGET); $(EXPORT_PATH); \
	make 2>&1 | tee compile-mpfr-compile.out

mpfr-install: 
	     cd $(TMPDIR_EXTRA)$(MPFRDIR)-build$(MPFRTARGET); $(EXPORT_PATH); \
	make install 2>&1 | tee compile-mpfr-install.out

mpfr-clean: 
	     cd $(TMPDIR_EXTRA)$(MPFRDIR)-build$(MPFRTARGET); $(EXPORT_PATH); \
	make clean 2>&1 | tee compile-mpfr-clean.out

mpfr-configure-target:
	make -f $(M_MYSELF) mpfr-configure MPFRTARGET=-target MPFRTARGETOPT="--host=sparc-linux
CC=sparc-linux-gcc "

	
#---------------------------------------
mpc-all: mpc-configure mpc-compile mpc-install

mpc-dir:
	if [ ! -d $(TMPDIR_EXTRA)$(MPCDIR)-build ] ; then mkdir $(TMPDIR_EXTRA)$(MPCDIR)-build; fi
	if [ ! -d $(TMPDIR_EXTRA)$(MPCDIR)-install ] ; then mkdir $(TMPDIR_EXTRA)$(MPCDIR)-install; fi
	
mpc-configure: mpc-dir
	cd $(TMPDIR_EXTRA)$(MPCDIR)-build; $(EXPORT_PATH); \
	../$(MPCDIR)/configure  \
	--verbose --prefix=$(CURDIR)/$(TMPDIR_EXTRA)$(MPCDIR)-install \
	--build=$(BUILD) --host=$(HOST) --disable-shared \
	--with-gmp=$(CURDIR)/$(TMPDIR_EXTRA)$(GMPDIR)-install
--with-mpfr=$(CURDIR)/$(TMPDIR_EXTRA)$(MPFRDIR)-install \
	  2>&1 | tee compile-mpc-configure.out

mpc-compile: 
	     cd $(TMPDIR_EXTRA)$(MPCDIR)-build; $(EXPORT_PATH); \
	make 2>&1 | tee compile-mpc-compile.out

mpc-install: 
	     cd $(TMPDIR_EXTRA)$(MPCDIR)-build; $(EXPORT_PATH); \
	make install 2>&1 | tee compile-mpc-install.out

mpc-clean: 
	     cd $(TMPDIR_EXTRA)$(MPCDIR)-build; $(EXPORT_PATH); \
	make clean 2>&1 | tee compile-mpc-clean.out	

	
	
	
#---------------------------------------
symlink:
	-rm -rf /opt/sparc-elf-$(GCC_VERSION)$(SYMLINKEX)
	-mkdir -p $(CURDIR)/toolchains/sparc-elf-$(GCC_VERSION)$(SYMLINKEX)
	cd /opt; ln -s $(CURDIR)/toolchains/sparc-elf-$(GCC_VERSION)$(SYMLINKEX) sparc-elf-$(GCC_VERSION)$(SYMLINKEX)
include Makefile.versions

SVN_GCC       = tarfiles/gcc-$(GCC_VERSION).tar.bz2
SVN_NEWLIB    = tarfiles/newlib-$(NEWLIBC_VERSION).tar.gz
SVN_BINUTILS  = tarfiles/binutils-$(BINUTILS_VERSION).tar.bz2
SVN_GMP       = tarfiles/gmp-$(GMP_VERSION).tar.bz2
SVN_MPFR      = tarfiles/mpfr-$(MPFR_VERSION).tar.bz2
SVN_MPC       = tarfiles/mpc-$(MPC_VERSION).tar.gz

# Also we need packages to be installed:
# -BINUTILS: texinfo
# -GMP: M4

download:
	-mkdir $(CURDIR)/tarfiles
	cd $(CURDIR)/tarfiles; \
	wget -N ftp://ftp.gnu.org/gnu/gcc/gcc-$(GCC_VERSION)/gcc-$(GCC_VERSION).tar.bz2; \
	wget -N ftp://ftp.gnu.org/gnu/binutils/binutils-$(BINUTILS_VERSION).tar.bz2; \
	wget -N ftp://ftp.gnu.org/gnu/gmp/gmp-$(GMP_VERSION).tar.bz2; \
	wget -N ftp://ftp.gnu.org/gnu/mpfr/mpfr-$(MPFR_VERSION).tar.bz2;\
	wget -N ftp://sourceware.org/pub/newlib/newlib-$(NEWLIBC_VERSION).tar.gz;\
	wget -N ftp://ftp.gnu.org/gnu/mpc/mpc-$(MPC_VERSION).tar.gz;\

all:
	-mkdir $(CURDIR)/toolchains
	-rm -rf /opt/sparc-elf-$(GCC_VERSION) ;
	-mkdir -p $(CURDIR)/toolchains/sparc-elf-$(GCC_VERSION)
	cd /opt;ln -s $(CURDIR)/toolchains/sparc-elf-$(GCC_VERSION) sparc-elf-$(GCC_VERSION)
	make -f Makefile.gcc build-all

install: 
	-tar xvf $(SVN_GCC)	          --keep-old-files
	-tar xvf $(SVN_BINUTILS)	  --keep-old-files
	-tar xvf $(SVN_NEWLIB)	      --keep-old-files 
	-tar xvf $(SVN_GMP);
	-tar xvf $(SVN_MPFR);
	-tar xvf $(SVN_MPC);

symlinks:
	rm -rf /opt/sparc-elf-$(GCC_VERSION);
	cd /opt;ln -s $(CURDIR)/toolchains/sparc-elf-$(GCC_VERSION) sparc-elf-$(GCC_VERSION)

cleaner:
	-rm -rf *-build
	-rm -rf *-install

clear:
	-rm -rf gcc-$(GCC_VERSION)-binutils-$(BINUTILS_VERSION)-build
gcc-$(GCC_VERSION)-gcc-$(GCC_VERSION)-build gcc-$(GCC_VERSION)-newlib-$(NEWLIBC_VERSION)-build
	-rm -rf gcc-$(GCC_VERSION)-gmp-$(GMP_VERSION)-install
gcc-$(GCC_VERSION)-gmp-$(GMP_VERSION)-build gcc-$(GCC_VERSION)-mpfr-$(MPFR_VERSION)-build gcc-$(GCC_VERSION)-mpfr-$(MPFR_VERSION)-install
	-rm -rf gcc-$(GCC_VERSION)-mpc-$(MPC_VERSION)-install gcc-$(GCC_VERSION)-mpc-$(MPC_VERSION)-build
	-rm -rf newlib-$(NEWLIBC_VERSION)-build binutils-$(BINUTILS_VERSION)-build

GCC_VERSION=4.9.1
NEWLIBC_VERSION=2.2.0
BINUTILS_VERSION=2.25
GMP_VERSION=6.0.0
MPFR_VERSION=3.1.2
MPC_VERSION=1.0.3

RELEASE_VERSION=Af
Picon

How to use GRtool?? [2 Attachments]



Hellow i need a little help regarding grtools.i want to make a sample project in it and completely follow the guide and also take help from https://github.com/ genzel/NegevSat but there is some problem as it is giving me the error at launching project.i am not getting the error as the settings are completly perfect.i am attaching the snapshots of the e rror as well of debug settings.um currently using grtool on window 8.1.It will be so nice of u if u help me in the matter..

 

thanks!! 




__._,_.___ View attachments on the web
Posted by: khanaqsa915-/E1597aS9LQAvxtiuMwx3w@public.gmane.org



__,_._,___
Picon

leon3-xilinx-kc705 design "more than one reference clock specified"



I am in the process of compiling the leon3 for the Xilinx Kintex-7 KC705 board.

I am getting intermittent failures on timing when I attempt to compile the design with Vivado 2013.3.


Doing the following yields no timing errors at present:

  1. Start with a clean copy of the grlib-gpl-1.3.7-b4144 release.
  2. Enter the working directory <grlib>/designs/leon3-xilinx-kc705
  3. run 'make soft'
  4. run 'make vivado-launch'
  5. run synthesis
  6. run implementation

This process does not yield any timing errors, however I have been working on this design for weeks and similar processes seem to result in timing error without changing anything from the fresh copy.


This process yields many critical warnings of this nature:

[Constraints 18-376] set_output_de lay: more than one reference clocks specified. ["xilinx-kc705-xc7k325t.xdc":16]

Looking though the group I found the following from a related conversation (#24486):

All that I note from the constraints files is that there are 80 critical warnings on more than one reference clock is specified for set_output_delay & set_input_delay.  The is due to [get_clocks -include_generated_clocks clk200] statement (due to multiple clocks being derived from clk200).

Are these warnings significant or can they be safely ignore? If not, how should I resolve them?


When I remove " -include_generated_clocks" from the constraint file I get timing constraints not met. Doing so returns worse slack of < -4 ns with a total slack of < -180 ns.


Thanks,

Andrew Keller

BYU Configurable Computing Lab




__._,_.___
Posted by: andrewmarkkeller-/E1597aS9LQAvxtiuMwx3w@public.gmane.org



__,_._,___
Picon

spimctrl



Hi Gaisler Team,

I am very new to LEON3 design. Recently, we decided to make use of the spimctrl to access a SD card (I read from the previous posts that this is not really recommended). We would like to try this first. If does not work, we would switch to spictrl.  

I encountered the same problem ---> "spimctrl: Core not initialized"

Could you point me to a functional design that use spimctrl? I hope to try this out on my xillinx development board.

Thank you.




__._,_.___
Posted by: davidchong99-/E1597aS9LS+ZvmcBgLQeg@public.gmane.org



__,_._,___
Picon

Problem with LAN8720A ethernet controller (PHY) on Nexys 4



Hi,

I have built Leon 3 processor with ethernet controller and other peripherals, on the Nexys 4 Development Board.

Next, I have built a Linux operating system by means of buildroot tool, working on Leon 3 platform.

During the booting phase, the system stops when starts to "interrogate" the ethernet controller, and remains blocked.

I have tried to remove ethernet controller, and booting phase works fine.

I think that the problem is the following: when I go to the drivers folder ( linuxbuild/linux/linux-src/drivers/net/phy/ ) I see smsc.c driver. Opening this one, I have read that it is for LAN8720 and LAN8710. But Nexys 4 board has LAN8720A ethernet PHY controller.
p>


The problem can derive from this "mismatch"?

Note that if I try to communicate trhough ethernet with GRMON, the communication works fine.


Thank you,

best regards.


Giacomo Valente



__._,_.___
Posted by: giacomo87v-whZMOeQn8C0@public.gmane.org



__,_._,___
Picon

Simulation error no target for _lib.qdb



Hello,

I tried to run the simulation but i got the following error, and I don't know how to fix it (since I have no idea how the missing file is supposed to be generated, I use Msys):

[...]
vcom -quiet  -93  -work work leon3mp.vhd
vcom -quiet  -93  -work work testbench.vhd
make[1]: Leaving directory `/d/PFE/LEON3 and GRLIB IP Library/grlib-gpl-1.3.7-b4144_test_modelsim/designs/
leon3-gr-pci-xc5v'
make[1]: Entering directory `/d/PFE/LEON3 and GRLIB IP Library/grlib-gpl-1.3.7-b4144_test_modelsim/designs
/leon3-gr-pci-xc5v'
make[1]: *** No rule to make target `/cygdrive/c/Modeltech_pe_edu_10.4/win32pe_edu/../std/_lib.qdb', neede
d by `modelsim/grlib/xxor2/xxor_true.dat'.  Stop.
make[1]: Leaving directory `/d /PFE/LEON3 and GRLIB IP Library/grlib-gpl-1.3.7-b4144_test_modelsim/designs/
leon3-gr-pci-xc5v'
make: *** [vsim] Error 2

Thank you


Solution:

For those who struggle (since Msys is not supported):

I checked with a "grep -E *_lib.qdb* -r ." in the design folder and took a look at the files.

here's the solution I found:


Find make.work in the design directory:

remove all /cygdrive and the error message will be done (cause /cygdrive/c doesn't exist in Msys /c does)

Hope it helps someone

__._,_.___
Posted by: jerome.vaessen-/E1597aS9LQAvxtiuMwx3w@public.gmane.org



__,_._,___
Picon

Counter on AMBA BUS in memory controller



Good evening everyone,


I'm currently writting a component in order to watch what is going with the memory controller:

I'm working in the memory controller of the leon3 available on gaisler/aeroflex website (the main purpose of this group).

Long story, short:

I want to make a component which I can use to monitor a range of adress (I have check the component alone with a testbench, not with simulation of the whole projet because hconfig doesn't do the job, and the component don't work on the board of course).

I already declare the new ahb_menbar in the hconfig of the mctrl.vhd but I can't reach the component (as manual said in the Plug and Play section for AHB).

So I check the address which contains configuration for slaves/ma sters.

I found all previous corresponding configuration (aka IO/RAM/ROM, as manual said and so the vhdl is coherent with it). I can't see anything at 0xFFFFF840 in GRMON with a fouth ahb_menbar in the BAR register, it's just zeros.


For information:

I use xilinx ISE, and the component is not trimed (on the rtl), the test signal are also connected, but not used in the component.


So here's my QUESTIONS:
====================================

Is(/are) there any another thing(s) other than hconfig to set an address to a component ?

Do I need to add Scan Support (as mentionned in the grlib page 57) ?

Or is it only for the sake of info sys (in grmon) or/and the simulation ?
====================================

Notes :

I tried to use ChipScope Pro but it just s***w my projet (clkm signal is missing in the leon3mp.vhd is really the vhdl) and had to start over from another backup projet but from now on, I don't that's going to help me anyway.



All things I already did:
=====
Declared my vhd in the package memoryctrl: works (ise and make scripts where automatically updated)

in mctrl.vhd:


entity mctrl is
  generic (
[...]
mymaddr: integer := 16#A00#;
mymmask: integer := 16#FFF#;
[...]
)

[...]


constant hconfig : ahb_config_type := (
 
0 => ahb_device_reg ( VENDOR_ESA, ESA_MCTRL, 0, REVISION, 0),
 
4 => ahb_membar(romaddr, '1', '1', rommask),
 
5 => ahb_ membar(ioaddr,  '0', '0', iomask),
 
6 => ahb_membar(ramaddr, '1', '1', rammask),
7 => ahb_menbar(mymaddr, 0, '0', mymmask),
 
others => zero32);

[...]


constant mycomp: integer := 3;

[...]

type reg_type is record
[...]
area         : std_logic_vector(0 to 3);-- previously 0 downto 2
[...]
end record;

[...]

signal ahbso_bidon : ahb_slv_out_type;

[...]

begin

[...]

 acomp : mycompname
generic map(
        
hindex => 7,
        
hirq => 0,
        
mymaddr => 16#A00#,
&nbs p;       
mymmask => 16#FFF#
    
)
    
port map(
            
rstn => rst,
     
clk => clk,
     
ahbsi => ahbsi,
     
ahbso => ahbso_dummy            
);

[...]

area := ahbsi.hmbsel(0 to 3);-- previously 0 to 2

[...]

if area(mycomp)= '1' then

    ahbso.hrdata <= ahbso_dummy.hrdata;
end if;

[...]

if r.area(mycomp) = '1' then

    --nothing
end if;

[...]


end;
====

Am I doing it wrong ?


Thanks you.

J.

__._,_.___
Posted by: jerome.vaessen-/E1597aS9LQAvxtiuMwx3w@public.gmane.org



__,_._,___
Picon

LOGAN IP Core in GRLIB GPL Distribution [1 Attachment]



I am using GRLIB GPL distribution (source code freely available) and trying to use LOGAN (On chip logic analyzer) Core to monitor my internal signals on hardware using GRMON. Now when I start GRMON I can see LOGAN core listed with other components but frequency detected by GRMON appears to be zero (0) and when I run any benchmark I cannot see the output, though GRMON prompts program exited successfully


Now later on I have come to know that open source version include only those cores marked with "yes" in gpl colum of GRIP manual (page 6) and LOGAN is marked with "No" in GPL column (page 11). Is this the very reason I cannot use LOGAN Core in gpl distribution


please find the attach file to see th e output of GRMON


Zohaib



__._,_.___ View attachments on the web
Posted by: zohaibnajam-ur4TIblo6goN+BqQ9rBEUg@public.gmane.org



__,_._,___
Picon

GCC memory requirements



Hello,

I am wondering what are the possibilities of reducing initial memory requirements for software. Our target system will have just a few KB of RAM for the Bootloader (code is executed from PROM). I have already tried to use -lsmall but still it looks that around 3K are allocated by newlib and low level initialization routines. In particular this regards the following objects:

1360 impure_data

512    _oirqtbl
932 amba_conf


Any suggestions highly appreciated.


Kind Regards

Michal





__._,_.___
Posted by: mmosdorf-/E1597aS9LQAvxtiuMwx3w@public.gmane.org



__,_._,___
Picon

Leon3 on Nexys3



Hi,
I am starting a project with leon3 processor using Ubuntu 14.014.1 LTS, ISE 14.7, Vivado 2013.3,grlib-gpl-1.3.7-b4144 and Nexys 3 fpga board.
and I have a few questions.
Which ISE version is compatible with Nexys 3 board?,

I tried "make ise-launch" and and got this error:


. /opt/Xilinx/14.7/ISE_DS/common/.settings32.sh /opt/Xilinx/14.7/ISE_DS/common
. /opt/Xilinx/14.7/ISE_DS/EDK/.settings32.sh /opt/Xilinx/14.7/ISE_DS/EDK
. /opt/Xilinx/14.7/ISE_DS/PlanAhead/.settings32.sh /opt/Xilinx/14.7/ISE_DS/PlanAhead
. /opt/Xilinx/14.7/ISE_DS/ISE/.settings32.sh /opt/Xilinx/14.7/ISE_DS/ISE
. /opt/Xilinx/Vivado/2013.3/./.settings32.sh /opt/Xilinx/Vivado/2013.3/.
. /opt/Xilinx/Vivado/2013.3/ids_lite/EDK/.settings32.sh /opt/Xilinx/Vivado/2013.3/ids_li te/EDK
. /opt/Xilinx/Vivado/2013.3/../../Vivado_HLS/2013.3/.settings32.sh /opt/Xilinx/Vivado/2013.3/../../Vivado_HLS/2013.3
. /opt/Xilinx/Vivado/2013.3/../../SDK/2013.3/.settings32.sh /opt/Xilinx/Vivado/2013.3/../../SDK/2013.3
commlab <at> commlab-desktop:~$ cd /home/commlab/Downloads/grlib-gpl-1.3.7-b4144/designs/leon3-digilent-nexys3
commlab <at> commlab-desktop:~/Downloads/grlib-gpl-1.3.7-b4144/designs/leon3-digilent-nexys3$ make ise-launch
/bin/sh: 1: promgen: not found
make[1]: Entering directory `/home/commlab/Downloads/grlib-gpl-1.3.7-b4144/designs/leon3-digilent-nexys3'
ise leon3mp.xise
make[1]: ise: Command not found
make[1]: *** [ise-launch11] Error 127
make[1]: Leaving directory `/home/commlab/Downloads/grlib-gpl-1.3.7-b4144/designs/leon3-digilent-nexys 3'
make: *** [ise-launch] Error 2


Thanks for the help,
Yogev.




__._,_.___
Posted by: yogevdotan-/E1597aS9LQAvxtiuMwx3w@public.gmane.org



__,_._,___

Gmane