The Create and Import Peripheral Wizard has generated a template for the
Coprocessor you requested:


Files and Directories generated:
--------------------------------

Thank you for using Create and Import Peripheral Wizard!

Peripheral summary

  top name       : user_mutex
  version        : 1.00.a
  type           : FSL master slave
  features       : 

File Summary

  - HDL source -
  C:\Users\tseng\Desktop\edk_test\ml509_quad_one_plb\pcores\user_mutex_v1_00_a\hdl\vhdl
  top level      : user_mutex.vhd

  - XPS interface -
  C:\Users\tseng\Desktop\edk_test\ml509_quad_one_plb\pcores\user_mutex_v1_00_a\data
  mpd            : user_mutex_v2_1_0.mpd
  pao            : user_mutex_v2_1_0.pao

  - Misc file -
  C:\Users\tseng\Desktop\edk_test\ml509_quad_one_plb\pcores\user_mutex_v1_00_a\devl
  help           : README.txt
  option         : ipwiz.opt
  log            : ipwiz.log

  - Driver source -
  C:\Users\tseng\Desktop\edk_test\ml509_quad_one_plb\drivers\user_mutex_v1_00_a\src
  makefile       : Makefile
  header         : user_mutex.h
  source         : user_mutex.c

  - Driver interface -
  - user needs to add these to repositories path in SDK (Xilinx Tools-->Repositories)
  C:\Users\tseng\Desktop\edk_test\ml509_quad_one_plb\drivers\user_mutex_v1_00_a\data
  mdd            : user_mutex_v2_1_0.mdd
  tcl            : user_mutex_v2_1_0.tcl


If the Coprocessor has both inputs and outputs, the templates implements a
simple application that does the following:

- The C driver function translates the input operands into the input FSL
interface and translates the outputs from the output FSL interface into the
output operands. Blocking reads and writes are used, hence the function
does not return until the computation is complete. This function is
written into src/user_mutex.c in the Driver Directory.

- The HDL core implements a simple adder that simply adds up the input words
arriving on the input FSL and outputs the result on the output FSL. This is
implemented in hdl/vhdl/user_mutex.vhd in the Core Directory.

If the Coprocessor only has inputs or only has outputs, half of the 
above application will be implemented. 

In your application code, you can include the driver's header file and then call
the C driver function


Customizing the generated Coprocessor
-----------------------------------------

The generated coprocessor will serve as a 'starter' example or template
to help implement your application. The following modifications may be
required:

* Modify the HDL in the core directory to implement the function required by
your application. It is very important that the ordering of the incoming and
outgoing operands in the HDL be consistent with the driver function.

* Modify the driver file (if necessary) to ensure that the input FSL is filled with
data from the input operands in the order expected by the implementation of
the function in the HDL core.

Other issues
------------
Please note the following:

- To permanently remove the coprocessor, you will need to remove the
directories indicated above.

- Please read and understand the HDL and C generated by this tool to fully
understand what you need to do to implement your coprocessor.

- If you added more HDL files to your coprocessor, or modified the generics
or ports for the HDL core, you need to run the Create and Import Peripheral wizard import
mode to import this peripheral.  The wizard will update the IP data file to relect the
changes that you made.

