The Flash Center Software, offered by Total Phase, allows users to easily and quickly program I2C and SPI EEPROM and Flash memories devices. It is intended to be used with our host adapter tools, including the Promira Serial Platform, Cheetah SPI Host Adapter, and Aardvark I2C/SPI Host Adapter.
Memory programming can be useful for a variety of applications, including testing and prototyping products or mass programming hundreds of devices with the same contents within production line settings. The Flash Center Software offers different operations to program, verify, read, and erase memory devices. In this blog, we’ll provide insight into these operations and how to use them.
The Flash Center Software offers an easy-to-use interface to interact with the host adapters tools and memory devices to read/write/erase data, as well as view the details for every operation performed.
The Flash Center Software’s main window is divided into seven major sections:
To perform any of the operations, users first need to connect their adapter to the Flash Center Software. To do so, first connect the adapter(s) to the computer via the included USB cable. Users can then connect the adapter(s) to the software by clicking Adapters in the top menu. A list of available adapters will be displayed in this window. After clicking “Add,” the adapter(s) will appear in the Connected Adapters panel.
One instance of the Flash Center Software can be used to control multiple adapters. Take a look at how this can be done here.
Total Phase offers three different host adapters for I2C and SPI programming: the Aardvark I2C/SPI Host Adapter, the Cheetah SPI Host Adapter, and the Promira Serial Platform. For a comparison of these tools and their features and capabilities, please see our I2C/SPI Product Guide. The Promira Serial Platform is our premier serial device that offers advanced features for flexibility in different environments. Take a look at why this tool is essential to the embedded engineer.
Next, users should select the target device they are looking to program by selecting the "Target" icon within the top toolbar and select File | Choose Target, or pressing the shortcut sequence Ctrl+T.
The Flash Center Software natively supports various memory devices from a range of manufacturers. Select the part in the dialog by selecting the device type, manufacturer, and part number and then selecting OK.
Users can also add devices if their part is not already included in the built-in library by creating an XML file. Instructions for this can be found here.
All of the memory operations can be found as buttons within the top toolbar or these same operations can be accessed through the menu bar.
Memory operations are multi-threaded, meaning that an operation in progress on one device is independent of a simultaneous operation on another device.
Users can view the status of the different operations in progress. The larger status bar at the top of the dialog shows total program progress while the smaller status bars show the progress of each adapter connected to the software.
If a target device has been selected and adapters are connected, the "Read Device" toolbar icon will be displayed. Clicking this button will reveal the contents of the selected device and will replace the current contents in the data buffer. If multiple devices are selected, a dialog will appear where users can specify which device should be used to perform the read.
The Program + Verify cycle writes data to one or more attached memory devices and then reads back the data to verify it for correctness.
The Program + Verify cycle can be selected by either clicking the toolbar icon, selecting Operations | Program + Verify from the menu, or pressing the shortcut sequence Ctrl+P.
Note: For this operation, an erase cycle will be performed first on all SPI Flash devices. The erase will cover only those sectors which will be written.
In order to perform all programming operations within the Flash Center Software, at least one adapter needs to be connected, a Flash device must be selected, and there needs to be data in the data buffer. To load data into the data buffer, users can import pre-configured hex, S-record, or binary files through the Data window. Users can also edit the data directly with the built-in hex editor.
The Program cycle writes data to the device, but does not perform the verification step. Requirements are the same as for Program + Verify.
The Program cycle can be selected by either clicking the toolbar icon, selecting Operations | Program from the menu, or pressing the shortcut sequence Ctrl+G.
Like the Program + Verify cycle, an erase cycle will be performed first for SPI Flash devices.
The Program (No Erase) cycle is a special mode for SPI Flash devices. It writes data to the device, but does not perform an erase cycle like with other operations. This operation can be useful when programming multiple memory images to the device.
Because the device may have been programmed prior to this operation, it does not perform the verification step. Requirements are the same as for Program + Verify.
The Program cycle can be selected either by clicking the toolbar icon, selecting Operations | Program (No Erase) from the menu, or pressing the shortcut sequence Ctrl+M.
The Verify cycle is used to verify the contents of the selected devices against the contents of the data buffer.
The Verify cycle can be selected either by clicking the toolbar icon, selecting Operations | Verify from the menu, or pressing the shortcut sequence Ctrl+Y.
The Erase cycle is used to erase the entire contents of a memory device or a portion of it. For partial erasure, the Erase Parameters dialog can be used to specify the start addresses and length as either a decimal value or as a hexadecimal value with the "0x" prefix.
If a device does not have an erase instruction, zeros are written to the specified range within the device. Otherwise, check the memory device manual for erase behavior.
The Erase cycle can be selected either by clicking the toolbar icon, selecting Operations | Erase from the menu, or pressing the shortcut sequence Ctrl+E. The erase cycle can be selected even if there is no data in the Hex Editor.
To see the Promira Serial Platform programming a memory device in the Flash Center Software, take a look at our demo video:
Programming SPI Flash Memory with the Promira Serial Platform
The Flash Center Software offers an easy way for engineers to perform various operations to their memory devices, including programming data, verifying the contents, and erasing I2C- and SPI-based memory chips as needed. This can be helpful for engineers in various product development and production applications.