Site Home   Archive Home   FAQ Home   How to search the Archive   How to Navigate the Archive   
Compare FPGA features and resources   

Threads starting:
1994JulAugSepOctNovDec1994
1995JanFebMarAprMayJunJulAugSepOctNovDec1995
1996JanFebMarAprMayJunJulAugSepOctNovDec1996
1997JanFebMarAprMayJunJulAugSepOctNovDec1997
1998JanFebMarAprMayJunJulAugSepOctNovDec1998
1999JanFebMarAprMayJunJulAugSepOctNovDec1999
2000JanFebMarAprMayJunJulAugSepOctNovDec2000
2001JanFebMarAprMayJunJulAugSepOctNovDec2001
2002JanFebMarAprMayJunJulAugSepOctNovDec2002
2003JanFebMarAprMayJunJulAugSepOctNovDec2003
2004JanFebMarAprMayJunJulAugSepOctNovDec2004
2005JanFebMarAprMayJunJulAugSepOctNovDec2005
2006JanFebMarAprMayJunJulAugSepOctNovDec2006
2007JanFebMarAprMayJunJulAugSepOctNovDec2007
2008JanFebMarAprMayJunJulAugSepOctNovDec2008
2009JanFebMarAprMayJunJulAugSepOctNovDec2009
2010JanFebMarAprMayJunJulAugSepOctNovDec2010
2011JanFebMarAprMayJunJulAugSepOctNovDec2011
2012JanFebMarAprMayJunJulAugSepOctNovDec2012
2013JanFebMarAprMayJunJulAugSepOctNovDec2013
2014JanFebMarAprMayJunJulAugSepOctNovDec2014
2015JanFebMarAprMayJunJulAugSepOctNovDec2015
2016JanFebMarAprMayJunJulAugSepOctNovDec2016
2017JanFebMarAprMayJunJulAugSepOctNovDec2017
2018JanFebMarAprMayJunJulAugSepOctNovDec2018
2019JanFebMar2019

Authors:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Custom Search

Messages from 63875

Article: 63875
Subject: Can you be more Specific ? My XST User Guide does not say that
From: "Adarsh Kumar Jain" <adarshkumarjain@hotmail.com>
Date: Sun, 07 Dec 2003 06:37:39 GMT
Links: << >>  << T >>  << A >>
Hi,
I think it does.
If in ISE Project Navigator you go to Edit -> Language Templates ->
Verilog -> Component Instantiation, then you can see the way it is done (in
any of the RAM instantiation samples).
Please do correct me if I am making some mistake.
Adarsh
"Martin Euredjian" <0_0_0_0_@pacbell.net> wrote in message
news:2u8Ab.66158$PY.31048@newssvr25.news.prodigy.com...
> Page 155, XST User guide:
>
> "XST does not support block RAM initialization in Verilog."
>
> Why not?
>
> -- 
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Martin Euredjian
>
> To send private email:
> 0_0_0_0_@pacbell.net
> where
> "0_0_0_0_"  =  "martineu"
>
>



Article: 63876
Subject: Re: Block RAM simulation VII
From: "Martin Euredjian" <0_0_0_0_@pacbell.net>
Date: Sun, 07 Dec 2003 08:16:25 GMT
Links: << >>  << T >>  << A >>
"Adarsh Kumar Jain" wrote:

> Verilog -> Component Instantiation, then you can see the way it is done
(in
> any of the RAM instantiation samples).

No, not instantiation for synthesis.  Simulation.  That's why the subject is
"Block RAM simulation VII".  Initializing for synthesis works very well.

If you don't see what I quoted on page 155 of your XST User Guide check the
document version.  I have 4.0, issued on 06/06/03.  It's what came with the
latest ISE update.


Also, don't use the message subject line as part of a reply, it destroys a
thread.


-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Martin Euredjian

To send private email:
0_0_0_0_@pacbell.net
where
"0_0_0_0_"  =  "martineu"



Article: 63877
Subject: Re: Block RAM simulation VII
From: "Vinh Pham" <a@a.a>
Date: Sun, 07 Dec 2003 08:41:44 GMT
Links: << >>  << T >>  << A >>
> learned about this in the Verilog NG ... it was like talking to someone
from
> another planet.

Heh heh :_D

> I don't really use inference for these constructs, I instantiate
explicitly.
> Why would you speak Greek when you know you need to say something in
French
> and you can speak French?  Maybe 'cause I'm old school ...

You definately don't have to worry about the synthesis tools getting too
creative.  Inference can save you some typing, but spend some time with
"generics" and "generate" and you can craft a piece of reusable code that
can handle varying widths and depths.  And though I've never tried it, doing
RPMs might be easier with instantiation, since you have more control over
the structure/naming of the components.

I just use inference because of the "neato" factor when I was first learning
VHDL.

> I still have my auto-stripping electric wire-wrap gun.

Heh I think I've only used it once, during an internship.  Iy does a very
nice and neat job though.  I remember the experienced guys telling me war
stories of having to wire up an entire board, only to find out they did
something wrong under serval layers of other wiring.



Article: 63878
Subject: Re: Block RAM simulation VII
From: "Vinh Pham" <a@a.a>
Date: Sun, 07 Dec 2003 09:08:28 GMT
Links: << >>  << T >>  << A >>
> No, not instantiation for synthesis.  Simulation.  That's why the subject
is
> "Block RAM simulation VII".  Initializing for synthesis works very well.

Heh looks like I might have led Adarsh astray with my synthesis/simulation
mix up.  Oh how history repeats itself.



Article: 63879
Subject: How to assign inferred logic to resource in Quartus
From: cruiser144@hotmail.com (cruzin)
Date: 7 Dec 2003 09:11:15 -0800
Links: << >>  << T >>  << A >>
Hi,

I have a chain of registers to delay a certain wide signal 5 clocks.
Quartus infers altshifttaps from this, which is fine because it saves
me LEs.

Unfortunately the M512 where it places the inferred shift register
causes a long delay to and from the rest of logic. I want to manually
assign this inferred shift register to a specific M512 for timing
purposes.

My question is two-fold:

1/ I tried assigned the affected registers to an M512 using Assignment
Editor. Quartus ends up telling me this is an invalid location. This
leads me to my next question:

2/ Does quartus look at location assignments before inferring shift
regs, DSP blocks, etc? If not, this would explain #1 because LEs can
obviously not be assigned to TriMatrix memory.

So is it possible to assign a location to something that I know will
be inferred by Quartus to use a specialized resource? Or do I have to
write my code to explicitely use the altshifttaps megafunction?

Article: 63880
Subject: NIOS: Running code from flash
From: Petter Gustad <newsmailcomp6@gustad.com>
Date: 07 Dec 2003 18:26:00 +0100
Links: << >>  << T >>  << A >>


Is it possible to run nios code from flash memory directly (assuming
I'm running at only 10MHz)? Or do I need a small bootstrap in local
rom to jump to the flash address?

Most existing designs I've seen have use an external ram and bootstrap
by copying code from the flash to the ram prior to branching to the
start address.

I tried a quick simulation. The only inputs I have to the nios cpu is
clock and reset. I don't see that it's trying to put the flash address
out on the bus.

Petter

-- 
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?

Article: 63881
Subject: Re: Block RAM simulation VII
From: "Adarsh Kumar Jain" <adarshkumarjain@hotmail.com>
Date: Sun, 07 Dec 2003 17:55:14 GMT
Links: << >>  << T >>  << A >>
Hey Martin,
sorry about the subject line. I am new to this newsgroup thing...
i had an earlier version of XST. anyways, i see your point.
if it is simulation you are talking about, do you mean functional simulation
?
in that case how is XST connected to it ?
and then is it really a verilog issue ? for simulation can't you just use
the "initial"  statement ?
and for any post synthesis simulation, I think the example in language
templates works.
adarsh




"Martin Euredjian" <0_0_0_0_@pacbell.net> wrote in message
news:tlBAb.66747$aJ6.11966@newssvr25.news.prodigy.com...
> "Adarsh Kumar Jain" wrote:
>
> > Verilog -> Component Instantiation, then you can see the way it is done
> (in
> > any of the RAM instantiation samples).
>
> No, not instantiation for synthesis.  Simulation.  That's why the subject
is
> "Block RAM simulation VII".  Initializing for synthesis works very well.
>
> If you don't see what I quoted on page 155 of your XST User Guide check
the
> document version.  I have 4.0, issued on 06/06/03.  It's what came with
the
> latest ISE update.
>
>
> Also, don't use the message subject line as part of a reply, it destroys a
> thread.
>
>
> -- 
> ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> Martin Euredjian
>
> To send private email:
> 0_0_0_0_@pacbell.net
> where
> "0_0_0_0_"  =  "martineu"
>
>



Article: 63882
Subject: Re: How to assign inferred logic to resource in Quartus
From: "Subroto Datta" <sdatta@altera.com>
Date: Sun, 07 Dec 2003 18:09:16 GMT
Links: << >>  << T >>  << A >>
Hi cruzin,

    At present it is not possible to assign a location to something that
will be inferred by Quartus to use a specialized resource. In this case the
code should be written to explicitly use the altshifttaps function, so that
you can assign a location assignment.

- Subroto Datta
Altera Corp.

"cruzin" <cruiser144@hotmail.com> wrote in message
news:775730eb.0312070911.715c659e@posting.google.com...
> Hi,
>
> I have a chain of registers to delay a certain wide signal 5 clocks.
> Quartus infers altshifttaps from this, which is fine because it saves
> me LEs.
>
> Unfortunately the M512 where it places the inferred shift register
> causes a long delay to and from the rest of logic. I want to manually
> assign this inferred shift register to a specific M512 for timing
> purposes.
>
> My question is two-fold:
>
> 1/ I tried assigned the affected registers to an M512 using Assignment
> Editor. Quartus ends up telling me this is an invalid location. This
> leads me to my next question:
>
> 2/ Does quartus look at location assignments before inferring shift
> regs, DSP blocks, etc? If not, this would explain #1 because LEs can
> obviously not be assigned to TriMatrix memory.
>
> So is it possible to assign a location to something that I know will
> be inferred by Quartus to use a specialized resource? Or do I have to
> write my code to explicitely use the altshifttaps megafunction?



Article: 63883
Subject: Skew between the output of a DCM ?
From: "jean-francois hasson" <jfhasson@club-internet.fr>
Date: Sun, 7 Dec 2003 19:49:14 +0100
Links: << >>  << T >>  << A >>
Hi,

I remember reading a few lines on this newsgroup about the fact that a DLL
in a Virtex might not be able to handle a negligible skew between two
outputs (clk0 and clk2X for instance) in some situations like a heavy
loading difference between the two clock trees with maybe an important (but
in the datasheet spec ?) jitter on the input clock. Ever since I read this I
did not consider I could change from one clock domain to the other without
special care. Has anyone something new concerning these potential cases ? If
there is still a possibility does it apply only to Virtex or also to Virtex
II ? The reason I ask is that the designs coming up are running faster and
faster making it more difficult to consider changing clock domains with some
extra precaution.
Thanks,

JF



Article: 63884
Subject: Re: Mixing simulation of behavioral and synthesized code
From: "pl[N0SP4M]apri" <"pl[N0SP4M]apri"@cim.[N0SP4M].mcgill.ca>
Date: Sun, 07 Dec 2003 21:24:59 GMT
Links: << >>  << T >>  << A >>
Silvano Bettinzana wrote:
> Dear friends,
> 
> I'm a novice and playing with Xilinx ISE Webpack and ModelsimXE.
> I have a 'TOP' Verilog module in which I have instanced 2 module: 'A' and
> 'B';
> I have a testbench for 'TOP' and want to simulate with 'A' sinthesized and
> 'B' not synthesized ('B' is not synthesizable; it has for example '#...'
> statement).
> Is this possible ?

I believe so, unless this isn't implemented in WebPack...

> How ?

You can ask ISE to generate a VHDL/Verilog simulation model at most 
stages of implementation, i.e. post-translate, post-map, post-p&r.  All 
you need to do is take the generated file and use it instead of your 
original source code.  I don't know for Verilog, but the VHDL model has 
exactly the same entity declaration, except the GENERICs have been 
hard-coded, so the same testbenches can be used in each sim with only 
very minor modifications...  The only annoyance I've had is that your 
signal names tend to be flattened out, and I'm not aware of any signal 
name equivalence file.  Hope this helps,

-- 
Pierre-Olivier

-- to email me directly, remove all [N0SP4M] from my address --


Article: 63885
Subject: Re: Skew between the output of a DCM ?
From: "John_H" <johnhandwork@mail.com>
Date: Sun, 07 Dec 2003 21:25:32 GMT
Links: << >>  << T >>  << A >>
The new version of Xilinx tools (6.1i and on) appear to be doing a more
complete job on this analysis.  The biggest problem earlier was the effect
of input jitter on the DCM that couldn't be accounted for.  Uneven loading
on the clock nets was also an issue.  Now the tools allow an INPUT_JITTER
constraint to go along with your specified period and duty cycle.  Also with
the automated elimination of hold-time violations, it looks like the tools
are filling in for the corner cases of design as long as we, the designers,
give the tool the right info.

I'm now happier making the transition between same-edge clock domains
without special treatment though I know where to look first if my design
starts to misbehave.


"jean-francois hasson" <jfhasson@club-internet.fr> wrote in message
news:3fd377da$0$6982$7a628cd7@news.club-internet.fr...
> Hi,
>
> I remember reading a few lines on this newsgroup about the fact that a DLL
> in a Virtex might not be able to handle a negligible skew between two
> outputs (clk0 and clk2X for instance) in some situations like a heavy
> loading difference between the two clock trees with maybe an important
(but
> in the datasheet spec ?) jitter on the input clock. Ever since I read this
I
> did not consider I could change from one clock domain to the other without
> special care. Has anyone something new concerning these potential cases ?
If
> there is still a possibility does it apply only to Virtex or also to
Virtex
> II ? The reason I ask is that the designs coming up are running faster and
> faster making it more difficult to consider changing clock domains with
some
> extra precaution.
> Thanks,
>
> JF
>
>



Article: 63886
Subject: Re: Altera's altsyncram MAXIMUM_DEPTH
From: "Subroto Datta" <sdatta@altera.com>
Date: Sun, 07 Dec 2003 22:04:02 GMT
Links: << >>  << T >>  << A >>
Hi Manfred,
    There is no real need to restrict it. There have been several requests
to relax this condition and we will get to it in a future release.

- Subroto Datta
Altera Corp.

"Manfred Mücke" <manfred.getmuecke@ridgmxof.thisat> wrote in message
news:oprzq27uthgdoir8@news.inode.at...
> Hi Subroto,
>
> I would like to renew my question: Why do you restrict FIFO depths to
> powers of two? I can't see the need for that.
>
> Regards, Manfred
>



Article: 63887
Subject: Re: Block RAM simulation VII
From: "Martin Euredjian" <0_0_0_0_@pacbell.net>
Date: Sun, 07 Dec 2003 22:34:53 GMT
Links: << >>  << T >>  << A >>
"Adarsh Kumar Jain" wrote:

> sorry about the subject line. I am new to this newsgroup thing...

No problem.  That's why I pointed it out.

> do you mean functional simulation

It's about simulating a Block RAM with data in it.  Say you are using one as
a lookup table.  You want to run a simulation with the lookup table actually
working, otherwise the results might be of little use.

I'll look into some of the other options.  I sort of let this one go as
verification was done in actual hardware.  Can't stop to do it right, gotta
keep that productivity up!  :-)


-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Martin Euredjian

To send private email:
0_0_0_0_@pacbell.net
where
"0_0_0_0_"  =  "martineu"



Article: 63888
Subject: Re: Block RAM simulation VII
From: David R Brooks <davebXXX@iinet.net.au>
Date: Mon, 08 Dec 2003 06:40:02 +0800
Links: << >>  << T >>  << A >>
"Martin Euredjian" <0_0_0_0_@pacbell.net> wrote:

:I don't really use inference for these constructs, I instantiate explicitly.
:Why would you speak Greek when you know you need to say something in French
:and you can speak French?  Maybe 'cause I'm old school ... I still have my
:auto-stripping electric wire-wrap gun.

 Portability. An instantiated primitive locks you into that vendor's
technology.


Article: 63889
Subject: Quartus-II question
From: Pratip Mukherjee <pratipm_nooospam@hotmail.com>
Date: Mon, 08 Dec 2003 03:44:15 GMT
Links: << >>  << T >>  << A >>
Hi,
I am trying to use AVRCore project from opencores.com on ACEX1K100-3 FPGA. 
Timing summary tells me that maximum clock is 11.xxx MHz. Since my external 
clock is 40MHz, I inserted a divide by 4 counter before feeding it to the 
CPU clock. But Quartus still says that max. clock is 11.xxx MHz. How's 
that, shouldn't it be now 44.xxx MHz, assuming the input counter can count 
to 44MHz. I am not using the input clock for any other purpose than 
dividing by 4.
Another related question. ACEX1K datasheet says that the -3 devices do not 
have PLL. But Quartus always reports 0 of 1 PLL used, even when I 
specifically select -3 device. Which one is right, datasheet or Quartus?
Thanks in advance.

Pratip Mukherjee

Article: 63890
Subject: Re: Block RAM simulation VII
From: "Martin Euredjian" <0_0_0_0_@pacbell.net>
Date: Mon, 08 Dec 2003 04:36:42 GMT
Links: << >>  << T >>  << A >>
"David R Brooks" wrote:

> :I don't really use inference for these constructs, I instantiate
explicitly.
> :Why would you speak Greek when you know you need to say something in
French
> :and you can speak French?  Maybe 'cause I'm old school ... I still have
my
> :auto-stripping electric wire-wrap gun.
>
>  Portability. An instantiated primitive locks you into that vendor's
> technology.

This is an often quoted reason to do many things.

In my humble opinion --and particularly with high performance designs-- I
see nothing wrong with HDL that is vendor-specific.  Actually, high
performance designs almost mandate this approach.  The idea of jumping from
one vendor to another is, again, my opinion, a fallacy for but the most
trivial pushbutton-process designs.  I mean, just the cost of designing and
spinning a new board (with all associated risks) is enough to preclude one
from making this move.

One could, I suppose, argue that you'd build an HDL library that could be
reused across designs or projects, regardless of the device or vendor.
Again, I have a feeling that this is a part of reality only for JBOFF (just
a bunch of flip-flops) designs.  The minute you start to take advantage of
device/vendor specific resources all bets are off.  If you have to write
device-specific descriptions to shove inference in the right direction you
might as well use explicit instantiation.

One variation on that theme, of course, would be writing intelligent VHDL
code that would allow you to tell the HDL what sort of a device the module
in question will be synthesized for.  The code would make the appropriate
changes to fit the device.  But, again, this is device-specific code, as it
would have to contain that specific intelligence.



-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Martin Euredjian

To send private email:
0_0_0_0_@pacbell.net
where
"0_0_0_0_"  =  "martineu"



Article: 63891
Subject: Re: Block RAM simulation VII
From: "Vinh Pham" <a@a.a>
Date: Mon, 08 Dec 2003 05:24:34 GMT
Links: << >>  << T >>  << A >>
> In my humble opinion --and particularly with high performance designs-- I

Yeah I agree with that, when it comes to high performance designs.  In order
to squeeze every bit of performance out of our FPGAs, we have to take
advantage of specific architectural features.  And since we're always on the
cutting edge of performance, we have completely new hardware for each
evolution of our product, so we rarely have code reuse (that's why I like
the concept of Design Patterns which advocates architecture reuse instead of
code reuse).

If one really wanted to be vendor independent, you would keep your design
generic, lose performance in the design itself, and gain your performance by
buying expensive chips and using more of them, but commercial projects are
usually too price conscious to do that.    Also we're always pushing the
limits, so we tend to buy the highest end chips anyways.  We can't upgrade
any further.

But yeah, if you're not at the bleeding edge (or at least your particular
piece of reusable code isn't high performance, like a CPU interface), and
there's a high chance that your code would actually be reused, then
inference can be handy.  As with all things, it depends on your situation.



Article: 63892
Subject: Re: VHDL-Testbench-Simulation in QuartusII
From: ALuPin@web.de (ALuPin)
Date: 7 Dec 2003 23:13:43 -0800
Links: << >>  << T >>  << A >>
"Subroto Datta" <sdatta@altera.com> wrote in message news:<JYaAb.3672$2C5.2593@newssvr33.news.prodigy.com>...
> http://www.altera.com/support/software/nativelink/quartus2/glossary/def_vht.
> html
> 
> - Subroto Datta
> Altera Corp.
> 
> 
> 
> 
> A VHDL Test Bench File is the same as a standard VHDL test bench file, saved
> with a .vht extension.
> 


Hi,

yes I read about it in the handbook, but HOW can I save a .vhd file as
a .vht file?

When I write a testbench file I can only save it as .vhd ! ?

Thank you.

Article: 63893
Subject: Re: process table for XMK
From: "Frank" <someone@work.com>
Date: Mon, 8 Dec 2003 09:47:55 +0100
Links: << >>  << T >>  << A >>

Well, maybe I am doing it totally wrong. Let me explain how I set it up:

- I have a directory with mhs, mss files code etc (lets call it bootldr). This 
is the directory for the bootloader. The bootloader should do nothing with xilkernel.
- The bootloader should run in BRAM.
- I have a seperate directory for my final application (lets call it appl) 
it's at the same level as the bootldr directory. The directory has its own makefile 
and code, but no mhs, mss file etc. because it's using the same architecture as the 
bootloader (this is why the xilkernel library block is placed in the mss file of the 
bootloader). The application will use the xilkernel facilities (threads, semaphores etc.).
- The application should run in SDRAM.
- The makefile for the application is like this:

CC=mb-gcc
AR=mb-ar

CFLAGS  = -O2 -g

SRC  = ../src
INC  = ../include
OBJS = appl.o hwinit.o debug.o hal.o leds.o crc.o can_sja1k.o irq.o pci.o pecx.o threads.o \
       can.o timer.o

TOPDIR = ../mblaze/code
SYSTEMDIR = ../bootldr/mblaze
INCLUDEDIR = $(SYSTEMDIR)/include
LIBDIR = $(SYSTEMDIR)/lib
INCLUDES = -I$(INCLUDEDIR) -I$(INC)
LIBS = -L$(LIBDIR) -L$(TOPDIR)

LIBRARIES = -lw

# Linker options for the elf file
LFLAGS = -xl-mode-xilkernel -Wl,-defsym -Wl,_TEXT_START_ADDR=0xA0000000
VPATH = $(SRC)

all:
 @echo "Makefile to build application which runs on SDRAM"
 @echo "   - SDRAM base address: 0xA0000000"
 @echo "   - application is placed in SDRAM by bootloader"
 @echo ""
 @echo "Usage: make appl"

appl: $(OBJS) makefile $(INCLUDEDIR)/xparameters.h
 $(CC) $(CFLAGS) -o appl.elf $(OBJS) $(LFLAGS) $(LIBS) $(LIBRARIES)
 @echo "appl.elf created at location 0xA0000000"

%.o:%.c
 $(CC) $(CFLAGS) -c $< -o $@ $(INCLUDES)

%.o:%.s
 $(CC) $(CFLAGS) -c $< -o $@ 

clean:
 rm -f $(OBJS) *.elf

$(INCLUDEDIR)/xparameters.h:
 $(error Make sure you have built the libraries for the bootloader)

So, in my opinion, the application is linking the xilkernel stuff by use of the -L 
option in the LIBS variable. The bootloader is not linking xilkernel stuff, because it 
does not use anything from the kernel (no threads or something else) or am I wrong at 
this point and is something linked automatically when using the xilkernel library in 
the mss file? Could you tell me if I have to define the process_table parameter in the 
mss file in the described situation or not at all?!

TIA,
Frank
  "mohan" <mohan@xilinx.com> wrote in message news:3FD0CA73.D3F0E9E5@xilinx.com...
  Just curious - where does xilkernel fit in? Bootloader -> loads app at 0xA0000000 -> transfers 
  control to it. And the app seems to be configured as a stand-alone executable (not linked to xilkernel). 
  Frank wrote: 

    So when the bootloader is started, the xilkernel automattically tries to start executing 
    the code at address 0xA0000000?! But in my case there is no application at startup! I first 
    have to download it and then I jump from the code in the bootloader to the address of the 
    application (0xA0000000). Thus, if I understand it correctly, I MUST remove the process_table 
    parameter of the mss file?! (The bootloader should do nothing with xilkernel stuff, only my application is using it).Frank



Article: 63894
Subject: Re: How to assign inferred logic to resource in Quartus
From: "Wolfgang Loewer" <wolfgang.loewer@elca.de>
Date: Mon, 8 Dec 2003 09:56:49 +0100
Links: << >>  << T >>  << A >>
Hi,
you might want to try to write a .vqm netlist "Settings/Compiler
Settings/Synthesis/Save a node-level netlist into a persistent source file
(Verilog Quartus Mapping File)" after synthesis and use this netlist as your
source file for place & route. All elements in the .vqm netlist will be
persistent and it will be possible to do floorplanning based on this
netlist. You can find more information on this flow in AN161.

- Wolfgang Loewer
El Camino GmbH

"Subroto Datta" <sdatta@altera.com> schrieb im Newsbeitrag
news:g1KAb.39062$v%7.8625@newssvr31.news.prodigy.com...
> Hi cruzin,
>
>     At present it is not possible to assign a location to something that
> will be inferred by Quartus to use a specialized resource. In this case
the
> code should be written to explicitly use the altshifttaps function, so
that
> you can assign a location assignment.
>
> - Subroto Datta
> Altera Corp.
>
> "cruzin" <cruiser144@hotmail.com> wrote in message
> news:775730eb.0312070911.715c659e@posting.google.com...
> > Hi,
> >
> > I have a chain of registers to delay a certain wide signal 5 clocks.
> > Quartus infers altshifttaps from this, which is fine because it saves
> > me LEs.
> >
> > Unfortunately the M512 where it places the inferred shift register
> > causes a long delay to and from the rest of logic. I want to manually
> > assign this inferred shift register to a specific M512 for timing
> > purposes.
> >
> > My question is two-fold:
> >
> > 1/ I tried assigned the affected registers to an M512 using Assignment
> > Editor. Quartus ends up telling me this is an invalid location. This
> > leads me to my next question:
> >
> > 2/ Does quartus look at location assignments before inferring shift
> > regs, DSP blocks, etc? If not, this would explain #1 because LEs can
> > obviously not be assigned to TriMatrix memory.
> >
> > So is it possible to assign a location to something that I know will
> > be inferred by Quartus to use a specialized resource? Or do I have to
> > write my code to explicitely use the altshifttaps megafunction?
>
>



Article: 63895
Subject: clock recovery from HDB3 data
From: praveen@cg-coreel.com (praveen)
Date: 8 Dec 2003 01:12:30 -0800
Links: << >>  << T >>  << A >>
hi all,

I have a 2.048 Mbps HDB3 data stream, now i should recover the clock
from this data stream. For this  i am using 16.384 MHZ(8xbaud) clock.
First i detect the edges of the 2.048 Mbps data stream using  16.384
MHz(8xbaud)synchronously .The edges detected are used to reset a 3-bit
counter synchronously running at 16.384 Mbps.Now if i take the MSB of
the counter it will be of frequency 2.048 Mhz with the rising edge of
the recovered clock approximately at the center of the bit duration.

My problem is that the recoverd clock's rising edge will not be at the
center of the bit duration.I want the recovered clock's rising edge in
the middle of the bit duration . Should i increase the high frequency
clock to 16xBaud,
OR is there any other solution.

rgds,
praveen

Article: 63896
Subject: Re: NIOS: Running code from flash
From: "Nial Stewart" <nial@nialstewartdevelopments.co.uk>
Date: Mon, 8 Dec 2003 11:00:11 -0000
Links: << >>  << T >>  << A >>
> Is it possible to run nios code from flash memory directly (assuming
> I'm running at only 10MHz)? Or do I need a small bootstrap in local
> rom to jump to the flash address?
> Most existing designs I've seen have use an external ram and bootstrap
> by copying code from the flash to the ram prior to branching to the
> start address.
> I tried a quick simulation. The only inputs I have to the nios cpu is
> clock and reset. I don't see that it's trying to put the flash address
> out on the bus.
> Petter

Petter, when you generate the core I'm 95% sure one of the advanced
cpu config options is the reset address. If you change this to your
flash address it might work.



Nial

------------------------------------------------
Nial Stewart Developments Ltd
FPGA and High Speed Digital Design
Cyclone PCI development/eval board
www.nialstewartdevelopments.co.uk



Article: 63897
Subject: Re: clock recovery from HDB3 data
From: pbdelete@spamnuke.ludd.luthdelete.se.invalid
Date: 08 Dec 2003 12:00:32 GMT
Links: << >>  << T >>  << A >>
praveen <praveen@cg-coreel.com> wrote:
>hi all,

>I have a 2.048 Mbps HDB3 data stream, now i should recover the clock
>from this data stream. For this  i am using 16.384 MHZ(8xbaud) clock.
>First i detect the edges of the 2.048 Mbps data stream using  16.384
>MHz(8xbaud)synchronously .The edges detected are used to reset a 3-bit
>counter synchronously running at 16.384 Mbps.Now if i take the MSB of
>the counter it will be of frequency 2.048 Mhz with the rising edge of
>the recovered clock approximately at the center of the bit duration.

>My problem is that the recoverd clock's rising edge will not be at the
>center of the bit duration.I want the recovered clock's rising edge in
>the middle of the bit duration . Should i increase the high frequency
>clock to 16xBaud,
>OR is there any other solution.

If the counter is assumed to be positive flank triggered. And you compare the
value of the counter to a preset value on the negative flank. You should be
able to grab the bit anywhere within each datavalidity range.
(Clock <= Counter equals Preset)

Btw, why isn't the recovered clocks's rising edge at the center ..?
Parasitic capatitance?

   /Peter


Article: 63898
Subject: Re: NIOS: Running code from flash
From: Petter Gustad <newsmailcomp5@gustad.com>
Date: 08 Dec 2003 13:39:52 +0100
Links: << >>  << T >>  << A >>
"Nial Stewart" <nial@nialstewartdevelopments.co.uk> writes:

> > Is it possible to run nios code from flash memory directly (assuming
> > I'm running at only 10MHz)? Or do I need a small bootstrap in local
> > rom to jump to the flash address?
> > Most existing designs I've seen have use an external ram and bootstrap
> > by copying code from the flash to the ram prior to branching to the
> > start address.
> > I tried a quick simulation. The only inputs I have to the nios cpu is
> > clock and reset. I don't see that it's trying to put the flash address
> > out on the bus.
> > Petter
> 
> Petter, when you generate the core I'm 95% sure one of the advanced
> cpu config options is the reset address. If you change this to your
> flash address it might work.

I *did* set the reset address to the flash base. The nios supplied
flash ip has an 8-bit interface only. However, I was hoping to see
that it would try to do a read at address 0 (the flash base address
and reset location) to fetch the first instruction. My plan was to try
to make a new ptf file for a 16-bit flash interface and run a 16-bit
nios directly from this.

Petter
-- 
A: Because it messes up the order in which people normally read text.
Q: Why is top-posting such a bad thing?
A: Top-posting.
Q: What is the most annoying thing on usenet and in e-mail?

Article: 63899
Subject: Re: NIOS: Running code from flash
From: "Nial Stewart" <nial@nialstewartdevelopments.co.uk>
Date: Mon, 8 Dec 2003 13:23:52 -0000
Links: << >>  << T >>  << A >>
> I *did* set the reset address to the flash base. The nios supplied
> flash ip has an 8-bit interface only. However, I was hoping to see
> that it would try to do a read at address 0 (the flash base address
> and reset location) to fetch the first instruction. My plan was to try
> to make a new ptf file for a 16-bit flash interface and run a 16-bit
> nios directly from this.
> Petter

That seems odd, I would have thought that the program counter
would reset to whatever value you set it to, and that this is
the first address it would try to access.

Let us know what's happening if you suss this out.


Nial

------------------------------------------------
Nial Stewart Developments Ltd
FPGA and High Speed Digital Design
Cyclone PCI development/eval board
www.nialstewartdevelopments.co.uk







Site Home   Archive Home   FAQ Home   How to search the Archive   How to Navigate the Archive   
Compare FPGA features and resources   

Threads starting:
1994JulAugSepOctNovDec1994
1995JanFebMarAprMayJunJulAugSepOctNovDec1995
1996JanFebMarAprMayJunJulAugSepOctNovDec1996
1997JanFebMarAprMayJunJulAugSepOctNovDec1997
1998JanFebMarAprMayJunJulAugSepOctNovDec1998
1999JanFebMarAprMayJunJulAugSepOctNovDec1999
2000JanFebMarAprMayJunJulAugSepOctNovDec2000
2001JanFebMarAprMayJunJulAugSepOctNovDec2001
2002JanFebMarAprMayJunJulAugSepOctNovDec2002
2003JanFebMarAprMayJunJulAugSepOctNovDec2003
2004JanFebMarAprMayJunJulAugSepOctNovDec2004
2005JanFebMarAprMayJunJulAugSepOctNovDec2005
2006JanFebMarAprMayJunJulAugSepOctNovDec2006
2007JanFebMarAprMayJunJulAugSepOctNovDec2007
2008JanFebMarAprMayJunJulAugSepOctNovDec2008
2009JanFebMarAprMayJunJulAugSepOctNovDec2009
2010JanFebMarAprMayJunJulAugSepOctNovDec2010
2011JanFebMarAprMayJunJulAugSepOctNovDec2011
2012JanFebMarAprMayJunJulAugSepOctNovDec2012
2013JanFebMarAprMayJunJulAugSepOctNovDec2013
2014JanFebMarAprMayJunJulAugSepOctNovDec2014
2015JanFebMarAprMayJunJulAugSepOctNovDec2015
2016JanFebMarAprMayJunJulAugSepOctNovDec2016
2017JanFebMarAprMayJunJulAugSepOctNovDec2017
2018JanFebMarAprMayJunJulAugSepOctNovDec2018
2019JanFebMar2019

Authors:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

Custom Search