1. Welcome to our site! Electro Tech is an online community (with over 170,000 members) who enjoy talking about and building electronic circuits, projects and gadgets. To participate you need to register. Registration is free. Click here to register now.
    Dismiss Notice

Fpga

Discussion in 'Microcontrollers' started by AtomSoft, Jul 23, 2011.

  1. AtomSoft

    AtomSoft Well-Known Member

    Joined:
    Feb 7, 2008
    Messages:
    5,670
    Likes:
    41
    Location:
    Brooklyn, NY US
    Any FPGA fans out there? I feel like learning it.. seems like you can do tons with one. Would love some advice on which is a good start... what company like Altera, Xilinx etc...
     
  2. ronsimpson

    ronsimpson Well-Known Member Most Helpful Member

    Joined:
    Apr 17, 2007
    Messages:
    7,259
    Likes:
    961
    Location:
    Loveland, CO USA
    ONLINE
    Altera and Xilinx are the best to start with. Down load the free software. There are many development boards. You could start out at the CPLD level but jumping into FPGAs first is good. I think you should find a project to do or modify one of the on line examples. Because you know C then VHDL will be easy.
     
  3. AtomSoft

    AtomSoft Well-Known Member

    Joined:
    Feb 7, 2008
    Messages:
    5,670
    Likes:
    41
    Location:
    Brooklyn, NY US
    was looking at:
    BeMicro FPGA Evaluation Kit—Only $49

    but the edge connector... i cant find any info on it ? where would i buy it?
     
  4. dave

    Dave New Member

    Joined:
    Jan 12, 1997
    Messages:
    -
    Likes:
    0


     
  5. AtomSoft

    AtomSoft Well-Known Member

    Joined:
    Feb 7, 2008
    Messages:
    5,670
    Likes:
    41
    Location:
    Brooklyn, NY US

    This is the only thing close to the connector which i found:

    http://search.digikey.com/scripts/DkSearch/dksus.dll?vendor=0&keywords=MEC6-140-02

    ACTUAL CONNECTOR PART NUMBER IS:
    MEC6-140-02-x-d-ra1

    All that matters is: MEC6-140-02
     
    Last edited: Jul 23, 2011
  6. AtomSoft

    AtomSoft Well-Known Member

    Joined:
    Feb 7, 2008
    Messages:
    5,670
    Likes:
    41
    Location:
    Brooklyn, NY US
    WOW $8 for a connector... that makes this BEMicro thing useless for me... i dont want to spend so much money on connectors... makes no sense!!!
     
  7. AtomSoft

    AtomSoft Well-Known Member

    Joined:
    Feb 7, 2008
    Messages:
    5,670
    Likes:
    41
    Location:
    Brooklyn, NY US
    Last edited: Jul 23, 2011
  8. Sceadwian

    Sceadwian Banned

    Joined:
    Oct 27, 2006
    Messages:
    14,047
    Likes:
    141
    Location:
    Rochester, US
    Check out the Xilinx IDE. You can get started right away, because it's free and supports simulation. I played around with their IDE only briefly never did anything with it, but my first feel was that it's solid software with a lot of built in resources. FPGA dev kits will set you back 80-100 dollars or so yeah but FPGA's are significantly different from micro controllers. In the case of an FPGA, you're writing code that defines hardware that can work at. It's like having a PIC or AVR at your disposal (there are opencores for this) but you can program your own peripherals. AVR's have a little known line that has a true AVR core chip that is linked to an internal FPGA. FPSLIC I think it's called, something like that at least.
     
  9. AtomSoft

    AtomSoft Well-Known Member

    Joined:
    Feb 7, 2008
    Messages:
    5,670
    Likes:
    41
    Location:
    Brooklyn, NY US
    im trying to find a Xilinx FGPA board for under $200 but its hard... if you know of any or can you post all the boards you can find under $200
     
  10. Sceadwian

    Sceadwian Banned

    Joined:
    Oct 27, 2006
    Messages:
    14,047
    Likes:
    141
    Location:
    Rochester, US
    There are modules on this site well under 200. That's just one. It's not easy to find, the one site that I was looking at at the time I've lost the link to and am currently unable to find references to from Google.

    The spartan 3E board on that site is only about 50 dollars, all you need is a jtag programmer.
     
    Last edited: Jul 23, 2011
  11. RichTheDude

    RichTheDude Active Member

    Joined:
    Jun 8, 2010
    Messages:
    304
    Likes:
    53
    Location:
    UK
    Hi there,

    I have done a fair bit of work with FPGA's, they are pretty much my profession! :D

    They are much much different to micro's, and may take a bit of getting used to. The basic building block of an FPGA is a slice. At a basic level this consists of a Look Up Table (LUT) with N inputs bits and M output bits (typically 1 or two). This can store any logical function you wish and is a combinatorial piece of logic, think of it like a tiny parallel EEPROM with 4 or 6 address lines and one or two data bits.

    After this there is a flip flop, to synchronise this value to the systems clock. A large interconnection matrix then feeds this signal to another slice, and so forth. Trouble is this path the signal takes, must go through the next piece of combinational logic and be present on the flip flop (setup and hold) long enough before the next clock edge. So the bigger the design the harder this gets, as the signal paths get longer and longer. So although you design maybe behavourally correct (behavioural simulation proves this), it may not meet timing (you can do timing based, post place and route simulations too).

    I would suggest downloading Xilinx ISE Webpack, Lattice's ISP Lever Starter (or diamond - I prefer ISPlever I must be honest), and go through some online tutorials using the simulator - before shelling out cash for boards.

    If you are a student, the Digilent Atlys is a great buy (a lot of dev board for the money, it has a onboard programming via USB academic price of $200), but the cheapest way in to the FPGA world is probably the Lattice XP2 brevia but you will need a parallel port for the JTAG lead included (about $50, and comes with a parallel port JTAG lead)!

    I started as a student with a home made parallel port programmer and a M4A5-64 home made board on vero. I would not recommend CPLD's (although easier) due to the limitations of such device. The brevia has approx 5000 LUT's and flip-flops whilst the M4A5-64 has 64 flip flops.
     
    Last edited: Jul 23, 2011
  12. AtomSoft

    AtomSoft Well-Known Member

    Joined:
    Feb 7, 2008
    Messages:
    5,670
    Likes:
    41
    Location:
    Brooklyn, NY US
    Thanks a ton Sceadwian. I might get that and also the LatticeXP2 Brevia Development Kit since its $50... The programming cable from digilent looks like a normal one just stripped of 5 extra gnd pins heh...
     
  13. AtomSoft

    AtomSoft Well-Known Member

    Joined:
    Feb 7, 2008
    Messages:
    5,670
    Likes:
    41
    Location:
    Brooklyn, NY US
    OpenCores is down or is it just me ? I cant seem to go to there site :(
     
  14. RichTheDude

    RichTheDude Active Member

    Joined:
    Jun 8, 2010
    Messages:
    304
    Likes:
    53
    Location:
    UK
    Opencores is down for me too. I really would suggest trying out numerous FPGA IDE's before shelling out for boards though ;)
     
  15. AtomSoft

    AtomSoft Well-Known Member

    Joined:
    Feb 7, 2008
    Messages:
    5,670
    Likes:
    41
    Location:
    Brooklyn, NY US
    ok quick question can i refer to opencores for any FPGA i decide to use? I hear there are AVR cores and such... if i wanted to implement a CUSTOM AVR core is that possible on all FPGAs with that GATE count or something ?
     
  16. Sceadwian

    Sceadwian Banned

    Joined:
    Oct 27, 2006
    Messages:
    14,047
    Likes:
    141
    Location:
    Rochester, US
    You'd have to check out the specific core AtomSoft. I noticed opencores was down when I posted the link, but I've been there before and they have a lot of reference cores. Hopefully it's only a temporary outage.
     
  17. AtomSoft

    AtomSoft Well-Known Member

    Joined:
    Feb 7, 2008
    Messages:
    5,670
    Likes:
    41
    Location:
    Brooklyn, NY US
    Ok quick question... I notice most FPGA boards come with SRAM or FLASH chips on board. Does it use this Flash to store the program to be ran ? or does it use it like if it was internal. For instance i use a AVR Core will it use that memory as flash memory for the device ?
     
  18. Mikebits

    Mikebits Well-Known Member

    Joined:
    May 24, 2008
    Messages:
    6,214
    Likes:
    174
    Location:
    San Diego, Ca
    The memory chips are used for storing the FPGA code.
     
  19. Mikebits

    Mikebits Well-Known Member

    Joined:
    May 24, 2008
    Messages:
    6,214
    Likes:
    174
    Location:
    San Diego, Ca
    Before you make an investment into a FPGA development board, ask yourself a few questions. Why do I want to learn FPGA technology, what is my end goal? How will I use these devices? How is my understanding of combinatorial and sequential logic?

    FPGA design requires a good understanding of digital logic in order to be useful. You must learn a FPGA design language such as VHDL or Verilog. Although VHDL is a programming language, it is nothing like C, so while learning VHDL, forget what you know about C. Read a few articles on VHDL, see if it is something you will like to learn. Here is a link to get you started. http://www.seas.upenn.edu/~ese171/vhdl/vhdl_primer.html
     
    Last edited: Jul 23, 2011
  20. AtomSoft

    AtomSoft Well-Known Member

    Joined:
    Feb 7, 2008
    Messages:
    5,670
    Likes:
    41
    Location:
    Brooklyn, NY US
    Hey thanks Mike , thats why i want to goto OpenCores.org I dont only want to view tutorials but i want to examine other peoples work. I feel its a better learning experience. I will of course read tutorials also but jumping in is my personal way of learning. I learned ARM that way. Barely looked at a tutorial. I learned C that way also :D
     
  21. RichTheDude

    RichTheDude Active Member

    Joined:
    Jun 8, 2010
    Messages:
    304
    Likes:
    53
    Location:
    UK
    I think Mikebits has made a good point, you really need to decide if you need an FPGA in the solutions you are trying to solve. Also everything must be designed as digital circuitry, so you really need to have a good grasp of digital sequential design. Typically FPGA's are used where large amounts of processing is required (like DSP at high sampling rates). Even if you use an open core CPU, you will probably be developing custom peripherals, which will require digital design again.

    The XP2 is flash based, but most FPGA's are RAM based so they will forget their forget their bitstream (the configuration of the LUTs and connection matrixes) on a power off and on cycle, so typically this configuration is stored in a seperate flash based chip.

    A lot of dev boards come with SRAM or DDRAM to use as storage, as storage on chip is usually quite limited.
     
    Last edited: Jul 23, 2011

Share This Page