iCE (FPGA)

iCE is the brand name used for a family low-power FPGAs produced by Lattice Semiconductor. Parts in the family are marketed with the "world's smallest FPGA" tagline, and are intended for use in portable and battery-powered devices (such as mobile phones),[1] where they would be used to offload tasks from the device's main processor or SoC. By doing so, the main processor and its peripherals can enter a low-power state or be powered off entirely, potentially increasing battery life.

Lattice received the iCE brand as part of its 2011 acquisition of SiliconBlue Technologies.

Architecture

The architecture of iCE40 LP and HX1K devices.

iCE65 and iCE40 devices are constructed as an array of programmable logic blocks (PLBs), where a PLB is a block of eight logic cells. Each logic cell consists of a four-input lookup table (sometimes called a 4-LUT or LUT4) with the output connected to a D flip-flop (a 1-bit storage element). Within a PLB, each logic cell is connected to the following and preceding cell by carry logic, intended to improve the performance of constructs such as adders and subtractors. Interspersed with PLBs are blocks of RAM, each four kilobits in size. The number of RAM blocks varies depending on the device.[2](pp. 2-1 to 2-3)[3](pp. 5–9)

Compared to LUT6-based architectures (such as Xilinx 7-series devices and Altera Stratix devices), a LUT4-based device is unable to implement as-complex logic functions with the same number of logic cells. For example, a logic function with seven inputs could be implemented in eight LUT4s or two LUT6s.

iCE devices use volatile SRAM to store configuration data. As a result, the data must be loaded onto the device each time power is lost. All iCE devices support loading configuration data from a programmer, from an external flash memory chip, or, with the exception of iCE40 LM devices,[4] from a so-called NVCM, or non-volatile configuration memory. The NVCM is a one-time programmable (OTP) memory integrated into the FPGA to negate the need for an external memory chip. Lattice claims that using the NVCM can improve design security by making reverse engineering more difficult.[5]

The I/O pins on iCE devices are separated into up to four banks. On some devices each bank has its own power-supply pin (labelled VCCIO), allowing the logic-high voltage level of the I/O bank to be adjusted.[2]:2-7 Configurable I/O voltage levels are used by iCE devices to allow support for multiple interface standards with voltage levels between 1.8V and 3.3V, such as LVDS.[2]:3-1 iCE65 devices also listed being able to support SSTL through this method.[3]:11

Development

iCE FPGAs, as with most FPGAs and CPLDs, are typically designed for using a hardware description language (or HDL), which describes an electronic circuit. Lattice Diamond, the IDE provided by Lattice for developing on their FPGAs, supports the VHDL and Verilog languages, as well as the EDIF format.[6]

Open source

The details of a specific FPGA's bitstream format (which defines how the internal elements of the FPGA are connected and interact with each other) are not usually published by FPGA vendors. This means that, generally, an engineer creating a design for an FPGA must use the tools provided by the FPGA's manufacturer.

In December 2015, at 32C3,[7] a toolchain consisting of Yosys (Verilog synthesis frontend), Arachne-pnr (place and route and bitstream generation), and icepack (plain text-to-binary bitstream conversion) tools was presented by Clifford Wolf, one of the two developers (along with Mathias Lasser) of the toolchain. The toolchain is notable for being one of, if not the only, fully open-source toolchains for FPGA development. At the same December 2015 presentation, Wolf also demonstrated a RISC-V SoC design built using the open-source toolchain and running on an iCE40 HX8K device. As of April 2016, the toolchain supports iCE40 LP1K, LP4K, LP8K, and HX devices.[8]

List of iCE devices

iCE65 (65 nm)

The iCE65 name was used by SiliconBlue Technologies for the devices it designed for a 65nm process node. Following the acquisition of SiliconBlue in 2011, the name was used by Lattice Semiconductor until the family was discontinued in April 2012.[9]

iCE65 L

iCE65 Parts
Series Device LEs RAM PLLs Max. I/Os
iCE65 L L01 1280 64kbit N/A 95
L04 3520 80kbit 176
L08 7680 128kbit 222
L16 16896 384kbit Unknown
iCE65 P P04 3520 80kbit 1 174
P08 7680 128kbit 2 Unknown
P12 12160 160kbit 2 Unknown

The iCE65 L series of devices was intended for low-power applications and handheld devices. The series was first announced in mid 2008,[10] and first shipped to volume customers in early 2009.[11]

Information about a larger device in the series, the iCE65L16, was listed on the SiliconBlue website in 2010,[12] but no mention is made in a 2012 revision of the L-series datasheet.[3] It is unclear whether the device was ever produced commercially.

iCE65 P

The iCE65 P-series devices were marketed as a higher-performance version of the L-series devices, intended for use in display, memory, and SERDES applications,[13] and were announced in early 2010.[14] Three devices were listed as being part of the series but only one device, the lowest-end iCE65P04, was fully specified. The latest datasheet for the family, published in 2011, lists the other two parts but does not give specifications.[15] Whether these other two devices were ever commercially produced is unclear.

iCE40 (40 nm)

Lattice uses the iCE40 name for its iCE-branded devices produced on a 40nm process node. The company has also used the codename "Los Angeles" in press releases. The iCE40 family was launched in May 2012 with iCE40 LP and HX parts,[16] and was updated in July 2014 with the iCE40 Ultra parts[17] and February 2015 with the iCE40 UltraLite parts.[18]

iCE40 Ultra & UltraLite

iCE40 Ultra and UltraLite Parts
Family Device LEs RAM I²C SPI DSP PWM Max. I/Os
UltraLite UL640 640 56kbit 2 N/A Yes 26
UL1K 1280 56kbit 2 Yes 26
Ultra iCE5LP1K 1100 64kbit 1 1 2 Yes 39
iCE5LP2K 2048 80kbit 2 2 4 Yes 39
iCE5LP4K 3520 80kbit 2 2 4 No 39

The iCE40 Ultra and UltraLite devices are intended for applications with especially low limits on available space and power, such as in wearable technology and smart watches.[17] They are offered in chip-scale, BGA, and QFN packages, with dimensions from 1.4×1.4mm to 7×7mm. All devices in family integrate one or two I²C hard cores, with Ultra devices also including hard SPI bus cores and DSP blocks. UltraLite devices are claimed to operate at half the static current draw of Ultra devices (35μA compared to 71μA). Most devices in the family also include a PWM controller, intended to be used to drive IR or RGB LEDs.[19]:5

Lattice launched the Ultra family in mid 2014,[17] and the UltraLite family in early 2015.[18] In 2015, the UltraLite family won the Elektra Digital Semiconductor Product of the Year award.[20]

iCE40 LP & LM

iCE40 LP and LM Parts
Family Device LEs RAM I²C SPI PLLs Max. I/Os
LP LP384 384 No N/A No 39
LP640 640 32kbit No 11
LP1K 1280 64kbit 1 97
LP4K 3520 80kbit 2 180
LP8K 7680 128kbit 2 180
LM LM1K 1100 64kbit 2 2 1 39
LM2K 2048 80kbit 2 2 1 39
LM4K 3520 80kbit 2 2 1 39

The iCE40 LP (low power) and LM (low power with hard IP) parts are intended for use in battery-powered devices as hardware accelerators and I/O port expanders, and for use in the same applications as iCE40 Ultra and UltraLite parts. Compared to the Ultra parts, LP and LM parts are available in a wider range of footprints, offer a greater number of resources (I/O pins, embedded RAM, and logic elements), but consume more power.[4]

LP devices differ from the Ultra devices in that they do not include hard IP cores. Instead, any interface logic must be implemented in the FPGA fabric. This is generally less preferable, as so-called "soft cores" are less power-efficient than hard cores, and often are unable to operate at the same frequencies. A soft core also reduces the number of logic cells available to the application. LM devices integrate two I²C and two SPI hard cores, as well as two strobe generators. Most LP and LM devices integrate one or two phase-locked loops.

The families were launched in mid 2012,[16] and won the Elektra Digital Semiconductor Product of the Year award for 2012.[21] In 2015, it was announced that ZTE would use LM devices to provide sensor hub and infared remote control functionality in its Star 2 smartphone.[22]

iCE40 HX

iCE40 HX Parts
Device LEs RAM PLLs Static current Max. I/Os
HX1K 1280 64kbit 1 296μA 98
HX4K 3520 80kbit 2 1140μA 109
HX8K 7680 128kbit 2 1140μA 208

The iCE40 HX devices are intended for high-performance applications. Compared to iCE40 LP and Ultra devices, they offer lower maximum propagation delay (7.30ns versus 9.00–9.36ns),[2]:3-13,3-15 and more I/O pins. HX series devices consume significantly more static power and are available only in significantly larger footprints compared to Ultra and LP parts (7×7mm to 2×2cm). Similarly to the LP devices, HX parts do not provide hard IP cores, but do provide one or two phase-locked loops. Unlike other iCE40 devices, the HX parts are also available in QFP footprints.[4]

The HX parts were launched in mid 2012 alongside the LP parts.[16]

References

  1. "iCE40 Ultra / UltraLite - Lattice Semiconductor". Lattice Semiconductor. Archived from the original on March 8, 2016. Retrieved 5 April 2016.
  2. 1 2 3 4 DS1040 - iCE40 LP/HX Family Data Sheet v3.2. Lattice Semiconductor. 2015.
  3. 1 2 3 iCE65™ Ultra Low-Power mobileFPGA™ Family Datasheet v2.42. Lattice Semiconductor. 2012.
  4. 1 2 3 "iCE40 LP/HX/LM - Lattice Semiconductor". Lattice Semiconductor. Archived from the original on March 25, 2016. Retrieved 6 April 2016.
  5. Lattice TN1248 - iCE40 Programming and Configuration v2.8. Lattice Semiconductor. 2015.
  6. "Lattice Diamond - Lattice Semiconductor". Lattice Semiconductor. Archived from the original on March 25, 2016. Retrieved 8 April 2016.
  7. "Schedule 32. Chaos Communication Congress". Chaos Computer Club. Archived from the original on January 8, 2016. Retrieved 8 April 2016.
  8. "Project IceStorm". Clifford Wolf. 17 January 2016. Archived from the original on March 4, 2016. Retrieved 8 April 2016.
  9. PCN# 08B-12: Notification of Intent to Discontinue the iCE65 Product Family. Lattice Semiconductor. 2012.
  10. "SiliconBlue Pioneers New FPGA Technology for Handheld, Ultra-Low Power Applications". SiliconBlue Technologies. 2 June 2008. Archived from the original on April 9, 2016. Retrieved 9 April 2016.
  11. "SiliconBlue announces volume production shipments of iCE65 ultra-low-power FPGAs". EETimes. 9 February 2009. Archived from the original on April 6, 2016. Retrieved 6 April 2016.
  12. "SiliconBlue Technologes: iCE65 L-Series". SiliconBlue Technologies. Archived from the original on February 20, 2010. Retrieved 6 April 2016.
  13. The iCE65 mobileFPGA Family Product Table v1.1. Lattice Semiconductor.
  14. "SiliconBlue Enables Differentiated Mobile Broadband Products with New P-Series mobileFPGA Devices" (Press release). Reuters. 15 February 2010. Archived from the original on November 17, 2010. Retrieved 6 April 2016.
  15. iCE65™ P-Series Ultra Low-Power mobileFPGA™ Family v1.31. SiliconBlue Technologies. 22 April 2011.
  16. 1 2 3 "Lattice Announces Production Release Of iCE40 Los Angeles LP-Series And HX-Series mobileFPGA Device Families". Lattice Semiconductor. 8 May 2012. Archived from the original on March 31, 2016. Retrieved 5 April 2016.
  17. 1 2 3 "Lattice Semiconductor Launches iCE40 Ultra™ Platform for Wearable Device Development". Lattice Semiconductor. 1 December 2015. Archived from the original on March 31, 2016. Retrieved 5 April 2016.
  18. 1 2 "Lattice Semiconductor’s New iCE40 UltraLite Device Enables OEMs to Accelerate Time-to-Market of Feature-Rich Mobile Devices". Lattice Semiconductor. 3 February 2015. Archived from the original on March 31, 2016. Retrieved 5 April 2016.
  19. TN 1288 - iCE40 LED Driver Usage Guide. Lattice Semiconductor. 2014.
  20. "2015 Winners :: Elektra Awards". Electronics Weekly. Archived from the original on April 5, 2016. Retrieved 5 April 2016.
  21. "2012 Winners :: Elektra Awards". Electronics Weekly. Archived from the original on April 6, 2016. Retrieved 6 April 2016.
  22. "ZTE Chooses Lattice Semiconductor for Feature Differentiation and Integration on Star 2 Smartphone". Reuters. 23 June 2015. Retrieved 6 April 2016.

See also

This article is issued from Wikipedia - version of the Sunday, May 01, 2016. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.