We have come a long way today from the age of mainframe computers that took up an entire floor of a large building, or that famous joke about a Russian who was carrying suitcase-sized batteries for his smartwatch. Nowadays, students all over the world join an extensive list of hobbyists and circuit enthusiasts when they pick up a development board or an FPGA. The applications that they put these to use could boggle your mind and twist it like a pretzel.
The Papilio family of boards is an example of the array of development boards that are available today to ease your design work. With boards such as the Papilio DUO, ONE and Pro you could take your interest in DIY high into the skies. In this article, we will take a look at the exclusive software that drives these boards—the Papilio DesignLab IDE.
Arduino and Raspberry Pi development boards have been greatly instrumental in this revolution. Having a small-sized computer, at a fraction of the earlier cost, is one of the most influential drivers for the success of this segment. It goes without saying, the idea of taking something that traditionally was used only in complex operations and placing it in the hands of everyone is a wonderful thing. You can now use the same component that was used to run complex calculations in a space shuttle! Moreover, you can use it without having to get any permission from NASA or ISRO. IDEs have allowed us creative freedom of all kinds without having to learn new languages like VHDL or Verilog from scratch.
Papilio DesignLab is an open source project developed by the good folks at Gadget Factory on the Arduino IDE. It has been supercharged by adding circuits that should greatly help anyone wanting to get their projects off the ground. Papilio DesignLab works with both Windows and Linux to enhance the experience of drawing and debugging your own circuits.
Like all IDEs, Papilio DesignLab lets you develop the hardware description language by typing your code into the IDE, and then helps you generate the file that you load into the FPGA. An IDE usually includes a text editor, a way of managing libraries, revision control, syntax highlighting and a compiler. The major selling point in this case is the drag-and-drop interface for designing FPGAs using the Arduino IDE (made stronger by the introduction of circuitry).
The tool, however, is only good for use with Papilio boards, so it is very limited in that regard. With DesignLab, every sketch (software) has an FPGA circuit associated with it. DesignLab also has easy-to-create-and-share libraries that have FPGA circuits, Arduino style C++ libraries and examples of sketches all packaged together.
Doing amazing things with Papilio
Let us take a look at some of the capabilities of Papilio:
Logic analyser. The IDE lets you drop a professional-quality logic analyser into any circuit and know instantly what it’s doing. With up to 32 channels and 200MHz speed, it can handle any circuit you can throw at it. It lets you use up to 75kB of internal memory and/or the external SRAM memory.
System on chip. Think you can handle more? May be some system on chip (SoC) will satiate your thirst. DesignLab includes the ZPUino soft processor with a Wishbone bus, providing greater speed and flexibility than an Arduino-compatible chip. Making your own soft processor with just the right mix of peripheral circuits is known as an SoC design. DesignLab lets you build your own personalised SoC at the click of a few buttons.
DesignLab creates SoCs with ten serial ports, or a PWM on every pin, or something exotic like classic Atari and Commodore audio chips connected at the same time. The sky is the limit; you can create things that don’t exist anywhere else. (There could be a reason for that but hey, don’t kill the messenger.)
Papilio circuit library. All the above is pretty useless if there isn’t a supporting library of circuits (also known as cores) to do the heavy work. The IDE aims to provide the framework for anyone to write a core that can be wired into a circuit. And it does that very well.
Itching to get started?
Don’t waste time. Start dragging and dropping those circuit libraries to build your first creative FPGA project.
The best way to experience FPGA design is to pick up a board and just go crazy with it. The Papilio boards have extensive documentation online, both from the company as well as from the hordes of users, which should suffice for a beginner. The whole idea behind Papilio is to decentralise FPGA design and remove the stigma of it being a difficult thing to achieve. The developers want you to get comfortable with using an FPGA, and this IDE aims to do just that.
For more software reviews: click here
The author is a student at Great Lakes Institute of Management (GLIM), Chennai