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
2019JanFebMarAprMayJunJulAugSepOctNovDec2019
2020JanFebMarAprMay2020

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 51225

Article: 51225
Subject: Re: Altera SOPC Builder 2.61 problems ...
From: kgolden1@yahoo.com (Kerri Golden)
Date: 7 Jan 2003 10:24:12 -0800
Links: << >>  << T >>  << A >>
I'm posting this for others. It has already been found to fix the
problem.
1. the problem is that Cygwin leaves registry entries behind. So, if
you install, then uninstall Cygwin. Theninstall to another location
there are registry entries poinging to the old location.

2. FIX:
regedit
search for 'Cygwin'
keep pressing F3 until you find an entry that shows the old path. Make
it the correct new path.
Press F3 to check all other entries (in case it left more).
Then all should work.

Article: 51226
Subject: Running Synplify under Windows XP
From: name <nospamforme@someplace.com>
Date: Tue, 07 Jan 2003 12:53:42 -0700
Links: << >>  << T >>  << A >>
Has anyone else out there had problems running Synplify under Windows 
XP?  On the machines I've tried it on the 'Run' button is greyed out and 
  neither the synthesize, compile, or synthesis check functions under 
the run menu will work.  There doesn't seem to be anything special about 
XP installations in the release notes and I'm certain it's not a 
licensing issue because it works on '98, NT, and 2000 machines. This is 
a wierd one...

Michael


Article: 51227
Subject: Spartan II:Bidirectional IO interfacing 5V CMOS ?
From: Rah <>
Date: Tue, 7 Jan 2003 12:11:02 -0800
Links: << >>  << T >>  << A >>
Can i connect a bidirectional IO pin on Spartan II device to a 5V CMOS device ?
For driving out, i would tristate the output and let an external resistor pull it upto 5V.
While receiving, will i have problems making the 5V CMOS device
overdrive ? i mean there will be a fight between the internal pullup and external one.

-Rah

Article: 51228
Subject: Re: dualport ram instantiation in Spartan IIE
From: name <nospamforme@someplace.com>
Date: Tue, 07 Jan 2003 13:40:21 -0700
Links: << >>  << T >>  << A >>
Just watch out if you intend to use Synplify for DP RAM inferrence 
because it can't do it.  I can't speak for the other tools

Igor Orlovich wrote:
> Have you tried simply following Xilinx's examples of inferring Dual Port Ram 
> instead? 
> sean da wrote:
> 
> 
>>I used Xilinx Core Generator to build simulation model for dualport
>>Ram, and it went through the synthesis phase by XTS, but during
>>implementation phase, I got the error message said "dualport_ram is
>>unexpected, ....", dualport_ram is my dualport RAM name. What is the
>>black box name should I put in my code to pass this implementation
>>phase as well as Place/Route phase? Thanks!
> 
> 


Article: 51229
Subject: Bug in Quartus2 Web 2.2
From: Rene Tschaggelar <tschaggelar@dplanet.ch>
Date: Tue, 07 Jan 2003 22:01:21 +0100
Links: << >>  << T >>  << A >>
I found a bug in quartus2 Web V2.2.
When tring to place legacy components in schematic editor,
such as the 74165b shiftregister, its connectors are off
grid. This makes it somewhat hard to connect.

Did anyone figure a workaround ?

Their support is useless : login(!), place a question,
relogin(!) to get a reply, so I didn't ask there.

Rene
-- 
Ing.Buero R.Tschaggelar - http://www.ibrtses.com
& commercial newsgroups - http://www.talkto.net


Article: 51230
Subject: Re: Constraining a purely combinatorial logic path
From: "Clyde R. Shappee" <cshappee@ieee.org>
Date: Tue, 07 Jan 2003 16:22:44 -0500
Links: << >>  << T >>  << A >>
This design is a cascade of decade counters, with the carry in on the least significant
counter grounded so it will count...

The final carry out does indeed go to  a pin.

XST does synthesize it....  I am sure the logic is there..  I am used to using  Synpify
(don't have it now) and am used to looking at the schematic.

Clyde



rickman wrote:

> "Clyde R. Shappee" wrote:
> >
> > The carry chain starts at a node tied to a logic zero....
> >
> > Forget the application....  for now, you are asking too many questions and going
> > too deep.
> >
> > Same question, said a different way, what if I had a decoder whose address was
> > internally derived, did not come in from the outside, and I wanted to insure that
> > from address in to decode out, the prop delay was less than Y ns.
> >
> > The VHDL is well constructed.   I am just trying to (as I said before, possibly as
> > only an exercise) figure out how to constrain the timing for the least delay.
>
> I understand what you are trying to do, but not why you are doing it
> this way.  A carry chain does not start at a grounded input for purposes
> of timing.  That grounded input is *always* grounded and so will not be
> used in any timing analysis.  In this design the addends are the only
> inputs.  If they are also grounded or tied high they will also not be
> used for timing.  In fact, this would explain why you get no logic.  In
> the same way that a compiler will precalculate math on constants and not
> produce code to do that, the synthesizer will perform the logic
> operations on fixed inputs and produce a single output corresponding to
> the result.
>
> If your addends are not fixed, then they either have to come from FFs or
> from IO pins.  The timing tools just do not calculate timing on purely
> combinatorial logic that is not connected to an IO.  The backend tools
> will remove logic that is not sourced and driving either FFs or IO
> pins.  Unfortunately the tools are only designed to help solve real
> problems in real chips, not theoretical analysis of simplified designs.
> But this is not hard to work around.
>
> So what is driving the adders and where do the outputs go in your test
> desigin?
>
> --
>
> Rick "rickman" Collins
>
> rick.collins@XYarius.com
> Ignore the reply address. To email me use the above address with the XY
> removed.
>
> Arius - A Signal Processing Solutions Company
> Specializing in DSP and FPGA design      URL http://www.arius.com
> 4 King Ave                               301-682-7772 Voice
> Frederick, MD 21701-3110                 301-682-7666 FAX


Article: 51231
Subject: Re: Spartan II:Bidirectional IO interfacing 5V CMOS ?
From: Austin Lesea <austin.lesea@xilinx.com>
Date: Tue, 07 Jan 2003 13:34:56 -0800
Links: << >>  << T >>  << A >>
Rah,

Spartan II is equivalent to Virtex, so the following applies:

 http://www.xilinx.com/products/virtex/techtopic/vtt002.pdf

It states that you can do this in Virtex (or Spartan II -- same thing)
in the table on page 2 which lists what you have proposed ( a pullup to
5V, tristate or pull to '0' when driving, and leave tristate while
receiving, and make sure the 5V CMOS driver can drive the added pullup
that you put there).

Austin

Rah wrote:

> Can i connect a bidirectional IO pin on Spartan II device to a 5V CMOS
> device ?
> For driving out, i would tristate the output and let an external
> resistor pull it upto 5V.
> While receiving, will i have problems making the 5V CMOS device
> overdrive ? i mean there will be a fight between the internal pullup
> and external one.
>
> -Rah


Article: 51232
Subject: Re: Constraining a purely combinatorial logic path
From: rickman <spamgoeshere4@yahoo.com>
Date: Tue, 07 Jan 2003 16:35:33 -0500
Links: << >>  << T >>  << A >>
"Clyde R. Shappee" wrote:
> 
> This design is a cascade of decade counters, with the carry in on the least significant
> counter grounded so it will count...
> 
> The final carry out does indeed go to  a pin.
> 
> XST does synthesize it....  I am sure the logic is there..  I am used to using  Synpify
> (don't have it now) and am used to looking at the schematic.
> 
> Clyde

Since it is a counter, it has FFs.  The grounded carry in is not part of
the timing since the ground never changes.  Your long signal paths will
be the lsb FF to the msb FF and the lsb FF to the carry output pin.  One
will be controlled by the clock period constraint and the other by an
OFFSET OUT constraint.  

If the decade counters are being placed separately, the synthesizer is
not constructing a single long carry chain which is what you need for
the fastest carry propagation.  But then I don't know that you can do
this will decade counters.  Since each decade is only 4 bits, I assume
that two LUTs are being used (5 inputs) to generate the carry out of
each decade.  There may well be some special techniques to optimize this
path.  

Now wasn't that easy?  All you had to do was tell us what you were doing
rather than what you thought you wanted to do.  

-- 

Rick "rickman" Collins

rick.collins@XYarius.com
Ignore the reply address. To email me use the above address with the XY
removed.

Arius - A Signal Processing Solutions Company
Specializing in DSP and FPGA design      URL http://www.arius.com
4 King Ave                               301-682-7772 Voice
Frederick, MD 21701-3110                 301-682-7666 FAX

Article: 51233
Subject: Re: dualport ram instantiation in Spartan IIE
From: "John_H" <johnhandwork@mail.com>
Date: Tue, 07 Jan 2003 21:40:58 GMT
Links: << >>  << T >>  << A >>
I instantiate dual ports fine in Synplify.  If you want different clock
domains or advances features, the synthesizer may fall short leaving direct
instantiation of the Xilinx primitives as a better implementation method.
If you need simple operation, the tool works fine.  I can't comment about
XST either but the limitations of Synplify are reasonable.

"name" <nospamforme@someplace.com> wrote in message
news:3E1B3B35.4000302@someplace.com...
> Just watch out if you intend to use Synplify for DP RAM inferrence
> because it can't do it.  I can't speak for the other tools
>
> Igor Orlovich wrote:
> > Have you tried simply following Xilinx's examples of inferring Dual Port
Ram
> > instead?
> > sean da wrote:
> >
> >
> >>I used Xilinx Core Generator to build simulation model for dualport
> >>Ram, and it went through the synthesis phase by XTS, but during
> >>implementation phase, I got the error message said "dualport_ram is
> >>unexpected, ....", dualport_ram is my dualport RAM name. What is the
> >>black box name should I put in my code to pass this implementation
> >>phase as well as Place/Route phase? Thanks!
> >
> >
>



Article: 51234
Subject: USB OPENCORE IP usage
From: "fb" <fba@free.fr>
Date: Wed, 8 Jan 2003 00:21:03 +0100
Links: << >>  << T >>  << A >>
Hello,

I wonder if any of you ever used the USB described in the fantastic OPENCORE
site by Mr Rudolf Usselmann (a Verilog project).
 I would like to implement it on a Spartan II system (Trenz Electronics kit)
that has a built in Philips PDIUSBP11A chip... but the I do not know
 how to interface to the transcever pins mentioned in the design (txdp,
txdn, txoe, rxd, rxdp, rxdn). Could anyone explain me how to do this?

Thank you in advance,


FB (fba@free.fr)




Article: 51235
Subject: Re: Co-simulation of Spice and Vhdl
From: "David" <gretzteam@hotmail.com>
Date: Tue, 7 Jan 2003 18:21:56 -0500
Links: << >>  << T >>  << A >>
Hi,
First I need to say that I didn't receive any post from Allan in Outlook
Express... I just read them on google since I didn't really understand what
you guys were talking about :)

> > If you rejected them, please let us know why.  Presumably there are
> > additional requirements not mentioned in your post.
> > Allan

I'm sorry about the double-posting. I didn't know that the same people were
reading both newsgroups...As for the additional requirements, I'll tell you
what is the project so you'll understand my needs:
I have a vhdl code that implement a Analog to digital converter using
sigma-delta modulation. I'd like to take the one-bit output and filter it in
the analog world to analyse its performance.

I agree that I could first write modelsim's simulation result to a text file
that could be imported into Spice, but this is a pain since I need to do a
lot of simulations with large files. I was pretty sure that there existed a
tool to automate this process but from your answers there is only vhdl-ams
that could do the job. However, I'm not very proficient with vhdl and
learning an new language is not really an option.
Multisim2001 seems to be doing exactly what I need...but I'd like to here
some review of this product before making the switch. It looks more like a
learning tool than a designers tool.

Thank you very much
David





"Uncle Noah" <nkavv@skiathos.physics.auth.gr> wrote in message
news:b7a879e0.0301070920.3ee57e5@posting.google.com...
> allan_herriman.hates.spam@agilent.com (Allan Herriman) wrote in message
news:<3e1a7494.97634440@netnews.agilent.com>...
> > On Tue, 7 Jan 2003 00:36:13 -0500, "David" <gretzteam@hotmail.com>
> > wrote:
> >
> > >Hi,
> > >I have some vhdl code of a sigma-delat modulator that produces a
one-bit
> > >output... use modelsim to simulate the vhdl code and pspice for analog
> > >simulations but I never had to mix those two. I could possibly write
the
> > >Does anyone know a software that allows to perform vhdl simulation as
part
> > >of an analog circuit?
>
> > received two suggestions about how to perform this simulation.
> > If you rejected them, please let us know why.  Presumably there are
> > additional requirements not mentioned in your post.
> > Allan
>
> Those solutions referred could do the work, thus I agree with Alan. I
> used to simulate a 8-bit adder providing inputs about the same way.
> However, if you are capable in VHDL, and want an integrated solution
> you could write the Sigma-Delta is VHDL-AMS (easy to get example in the
> net). Then, your problem would be the tool, for free evaluation AMSWizard,
> or Dolphin Smash probably.
> These simulators interface the analog and digital simulation "islands"
> by the appropriate boundary conditions. There is a slight possibility
> the Smash tool does exactly what you want for both VHDL/Verilog against
> SPICE.
>
> Uncle "The G.B. Man" Noah



Article: 51236
Subject: Re: Co-simulation of Spice and Vhdl
From: Jim Granville <jim.granville@designtools.co.nz>
Date: Wed, 08 Jan 2003 14:07:59 +1300
Links: << >>  << T >>  << A >>
David wrote:
<snip> 
> I have a vhdl code that implement a Analog to digital converter using
> sigma-delta modulation. I'd like to take the one-bit output and filter it in
> the analog world to analyse its performance.

 Seems complicated having VHDL in the loop ? - why not just
re-create the Feedback register of the SDM in spice, and then
model the Integrator/comparitor as normal.
 SDMs self-regulate by this feedback, whilst if you feed 
the ADC bitstream from a file, you will have to exactly match 
the analog values, or your integrator will saturate .

 The limit to SDM performance is real world noise sources, 
harder to simulate - noise on the feedback register Q, and the
PSRR of the analog blocks, for example.

 -jg

Article: 51237
Subject: Re: functional test for Xilinx virtex II Pro
From: rk <stellare@NOSPAMPLEASE.erols.com>
Date: 8 Jan 2003 01:26:21 GMT
Links: << >>  << T >>  << A >>
John Williams wrote:

> 
> "Max K." wrote:
>> 
>> hello,
>> me & my partner need to test this chip.
>> 
>> is there a systematic way of functional testing of an FPGA chip ?
> 
> I have a paper here called "Testing FPGA Devices using JBITS" which
> considers exactly this problem.  The authors are all from Xilinx -
> Sundararajan, McMillian and Guccione.
> 
> I found it on the web, if you search for the title and authrs names
> you should find it.

Hi,

Found it, it's paper E5 on this page (careful line wrap):
   
http://www.klabs.org/richcontent/MAPLDCon01/ProgramSessions/Session_E.ht
ml

-- 
rk, Just an OldEngineer
"A good engineer gets stale very fast if he doesn't keep his hands 
dirty."  -- Wernher von Braun, 1964 


Article: 51238
Subject: Re: USB OPENCORE IP usage
From: Muzaffer Kal <kal@dspia.com>
Date: Wed, 08 Jan 2003 01:30:17 GMT
Links: << >>  << T >>  << A >>
On Wed, 8 Jan 2003 00:21:03 +0100, "fb" <fba@free.fr> wrote:

>Hello,
>
>I wonder if any of you ever used the USB described in the fantastic OPENCORE
>site by Mr Rudolf Usselmann (a Verilog project).
> I would like to implement it on a Spartan II system (Trenz Electronics kit)
>that has a built in Philips PDIUSBP11A chip... but the I do not know
> how to interface to the transcever pins mentioned in the design (txdp,
>txdn, txoe, rxd, rxdp, rxdn). Could anyone explain me how to do this?
>
>Thank you in advance,
>
>
>FB (fba@free.fr)
>
>

The transceiver has vpo, vmo, oe#, rcv, vp, vm pins. These map to the
pins you list in the respective order. You may have to invert the oe
(output enable) signal because it is not clear whether the IP's signal
is active low or not. The transceiver has active low enable.

Muzaffer Kal

http://www.dspia.com
ASIC/FPGA design/verification consulting specializing in DSP algorithm implementations

Article: 51239
Subject: Re: Bug in Quartus2 Web 2.2
From: "Subroto Datta" <sdatta@altera.com>
Date: Wed, 08 Jan 2003 03:07:05 GMT
Links: << >>  << T >>  << A >>
Rene,
   A fix for this problem is under development. More details about its
availability will be posted as soon as the fix is tested and released in the
very near future (no later than end of this week). Thanks for bringing this
problem to our attention.

- Subroto Datta
Altera Corporation

"Rene Tschaggelar" <tschaggelar@dplanet.ch> wrote in message
news:3E1B4021.2090607@dplanet.ch...
> I found a bug in quartus2 Web V2.2.
> When tring to place legacy components in schematic editor,
> such as the 74165b shiftregister, its connectors are off
> grid. This makes it somewhat hard to connect.
>
> Did anyone figure a workaround ?
>
> Their support is useless : login(!), place a question,
> relogin(!) to get a reply, so I didn't ask there.
>
> Rene
> --
> Ing.Buero R.Tschaggelar - http://www.ibrtses.com
> & commercial newsgroups - http://www.talkto.net
>



Article: 51240
Subject: Re: Bug in Quartus2 Web 2.2
From: Rene Tschaggelar <tschaggelar@dplanet.ch>
Date: Wed, 08 Jan 2003 07:02:05 +0100
Links: << >>  << T >>  << A >>
Thanks for the quick reply.
Amazingly quicker than the mentioned 'MySupport',
but then again not - proves my point.

Rene

Subroto Datta wrote:
> Rene,
>    A fix for this problem is under development. More details about its
> availability will be posted as soon as the fix is tested and released in the
> very near future (no later than end of this week). Thanks for bringing this
> problem to our attention.
> 
> - Subroto Datta
> Altera Corporation
> 
> "Rene Tschaggelar" <tschaggelar@dplanet.ch> wrote in message
> news:3E1B4021.2090607@dplanet.ch...
> 
>>I found a bug in quartus2 Web V2.2.
>>When tring to place legacy components in schematic editor,
>>such as the 74165b shiftregister, its connectors are off
>>grid. This makes it somewhat hard to connect.
>>
>>Did anyone figure a workaround ?
>>
>>Their support is useless : login(!), place a question,
>>relogin(!) to get a reply, so I didn't ask there.


Article: 51241
Subject: Re: Co-simulation of Spice and Vhdl
From: gretzteam@hotmail.com (David)
Date: 7 Jan 2003 22:20:35 -0800
Links: << >>  << T >>  << A >>
I'm really sorry. I meant Digital to Analog conversion. That is why I
need vhdl because everything is digital up to the output of the SDM. I
don't think I can create the SDM in spice.
Thanks
David



Jim Granville <jim.granville@designtools.co.nz> wrote in message news:<3E1B79EF.29BD@designtools.co.nz>...
> David wrote:
> <snip> 
> > I have a vhdl code that implement a Analog to digital converter using
> > sigma-delta modulation. I'd like to take the one-bit output and filter it in
> > the analog world to analyse its performance.
> 
>  Seems complicated having VHDL in the loop ? - why not just
> re-create the Feedback register of the SDM in spice, and then
> model the Integrator/comparitor as normal.
>  SDMs self-regulate by this feedback, whilst if you feed 
> the ADC bitstream from a file, you will have to exactly match 
> the analog values, or your integrator will saturate .
> 
>  The limit to SDM performance is real world noise sources, 
> harder to simulate - noise on the feedback register Q, and the
> PSRR of the analog blocks, for example.
> 
>  -jg

Article: 51242
Subject: Re: help for MAXPLUS2!
From: wangmanxi@yahoo.com (siriuswmx)
Date: 7 Jan 2003 23:16:35 -0800
Links: << >>  << T >>  << A >>
Sometime an abnormal byteblaster cable can  lead to it. change one .
Note, here "abnormal" means that you can download the .sof into FPGA
but can't indentify the epc2 with the same byteblaster cable.
Rene Tschaggelar <tschaggelar@dplanet.ch> wrote in message news:<3E195744.7040100@dplanet.ch>...
> 123 wrote:
> > when I use altera's epc2 chip to download my program,but 
>  > byteblaster cann't identify the epc2!
> 
> You have to do 'multidevice JTAG chain' configuration and then
> 'detect configuration'
> If have an FPGA and an EPC2, the sequence matters.
> 
> What FPGA is there too ? According to what picture did
> you do the configuration ?
> 
> Rene

Article: 51243
Subject: Re: USB OPENCORE IP usage
From: fba@free.fr (Frederic Bastenaire)
Date: 8 Jan 2003 00:43:00 -0800
Links: << >>  << T >>  << A >>
> >I wonder if any of you ever used the USB described in the fantastic OPENCORE
> >site by Mr Rudolf Usselmann (a Verilog project).
> > I would like to implement it on a Spartan II system (Trenz Electronics kit)
> >that has a built in Philips PDIUSBP11A chip... but the I do not know
> > how to interface to the transcever pins mentioned in the design (txdp,
> >txdn, txoe, rxd, rxdp, rxdn). Could anyone explain me how to do this?
> >
> >Thank you in advance,
> >
> >
> >FB (fba@free.fr)
> >
> >
> 
> The transceiver has vpo, vmo, oe#, rcv, vp, vm pins. These map to the
> pins you list in the respective order. You may have to invert the oe
> (output enable) signal because it is not clear whether the IP's signal
> is active low or not. The transceiver has active low enable.
> 
> Muzaffer Kal
> 
> http://www.dspia.com
> ASIC/FPGA design/verification consulting specializing in DSP algorithm implementations

Thank you very much for your help. 

So actually the inferface with the transceiver is really simple...
OE# is active low, so no inversion is required. The only
little problem is that on my FPGA board, the RCV signal is not routed
to the
Spartan II. 

I can easily regenerate it as is is the difference between both
USB signals (i.e. (USB+) and not (USB-)), I just hope that it will not
introduce subtle timing problems since there will be a small delay
with
this extra level of logic compared to the other signals that are fed
through
direcly.

I suppose that an extra level of "empty" (buffer or the like) logic
could be added to the other "receive" signals to correct the timings
if necessary.

There are certainly cleaner methods but I am just a newbie and I
am not yet 100% familiar with the synchronous design methods so any
advice is
welcome...

Yours,

FB

Yours,

Frederic Bastenaire

Article: 51244
Subject: Newbie question
From: "tk" <tokwok@hotmail.com>
Date: Wed, 8 Jan 2003 19:09:56 +0800
Links: << >>  << T >>  << A >>
Hi all,

In my design, it needs to transfer 64-bit data between the Spartan II and
the PC via a 8-bit bus.
When the PC reads the hard-coded data(initialized in code segment 1), it
works fine. The PC can
read the hard-coded data. However, when the PC writes data to the board, it
can't read back. The
storage part code is in code segment 2. In segment 2, in the two lines:

data_store(counter2) := tmp_bit;
debug_data <= to_StdlogicVector(tmp_bit);

the 8-bit debug_data is connected to the FPGA's I/O pins so that the data is
viewed using logic
analyzer. It's found that the 8-bit debug_data is the same as the data
written to the board by
the PC. So, it's sure that the tmp_bit do contain the input data, but I
don't know why the
data_sotre can't store it, and each time the PC reads all zero.

I've got 5 warnings of the following type in Xinlinx ISE 4.2i:
WARNING:DesignRules:372 - Netcheck: Gated clock. Clock net N217 is sourced
by a
   combinatorial pin. This is not good design practice. Use the CE pin to
   control the loading of data into the flip-flop.

Will the problem be related to the warnings ?

Thx for ur kind attention and help.

tk

--------------
VHDL code
--------------

library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;


entity data_tran is
    Port ( PC_R_nW_buf : in std_logic;       -- PC Read/(Write)'
              PC_Rcv_nDS : in std_logic;        -- PC Receive/(Data strobe)'
              PC_INIT_buf : in std_logic;
              data : inout std_logic_vector(7 downto 0);
              D2_nDS : inout std_logic := '1';
              D2_nRcv : inout std_logic := '0';
              debug_data : out std_logic_vector(7 downto 0));
end data_tran;


architecture Behavioral_data_tran of data_tran is
component IBUF
 port ( I : in std_logic;
        O : out std_logic);
end component;


signal PC_R_nW : std_logic;
signal PC_INIT : std_logic;
signal d_in : std_logic_vector(7 downto 0);
signal d_out : std_logic_vector(7 downto 0);
signal q : std_logic_vector(7 downto 0);
signal pcwe : std_logic;    -- PC write enable
signal pcnre : std_logic;   -- (PC read enable)'
signal tmp_bit : bit_vector(7 downto 0);

begin
 BUF1: IBUF port map(I => PC_R_nW_buf, O => PC_R_nW);
 BUF2: IBUF port map(I => PC_INIT_buf, O => PC_INIT);

 process(PC_INIT, PC_R_nW, PC_Rcv_nDS)
       type data_array is array (0 to 7) of bit_vector(7 downto 0);

      variable counter : integer range 0 to 7;
      variable counter2 : integer range 0 to 7;
      variable data_store : data_array;

      begin
      if (PC_INIT = '1') then
            -- code segment 1 start
            --   data_store(0) := "00000001";
            --   data_store(1) := "00000010";
            --   data_store(2) := "00000100";
            --   data_store(3) := "00001000";
            --   data_store(4) := "00010000";
            --   data_store(5) := "00100000";
            --   data_store(6) := "01000000";
            --   data_store(7) := "10000000";
            -- code segment 1 end

             if (PC_R_nW = '1') then
                   counter := 0;
                   D2_nDS <= '1';
                   pcwe <= '0';
                   pcnre <= '0';
            elsif (PC_R_nW = '0') then
                   counter2 := 0;
                  D2_nRcv <= '1';
                  pcwe <= '1';
                  pcnre <= '1';
           end if;
  end if;


  if (PC_R_nW = '1') then
         if (PC_Rcv_nDS = '1') then
              D2_nDS <= '1';
        end if;
  elsif (PC_R_nW = '0') then
         if (PC_Rcv_nDS = '1') then
             D2_nRcv <= '1';
         end if;
  end if;

  if (PC_R_nW = '1' and PC_INIT = '0'
       and PC_Rcv_nDS = '0' and D2_nDS = '1') then

        d_out <= to_StdlogicVector(data_store(counter));

        if (counter = 7) then
               counter := 0;
        else
               counter := counter + 1;
        end if;

         D2_nDS <= '0';
  elsif (PC_R_nW = '0' and PC_INIT = '0'
           and PC_Rcv_nDS = '0' and D2_nRcv = '1') then

           -- code segment 2 start
           data_store(counter2) := tmp_bit;
           debug_data <= to_StdlogicVector(tmp_bit);
         -- code segment 2 end

          if (counter2 = 7) then
                counter2 := 0;
         else
               counter2 := counter2 + 1;
          end if;

           D2_nRcv <= '0';
  end if;
  end process;


  d_in <= data when pcwe = '1' else d_out;
  q <= d_in;
  data <= q when pcnre = '0' else "ZZZZZZZZ";

  tmp_bit <= to_bitvector(d_in);
end Behavioral_data_tran;



Article: 51245
Subject: Re: Newbie question
From: "Nial Stewart" <nial@spamno.nialstewart.co.uk>
Date: Wed, 8 Jan 2003 12:20:45 -0000
Links: << >>  << T >>  << A >>
> Will the problem be related to the warnings ?
>
> Thx for ur kind attention and help.
>
> tk

I haven't checked through the logic of your design but you've
written it in a combinatorial way that isn't ideally suited to
FPGAs.

FPGAs have fast clock nets to allow every flip flop to be
clocked off one clock (in the simplest case). If only this clock
net is used to clock each flip flop then all the Place
and Route tools have to worry about is the combinatorial logic delay
between flip flops. The clock frequency is entered as a constraint
so the tools know the period they are dealing with.

The 'normal' code structure for ensuring that only the clock net
is used to clock each flip flop is

process(rst,clk)
begin
if(rst = '1') then  -- Asynch reset

    signals <= '0'; -- or whatever reset value you need

elsif(rising_edge(clk)) then  -- All signals are assigned 'within' this and
updated
                              -- on the rising edge of the clock if enabled
as below.

    if(X = '1') then          -- X and Y are now used as clock enables
        signals <= assigned;

    elsif(Y = '1') then
        signals <= assigned_to_something_else;

    else
        signals <= default_value;
    end if;

end if;

end process;


If you go to the Downloads page of the web site below there's an example
of an interface written to drive a USB interface module designed for
use with the BurchED FPGA evaluation board. This is fairly well commented
and is similar to what you seem to be trying. It might be worth looking
at for more help.

Hope this helps.


Nial.
------------------------------------------------
Nial Stewart Developments Ltd
FPGA and High Speed Digital Design
www.nialstewart.co.uk







Article: 51246
Subject: internal nets
From: nagaraj_c_s@yahoo.com (Nagaraj)
Date: 8 Jan 2003 06:56:39 -0800
Links: << >>  << T >>  << A >>
In Xilinx ISE 5.1i,
1)How to get the delay for internal clock to internal signal pin? 
2)How to give timing constraint for internal clock to internal signal
pin?
3)How to give timing constraint for internal signal pin to another
internal signal pin?

One basic question is xilinx tool changes net names during
implementation. How to find out my signal?

Article: 51247
Subject: Re: asynchronous inputs
From: "valentin tihomirov" <valentin@abelectron.com>
Date: Wed, 8 Jan 2003 17:16:15 +0200
Links: << >>  << T >>  << A >>
In my case strobe is much longer than CLK (I latch values from computer's
LPT into CPLD). Seems that it is the simples case you describe.

Thank you all.



Article: 51248
Subject: Re: Newbie question
From: "tk" <tokwok@hotmail.com>
Date: Thu, 9 Jan 2003 00:00:06 +0800
Links: << >>  << T >>  << A >>
thx for ur help : )

"Nial Stewart" <nial@spamno.nialstewart.co.uk> wrote in message
news:3e1c1739$0$29919$fa0fcedb@lovejoy.zen.co.uk...
> > Will the problem be related to the warnings ?
> >
> > Thx for ur kind attention and help.
> >
> > tk
>
> I haven't checked through the logic of your design but you've
> written it in a combinatorial way that isn't ideally suited to
> FPGAs.
>
> FPGAs have fast clock nets to allow every flip flop to be
> clocked off one clock (in the simplest case). If only this clock
> net is used to clock each flip flop then all the Place
> and Route tools have to worry about is the combinatorial logic delay
> between flip flops. The clock frequency is entered as a constraint
> so the tools know the period they are dealing with.
>
> The 'normal' code structure for ensuring that only the clock net
> is used to clock each flip flop is
>
> process(rst,clk)
> begin
> if(rst = '1') then  -- Asynch reset
>
>     signals <= '0'; -- or whatever reset value you need
>
> elsif(rising_edge(clk)) then  -- All signals are assigned 'within' this
and
> updated
>                               -- on the rising edge of the clock if
enabled
> as below.
>
>     if(X = '1') then          -- X and Y are now used as clock enables
>         signals <= assigned;
>
>     elsif(Y = '1') then
>         signals <= assigned_to_something_else;
>
>     else
>         signals <= default_value;
>     end if;
>
> end if;
>
> end process;
>
>
> If you go to the Downloads page of the web site below there's an example
> of an interface written to drive a USB interface module designed for
> use with the BurchED FPGA evaluation board. This is fairly well commented
> and is similar to what you seem to be trying. It might be worth looking
> at for more help.
>
> Hope this helps.
>
>
> Nial.
> ------------------------------------------------
> Nial Stewart Developments Ltd
> FPGA and High Speed Digital Design
> www.nialstewart.co.uk
>
>
>
>
>
>



Article: 51249
Subject: Re: USB OPENCORE IP usage
From: hess@cs.indiana.edu (Caleb Hess)
Date: Wed, 8 Jan 2003 16:11:32 +0000 (UTC)
Links: << >>  << T >>  << A >>
In article <d977c973.0301080042.3070fd27@posting.google.com>,
Frederic Bastenaire <fba@free.fr> wrote:
>> >I wonder if any of you ever used the USB described in the fantastic OPENCORE
>> >site by Mr Rudolf Usselmann (a Verilog project).
>> > I would like to implement it on a Spartan II system (Trenz Electronics kit)
>> >that has a built in Philips PDIUSBP11A chip... but the I do not know
>> > how to interface to the transcever pins mentioned in the design (txdp,
>> >txdn, txoe, rxd, rxdp, rxdn). Could anyone explain me how to do this?
>> >
>> >Thank you in advance,
>> >
>> >
>> >FB (fba@free.fr)
>> >
>> >
>> 
>> The transceiver has vpo, vmo, oe#, rcv, vp, vm pins. These map to the
>> pins you list in the respective order. You may have to invert the oe
>> (output enable) signal because it is not clear whether the IP's signal
>> is active low or not. The transceiver has active low enable.
>> 
>> Muzaffer Kal
>> 
>> http://www.dspia.com
>> ASIC/FPGA design/verification consulting specializing in DSP algorithm
>implementations
>
>Thank you very much for your help. 
>
>So actually the inferface with the transceiver is really simple...
>OE# is active low, so no inversion is required. The only
>little problem is that on my FPGA board, the RCV signal is not routed
>to the
>Spartan II. 

You mentioned above that you have a Trenz board. The specs for their 
TE-XC2SE board show rcv connected to pin B9, vm on C9, and vp on D9.

I think your problem will be that the Trenz board has the transceiver
mode pin unconnected (mode 1, for differential input on VPO/VMO) while 
Usselmann's design produces single-ended output requiring mode 0. You
should be able to fix this by adding a kludge wire to ground from pin
1 of the PDIUSBP11A chip.

-- 
Caleb Hess						hess@cs.indiana.edu




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
2019JanFebMarAprMayJunJulAugSepOctNovDec2019
2020JanFebMarAprMay2020

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