"… [these boards] exemplify what can be done with a configurable Zynq-based system. When all the pins are customizable, then nearly anything is possible."
“More than a slice of Pi…. the flexible, abundant GPIO options makes the Snickerdoodle better suited for more complicated tasks that the Raspberry Pi simply can’t handle.”
”… exceedingly cool, and we can’t wait to see what people will build with a small, fast ARM board coupled to an FPGA.”
“Take a Raspberry Pi-sized mini computer, add Gigabit Ethernet, 802.11n WiFi, Bluetooth 4.0, and an FPGA with a whole bunch of I/O options, and what’ve you got? Apparently a Snickerdoodle.”
”… [krtkl] looks to shake up the dev board world with Snickerdoodle – a (really) low-cost, crowd-funded kit designed to outperform competitive boards while undercutting their pricing.”
“The Snickerdoodle appears to be the most affordable single-board computers yet to run on the Xilinx Zynq system-on-chip.”
“Once you’ve built all you can using the Raspberry Pi, BeagleBone and Arduino systems and now you’re looking for a more capable dev board for your next ambitious project, the Snickerdoodle from Krtkl might just fit the bill.“
"Whether it be sparse I/O, limited processing power, hampered image processing, or closed software systems, makers are hitting real road blocks. Take heart, though! These road blocks may soon be removed..."
"Right now the maker movement doesn't really use FPGAs...but if we talk 6 months from now, I think that's gonna be changed."
"Snickerdoodle sets the stage for the future of making. Often, the only thing that differentiates makers and technology companies is capital. If this project can level the playing field, the world will see innovation like never before."
"Snickerdoodle is no ordinary maker board… it will let you achieve your wildest maker dreams from robotics to advanced networking!"
“Video processing, machine learning algorithms, and networking are all places where big companies use FPGAs to their advantage, but what happens if smaller hobbyists start taking that kind of customizable processing power into their garages?"
snickerdoodle is a tool for dreamers and creators to build, make, invent, and do things they’ve always been told weren’t possible. It’s for people willing to explore new horizons and challenge themselves to learn, grow, and handcraft great, new things - not because it’s easy, but because it’s worth doing.
If you are satisfied with what existing low-cost platforms have to offer because they’re “good enough,” or you see no reason to dare to branch out and try something new, or you have never been left thinking “I love [fill in the blank maker / development board], but I really wish it could do [this],” then read no further. snickerdoodle isn’t for you.
We love what Raspberry Pi and Arduino have done for education and the impact they’ve had on the growth of the maker community. We also realize that what fundamentally makes these platforms powerful is what limits them: they are intended to help you take the first step, to get you thinking, to get you writing those first lines of code, to foster confidence and hope and curiosity.
The question is: now what? What if I want to do more? To grow? To create something different? Why is there nothing out there that I can afford and use that lets me make what I want to make?
That is why you need snickerdoodle. To create something different. To make what you want to make. To take back control of your projects. To invent something you will be proud to show your friends, your family, your colleagues. Put another way: snickerdoodle takes all the things that Raspberry Pi, Arduino, and BeagleBone prevent you from doing and allows you to do them.
snickerdoodle includes support for Ubuntu Linux, ROS, and FreeRTOS so you can take advantage of powerful communities and code bases and quickly port over your own existing projects.
snickerdoodle uses an Eclipse-based development environment for programming in Python, Java, and C/C++. With loads of reference designs and pre-built applications, building and learning are actually fun again.
With Wi-Fi, Bluetooth Classic, Bluetooth Low Energy, a dual-core ARM processor, and 154 user-customizable I/O (yes, 154 I/O…across 230 pins…including 76 grounds), snickerdoodle is more than “just another cheap Linux computer.” snickerdoodle gives you the freedom to…
You get the idea…
snickerdoodle has built-in Wi-Fi and Bluetooth and uses a special ARM processor with software-reconfigurable peripherals and I/O. Think of it as a 3D printer for digital hardware. So whether it’s PWMs, or SPIs, or regular old GPIO, you’ll no longer be held back by the chip or board maker telling you what pins you get, how many, and where - you will always have the pins you need, when and where you need them.
And with the paired mobile app (iOS and Android), you’ll be able to wirelessly upload your projects and hardware configurations on the go. So even if you’ve never worked with reconfigurable hardware before, you can take advantage of dozens of pre-built, open-source peripheral libraries, providing unique, freely selectable “personalities” for your snickerdoodle - all from the friendly confines of your phone/tablet. Just scroll, find, and tap.
Paired with a free mobile app and an Eclipse-based development environment, you’ll be able to get from opening the box to running an application in under 15 minutes.
If you’ve ever logged onto a Wi-Fi network or paired with a Bluetooth device using your phone or tablet, you already know how to connect to your snickerdoodle and how to connect your snickerdoodle to the ‘net.
And that’s it! Yes, seriously - we told you it’d be easy. Next up?
snickerdoodle is programmed using a freely downloadable, Eclipse-based integrated development environment (available for Windows and Linux).
So whether you’re working in Python, Java, or C/C++, you’ll be right at home.
You’ll also be able to download all the board support packages (BSPs) and reference designs you need for your application straight from the krtkl and snickerdoodle websites. With everything from pre-built hardware configurations to open source projects, operating systems, and libraries, snickerdoodle starts your project off on the right foot.
Why clutter your desk with more wires when you don’t need to? snickerdoodle can be configured wirelessly so once you’re connected to your snickerdoodle, you’ll be able to load projects, hardware configurations, and reference designs straight from your mobile device.
Of course, wireless isn’t for everybody. Maybe you don’t want your data leaving your bedside. Maybe you’re worried the government is watching your every move. Or maybe you’re stuck inside a Faraday cage in Bermuda. Whatever the reason, fear not…because you can still program your snickerdoodle the “old-school way” - with no wireless connection OR mobile device.
And for more advanced embedded development, there are dedicated pins (on J2) for debugging via JTAG.
snickerdoodle has seven physical connectors (eight if you opt for the upgraded processor).
|Connector||Manufacturer Part Number||Description|
|J1||FCI 10103594-0001LF||USB and Power Input|
|J2||Samtec TFM/SFM-115-01-F-D-A||Power, JTAG, Bluetooth Audio, I2C, Analog|
|J3||Samtec TFM/SFM-120-01-F-D-A||Microprocessor Subsystem|
|JA1, JA2, JB1, JB2||Samtec TFM/SFM-120-01-F-D-A||Reconfigurable I/O|
|JC1||Samtec TFM/SFM-120-01-F-D-A||(Zynq-7020 only)|
In order to keep snickerdoodle small enough to use in mobile robots, drones, and other size- and weight-sensitive applications - but not so small that you:
a) can’t practically hook anything up out of the box or
b) are forced to buy an expensive baseboard just to get to pins you can actually use
The 0.05” pitch, upright headers can be plugged into directly using a housing+jumper pack, providing 0.1” “maker-friendly” female jumpers for quick prototyping right out of the box.
This is the perfect solution if you neither need nor want any bulky USB, Ethernet, or HDMI jacks in your system, or you’re just looking to hook something up on the workbench and start creating your own gloriously ‘frankensteined’ contraption…
But don’t worry - if it’s more single-board-computer-style connectors or 0.1” headers you’re looking for, we have a solution for that too! Just head on down to our “baseboards” section below…
Below are the high-level technical specifications for snickerdoodle (items in bold are upgradable to suit your needs):
look ma, a microprocessor I can customize!
The workhorse behind snickerdoodle is an ARM-based System on Chip (SoC) from Xilinx called “Zynq.”
These powerful little chips - which have roots in industrial, aerospace, and defense applications - allow hardware to be reconfigured with software, freeing you to accomplish things that simply aren’t possible with regular microprocessors (like those in the Raspberry Pi and Beaglebone - which have roots in DVRs and cell phones).
Unlike a lot of more complicated reconfigurable hardware, the Zynq SoC inside snickerdoodle has a full-blown ARM microprocessor inside meaning you are able to treat it (and program it) as if it were “just another microprocessor”…with a ton of really fast, reconfigurable I/O.
In other words, the development process and tools are very similar to what you’re used to using with other systems like Raspberry Pi.
If you’re interested in learning more about Zynq, check out the free e-book at ZynqBook.com.
With snickerdoodle, you have two flavors…errr....options to choose from:
By default, snickerdoodle comes with a 667MHz Dual-Core ARM Cortex-A9 processor and 430K reconfigurable gates (Zynq-7010) to give you all 154 I/O (100 customizable) and everything you need to get started.
But if you need more processing power, more I/O , and 3x the configurability, snickerdoodle black packs a punch with an 866MHz Dual-Core ARM Cortex-A9 and 1.3M reconfigurable gates (Zynq-7020).
See our FAQs at the bottom of the page for additional hardcore technical details on the exact part numbers, I/O performance, documentation, and more.
Sick of putting up with poorly performing dongles or endlessly wrestling with dysfunctional drivers just to get your projects connected to the Internet or your mobile device? snickerdoodle has the cure.
With Wi-Fi and Bluetooth on board and equipped with fully functional networking stacks right out of the box, wireless is no longer an afterthought. Using your iOS or Android device, you and your snickerdoodle will be online faster than you can say, “I love my snickerdoodle.”
Wireless connectivity is provided via a Texas Instruments WiLink 8 Wi-Fi + Bluetooth pre-certified module.
snickerdoodle has two wireless options to choose from:
By default, snickerdoodle uses the WL1831 radio to provide single-band 2.4GHz 802.11n SISO Wi-Fi.
snickerdoodle black, however, uses the WL1837 and bumps you up to dual-band 2.4GHz & 5GHz 802.11n 2x2 MIMO Wi-Fi.
Both modules come equipped with Bluetooth 4.0, which means they provide both Bluetooth Classic and Bluetooth Low Energy. Having both options really opens up communication and control possibilities, simplifies device pairing, and allows for very low-energy data transfers and device interaction – a must for mobile, battery-powered systems.
See our FAQs at the bottom of the page for additional hardcore technical details on the exact part numbers, wireless performance, documentation, and more.
Have a specific application in mind and want a little help getting started? snickerdoodle can be paired with several pre-configured baseboards with no need to hassle with configuration or setup.
Each baseboard has its own on-board memory/identification chip that tells your snickerdoodle what’s plugged in and automatically loads the right package to get all your peripherals working without you lifting a finger.
Did someone say something about 0.1” pins? Well here’s 270 of them! Think that’ll cover it?
breakyBreaky provides the full snickerdoodle pinout on 0.1” headers and comes loaded with:
Note: requires snickerdoodle with connectors “down” configuration; not included.
Or maybe what you’re looking for is gigabit Ethernet, high-speed USB, a bunch of reconfigurable I/O, and…simultaneous HDMI output AND input? Enter: piSmasher… Named “piSmasher” for a reason, you’ll get everything Raspberry Pi provides and more - you can kind of think of it as a Raspberry Pi on steroids.
piSmasher gives you:
Note: requires snickerdoodle with connectors “down” configuration; not included.
Add software-defined networking capabilities to your snickerdoodle! Directly pluggable into piSmasher, giggleBits ties two Gigabit Ethernet ports directly to snickerdoodle’s programmable logic.
Note: if you’re using piSmasher with snickerdoodle black, you can plug in 2x giggleBits Cards for total sDN giggling madness…
giggleBits sDN has:
One of the beauties of snickerdoodle is that it’s architected, built, and priced in a way that makes it incredibly easy and practical to go from proof-of-concept to production. The minute you’re done prototyping, simply take the snickerdoodle you spent all those hours in the lab with and plug it right into your production system.
Have a killer idea for a baseboard or shield you don’t see? Just follow our baseboard design guide and you can build your own micro shields, breakout boards, interfaces, or whatever you can dream up. And with reconfigurable I/O, the possibilities are practically endless.
Note: for more information on connectors, footprints, and pin-outs, be sure to check out our User Manual linked in the FAQs.
Finally, snickerdoodle has a bunch of optional accessories to make your development experience even more awesome…
Power all your snickerdoodle baseboards with this internationally universal ‘wall-mount’ power supply.
Note: the above image is a rendering, final design subject to change. snickerdoodle not included. Production enclosure to be functionally equivalent.
Note: included with snickerdoodle black
Note: microSD card manufacturer subject to change. Potential substitute shall be at least functionally equivalent.
Note: All seven mating snickerdoodle connectors and a 50-pack of (loose) jumpers - see below for jumper description
Note: jumpers only. Wires are approximately 7.5” long (19cm), and come with 0.1” female pins & housings installed on one end and crimped pins for installation into mating Samtec housings on the other.
Note: All seven mating snickerdoodle connectors
We’re a collection of electrical, mechanical, and software engineers based out of San Francisco. With decades of experience in embedded systems, real-time controls, and robotics, we’ve worked on everything from medical devices to consumer electronics. With the mindset that no detail is too fine and “good enough” never is, we live for building products people love and that will make a difference in the world. For more info on our founding team, please visit our website.
After several years and thousands of hours developing custom mechatronic and embedded control systems for a range of medical, industrial, and consumer technology companies, we finally got so tired of the lack of an affordable and versatile tool for building robotic systems that we decided to just make one ourselves.
We started by envisioning something that we, as engineers, would actually want to use - something that would make our lives easier and would eliminate the design sacrifices we always found ourselves making as a result of using poorly conceived, underperforming, and overpriced tools. Then we iterated and iterated…and iterated until we landed upon (what we feel is) the perfect combination of functionality, usability, and affordability.
And so, out of a grueling and rewarding two-year “labor of love,” snickerdoodle was born…
Inspired by the idea of what might be possible if the blossoming community of makers, hobbyists, and hardware enthusiasts could get their hands on advanced technologies that would normally be way out of their reach, we ultimately developed a combination of hardware and software that truly levels the playing field. Bringing together professionals and hobbyists using one common platform has the uniquue potential to build a community of creators unlike any before it.
Simply put: without your help, this project would never be able to get off the ground. Sure, we could ‘do what everyone else does:’ just add a zero to the price tag and build something with this awesome technology…and effectively exclude everyone without a multi-million dollar R&D budget from using it. But we desperately wanted this to be a way for everyone to get their hands on affordable, professional-caliber tools.
So in order to hit our minimum order quantities with the various manufacturers and distributors, along with ensuring we reach the volumes that will enable us to keep prices as low as possible while sustaining the level of support necessary to make your user and development experience as pain-free as possible, we need your help as a customer, evangelist, and contributor to this amazing new community of creators.
And of course, every development platform is only as valuable as the community of developers behind it. We look forward to welcoming you with open arms to - what is about to be - a thriving community of snickerdoodlers. Ultimately, this is all about you - we’re just here to make sure you receive the hardware and software support you need to continue experimenting, learning, building, and succeeding.
We really can’t wait to see what you create.
We have spent the last nine months leading up to the campaign finalizing part selections, nailing down the supply chain, negotiating with vendors and distributors, evaluating contract manufacturers, and setting up for high-volume production and fulfillment. The minute we hit our goal, we will be placing orders for long-lead-time parts and wrapping up the final hardware details.
Pre-order snickerdoodle volumes will dictate where assembly ultimately takes place. We are planning (and hoping) to have boards (both snickerdoodles and baseboards) assembled by one of our partners in China, but only if volume warrants. Fabrication will take place either in SE Asia or in/near Shenzhen. Cable assemblies are scheduled to be assembled and packaged in China.
Crowd Supply has also offered to assist us with packaging requirements/sourcing as well as domestic and international logistics to ensure you receive the best and most reliable customer service and ordering experience possible.
We’d like to thank some of the people who helped ‘keep the ship afloat’ for the past two (loooong) years. A big, warm, heartfelt “thank you” to:
Bruce Hammond for the dozens of projects he’s helped us with (including this one); Don and CADParts for their amazing work on the layouts…and for always standing by the Bat Phone; Romy for producing our killer video (and for putting up with us); fellow roboticists Leo & co. at SMP Robotics and Adam & Daniel at Modbot; Ryan & Jeff and all the folks at Tempo Automation for getting us out of (more than) a couple prototyping binds; Marie for being our bulldog; Josh & Darrell and the Crowd Supply team; Brad from TI, Justin & Bruce from Avnet, Jahanarha, Elizabeth, & Kristin from Samtec, Ronald & Chris from Norcomp, and Douglas & Monica from Digi-Key for all their ongoing support.
Also, thank you to our investors - you know who you are - for taking a leap of faith and believing in us when we were just three guys in a 140 square foot office armed with nothing but a box of equipment and a dream. And to our friends and families for being there when we needed you most.
And finally, thanks to you, our backers and fans for sharing our enthusiasm for creating new things and for all the words of encouragement - every one of them meant something. This is for you.
Producing hardware in volume carries with it many risks. Potential issues with supply chains, quality assurance, part shortages, and natural disasters are just a few of the obstacles that can get in the way of successful delivery of a hardware product.
Software also carries risks and requires a carefully architected and executable plan. Our first priority is ensuring the highest possible quality of snickerdoodle’s fundamental software building blocks: wireless connectivity, board support packages, mobile applications, backend device management and data security, and baseboard functionality.
Wherever possible, we’ve taken care to allow time for delivery setbacks, quality issues, and other potential hiccups to be ironed out without causing delays in fulfillment. But no matter what, we will always be transparent, responsive, and quick to provide updates along the way so our backers will always know where we are, where we’re going, any challenges we might come across, and how we are working to address them.
I looked on Digi-Key and it says the Xilinx part you’re using is $63. How is snickerdoodle $55?
There are many factors contributing to the pricing of snickerdoodle’s primary components. Not only does volume pricing scale differently on parts like Zynq than it does on other more widely distributed microprocessors and microcontrollers, but due to their presence in industries like aerospace and defense, Xilinx has adopted a different production and distribution model than many silicon manufacturers in order to accommodate export restrictions and other regulatory factors.
Fortunately, over the past several months and years working on this project, our various vendors, distributors, and partners have truly come to understand and value the power of providing the maker, student, and engineer access to advanced technologies that wouldn’t normally be accessible. But we need your help to prove to everyone that people truly are interested in using powerful tools to build great things. We would never post a project we knew we wouldn’t be able to deliver.
We have a dream and we hope you do too. Let’s get there together.
How does international shipping work?
Worldwide shipping for all baseboards and accessories is 100% covered by snickerdoodle’s shipping charges! International orders just add $20 ($25 total) per snickerdoodle. If your order contains more than one snickerdoodle, your shipping charges will be adjusted after the order is submitted to ensure you are not overcharged. Should you have any questions about international (or domestic) shipping, please submit a question below. Note: any international orders that have already been placed will be adjusted to reflect this change and a new confirmation email will be sent reflecting the reduced shipping fees.
Do you have an Alpha program? If so, how do I get involved?
Yes! If you’re interested in participating, just submit a “question” using the button at the bottom of the campaign explaining how you’d like to get involved; please include some project/experience examples and a link to your resumé and/or GitHub profile would be helpful.
Note: our Alpha customers will get early access to pre-production hardware before the end of the year and will be working closely with us on testing new features and building demo applications. We’re particularly looking for people with experience in Linux, FreeRTOS, ROS, and/or FPGA IP and who are eager to get their hands dirty. Please keep in mind that pre-production hardware and software is likely to be buggy and will require knowledge of how to resolve issues with both.
There are a limited number of spaces available, so don’t wait to apply!
How do I go about building my own snickerdoodle “microShield” or baseboard?
For both plug-in and cable-ready baseboards and microShields, check out our User Manual (linked below) for info on connectors, footprints, pinouts, and more.
Can I order snickerdoodles in large volumes?
Absolutely! Just submit a “question” using the button at the bottom of the campaign and we’ll get right back to you…
Do I have to run Linux?
Nope. Again, there are two “hard” ARM Cortex-A9 processor cores so you can run a wide range of real-time and general-purpose operating systems. Or if you don’t want the overhead of an OS, you can even run “bare metal!”
I noticed you have an STM32 microcontroller in your block diagram but you don’t mention it in the campaign. What does it do and can I run my own code on it?
The STM32 functions as a USB-to-serial bridge, power-supply manager, Bluetooth-integration bridge, boot-source controller, USB boot flash mass-storage-device bridge, LED and button controller, and I2C auto-configuration manager. We provide pre-integrated, functioning firmware for this device, which allows us to implement many of the platform and mobile application usability features intrinsic to snickerdoodle.
However, if you wish to build your own custom firmware for the STM32 device, both ST and ARM provide complete free toolchains and SDKs for the STM32F078, and the STM32 debug pins are fully exposed as well (on J2).
What is snickerdoodle’s standby or “resting” power consumption?
Taking advantage of the STM32-controlled load switches, snickerdoodle’s standby power can get down to 5 milliwatts! (this is with the Zynq off, STM32 in “stop” mode, & Bluetooth in sleep mode).
I didn’t see JTAG on board - where is it??
Well, a couple places actually… For starters, all the JTAG pins are available on J2. Secondarily, you can actually debug over Wi-Fi via the debug agent in Linux. You can also get JTAG over the microUSB port (facilitated by the STM32 companion controller); note that due to the limitations of “full-speed” USB and SPI, this will be limited to approx. 4.8MHz (as opposed to an external high-speed, pro-style JTAG box that’ll run about $60-250) - a pretty reasonable compromise considering there’s no added hardware cost. :) And, of course, breakyBreaky, piSmasher, and whiteRhino all have “standard” JTAG headers built in.
Why does it cost $10 for the connectors “down” snickerdoodle?
Per the connector manufacturer, the process for making the “female” connectors is much more involved than the “male” version. The assembly and components are more complex and the low-insertion-force mating connectors (used to reduce the friction of the 230-270 pins going in/out of the connectors) require a tighter tolerance. The connectors-down adder is provided “at cost.” Because we are ordering large volumes of these connectors, having the option on the snickerdoodle end ultimately saves users $$$ because these connectors would otherwise need to be installed on the “other end” for mounting snickerdoodle a baseboard.
What is the voltage range for snickerdoodle’s I/O pins?
The voltage levels for the FPGA I/O pins are settable to between 1.2V and 3.3V (JA1, JA2, JB1, JB2, JC1).
snickerdoodle has two independent “banks” of 50 FPGA I/O pins and each can be set to any I/O voltage in the aforementioned range. snickerdoodle black adds a third (independent) FPGA I/O bank of 25 I/O pins.
A 3.3V power supply output is supplied on each FPGA I/O connector, which can be used with a single jumper to set the I/O voltage to 3.3V for that bank without any additional external components. However, to use an I/O voltage other than 3.3V (1.2V to < 3.3V), that voltage must be supplied to the I/O bank.
The microprocessor I/O (J3) have a fixed voltage of 1.8V (this is required to support Ethernet on the baseboards as RGMII does not support I/O voltages above 2.5V).
The analog, audio, JTAG etc. I/O on J2 have a fixed I/O voltage of 3.3V.
What is the temperature range of snickerdoodle? And do you offer an industrial grade version (-40C to 100C)?
Below is a list of snickerdoodle component temperature ranges:
667MHz Zynq 7010: 0C to 85C 866MHz Zynq 7020: 0C to 100C
Single-Band WL1831 Radio: -20C to 70C Dual-Band 2x2 MIMO WL1837 Radio: -40C to 85C
LPDDR2 Memory: -30C to 85C
STM32: -40C to 85C
Flash and Crypto EEPROM: -40C to 85C
“Everything else”: -30C to 85C or better (for instance LEDs don’t quite make the full -40C to 85C range)
There is an “industrial” version of the Zynq, however it carries a significant price premium and the processor is (usually) limited to the 667MHz speed grade. If you do have a volume application requiring an industrial temperature grade snickerdoodle, please let us know by submitting a “question” below.
I’m interested in getting into some image processing and computer vision applications - you don’t have a pre-built camera module I can plug into snickerdoodle, do you?
Let’s just say: if you help us reach our first stretch goal, we will unveil a “solution” we think you might like (that will be incorporated into a subsequent stretch goal)…
Is snickerdoodle “open source?”
All baseboard/microShield schematics, Gerbers, and BOMs are/will be published and publicly available.
The complete snickerdoodle schematics and BOM will be published and made publicly available before the end of the campaign.
Is there a version of snickerdoodle without Wi-Fi & Bluetooth?
We do not currently offer a version of snickerdoodle without wireless connectivity. If you have an application that does not permit or does not require wireless, please submit a “question” below and we will be happy to discuss.
What happened to the other baseboards you show in your video?
Due to lack of demand - and in an effort to simplify the various campaign offerings - we have decided to stop taking orders for shieldBuddy (Arduino shield adaptor), gryphon (autopilot), and whiteRhino (industrial SBC). If you are interested in learning more about these boards, please send us a “question” below. Also, please check out our GitHub profile for schematics of these boards for use as reference designs. Note: if you have already ordered one or more of these boards, we will be contacting you directly for the next steps.
Can I build my own FPGA IP cores? If so, how?
Absolutely! Using Xilinx’s free Vivado WebPACK, you can develop your very own snickerdoodle IP and take advantage of a thriving community of developers. For more info on FPGA IP development using Vivado, head over to Xilinx’s site: Vivado Design Suite Video Tutorials
I know the ARM processor can access the LPDDR2 directly, but can the FPGA?
Yes! LPDDR2 memory controller is accessible by both the “hard” ARM cores * and * the FPGA. There are a 9 uncommitted AXI buses linking the FPGA to the ARM processor.
For very high performance applications, the FPGA can directly stream data to and from the DDR Controller via four 64-bit wide AXI slave interfaces. For medium performance applications, the FPGA can connect to the central interconnect through two 32-bit wide AXI slave interfaces that also provide a path to direct control over hard IP peripherals. The hard DMA controller can also drive transactions to the FPGA via two 32-bit wide AXI master interfaces. See sections 22.3 and 22.4 of the Zynq Technical Reference Manual for very detailed info on the FPGA internal connectivity to the hard ARM processor. For a higher level explanation, please see section 2.3 of the Zynq book which can be freely downloaded at ZynqBook.com.
But wait, I want more specs! How fast are the I/O? What about the memory interfaces? What’s the wireless performance like?
Here’s pretty much everything you need to know…
|chipset||Xilinx Zynq-7010||Xilinx Zynq-7020|
|CPU||32-bit dual-core ARM Cortex-A9 w/640kB cache and 2x 128-bit NEON coprocessors||32-bit dual-core ARM Cortex-A9 w/640kB cache and 2x 128-bit NEON coprocessors|
|performance||3,335 DMIPS/2.6 GFLOPS@667MHz||4,330 DMIPS/3.4 GFLOPS@866MHz|
|flash||16MB XIP NOR + up to 200GB SDIO NAND via captive microSD card cage||16MB XIP NOR + up to 200GB SDIO NAND via captive microSD card cage|
|SRAM/bandwidth||256kB/28.4 Gbps||256kB/36.9 Gbps|
|reconfigurable hardware||430K gates/17,600 LUT-6||1.3M gates/53,200 LUT-6|
|32-bit performance||143,150 MIPS@350MHz||587,575 MIPS@475MHz|
|DSP performance||74 GMACs/31.8 GFLOPS@461MHz||276 GMACs/121.5 GFLOPS@599MHz|
|total user GPIO||154||179|
|reconfigurable I/O performance||16x ADC/100x GPIO/46.2Gbps||16x ADC/125x GPIO/75.7Gbps|
|fixed GPIO||33x GPIO, 4x I2S audio, 14x I2C, 1x ADC, 2x DAC||33x GPIO, 4x I2S audio, 14x I2C, 1x ADC, 2x DAC|
|Wi-Fi||150Mbps SISO 2.4GHz 802.11n||150Mbps 2x2 MIMO 2.4GHz/5GHz 802.11n|
|Bluetooth||3Mbps dual-mode Bluetooth 4.0 Classic+EDR/BLE||3Mbps dual-mode Bluetooth 4.0 Classic+EDR/BLE|
|antenna||dual-band antenna, switched U.FL ports||dual-band antenna, switched U.FL ports|
|serial interfaces||2x gigabit ethernet, 2x CAN, 2x I2C, SPI, UART, USB 2.0 high-speed, microUSB console/JTAG||2x gigabit ethernet, 2x CAN, 2x I2C, SPI, UART, USB 2.0 high-speed, microUSB console/JTAG|
|analog interfaces||2x 1MSPS 12-bit ADCs w/16 channel multiplexer, 2x 1MSPS 12-bit DACs||2x 1MSPS 12-bit ADCs w/16 channel multiplexer, 2x 1MSPS 12-bit DACs|
|other peripherals||5x LEDs, 2x pushbuttons, secure cryptographic key/certificate storage||5x LEDs, 2x pushbuttons, secure cryptographic key/certificate storage|
|software support||iOS/Android app, Snappy Ubuntu Core Linux, Python, Java, C/C++, ROS, FreeRTOS||iOS/Android app, Snappy Ubuntu Core Linux, Python, Java, C/C++, ROS, FreeRTOS|
|power||5V via microUSB or 3.7V-17V via power pins||5V via microUSB or 3.7V-17V via power pins|
|dimensions||3.5” x 2.0” (88.9mm x 50.8mm)||3.5” x 2.0” (88.9mm x 50.8mm)|
What about documentation? Do you have a User Manual or something?
Of course! Here’s a link to the snickerdoodle User Manual. This is a “living” document and will continue to be updated going forward, but this should help answer a lot of the questions you still have.
If you’re looking for more information on Zynq and everything it’s capable of, our good friends at the University of Strathclyde literally wrote the book on Zynq. It’s an excellent resource packed full of useful information and best of all? It’s 100% free! Check it out at ZynqBook.com, (or pick up a hard copy off Amazon).
You can also check out our GitHub profile for a comprehensive list of schematics, manuals, drawings, tables, and other goodies.
Where do I find out more about the IDE you’re using?
For more on the Xilinx SDK, head on over to their website where you can find all kinds of great documentation and other resources: Xilinx SDK Documentation
How do you pronounce “krtkl”?
It’s pronounced “critical” (krĭt′ĭ-kəl)…we just removed the vowels and changed the “c’s” to “k’s!” Written in lowercase, the inspiration comes from us spending our entire professional careers developing “safety-critical” systems.