LatticeXP2 Configuration Encryption and Security Usage Guide

Size: px
Start display at page:

Download "LatticeXP2 Configuration Encryption and Security Usage Guide"

Transcription

1 May 2008 Introduction Technical Note TN1142 Unlike a volatile FPGA, which requires an external boot-prom to store configuration data, the LatticeXP2 devices are non-volatile and have on-chip configuration Flash. Once programmed (either by JTAG or SPI port), this data is a part of the FPGA device and can be used to self-download the SRAM portion without requiring any additional external boot prom. Hence it is inherently more secure than volatile FPGAs. Like the LatticeECP2/M, the LatticeXP2 family also offers the 128-bit Advanced Encryption Standard (AES) to protect the externally stored programming file. The user has total control over the 128-bit key and no special voltages are required to maintain the key within the FPGA. Additional security enhancement for the LatticeXP2 includes: A security bit for the Configuration and User Flash One-Time-Programmable (OTP) or Permanent Lock capability Flash Protect This document explains the encryption and security features and how to take advantage of them. Encryption/Decryption Flow The LatticeXP2 supports both encrypted and non-encrypted JEDEC files. Since the non-encrypted flow is covered in Lattice technical note TN1141, LatticeXP2 sysconfig Usage Guide, this document will concentrate on the additional steps needed for the encrypted flow. The encrypted flow adds only two steps to the normal FPGA design flow, encryption of the configuration JEDEC file and programming the encryption key into the LatticeXP2. Figure 15-1 is a block diagram describing the LatticeXP2 encryption data paths that will be used throughout this document. Figure Encryption Block Diagram along with Flash Protect Encryption and Security Usage Guide SRAM AES Encrypt Enable 128-Bit Flash Decryption Key Encrypted Data AES Data Shift Register Decrypted Data CRC 64-Bit Flash Enable Key Flash Protect Key Configuration Flash Program Enable Configuration Flash Encrypting the JEDEC File As with any other Lattice FPGA design flow, the design engineer must first create the design using the isplever design tool suite. The design is synthesized, mapped, placed and routed, and verified. Once the user is satisfied with the design, the final JEDEC file is ready for FPGA programming. This final JEDEC file is used to secure the design Corp. All Lattice trademarks, registered trademarks, patents, and disclaimers are as listed at All other brand or product names are trademarks or registered trademarks of their respective holders. The specifications and information herein are subject to change without notice tn1142_01.1

2 The JEDEC file can be encrypted using isplever by going to the Tools -> Security Settings pull-down menu or by using the Universal File Writer (ispufw), which is part of the Lattice ispvm System tool suite. isplever Flow 1. As mentioned above, to access the LatticeXP2 security setting GUI, go to Project Navigator -> Tools -> Security Settings. A password is required before entering the security features GUI section of the LatticeXP2. Figure Password Prompt with Default Password 2. This Password GUI prompt will automatically show the default password LATTICESEMI. The default password is in place for users who do not want to remember any administrative password, and especially for those who want to use the CONFIG_SECURE setting only. Users have the option of changing the password. It is the user s responsibility to track all the keys and passwords since they will not be stored in the design files. Figure Security Settings 3. Once the user has selected security features, encrypted files will then be generated. ispvm Flow 1. Start ispufw. You can start ispufw from the Start -> Programs -> menu in Windows. You will see a window that looks similar to Figure You can also launch the ispufw from the ispvm GUI by clicking on the UFW button on the toolbar (shown in Figure 15-5). Select JEDEC as the output file format, as shown in Figure

3 Figure Universal File Writer Figure ispvm Main Window 2. Double-click on Input Data File and browse to the non-encrypted JEDEC file created using isplever. Double-click on Output Data File and select an output file name. Right-click on Encryption and select ON. Right-click on Encryption Key and select Edit Encryption Key. You will see a window that looks similar to Figure Figure Encryption Dialog Window 3. Enter the desired 128-bit encryption key. The key can be entered in Hexadecimal or ASCII. Hex supports 0 through F and is not case sensitive. ASCII supports all printable (ASCII codes 30 through 126) characters. You may also import the 128-bit encryption key from the <Project_Name>.bek generated by isplever. To do so, click on the Load From File button shown in Figure Click On OK to go back to the main ispufw window. Note: Be sure to remember this key, as Lattice cannot recover lost keys. 4. From the ispufw menu bar click on Project -> Generate or the icon to create the encrypted JEDEC file. 5. Before the LatticeXP2 can configure with the encrypted JEDEC file, the 128-bit encryption key used to encrypt the JEDEC file must be programmed into the LatticeXP2 device. 15-3

4 Programming the Key into the Device The next step is to program the 128-bit encryption key into the LatticeXP2. Note that this step is separated from JEDEC file encryption to allow flexibility in the manufacturing flow. This flow adds to design security and it allows the user to control over-building of a design. Over-building occurs when a third party builds more boards than are authorized and sells them to grey market customers. If the key is programmed at the factory, then the factory controls the number of working boards that enter the market. The LatticeXP2 will only configure from a file that has been encrypted with the same 128-bit encryption key that is programmed into the LatticeXP2. To program the 128-bit encryption key into the LatticeXP2, proceed as follows. 1. Start ispvm. You can start ispvm from the Start -> Programs -> menu in Windows or from the isplever GUI. You will see a window that looks similar to Figure Attach a Lattice ispdownload cable from a PC to the JTAG connector wired to the LatticeXP2. Note: The 128-bit encryption key can only be programmed into the LatticeXP2 using the JTAG port. 3. Apply power to the board. 4. If the window does not show the board s JTAG chain, then proceed as follows. Otherwise, proceed to step number 5. a. Click the SCAN button in the toolbar to find all Lattice devices in the JTAG chain. The chain shown in Figure 15-5 has only one device, the LatticeXP2. Figure ispvm Device information GUI 5. Double-click on the line in the chain containing the LatticeXP2. This will open the Device Information window (see Figure 15-7). From the Device Access Options drop-down box, select Advanced Security Mode, then click on the Security Key button to the right. The window will look similar to Figure

5 Figure ispvm Flash Protection Key 6. Enter the 64-bit Flash Protect key or load it from the file (<Project_Name>.key). You can save this to a file by clicking Save to File button. Once you click Apply, you will be asked to enter the 128-bit encryption as shown in Figure Figure ispvm Encryption Key GUI 7. Now enter the desired 128-bit encryption key. The key can be entered in Hexadecimal or ASCII. Hex supports 0 through F and is not case sensitive. ASCII supports all printable (ASCII codes 30 through 126) characters. This key must be the same as the key used to encrypt the JEDEC file. The LatticeXP2 will only configure from an encrypted JEDEC file whose 128-bit encryption key matches the one loaded into the LatticeXP

6 Note: Be sure to remember this key. Once the Key Lock is programmed, cannot read back the128-bit encryption key. a. The 128-bit encryption key can be saved to a file using the Save to File button. The 128-bit encryption key will be encrypted using an 8-character file password that the user selects. The name of the file will be <Project_Name>.bek. In the future, instead of entering the 128-bit key, simply click on Load from File and provide the file password. 8. Programming the Key Lock secures the 128-bit encryption key. When satisfied, type Yes to confirm, and then click Apply. Once the Key Lock is programmed and the device is power cycled, the 128-bit encryption key cannot be read out of the device. 9. From the main ispvm window (Figure 15-5) click on the green GO button on the toolbar to program the 128-bit encryption key into the LatticeXP2. When complete, the LatticeXP2 will only configure from a JEDEC file encrypted with a key that exactly matches the one just programmed. Security Bit for the Configuration and User Flash (CONFIG_SECURE) The CONFIG_SECURE setting is located in the GUI setting (Figure 15-3) mentioned in the previous section. After security for the device is selected, NO readback operation is supported through the sysconfig port or ispjtag port of the general contents. This is considered the lowest level of security. Advanced Security Settings Selecting Advanced Security Settings will enable more security features. One-Time Programmable (OTP), Flash Protect and Encryption as shown in Figure These settings are mutually exclusive. Selecting one or the other may nullify other fields that are not required for each particular security settings. One-Time Programmable (OTP) or Permanent Lock One-Time Programmable (OTP) or permanent lock is another feature that provides the highest level of security. This form of security is currently available only for LatticeXP2 devices. If OTP fuses are programmed it permanently prevents write access to the devices contents. Users must be aware before using this feature that once the OTP is programmed it is not possible to erase or reprogram the device or its security settings. As the name implies, it is a one-time event only. Table 15-1 specifies the behavior of the chip when security bit and the OTP bit are programmed. Table Security and OTP Bit Settings Security CONFIG_SECURE OTP Bit Action Re-Program Read Back Erase 0 0 Do nothing Yes Yes Yes 0 1 Inhibit Erase or Programming No Yes No 1 0 Inhibit Readback Yes No Yes 1 1 Inhibit Erase, Programming or Readback No No No 15-6

7 Flash Protect Figure Flash Protect Key Input for Programming TDI 64-Bit Key Shift Register TDO Output for Fuse Pattern Verification Capture for Fuse Pattern Verify. Disabled when Key Lock Fuse. Flash Program Enable Update for Fuse Pattern Programming Flash Enable Fuses The next highest level of security for the LatticeXP2 is the 64-bit Flash Protect feature. The 64-bit Flash protect key is used to protect the embedded configuration flash from accidental or unauthorized erasure or reprogramming. This feature does not prevent the device from read back. Therefore, user is given the option to turn ON the CONFIG_SECURE feature. The default 64-bit Flash protect key is _LATTICE. Users can also enter their own 64-bit Flash protect key. If there is an existing 64-bit Flash protect key in the Flash Protect key file, the 64-bit Flash protect key can be imported for the Flash Protect key file (<Project_Name>.key). The ispvm GUI will display the Flash Protect key in the same format selected when the 64-bit Flash Protect key was created. Users have the option to change the 64-bit Flash protect key using the default by clicking on the Default Key button. The ispvm software will automatically check the LatticeXP2 device to see if the Flash Protect feature is enabled. If it is, ispvm software will prompt the user to enter the 64-bit Flash Protect key before performing an erase or programming operation. If the 64-bit Flash Protect programmed in the device matches the 64-bit Flash Protect key entered in the ispvm GUI, the device can be erased and reprogrammed. If the keys are lost, the programmed device will be an OTP device. The re-programming of the device requires the user to enter the 64-bit Flash Protect key programmed into the device first. If it matches the 64-bit key (stored in the device), the device will enter the programming mode for erasure and re-programming of the Flash as well as the SRAM fuses. Note: The Flash Protect key cannot be the same as the Encryption Key. The Flash Protect key is 64 bits and the encryption key is 128 bits. Changing Flash Protect If the user decides to change the key, it can be done in the key field. The newly created Flash Protect key file (<Project_Name>.key) contains the new 64-bit Flash Protect key and is now ready to be programmed into a device. The user can also revert back to using the default password by clicking on the Default button next to the Flash Protect Key. The default password is _LATTICE. 15-7

8 Figure Encryption/Flash Protect Advanced Feature Encryption The LatticeXP2 family of devices uses the 128-bit Advanced Encryption Standard (AES) security mechanism and has a built-in AES decryption engine hardwired in the core and embedded in the device. The JEDEC file must be encrypted with the same 128-bit AES encryption key programmed into the device in order to configure it. The file is shifted into the device s JTAG port using ispvm System software. The device decrypts the JEDEC file using the 128-bit encryption key programmed into the device. The device can only be programmed if the 128-bit encryption key programmed into the device matches the 128-bit encryption key used to encrypt the JEDEC file. Usercode in Encrypted Files Note: The usercode is stored as a comment and will be programmed into the device s usercode. If the USERCODE is used as a custom device ID (MY_ASSP), the U field will still be used in the JEDEC file for the CRC and the value of the Custom Device ID set by the user will be part of the comment field. The USERCODE will be available for readback regardless of the encryption setting (the USERCODE is always available for readback). Readback of the decrypted JEDEC file from a device through the JTAG port is not permitted because the security fuse is programmed when Encryption/Flash Protect is selected. Encryption will not affect the functionality of the SED Decryption Flow The decryption flow is a much simpler process. Start by programming the device with the 128-bit Encryption Key and the 64-bit Flash Protect Key fuses. Once the keys are programmed, the device can then be programmed with the encrypted JEDEC file. 15-8

9 Figure Decryption Flow Programming the Keys 1 JEDEC File Programming 2 Start Start Erase All Configuration Flash Fuses Enter 64-Bit Key Code Read In 64-Bit Flash Protect Key Enter 128-Bit Key Code Program, Verify Decryption Key Fuses Erase the Configuration Flash, Usercode Enter 64-Bit Key Code Program, Verify Flash Protect Key Fuses Program Configuration Flash Encrypted JEDEC File Program, Key Lock (Security) Fuse(s) Program Usercode Done Verify Usercode Program Done Fuse Notes: 1. Supported on JTAG port. 2. Supported on both JTAG port and slave SPI interface. Program Security Fuse Legend Optional step, dependent on user selection. Done Verifying a Configuration If the Flash is programmed directly, the data is first decrypted and then the FPGA performs a CRC on the data. If all CRCs pass, configuration was successful. If a CRC does not pass, the Done fuse is not programmed. References Lattice Technical Note TN1141, LatticeXP2 sysconfig Usage Guide Federal Information Processing Standard Publication 197, Nov. 26, Advanced Encryption Standard (AES) Technical Support Assistance Hotline: LATTICE (North America) (Outside North America) techsupport@latticesemi.com Internet: Revision History Date Version Change Summary February Initial release. May Updated isplever Security Settings screen shot. 15-9

LatticeXP2 Dual Boot Usage Guide

LatticeXP2 Dual Boot Usage Guide May 2007 Introduction Technical Note TN1144 Complementing its internal Flash configuration memory, the LatticeXP2 also provides support for inexpensive SPI Flash devices. This provides the ability to use

More information

Using the LatticeMico8 Microcontroller with the LatticeXP Evaluation Board

Using the LatticeMico8 Microcontroller with the LatticeXP Evaluation Board July 2007 Introduction Technical Note TN1095 The LatticeMico8 is a flexible 8-bit microcontroller optimized for Lattice's leading edge families. This document describes the operation and use of a demonstration

More information

ISP Engineering Kit Model 300

ISP Engineering Kit Model 300 TM ISP Engineering Kit Model 300 December 2013 Model 300 Overview The Model 300 programmer supports JTAG programming of all Lattice devices that feature non-volatile configuration elements. The Model 300

More information

LatticeXP2 sysconfig Usage Guide

LatticeXP2 sysconfig Usage Guide January 2014 Introduction Technical Note TN1141 The memory in the LatticeXP2 FPGAs is built using Flash cells, along with SRAM cells, so that configuration memory can be loaded automatically at power-up,

More information

Minimizing System Interruption During Configuration Using TransFR Technology

Minimizing System Interruption During Configuration Using TransFR Technology October 2015 Technical Note TN1087 Introduction One of the fundamental benefits of using an FPGA is the ability to reconfigure its functionality without removing the device from the system. A number of

More information

LatticeXP2 Soft Error Detection (SED) Usage Guide

LatticeXP2 Soft Error Detection (SED) Usage Guide Detection (SED) Usage Guide October 2012 Introduction Technical Note TN1130 Soft errors occur when high-energy charged particles alter the stored charge in a memory cell in an electronic circuit. The phenomenon

More information

LatticeECP2/M Soft Error Detection (SED) Usage Guide

LatticeECP2/M Soft Error Detection (SED) Usage Guide Detection (SED) Usage Guide July 2008 Introduction Technical Note TN1113 Soft errors occur when high-energy charged particles alter the stored charge in a memory cell in an electronic circuit. The phenomenon

More information

LatticeECP3, LatticeECP2/M, ECP5 and ECP5-5G Dual Boot and Multiple Boot Feature

LatticeECP3, LatticeECP2/M, ECP5 and ECP5-5G Dual Boot and Multiple Boot Feature LatticeECP3, LatticeECP2/M, ECP5 and ECP5-5G Dual Boot and Multiple Boot Feature October 2015 Introduction Technical Note TN1216 One of the biggest risks in field upgrade applications is disruption during

More information

SPI Serial Flash Programming Using ispjtag on LatticeECP/EC FPGAs

SPI Serial Flash Programming Using ispjtag on LatticeECP/EC FPGAs October 2005 Introduction Technical Note TN1078 Like all SRAM FPGAs the LatticeECP and LatticeEC devices need to be configured at power-up. This configuration can be done via: 1. Serial Peripheral Interface

More information

Dual Boot and Background Programming with Platform Manager 2

Dual Boot and Background Programming with Platform Manager 2 Dual Boot and Background Programming March 2015 Technical te TN1284 Introduction The Platform Manager 2 is a fast-reacting, programmable logic based hardware management controller. Platform Manager 2 is

More information

LatticeXP2 Slave SPI Port User s Guide

LatticeXP2 Slave SPI Port User s Guide June 2012 Introduction LatticeXP2 Slave SPI Port User s Guide Technical te TN1213 The Serial Peripheral Interface (SPI) is the industry standard interface that can be found on most CPU and serial Flash

More information

LatticeXP2 Hardware Checklist

LatticeXP2 Hardware Checklist September 2013 Technical Note TN1143 Introduction Starting a complex system with a large FPGA hardware design requires that the FPGA designer pay attention to the critical hardware implementation to increase

More information

Power Estimation and Management for LatticeECP/EC and LatticeXP Devices

Power Estimation and Management for LatticeECP/EC and LatticeXP Devices for LatticeECP/EC and LatticeXP Devices September 2012 Introduction Technical Note TN1052 One of the requirements when using FPGA devices is the ability to calculate power dissipation for a particular

More information

ispvm System Software ISP TM Programming Software

ispvm System Software ISP TM Programming Software October 2002 ispvm System Software ISP TM Programming Software Data Sheet Features Serial and Turbo ispdownload of All Lattice ISP Devices Non-Lattice Device Programming Through SVF File Program Entire

More information

MachXO3 Soft Error Detection (SED)/ Correction (SEC) Usage Guide

MachXO3 Soft Error Detection (SED)/ Correction (SEC) Usage Guide March 2017 Technical Note TN1292 Introduction Memory errors can occur when high-energy charged particles alter the stored charge in a memory cell in an electronic circuit. The phenomenon first became an

More information

Reference Design RD1065

Reference Design RD1065 April 011 Reference Design RD1065 Introduction Most microprocessors have a General Purpose Input/Output (GPIO) interface to communicate with external devices and peripherals through various protocols These

More information

Importing HDL Files with Platform Manager 2

Importing HDL Files with Platform Manager 2 August 2014 Introduction Technical Note TN1287 The Platform Manager 2 is a fast-reacting, programmable logic based hardware management controller. Platform Manager 2 is an integrated solution combining

More information

LatticeSC/M Broadcom HiGig+ 12 Gbps Physical Layer Interoperability Over CX-4

LatticeSC/M Broadcom HiGig+ 12 Gbps Physical Layer Interoperability Over CX-4 LatticeSC/M Broadcom HiGig+ 12 Gbps August 2007 Technical Note TN1154 Introduction This technical note describes a physical layer HiGig+ 12 Gbps interoperability test between a LatticeSC/M device and the

More information

LatticeSCM SPI4.2 Interoperability with PMC-Sierra PM3388

LatticeSCM SPI4.2 Interoperability with PMC-Sierra PM3388 August 2006 Technical Note TN1121 Introduction The System Packet Interface, Level 4, Phase 2 (SPI4.2) is a system level interface, published in 2001 by the Optical Internetworking Forum (OIF), for packet

More information

LatticeECP2/M Density Migration

LatticeECP2/M Density Migration August 2007 Introduction Technical Note TN1160 Due to the programmable nature of FPGA devices, parts are chosen based on estimates of a system s design requirements. Choices of which FPGA to implement

More information

Power Estimation and Management for LatticeXP2 Devices

Power Estimation and Management for LatticeXP2 Devices February 2007 Introduction Technical Note TN1139 One requirement for design engineers using programmable devices is the ability to calculate the power dissipation for a particular device used on a board.

More information

BSCAN2 Multiple Scan Port Linker

BSCAN2 Multiple Scan Port Linker March 2015 Introduction Reference Design RD1002 According to the IEEE 1149.1 Boundary Scan System, every complex system can have more than one boundary scan compliant scan port. This design adds the capability

More information

ice40 UltraPlus Image Sensor Elliptical Crypto Engine (ECC) Demo - Radiant Software User Guide

ice40 UltraPlus Image Sensor Elliptical Crypto Engine (ECC) Demo - Radiant Software User Guide ice40 UltraPlus Image Sensor Elliptical Crypto Engine (ECC) Demo - Radiant Software FPGA-UG-02060 Version 1.0 June 2018 Contents Acronyms in This Document... 3 1. Introduction... 4 2. Functional Description...

More information

Programming the isppac-powr1220at8 in a JTAG Chain Using the ATDI Pin

Programming the isppac-powr1220at8 in a JTAG Chain Using the ATDI Pin in a Chain Using the A Pin February 2011 Application Note AN6068 Introduction The primary function of the isppac -POWR is to monitor, measure, trim/margin and to sequence the application of power to electronic

More information

Programming External SPI Flash through JTAG for ECP5/ECP5-5G Technical Note

Programming External SPI Flash through JTAG for ECP5/ECP5-5G Technical Note Programming External SPI Flash through JTAG for ECP5/ECP5-5G FPGA-TN-02050 Version 1.0 October 2017 Contents Acronyms in This Document... 4 1. Introduction... 5 1.1. Features... 5 2. Programming External

More information

MachXO2 SED Usage Guide

MachXO2 SED Usage Guide January 2017 Introduction Technical Note TN1206 Memory errors can occur when high-energy charged particles alter the stored charge in a memory cell in an electronic circuit. The phenomenon first became

More information

LCMXO3LF-9400C SED/SEC Demo

LCMXO3LF-9400C SED/SEC Demo FPGA-UG-02023 Version 1.0 June 2017 Contents 1. Introduction... 4 1.1. Demo Design Overview... 4 1.2. MachXO3-9400 Development Board and Resources... 5 2. Functional Description... 6 3. Demo Package...

More information

LatticeSC/Marvell. XAUI Interoperability. Introduction. XAUI Interoperability

LatticeSC/Marvell. XAUI Interoperability. Introduction. XAUI Interoperability LatticeSC/Marvell XAUI Interoperability November 2006 Introduction Technical Note TN1128 The document provides a report on a XAUI interoperability test between a LatticeSC device and the Marvell 88X2040

More information

isppac-powr607 Evaluation Board User s Guide

isppac-powr607 Evaluation Board User s Guide isppac-powr0 Evaluation Board User s Guide May 00 Revision: EB8_0.0 isppac-powr0 Introduction Lattice Semiconductor s Power Manager II isppac -POWR0 device simplifies power supply design by integrating

More information

ispdownload Cables User s Guide

ispdownload Cables User s Guide ispdownload Cables User s Guide October 2012 UG48_24.5 Features Support for all Lattice programmable products 1.2V to 5V programming Ideal for design prototyping and debugging Connect to multiple PC interfaces

More information

Revision: 11/30/ E Main Suite D Pullman, WA (509) Voice and Fax

Revision: 11/30/ E Main Suite D Pullman, WA (509) Voice and Fax Digilent Adept Suite User s Manual Revision: 11/30/06 215 E Main Suite D Pullman, WA 99163 (509) 334 6306 Voice and Fax Overview To install the Digilent Adept Suite, open the Adept Setup file and follow

More information

isppac-powr1208p1 Evaluation Board PAC-POWR1208P1-EV

isppac-powr1208p1 Evaluation Board PAC-POWR1208P1-EV March 2007 Introduction Application Note AN6059 The Lattice Semiconductor isppac -POWR1208P1 In-System-Programmable Analog Circuit allows designers to implement both the analog and digital functions of

More information

8b/10b Encoder/Decoder

8b/10b Encoder/Decoder 8b/b Encoder/Decoder February 22 Introduction Reference Design RD2 Many serial data transmission standards utilize 8b/b encoding to ensure sufficient data transitions for clock recovery. This reference

More information

Platform Manager 2 I 2 C Demo Design and GUI

Platform Manager 2 I 2 C Demo Design and GUI User s Guide August 2014 UG59_1.1 Introduction The Platform Manager 2 is a fast-reacting, programmable logic based hardware management controller. Platform Manager 2 is an integrated solution combining

More information

Actel FlashPro v3.3. User s Guide. Windows

Actel FlashPro v3.3. User s Guide. Windows Actel FlashPro v3.3 User s Guide Windows Actel Corporation, Mountain View, CA 94043-4655 2004 Actel Corporation. All rights reserved. Printed in the United States of America Part Number: 5029138-9 Release:

More information

Power Estimation and Management for MachXO Devices

Power Estimation and Management for MachXO Devices September 2007 Technical Note TN1090 Introduction One requirement for design engineers using programmable devices is to be able to calculate the power dissipation for a particular device used on a board.

More information

Powering Up and Programming the ProcessorPM isppac-powr605

Powering Up and Programming the ProcessorPM isppac-powr605 the ProcessorPM isppac-powr605 April 2011 Application Note AN6082 Introduction This application note discusses the states of the ProcessorPM isppac -POWR605 device s open drain logic outputs (IN_OUT1 to

More information

Mixed-Language Simulation with Lattice IP Designs Using Active-HDL

Mixed-Language Simulation with Lattice IP Designs Using Active-HDL February 2007 Introduction Technical Note TN1146 Lattice provides pre-tested, reusable functions that can be easily integrated into designs; thereby, allowing the designer to focus on their unique system

More information

Using Proprietary Lattice ISP Devices

Using Proprietary Lattice ISP Devices August 2001 Introduction This document describes how to program Lattice s In-System Programmable (ISP ) devices that utilize the proprietary Lattice ISP State Machine for programming, rather than the IEEE

More information

MachXO2 Programming and Configuration Usage Guide

MachXO2 Programming and Configuration Usage Guide July 2017 Introduction Technical te TN1204 The MachXO2 is an SRAM-based Programmable Logic Device that includes an internal Flash memory which makes the MachXO2 appear to be a non-volatile device. The

More information

Scalable Low-Voltage Signaling with LatticeSC/M Devices

Scalable Low-Voltage Signaling with LatticeSC/M Devices Scalable LowVoltage Signaling July 2011 Application Note AN8085 Introduction Differential signaling has become increasingly popular in network and telecommunications markets for a number of reasons. It

More information

LatticeSC/M 2.5GbE Physical/MAC Layer Interoperability Over CX-4

LatticeSC/M 2.5GbE Physical/MAC Layer Interoperability Over CX-4 LatticeSC/M 2.5GbE Physical/MAC Layer Interoperability Over CX-4 October 2007 Technical Note TN1164 Introduction This technical note describes a 1000BASE-X physical/mac layer Gigabit Ethernet (GbE) interoperability

More information

Low-Cost Serial RapidIO to TI 6482 Digital Signal Processor Interoperability with LatticeECP3

Low-Cost Serial RapidIO to TI 6482 Digital Signal Processor Interoperability with LatticeECP3 October 2010 Introduction Technical Note TN1214 The RapidIO Interconnect Architecture is an industry-standard, packet-based interconnect technology that provides a reliable, high-performance interconnect

More information

Quick Start Guide. for isplever Software. isplever Project Navigator

Quick Start Guide. for isplever Software. isplever Project Navigator Quick Start Guide for isplever Software This guide offers a quick overview of using isplever software to implement a design in a Lattice Semiconductor device. For more information, check the isplever Help

More information

Version March 7, 2012

Version March 7, 2012 PCAM Installer User's Manual Version 3.0.6 March 7, 2012 GPI360, Inc. IT121107-1 1 GPI360 Inc. PCAM Installer User s Manual Document Part Number: IT121107-1 Document Version: 3.0.6 Revised: April 13, 2012

More information

White Paper FPGA Design Security Issues: Using the ispxpga Family of FPGAs to Achieve High Design Security

White Paper FPGA Design Security Issues: Using the ispxpga Family of FPGAs to Achieve High Design Security White Paper FPGA Design Security Issues: Using the ispxpga Family of FPGAs to Achieve High Design Security December 2003 5555 Northeast Moore Court Hillsboro, Oregon 97124 USA Telephone: (503) 268-8000

More information

i_csn i_wr i_rd i_cpol i_cpha i_lsb_first i_data [15:0] o_data [15:0] o_tx_ready o_rx_ready o_rx_error o_tx_error o_tx_ack o_tx_no_ack

i_csn i_wr i_rd i_cpol i_cpha i_lsb_first i_data [15:0] o_data [15:0] o_tx_ready o_rx_ready o_rx_error o_tx_error o_tx_ack o_tx_no_ack October 2012 Introduction Reference Design RD1142 The Serial Peripheral Interface (SPI) is used primarily for synchronous serial communication between a host processor and its peripherals. The SPI bus

More information

Programming in the MAXQ environment

Programming in the MAXQ environment AVAILABLE The in-circuit debugging and program-loading features of the MAXQ2000 microcontroller combine with IAR s Embedded Workbench development environment to provide C or assembly-level application

More information

MachXO2 Low Power Control Demo User s Guide

MachXO2 Low Power Control Demo User s Guide User s Guide April 2012 UG58_01.0 Introduction MachXO2 Low Power Control Demo There are many power saving features in the MachXO2 family of devices, such as bandgap, on-chip oscillator, PLL, etc. The purpose

More information

Fail-Safe Startup Sequencing During Field Upgrades with Platform Manager

Fail-Safe Startup Sequencing During Field Upgrades with Platform Manager Fail-Safe Startup Sequencing During Field Upgrades June 2012 Application Note AN6088 Introduction The Platform Manager device family is a single-chip, fully-integrated solution for supervisory and control

More information

LED1 LED2. Capacitive Touch Sense Controller LED3 LED4

LED1 LED2. Capacitive Touch Sense Controller LED3 LED4 October 2012 Introduction Reference Design RD1136 Capacitive sensing is a technology based on capacitive coupling which takes human body capacitance as input. Capacitive touch sensors are used in many

More information

LatticeECP3 XAUI Demo Design User s Guide

LatticeECP3 XAUI Demo Design User s Guide LatticeECP3 XAUI Demo Design User s Guide June 2011 UG23_01.3 Introduction This document provides technical information and instructions on using the LatticeECP3 XAUI Demo Design. The demo has been designed

More information

LatticeECP2M PCI Express Development Kit User s Guide

LatticeECP2M PCI Express Development Kit User s Guide LatticeECP2M PCI Express Development Kit User s Guide Version 1.1 For use with the LatticeECP2M PCIe Solutions Board Lattice Semiconductor Corporation 5555 NE Moore Court Hillsboro, OR 97124 (503) 268-8000

More information

IP Installer User's Manual

IP Installer User's Manual IP Installer User's Manual Version 3.0.1 January 21, 2014 Opticom Technologies Inc. O1401-00 O1401-00 1 Opticom Technologies Inc. IP Installer User s Manual Document Part Number: O1401-00 Document Version:

More information

SP605 MultiBoot Design

SP605 MultiBoot Design SP605 MultiBoot Design October 2010 Copyright 2010 Xilinx XTP059 Revision History Date Version Description 10/05/10 12.3 Recompiled under 12.3. 07/23/10 12.2 Recompiled under 12.2. Copyright 2010 Xilinx,

More information

Token Guide for KT-4 for

Token Guide for KT-4 for Token Guide for KT-4 for Powerful Authentication Management for Service Providers and Enterprises Authentication Service Delivery Made EASY Token Guide for KT-4 Copyright Copyright 2011. CRYPTOCard Inc.

More information

Figure 1. JTAGAVRU1 application The JTAGAVRU1 is supported by AVR Studio. Updated versions of AVR Studio is found on

Figure 1. JTAGAVRU1 application The JTAGAVRU1 is supported by AVR Studio. Updated versions of AVR Studio is found on JTAG AVR Emulator through USB Main Features AVR Studio Compatible Supports AVR Devices with JTAG Interface Emulates Digital and Analog On-Chip Functions Data and Program Memory Breakpoints Supports Assembler

More information

USB 3.1 Type-C Hardware Checklist

USB 3.1 Type-C Hardware Checklist USB 3.1 Type-C Hardware Checklist July 2015 Technical Note TN1299 Introduction While designing USB 3.1 Type-C solution hardware using LIF-UC devices (LIF-UC110, LIF-UC120, LIF- UC140), designers must pay

More information

BitLocker to Go: Encryption for personal USB

BitLocker to Go: Encryption for personal USB BitLocker to Go: Encryption for personal USB [Windows 10] Encryption is an effective method of protecting data stored on portable USB devices such as flash drives and external hard drives. Encryption encodes

More information

Lattice Semiconductor Design Floorplanning

Lattice Semiconductor Design Floorplanning September 2012 Introduction Technical Note TN1010 Lattice Semiconductor s isplever software, together with Lattice Semiconductor s catalog of programmable devices, provides options to help meet design

More information

Enhanced Closed-loop Trim with I 2 C Control for Platform Manager Devices

Enhanced Closed-loop Trim with I 2 C Control for Platform Manager Devices Enhanced Closed-loop Trim with I 2 C Control for Platform Manager Devices December 2010 Introduction Reference Design RD1078 Modern microprocessors and FPGAs require accurate power supply voltages, often

More information

It is well understood that the minimum number of check bits required for single bit error correction is specified by the relationship: D + P P

It is well understood that the minimum number of check bits required for single bit error correction is specified by the relationship: D + P P October 2012 Reference Design RD1025 Introduction This reference design implements an Error Correction Code (ECC) module for the LatticeEC and LatticeSC FPGA families that can be applied to increase memory

More information

Identity Finder: Managing Your Results

Identity Finder: Managing Your Results Updated 1/30/2012 Identity Finder: Managing Your Results The most important part of running Identity Finder is determining the most effective and secure way of managing the search results. Be sure to carefully

More information

On the Fly Reconfiguration with CoolRunner-II CPLDs

On the Fly Reconfiguration with CoolRunner-II CPLDs Application Note: CoolRunner-II CPLDs XAPP388 (v1.2) May 15, 2003 R On the Fly Reconfiguration with CoolRunner-II CPLDs Summary This application notes describes the CoolRunner -II CPLD capability called

More information

11. SEU Mitigation in Stratix IV Devices

11. SEU Mitigation in Stratix IV Devices 11. SEU Mitigation in Stratix IV Devices February 2011 SIV51011-3.2 SIV51011-3.2 This chapter describes how to use the error detection cyclical redundancy check (CRC) feature when a Stratix IV device is

More information

Deploying LatticeMico32 Software to Non-Volatile Memory

Deploying LatticeMico32 Software to Non-Volatile Memory February 2008 Introduction Technical Note TN1173 The LatticeMico32 Software Developers Guide describes how to deploy firmware onto hardware that provides both non-volatile memory and volatile memory. The

More information

Xilinx ISE8.1 and Spartan-3 Tutorial (Prepared by Kahraman Akdemir based on Professor Duckworth's Tutorials updated September 2006)

Xilinx ISE8.1 and Spartan-3 Tutorial (Prepared by Kahraman Akdemir based on Professor Duckworth's Tutorials updated September 2006) Xilinx ISE8.1 and Spartan-3 Tutorial (Prepared by Kahraman Akdemir based on Professor Duckworth's Tutorials updated September 2006) 1 Part1) Starting a new project Simple 3-to-8 Decoder Start the Xilinx

More information

Programming Cables User Guide

Programming Cables User Guide FPGA-UG-02042 Version 26.1 May 2018 Contents 1. Features... 4 2. Programming Cables... 4 3. Programming Cable Pin Definitions... 5 4. Programming Software... 7 5. Target Board Design Considerations...

More information

AN 341: Using the Design Security Feature in Stratix II and Stratix II GX Devices

AN 341: Using the Design Security Feature in Stratix II and Stratix II GX Devices AN 341: Using the Design Security Feature in Stratix II and Stratix II GX Devices August 2009 AN-341-2.3 Introduction In the highly competitive commercial and military environments, design security is

More information

isplever 5.0 Installation Notice

isplever 5.0 Installation Notice isplever 5.0 Installation Notice UNIX Technical Support Line 1-800-LATTICE or (408) 826-6002 Web Update To view the most current version of this document, go to www.latticesemi.com. Lattice Semiconductor

More information

Lattice isplevercore IP Tutorial

Lattice isplevercore IP Tutorial Lattice isplevercore IP Tutorial Lattice Semiconductor Corporation 5555 NE Moore Court Hillsboro, OR 97124 (503) 268-8000 June 2006 Copyright Copyright 2006 Lattice Semiconductor Corporation. This document

More information

IMPORTANT! Files saved to this USB are NOT automatically encrypted. You must use the SecureLock II software interface to secure your files.

IMPORTANT! Files saved to this USB are NOT automatically encrypted. You must use the SecureLock II software interface to secure your files. IMPORTANT! Files saved to this USB are NOT automatically encrypted. You must use the SecureLock II software interface to secure your files. SecureLock II User Manual Encryption Application for USB Flash

More information

Aldec Active-HDL Lattice Edition Floating License Setup (Windows/Linux)

Aldec Active-HDL Lattice Edition Floating License Setup (Windows/Linux) June 2008 Introduction Application Note AN8079 This application note complements the isplever 7.1 Installation Notice (Windows XP / Windows 2000 / Windows Vista (32-bit) or Linux) and describes how to

More information

9. SEU Mitigation in Cyclone IV Devices

9. SEU Mitigation in Cyclone IV Devices 9. SEU Mitigation in Cyclone IV Devices May 2013 CYIV-51009-1.3 CYIV-51009-1.3 This chapter describes the cyclical redundancy check (CRC) error detection feature in user mode and how to recover from soft

More information

SC-3 USB Token. QUICK Reference. Copyright 2007 CRYPTOCard Corporation All Rights Reserved

SC-3 USB Token. QUICK Reference. Copyright 2007 CRYPTOCard Corporation All Rights Reserved SC-3 USB Token QUICK Reference Copyright 2007 CRYPTOCard Corporation All Rights Reserved 091807 http://www.cryptocard.com Table of Contents OVERVIEW... 1 OPERATING MODES & OPTIONS... 2 USING THE SC-3 USB

More information

Configuring the Xilinx Spartan-6 LX9 MicroBoard

Configuring the Xilinx Spartan-6 LX9 MicroBoard Configuring the Xilinx Spartan-6 LX9 MicroBoard Version 1.3 Table of Contents Table of Contents... 2 Table of Figures... 3 Revision History... 4 Overview... 5 Configuration and Programming via the on-board

More information

AN2685 Application note

AN2685 Application note Application note How to migrate from S29GL128P to M29W128GH/L Flash memories Introduction The objective of this application note is to explain how to migrate an application based on the S29GL128P Flash

More information

FaxFinder Fax Servers

FaxFinder Fax Servers FaxFinder Fax Servers Models: FF130 FF230 FF430 FF830 Client User Guide FaxFinder Client User Guide Fax Client Software for FaxFinder Series PN S000460B, Version B Copyright This publication may not be

More information

Programming Cables User s Guide

Programming Cables User s Guide Programming Cables User s Guide January_2015 UG48_24.7 Features Support for all Lattice programmable products 1.2 V to 3.3 V programming (HW-USBN-2B) 1.2 V to 5 V programming (All other cables) Ideal for

More information

ORCA Series Boundary Scan

ORCA Series Boundary Scan August 24 Introduction ORCA Series Boundary Scan Application Note AN873 The increasing complexity of integrated circuits and packages has increased the difficulty of testing printed-circuit boards. As

More information

Section II. Software Settings

Section II. Software Settings Section II. Software Settings Configuration options can be set in the Quartus II and MAX+PLUS II development software. You can also specify which configuration file formats Quartus II or MAX+PLUS II generates.

More information

DDR2 Demo for the LatticeECP3 Serial Protocol Board User s Guide

DDR2 Demo for the LatticeECP3 Serial Protocol Board User s Guide DDR2 Demo for the LatticeECP3 Serial Protocol Board User s Guide December 2011 UG49_01.0 Introduction This document provides technical information and instructions for using the LatticeECP3 DDR2 demo design.

More information

Programmer for flash micro computers. User s Manual

Programmer for flash micro computers. User s Manual Programmer for flash micro computers User s Manual TESSERA Technology INC. 6th edition 9/2008 Table of Contents Chapter 1 Summary 2 1.1 System Configuration 3 Chapter 2 Installation 4 2.1 System Requirement

More information

Platform Flash In-System Programmable Configuration PROMs

Platform Flash In-System Programmable Configuration PROMs R 0 Platform Flash In-System Programmable Configuration PROMs DS123 (v2.2) December 15, 2003 0 0 Preliminary Product Specification Features In-System Programmable PROMs for Configuration of Xilinx FPGAs

More information

FPGA Configuration (1C) Young Won Lim 12/1/13

FPGA Configuration (1C) Young Won Lim 12/1/13 (1C) Young Won Lim 12/1/13 Copyright (c) 2011-2013 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2

More information

Legal Notices. AccessData Corp.

Legal Notices. AccessData Corp. Legal Notices AccessData Corp. makes no representations or warranties with respect to the contents or use of this documentation, and specifically disclaims any express or implied warranties of merchantability

More information

How to Install, Configure and Use sftp (Windows Version)

How to Install, Configure and Use sftp (Windows Version) How to Install, Configure and Use sftp (Windows Version) The sftp secure File Transfer Protocol allows you to transfer patient datasets to and from IDT s server securely. All data transfers are encrypted

More information

Creating Interactive PDF Forms

Creating Interactive PDF Forms Creating Interactive PDF Forms Using Adobe Acrobat X Pro for the Mac University Information Technology Services Training, Outreach, Learning Technologies and Video Production Copyright 2012 KSU Department

More information

Color Space Converter

Color Space Converter March 2009 Reference Design RD1047 Introduction s (CSC) are used in video and image display systems including televisions, computer monitors, color printers, video telephony and surveillance systems. CSCs

More information

ispclock5620a Evaluation Board: isppac-clk5620a-ev1

ispclock5620a Evaluation Board: isppac-clk5620a-ev1 March 2007 Introduction Application Note AN6072 The ispclock 5620A In-System-Programmable Analog Circuit allows designers to implement clock distribution networks supporting multiple, synchronized output

More information

SP605 MultiBoot Design

SP605 MultiBoot Design SP605 MultiBoot Design December 2009 Copyright 2009 Xilinx XTP059 Note: This presentation applies to the SP605 Overview Spartan-6 MultiBoot Capability Xilinx SP605 Board Software Requirements SP605 Setup

More information

SP601 MultiBoot Design

SP601 MultiBoot Design SP601 MultiBoot Design December 2009 Copyright 2009 Xilinx XTP038 Note: This presentation applies to the SP601 Overview Spartan-6 MultiBoot Capability Xilinx SP601 Board Software Requirements SP601 Setup

More information

Section 3. System Integration

Section 3. System Integration Section 3. System Integration This section includes the following chapters: Chapter 9, Configuration, Design Security, and Remote System Upgrades in the Cyclone III Device Family Chapter 10, Hot-Socketing

More information

MachXO Starter Evaluation Board User s Guide

MachXO Starter Evaluation Board User s Guide MachXO Starter Evaluation Board April 00 Revision: ebug_0. Introduction The Lattice provides a convenient platform to evaluate, test and debug user designs. The board features a Lattice MachXO cross-over

More information

SSD AES ENCRYPTION. Application Note. Document #AN0009 Viking SSD AES Encryption Rev. B. Purpose of this Document

SSD AES ENCRYPTION. Application Note. Document #AN0009 Viking SSD AES Encryption Rev. B. Purpose of this Document SSD AES ENCRYPTION Application Note Document #AN0009 Rev. B Purpose of this Document This application note was prepared to help OEM system designers evaluate the performance of Viking solid state drive

More information

Using Serial Flash on the Xilinx Spartan-3E Starter Board. Overview. Objectives. Version 8.1 February 23, 2006 Bryan H. Fletcher

Using Serial Flash on the Xilinx Spartan-3E Starter Board. Overview. Objectives. Version 8.1 February 23, 2006 Bryan H. Fletcher Using Serial Flash on the Xilinx Spartan-3E Starter Board Version 8.1 February 23, 2006 Bryan H. Fletcher Overview The Xilinx Spartan-3E FPGA features the ability to configure from standard serial flash

More information

UM0225 User manual. Configuration and programming software (CAPS) tool for STR9 families. Introduction

UM0225 User manual. Configuration and programming software (CAPS) tool for STR9 families. Introduction UM0225 User manual Configuration and programming software (CAPS) tool for STR9 families Introduction Configuration and Programming Software (CAPS) is the configuration software for the STR9 family microcontroller.

More information

NeuroStack Hardware Manual

NeuroStack Hardware Manual NeuroStack Hardware Manual Version 1.9 Revised 04/12/2016 NeuroStack is a product of General Vision, Inc. (GV) This manual is copyrighted and published by GV. All rights reserved. No parts of this work

More information

ThinkVantage Fingerprint Software

ThinkVantage Fingerprint Software ThinkVantage Fingerprint Software 12 2 1First Edition (February 2006) Copyright Lenovo 2006. Portions Copyright International Business Machines Corporation 2006. All rights reserved. U.S. GOVERNMENT

More information

Connecting Spansion SPI Serial Flash to Configure Altera FPGAs

Connecting Spansion SPI Serial Flash to Configure Altera FPGAs Connecting SPI Serial Flash to Configure Altera s Application By Frank Cirimele 1. Introduction Altera s are programmable logic devices used for basic logic functions, chip-to-chip connectivity, signal

More information