"...iCE40HX FPGA is a popular choice for developers who want to engage in fast logic device prototyping or learn the fundamental of FPGAs without investing in years of training."
BeagleWire is a completely open source FPGA development board. Unlike most other FPGA dev boards, the BeagleWire’s hardware, software, and FPGA toolchain are completely open source. The BeagleWire is a Beaglebone compatible cape based on the Lattice iCE40HX FPGA. BeagleWire can be easily expanded by adding external modules such as, for example, modules for high speed data acquisition, software-defined radio, or advanced control applications. Using common connectors like Pmod and Grove makes it possible to connect various interesting external modules which are widely available in stores. This makes prototyping new imaginative digital designs easier.
BeagleWire caters to open source and open hardware enthusiasts. All of its schematics, software, and examples are totally open. Feel free to use them and share with others. The BeagleWire can be a great learning tool in an educational environment that teaches FPGAs, Verilog, and Linux kernel driver concepts. It allows users to break away from large, proprietary FPGA toolchains by allowing the use of the open source Icestorm toolchain. The IceStorm toolchain is lightweight so it can be installed on various platforms. Users can synthesize their Verilog code on BeagleBone without installing any additional software on their computer. Project Icestorm uses the Yosys synthesis suite and Arachne-PNR to generate programmable bitstreams. BeagleWire integrates closely with the BeagleBone Black and has the backing of the Beagleboard.org community. Thanks to that, a new user can receive help from more experienced members of BeagleBoard.org.
|A. Lattice iCE40HX4K - TQFP 144 Package||B. Power section|
|C. 2x20 BeagleBone P8 Connector||D. PMOD4|
|E. PMOD3||F. Grove 4|
|G. Grove 3||H. 32 MB SDRAM|
|I. Grove 2||J. 4 MB SPI Flash|
|K. Grove 1||L. PMOD 2|
|M. 8 KB EEPROM||N. 100 MHz Clock Oscillator|
|O. PMOD 1||P. 2x20 BeagleBone P9 Connector|
|Q. 2 Dip Switches||R. 4 Blue LEDs|
|S. 2 Push Buttons||T. Reset Button|
|FPGA||Lattice iCE40HX-4k||Lattice iCE40HX-1k||Lattice iCE40HX-4k||Cyclone® IV EP4CE22F17C6N|
|User Memory||32 MB||N/A||4 MB||32 MB|
|Clock||100 Mhz||12 Mhz||100 Mhz||50 MHz|
|Open Source Software||yes||yes||yes||no|
|Compatibility with BeagleBone||yes||no||no||no|
|Extensibility||4 x Pmod + 4 x Grove||1 x Pmod||4 x Pmod||2 x 40-pin Headers (GPIOs) + Arduino Connectors|
|Fast access via GPMC port||yes||no||no||yes|
|Hardware noise debouncing for push buttons||yes||N/A||N/A||no|
|User Interfaces||4 x LED + 2 x push button + 2 x DIP switch||5 x LED||3 x LED||8 x LED + 2 x push button & 4 x DIP switch|
|Open Source Hardware||yes||no||yes||no|
Communication between BeagleWire and BeagleBone Black is over the GPMC port. This is a simple and efficient solution. The GPMC port has 16 lines width and its maximum clock frequency is 100 Mhz. After installing BeagleWire on BeagleBone, the required Device Tree Overlay is loaded automatically. By using simple components written in Verilog, FPGA logic is mapped to the processor’s external bus, allowing access using simple read and write operations. A Linux driver or an application written in any programming language allows for communication. The BeagleWire software repository contains a lot of ready-to-use solutions and simple examples.
The PCB will be assembled using a turn-key manufacturer following the successful conclusion campaign. We expect a lead time of four to six weeks from the close of the campaign until delivery.
|Digi-Key Part #||Quantity||Description|
|296-13010-1-ND||1||IC INVERTER DUAL SHMT-T SOT-23-6|
|MCP1826S-1202E/DB-ND||1||IC REG LINEAR 1.2V 1A SOT223-3|
|MCP1826S-3302E/DB-ND||1||IC REG LINEAR 3.3V 1A SOT223-3|
|220-1572-ND||1||IC FPGA 107 I/O 144TQFP|
|706-1419-5-ND||1||IC SDRAM 256MBIT 143MHZ 54TSOP|
|AT24CS32-XHM-T||1||IC EEPROM 32KBIT 1MHZ 8TSSOP|
|M25PX32-VMW6E||1||IC FLASH 32MBIT 75MHZ 8SO|
|535-11203-1-ND||1||OSC MEMS 100.000MHZ CMOS SMD|
|P13594SCT-ND||3||SWITCH TACTILE SPST-NO 0.05A 12V|
|CT2192MST-ND||1||SWITCH SLIDE DIP SPST 100MA 20V|
|475-2816-1-ND||4||LED BLUE DIFFUSED 0603 SMD|
|641-1332-1-ND||1||DIODE SCHOTTKY 20V 500MA 0603|
|1597-1082-ND||4||GROVE 2MM 4PIN CONN 10PACK|
|1528-1365-ND||1||HEADER STACK BEAGLE BONE 1=2PC|
|S5559-ND||4||CONN FEMALE 12POSDL .1” R/A GOLD|
|S9001-ND||2||CONN JUMPER SHORTING GOLD FLASH|
|A121368-ND||2||CONN HEADER BRKWAY 2POS DL .100|
|311-1237-1-ND||23||CAP CER 0.1UF 10V X7R 0603|
|587-3410-1-ND||17||CAP CER 1UF 10V X7R 0603|
|587-1441-1-ND||4||CAP CER 4.7UF 10V X5R 0603|
|311-1782-1-ND||2||CAP CER 10UF 10V X5R 0603|
|311-10KJRCT-ND||8||RES SMD 10K OHM 5% 1/16W 0402|
|311-240JRCT-ND||4||RES SMD 240 OHM 5% 1/16W 0402|
|311-4.7KJRCT-ND||9||RES SMD 4.7K OHM 5% 1/16W 0402|
|311-100LRCT-ND||5||RES SMD 100 OHM 1% 1/16W 0402|
|311-220JRCT-ND||1||RES SMD 220 OHM 5% 1/16W 0402|
Shipping and fulfillment will be handled by Crowd Supply, which means all units will be shipped from their warehouse in Portland, Oregon USA. To learn more about how Crowd Supply ships orders, please visit our Guide.
To date, we have completed three functional BeagleWire prototypes. We feel that most of the design risks have been minimized. After hand assembling the first PCBs, we developed Linux software and verilog IP as a product of the 2017 Google Summer of Code and under the mentorship of Beagleboard.org. In the process of initial software development, we corrected all of the PCB bugs we could find. However, it’s always possible another bug could surface and cause a production delay. We will immediately and clearly notify backers of any discovered risks or delays to the project.