Abstract

This paper aims to simplify FPGA designs that incorporate Embedded Software Systems using a soft core Processor. It describes a simple solution to reduce the need of multiple non-volatile memory devices by using one SPI (Serial Peripheral Interface) Flash PROM for FPGA configuration data, software code (Processor applications), and miscellaneous user data. We have thus developed a design based on a MicroBlaze soft processor implemented on a Xilinx Spartan-6 FPGA SP605 Evaluation Kit. The hardware architecture with SPI flash was designed using the Xilinx Platform Studio (XPS) and the software applications, including the bootloader, was developed with Xilinx Software Development Kit (SDK). ISE Design Tools prepared by Xilinx Company, is employed to create the files used to program flash memory which are SREC (S-record) file associated with software code, Hexadecimal file for user data, and bootloader file to configure the FPGA and allows software applications stored in flash memory to be executed when the system is powered on. Reading access to the SPI Flash memory is simplified by the use of Xilinx In-System Flash (ISF) library.

Highlights

  • SRAM-FPGAs such as Spartan-6 from Xilinx are configured by loading application-specific configuration data into internal memory (CMOS Configuration Latches), it must be reconfigured after it is powered down

  • Spartan-6 can configure itself from an external nonvolatile memory device or they can be configured by an external smart source, such as a DSP processor, or microcontroller

  • In the Master Mode configuration [1], the FPGA automatically loads itself with configuration data from an external SPI (Serial Peripheral Interface) Flash PROM as shown in figure 1

Read more

Summary

INTRODUCTION

SRAM-FPGAs such as Spartan-6 from Xilinx are configured by loading application-specific configuration data (bitstream) into internal memory (CMOS Configuration Latches), it must be reconfigured after it is powered down. Many FPGA designs in space applications, automobiles, medical field and industrial control system, incorporate Embedded Software Systems using soft core Processor such as Microblaze and utilize external volatile memory to execute software code. This kind of system must include a non-volatile memory to store the software code and small amounts of user data. Our work is based on the concepts described in documentation of Xilinx and Avnet, namely, how to create a Microblaze design with AXI (Advanced eXtensible Interface) system [2][3][4] and how to bootload a software application in BPI (Byte Peripheral Interface) configuration mode and SPI configuration mode [5][6]

MB Winbond QUAD SPI Flash
HARDWARE DESIGN
SOFTWARE APPLICATIONS AND THEIR FLASH IMAGES
THE BOOTLOADER FILE
THE USER DATA FILE
PROGRAMMING THE SPI FLASH DEVICE
RESULTS AND DISCUSSIONS
VIII. CONCLUSION AND FUTUR WORKS
Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call