= Arduino-like Fast-Start for FPGAs = == Pre-conference Workshop at FCCM 2016 == == (and likely ongoing interest group) == [[http://www.fccm.org/|FCCM 2016]] There is a growing student/hobbyist/Maker interest in embedded electronic control. Cheap hardware, friendly IDEs, online how-tos, bootcamps provide a fast ramp to get more people into low-level hardware hacking faster than ever. Hackathons, IoT, kickstarters, and connected world are driving interests. Gadget hacking is cool. But, when FPGAs should be the turbo-boost for these hobbyist and budding enterpeneurs, FPGAs look hard and impenetrable. The barrier for entry is too high...costs, tools, complexity, oh my! How do we provide a bootstrap experience for FPGAs that * puts FPGAs into the hands of students and Maker community * gets them started equally fast * gives them taste of the possibilities this opens up...motivates digging in further to understand and utilize Can we distill the experience down to: * 1 week module in freshman course * weekend bootcamp * weekend project for hobbyist We're not there. How do we get there? This is a workshop to look at the requirements and the opportunities....and catalyze action! What pieces do indviduals and groups have that could be part of the solution? Can we bring them together? How do we mobilize action and convergence? Possible components: * free tools * cheap platforms * simple languages, DSLs * friendly IDEs * libraries, wrapper, overlay architectures that hide complexity * wikis, how-tos, video-tutorials Some potential components: (please contribute) * [[http://www.clifford.at/icestorm/|Open-source toolchain for Lattice ice40]] * [[http://hackaday.com/2016/02/23/icestudio-an-open-source-graphical-fgpa-tool/|Open source graphical IDE]] * [[https://github.com/nturley/synthia|Simple IDE and HDL]] * [[https://github.com/FPGAwars/icezum/wiki|icezum: Arudio-like FPGA board]] * [[http://icoboard.org|ice40-based IO board for Rasberry Pi]] * [[http://www.cypress.com/documentation/development-kitsboards/psoc-4-cy8ckit-049-4xxx-prototyping-kits|$4 Cypress PSoC-4 USB Board]] * [[http://www.latticesemi.com/icestick|$20 Lattice USB FPGA Board]] * [[http://www.m-pression.com/solutions/boards/odyssey-fpga|$45 smart-phone programmable FPGA board]] * [[http://siliconexposed.blogspot.ca/2016/05/open-verilog-flow-for-silego-greenpak4.html|Open Verilog flow for Silego GreenPak4 programmable logic devices]] * [[https://olimex.wordpress.com/2016/05/06/ice40hx1k-evb-open-source-hardware-fpga-board-designed-with-kicad-and-working-with-icestorm-foss-toolchain-first-prototypes-are-ready-and-run/|iCE40HX1K-EVB open source hardware FPGA board designed with KiCAD and working with ICESTORM FOSS toolchain, from Olimex Ltd.]] * Michael Field (in NZ) routinely creates many useful small designs (controllers, ethernet, displays, etc...) * [[http://hamsterworks.co.nz/mediawiki/index.php/Main_Page|Hamsterworks Wiki.]] * [[https://github.com/hamsternz|hamsternz github.]] Workshop slides: * Introduction/Vision ([[http://www.seas.upenn.edu/~andre|DeHon]]) [[attachment:faststart_vision_fccm2016.pdf|slides]] * Lessons from the Arduino Experience (Butts) [[attachment:Lessons_from_Arduino_fccm2016.pdf|slides]] * [[http://www.clifford.at/icestorm/|IceStorm]] intro and demo ([[http://nachiket.github.io|Kapre]]) [[attachment:icestorm_fast-start_fccm2016.pdf|slides]] * Friendly Front Ends * CUDA (Rupnow) [[attachment:FCUDA_frontend_fccm2016.pdf|slides]] * Fast Tool Flows * Software Mostly (Gray) [[attachment:mostly_software_fasttools_fccm2016.pdf|slides]] * Overlays (Fahmy) [[attachment:overlay_fastmap_fccm2016.pdf|slides]] * Vector (Kapre) [[attachment:vectorblox_fast-frontends_fccm2016.pdf|slides]] * Alternate models for tool access * Cloud-based Tools (Hung) [[attachment:cloud_tools_fccm2016.pdf|slides]] * Platforms (simplifying board access, frames) * Automating Platform Configuration(Richmond) [[attachment:platforms_fccm2016.pdf|slides]] ---- To contribute to this page, create TCFPGA Wiki account and/or email: andre@seas.upenn.edu