Skip to content

Quick Start Guide for Basic Programming Operations

For Cyclone LC, Cyclone FX

Cyclone programmers use compiled programming image files to program target devices. This guide walks the user through setting up and programming a simple programming image with the Cyclone by completing the following steps.

  • Installing the Cyclone software
  • Setting up the Cyclone hardware
  • Creating a stand-alone programming image
  • Deploying the image to a Cyclone
  • Launching Cyclone programming

This guide is intended as a convenient supplement to this Cyclone User Manual, which contains in-depth information about the topics covered here and much more.

Note

There have been significant changes in the image creation and deployment process, including a revised Cyclone Image Creation Utility, and the addition of a new Build & Deploy Utility to the previous workflow. Users who are familiar with previous versions of the Image Creation Utility should be sure to note these changes.

Installing the Cyclone Software

First, the Cyclone software should be installed on the user’s PC. It is located on the Support & Downloads tab on the pemicro.com Cyclone product page, or can be downloaded directly from https://www.pemicro.com/downloads/download_file.cfm?download_id=481.

cyclone_software_mac-linux

For macOS/Linux, the .TGZ file is located on the Support & Downloads tab, or it may be downloaded directly from https://www.pemicro.com/downloads/download_file.cfm?download_id=577.

Once the software is downloaded, the user should install it on their PC. If Cyclone software is already installed on the PC, it is recommended that the old installation be removed before the user installs the latest software.

Setting Up the Cyclone Hardware

  1. Configure Cyclone power settings

    The Cyclone has several different power configurations. The label on the bottom of the Cyclone indicates the appropriate Jumper settings for each. The user should install the Jumpers as indicated for their desired power configuration.

    The Jumpers are located underneath the Cyclone’s access panel. They are labeled “Power Jumpers.” and numbered from 1-4. The Cyclone-LC-ARM is shown in the example below; the jumper location will be similar for all Cyclone models.

    power_jumper_settings
    power_jumpers

    If power is provided via the Cyclone, the user may need to configure the programming image accordingly. Image creation and configuration is discussed in Creating A Programming Image.

    For more information on the various power configurations, the user should refer to their Cyclone’s User Manual. There is also a blog post that covers this topic at: http://www.pemicro.com/blog/index.cfm?post_id=121.

  2. Connect Cyclone to a PC (for programming image setup)

    The Cyclone programmer should be connected to the PC via USB, Serial, Ethernet, or (if supported) WiFi. Cables for these options are included with the Cyclone.

    Note

    An Ethernet connection requires IP setup on the Cyclone unit; please refer to the Ethernet Configuration chapter for more information.

    communications_ports

  3. Connect Cyclone to target

    A ribbon cable should be connected from the appropriate Cyclone header (located under the Cyclone’s access panel) to the header for your target device. Ribbon cables are provided with the Cyclone.

    universal_fx_headers_NEW acp_fx_headers_NEW

  4. Plug in power to the Cyclone

    The provided power supply should be plugged into the System Power jack of the Cyclone programmer. Other power connections should be made according to the power configuration selected in Step 1.

    system_power

    On power-up, the user may need to agree to a firmware update on the Cyclone unit.

Creating A Programming Image

A programming image is the result of preprocessing the programming algorithms, data to be programmed, programming options, and scripted programming commands into a compiled file that is ready to program the target. This image can then be loaded onto the Cyclone and used to program, without need for the Cyclone to be connected to a PC.

The Cyclone Image Creation Utility, shown below, allows the user to configure and save programming images. A simple programming image can be created in 6 steps:

  1. Run Cyclone Image Creation Utility
  2. Select Device
  3. Set Up Programming Sequence
  4. Add Basic Programming Commands
  5. Configure Additional Settings
  6. Enter The Build Description

ICUInitialScreenBlank

The following instructions walk the user through each of these steps:

  1. Run Cyclone Image Creation Utility (ARM devices)

    CreateImage.exe is in the “ImageCreation” folder, in the location where the Cyclone software was installed. For an in-depth description of the Cyclone Image Creation Utility, see Cyclone Image Creation Utility.

    Note

    For non-ARM devices the user should instead run CreateImageClassic.exe. This utility is not documented separately as it is extremely similar to CreateImage.exe, just organized differently. Please follow the same concepts and procedures as below.

  2. Select Device

    Select New Device is used to choose the target device, and then the specific device or architecture.

    ICUSelectDevice

  3. Programming Sequence Setup

    The user should double-click on CM in the Programming Sequence window to choose the appropriate Algorithm for the target device. They can navigate to the algorithm using the dialog provided.

    ICUChooseModule

    Based on the algorithm that was selected, additional commands will be made available in the box of programming commands on the left.

    The user should then double-click on the QO command to add an Object File to the Queue.

    ICUQOCommand

  4. Adding Basic Programming Commands

    The user should then add other basic programming commands, using the list of commands on the left side of the Programming Sequence area. The arrow and buttons allow the user to add, remove, and re-sequence the commands, in the box on the right. As an example, some basic commands might be

    a. Erase (if needed)
    b. Program
    c. Verify (if needed)
    

    ICUAddProgrammingCommands

    Note

    Launch Script Wizard can also be used to quickly complete Steps 3 and 4 (not available for NXP i.MX devices).

  5. Power & Communication Settings

    Click into the Power and Communications tab (to the right of the Image Script tab). Here the user should then specify any other settings that the programming image should contain, if applicable, in order to program correctly, such as:

    a. Communication SWD vs JTAG
    b. Shift frequency
    c. Target Power and Voltage Settings
    d. Reset Signal Settings
    e. Trim Control
    

    ICUPowerAndCommTab

  6. Enter The Build Description

    The user must enter a description of this Build in the Build Description field before proceeding. They may hit the Build Image & Deploy button to proceed.

    ICUBuildDescription

Deploying The Image To A Cyclone

When the user hits the Build Image & Deploy button the Image Deployment Manager will launch. If the user has completed the basic configurationm of the image they can move on to the Deploy phase, which allows additional configuration and then deployment of the Image.

  1. Launch the Image Deployment Manager

    As mentioned above, to complete basic configuration and then build and deploy the programming image, click the “Build Image & Deploy” button in the lower right corner of the Image Creation Utility. This launches the Image Deployment Manager.

  2. Select Build/Deploy Method

    For the purposes of this Quick Start Guide, in the Image Binary Deployment Details section of the Deploy tab, select “Deploy Image to Cyclone now via USB/Ethernet/WiFi.” The options in the other sections here are beyond the scope of this guide and are explained in later chapters of the user manual.

  3. Add Image Description

    The Image Description box should be populated by the Build Description text that was entered previously. The user may alter it if they wish to give the Image a different name.

  4. Deploy image to Cyclone

    For this quick start guide we will save the programming image to the Cyclone’s internal memory. The user may hit the Deploy Image to Cyclone Button. This will launch the Cyclone Control GUI which will deploy the programming image to the user’s Cyclone.

    ICUDeployImageToCyclone

  5. Connect to a Cyclone

    The top section of the Cyclone Control GUI displays a drop-down box which should contain any Cyclones that are detected.

    GUIConnect

    Select your Cyclone from the list and click Connect. If your Cyclone is not displayed in the drop-down list, please make sure that you have correctly followed the instructions above to connect your Cyclone, and make sure that the Cyclone is powered on. Use the button on the left to refresh the display.

  6. Complete Deployment (Store Image)

    Once connected to the Cyclone, the Images tab of the Cyclone Control GUI displays any images currently stored in the Cyclone’s memory. The image that the user is saving will be displayed at the bottom of the list and highlighted in blue text, with a Status that reads “Ready to Store”.

    GUIImageUpdateBefore

    Click the button that says “Click to Apply Changes and Exit.” Congrats! If no errors occur, the Cyclone Control GUI will close and the image will be successfully stored on the Cyclone, ready to be programmed.

Additional and Advanced Features

  1. The user may choose to create a cloud-connected programming image. A cloud-connected image is tracked by the PEcloud platform. The image itself may either be deployed to a Cyclone locally, or securely to appropriately provisioned Cyclones via the cloud (the latter requires an additional layer of encryption during deployment, easily configured via the included Cyclone Image Creation Utility).

    The benefit of a cloud-connected image is that Cyclone programming may be started, stopped, updated, etc., via the PEcloud online interface. It also automatically enables restrictions on programming count and date range, and allows additional encryption of the image. Extensive activity logging is also available.

  2. Depending on their model/licenses, some Cyclone programmers can also take advantage of several advanced features that are beyond the scope of this Getting Started guide, such as RSA/AES encryption of programming images and programming restrictions on images; note that these security features are enabled automatically when creating cloud-connected images due to the strict security requirements of PEcloud.

  3. Cyclones with USB Expansion Port support may also use a barcode scanner to launch programming.

Launching Cyclone Programming

The newly loaded programming image should have become the image selected by the Cyclone by default. If this is not the case, use the Cyclone’s menu (MENU -> Select Local or Cloud-Connected Image-> Local Programming Images) to select your image from those saved in memory.

There are three ways to launch programming.

  1. Cyclone Start Button Press - The user simply presses the Start button located on top of the Cyclone programmer.

    start_button

  2. Cyclone Control Console (command-line utility) - The user writes a script that specifies parameters and initiates programming using the command line. More information is available in Cyclone Control Console.

  3. SDK - The SDK is a software library that is used in conjunction with the user’s own code. The user writes a custom application that uses this library of functions to launch programming. More information is available in Cyclone Control SDK.

    The “Success” or “Error” LED will illuminate to let the user know the programming result.

    Note

    If programming is unsuccessful when using this quick start procedure, the user may instead wish to use the included PROG software for their target device. The PROG software allows the user to manually walk through the programming procedure step by step, which may help determine which part of setup or programming function is causing difficulty.