1 |
154 |
fellnhofer |
# The package naming convention is <core_name>_xmdf
|
2 |
|
|
package provide dist_mem_xmdf 1.0
|
3 |
|
|
|
4 |
|
|
# This includes some utilities that support common XMDF operations
|
5 |
|
|
package require utilities_xmdf
|
6 |
|
|
|
7 |
|
|
# Define a namespace for this package. The name of the name space
|
8 |
|
|
# is <core_name>_xmdf
|
9 |
|
|
namespace eval ::dist_mem_xmdf {
|
10 |
|
|
# Use this to define any statics
|
11 |
|
|
}
|
12 |
|
|
|
13 |
|
|
# Function called by client to rebuild the params and port arrays
|
14 |
|
|
# Optional when the use context does not require the param or ports
|
15 |
|
|
# arrays to be available.
|
16 |
|
|
proc ::dist_mem_xmdf::xmdfInit { instance } {
|
17 |
|
|
# Variable containg name of library into which module is compiled
|
18 |
|
|
# Recommendation: <module_name>
|
19 |
|
|
# Required
|
20 |
|
|
utilities_xmdf::xmdfSetData $instance Module Attributes Name dist_mem
|
21 |
|
|
}
|
22 |
|
|
# ::dist_mem_xmdf::xmdfInit
|
23 |
|
|
|
24 |
|
|
# Function called by client to fill in all the xmdf* data variables
|
25 |
|
|
# based on the current settings of the parameters
|
26 |
|
|
proc ::dist_mem_xmdf::xmdfApplyParams { instance } {
|
27 |
|
|
|
28 |
|
|
set fcount 0
|
29 |
|
|
# Array containing libraries that are assumed to exist
|
30 |
|
|
# Examples include unisim and xilinxcorelib
|
31 |
|
|
# Optional
|
32 |
|
|
# In this example, we assume that the unisim library will
|
33 |
|
|
# be magically
|
34 |
|
|
# available to the simulation and synthesis tool
|
35 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount type logical_library
|
36 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount logical_library unisim
|
37 |
|
|
incr fcount
|
38 |
|
|
|
39 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount relative_path dist_mem.xco
|
40 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount type coregen_ip
|
41 |
|
|
incr fcount
|
42 |
|
|
|
43 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount relative_path dist_mem.vhd
|
44 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount type vhdl
|
45 |
|
|
incr fcount
|
46 |
|
|
|
47 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount relative_path dist_mem_xmdf.tcl
|
48 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount type AnyView
|
49 |
|
|
incr fcount
|
50 |
|
|
|
51 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount relative_path dist_mem.vho
|
52 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount type vhdl_template
|
53 |
|
|
incr fcount
|
54 |
|
|
|
55 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount relative_path dist_mem.ngc
|
56 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount type ngc
|
57 |
|
|
incr fcount
|
58 |
|
|
|
59 |
|
|
utilities_xmdf::xmdfSetData $instance FileSet $fcount associated_module dist_mem
|
60 |
|
|
incr fcount
|
61 |
|
|
|
62 |
|
|
}
|
63 |
|
|
|
64 |
|
|
# ::gen_comp_name_xmdf::xmdfApplyParams
|