ipxact-ruby 0.11.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.autotest +15 -0
- data/.gitignore +2 -0
- data/README.html +89 -0
- data/README.mdown +91 -0
- data/Rakefile +31 -0
- data/VERSION +1 -0
- data/autotest/discover.rb +17 -0
- data/lib/ipxact.rb +263 -0
- data/lib/ipxact/component.rb +235 -0
- data/lib/ipxact/parser.rb +27 -0
- data/lib/ipxact/parser/bus_data_parser.rb +229 -0
- data/lib/ipxact/parser/component_data_parser.rb +309 -0
- data/lib/ipxact/parser/platform_data_parser.rb +63 -0
- data/lib/ipxact/pathfinder/graph_pathfinder.rb +191 -0
- data/lib/ipxact/platform.rb +43 -0
- data/schemas/abstractionDefinition.xsd +332 -0
- data/schemas/abstractor.xsd +156 -0
- data/schemas/autoConfigure.xsd +226 -0
- data/schemas/busDefinition.xsd +99 -0
- data/schemas/busInterface.xsd +640 -0
- data/schemas/commonStructures.xsd +189 -0
- data/schemas/component.xsd +253 -0
- data/schemas/configurable.xsd +82 -0
- data/schemas/constraints.xsd +283 -0
- data/schemas/design.xsd +105 -0
- data/schemas/designConfig.xsd +144 -0
- data/schemas/file.xsd +560 -0
- data/schemas/fileType.xsd +86 -0
- data/schemas/generator.xsd +240 -0
- data/schemas/identifier.xsd +93 -0
- data/schemas/index.xsd +67 -0
- data/schemas/memoryMap.xsd +1007 -0
- data/schemas/model.xsd +291 -0
- data/schemas/port.xsd +441 -0
- data/schemas/signalDrivers.xsd +220 -0
- data/schemas/simpleTypes.xsd +90 -0
- data/schemas/subInstances.xsd +256 -0
- data/spec/integration/bus_data_extraction_spec.rb +105 -0
- data/spec/integration/data_calculation_spec.rb +133 -0
- data/spec/integration/data_construction_spec.rb +52 -0
- data/spec/integration/general_spec.rb +121 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_initiator_port.h +135 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_initiator_port.tpp +247 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_initiator_port_base.h +189 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_router.h +205 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_router.tpp +278 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_slave_base.h +115 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_slave_base.tpp +126 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_target_port.h +168 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_target_port_base.h +133 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_tlm_if.h +280 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/user_types.h +38 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/Leon2Platform/Leon2Platform.xml +77 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/Leon2Platform/design_Leon2Platform.xml +156 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/Leon2Platform/tlmsrc/Leon2Platform.h +149 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/apbSubSystem/apbSubSystem.xml +406 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/apbSubSystem/design_apbSubSystem.xml +135 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/apbSubSystem/tlmsrc/apbSubSystem.h +133 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/Leon2Platform/Leon2Platform.xml +77 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/Leon2Platform/design_Leon2Platform.xml +157 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/Leon2Platform/tlmsrc/Leon2Platform.h +150 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/apbSubSystem/apbSubSystem.xml +422 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/apbSubSystem/designConfig_apbSubSystem.xml +79 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/apbSubSystem/design_apbSubSystem.xml +184 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/apbSubSystem/tlmsrc/apbSubSystem.h +164 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/Leon2Platform/Leon2Platform.xml +105 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/Leon2Platform/design_Leon2Platform.xml +157 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/Leon2Platform/tlmsrc/Leon2Platform.h +152 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/apbSubSystem/apbSubSystem.xml +429 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/apbSubSystem/designConfig_apbSubSystem.xml +64 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/apbSubSystem/design_apbSubSystem.xml +150 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/apbSubSystem/tlmsrc/apbSubSystem.h +167 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/ahbbus/1.4/ahbbus22.xml +236 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/ahbbus/1.4/tlmsrc/ahbbus.h +52 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/ahbram/1.4/ahbram.xml +184 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/ahbram/1.4/tlmsrc/ahbram.cc +93 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/ahbram/1.4/tlmsrc/ahbram.h +77 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/apbbus/1.4/apbbus8.xml +544 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/apbbus/1.4/tlmsrc/apbbus.h +55 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/apbmst/1.4/apbmst.xml +209 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/apbmst/1.4/tlmsrc/apbmst.h +53 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/apbram/1.0/apbram.xml +395 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/apbram/1.0/hdlsrc/apbram.cc +89 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/apbram/1.0/hdlsrc/apbram.h +69 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/apbram/1.0/hdlsrc/apbram.v +82 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/apbram/1.0/hdlsrc/apbram.vhd +132 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.4/cgu.xml +686 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.4/tlmsrc/cgu.cc +121 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.4/tlmsrc/cgu.h +81 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.5/cgu.xml +707 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.5/tlmsrc/cgu.cc +121 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.5/tlmsrc/cgu.h +81 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/dma/1.4/dma.xml +272 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/dma/1.4/tlmsrc/dma.cc +230 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/dma/1.4/tlmsrc/dma.h +116 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/irqctrl/1.4/irqctrl.xml +530 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/irqctrl/1.4/tlmsrc/irqctrl.cc +211 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/irqctrl/1.4/tlmsrc/irqctrl.h +108 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/processor/1.4/processor.xml +423 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/processor/1.4/tlmsrc/processor.cc +331 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/processor/1.4/tlmsrc/processor.h +121 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2apb/1.0/pv2apb.xml +240 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2apb/1.0/tlmsrc/pv2apb.cc +153 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2apb/1.0/tlmsrc/pv2apb.h +77 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2tac/1.0/pv2tac.xml +154 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2tac/1.0/tlmsrc/pv2tac.cc +114 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2tac/1.0/tlmsrc/pv2tac.h +67 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/rgu/1.4/rgu.xml +766 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/rgu/1.4/tlmsrc/rgu.cc +126 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/rgu/1.4/tlmsrc/rgu.h +105 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/scmlAdaptor/1.0/scmlAdaptor.xml +154 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/scmlAdaptor/1.0/tlmsrc/scmladaptor.cc +100 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/scmlAdaptor/1.0/tlmsrc/scmladaptor.h +62 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/serial_device/1.0/serial_device.xml +151 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/serial_device/1.0/tlmsrc/serial_device.h +85 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/timers/1.4/timers.xml +460 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/timers/1.4/tlmsrc/timers.cc +201 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/timers/1.4/tlmsrc/timers.h +102 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/inc/uart.h +152 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/inc/uart_fifo.h +113 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/inc/uart_memory_map.h +96 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/inc/uart_types.h +60 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/src/uart.cc +125 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/src/uart_interrupt_handler.cc +136 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/src/uart_register_bank.cc +129 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/src/uart_serial_tx_rx.cc +145 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/uart_scml.xml +372 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/include/Leon2_uart.h +216 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/include/def_Leon2_uart.h +34 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/include/tlm_field.h +72 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/include/tlm_register.h +129 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/include/tlmreg_Leon2_uart.h +133 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/src/Leon2_uart.cc +316 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/src/tlmreg_Leon2_uart.cc +197 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/src/user_specific_Leon2_uart.cc +146 -0
- data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/uart_tac.xml +222 -0
- data/spec/unit/component_spec.rb +98 -0
- data/spec/unit/graph_pathfinder_spec.rb +128 -0
- data/spec/unit/interconnect_spec.rb +177 -0
- data/spec/unit/ipxact_spec.rb +69 -0
- data/spec/unit/platform_spec.rb +34 -0
- metadata +225 -0
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/*
|
|
2
|
+
Description: user_types.h
|
|
3
|
+
Author: The SPIRIT Consortium
|
|
4
|
+
Revision: $Revision: 1506 $
|
|
5
|
+
Date: $Date: 2009-04-26 01:51:56 -0500 (Sun, 26 Apr 2009) $
|
|
6
|
+
|
|
7
|
+
Copyright (c) 2008, 2009 The SPIRIT Consortium.
|
|
8
|
+
|
|
9
|
+
This work forms part of a deliverable of The SPIRIT Consortium.
|
|
10
|
+
|
|
11
|
+
Use of these materials are governed by the legal terms and conditions
|
|
12
|
+
outlined in the disclaimer available from www.spiritconsortium.org.
|
|
13
|
+
|
|
14
|
+
This source file is provided on an AS IS basis. The SPIRIT
|
|
15
|
+
Consortium disclaims any warranty express or implied including
|
|
16
|
+
any warranty of merchantability and fitness for use for a
|
|
17
|
+
particular purpose.
|
|
18
|
+
|
|
19
|
+
The user of the source file shall indemnify and hold The SPIRIT
|
|
20
|
+
Consortium and its members harmless from any damages or liability.
|
|
21
|
+
Users are requested to provide feedback to The SPIRIT Consortium
|
|
22
|
+
using either mailto:feedback@lists.spiritconsortium.org or the forms at
|
|
23
|
+
http://www.spiritconsortium.org/about/contact_us/
|
|
24
|
+
|
|
25
|
+
This file may be copied, and distributed, with or without
|
|
26
|
+
modifications; this notice must be included on any copy.
|
|
27
|
+
*/
|
|
28
|
+
#ifndef _USER_TYPES_H_
|
|
29
|
+
#define _USER_TYPES_H_
|
|
30
|
+
|
|
31
|
+
typedef unsigned int ADDRESS_TYPE;
|
|
32
|
+
typedef unsigned int DATA_TYPE;
|
|
33
|
+
typedef int LOGIC;
|
|
34
|
+
#define LOGIC_0 0
|
|
35
|
+
#define LOGIC_1 1
|
|
36
|
+
#define CLOCK_CYCLE 10
|
|
37
|
+
|
|
38
|
+
#endif /* _USER_TYPES_H_ */
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!--
|
|
3
|
+
//
|
|
4
|
+
// Revision: $Revision: 1506 $
|
|
5
|
+
// Date: $Date: 2009-04-26 01:51:56 -0500 (Sun, 26 Apr 2009) $
|
|
6
|
+
//
|
|
7
|
+
// Copyright (c) 2005, 2006, 2007, 2008, 2009 The SPIRIT Consortium.
|
|
8
|
+
//
|
|
9
|
+
// This work forms part of a deliverable of The SPIRIT Consortium.
|
|
10
|
+
//
|
|
11
|
+
// Use of these materials are governed by the legal terms and conditions
|
|
12
|
+
// outlined in the disclaimer available from www.spiritconsortium.org.
|
|
13
|
+
//
|
|
14
|
+
// This source file is provided on an AS IS basis. The SPIRIT
|
|
15
|
+
// Consortium disclaims any warranty express or implied including
|
|
16
|
+
// any warranty of merchantability and fitness for use for a
|
|
17
|
+
// particular purpose.
|
|
18
|
+
//
|
|
19
|
+
// The user of the source file shall indemnify and hold The SPIRIT
|
|
20
|
+
// Consortium and its members harmless from any damages or liability.
|
|
21
|
+
// Users are requested to provide feedback to The SPIRIT Consortium
|
|
22
|
+
// using either mailto:feedback@lists.spiritconsortium.org or the forms at
|
|
23
|
+
// http://www.spiritconsortium.org/about/contact_us/
|
|
24
|
+
//
|
|
25
|
+
// This file may be copied, and distributed, with or without
|
|
26
|
+
// modifications; but this notice must be included on any copy.
|
|
27
|
+
-->
|
|
28
|
+
<spirit:component xmlns:spirit="http://www.spiritconsortium.org/XMLSchema/SPIRIT/1.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.spiritconsortium.org/XMLSchema/SPIRIT/1.5 http://www.spiritconsortium.org/XMLSchema/SPIRIT/1.5/index.xsd">
|
|
29
|
+
<spirit:vendor>spiritconsortium.org</spirit:vendor>
|
|
30
|
+
<spirit:library>Leon2TLM</spirit:library>
|
|
31
|
+
<spirit:name>Leon2Platform</spirit:name>
|
|
32
|
+
<spirit:version>1.1</spirit:version>
|
|
33
|
+
<spirit:model>
|
|
34
|
+
<spirit:views>
|
|
35
|
+
<spirit:view>
|
|
36
|
+
<spirit:name>spirit-design</spirit:name>
|
|
37
|
+
<spirit:envIdentifier>::Hierarchy</spirit:envIdentifier>
|
|
38
|
+
<spirit:hierarchyRef spirit:library="Leon2TLM" spirit:name="design_Leon2Platform" spirit:vendor="spiritconsortium.org" spirit:version="1.1"/>
|
|
39
|
+
</spirit:view>
|
|
40
|
+
<spirit:view>
|
|
41
|
+
<spirit:name>TLM_PV</spirit:name>
|
|
42
|
+
<spirit:envIdentifier>:*Simulation:</spirit:envIdentifier>
|
|
43
|
+
<spirit:language>systemc</spirit:language>
|
|
44
|
+
<spirit:modelName>Leon2Platform</spirit:modelName>
|
|
45
|
+
<spirit:fileSetRef>
|
|
46
|
+
<spirit:localName>sourceCode</spirit:localName>
|
|
47
|
+
</spirit:fileSetRef>
|
|
48
|
+
</spirit:view>
|
|
49
|
+
</spirit:views>
|
|
50
|
+
<spirit:ports>
|
|
51
|
+
<spirit:port>
|
|
52
|
+
<spirit:name>rstin_an</spirit:name>
|
|
53
|
+
<spirit:wire>
|
|
54
|
+
<spirit:direction>in</spirit:direction>
|
|
55
|
+
<spirit:driver>
|
|
56
|
+
<spirit:singleShotDriver>
|
|
57
|
+
<spirit:singleShotOffset>500.0</spirit:singleShotOffset>
|
|
58
|
+
<spirit:singleShotValue>1</spirit:singleShotValue>
|
|
59
|
+
<spirit:singleShotDuration>1000.0</spirit:singleShotDuration>
|
|
60
|
+
</spirit:singleShotDriver>
|
|
61
|
+
</spirit:driver>
|
|
62
|
+
</spirit:wire>
|
|
63
|
+
</spirit:port>
|
|
64
|
+
</spirit:ports>
|
|
65
|
+
</spirit:model>
|
|
66
|
+
<spirit:fileSets>
|
|
67
|
+
<spirit:fileSet>
|
|
68
|
+
<spirit:name>sourceCode</spirit:name>
|
|
69
|
+
<spirit:file>
|
|
70
|
+
<spirit:name>tlmsrc/Leon2Platform.h</spirit:name>
|
|
71
|
+
<spirit:fileType>systemCSource</spirit:fileType>
|
|
72
|
+
<spirit:isIncludeFile>true</spirit:isIncludeFile>
|
|
73
|
+
<spirit:logicalName>Leon2Platform</spirit:logicalName>
|
|
74
|
+
</spirit:file>
|
|
75
|
+
</spirit:fileSet>
|
|
76
|
+
</spirit:fileSets>
|
|
77
|
+
</spirit:component>
|
data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/Leon2Platform/design_Leon2Platform.xml
ADDED
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!--
|
|
3
|
+
//
|
|
4
|
+
// Revision: $Revision: 1506 $
|
|
5
|
+
// Date: $Date: 2009-04-26 01:51:56 -0500 (Sun, 26 Apr 2009) $
|
|
6
|
+
//
|
|
7
|
+
// Copyright (c) 2005, 2006, 2007, 2008, 2009 The SPIRIT Consortium.
|
|
8
|
+
//
|
|
9
|
+
// This work forms part of a deliverable of The SPIRIT Consortium.
|
|
10
|
+
//
|
|
11
|
+
// Use of these materials are governed by the legal terms and conditions
|
|
12
|
+
// outlined in the disclaimer available from www.spiritconsortium.org.
|
|
13
|
+
//
|
|
14
|
+
// This source file is provided on an AS IS basis. The SPIRIT
|
|
15
|
+
// Consortium disclaims any warranty express or implied including
|
|
16
|
+
// any warranty of merchantability and fitness for use for a
|
|
17
|
+
// particular purpose.
|
|
18
|
+
//
|
|
19
|
+
// The user of the source file shall indemnify and hold The SPIRIT
|
|
20
|
+
// Consortium and its members harmless from any damages or liability.
|
|
21
|
+
// Users are requested to provide feedback to The SPIRIT Consortium
|
|
22
|
+
// using either mailto:feedback@lists.spiritconsortium.org or the forms at
|
|
23
|
+
// http://www.spiritconsortium.org/about/contact_us/
|
|
24
|
+
//
|
|
25
|
+
// This file may be copied, and distributed, with or without
|
|
26
|
+
// modifications; but this notice must be included on any copy.
|
|
27
|
+
-->
|
|
28
|
+
<spirit:design xmlns:spirit="http://www.spiritconsortium.org/XMLSchema/SPIRIT/1.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.spiritconsortium.org/XMLSchema/SPIRIT/1.5 http://www.spiritconsortium.org/XMLSchema/SPIRIT/1.5/index.xsd">
|
|
29
|
+
<spirit:vendor>spiritconsortium.org</spirit:vendor>
|
|
30
|
+
<spirit:library>Leon2TLM</spirit:library>
|
|
31
|
+
<spirit:name>design_Leon2Platform</spirit:name>
|
|
32
|
+
<spirit:version>1.1</spirit:version>
|
|
33
|
+
<spirit:componentInstances>
|
|
34
|
+
<spirit:componentInstance>
|
|
35
|
+
<spirit:instanceName>i_ahb</spirit:instanceName>
|
|
36
|
+
<spirit:componentRef spirit:library="Leon2TLM" spirit:name="ahbbus22" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
|
|
37
|
+
<spirit:configurableElementValues>
|
|
38
|
+
<spirit:configurableElementValue spirit:referenceId="range_slv0_mirror">0x00040000</spirit:configurableElementValue>
|
|
39
|
+
<spirit:configurableElementValue spirit:referenceId="range_slv1_mirror">0x00009000</spirit:configurableElementValue>
|
|
40
|
+
<spirit:configurableElementValue spirit:referenceId="start_addr_slv0_mirror">0x0</spirit:configurableElementValue>
|
|
41
|
+
<spirit:configurableElementValue spirit:referenceId="start_addr_slv1_mirror">0x30000000</spirit:configurableElementValue>
|
|
42
|
+
<spirit:configurableElementValue spirit:referenceId="mapfile">leon2AhbBus.map</spirit:configurableElementValue>
|
|
43
|
+
</spirit:configurableElementValues>
|
|
44
|
+
</spirit:componentInstance>
|
|
45
|
+
<spirit:componentInstance>
|
|
46
|
+
<spirit:instanceName>i_mem</spirit:instanceName>
|
|
47
|
+
<spirit:componentRef spirit:library="Leon2TLM" spirit:name="ahbram" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
|
|
48
|
+
<spirit:configurableElementValues>
|
|
49
|
+
<spirit:configurableElementValue spirit:referenceId="addressBusSize">16</spirit:configurableElementValue>
|
|
50
|
+
</spirit:configurableElementValues>
|
|
51
|
+
</spirit:componentInstance>
|
|
52
|
+
<spirit:componentInstance>
|
|
53
|
+
<spirit:instanceName>i_sub</spirit:instanceName>
|
|
54
|
+
<spirit:componentRef spirit:library="Leon2TLM" spirit:name="apbSubSystem" spirit:vendor="spiritconsortium.org" spirit:version="1.1"/>
|
|
55
|
+
</spirit:componentInstance>
|
|
56
|
+
<spirit:componentInstance>
|
|
57
|
+
<spirit:instanceName>i_cgu</spirit:instanceName>
|
|
58
|
+
<spirit:componentRef spirit:library="Leon2TLM" spirit:name="cgu" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
|
|
59
|
+
<spirit:configurableElementValues>
|
|
60
|
+
<spirit:configurableElementValue spirit:referenceId="ClockPeriod">100</spirit:configurableElementValue>
|
|
61
|
+
<spirit:configurableElementValue spirit:referenceId="ClockPulseDuration">50</spirit:configurableElementValue>
|
|
62
|
+
<spirit:configurableElementValue spirit:referenceId="ClockPulseOffset">50</spirit:configurableElementValue>
|
|
63
|
+
<spirit:configurableElementValue spirit:referenceId="ClockPulseValue">1</spirit:configurableElementValue>
|
|
64
|
+
</spirit:configurableElementValues>
|
|
65
|
+
</spirit:componentInstance>
|
|
66
|
+
<spirit:componentInstance>
|
|
67
|
+
<spirit:instanceName>i_dma</spirit:instanceName>
|
|
68
|
+
<spirit:componentRef spirit:library="Leon2TLM" spirit:name="dma" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
|
|
69
|
+
</spirit:componentInstance>
|
|
70
|
+
<spirit:componentInstance>
|
|
71
|
+
<spirit:instanceName>i_proc</spirit:instanceName>
|
|
72
|
+
<spirit:componentRef spirit:library="Leon2TLM" spirit:name="processor" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
|
|
73
|
+
</spirit:componentInstance>
|
|
74
|
+
<spirit:componentInstance>
|
|
75
|
+
<spirit:instanceName>i_rgu</spirit:instanceName>
|
|
76
|
+
<spirit:componentRef spirit:library="Leon2TLM" spirit:name="rgu" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
|
|
77
|
+
<spirit:configurableElementValues>
|
|
78
|
+
<spirit:configurableElementValue spirit:referenceId="ClockPeriod">100</spirit:configurableElementValue>
|
|
79
|
+
<spirit:configurableElementValue spirit:referenceId="ClockPulseDuration">50</spirit:configurableElementValue>
|
|
80
|
+
<spirit:configurableElementValue spirit:referenceId="ClockPulseOffset">50</spirit:configurableElementValue>
|
|
81
|
+
<spirit:configurableElementValue spirit:referenceId="ClockPulseValue">1</spirit:configurableElementValue>
|
|
82
|
+
</spirit:configurableElementValues>
|
|
83
|
+
</spirit:componentInstance>
|
|
84
|
+
</spirit:componentInstances>
|
|
85
|
+
<spirit:interconnections>
|
|
86
|
+
<spirit:interconnection>
|
|
87
|
+
<spirit:name>defaultid4489931</spirit:name>
|
|
88
|
+
<spirit:activeInterface spirit:busRef="AHB_Master" spirit:componentRef="i_proc"/>
|
|
89
|
+
<spirit:activeInterface spirit:busRef="AHB_MirroredMaster0" spirit:componentRef="i_ahb"/>
|
|
90
|
+
</spirit:interconnection>
|
|
91
|
+
<spirit:interconnection>
|
|
92
|
+
<spirit:name>defaultid4489948</spirit:name>
|
|
93
|
+
<spirit:activeInterface spirit:busRef="AHB_Master" spirit:componentRef="i_dma"/>
|
|
94
|
+
<spirit:activeInterface spirit:busRef="AHB_MirroredMaster1" spirit:componentRef="i_ahb"/>
|
|
95
|
+
</spirit:interconnection>
|
|
96
|
+
<spirit:interconnection>
|
|
97
|
+
<spirit:name>defaultid4489949</spirit:name>
|
|
98
|
+
<spirit:activeInterface spirit:busRef="INT_Master" spirit:componentRef="i_dma"/>
|
|
99
|
+
<spirit:activeInterface spirit:busRef="INT_Slave" spirit:componentRef="i_sub"/>
|
|
100
|
+
</spirit:interconnection>
|
|
101
|
+
<spirit:interconnection>
|
|
102
|
+
<spirit:name>defaultid4489964</spirit:name>
|
|
103
|
+
<spirit:activeInterface spirit:busRef="AHB_Slave" spirit:componentRef="i_mem"/>
|
|
104
|
+
<spirit:activeInterface spirit:busRef="AHB_MirroredSlave0" spirit:componentRef="i_ahb"/>
|
|
105
|
+
</spirit:interconnection>
|
|
106
|
+
<spirit:interconnection>
|
|
107
|
+
<spirit:name>defaultid4489981</spirit:name>
|
|
108
|
+
<spirit:activeInterface spirit:busRef="AHB_Slave" spirit:componentRef="i_sub"/>
|
|
109
|
+
<spirit:activeInterface spirit:busRef="AHB_MirroredSlave1" spirit:componentRef="i_ahb"/>
|
|
110
|
+
</spirit:interconnection>
|
|
111
|
+
<spirit:interconnection>
|
|
112
|
+
<spirit:name>defaultid4489998</spirit:name>
|
|
113
|
+
<spirit:activeInterface spirit:busRef="INT_Slave" spirit:componentRef="i_proc"/>
|
|
114
|
+
<spirit:activeInterface spirit:busRef="INT_Master" spirit:componentRef="i_sub"/>
|
|
115
|
+
</spirit:interconnection>
|
|
116
|
+
<spirit:interconnection>
|
|
117
|
+
<spirit:name>defaultid4490014</spirit:name>
|
|
118
|
+
<spirit:activeInterface spirit:busRef="APB_Slave" spirit:componentRef="i_cgu"/>
|
|
119
|
+
<spirit:activeInterface spirit:busRef="APB_MSlave_4" spirit:componentRef="i_sub"/>
|
|
120
|
+
</spirit:interconnection>
|
|
121
|
+
<spirit:interconnection>
|
|
122
|
+
<spirit:name>defaultid4490031</spirit:name>
|
|
123
|
+
<spirit:activeInterface spirit:busRef="APB_Slave" spirit:componentRef="i_rgu"/>
|
|
124
|
+
<spirit:activeInterface spirit:busRef="APB_MSlave_5" spirit:componentRef="i_sub"/>
|
|
125
|
+
</spirit:interconnection>
|
|
126
|
+
<spirit:interconnection>
|
|
127
|
+
<spirit:name>defaultid4490048</spirit:name>
|
|
128
|
+
<spirit:activeInterface spirit:busRef="APB_Slave" spirit:componentRef="i_proc"/>
|
|
129
|
+
<spirit:activeInterface spirit:busRef="APB_MSlave_6" spirit:componentRef="i_sub"/>
|
|
130
|
+
</spirit:interconnection>
|
|
131
|
+
<spirit:interconnection>
|
|
132
|
+
<spirit:name>defaultid4490065</spirit:name>
|
|
133
|
+
<spirit:activeInterface spirit:busRef="APB_Slave" spirit:componentRef="i_dma"/>
|
|
134
|
+
<spirit:activeInterface spirit:busRef="APB_MSlave_7" spirit:componentRef="i_sub"/>
|
|
135
|
+
</spirit:interconnection>
|
|
136
|
+
</spirit:interconnections>
|
|
137
|
+
<spirit:adHocConnections>
|
|
138
|
+
<spirit:adHocConnection>
|
|
139
|
+
<spirit:name>rstin_an</spirit:name>
|
|
140
|
+
<spirit:internalPortReference spirit:componentRef="i_rgu" spirit:portRef="rstin_an"/>
|
|
141
|
+
<spirit:externalPortReference spirit:portRef="rstin_an"/>
|
|
142
|
+
</spirit:adHocConnection>
|
|
143
|
+
<spirit:adHocConnection>
|
|
144
|
+
<spirit:name>clkdiv0</spirit:name>
|
|
145
|
+
<spirit:internalPortReference spirit:componentRef="i_proc" spirit:portRef="clk"/>
|
|
146
|
+
<spirit:internalPortReference spirit:componentRef="i_cgu" spirit:left="0" spirit:portRef="clkout" spirit:right="0"/>
|
|
147
|
+
<spirit:internalPortReference spirit:componentRef="i_rgu" spirit:portRef="ipclk"/>
|
|
148
|
+
<spirit:internalPortReference spirit:componentRef="i_sub" spirit:portRef="clk_timers"/>
|
|
149
|
+
</spirit:adHocConnection>
|
|
150
|
+
<spirit:adHocConnection>
|
|
151
|
+
<spirit:name>rstdiv0</spirit:name>
|
|
152
|
+
<spirit:internalPortReference spirit:componentRef="i_proc" spirit:portRef="rst_an"/>
|
|
153
|
+
<spirit:internalPortReference spirit:componentRef="i_rgu" spirit:left="0" spirit:portRef="rstout_an" spirit:right="0"/>
|
|
154
|
+
</spirit:adHocConnection>
|
|
155
|
+
</spirit:adHocConnections>
|
|
156
|
+
</spirit:design>
|
data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/Leon2Platform/tlmsrc/Leon2Platform.h
ADDED
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
/*---------------------------------------------------------------------------
|
|
2
|
+
*
|
|
3
|
+
* Revision: $Revision: 1506 $
|
|
4
|
+
* Date: $Date: 2009-04-26 01:51:56 -0500 (Sun, 26 Apr 2009) $
|
|
5
|
+
*
|
|
6
|
+
* Copyright (c) 2007, 2008, 2009 The SPIRIT Consortium.
|
|
7
|
+
*
|
|
8
|
+
* This work forms part of a deliverable of The SPIRIT Consortium.
|
|
9
|
+
*
|
|
10
|
+
* Use of these materials are governed by the legal terms and conditions
|
|
11
|
+
* outlined in the disclaimer available from www.spiritconsortium.org.
|
|
12
|
+
*
|
|
13
|
+
* This source file is provided on an AS IS basis. The SPIRIT
|
|
14
|
+
* Consortium disclaims any warranty express or implied including
|
|
15
|
+
* any warranty of merchantability and fitness for use for a
|
|
16
|
+
* particular purpose.
|
|
17
|
+
*
|
|
18
|
+
* The user of the source file shall indemnify and hold The SPIRIT
|
|
19
|
+
* Consortium and its members harmless from any damages or liability.
|
|
20
|
+
* Users are requested to provide feedback to The SPIRIT Consortium
|
|
21
|
+
* using either mailto:feedback@lists.spiritconsortium.org or the forms at
|
|
22
|
+
* http://www.spiritconsortium.org/about/contact_us/
|
|
23
|
+
*
|
|
24
|
+
* This file may be copied, and distributed, with or without
|
|
25
|
+
* modifications; but this notice must be included on any copy.
|
|
26
|
+
*---------------------------------------------------------------------------*/
|
|
27
|
+
|
|
28
|
+
/*******************************************************************************
|
|
29
|
+
* SPIRIT 1.4 OSCI-TLM-PV example
|
|
30
|
+
*------------------------------------------------------------------------------
|
|
31
|
+
* Simple TLM Design netlist
|
|
32
|
+
*------------------------------------------------------------------------------
|
|
33
|
+
* Revision: 1.4
|
|
34
|
+
* Authors: Jean-Michel Fernandez
|
|
35
|
+
* Copyright The SPIRIT Consortium 2006
|
|
36
|
+
*******************************************************************************/
|
|
37
|
+
|
|
38
|
+
#ifndef _LEON2PLATFORM_H_
|
|
39
|
+
#define _LEON2PLATFORM_H_
|
|
40
|
+
|
|
41
|
+
/*------------------------------------------------------------------------------
|
|
42
|
+
* Includes
|
|
43
|
+
*----------------------------------------------------------------------------*/
|
|
44
|
+
#include <systemc.h>
|
|
45
|
+
|
|
46
|
+
#include "processor.h"
|
|
47
|
+
#include "ahbram.h"
|
|
48
|
+
#include "ahbbus.h"
|
|
49
|
+
#include "apbSubSystem.h"
|
|
50
|
+
#include "dma.h"
|
|
51
|
+
#include "cgu.h"
|
|
52
|
+
#include "rgu.h"
|
|
53
|
+
|
|
54
|
+
/*------------------------------------------------------------------------------
|
|
55
|
+
* top netlist
|
|
56
|
+
*----------------------------------------------------------------------------*/
|
|
57
|
+
class Leon2Platform : public sc_module
|
|
58
|
+
{
|
|
59
|
+
|
|
60
|
+
public:
|
|
61
|
+
sc_in<sc_logic> rstin_an;
|
|
62
|
+
|
|
63
|
+
private:
|
|
64
|
+
// component instances
|
|
65
|
+
processor* i_proc;
|
|
66
|
+
ahbram* i_mem;
|
|
67
|
+
ahbbus* i_ahb;
|
|
68
|
+
apbSubSystem* i_sub;
|
|
69
|
+
dma* i_dma;
|
|
70
|
+
cgu* i_cgu;
|
|
71
|
+
rgu* i_rgu;
|
|
72
|
+
// interrupt signals
|
|
73
|
+
sc_buffer<int> interrupt_proc_irl;
|
|
74
|
+
sc_buffer<int> interrupt_proc_irq;
|
|
75
|
+
sc_buffer<bool> interrupt_proc_ack;
|
|
76
|
+
sc_buffer<int> interrupt_dma;
|
|
77
|
+
// clock and reset signals
|
|
78
|
+
sc_buffer<bool> rstdiv[8];
|
|
79
|
+
sc_buffer<sc_logic> clkdiv[8];
|
|
80
|
+
|
|
81
|
+
|
|
82
|
+
public:
|
|
83
|
+
// Note: the timers and memory size and base addresses
|
|
84
|
+
// (start addr, end addr) are defined in in each
|
|
85
|
+
// component external map files.
|
|
86
|
+
Leon2Platform(sc_module_name module_name) : sc_module(module_name)
|
|
87
|
+
{
|
|
88
|
+
// instances
|
|
89
|
+
i_proc = new processor("uproc","master.tbl");
|
|
90
|
+
i_mem = new ahbram("uahbram", 16);
|
|
91
|
+
i_ahb = new ahbbus("uahbbus","leon2AhbBus.map");
|
|
92
|
+
i_sub = new apbSubSystem("uapbSubSystem");
|
|
93
|
+
i_dma = new dma("udma");
|
|
94
|
+
i_cgu = new cgu("ucgu");
|
|
95
|
+
i_rgu = new rgu("urgu");
|
|
96
|
+
// interconnections (transactional port binding)
|
|
97
|
+
i_proc->ahb_master_port ( i_ahb->target_port );
|
|
98
|
+
i_dma->ahb_master_port ( i_ahb->target_port );
|
|
99
|
+
i_ahb->initiator_port ( i_mem->ahb_slave_port );
|
|
100
|
+
i_ahb->initiator_port ( i_sub->ahb_slave_port );
|
|
101
|
+
i_sub->apb4_mslave_port ( i_cgu->apb_slave_port );
|
|
102
|
+
i_sub->apb5_mslave_port ( i_rgu->apb_slave_port );
|
|
103
|
+
i_sub->apb6_mslave_port ( i_proc->apb_slave_port );
|
|
104
|
+
i_sub->apb7_mslave_port ( i_dma->apb_slave_port );
|
|
105
|
+
// adhoc connections (wire port binding)
|
|
106
|
+
i_proc->irl_port (interrupt_proc_irl);
|
|
107
|
+
i_proc->irqvec_port (interrupt_proc_irq);
|
|
108
|
+
i_proc->intack_port (interrupt_proc_ack);
|
|
109
|
+
i_dma->int_master_port (interrupt_dma);
|
|
110
|
+
i_sub->int4_slave_port (interrupt_dma);
|
|
111
|
+
i_sub->irl_master_port (interrupt_proc_irl);
|
|
112
|
+
i_sub->irq_slave_port (interrupt_proc_irq);
|
|
113
|
+
i_sub->ack_slave_port (interrupt_proc_ack);
|
|
114
|
+
i_sub->clk_timers (clkdiv[0]);
|
|
115
|
+
i_proc->clk (clkdiv[0]);
|
|
116
|
+
i_cgu->clkout[0](clkdiv[0]);
|
|
117
|
+
i_cgu->clkout[1](clkdiv[1]);
|
|
118
|
+
i_cgu->clkout[2](clkdiv[2]);
|
|
119
|
+
i_cgu->clkout[3](clkdiv[3]);
|
|
120
|
+
i_cgu->clkout[4](clkdiv[4]);
|
|
121
|
+
i_cgu->clkout[5](clkdiv[5]);
|
|
122
|
+
i_cgu->clkout[6](clkdiv[6]);
|
|
123
|
+
i_cgu->clkout[7](clkdiv[7]);
|
|
124
|
+
i_rgu->ipclk(clkdiv[0]);
|
|
125
|
+
i_rgu->rstin_an(rstin_an);
|
|
126
|
+
i_proc->rst_an (rstdiv[0]);
|
|
127
|
+
i_rgu->rstout_an[0](rstdiv[0]);
|
|
128
|
+
i_rgu->rstout_an[1](rstdiv[1]);
|
|
129
|
+
i_rgu->rstout_an[2](rstdiv[2]);
|
|
130
|
+
i_rgu->rstout_an[3](rstdiv[3]);
|
|
131
|
+
i_rgu->rstout_an[4](rstdiv[4]);
|
|
132
|
+
i_rgu->rstout_an[5](rstdiv[5]);
|
|
133
|
+
i_rgu->rstout_an[6](rstdiv[6]);
|
|
134
|
+
i_rgu->rstout_an[7](rstdiv[7]);
|
|
135
|
+
}
|
|
136
|
+
~Leon2Platform() {
|
|
137
|
+
delete i_proc;
|
|
138
|
+
delete i_mem;
|
|
139
|
+
delete i_ahb;
|
|
140
|
+
delete i_dma;
|
|
141
|
+
delete i_sub;
|
|
142
|
+
delete i_cgu;
|
|
143
|
+
delete i_rgu;
|
|
144
|
+
}
|
|
145
|
+
};
|
|
146
|
+
|
|
147
|
+
#endif /* _LEON2PLATFORM_H_ */
|
|
148
|
+
|
|
149
|
+
|
|
@@ -0,0 +1,406 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!--
|
|
3
|
+
//
|
|
4
|
+
// Revision: $Revision: 1506 $
|
|
5
|
+
// Date: $Date: 2009-04-26 01:51:56 -0500 (Sun, 26 Apr 2009) $
|
|
6
|
+
//
|
|
7
|
+
// Copyright (c) 2005, 2006, 2007, 2008, 2009 The SPIRIT Consortium.
|
|
8
|
+
//
|
|
9
|
+
// This work forms part of a deliverable of The SPIRIT Consortium.
|
|
10
|
+
//
|
|
11
|
+
// Use of these materials are governed by the legal terms and conditions
|
|
12
|
+
// outlined in the disclaimer available from www.spiritconsortium.org.
|
|
13
|
+
//
|
|
14
|
+
// This source file is provided on an AS IS basis. The SPIRIT
|
|
15
|
+
// Consortium disclaims any warranty express or implied including
|
|
16
|
+
// any warranty of merchantability and fitness for use for a
|
|
17
|
+
// particular purpose.
|
|
18
|
+
//
|
|
19
|
+
// The user of the source file shall indemnify and hold The SPIRIT
|
|
20
|
+
// Consortium and its members harmless from any damages or liability.
|
|
21
|
+
// Users are requested to provide feedback to The SPIRIT Consortium
|
|
22
|
+
// using either mailto:feedback@lists.spiritconsortium.org or the forms at
|
|
23
|
+
// http://www.spiritconsortium.org/about/contact_us/
|
|
24
|
+
//
|
|
25
|
+
// This file may be copied, and distributed, with or without
|
|
26
|
+
// modifications; but this notice must be included on any copy.
|
|
27
|
+
-->
|
|
28
|
+
<spirit:component xmlns:spirit="http://www.spiritconsortium.org/XMLSchema/SPIRIT/1.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.spiritconsortium.org/XMLSchema/SPIRIT/1.5 http://www.spiritconsortium.org/XMLSchema/SPIRIT/1.5/index.xsd">
|
|
29
|
+
<spirit:vendor>spiritconsortium.org</spirit:vendor>
|
|
30
|
+
<spirit:library>Leon2TLM</spirit:library>
|
|
31
|
+
<spirit:name>apbSubSystem</spirit:name>
|
|
32
|
+
<spirit:version>1.1</spirit:version>
|
|
33
|
+
<spirit:busInterfaces>
|
|
34
|
+
<spirit:busInterface>
|
|
35
|
+
<spirit:name>INT_Master</spirit:name>
|
|
36
|
+
<spirit:busType spirit:library="busdef.leon2" spirit:name="IntProc" spirit:vendor="spiritconsortium.org" spirit:version="v1.0"/>
|
|
37
|
+
<spirit:abstractionType spirit:library="busdef.leon2" spirit:name="IntProc_rtl" spirit:vendor="spiritconsortium.org" spirit:version="v1.0"/>
|
|
38
|
+
<spirit:master/>
|
|
39
|
+
<spirit:portMaps>
|
|
40
|
+
<spirit:portMap>
|
|
41
|
+
<spirit:logicalPort>
|
|
42
|
+
<spirit:name>IRL</spirit:name>
|
|
43
|
+
</spirit:logicalPort>
|
|
44
|
+
<spirit:physicalPort>
|
|
45
|
+
<spirit:name>irl_master_port</spirit:name>
|
|
46
|
+
</spirit:physicalPort>
|
|
47
|
+
</spirit:portMap>
|
|
48
|
+
<spirit:portMap>
|
|
49
|
+
<spirit:logicalPort>
|
|
50
|
+
<spirit:name>IRQVEC</spirit:name>
|
|
51
|
+
</spirit:logicalPort>
|
|
52
|
+
<spirit:physicalPort>
|
|
53
|
+
<spirit:name>irq_slave_port</spirit:name>
|
|
54
|
+
</spirit:physicalPort>
|
|
55
|
+
</spirit:portMap>
|
|
56
|
+
<spirit:portMap>
|
|
57
|
+
<spirit:logicalPort>
|
|
58
|
+
<spirit:name>INTack</spirit:name>
|
|
59
|
+
</spirit:logicalPort>
|
|
60
|
+
<spirit:physicalPort>
|
|
61
|
+
<spirit:name>ack_slave_port</spirit:name>
|
|
62
|
+
</spirit:physicalPort>
|
|
63
|
+
</spirit:portMap>
|
|
64
|
+
</spirit:portMaps>
|
|
65
|
+
</spirit:busInterface>
|
|
66
|
+
<spirit:busInterface>
|
|
67
|
+
<spirit:name>AHB_Slave</spirit:name>
|
|
68
|
+
<spirit:busType spirit:library="AMBA2" spirit:name="AHB" spirit:vendor="amba.com" spirit:version="r2p0_6"/>
|
|
69
|
+
<spirit:abstractionType spirit:library="abstractiondef.tlm" spirit:name="ahb_pv" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
|
|
70
|
+
<spirit:slave/>
|
|
71
|
+
<spirit:portMaps>
|
|
72
|
+
<spirit:portMap>
|
|
73
|
+
<spirit:logicalPort>
|
|
74
|
+
<spirit:name>PV_TRANS</spirit:name>
|
|
75
|
+
</spirit:logicalPort>
|
|
76
|
+
<spirit:physicalPort>
|
|
77
|
+
<spirit:name>ahb_slave_port</spirit:name>
|
|
78
|
+
</spirit:physicalPort>
|
|
79
|
+
</spirit:portMap>
|
|
80
|
+
</spirit:portMaps>
|
|
81
|
+
</spirit:busInterface>
|
|
82
|
+
<spirit:busInterface>
|
|
83
|
+
<spirit:name>APB_MSlave_4</spirit:name>
|
|
84
|
+
<spirit:busType spirit:library="AMBA2" spirit:name="APB" spirit:vendor="amba.com" spirit:version="r2p0_4"/>
|
|
85
|
+
<spirit:abstractionType spirit:library="abstractiondef.tlm" spirit:name="apb_pv" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
|
|
86
|
+
<spirit:mirroredSlave/>
|
|
87
|
+
<spirit:portMaps>
|
|
88
|
+
<spirit:portMap>
|
|
89
|
+
<spirit:logicalPort>
|
|
90
|
+
<spirit:name>PV_TRANS</spirit:name>
|
|
91
|
+
</spirit:logicalPort>
|
|
92
|
+
<spirit:physicalPort>
|
|
93
|
+
<spirit:name>apb4_mslave_port</spirit:name>
|
|
94
|
+
</spirit:physicalPort>
|
|
95
|
+
</spirit:portMap>
|
|
96
|
+
</spirit:portMaps>
|
|
97
|
+
</spirit:busInterface>
|
|
98
|
+
<spirit:busInterface>
|
|
99
|
+
<spirit:name>APB_MSlave_5</spirit:name>
|
|
100
|
+
<spirit:busType spirit:library="AMBA2" spirit:name="APB" spirit:vendor="amba.com" spirit:version="r2p0_4"/>
|
|
101
|
+
<spirit:abstractionType spirit:library="abstractiondef.tlm" spirit:name="apb_pv" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
|
|
102
|
+
<spirit:mirroredSlave/>
|
|
103
|
+
<spirit:portMaps>
|
|
104
|
+
<spirit:portMap>
|
|
105
|
+
<spirit:logicalPort>
|
|
106
|
+
<spirit:name>PV_TRANS</spirit:name>
|
|
107
|
+
</spirit:logicalPort>
|
|
108
|
+
<spirit:physicalPort>
|
|
109
|
+
<spirit:name>apb5_mslave_port</spirit:name>
|
|
110
|
+
</spirit:physicalPort>
|
|
111
|
+
</spirit:portMap>
|
|
112
|
+
</spirit:portMaps>
|
|
113
|
+
</spirit:busInterface>
|
|
114
|
+
<spirit:busInterface>
|
|
115
|
+
<spirit:name>APB_MSlave_6</spirit:name>
|
|
116
|
+
<spirit:busType spirit:library="AMBA2" spirit:name="APB" spirit:vendor="amba.com" spirit:version="r2p0_4"/>
|
|
117
|
+
<spirit:abstractionType spirit:library="abstractiondef.tlm" spirit:name="apb_pv" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
|
|
118
|
+
<spirit:mirroredSlave/>
|
|
119
|
+
<spirit:portMaps>
|
|
120
|
+
<spirit:portMap>
|
|
121
|
+
<spirit:logicalPort>
|
|
122
|
+
<spirit:name>PV_TRANS</spirit:name>
|
|
123
|
+
</spirit:logicalPort>
|
|
124
|
+
<spirit:physicalPort>
|
|
125
|
+
<spirit:name>apb6_mslave_port</spirit:name>
|
|
126
|
+
</spirit:physicalPort>
|
|
127
|
+
</spirit:portMap>
|
|
128
|
+
</spirit:portMaps>
|
|
129
|
+
</spirit:busInterface>
|
|
130
|
+
<spirit:busInterface>
|
|
131
|
+
<spirit:name>APB_MSlave_7</spirit:name>
|
|
132
|
+
<spirit:busType spirit:library="AMBA2" spirit:name="APB" spirit:vendor="amba.com" spirit:version="r2p0_4"/>
|
|
133
|
+
<spirit:abstractionType spirit:library="abstractiondef.tlm" spirit:name="apb_pv" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
|
|
134
|
+
<spirit:mirroredSlave/>
|
|
135
|
+
<spirit:portMaps>
|
|
136
|
+
<spirit:portMap>
|
|
137
|
+
<spirit:logicalPort>
|
|
138
|
+
<spirit:name>PV_TRANS</spirit:name>
|
|
139
|
+
</spirit:logicalPort>
|
|
140
|
+
<spirit:physicalPort>
|
|
141
|
+
<spirit:name>apb7_mslave_port</spirit:name>
|
|
142
|
+
</spirit:physicalPort>
|
|
143
|
+
</spirit:portMap>
|
|
144
|
+
</spirit:portMaps>
|
|
145
|
+
</spirit:busInterface>
|
|
146
|
+
<spirit:busInterface>
|
|
147
|
+
<spirit:name>INT_Slave</spirit:name>
|
|
148
|
+
<spirit:busType spirit:library="busdef.interrupt" spirit:name="interrupt" spirit:vendor="spiritconsortium.org" spirit:version="1.0"/>
|
|
149
|
+
<spirit:abstractionType spirit:library="busdef.interrupt" spirit:name="interrupt_rtl" spirit:vendor="spiritconsortium.org" spirit:version="1.0"/>
|
|
150
|
+
<spirit:slave/>
|
|
151
|
+
<spirit:portMaps>
|
|
152
|
+
<spirit:portMap>
|
|
153
|
+
<spirit:logicalPort>
|
|
154
|
+
<spirit:name>IRQ</spirit:name>
|
|
155
|
+
</spirit:logicalPort>
|
|
156
|
+
<spirit:physicalPort>
|
|
157
|
+
<spirit:name>int4_slave_port</spirit:name>
|
|
158
|
+
</spirit:physicalPort>
|
|
159
|
+
</spirit:portMap>
|
|
160
|
+
</spirit:portMaps>
|
|
161
|
+
</spirit:busInterface>
|
|
162
|
+
</spirit:busInterfaces>
|
|
163
|
+
<spirit:model>
|
|
164
|
+
<spirit:views>
|
|
165
|
+
<spirit:view>
|
|
166
|
+
<spirit:name>spirit-design</spirit:name>
|
|
167
|
+
<spirit:envIdentifier>::Hierarchy</spirit:envIdentifier>
|
|
168
|
+
<spirit:hierarchyRef spirit:library="Leon2TLM" spirit:name="design_apbSubSystem" spirit:vendor="spiritconsortium.org" spirit:version="1.1"/>
|
|
169
|
+
</spirit:view>
|
|
170
|
+
<spirit:view>
|
|
171
|
+
<spirit:name>TLM_PV</spirit:name>
|
|
172
|
+
<spirit:envIdentifier>:*Simulation:</spirit:envIdentifier>
|
|
173
|
+
<spirit:language>systemc</spirit:language>
|
|
174
|
+
<spirit:modelName>apbSubSystem</spirit:modelName>
|
|
175
|
+
<spirit:fileSetRef>
|
|
176
|
+
<spirit:localName>sourceCode</spirit:localName>
|
|
177
|
+
</spirit:fileSetRef>
|
|
178
|
+
</spirit:view>
|
|
179
|
+
</spirit:views>
|
|
180
|
+
<spirit:ports>
|
|
181
|
+
<spirit:port>
|
|
182
|
+
<spirit:name>int4_slave_port</spirit:name>
|
|
183
|
+
<spirit:wire>
|
|
184
|
+
<spirit:direction>in</spirit:direction>
|
|
185
|
+
<spirit:wireTypeDefs>
|
|
186
|
+
<spirit:wireTypeDef>
|
|
187
|
+
<spirit:typeName>int</spirit:typeName>
|
|
188
|
+
<spirit:typeDefinition>systemc.h</spirit:typeDefinition>
|
|
189
|
+
<spirit:viewNameRef>TLM_PV</spirit:viewNameRef>
|
|
190
|
+
</spirit:wireTypeDef>
|
|
191
|
+
</spirit:wireTypeDefs>
|
|
192
|
+
<spirit:driver>
|
|
193
|
+
<spirit:defaultValue>0</spirit:defaultValue>
|
|
194
|
+
</spirit:driver>
|
|
195
|
+
</spirit:wire>
|
|
196
|
+
</spirit:port>
|
|
197
|
+
<spirit:port>
|
|
198
|
+
<spirit:name>ahb_slave_port</spirit:name>
|
|
199
|
+
<spirit:transactional>
|
|
200
|
+
<spirit:transTypeDef>
|
|
201
|
+
<spirit:typeName>pv_target_port</spirit:typeName>
|
|
202
|
+
<spirit:typeDefinition>pv_target_port.h</spirit:typeDefinition>
|
|
203
|
+
</spirit:transTypeDef>
|
|
204
|
+
<spirit:service>
|
|
205
|
+
<spirit:initiative>provides</spirit:initiative>
|
|
206
|
+
<spirit:serviceTypeDefs>
|
|
207
|
+
<spirit:serviceTypeDef>
|
|
208
|
+
<spirit:typeName spirit:implicit="true">OSCI_TLM_PV</spirit:typeName>
|
|
209
|
+
<spirit:parameters>
|
|
210
|
+
<spirit:parameter>
|
|
211
|
+
<spirit:name>typedef1</spirit:name>
|
|
212
|
+
<spirit:value>ADDRESS_TYPE</spirit:value>
|
|
213
|
+
</spirit:parameter>
|
|
214
|
+
<spirit:parameter>
|
|
215
|
+
<spirit:name>typedef2</spirit:name>
|
|
216
|
+
<spirit:value>DATA_TYPE</spirit:value>
|
|
217
|
+
</spirit:parameter>
|
|
218
|
+
</spirit:parameters>
|
|
219
|
+
</spirit:serviceTypeDef>
|
|
220
|
+
</spirit:serviceTypeDefs>
|
|
221
|
+
</spirit:service>
|
|
222
|
+
</spirit:transactional>
|
|
223
|
+
</spirit:port>
|
|
224
|
+
<spirit:port>
|
|
225
|
+
<spirit:name>irl_master_port</spirit:name>
|
|
226
|
+
<spirit:wire>
|
|
227
|
+
<spirit:direction>out</spirit:direction>
|
|
228
|
+
<spirit:wireTypeDefs>
|
|
229
|
+
<spirit:wireTypeDef>
|
|
230
|
+
<spirit:typeName>int</spirit:typeName>
|
|
231
|
+
<spirit:typeDefinition>systemc.h</spirit:typeDefinition>
|
|
232
|
+
<spirit:viewNameRef>TLM_PV</spirit:viewNameRef>
|
|
233
|
+
</spirit:wireTypeDef>
|
|
234
|
+
</spirit:wireTypeDefs>
|
|
235
|
+
</spirit:wire>
|
|
236
|
+
</spirit:port>
|
|
237
|
+
<spirit:port>
|
|
238
|
+
<spirit:name>irq_slave_port</spirit:name>
|
|
239
|
+
<spirit:wire>
|
|
240
|
+
<spirit:direction>in</spirit:direction>
|
|
241
|
+
<spirit:wireTypeDefs>
|
|
242
|
+
<spirit:wireTypeDef>
|
|
243
|
+
<spirit:typeName>int</spirit:typeName>
|
|
244
|
+
<spirit:typeDefinition>systemc.h</spirit:typeDefinition>
|
|
245
|
+
<spirit:viewNameRef>TLM_PV</spirit:viewNameRef>
|
|
246
|
+
</spirit:wireTypeDef>
|
|
247
|
+
</spirit:wireTypeDefs>
|
|
248
|
+
<spirit:driver>
|
|
249
|
+
<spirit:defaultValue>0</spirit:defaultValue>
|
|
250
|
+
</spirit:driver>
|
|
251
|
+
</spirit:wire>
|
|
252
|
+
</spirit:port>
|
|
253
|
+
<spirit:port>
|
|
254
|
+
<spirit:name>ack_slave_port</spirit:name>
|
|
255
|
+
<spirit:wire>
|
|
256
|
+
<spirit:direction>in</spirit:direction>
|
|
257
|
+
<spirit:wireTypeDefs>
|
|
258
|
+
<spirit:wireTypeDef>
|
|
259
|
+
<spirit:typeName>bool</spirit:typeName>
|
|
260
|
+
<spirit:typeDefinition>systemc.h</spirit:typeDefinition>
|
|
261
|
+
<spirit:viewNameRef>TLM_PV</spirit:viewNameRef>
|
|
262
|
+
</spirit:wireTypeDef>
|
|
263
|
+
</spirit:wireTypeDefs>
|
|
264
|
+
<spirit:driver>
|
|
265
|
+
<spirit:defaultValue>0</spirit:defaultValue>
|
|
266
|
+
</spirit:driver>
|
|
267
|
+
</spirit:wire>
|
|
268
|
+
</spirit:port>
|
|
269
|
+
<spirit:port>
|
|
270
|
+
<spirit:name>clk_timers</spirit:name>
|
|
271
|
+
<spirit:wire>
|
|
272
|
+
<spirit:direction>in</spirit:direction>
|
|
273
|
+
<spirit:wireTypeDefs>
|
|
274
|
+
<spirit:wireTypeDef>
|
|
275
|
+
<spirit:typeName>sc_logic</spirit:typeName>
|
|
276
|
+
<spirit:typeDefinition>systemc.h</spirit:typeDefinition>
|
|
277
|
+
<spirit:viewNameRef>TLM_PV</spirit:viewNameRef>
|
|
278
|
+
</spirit:wireTypeDef>
|
|
279
|
+
</spirit:wireTypeDefs>
|
|
280
|
+
<spirit:driver>
|
|
281
|
+
<spirit:defaultValue>0</spirit:defaultValue>
|
|
282
|
+
</spirit:driver>
|
|
283
|
+
</spirit:wire>
|
|
284
|
+
</spirit:port>
|
|
285
|
+
<spirit:port>
|
|
286
|
+
<spirit:name>apb4_mslave_port</spirit:name>
|
|
287
|
+
<spirit:transactional>
|
|
288
|
+
<spirit:transTypeDef>
|
|
289
|
+
<spirit:typeName>pv_initiator_port</spirit:typeName>
|
|
290
|
+
<spirit:typeDefinition>pv_initiator_port.h</spirit:typeDefinition>
|
|
291
|
+
</spirit:transTypeDef>
|
|
292
|
+
<spirit:service>
|
|
293
|
+
<spirit:initiative>requires</spirit:initiative>
|
|
294
|
+
<spirit:serviceTypeDefs>
|
|
295
|
+
<spirit:serviceTypeDef>
|
|
296
|
+
<spirit:typeName spirit:implicit="true">OSCI_TLM_PV</spirit:typeName>
|
|
297
|
+
<spirit:parameters>
|
|
298
|
+
<spirit:parameter>
|
|
299
|
+
<spirit:name>typedef1</spirit:name>
|
|
300
|
+
<spirit:value>ADDRESS_TYPE</spirit:value>
|
|
301
|
+
</spirit:parameter>
|
|
302
|
+
<spirit:parameter>
|
|
303
|
+
<spirit:name>typedef2</spirit:name>
|
|
304
|
+
<spirit:value>DATA_TYPE</spirit:value>
|
|
305
|
+
</spirit:parameter>
|
|
306
|
+
</spirit:parameters>
|
|
307
|
+
</spirit:serviceTypeDef>
|
|
308
|
+
</spirit:serviceTypeDefs>
|
|
309
|
+
</spirit:service>
|
|
310
|
+
</spirit:transactional>
|
|
311
|
+
</spirit:port>
|
|
312
|
+
<spirit:port>
|
|
313
|
+
<spirit:name>apb5_mslave_port</spirit:name>
|
|
314
|
+
<spirit:transactional>
|
|
315
|
+
<spirit:transTypeDef>
|
|
316
|
+
<spirit:typeName>pv_initiator_port</spirit:typeName>
|
|
317
|
+
<spirit:typeDefinition>pv_initiator_port.h</spirit:typeDefinition>
|
|
318
|
+
</spirit:transTypeDef>
|
|
319
|
+
<spirit:service>
|
|
320
|
+
<spirit:initiative>requires</spirit:initiative>
|
|
321
|
+
<spirit:serviceTypeDefs>
|
|
322
|
+
<spirit:serviceTypeDef>
|
|
323
|
+
<spirit:typeName spirit:implicit="true">OSCI_TLM_PV</spirit:typeName>
|
|
324
|
+
<spirit:parameters>
|
|
325
|
+
<spirit:parameter>
|
|
326
|
+
<spirit:name>typedef1</spirit:name>
|
|
327
|
+
<spirit:value>ADDRESS_TYPE</spirit:value>
|
|
328
|
+
</spirit:parameter>
|
|
329
|
+
<spirit:parameter>
|
|
330
|
+
<spirit:name>typedef2</spirit:name>
|
|
331
|
+
<spirit:value>DATA_TYPE</spirit:value>
|
|
332
|
+
</spirit:parameter>
|
|
333
|
+
</spirit:parameters>
|
|
334
|
+
</spirit:serviceTypeDef>
|
|
335
|
+
</spirit:serviceTypeDefs>
|
|
336
|
+
</spirit:service>
|
|
337
|
+
</spirit:transactional>
|
|
338
|
+
</spirit:port>
|
|
339
|
+
<spirit:port>
|
|
340
|
+
<spirit:name>apb6_mslave_port</spirit:name>
|
|
341
|
+
<spirit:transactional>
|
|
342
|
+
<spirit:transTypeDef>
|
|
343
|
+
<spirit:typeName>pv_initiator_port</spirit:typeName>
|
|
344
|
+
<spirit:typeDefinition>pv_initiator_port.h</spirit:typeDefinition>
|
|
345
|
+
</spirit:transTypeDef>
|
|
346
|
+
<spirit:service>
|
|
347
|
+
<spirit:initiative>requires</spirit:initiative>
|
|
348
|
+
<spirit:serviceTypeDefs>
|
|
349
|
+
<spirit:serviceTypeDef>
|
|
350
|
+
<spirit:typeName spirit:implicit="true">OSCI_TLM_PV</spirit:typeName>
|
|
351
|
+
<spirit:parameters>
|
|
352
|
+
<spirit:parameter>
|
|
353
|
+
<spirit:name>typedef1</spirit:name>
|
|
354
|
+
<spirit:value>ADDRESS_TYPE</spirit:value>
|
|
355
|
+
</spirit:parameter>
|
|
356
|
+
<spirit:parameter>
|
|
357
|
+
<spirit:name>typedef2</spirit:name>
|
|
358
|
+
<spirit:value>DATA_TYPE</spirit:value>
|
|
359
|
+
</spirit:parameter>
|
|
360
|
+
</spirit:parameters>
|
|
361
|
+
</spirit:serviceTypeDef>
|
|
362
|
+
</spirit:serviceTypeDefs>
|
|
363
|
+
</spirit:service>
|
|
364
|
+
</spirit:transactional>
|
|
365
|
+
</spirit:port>
|
|
366
|
+
<spirit:port>
|
|
367
|
+
<spirit:name>apb7_mslave_port</spirit:name>
|
|
368
|
+
<spirit:transactional>
|
|
369
|
+
<spirit:transTypeDef>
|
|
370
|
+
<spirit:typeName>pv_initiator_port</spirit:typeName>
|
|
371
|
+
<spirit:typeDefinition>pv_initiator_port.h</spirit:typeDefinition>
|
|
372
|
+
</spirit:transTypeDef>
|
|
373
|
+
<spirit:service>
|
|
374
|
+
<spirit:initiative>requires</spirit:initiative>
|
|
375
|
+
<spirit:serviceTypeDefs>
|
|
376
|
+
<spirit:serviceTypeDef>
|
|
377
|
+
<spirit:typeName spirit:implicit="true">OSCI_TLM_PV</spirit:typeName>
|
|
378
|
+
<spirit:parameters>
|
|
379
|
+
<spirit:parameter>
|
|
380
|
+
<spirit:name>typedef1</spirit:name>
|
|
381
|
+
<spirit:value>ADDRESS_TYPE</spirit:value>
|
|
382
|
+
</spirit:parameter>
|
|
383
|
+
<spirit:parameter>
|
|
384
|
+
<spirit:name>typedef2</spirit:name>
|
|
385
|
+
<spirit:value>DATA_TYPE</spirit:value>
|
|
386
|
+
</spirit:parameter>
|
|
387
|
+
</spirit:parameters>
|
|
388
|
+
</spirit:serviceTypeDef>
|
|
389
|
+
</spirit:serviceTypeDefs>
|
|
390
|
+
</spirit:service>
|
|
391
|
+
</spirit:transactional>
|
|
392
|
+
</spirit:port>
|
|
393
|
+
</spirit:ports>
|
|
394
|
+
</spirit:model>
|
|
395
|
+
<spirit:fileSets>
|
|
396
|
+
<spirit:fileSet>
|
|
397
|
+
<spirit:name>sourceCode</spirit:name>
|
|
398
|
+
<spirit:file>
|
|
399
|
+
<spirit:name>tlmsrc/apbSubSystem.h</spirit:name>
|
|
400
|
+
<spirit:fileType>systemCSource</spirit:fileType>
|
|
401
|
+
<spirit:isIncludeFile spirit:externalDeclarations="true">true</spirit:isIncludeFile>
|
|
402
|
+
<spirit:logicalName>apbSubSystem</spirit:logicalName>
|
|
403
|
+
</spirit:file>
|
|
404
|
+
</spirit:fileSet>
|
|
405
|
+
</spirit:fileSets>
|
|
406
|
+
</spirit:component>
|