I recently came across the ICE40UL1K-SWG16ITR1K (Please see DigiKey, DE) 16-Pin FPGA.
This Device "packs an amazing punch" for its size:
- 57kBits of RAM
- 1248 Logic-Cells
- 156 LABs/CLBs and is relatively "price-neutral" with 2€/pc on a 1k Reel through DigiKey.
In conclusion: I can come up with "many cool stuff" to do with it in my mind.
So...
I struggle to come up with specific use cases, as the device has so few IO/s. According to the Datasheet (Page 33, Table) it has only 10 of them.
As I read the "Intro-Page", the device is intended for some sort of remote/barcode scanner/IR transceiver scenario.
But:
Wouldn't a "off-the-shelf" ARM M0/M3 be much more cost effective?
- Lower IC costs in volume
- No need for external Flash
- Lower development cost for Software compared to HDL
- Easier code maintenance
- More flexibility in software (Remote updates e.g without additional MCU to control the FGPA-Flash)
Question:
- What are the advantages of such an FPGA (Low-Pin count, high complexity in general) over an MCU?
- In which Applications are such devices favored over the general "MCU-Approach"?
- What points/features/advantages/... am I missing in my "glance at the device"?