wiki:Good Design Flow Practice for XPS8.0

Version 5 (modified by snovich, 18 years ago) (diff)

--

Good Design Flow Practice for XPS 8.1i

Preface

Xilinx Platform Studio grants users many of the same freedoms any other programs would; naming files whatever you want, saving files wherever you want, placing directories wherever you want, etc. etc. etc.

Despite being granted such freedoms, however, XPS can be extremely picky about how things are named and where they are placed -- even the order in which you generate different parts of the system. That said, this section will contain a system of steps and notes, that although some of which may not be required, will help ensure that you avoid any unnecessary errors that might set you back hours or days.

1: Project Creation

  • Make sure the directory structure and folder that will hold your system file has no spaces or underscores.

Good example:

c:\projects\users\scott\MGTLoopback1\system.xps

Bad example:

c:\XPS_Projects\users\scott\MGT Loopback Demo\system.xps 
  • Keep the system name "system.xps," as there's no good reason to modify it

2: Base System Builder

  • Choose the latest WARP board revision
  • Choose a processor speed such that it is twice the Bus Speed (Not that for ethernet, the Bus must run at least at 65 mHz)
  • Make sure caching is disabled
  • use the maximum amount of RAM you can pick
  • Keep peripherals on their default busses
  • For Serial/RS232 peripheral, choose a baud-rate at or under 57600
  • Choose to create a memory_test. It will generate a properly working linker-script (which you should never touch unless you have to) -- you can rename this file, the project, and fill your code into it.

3: Applying Custom Peripherals from the IP catalog into your project

  • Drag the peripheral into system assembly (or double-click it)
  • In the Bus Interface tab, make sure to fill in it's bubble for it's Bus
  • Connect the Ports as desired in the Ports tab
  • Addresses View (IMPORTANT): LOCK all addresses that are already in place, THEN proceed to click Generate Addresses. The reason for this, is because there have been instances in which hardware has ceased to respond properly or memory overlap errors occur...
  • Fill in UCF file with pin-mappings if needed

4: System Generation

  • Generate Netlist (Hardware menu)
  • Generate Bitstream (Hardware menu)
  • Generate Libraries and BSPs (Software menu) -- see Frequently Asked Questions for errors that might occur here
  • Build All User Applications (Software menu)
  • Update Bitstream (Device Configuration)

5: Making Updates and Changes

A: Changes to Hardware

If you modify a peripheral's HDL or data-files (such as its MPD)...

  • Close all documents and directories containing generated files
  • Clean hardware (Hardware menu)
  • Rescan user repositories (Project menu)
  • Update bitstream

B: Changes to Software

  • Update the bistream