A few weeks ago as I pen these words, an unexpected box arrived on my desk. When I opened this mysterious package, I found myself face-to-face with a rather cool "thing" (a sort of plexiglass cube-ish thing with a screen, a couple of circuit boards, and lots of tempting connectors), some cables and other "stuff", and a small document titled: "Altera Nios II Embedded Evaluation Kit Cyclone III Edition – Quick Start Guide".
Sad to relate, I've been exposed to "Evaluation Kits" and "Quick Start Guides" in the past that have brought me to my knees. I've started off believing the accompanying marketing promises of delectation and delight ("In only a few minutes you will be up-and-running and experiencing the most amazing, intuitive, easy-to-use..."), only to discover after days of hard work that I still haven't gotten anything working and I don't have a clue what to do next.
Thus, if the truth be told, I set the box on one side and continued on my merry way. A few days later, the folks at Altera called me to see what I thought of their new creation. How awkward!
I explained that I couldn't spare vast amounts of time wending my way through a maze of confusing documentation. They asked if I'd actually looked at the Quick Start Guide. I admitted that I hadn't. They invited me to do so, at which point I discovered – to my embarrassment – that the most complicated instructions were essentially: "(a) Plug one side of the power supply unit into a power outlet on the wall, (b) plug the other end into the evaluation kit's power input, and (c) follow the on-screen instructions."
First let me walk you through the various connectors, and then I'll tell you a little more about this little rapscallion. Starting from the top left, we have a microphone input (pink), audio/line input (blue), audio/line output (green), composite video input (yellow), VGA output, and an RS232 serial port. Meanwhile, on the near-side right-hand side, starting from the top, we have a PS2 port, an Ethernet port, and a removable SD memory card; and on the far-side right-hand side we have the power input on the top and a USB port (used for programming and debugging) on the bottom.
At the front of "the cube" is a rather cool 800 × 480 color touch panel LCD. When you first power the beast up, the this screen presents you with a selection of demonstration applications, such as a spinning cube, a couple of picture viewers, and – my personal favorite – a Mandelbrot Generator.
You touch the name of the application you wish to play with to select and highlight it, and then touch the "Load" button on the screen. This causes the configuration file associated with this application to be loaded from the SD card into the FPGA.
In the case of the Mandelbrot Generator, you are first presented with a hardware-accelerated version of the application, in which the calculations are performed in hardware. You zoom down into the Mandelbrot universe, then zoom back out, then randomly move across to a new location, and zoom back in again.
The frame rate is displayed in the lower right-hand corner of the screen. At the top level, you can achieve approximately 27 frames-per-second (fps). At its peak, when you are deep in the Mandelbrot universe, the application is performing over four billion calculations a second and the frame rate falls to around 1.7 fps.
If you now touch the screen, you can select a new color palette and/or you can elect to run in software, in which case your frame rate falls dramatically. All of this provides a great example of the power of the Nios II C-to-Hardware (C2H) Compiler, which is used in the hardware accelerated version.
What you get
I've got to say that I am rather impressed. In addition to "The Cube" and its power supply, you also get a selection of power-plug-adapters that will allow you to use this evaluation kit around the world. Also there's a USB-blaster download cable and an Ethernet (RJ-45) cable with an Ethernet crossover adapter.
But the coolest thing (something I personally don't recall seeing on any other evaluation or development kit) is a USB-to-SD card cable/adapter. This allows you to take the SD card out of the evaluation kit, plug it into this adapter, and copy new files from your PC onto the SD card. For example, in the case of the picture viewer applications, you can copy your own photographs into the appropriate folder on the card, re-insert the card into the evaluation kit, and spend the rest of the day looking at images of your mom, dad, wife, and kids. Perhaps more importantly, this also provides a mechanism for the folks at Altera and their partners to update their applications and to provide new applications in the future.
The kit also includes a Nios II Evaluation Kit CD-ROM and Altera's complete Design Suite DVD featuring the Nios II Embedded Design Suite (EDS), Altera Megacore IP library, and Quartus II Web Edition Design Software.
Also included are tutorials and design examples (with full source code). Ten design examples from Altera and several embedded partners showcase many of the unique benefits gained by designing with FPGAs. These examples include hardware acceleration of image processing applications and a remote FPGA update design that demonstrates how FPGA developers can update hardware designs over the Internet to add new product features or deliver bug fixes.
A quick summary of features is as follows:
- 3C25 FPGA with 25K logic elements
- 32 Mbytes DDR SDRAM
- 1 Mbyte SSRAM
- 16 Mbytes Flash
- 10/100 Ethernet (PHY)
- 800 x 480 color touch panel LCD
- SD card I/F (with SD Flash card)
- Audio output
- Audio input
- Microphone input
- Composite video input
- VGA output
- PS2 interface
- RS-232 port
What you don't get
Now, this is a tricky one, because it's always possible to second-guess what other folks have done. It's also possible to over-engineer things (I do that all the time). Having said this, I would really have liked to see a USB 2.0 port as part of the evaluation kit (in addition to the one used for programming and debugging).
Also, although the evaluation kit comes with a lot of input/output (I/O) connectors, not all are supported by IP and Drivers and examples in this first release. A quick summary of what I understand is (and is not) supported is as follows:
|SD Card|| IP and Drivers|| Third-party support|
|Ethernet|| IP and Drivers|| Internal Altera support|
|LCD|| IP and Drivers|| Internal Altera support|
|Serial Port|| IP and Drivers|| Internal Altera support|
|PSP|| || No support (in this release)|
|VGA Out|| || No support (in this release)|
|Video In|| || No support (in this release)|
|Audio|| || No support (in this release)|
Obviously, not having all of the IP and Drivers in the first release is a bit of a disappointment. On the other hand, I'm assured that the IP and Drivers that are there are jolly good ones, and the way in which this kit has been presented (with the SD memory card and suchlike) provides a great mechanism for Altera and partners to make up any missing elements in the future.
For myself, when I'm not using it for anything resembling work, I have my "cube" sitting on my desk displaying the hardware-accelerated version of the Mandelbrot Generator. And whenever even the most grizzled of engineers wanders into my office, their first reaction is invariably along the lines of : "Oooohhh, shiny ... what is it ... and where can I get one?"
Pricing and availability
The Nios II Evaluation Kit, order code DK-N2EVAL-3C25N, is currently available through Altera's online store at www.altera.com/buynioskitc3 and is priced at just US$399.
More information regarding the Nios II Embedded Evaluation Kit Cyclone III Version is available at www.altera.com/nios2eval (you can check out Altera's complete portfolio of development kits at www.altera.com/devkits.