Microsemi Flash Programming Frequently Asked Questions
General
1. How many ways can flash devices be programmed?
Flash devices can be programmed in the system board or using a programmer prior to installation in the board. Depending on the device family, multiple methods are available for system board level programming.
2. How do I program ProASIC devices?
ProASIC® (A500K) devices can be programmed using FlashPro (discontinued) and the Silicon Sculptor III programmer, using an ISP adapter module after mounting them in the system board. They can also be programmed using the Silicon Sculptor III programmer and a package specific adapter module before mounting in the board. Refer to AC188: In-System Programming ProASIC Devices application note for more details.
3. How do I program ProASICPLUS devices?
ProASICPLUS® (APA) devices can be programmed using FlashPro (discontinued), FlashPro Lite, and Silicon Sculptor III after mounting them in the system board. To program using the Silicon Sculptor III programmer, a package-specific adapter module is required. Refer to AC309: In-System Programming ProASICPLUS Devices application note for more details.
ProASICPLUS devices can be also programmed through a microprocessor or microcontroller using a STAPL player or Microsemi's DirectC method. Refer to AC208: Performing Microprocessor Programming for Microsemi ProASICPLUS Devices application note for more details. To program the ProASICPLUS device through USB, QuickFlash Programmer can be used as alternative. Microsemi has tested the functionality of QuickFlash Programmer. However, Microsemi does not support programming or functional failures resulted by using third part programmers.
4. How do I program new generation flash devices?
New generation flash devices (such as ProASIC3/E, ProASIC3L, IGLOO®, Fusion, SmartFusion®, IGLOO2, and SmartFusion2) can be programmed in the system board using the FlashPro3, FlashPro4 or FlashPro5 programmers. They can also be programmed using a Silicon Sculptor III programmer and a package-specific adapter module before mounting in the board. They can also be programmed through a microprocessor or microcontroller using Microsemi's DirectC method. For more details, refer to the DirectC page.
SmartFusion devices can be programmed by several other methods, which are documented in AC362: SmartFusion cSoC: Programming FPGA Fabric and eNVM Using In-Application Programming Interface application note.
SmartFusion2 / IGLOO2 devices can be programmed by several other methods, which are documented in UG0451: IGLOO2 and SmartFusion2 Programming User Guide.
RTG4 devices can programmed by several other methods, which are documented in UG0602: RTG4 FPGA Programming User Guide.
5. What is the typical programming time for SmartFusion2/IGLOO2 devices?
Programming times may vary with the Host PC Processor, RAM, OS, Speed, and so on. Refer the Knowledge Base Article.
6. Is there any way to permanently disable Auto programming mode in SmartFusion2 / IGLOO2 devices?
By default Auto programming is enabled in the SmartFusion2 / IGLOO2 devices. To disable Auto programming permanently, the user must check Auto Programming and Permanent Security in Security Policy Manager (SPM) of Libero SoC as shown in Figure 1.

Comprehensive user's guide for Microsemi FlashPro Express v11.5. Covers software installation, interface navigation, secure job programming, chain programming, Tcl commands, electrical specifications, and troubleshooting for Microsemi's FPGA programming solutions.

Comprehensive user's guide detailing the architecture, features, and usage of Microsemi's IGLOO FPGA fabric, including low-power modes, global resources, clock conditioning, memory, I/O, programming, and security. Covers device architecture, Flash*Freeze technology, global resources, clock conditioning circuits, SRAM and FIFO memories, I/O structures and software control, DDR support, programming methods, security features, and power-up/down behavior.

Comprehensive installation guide for Microsemi FlashPro software and hardware, covering system requirements, USB and parallel port driver installation, and troubleshooting for various Microsemi programmers.

A comprehensive catalog of Microsemi's FPGA and SoC products, highlighting features, specifications, and applications for various industries including defense, automotive, industrial, and consumer markets.

This application note from Microsemi details methods for initializing Static Random Access Memory (SRAM) in SmartFusion2 SoC FPGAs using embedded Non-Volatile Memory (eNVM). It covers initialization via Cortex-M3 processor or fabric master logic, providing design examples and implementation guidance for Libero SoC v11.7.

This demo guide, DG0611, provides comprehensive instructions for implementing the JESD204B high-speed serial interface standard using Microsemi's SmartFusion2 SoC FPGA. It covers design requirements, simulation, hardware setup, GUI installation, and device programming, serving as a reference for high-speed serial interface applications.

Microsemi's AC460 Application Note provides a comprehensive guide on building MIPI CSI-2 receive solutions using SmartFusion2 and IGLOO2 FPGAs. It covers design overview, Libero implementation details, limitations, and resource utilization, offering insights for developers.

Technical advisory CN20022 from Microsemi addresses a Static Timing Analysis (STA) coverage issue in Libero SoC software affecting SmartFusion2, IGLOO2, RTG4, and PolarFire product families. Details impact and required actions.