Hardware/FPGAEBS/Configuration

From UIT
(Difference between revisions)
Jump to: navigation, search
(Flash Writing)
m (FPGA Configuration)
 
(9 intermediate revisions by 2 users not shown)
Line 3: Line 3:
 
= General =
 
= General =
 
After designing and simulating your design based on [[Components/Designs/VHDL_template|VHDL Template Design]], you have to prepare it:
 
After designing and simulating your design based on [[Components/Designs/VHDL_template|VHDL Template Design]], you have to prepare it:
# In HDL-Designer: Perform Task Flow '''Prepare for Synthesis'''
+
== In HDL-Designer ==
## Generates all VHDL Files
+
{{TaskBox|content=Perform Task Flow '''Prepare for Synthesis'''}}
## Concatenates them into a single VHDL File
+
# Generates all VHDL Files
## Trims work libraries
+
# Concatenates them into a single VHDL File (<code><library>\concat\concatenated.vhd</code>)
# In HDL-Designer: Perform Task Flow '''Xilinx Project Navigator'''
+
# Trims work libraries (<library>\concat\<designName>.vhd)
## Updates the ISE (*.xise) Project file
+
{{TaskBox|content=Perform Task Flow '''Xilinx Project Navigator'''}}
## Launches ISE
+
# Updates the ISE (*.xise) Project file
# In ISE: Perform Task '''Generate Programming File'''
+
# Launches ISE
## Runs Synthesis
+
==In ISE==
## Runs P&R
+
{{TaskBox|content=Perform Task '''Generate Programming File'''}}
## Generate Programming File *.bit
+
# Runs Synthesis
# In ISE: Perform Task '''Configure Target Device'''
+
# Runs P&R
## Launches Impact
+
# Generate Programming File *.bit
 +
{{TaskBox|content=Perform Task '''Configure Target Device'''}}
 +
# Launches Impact
  
 
After that you can either way [[Hardware/FPGAEBS/Configuration#FPGA_Configuration|download the file directly to the FPGA]] or [[Hardware/FPGAEBS/Configuration#Flash_Writing|create another file to download to the non-volatile memory]].
 
After that you can either way [[Hardware/FPGAEBS/Configuration#FPGA_Configuration|download the file directly to the FPGA]] or [[Hardware/FPGAEBS/Configuration#Flash_Writing|create another file to download to the non-volatile memory]].
  
 
= FPGA Configuration =
 
= FPGA Configuration =
<!--
 
 
If you want to program the FPGA directly, you can use the previously generated *.bit file.  
 
If you want to program the FPGA directly, you can use the previously generated *.bit file.  
This programmation works with the '''Amontec Chameleon Programmer''' but the '''Official Xilinx USB programmer''' is recommended
 
  
 
Execute the following steps:
 
Execute the following steps:
Line 30: Line 30:
 
##:[[File:fpgarack_impact_1_1.png|FPGA prog 1]]
 
##:[[File:fpgarack_impact_1_1.png|FPGA prog 1]]
 
# Left click on the FPGA symbol (turns green)
 
# Left click on the FPGA symbol (turns green)
#:[[File:fpgarack_impact_1_2.png|FPGA prog 2]]
+
#:[[File:fpgaebs_impact_1_2.png|FPGA prog 2]]
 
# Right click on the FPGA
 
# Right click on the FPGA
 
## Choose '''Assign new configuration file'''
 
## Choose '''Assign new configuration file'''
##:[[File:fpgarack_impact_1_3.png|FPGA prog 3]]
+
##:[[File:fpgaebs_impact_1_3.png|FPGA prog 3]]
## Choose previously generated *.bit file
+
## Choose previously generated *.bit file in folder <code>Xilinx</code>
 
## Choose No for Attaching SPI or BPI PROM
 
## Choose No for Attaching SPI or BPI PROM
##:[[File:fpgarack_impact_1_4.png|FPGA prog 4]]
+
##:[[File:fpgaebs_impact_1_4.png|FPGA prog 4]]
 
# Right click on the FPGA
 
# Right click on the FPGA
 
## Choose Program
 
## Choose Program
##:[[File:fpgarack_impact_1_5.png|FPGA prog 5]]
+
##:[[File:fpgaebs_impact_1_5.png|FPGA prog 5]]
 
## Choose Verify if you like (not necessary)
 
## Choose Verify if you like (not necessary)
##:[[File:fpgarack_impact_1_6.png|FPGA prog 6]]
+
##:[[File:fpgaebs_impact_1_6.png|FPGA prog 6]]
 
# DONE
 
# DONE
#:[[File:fpgarack_impact_1_7.png|FPGA prog 7]]
+
#:[[File:fpgaebs_impact_1_7.png|FPGA prog 7]]
-->
+
  
 
= Flash Writing =
 
= Flash Writing =
 +
To program the ''xcf04s'' Platform Flash In-System Programmable Configuration PROM you need to turn your ''*.bit'' into an ''*.mcs'' file. This file can then be used to program the Platform Flash through JTAG.
  
To program the ''xcf04s'' Platform Flash In-System Programmable Configuration PROM you need to turn your *.bit into an *.mcs file. This file can then be used to program the Platform Flash through JTAG.
+
Flash programming works '''ONLY with Official Xilinx USB Programmer'''
  
<!--Flash programming works '''ONLY with Official Xilinx USB Programmer'''
 
 
== Create Flash *.mcs File ==
 
== Create Flash *.mcs File ==
 
# Choose Task '''Create PROM File'''
 
# Choose Task '''Create PROM File'''
 
#:[[File:fpgarack_impact_2_1.png|FPGA Flash prog 1]]
 
#:[[File:fpgarack_impact_2_1.png|FPGA Flash prog 1]]
 
# Dialog '''File PROM Formatter''' opens
 
# Dialog '''File PROM Formatter''' opens
## Choose '''Configure Single FPGA'''
+
## Choose '''Xilinx Flash/PROM'''
## Click the First Arrow
+
## Click the first green arrow
## Choose Target FPGA '''Spartan 6'''
+
## Choose ''Device (bits)'' '''xcf04s [4M]'''
## Choose Storage Device (Bytes) '''128M'''
+
 
## Click '''Add Storage Device'''
 
## Click '''Add Storage Device'''
## Click the Second Arrow
+
## Click the second green arrow
## Choose your Output File Name
+
## Choose your ''Output File Name''
## Choose your Output File Location
+
## Choose your ''Output File Location''
## Set File Format to '''MCS'''
+
## Click ''OK''
## Set Data Width to '''x16'''
+
<!--
## Click OK
+
 
##:[[File:fpgarack_impact_2_2.png|FPGA Flash prog 2]]
 
##:[[File:fpgarack_impact_2_2.png|FPGA Flash prog 2]]
 
# Click OK on Add Device Dialog
 
# Click OK on Add Device Dialog
Line 102: Line 99:
 
#:[[File:fpgarack_impact_2_10.png|FPGA Flash prog 11]]
 
#:[[File:fpgarack_impact_2_10.png|FPGA Flash prog 11]]
 
-->
 
-->
 
 
[[Category:Hardware]]
 
[[Category:Hardware]]
 
[[Category:FPGAEBS]]
 
[[Category:FPGAEBS]]

Latest revision as of 15:01, 20 January 2015

Contents

General

After designing and simulating your design based on VHDL Template Design, you have to prepare it:

In HDL-Designer

View-pim-tasks.png

Perform Task Flow Prepare for Synthesis

  1. Generates all VHDL Files
  2. Concatenates them into a single VHDL File (<library>\concat\concatenated.vhd)
  3. Trims work libraries (<library>\concat\<designName>.vhd)

View-pim-tasks.png

Perform Task Flow Xilinx Project Navigator

  1. Updates the ISE (*.xise) Project file
  2. Launches ISE

In ISE

View-pim-tasks.png

Perform Task Generate Programming File

  1. Runs Synthesis
  2. Runs P&R
  3. Generate Programming File *.bit

View-pim-tasks.png

Perform Task Configure Target Device

  1. Launches Impact

After that you can either way download the file directly to the FPGA or create another file to download to the non-volatile memory.

FPGA Configuration

If you want to program the FPGA directly, you can use the previously generated *.bit file.

Execute the following steps:

  1. Perform a boundary Scan
    1. Initialise Chain (CTRL + i)
      FPGA prog 1
  2. Left click on the FPGA symbol (turns green)
    FPGA prog 2
  3. Right click on the FPGA
    1. Choose Assign new configuration file
      FPGA prog 3
    2. Choose previously generated *.bit file in folder Xilinx
    3. Choose No for Attaching SPI or BPI PROM
      FPGA prog 4
  4. Right click on the FPGA
    1. Choose Program
      FPGA prog 5
    2. Choose Verify if you like (not necessary)
      FPGA prog 6
  5. DONE
    FPGA prog 7

Flash Writing

To program the xcf04s Platform Flash In-System Programmable Configuration PROM you need to turn your *.bit into an *.mcs file. This file can then be used to program the Platform Flash through JTAG.

Flash programming works ONLY with Official Xilinx USB Programmer

Create Flash *.mcs File

  1. Choose Task Create PROM File
    FPGA Flash prog 1
  2. Dialog File PROM Formatter opens
    1. Choose Xilinx Flash/PROM
    2. Click the first green arrow
    3. Choose Device (bits) xcf04s [4M]
    4. Click Add Storage Device
    5. Click the second green arrow
    6. Choose your Output File Name
    7. Choose your Output File Location
    8. Click OK
Personal tools
Namespaces
Variants
Actions
Navigation
Browse
Toolbox