TinyFPGA Boards

Started by rickman January 3, 2018
http://tinyfpga.com/

The web site does not work 100% as there are some broken links, but all the 
pages are there.  They currently offer three boards, A1/A2 provide two sizes 
of the Lattice XO2, the 256 and 1200.  These two boards are basically just 
break out boards with nothing else other than decoupling caps and a ferrite 
bead.  The B2 board uses the ICE40LP8K and comes with an SPI flash chip, a 
16 MHz clock, PSU chips and a USB programming interface.

One thing I noticed is that the TinyFPGA-B2 doesn't have a USB interface 
chip on it.  The USB data pins go directly to the ICE40 chip.  To the best 
of my knowledge there is no USB interface on the ICE40 chip.  So I don't get 
how this boots up the chip.  Maybe they have a way of faking out the USB 
interface with a special driver, but that doesn't sound very plausible to me.

Anyone know much about the TinyFPGA boards?

-- 

Rick C

Viewed the eclipse at Wintercrest Farms,
on the centerline of totality since 1998
Den onsdag den 3. januar 2018 kl. 18.55.36 UTC+1 skrev rickman:
> http://tinyfpga.com/ > > The web site does not work 100% as there are some broken links, but all the > pages are there. They currently offer three boards, A1/A2 provide two sizes > of the Lattice XO2, the 256 and 1200. These two boards are basically just > break out boards with nothing else other than decoupling caps and a ferrite > bead. The B2 board uses the ICE40LP8K and comes with an SPI flash chip, a > 16 MHz clock, PSU chips and a USB programming interface. > > One thing I noticed is that the TinyFPGA-B2 doesn't have a USB interface > chip on it. The USB data pins go directly to the ICE40 chip. To the best > of my knowledge there is no USB interface on the ICE40 chip. So I don't get > how this boots up the chip. Maybe they have a way of faking out the USB > interface with a special driver, but that doesn't sound very plausible to me.
they must boot the fpga from flash, looking at the verilog repository from the bootloader the USB is a softcore
lasselangwadtchristensen@gmail.com wrote on 1/3/2018 1:23 PM:
> Den onsdag den 3. januar 2018 kl. 18.55.36 UTC+1 skrev rickman: >> http://tinyfpga.com/ >> >> The web site does not work 100% as there are some broken links, but all the >> pages are there. They currently offer three boards, A1/A2 provide two sizes >> of the Lattice XO2, the 256 and 1200. These two boards are basically just >> break out boards with nothing else other than decoupling caps and a ferrite >> bead. The B2 board uses the ICE40LP8K and comes with an SPI flash chip, a >> 16 MHz clock, PSU chips and a USB programming interface. >> >> One thing I noticed is that the TinyFPGA-B2 doesn't have a USB interface >> chip on it. The USB data pins go directly to the ICE40 chip. To the best >> of my knowledge there is no USB interface on the ICE40 chip. So I don't get >> how this boots up the chip. Maybe they have a way of faking out the USB >> interface with a special driver, but that doesn't sound very plausible to me. > > they must boot the fpga from flash, looking at the verilog repository from the
bootloader the USB is a softcore I didn't think of that. The ICE40 has a one time programmable configuration memory, but I believe the board has an SPI flash. Can you tell they are booting the SPI flash? Is the Verilog code for the USB interface provided? I guess I can take a look. -- Rick C Viewed the eclipse at Wintercrest Farms, on the centerline of totality since 1998
rickman wrote on 1/3/2018 3:27 PM:
> lasselangwadtchristensen@gmail.com wrote on 1/3/2018 1:23 PM: >> Den onsdag den 3. januar 2018 kl. 18.55.36 UTC+1 skrev rickman: >>> http://tinyfpga.com/ >>> >>> The web site does not work 100% as there are some broken links, but all the >>> pages are there. They currently offer three boards, A1/A2 provide two sizes >>> of the Lattice XO2, the 256 and 1200. These two boards are basically just >>> break out boards with nothing else other than decoupling caps and a ferrite >>> bead. The B2 board uses the ICE40LP8K and comes with an SPI flash chip, a >>> 16 MHz clock, PSU chips and a USB programming interface. >>> >>> One thing I noticed is that the TinyFPGA-B2 doesn't have a USB interface >>> chip on it. The USB data pins go directly to the ICE40 chip. To the best >>> of my knowledge there is no USB interface on the ICE40 chip. So I don't get >>> how this boots up the chip. Maybe they have a way of faking out the USB >>> interface with a special driver, but that doesn't sound very plausible to >>> me. >> >> they must boot the fpga from flash, looking at the verilog repository from >> the bootloader the USB is a softcore > > I didn't think of that. The ICE40 has a one time programmable configuration > memory, but I believe the board has an SPI flash. Can you tell they are > booting the SPI flash? Is the Verilog code for the USB interface provided? > I guess I can take a look.
Yep, Verilog for a USB to SPI connection it appears. It's been a while since I dug into the documents for the various boot modes. I can't tell if this allows the device to be booted over the USB port or if it only allows the SPI flash to be programmed and the chip booted from that. The fact that there is a "host presence" timeout which then seems to trigger a boot, I'm guessing the ICE40 boots this program from the non-volatile on-chip memory and then allows the user to control the chip or if no host is attached it boots from the SPI flash. -- Rick C Viewed the eclipse at Wintercrest Farms, on the centerline of totality since 1998