34 comments

[ 0.15 ms ] story [ 130 ms ] thread
Nice, they have both Windows and Linux support. I got a Papilio Pro some time ago and it's fun to play with. There's also a few other boards based on the same Spartan 6 series with more gates/ram and cheaper.
Can you list some of the boards that are both cheaper and more capable?
It's great that Lattice is coming out with even cheaper FPGA dev board options. The bare-bones student dev kits from Altera and Xilinx are typically around $70, but $25 is a low enough price for hobbyists and beginners to begin experimenting as well.

I'm not too sure about the USB stick form factor, though. I have Texas Instrument's F2013 dev board[0], which is also a USB stick-type device. It's adorable; it's cute; and it has everything you need on-board (both the emulator and target), but you end up not being able to do anything very useful with it (unless you get very creative[1]). Hack-A-Day seems to agree[2].

Part of the reason this eval board is so cheap is that most FPGA evaluation boards have a bunch of peripherals that you can toy around with. My worry is that the lack of peripherals, low number of I/O pins, and the USB form factor might work against the product. That said, it does have an IrDA transceiver, which should enable some cool demos like acting as a TV remote.

If you're looking for a cheap FPGA board to use as part of a greater project, take a look at Lattice's iCE40-HX8K Breakout Board[3]. It's double the price, but it has all the basics and has tons of I/O to use. You can see Mike from mikeselectricstuff use it in his iPod Nano LCD project here: http://youtu.be/IIR1Bw8T_vM .

[0]: http://www.latticesemi.com/en/Products/DevelopmentBoardsAndK...

[1]: http://forum.43oh.com/topic/248-ezprobe-ez430-based-logic-pr...

[2]: http://hackaday.com/2011/01/30/hands-on-with-ez430-f2013/

[3]: http://www.latticesemi.com/en/Products/DevelopmentBoardsAndK...

Personally I'd prefer it if the dev boards skip the demo peripherals and bring out all the I/O pins.
Does anyone have any experience with this tool chain? Would this be a good way to - from a hobbiest standpoint- get started with fpga and logic synthesis?
My first FPGA was a cheap Lattice kit and I never fully wrapped my head around their toolchain (Diamond). It has everything you need but the workflow and UI made it hard for me as a beginner. I also found the documentation and tutorials to be lacking.

Later, I started using an Altera FPGA for my hobby projects and I'm much happier with their software. I am beginning a research project using Xilinx (ISE) now. I'm not sure if its better than Quartus, but its better than Diamond.

tl;dr: Yes

I've used the Xilinx toolchain as well as the Lattice toolchain. The Lattice toolchain isn't as polished as Xilinx' but I find it simpler and less intimidating than Vivado & ISE. Sure, some things could be more streamlined (i.e. the transition from Diamond to Active HDL for simulation) but it's free and gets the job done.

I find a lot of the design resources (Reference designs, user guides, tool chain, etc.) for Xilinx very ambiguous and confusing. Not to mention that certain devices aren't covered by the free ISE WebPack and require a paid license to design around some of their FPGAs. I never understood this. I think, like Altium, they do this just because they can and because people using higher end FPGAs tend to have bigger design budgets and..well...they can get away with charging for the design tools.

Lattice has positioned itself to be an IoT FPGA company whereas Xilinx seems to keep developing FPGAs that have incredible computing power / bandwidth / logic capacity / etc. I think the complexity of the toolchain scales with at least the square of the capability of the FPGA.

If you are looking for a super-capable starter FPGA/CPLD, take a look at the Lattice MachXO2. It has embedded flash so you simply program the device and it comes up that way the next time you apply power. No external serial flash to worry about. There's even a breakout board for the MachXO2[0] that makes prototyping and adding capabilities via "shields" very straightforward.

I have no experience with Altera so I can't comment there.

[0] http://www.latticesemi.com/Products/DevelopmentBoardsAndKits...

Specs:

  • 1280 Four input LUT logic cells
  • 64Kbit of RAM
  • 32Mbit flash
  • a PLL
  • Two sets of 8 digital I/O pins
  • One Pmod connector (2x6 0.10" socket, some sort of digital interface)
  • 5 LEDs
  • An IrDA transceiver
  • USB dongle form factor, programmed from USB, can look like a UART from FPGA to PC
The design software appears to only function on the Windows operating system.
Windows is par for the course. If you want to develop for FPGAs, I suggest you accept Windows, at least to start with.

Xilinx can run on Linux and all that, but Windows is the path of least resistance, and FPGAs will give you enough trouble by themselves!

I don't think HN is really the place to accept this kind of status quo. We're not here to maintain a tradition. Somehow, I would be very glad that someone here break this barrier (not me, I'm trying to do that for the CNC world).
Our FPGA work is all done on Linux, but we're coming from the HPUX world. We've used Xilinx and Altera without any problems to speak of.
I've been doing digital design for Xilinx FPGAs, as well as IC design, for a few years now and never had any trouble with the Linux toolchain. I can't even imagine switching to Windows and trying to automate the build (not saying it's not possible, it just seems a lot more convoluted).

It's true that smaller vendors like Lattice seldom provide Linux software, but it's also rare to find bigger shops (as opposed to hobbyists) who don't use Xilinx or Altera exclusively, and Linux at that.

You absolutely can use Linux. I just recall from my FPGA days, Windows was the easiest way to get going for hobbyist FPGA work. If running Linux is what matters to you, run Linux. If developing for an FPGA is what matters to you, do what is easiest to get you there, IMO.

I don't care what people use, but this community tends to get lost in, 'well it's got to be open source...' and whole productive lines of inquiry get totally derailed.

Looks like you could fit 1 J32 32-bit RISC CPU on there with a few gates to spare.
If you added a small uC to that (such as a Microchip PIC), it would be a killer dev board. I'd happily connectorize it, develop my hardware and simply plug the development board into the target system!
Woooo my dad made this chip
The article is nearly a year old.
Any suggestions of starter FPGA projects for someone who is a programmer but wants to get into FPGAs?
Start simple. Implement an adder, configured by some switches. Represent the output in binary on some LED's.

This will help you wrap your head around some of the important basics, and then you can go from there.

It is very difficult to debug FPGAs so it is important to "build up" to what you want in piece by easy to verify piece, instead of trying to build the whole thing at once and debug it later.

Depends on which peripherals you have.

* A good start is a stop watch (if you have a 7seg and buttons available)

* Implement a digital function generator without using look-up tables. (Can read values over serial)

* If you have access to an ADC and DAC implement an echo filter, then a tuneable butterworth

Build state-machines or cpu using logic gates in logisim. It sounds complex but there are only a handful of primitives you have to understand. Learning that FPGA conditionals are equivalent to multiplexers is much easier to learn when you make one by hand.
find some other chip you like, and write an interface for it.
I'm interested in doing some audio work on fpga. At a minimum this requires a decent dac/adc. Can anyone recommend a cheap board that provides this onboard? Seems most kits with audio also contain video and got for around $400 AUD
I'm not going to register just to check out prices, but a quick google landed me at http://www.fpga.biz/product_info.php?products_id=87. Doesn't look like it'll be cheap, though - anyone know how much this is?

EDIT TO ADD: A Papilio Pro plus an audio wing looks like it comes out at £77.80, ex VAT.

Unfortunately "decent" is vague with dacs and adcs because there's at least 3 figures of merit usually you only get to max out 1 at a time. Assuming your app needs to max out any of them. So if you want 24 bit input with a low noise floor good luck getting above "KHz" sampling ranges yet if you want 500 megasamples/sec you're looking at like 8 bits. Or if you want on board signal processing (differential inputs, maybe a built in multiplier, or 8 input mux on the input so you can read 8 things) you'll "pay" for that one way or another.

The good news is this board has a pmod connector and go to digilent and search for pmods and there's some great COTS plug and play A/D and D/A. The bad news is there's... one pmod connector. That really sucks as the amount of fun you can have scales with about the cube or so of the number of peripheral devices connected. If only this "stick" had two pmod connectors. My go-to screwing around board is a mere $90 basys2 and its got 4 pmod connectors and a ton of onboard stuff. So I'm paying an extra $65 to basically not have a headache and have a ton of fun. I can deal with that.

If you're willing to not go plug and play just get one of the breadboard to pmod adapter thingies and the RCA breakout and stick like two 8-pin DIP chips on, a D/A and a A/D and call it good.

You have to decide if you're trying to minimize spend, or minimize effort (plug and play) and WRT effort are you more into hardware or software.

One advantage not discussed about onboard peripherals is they work and are easily tested. There's always a certain distrust, did I blow that chip, can that GD thing actually successfully do I2C at all, etc. Well, if you've got a lot of onboard stuff, just load up the demo / test program if you're feeling worried... Also much as software programmers do a lot with extra added "print" statements for debugging, you'd be surprised what a FPGA dev can do with a bunch of onboard switches and LEDs.

I actually have one of these on my desk. The chain is a bit of a task to install. The licencing is kind of weird on it. The chain it self isn't bad to work with. I just with they would give more resources and tutorials for it. They give you a blinking LED example and send you off on your way...