This website uses cookies. By using this site, you consent to the use of cookies. For more information, please take a look at our Privacy Policy.
Home > FPGA Technical Tutorials > Designing with Xilinx FPGAs Using Vivado > Vivado Design Tools > Project vs. Non-project Mode

TABLE OF CONTENTS

Xilinx FPGA FPGA Forum

Project vs. Non-project Mode

FONT SIZE : AAA

There are two primary ways to invoke design fl ows in Vivado—using a project or a non-project mode. In the fi rst case, you start by creating a project to manage all your design sources as well as output generated from executing design fl ows. When a project is created, Vivado creates a predetermined directory structure on disk, which contains folders for source fi les, your confi gurations, as well as output data. Once a project has been created, you can enter and leave the Vivado environment as needed, and each time you can start from where you left off, without having to start from scratch each time. The project-based environment supports the notion of runs which allow users to invoke design fl ows like synthesis and implementation. You are allowed to customize the design environment in multiple ways, and these confi gurations are also persisted in the project environment in the form of “metadata.” 

S. Chakraborty ( * )

Xilinx , Longmont , CO , USA

e-mail: sudipto@xilinx.com


© Springer International Publishing Switzerland 2017

S. Churiwala (ed.), Designing with Xilinx ® FPGAs,

DOI 10.1007/978-3-319-42438-5_2


The directory structure created for a project is as follows:

<project>/

<project>.xpr : the main project fi le in text format

<project>.srcs/ : directory for sources local to a project

<project>.ip_user_fi les/ : directory for user accessible IP fi les

<project>.runs/ : directory for output data from synth/impl

<project>.sim/ : directory for output data from simulation

<project>.hw/ : directory for hardware debug related data

<project>.cache/ : directory for locally cached data

<project>.ipdef/ : directory for local IP defi nitions

Not all of the above mentioned directories will always be created. For example, a Vivado project supports referring to design sources remotely from their original location or copying them locally inside the project directory structure, based on user preference. The <project>.srcs directory is only created if there are such local cop- ies of source fi les present. 

In the non-project mode, you interact more directly with the Vivado environment using lower level commands. This mode is called non-project because you do not directly create a project to get your design fl ows to complete. However, it is important to note that a project object does exist in this case also; it is created automatically to manage certain aspects of the design fl ows. This project object exists only in mem- ory while your session is active and does not create the on-disk structure described above. Since there is no automatic persistence of data on disk, all data is maintained only in memory and available only during the current session. Hence, you need to make sure that all necessary output is generated before you exit the current non- project session of Vivado. 

One interesting note here is that the project mode of Vivado is actually built on top of the non-project mode, as explained in Sect. 2.2.1 .


  • XC4VLX25-11SFG363I

    Manufacturer:Xilinx

  • FPGA Virtex-4 LX Family 24192 Cells 90nm Technology 1.2V 363-Pin FCBGA
  • Product Categories: FPGAs (Field Programmable Gate Array)

    Lifecycle:Active Active

    RoHS:

  • XC4VLX25-12SFG363C

    Manufacturer:Xilinx

  • FPGA Virtex-4 LX Family 24192 Cells 90nm Technology 1.2V 363-Pin FCBGA
  • Product Categories: Industrial components

    Lifecycle:Active Active

    RoHS:

  • XC17V01SO20C

    Manufacturer:Xilinx

  • PROM Parallel/Serial 1.6M-bit 3.3V 20-Pin SOIC
  • Product Categories: Memory - Configuration Proms for FPGA&#039;s

    Lifecycle:Obsolete -

    RoHS: No RoHS

  • XC17V02PC20C

    Manufacturer:Xilinx

  • PROM Parallel/Serial 2M-bit 3.3V 20-Pin PLCC
  • Product Categories: Memory - Configuration Proms for FPGA&#039;s

    Lifecycle:Obsolete -

    RoHS: No RoHS

  • XCR3384XL-7PQG208C

    Manufacturer:Xilinx

  • CPLD CoolRunner XPLA3 Family 9K Gates 384 Macro Cells 135MHz 0.35um Technology 3.3V 208-Pin PQFP
  • Product Categories: CPLDs

    Lifecycle:Active Active

    RoHS:

Need Help?

Support

If you have any questions about the product and related issues, Please contact us.