VHDL: various questions and issues...

Discussion in 'VHDL' started by Neil Zanella, Nov 17, 2003.

  1. Neil Zanella

    Neil Zanella Guest

    Hello,

    I would like to ask some general questions pertaining to VHDL which
    I hope are appropriate for this list. I am somewhat new to VHDL and
    am still trying to get a feel for what VHDL is used for and whether
    I can really make good use of it to do various things or not (e.g.
    get involved in some cool VHDL projects or do some cool VHDL stuff
    etc...) I posted earlier but it seems my news server is down so I
    am going to try and post again...

    TIA for shedding some light over the following...

    --- Issue One --------------------------------------------------------------

    In VHDL, there always seem to be zillions of ways if doing the same
    thing. Perhaps this is because VHDL is a modelling language. When it
    comes to synthesis though, the same components present in the
    hardware end up being the ones used, so it seems almost like it is to
    some extent irrelevant how some particular functionality is modeled,
    so long as the model can be synthesized on the target device, which
    in most cases, AFAIK, consists of an FPGA or CPLD.

    For instance, it is not clear to me when integer should be
    used, and when vector should be used. It seems that one
    advantage of using integers is to be able to address arrays. It
    is also not clear to me when the dataflow model of VHDL
    programming is to be preferred over the sequential one, and
    vice versa.

    Furthermore, it is not clear whether VHDL is a truly useful
    tool in a programmer's toolbox. For instance many embedded
    devices can be programmed in conventional programming languages
    such as C. I would like to see some practical applications of
    VHDL.

    Where exactly is VHDL used? And is much designing whith VHDL
    required in the real world? Who are the main users of VHDL? Who
    is the community of VHDL users and what are most VHDL users'
    goals when learning VHDL?

    Are there any significanltly complex free VHDL designs out
    there, in the same way several free software packages written
    in other languages can be found complete with source code on
    the web?

    Basically, I am sort of curious to learn about what people are
    really doing with VHDL and whether VHDL programming plays a
    major or minor role in it.

    --- Issue Two --------------------------------------------------------

    I would like to design a digital circuit for a digital device with LCD
    and sound output and data input. The data input connects to a PC from
    where the data is loaded. The data consists of a small program written
    on the PC using a custom compiler. Once the program is downloaded the
    FPGA interprets it. I would like to use VHDL to program the
    interpreter so that it displays the current time and other
    stuffand output sound.

    Is this reasonable or is VHDL not the right technology for the task at
    hand? Also, how does one go from prototyping some device on some board
    to manufacturing an actual gadget with plastic on the outside and of
    the right dimensions (e.g. a digital wrist watch or similar)? Is VHDL
    suitale for this task and what components would I need to purchase for
    prototyping? How do I carry it from there to the manufacturing
    process?

    Would the above qualify for an application of VHDL or are there better
    ways? Would I be nuts to use VHDL in the above process? Has anyone
    tried doing anything similar, by any chance?


    --- Issue Three ------------------------------------------------------------

    I would like to know, how hard would it be to program an FPGA so
    that it can communicate with a Linux kernel, and/or write a Linux
    driver for the corresponding VHDL-programmed FPGA. Has anyone done
    anything similar?

    ----------------------------------------------------------------------------

    Thank you very much for your replies,

    Kind Regards,

    Neil
    Neil Zanella, Nov 17, 2003
    #1
    1. Advertising

  2. Re: various questions and issues...

    "Neil Zanella" <> wrote in message
    news:...

    > I would like to ask some general questions [...]


    Wow Neil, you really want all the works, don't you :)

    > --- Issue One -------------------------------
    >
    > In VHDL, there always seem to be zillions of ways if doing the same
    > thing. Perhaps this is because VHDL is a modelling language. When it
    > comes to synthesis though, the same components present in the
    > hardware end up being the ones used, so it seems almost like it is to
    > some extent irrelevant how some particular functionality is modeled,
    > so long as the model can be synthesized on the target device, which
    > in most cases, AFAIK, consists of an FPGA or CPLD.


    I can't argue with any of that, except that I don't really
    see why you feel so strongly about "zillions of ways". Some
    other languages I could name give you far, far more ways...

    > For instance, it is not clear to me when integer should be
    > used, and when vector should be used. It seems that one
    > advantage of using integers is to be able to address arrays.


    Yes. But with vector arithmetic you can specify bit widths
    (integer gives you 32 bits by default, and the synthesis
    tool must work out for itself whether fewer bits is OK; it
    can't always get this right). And in vector arithmetic
    you retain the ability (inherited from std_logic) to
    represent unknown, uninitialised and high-Z values.
    Conversion from vector to integer and vice versa is
    pretty cheap; in fact it's entirely free in synthesised
    hardware.

    > is also not clear to me when the dataflow model of VHDL
    > programming is to be preferred over the sequential one, and
    > vice versa.


    Bah, humbug. Despite what some jobs-worth textbooks may
    have told you, VHDL has exactly one "model of computation",
    and it ain't dataflow. The fundamental basis of VHDL is
    signals and processes; everything else can be reduced to
    a network of signals and processes, and is simply a
    more or less important "shorthand" for a particular
    special case. Which formulation you choose is entirely
    a matter of style and convenience.

    > Furthermore, it is not clear whether VHDL is a truly useful
    > tool in a programmer's toolbox. For instance many embedded
    > devices can be programmed in conventional programming languages
    > such as C. I would like to see some practical applications of
    > VHDL.


    I really don't understand what you are driving at here.
    You can, if you are desperate, use VHDL as a "conventional
    programming language" but you are an optimist if you
    expect to get cross-compilers from VHDL to a microcontroller.
    VHDL was designed for specifying and simulating electronic
    systems, and VHDL "programs" are usually executed by a
    VHDL simulator. Synthesis tools process a subset of
    VHDL and create a netlist of the hardware that's modelled
    by that VHDL.

    > Where exactly is VHDL used? And is much designing whith VHDL
    > required in the real world? Who are the main users of VHDL? Who
    > is the community of VHDL users and what are most VHDL users'
    > goals when learning VHDL?


    See above. Primarily, the community that designs, specifies
    and verifies digital ICs and FPGAs. To those people, it's
    a vitally important tool. To the rest of the world, it's
    irrelevant.

    > Are there any significanltly complex free VHDL designs out
    > there, in the same way several free software packages written
    > in other languages can be found complete with source code on
    > the web?


    See www.opencores.org for some examples; I can't vouch for
    their quality. See our website (details below). See the
    FAQ of this group.


    > --- Issue Two --------------------------------------------------------
    >
    > I would like to design a digital circuit for a digital device with LCD
    > and sound output and data input. The data input connects to a PC from
    > where the data is loaded. The data consists of a small program written
    > on the PC using a custom compiler. Once the program is downloaded the
    > FPGA interprets it. I would like to use VHDL to program the
    > interpreter so that it displays the current time and other
    > stuffand output sound.


    Think in terms of using VHDL to help you design the HARDWARE.
    If you then intend your hardware to be programmable, you will need
    to find some way to create the programs that will run on it.
    VHDL won't help you there.

    > Is this reasonable or is VHDL not the right technology for the task at
    > hand? Also, how does one go from prototyping some device on some board
    > to manufacturing an actual gadget with plastic on the outside and of
    > the right dimensions (e.g. a digital wrist watch or similar)?
    > Is VHDL suitale for this task


    Is this a troll?

    [snip more]
    Now you're descending into fully-qualified troll land.
    From what you've written before, I don't believe you are
    as clueless about the electronics manufacturing process
    as this post suggests. Please be a bit more specific
    about *your* objectives so that I and others don't waste
    too much more time.

    --

    Jonathan Bromley, Consultant

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

    Doulos Ltd. Church Hatch, 22 Market Place, Ringwood, Hampshire, BH24 1AW, UK
    Tel: +44 (0)1425 471223 mail:
    Fax: +44 (0)1425 471573 Web: http://www.doulos.com

    The contents of this message may contain personal views which
    are not the views of Doulos Ltd., unless specifically stated.
    Jonathan Bromley, Nov 17, 2003
    #2
    1. Advertising

  3. (Neil Zanella) wrote in message news:<>...
    > Hello,
    >
    > I would like to ask some general questions pertaining to VHDL which
    > I hope are appropriate for this list. I am somewhat new to VHDL and
    > am still trying to get a feel for what VHDL is used for and whether
    > I can really make good use of it to do various things or not (e.g.
    > get involved in some cool VHDL projects or do some cool VHDL stuff
    > etc...) I posted earlier but it seems my news server is down so I
    > am going to try and post again...
    >
    > TIA for shedding some light over the following...
    >
    > --- Issue One --------------------------------------------------------------
    >
    > In VHDL, there always seem to be zillions of ways if doing the same
    > thing. Perhaps this is because VHDL is a modelling language. When it
    > comes to synthesis though, the same components present in the
    > hardware end up being the ones used, so it seems almost like it is to
    > some extent irrelevant how some particular functionality is modeled,
    > so long as the model can be synthesized on the target device, which
    > in most cases, AFAIK, consists of an FPGA or CPLD.


    Almost correct--there are sometimes several ways to write code for
    synthesizable hardware, but there may be only one or two ways that
    will produce the the desired implementation. This often depends on
    the synthesis software and how it will interpret the code. Part of
    the beauty of VHDL to me is that one can write the code to simulate a
    design in the same languaqe as the synthesis source code.
    >
    > For instance, it is not clear to me when integer should be
    > used, and when vector should be used. It seems that one
    > advantage of using integers is to be able to address arrays. It
    > is also not clear to me when the dataflow model of VHDL
    > programming is to be preferred over the sequential one, and
    > vice versa.
    >

    If your code is addressing an array then an integer must be used.
    Otherwise, I try to use a representation that most closely models the
    actual data. This is most often standard logic or standard logic
    vector.

    > Furthermore, it is not clear whether VHDL is a truly useful
    > tool in a programmer's toolbox. For instance many embedded
    > devices can be programmed in conventional programming languages
    > such as C. I would like to see some practical applications of
    > VHDL.
    >

    VHDL is not a computer programming language so programming an embedded
    computer in VHDL is not an option. However, the computer itself could
    be designed using VHDL and the designer can choose the instruction
    set. I argue that if there were not many practical applications of
    VHDL this forum would not exist.

    > Where exactly is VHDL used? And is much designing whith VHDL
    > required in the real world? Who are the main users of VHDL? Who
    > is the community of VHDL users and what are most VHDL users'
    > goals when learning VHDL?
    >


    In my case, I use VHDL for the design and simulation of CPLDs (Complex
    Programmable Logic Devices) that are used in the digital subsystems of
    electronic warfare simulators. In using CPLDs as opposed to FPGAs I
    am in the minority of VHDL designers. But the basic idea is the same:
    VHDL is used to design real digital hardware. If you read the posts
    to this group for a while you will begin to get an idea of the
    diversity of VHDL design projects being undertaken.

    > Are there any significanltly complex free VHDL designs out
    > there, in the same way several free software packages written
    > in other languages can be found complete with source code on
    > the web?
    >
    > Basically, I am sort of curious to learn about what people are
    > really doing with VHDL and whether VHDL programming plays a
    > major or minor role in it.
    >
    > --- Issue Two --------------------------------------------------------
    >
    > I would like to design a digital circuit for a digital device with LCD
    > and sound output and data input. The data input connects to a PC from
    > where the data is loaded. The data consists of a small program written
    > on the PC using a custom compiler. Once the program is downloaded the
    > FPGA interprets it. I would like to use VHDL to program the
    > interpreter so that it displays the current time and other
    > stuffand output sound.
    >
    > Is this reasonable or is VHDL not the right technology for the task at
    > hand? Also, how does one go from prototyping some device on some board
    > to manufacturing an actual gadget with plastic on the outside and of
    > the right dimensions (e.g. a digital wrist watch or similar)? Is VHDL
    > suitale for this task and what components would I need to purchase for
    > prototyping? How do I carry it from there to the manufacturing
    > process?
    >

    VHDL is used for the design and simulation of digital hardware devices
    and will not help you with the mechanical design aspects of a project.
    How you go from prototyping a device to manufacturing it is a vast
    subject and beyond the scope of what I could write. However, I do
    know you could use schematic capture/PCB design software, VHDL
    synthesis and simulation software, software to facilitate make
    mechanical design drawings and a lot of design knowledge and
    experience.

    > Would the above qualify for an application of VHDL or are there better
    > ways? Would I be nuts to use VHDL in the above process? Has anyone
    > tried doing anything similar, by any chance?
    >
    >
    > --- Issue Three ------------------------------------------------------------
    >
    > I would like to know, how hard would it be to program an FPGA so
    > that it can communicate with a Linux kernel, and/or write a Linux
    > driver for the corresponding VHDL-programmed FPGA. Has anyone done
    > anything similar?
    >

    I have not done anything like this.
    > ----------------------------------------------------------------------------
    >
    > Thank you very much for your replies,
    >
    > Kind Regards,
    >
    > Neil
    Charles M. Elias, Nov 17, 2003
    #3
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Rob R. Ainscough
    Replies:
    1
    Views:
    493
    intrader
    Jun 25, 2005
  2. David Thole
    Replies:
    1
    Views:
    419
    Karl Seguin [MVP]
    Aug 9, 2006
  3. afd
    Replies:
    1
    Views:
    8,323
    Colin Paul Gloster
    Mar 23, 2007
  4. ZMZ
    Replies:
    1
    Views:
    694
  5. q-rious
    Replies:
    2
    Views:
    842
    Manuel Collado
    Mar 13, 2011
Loading...

Share This Page