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 106125

Article: 106125
Subject: Re: verilog versus vhdl
From: Evan Lavelle <eml@nospam.uk>
Date: Tue, 08 Aug 2006 10:28:10 +0100
Links: << >>  << T >>  << A >>
On 7 Aug 2006 23:40:14 -0700, fpga_toys@yahoo.com wrote:

>in binary. Because of the extensive timing and instantiation control in
>the languages, the VHDL/Verilog synthesis tools are obligated to
>implement the circuits as described ... and this will forever be a
>handy cap.
>
>With higher level languages, which avoid specific details about the
>instantiation, then the compiler becomes free to choose whatever
>hardware that will produce the described results, and optimize out
>everything else that doesn't matter. Vhdl/Verilog really lack that
>freedom, when the design description is as precise as what clock edge,
>and what logic level, every object is at.

Actually, you can make your VHDL or Verilog description much more
abstract than this. I've recently been working with some very abstract
VHDL code, some of which was untimed, and some of which used functions
and procedures rather than explicit hierarchy. It was also very
dependent on passing around large records, and letting the synthesiser
get rid of the unused bits. The untimed code relied on register
retiming in DC (which I think XST supports).

Personally, I really hate this sort of code. It was synthesising to
about 75 logic levels between clocks before I started hacking it.  

>That is not a reasonable vision, while the
>only tools to program fpga designs, and at the bit and clock edge
>level. 

Give it a go - try some abstract code on your favourite synthesiser.
DC has a 'map_to_entity' pragma which allows you to write a
behavioural function or procedure for simulation, and map it to an
entity for synthesis. I tried running some example code that uses this
pragma through Amplify recently, and it ignored the pragma, and
synthesised the behavioural code correctly. Synplify would probably do
exactly the same.

>I'm actually looking foward to a SystemC tool based
>on C++ sematics that has really good synthesis ... maybe a few years
>from now?

It'll never happen; already been tried, failed. Hacking low-level
hardware semantics into existing C++ semantics just gives you a
verbose and complex mess, which is nowhere near as concise and clear
as a VHDL or Verilog description. Great for modelling, non-starter for
real-world synthesis.

BTW, I google'd FpgaC and spent 10 minutes looking at the SourceForge
site, before giving up. There's no obvious overview, FAQ, or
documentation; you'll need to fix this if you want to get anyone
interested.

Unrelated to your comments, but a couple of people elsewhere in this
thread were comparing Verilog to C. I guess I've missed this - I've
spent many years writing C, C++, and Verilog, and I've never noticed
*any* similarity between Verilog and C, apart from the most
superficial. I'd really like to see someone produce a list of these
similarities.

Evan


Article: 106126
Subject: Re: verilog versus vhdl
From: "Ben Jones" <ben.jones@xilinx.com>
Date: Tue, 8 Aug 2006 11:04:38 +0100
Links: << >>  << T >>  << A >>

"Evan Lavelle" <eml@nospam.uk> wrote in message
news:n6kgd2hns1l37ftdjuh8u1nnq6a294m6i5@4ax.com...
> On 7 Aug 2006 23:40:14 -0700, fpga_toys@yahoo.com wrote:
>
> Unrelated to your comments, but a couple of people elsewhere in this
> thread were comparing Verilog to C. I guess I've missed this - I've
> spent many years writing C, C++, and Verilog, and I've never noticed
> *any* similarity between Verilog and C, apart from the most
> superficial. I'd really like to see someone produce a list of these
> similarities.

In summary: &&, ||, !, &, |, ^, ~, ==, !=. :-)

        -Ben-



Article: 106127
Subject: Re: verilog versus vhdl
From: Jonathan Bromley <jonathan.bromley@MYCOMPANY.com>
Date: Tue, 08 Aug 2006 12:26:05 +0100
Links: << >>  << T >>  << A >>
On Tue, 8 Aug 2006 11:04:38 +0100, Ben Jones
 <ben.jones@xilinx.com> wrote:

>Evan Lavelle <eml@nospam.uk> wrote
>>  I've never noticed
>> *any* similarity between Verilog and C, apart from the most
>> superficial. I'd really like to see someone produce a list of these
>> similarities.

Thanks - I was going to say much the same.  Case-sensitivity
would be my strongest candidate - and, perhaps, the use of
square brackets for array subscripts.  Not much else.

I guess, though I don't know for sure, that the superficial
similarities are because the original authors of Verilog 
very sensibly saved themselves some work by borrowing 
lex/yacc parsing technology.

[Ben Jones]
> In summary: &&, ||, !, &, |, ^, ~, ==, !=. :-)

And even that is at the mercy of 4-state logic.
(I spy a missed opportunity here.  SystemVerilog has not yet 
assigned a meaning to the :-) operator.)
-- 
Jonathan Bromley, Consultant

DOULOS - Developing Design Know-how
VHDL * Verilog * SystemC * e * Perl * Tcl/Tk * Project Services

Doulos Ltd., 22 Market Place, Ringwood, BH24 1AW, UK
jonathan.bromley@MYCOMPANY.com
http://www.MYCOMPANY.com

The contents of this message may contain personal views which 
are not the views of Doulos Ltd., unless specifically stated.

Article: 106128
Subject: Newbie question
From: Johannes Hausensteiner <johannes.hausensteiner@pcl.at>
Date: Tue, 08 Aug 2006 13:38:33 +0200
Links: << >>  << T >>  << A >>
Hi there,

I am doing my first FPGA/VHDL design. Previously I did CPLD designs
utilizing Altera's AHDL.
I coded the VHDL source files and simulated it successfully with
Modelsim. Then I made the I/O pin assignments and made the .bit
file and loaded it to the FPGA. To my disappointment only some of
the signals are correct; the functionality of the system does not
work.
I am using ispLEVER and a Lattice LFEC33 FPGA.
There is a "Post Place and Route Simulation" action available within
ispLEVER (actually it starts Modelsim), but this does not work.
Modelsim always complains "Error loading design".
What possibilities do I have to debug my design?

Thanks a lot,

Johannes

Article: 106129
Subject: New to RocketIO
From: Peter Mendham <petermendham@NOCANNEDMEAT.computing.dundee.ac.uk>
Date: Tue, 08 Aug 2006 13:24:12 +0100
Links: << >>  << T >>  << A >>
Dear all,

I'm new to RocketIO and would appreciate any guidance from a hw design 
perspective.  I am currently doing schematics for an application 
specific development board and trying to work through the various 
demands from the datasheets and app notes, for example, the fact that it 
seems to need three additional LDO power supplies?!?  Any hints and tips 
would be useful.

TIA

-- Peter

Article: 106130
Subject: Re: Open source Xilinx JTAG programmer with Digilent USB support
From: "rickman" <spamgoeshere4@yahoo.com>
Date: 8 Aug 2006 05:45:44 -0700
Links: << >>  << T >>  << A >>
fpgakid@gmail.com wrote:
> I've written a Xilinx JTAG programmer. It runs on Win32 and Linux
>
> Following cables are supported:
>
> Parallel III
> Digilent USB (on Linux it needs libusb, Win32 needs the original driver
> from digilent, utilizes full USB transfer speed!)
>
> Following chips are implemented:
> Spartan-3 Family
> XCF Family
> Virtex-II Pro family
>
> If it seems people are interested I'll clean up the code and put it up
> on sourceforge.net.
> The most interesting part is  the Digilent USB driver. It could be used
> in other applications too :)

I would be interested in this.  Would the Digilent driver be open
source?  Is it freely distributed?  I looked for info on this at the
Digilent site and I did not find any.


Article: 106131
Subject: Re: Open source Xilinx JTAG programmer with Digilent USB support
From: "Antti" <Antti.Lukats@xilant.com>
Date: 8 Aug 2006 05:52:15 -0700
Links: << >>  << T >>  << A >>
rickman schrieb:

> fpgakid@gmail.com wrote:
> > I've written a Xilinx JTAG programmer. It runs on Win32 and Linux
> >
> > Following cables are supported:
> >
> > Parallel III
> > Digilent USB (on Linux it needs libusb, Win32 needs the original driver
> > from digilent, utilizes full USB transfer speed!)
> >
> > Following chips are implemented:
> > Spartan-3 Family
> > XCF Family
> > Virtex-II Pro family
> >
> > If it seems people are interested I'll clean up the code and put it up
> > on sourceforge.net.
> > The most interesting part is  the Digilent USB driver. It could be used
> > in other applications too :)
>
> I would be interested in this.  Would the Digilent driver be open
> source?  Is it freely distributed?  I looked for info on this at the
> Digilent site and I did not find any.

digilent has adept SDK so you can use their cables using their DLL.
you cant however access them direclty.

Antti


Article: 106132
Subject: Re: Newbie question
From: "ALuPin@web.de" <ALuPin@web.de>
Date: 8 Aug 2006 06:28:39 -0700
Links: << >>  << T >>  << A >>
Hi Johannes,

did you import the testbench file and associate it to the device in
ispLEVER?
By doing that you can start functional and timing simulation when
marking
the device.

Besides are you using VHDL packages ?

Rgds
Andr=E9


> There is a "Post Place and Route Simulation" action available within
> ispLEVER (actually it starts Modelsim), but this does not work.
> Modelsim always complains "Error loading design".
> What possibilities do I have to debug my design?
>=20
> Thanks a lot,
>=20
> Johannes


Article: 106133
Subject: Re: Xilinx USB Blaster FX2 firmware and CPLD replacement under GPL released
From: Daniel O'Connor <darius@dons.net.au>
Date: Tue, 08 Aug 2006 23:14:31 +0930
Links: << >>  << T >>  << A >>
Antti wrote:
> as long as the platform usb and s3e starte use the same FX2 firmware
> and same CPLD file they should be fairly compatible.

I imagine the CPLD is identical as the WebPack software just sees it as a
Platform USB cable.

> the difference could be in additional control outputs of the CPLD as
> the platform cable has tri-state busdrivers not present in the
> starterkit. so control outputs for them may have to be tied to some
> level in the CPLD.
> 
> well thats a guess I have not checked or tried it yet.

OK, I am looking at getting a new JTAG dongle since the one work got for
free(!) with Altium seems a bit dodgy. (And it's slow and it's parallel)

Thanks.

-- 
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
  -- Andrew Tanenbaum
GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C

Article: 106134
Subject: Re: FPGA : PCI-Xilinx Core, PC not booting
From: "Dave Pollum" <vze24h5m@verizon.net>
Date: 8 Aug 2006 06:55:41 -0700
Links: << >>  << T >>  << A >>
bijoy wrote:
> Hi, The board details are as follows. PCI-32 bit 33 MHz (so M66 is connected to GND) Master/Target functionality. The device does work along with other PCI devices. ( TV tuner card, PCI NIC card etc) Only memory space enabled. Only 1 BAR enabled. Decode speed : medium Clock : PCI clock going to dedicated GCLK pin. FPGA : XC3S200-144TQFP, with XCF01 (1 M flash) (PROM configuration speed is default (6MHz) )
>
> What is this PDE ? Also what do you mean by BIOS speed contrary... ? i belive PCI decode speed is not settable in BIOS.
>
> The exact symptoms are : Intel motherboards -> works fine (845, 865, 915 etc) VIA motherboard A7VBX-MX (AMD) -> PC does not even give the "all ok" single beep at power on. monitor, keyboard, mouse all appear dead. CPU fan keeps whirring but PC does not boot.
>
> looks like we will have to open a webcase.
>
> Thanks -Bijoy

I had a strange non-boot problem during development of a PCI card that
used a PCI target chip (non-FPGA).   When the card was plugged into one
PC, that PC didn't boot.  However, when the card was plugged into other
PCs, they always booted.  Because the PCI chip's serial EEPROM's
setting were wrong, the PCI chip always asserted INTA#. After
correcting the EEPROM settings, INTA# behaved correctly, and the first
PC always booted.

-Dave Pollum


Article: 106135
Subject: Re: FPGA interface to serial ADC
From: "Ki" <kyomubi_ki@yahoo.co.uk>
Date: 8 Aug 2006 06:56:43 -0700
Links: << >>  << T >>  << A >>
Thanks for all of the advice above. I've tested the ADC using function
generators to drive SCLK and CS and it works just fine. So the problem
is definitely with my self-generated signals where I have been running
the ADC at half the FPGA board speed (and like homoalteraiensis says)
deriving the SCLK from the LSB of a counter in the FPGA. But this isn't
working.

Ki


homoalteraiensis wrote:
> I had no problem in driving a typical serial ADC's system clk and
> control impulses @60Meg and above, which is already very close to the
> ADCs spec!
>
> A common problem is, to generate an approp riate clock with a valid
> duty cycle. Here a PLL can be used to obtain a freq which ist no
> directly synthesizeable from the FPGAs system clock (just like 100Megs
> from out of 60Meg internal or 20Meg external).
>
> But typically, you will run a ADC with half of the system freq, in
> order to be able to do processing and decisions within one bit clock,
> and toggle the required signal outputs for any of the peripheric
> devices easily.(e.g. Bit0 of a counter, running at clock speed)
>
> A special case is running the data aquisition fully pipelined, where
> ADC's clock is equal to the fpga clock: With most programmable devices,
> you will somehow violate the system clock net in simply passing out the
> freq itself!   You will have to use dual data rate cells instead (which
> also should be placed in the io-blocks for best performance).
>
> If you are not familiar with this: The ddr-cell is a switch for two
> channels controlled by a) the high level and b) as well the low level
> of the cells's clock. By feeding the ddr cell with static 1 and 0 at
> its inputs, it is somehow "abused" to switch a 1 at clk hi, and a zero
> at clk lo. Thus it doubles the frequency to obtain the virtual factor 2
> mentioned above (toggeling).
>
> With a (pll based) well clk inside the FPGA, you will have a nice and
> perfectly driven system clk outside too, with a dc of 50:50 (nearly).
>
> The next issue is aquiring the ADCs output correctly according to the
> given delay at the board: Some  ADCs pass out their data at the falling
> edge, and with a tycical delay of 10ns, so you will find the data valid
> in beneath of the next rising edge of the receiving flip flops. To
> avoid this, simply generate a doubled system clk and generate a delayed
> clock for the ddr-cells' clock to delay the ADCs clock. You may also
> invert 0/1 to push the phase in a way, that the incoming data perfectly
> meets to aquiring clock.


Article: 106136
Subject: Re: WHAT SITUATION I NEED A BUFFER
From: Mike Treseler <mike_treseler@comcast.net>
Date: Tue, 08 Aug 2006 07:00:57 -0700
Links: << >>  << T >>  << A >>
ZHI wrote:

> The Matlab
> always
> show busy but not continue to next trial. I have to close Matlab and
> try again. The phenomenon happens every time. Is this the problem of my
> vhdl codes´╝č

Sounds like a Matlab bug. Open a case with them.

> But how can it successuflly work for some trials (even
> reached 9883 trial)?

Memory leaks are like that.

>   How to fix it?

Upgrade Matlab.
Maybe try a different computer.

  -- Mike Treseler

Article: 106137
Subject: Re: verilog versus vhdl
From: Ron <News5@spamex.com>
Date: Tue, 08 Aug 2006 07:04:10 -0700
Links: << >>  << T >>  << A >>
Ben Jones wrote:
>> I'd really like to see someone produce a list of these
>> similarities.
> 
> In summary: &&, ||, !, &, |, ^, ~, ==, !=. :-)
> 
>         -Ben-

How about:
1. if/else are the same.
2. Verilog "begin" and "end" maps to C's "{" and "}"
3. Verilog's case statement is similar to C's switch statement.
4. Comment characters are the same.
5. Verilog and C statements are both terminated with semicolon.
6. And last but not least, both Verilog and C have "integer" types. ;-)


Article: 106138
Subject: Switching speeds on V4FX RocketIO
From: Josh Rosen <bjrosen@polybusPleaseDontSPAMme.com>
Date: Tue, 08 Aug 2006 10:05:06 -0400
Links: << >>  << T >>  << A >>
Has anyone been able to dynamically switch speeds on the V4FX RocketIO?.
I've been trying to switch between 2.5GHz and 5GHz using the
reconfiguration ports. It works in simulation but not in real hardware.
Has anyone else tried to do this?


Article: 106139
Subject: Networking : Multicast Performance
From: "Jeremy Price" <jpriceelvis.removeme@gmail.com>
Date: Tue, 8 Aug 2006 07:20:06 -0700
Links: << >>  << T >>  << A >>
Hello all,

I am working with the Xilinx ML403 board and I am trying to find some documentation about the UDP Multicast performance for the board. Does anyone have any pointers?

Thanks

Article: 106140
Subject: Re: Newbie question
From: Mike Treseler <mike_treseler@comcast.net>
Date: Tue, 08 Aug 2006 07:21:34 -0700
Links: << >>  << T >>  << A >>
Johannes Hausensteiner wrote:

> I am doing my first FPGA/VHDL design. 
> I coded the VHDL source files and simulated it successfully with
> Modelsim. Then I made the I/O pin assignments and made the .bit
> file and loaded it to the FPGA. To my disappointment only some of
> the signals are correct; the functionality of the system does not
> work.
> I am using ispLEVER and a Lattice LFEC33 FPGA.
> There is a "Post Place and Route Simulation" action available within
> ispLEVER (actually it starts Modelsim), but this does not work.
> Modelsim always complains "Error loading design".

Use modelsim directly from the command line or GUI.

> What possibilities do I have to debug my design?

Common first-time synthesis problems include:
Use of wait statements.
No clock.
No reset.
Inputs not synchronized.
Clock or reset on non-global pin.
Not using standard clocked process template.

If all else fails,
post your code to comp.lang.vhdl
Good luck.

    -- Mike Treseler

Article: 106141
Subject: Re: verilog versus vhdl
From: "Ben Jones" <ben.jones@xilinx.com>
Date: Tue, 8 Aug 2006 15:26:05 +0100
Links: << >>  << T >>  << A >>

"Jonathan Bromley" <jonathan.bromley@MYCOMPANY.com> wrote in message
news:gcsgd254tgh90tmsdq5pkg2fgl3vmj3bu8@4ax.com...
> On Tue, 8 Aug 2006 11:04:38 +0100, Ben Jones
>  <ben.jones@xilinx.com> wrote:

> > In summary: &&, ||, !, &, |, ^, ~, ==, !=. :-)
> And even that is at the mercy of 4-state logic.

Still, I'd rather type '&' than 'and' anyday. :)

> (I spy a missed opportunity here.  SystemVerilog has not yet
> assigned a meaning to the :-) operator.)

I believe that happy smilies cannot exist within a standard C-syntax
expression. The lexer requires them to be sad, viz:

  r = a?b  :-(   d+e);

Ah, wait. Unless, of course, they have a big nose:

  r = (a?b   :0)  ;

...or they are very very happy:

  r = a?b   :-D   ;

There must be a standard reference somewhere for this stuff...

    -Ben-



Article: 106142
Subject: Re: verilog versus vhdl
From: "Ben Jones" <ben.jones@xilinx.com>
Date: Tue, 8 Aug 2006 15:39:52 +0100
Links: << >>  << T >>  << A >>

"Ron" <News5@spamex.com> wrote in message news:VQ0Cg.17$Bx.15@fe02.lga...

> >> I'd really like to see someone produce a list of these
> >> similarities.
> > In summary: &&, ||, !, &, |, ^, ~, ==, !=. :-)
> How about:
> 1. if/else are the same.

True, I guess the conditional statements have the same format. There aren't
many different formats to choose from though. :)

> 2. Verilog "begin" and "end" maps to C's "{" and "}"

So that's not very alike at all then...!

> 3. Verilog's case statement is similar to C's switch statement.

Nah, it's nothing like it! There's no equivalent of C's requirement for a
'break' statement at the end of each branch for a start.

> 4. Comment characters are the same.

True, good point.

> 5. Verilog and C statements are both terminated with semicolon.

But there the similarity ends; for example:

  module foo;
     ...
  endmodule

WTF?!? Who thought *that* made sense?

> 6. And last but not least, both Verilog and C have "integer" types. ;-)

ROFL! :-)

        -Ben-



Article: 106143
Subject: Re: verilog versus vhdl
From: Jonathan Bromley <jonathan.bromley@MYCOMPANY.com>
Date: Tue, 08 Aug 2006 15:57:46 +0100
Links: << >>  << T >>  << A >>
On Tue, 08 Aug 2006 07:04:10 -0700,
Ron <News5@spamex.com> wrote:

>How about:

urrm, does the smiley apply to the whole post ? 

>1. if/else are the same.

C has a hard time with "if (1'bx)".

>2. Verilog "begin" and "end" maps to C's "{" and "}"

I'll grant you that one.

>3. Verilog's case statement is similar to C's switch statement.

Apart from the facts that:
* each branch is a single statement in Verilog,
  whereas C switch is in fact a computed branch and 
  execution continues through the switch block;
* choices must be prefixed with the keyword "case" in C;
* the syntax for mapping more than one choice
  to the same action is different;
* Verilog has two wildcard-matching variants of "case";
* case labels (choices) in Verilog don't need to be constants.

In other respects, yes, they're similar....

>4. Comment characters are the same.
>5. Verilog and C statements are both terminated with semicolon.

OK, I concede.

>6. And last but not least, both Verilog and C have "integer" types. ;-)

with different names and different semantics :-)
-- 
Jonathan Bromley, Consultant

DOULOS - Developing Design Know-how
VHDL * Verilog * SystemC * e * Perl * Tcl/Tk * Project Services

Doulos Ltd., 22 Market Place, Ringwood, BH24 1AW, UK
jonathan.bromley@MYCOMPANY.com
http://www.MYCOMPANY.com

The contents of this message may contain personal views which 
are not the views of Doulos Ltd., unless specifically stated.

Article: 106144
Subject: Re: verilog versus vhdl
From: Peter Mendham <petermendham@NOCANNEDMEAT.computing.dundee.ac.uk>
Date: Tue, 08 Aug 2006 15:58:54 +0100
Links: << >>  << T >>  << A >>
Ben Jones wrote:
> "Jonathan Bromley" <jonathan.bromley@MYCOMPANY.com> wrote in message
> Still, I'd rather type '&' than 'and' anyday. :)

Personally, I'd rather read 'and' than '&'.  The old Ada argument is 
that code is read far more often than it is written.  I guess that's why 
Ada-inspired VHDL ended up as it did.  IMHO the world needs both, 
Verilog for hacking together things at low-level very quickly and 
easily, VHDL for larger projects, particularly those being written by a 
large team.  There's also plenty of room for personal preference of 
course...

-- Peter

Article: 106145
Subject: Re: verilog versus vhdl
From: fpga_toys@yahoo.com
Date: 8 Aug 2006 08:43:24 -0700
Links: << >>  << T >>  << A >>

Evan Lavelle wrote:
> Personally, I really hate this sort of code. It was synthesising to
> about 75 logic levels between clocks before I started hacking it.

I will agree that bad synthesis prevent abstract use, and that given
enough time a human can normally find a better solution. On the
otherhand, large designs, and fixed market windows, force tradeoffs.
And as the complexity of designs grow to take advantage of FPGAs which
grow in size with Moore's Law, we probably are not going to see either
the number of skilled FPGA hackers (err hardware designers) salary
shrink to maintain the same costs or see market windows increasing in
length with Moore's Law. So that says, the tools must improve, as must
the coding efficiency of hardware hackers.

> >I'm actually looking foward to a SystemC tool based
> >on C++ sematics that has really good synthesis ... maybe a few years
> >from now?
>
> It'll never happen; already been tried, failed. Hacking low-level
> hardware semantics into existing C++ semantics just gives you a
> verbose and complex mess, which is nowhere near as concise and clear
> as a VHDL or Verilog description. Great for modelling, non-starter for
> real-world synthesis.

I love people quoting other failures as proof of impossibiity.

I'm sure the experience set in this forum is rife with examples of
designs that "would never happen", because a few teams failed, and over
time other people learn new skills, tricks, tools and find the
solutions to previously difficult problems. It wasn't that long ago
that the DEC systems engineers defended writing in assembly long after
the industry moved past that poor practice. Of course, the industry
moved past DEC too.  And a couple of my "favorite" hardware companies
that swore large TTL design where cheaper, that have long since bit the
dust too.

> BTW, I google'd FpgaC and spent 10 minutes looking at the SourceForge
> site, before giving up. There's no obvious overview, FAQ, or
> documentation; you'll need to fix this if you want to get anyone
> interested.

it's not prime time yet, still has about two more major changes to be
release as Beta's this year. There hasn't been a need yet for an FAQ,
but everything else in your list is in the Source Forge archive in all
the expected spots.

http://sourceforge.net/docman/display_doc.php?docid=30867&group_id=152034
http://fpgac.sourceforge.net/

and the current development snapshot gets checked into the publicly
accessable svn archive as changes are integrated into the main
development tree, including doc updates. I have my own development tree
of major hacks and work in progress ideas, that get pushed up to the
svn archive as they are nearing a point in development that they ready
for others to play with.

As a work in progress, it's certainly far from complete today, and
probaby would have been a lot farther complete, except for the drowning
death of my 11 year old daughter at a friends house in May. As close as
I can tell, there are a good few using it, from the periodic emails.
Mostly students that are comfortable with the work in progress state of
the project, and are willing to spend a small amount of time to hack
the tools into a working state for their development environment.

Clean, plug and play release which are married well to Altera and
Xilinx tools, will probably not happen till Beta-4 around Christmas. At
which point FpgaC will go pretty close to production, with some
maturity and ease of use work.


Article: 106146
Subject: Re: verilog versus vhdl
From: Evan Lavelle <eml@nospam.uk>
Date: Tue, 08 Aug 2006 16:59:59 +0100
Links: << >>  << T >>  << A >>
On Tue, 08 Aug 2006 12:26:05 +0100, Jonathan Bromley
<jonathan.bromley@MYCOMPANY.com> wrote:

>> In summary: &&, ||, !, &, |, ^, ~, ==, !=. :-)
>
>And even that is at the mercy of 4-state logic.

Even for these operators, the usage semantics (as you know) are very
different from C's. Sections 4.4/4.5 of the LRM are fantastically
complicated (to me, anyway). To quote Steven Sharp from an old c.l.v
post on the subject: "I agree that this is not intuitive to someone
used to most other programming languages". Too right.

>(I spy a missed opportunity here.  SystemVerilog has not yet 
>assigned a meaning to the :-) operator.)

Damn... I was going to say that :-)


Article: 106147
Subject: Re: verilog versus vhdl
From: Evan Lavelle <eml@nospam.uk>
Date: Tue, 08 Aug 2006 17:01:19 +0100
Links: << >>  << T >>  << A >>
On Tue, 8 Aug 2006 15:26:05 +0100, "Ben Jones" <ben.jones@xilinx.com>
wrote:

>
>"Jonathan Bromley" <jonathan.bromley@MYCOMPANY.com> wrote in message
>news:gcsgd254tgh90tmsdq5pkg2fgl3vmj3bu8@4ax.com...
>> On Tue, 8 Aug 2006 11:04:38 +0100, Ben Jones
>>  <ben.jones@xilinx.com> wrote:
>
>> > In summary: &&, ||, !, &, |, ^, ~, ==, !=. :-)
>> And even that is at the mercy of 4-state logic.
>
>Still, I'd rather type '&' than 'and' anyday. :)

That reminds me. C++ has 'and', 'or', 'xor', and 'not' operators. Now,
this could just be a bizarre coincidence, but I think not. A more
reasonable explanation, I contend, is that Mr. Stroustrup actually
based C++ on VHDL.

Evan

Article: 106148
Subject: Re: verilog versus vhdl
From: fpga_toys@yahoo.com
Date: 8 Aug 2006 09:09:47 -0700
Links: << >>  << T >>  << A >>

Jonathan Bromley wrote:
> urrm, does the smiley apply to the whole post ?

Certainly not ... as one expression per post can be horribly boring :(

> C has a hard time with "if (1'bx)".

Ummm ... Why is that construct difficult for C?

> Apart from the facts that:
> * each branch is a single statement in Verilog,
>   whereas C switch is in fact a computed branch and
>   execution continues through the switch block;

Something that makes switch statements "interesting" for FpgaC at the
moment because of the current "one-hot" notion about flow control. That
abstraction however, isn't pure, and will certainly get less pure soon,
when switch/case/break/continue are implemented using a mapped set of
enables (rather than a pure mux tree).

> In other respects, yes, they're similar....

Historically, in the evolution of languages, C defined a number of
departures in syntax that have been adopted in new languages rather
than the more verbose 1970's styles found in Pascal, ADA, PL/1
predicessors.


Article: 106149
Subject: Re: verilog versus vhdl
From: fpga_toys@yahoo.com
Date: 8 Aug 2006 09:18:41 -0700
Links: << >>  << T >>  << A >>

Evan Lavelle wrote:

>  A more
> reasonable explanation, I contend, is that Mr. Stroustrup actually
> based C++ on VHDL.

Hmm ... C++ was presented initially released as part of the programmers
workbench sometime in the spring of 1975 if I remember right. Verilog
was a decade later in 1985. When was VHDL?




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