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.
Files changed (142) hide show
  1. data/.autotest +15 -0
  2. data/.gitignore +2 -0
  3. data/README.html +89 -0
  4. data/README.mdown +91 -0
  5. data/Rakefile +31 -0
  6. data/VERSION +1 -0
  7. data/autotest/discover.rb +17 -0
  8. data/lib/ipxact.rb +263 -0
  9. data/lib/ipxact/component.rb +235 -0
  10. data/lib/ipxact/parser.rb +27 -0
  11. data/lib/ipxact/parser/bus_data_parser.rb +229 -0
  12. data/lib/ipxact/parser/component_data_parser.rb +309 -0
  13. data/lib/ipxact/parser/platform_data_parser.rb +63 -0
  14. data/lib/ipxact/pathfinder/graph_pathfinder.rb +191 -0
  15. data/lib/ipxact/platform.rb +43 -0
  16. data/schemas/abstractionDefinition.xsd +332 -0
  17. data/schemas/abstractor.xsd +156 -0
  18. data/schemas/autoConfigure.xsd +226 -0
  19. data/schemas/busDefinition.xsd +99 -0
  20. data/schemas/busInterface.xsd +640 -0
  21. data/schemas/commonStructures.xsd +189 -0
  22. data/schemas/component.xsd +253 -0
  23. data/schemas/configurable.xsd +82 -0
  24. data/schemas/constraints.xsd +283 -0
  25. data/schemas/design.xsd +105 -0
  26. data/schemas/designConfig.xsd +144 -0
  27. data/schemas/file.xsd +560 -0
  28. data/schemas/fileType.xsd +86 -0
  29. data/schemas/generator.xsd +240 -0
  30. data/schemas/identifier.xsd +93 -0
  31. data/schemas/index.xsd +67 -0
  32. data/schemas/memoryMap.xsd +1007 -0
  33. data/schemas/model.xsd +291 -0
  34. data/schemas/port.xsd +441 -0
  35. data/schemas/signalDrivers.xsd +220 -0
  36. data/schemas/simpleTypes.xsd +90 -0
  37. data/schemas/subInstances.xsd +256 -0
  38. data/spec/integration/bus_data_extraction_spec.rb +105 -0
  39. data/spec/integration/data_calculation_spec.rb +133 -0
  40. data/spec/integration/data_construction_spec.rb +52 -0
  41. data/spec/integration/general_spec.rb +121 -0
  42. data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_initiator_port.h +135 -0
  43. data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_initiator_port.tpp +247 -0
  44. data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_initiator_port_base.h +189 -0
  45. data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_router.h +205 -0
  46. data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_router.tpp +278 -0
  47. data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_slave_base.h +115 -0
  48. data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_slave_base.tpp +126 -0
  49. data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_target_port.h +168 -0
  50. data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_target_port_base.h +133 -0
  51. data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/pv_tlm_if.h +280 -0
  52. data/spec/test_data/spiritconsortium.org/Leon2TLM/PV/user_types.h +38 -0
  53. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/Leon2Platform/Leon2Platform.xml +77 -0
  54. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/Leon2Platform/design_Leon2Platform.xml +156 -0
  55. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/Leon2Platform/tlmsrc/Leon2Platform.h +149 -0
  56. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/apbSubSystem/apbSubSystem.xml +406 -0
  57. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/apbSubSystem/design_apbSubSystem.xml +135 -0
  58. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM1/apbSubSystem/tlmsrc/apbSubSystem.h +133 -0
  59. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/Leon2Platform/Leon2Platform.xml +77 -0
  60. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/Leon2Platform/design_Leon2Platform.xml +157 -0
  61. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/Leon2Platform/tlmsrc/Leon2Platform.h +150 -0
  62. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/apbSubSystem/apbSubSystem.xml +422 -0
  63. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/apbSubSystem/designConfig_apbSubSystem.xml +79 -0
  64. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/apbSubSystem/design_apbSubSystem.xml +184 -0
  65. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM2/apbSubSystem/tlmsrc/apbSubSystem.h +164 -0
  66. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/Leon2Platform/Leon2Platform.xml +105 -0
  67. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/Leon2Platform/design_Leon2Platform.xml +157 -0
  68. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/Leon2Platform/tlmsrc/Leon2Platform.h +152 -0
  69. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/apbSubSystem/apbSubSystem.xml +429 -0
  70. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/apbSubSystem/designConfig_apbSubSystem.xml +64 -0
  71. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/apbSubSystem/design_apbSubSystem.xml +150 -0
  72. data/spec/test_data/spiritconsortium.org/Leon2TLM/SystemTLM3/apbSubSystem/tlmsrc/apbSubSystem.h +167 -0
  73. data/spec/test_data/spiritconsortium.org/Leon2TLM/ahbbus/1.4/ahbbus22.xml +236 -0
  74. data/spec/test_data/spiritconsortium.org/Leon2TLM/ahbbus/1.4/tlmsrc/ahbbus.h +52 -0
  75. data/spec/test_data/spiritconsortium.org/Leon2TLM/ahbram/1.4/ahbram.xml +184 -0
  76. data/spec/test_data/spiritconsortium.org/Leon2TLM/ahbram/1.4/tlmsrc/ahbram.cc +93 -0
  77. data/spec/test_data/spiritconsortium.org/Leon2TLM/ahbram/1.4/tlmsrc/ahbram.h +77 -0
  78. data/spec/test_data/spiritconsortium.org/Leon2TLM/apbbus/1.4/apbbus8.xml +544 -0
  79. data/spec/test_data/spiritconsortium.org/Leon2TLM/apbbus/1.4/tlmsrc/apbbus.h +55 -0
  80. data/spec/test_data/spiritconsortium.org/Leon2TLM/apbmst/1.4/apbmst.xml +209 -0
  81. data/spec/test_data/spiritconsortium.org/Leon2TLM/apbmst/1.4/tlmsrc/apbmst.h +53 -0
  82. data/spec/test_data/spiritconsortium.org/Leon2TLM/apbram/1.0/apbram.xml +395 -0
  83. data/spec/test_data/spiritconsortium.org/Leon2TLM/apbram/1.0/hdlsrc/apbram.cc +89 -0
  84. data/spec/test_data/spiritconsortium.org/Leon2TLM/apbram/1.0/hdlsrc/apbram.h +69 -0
  85. data/spec/test_data/spiritconsortium.org/Leon2TLM/apbram/1.0/hdlsrc/apbram.v +82 -0
  86. data/spec/test_data/spiritconsortium.org/Leon2TLM/apbram/1.0/hdlsrc/apbram.vhd +132 -0
  87. data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.4/cgu.xml +686 -0
  88. data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.4/tlmsrc/cgu.cc +121 -0
  89. data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.4/tlmsrc/cgu.h +81 -0
  90. data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.5/cgu.xml +707 -0
  91. data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.5/tlmsrc/cgu.cc +121 -0
  92. data/spec/test_data/spiritconsortium.org/Leon2TLM/cgu/1.5/tlmsrc/cgu.h +81 -0
  93. data/spec/test_data/spiritconsortium.org/Leon2TLM/dma/1.4/dma.xml +272 -0
  94. data/spec/test_data/spiritconsortium.org/Leon2TLM/dma/1.4/tlmsrc/dma.cc +230 -0
  95. data/spec/test_data/spiritconsortium.org/Leon2TLM/dma/1.4/tlmsrc/dma.h +116 -0
  96. data/spec/test_data/spiritconsortium.org/Leon2TLM/irqctrl/1.4/irqctrl.xml +530 -0
  97. data/spec/test_data/spiritconsortium.org/Leon2TLM/irqctrl/1.4/tlmsrc/irqctrl.cc +211 -0
  98. data/spec/test_data/spiritconsortium.org/Leon2TLM/irqctrl/1.4/tlmsrc/irqctrl.h +108 -0
  99. data/spec/test_data/spiritconsortium.org/Leon2TLM/processor/1.4/processor.xml +423 -0
  100. data/spec/test_data/spiritconsortium.org/Leon2TLM/processor/1.4/tlmsrc/processor.cc +331 -0
  101. data/spec/test_data/spiritconsortium.org/Leon2TLM/processor/1.4/tlmsrc/processor.h +121 -0
  102. data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2apb/1.0/pv2apb.xml +240 -0
  103. data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2apb/1.0/tlmsrc/pv2apb.cc +153 -0
  104. data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2apb/1.0/tlmsrc/pv2apb.h +77 -0
  105. data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2tac/1.0/pv2tac.xml +154 -0
  106. data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2tac/1.0/tlmsrc/pv2tac.cc +114 -0
  107. data/spec/test_data/spiritconsortium.org/Leon2TLM/pv2tac/1.0/tlmsrc/pv2tac.h +67 -0
  108. data/spec/test_data/spiritconsortium.org/Leon2TLM/rgu/1.4/rgu.xml +766 -0
  109. data/spec/test_data/spiritconsortium.org/Leon2TLM/rgu/1.4/tlmsrc/rgu.cc +126 -0
  110. data/spec/test_data/spiritconsortium.org/Leon2TLM/rgu/1.4/tlmsrc/rgu.h +105 -0
  111. data/spec/test_data/spiritconsortium.org/Leon2TLM/scmlAdaptor/1.0/scmlAdaptor.xml +154 -0
  112. data/spec/test_data/spiritconsortium.org/Leon2TLM/scmlAdaptor/1.0/tlmsrc/scmladaptor.cc +100 -0
  113. data/spec/test_data/spiritconsortium.org/Leon2TLM/scmlAdaptor/1.0/tlmsrc/scmladaptor.h +62 -0
  114. data/spec/test_data/spiritconsortium.org/Leon2TLM/serial_device/1.0/serial_device.xml +151 -0
  115. data/spec/test_data/spiritconsortium.org/Leon2TLM/serial_device/1.0/tlmsrc/serial_device.h +85 -0
  116. data/spec/test_data/spiritconsortium.org/Leon2TLM/timers/1.4/timers.xml +460 -0
  117. data/spec/test_data/spiritconsortium.org/Leon2TLM/timers/1.4/tlmsrc/timers.cc +201 -0
  118. data/spec/test_data/spiritconsortium.org/Leon2TLM/timers/1.4/tlmsrc/timers.h +102 -0
  119. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/inc/uart.h +152 -0
  120. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/inc/uart_fifo.h +113 -0
  121. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/inc/uart_memory_map.h +96 -0
  122. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/inc/uart_types.h +60 -0
  123. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/src/uart.cc +125 -0
  124. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/src/uart_interrupt_handler.cc +136 -0
  125. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/src/uart_register_bank.cc +129 -0
  126. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/tlmsrc/src/uart_serial_tx_rx.cc +145 -0
  127. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_scml/1.0/uart_scml.xml +372 -0
  128. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/include/Leon2_uart.h +216 -0
  129. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/include/def_Leon2_uart.h +34 -0
  130. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/include/tlm_field.h +72 -0
  131. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/include/tlm_register.h +129 -0
  132. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/include/tlmreg_Leon2_uart.h +133 -0
  133. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/src/Leon2_uart.cc +316 -0
  134. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/src/tlmreg_Leon2_uart.cc +197 -0
  135. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/tlmsrc/src/user_specific_Leon2_uart.cc +146 -0
  136. data/spec/test_data/spiritconsortium.org/Leon2TLM/uart_tac/1.0/uart_tac.xml +222 -0
  137. data/spec/unit/component_spec.rb +98 -0
  138. data/spec/unit/graph_pathfinder_spec.rb +128 -0
  139. data/spec/unit/interconnect_spec.rb +177 -0
  140. data/spec/unit/ipxact_spec.rb +69 -0
  141. data/spec/unit/platform_spec.rb +34 -0
  142. metadata +225 -0
@@ -0,0 +1,64 @@
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:designConfiguration 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>designConfig_apbSubSystem</spirit:name>
32
+ <spirit:version>1.3</spirit:version>
33
+ <spirit:designRef spirit:library="Leon2TLM" spirit:name="design_apbSubSystem" spirit:vendor="spiritconsortium.org" spirit:version="1.3"/>
34
+ <spirit:interconnectionConfiguration>
35
+ <spirit:interconnectionRef>apbramconnection</spirit:interconnectionRef>
36
+ <spirit:abstractors>
37
+ <spirit:abstractor>
38
+ <spirit:instanceName>i_pv2apb</spirit:instanceName>
39
+ <spirit:abstractorRef spirit:library="Leon2TLM" spirit:name="pv2apb" spirit:vendor="spiritconsortium.org" spirit:version="1.0"/>
40
+ <spirit:viewName>PVPVT</spirit:viewName>
41
+ </spirit:abstractor>
42
+ </spirit:abstractors>
43
+ </spirit:interconnectionConfiguration>
44
+ <spirit:viewConfiguration>
45
+ <spirit:instanceName>i_apb</spirit:instanceName>
46
+ <spirit:viewName>TLM_PV</spirit:viewName>
47
+ </spirit:viewConfiguration>
48
+ <spirit:viewConfiguration>
49
+ <spirit:instanceName>i_h2p</spirit:instanceName>
50
+ <spirit:viewName>TLM_PV</spirit:viewName>
51
+ </spirit:viewConfiguration>
52
+ <spirit:viewConfiguration>
53
+ <spirit:instanceName>i_irq</spirit:instanceName>
54
+ <spirit:viewName>TLM_PV</spirit:viewName>
55
+ </spirit:viewConfiguration>
56
+ <spirit:viewConfiguration>
57
+ <spirit:instanceName>i_tim</spirit:instanceName>
58
+ <spirit:viewName>TLM_PV</spirit:viewName>
59
+ </spirit:viewConfiguration>
60
+ <spirit:viewConfiguration>
61
+ <spirit:instanceName>i_apbram</spirit:instanceName>
62
+ <spirit:viewName>systemC</spirit:viewName>
63
+ </spirit:viewConfiguration>
64
+ </spirit:designConfiguration>
@@ -0,0 +1,150 @@
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_apbSubSystem</spirit:name>
32
+ <spirit:version>1.3</spirit:version>
33
+ <spirit:componentInstances>
34
+ <spirit:componentInstance>
35
+ <spirit:instanceName>i_apb</spirit:instanceName>
36
+ <spirit:componentRef spirit:library="Leon2TLM" spirit:name="apbbus8" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
37
+ <spirit:configurableElementValues>
38
+ <spirit:configurableElementValue spirit:referenceId="rangeSlv0">4096</spirit:configurableElementValue>
39
+ <spirit:configurableElementValue spirit:referenceId="rangeSlv1">4096</spirit:configurableElementValue>
40
+ <spirit:configurableElementValue spirit:referenceId="rangeSlv2">4096</spirit:configurableElementValue>
41
+ <spirit:configurableElementValue spirit:referenceId="rangeSlv3">4096</spirit:configurableElementValue>
42
+ <spirit:configurableElementValue spirit:referenceId="rangeSlv4">4096</spirit:configurableElementValue>
43
+ <spirit:configurableElementValue spirit:referenceId="rangeSlv5">4096</spirit:configurableElementValue>
44
+ <spirit:configurableElementValue spirit:referenceId="rangeSlv6">4096</spirit:configurableElementValue>
45
+ <spirit:configurableElementValue spirit:referenceId="rangeSlv7">4096</spirit:configurableElementValue>
46
+ <spirit:configurableElementValue spirit:referenceId="remapAddressSlv0">0x0</spirit:configurableElementValue>
47
+ <spirit:configurableElementValue spirit:referenceId="remapAddressSlv1">0x1000</spirit:configurableElementValue>
48
+ <spirit:configurableElementValue spirit:referenceId="remapAddressSlv2">0x2000</spirit:configurableElementValue>
49
+ <spirit:configurableElementValue spirit:referenceId="remapAddressSlv3">0x3000</spirit:configurableElementValue>
50
+ <spirit:configurableElementValue spirit:referenceId="remapAddressSlv4">0x4000</spirit:configurableElementValue>
51
+ <spirit:configurableElementValue spirit:referenceId="remapAddressSlv5">0x5000</spirit:configurableElementValue>
52
+ <spirit:configurableElementValue spirit:referenceId="remapAddressSlv6">0x6000</spirit:configurableElementValue>
53
+ <spirit:configurableElementValue spirit:referenceId="remapAddressSlv7">0x7000</spirit:configurableElementValue>
54
+ <spirit:configurableElementValue spirit:referenceId="mapfile">leon2ApbBus.map</spirit:configurableElementValue>
55
+ </spirit:configurableElementValues>
56
+ </spirit:componentInstance>
57
+ <spirit:componentInstance>
58
+ <spirit:instanceName>i_h2p</spirit:instanceName>
59
+ <spirit:componentRef spirit:library="Leon2TLM" spirit:name="apbmst" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
60
+ <spirit:configurableElementValues>
61
+ <spirit:configurableElementValue spirit:referenceId="masterRange">1M</spirit:configurableElementValue>
62
+ <spirit:configurableElementValue spirit:referenceId="mapfile">leon2ApbMst.map</spirit:configurableElementValue>
63
+ </spirit:configurableElementValues>
64
+ </spirit:componentInstance>
65
+ <spirit:componentInstance>
66
+ <spirit:instanceName>i_irq</spirit:instanceName>
67
+ <spirit:componentRef spirit:library="Leon2TLM" spirit:name="irqctrl" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
68
+ </spirit:componentInstance>
69
+ <spirit:componentInstance>
70
+ <spirit:instanceName>i_tim</spirit:instanceName>
71
+ <spirit:componentRef spirit:library="Leon2TLM" spirit:name="timers" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
72
+ </spirit:componentInstance>
73
+ <spirit:componentInstance>
74
+ <spirit:instanceName>i_apbram</spirit:instanceName>
75
+ <spirit:componentRef spirit:library="Leon2TLM" spirit:name="apbram" spirit:vendor="spiritconsortium.org" spirit:version="1.0"/>
76
+ </spirit:componentInstance>
77
+ </spirit:componentInstances>
78
+ <spirit:interconnections>
79
+ <spirit:interconnection>
80
+ <spirit:name>defaultid4490143</spirit:name>
81
+ <spirit:activeInterface spirit:busRef="APB_Master" spirit:componentRef="i_h2p"/>
82
+ <spirit:activeInterface spirit:busRef="APB_MirroredMaster" spirit:componentRef="i_apb"/>
83
+ </spirit:interconnection>
84
+ <spirit:interconnection>
85
+ <spirit:name>defaultid4490160</spirit:name>
86
+ <spirit:activeInterface spirit:busRef="APB_Slave" spirit:componentRef="i_irq"/>
87
+ <spirit:activeInterface spirit:busRef="APB_MirroredSlave0" spirit:componentRef="i_apb"/>
88
+ </spirit:interconnection>
89
+ <spirit:interconnection>
90
+ <spirit:name>defaultid4490176</spirit:name>
91
+ <spirit:activeInterface spirit:busRef="APB_Slave" spirit:componentRef="i_tim"/>
92
+ <spirit:activeInterface spirit:busRef="APB_MirroredSlave1" spirit:componentRef="i_apb"/>
93
+ </spirit:interconnection>
94
+ <spirit:interconnection>
95
+ <spirit:name>apbramconnection</spirit:name>
96
+ <spirit:activeInterface spirit:busRef="ambaAPB" spirit:componentRef="i_apbram"/>
97
+ <spirit:activeInterface spirit:busRef="APB_MirroredSlave2" spirit:componentRef="i_apb"/>
98
+ </spirit:interconnection>
99
+ <spirit:interconnection>
100
+ <spirit:name>defaultid4490226</spirit:name>
101
+ <spirit:activeInterface spirit:busRef="INT_Slave1" spirit:componentRef="i_irq"/>
102
+ <spirit:activeInterface spirit:busRef="Int0" spirit:componentRef="i_tim"/>
103
+ </spirit:interconnection>
104
+ <spirit:interconnection>
105
+ <spirit:name>defaultid4490243</spirit:name>
106
+ <spirit:activeInterface spirit:busRef="INT_Slave2" spirit:componentRef="i_irq"/>
107
+ <spirit:activeInterface spirit:busRef="Int1" spirit:componentRef="i_tim"/>
108
+ </spirit:interconnection>
109
+ </spirit:interconnections>
110
+ <spirit:adHocConnections>
111
+ <spirit:adHocConnection>
112
+ <spirit:name>clk_timers</spirit:name>
113
+ <spirit:internalPortReference spirit:componentRef="i_tim" spirit:portRef="clk"/>
114
+ <spirit:externalPortReference spirit:portRef="clk_timers"/>
115
+ </spirit:adHocConnection>
116
+ <spirit:adHocConnection>
117
+ <spirit:name>pclk</spirit:name>
118
+ <spirit:internalPortReference spirit:componentRef="i_apbram" spirit:portRef="pclk"/>
119
+ <spirit:externalPortReference spirit:portRef="pclk"/>
120
+ </spirit:adHocConnection>
121
+ <spirit:adHocConnection>
122
+ <spirit:name>presetn</spirit:name>
123
+ <spirit:internalPortReference spirit:componentRef="i_apbram" spirit:portRef="presetn"/>
124
+ <spirit:externalPortReference spirit:portRef="presetn"/>
125
+ </spirit:adHocConnection>
126
+ </spirit:adHocConnections>
127
+ <spirit:hierConnections>
128
+ <spirit:hierConnection spirit:interfaceRef="AHB_Slave">
129
+ <spirit:interface spirit:busRef="AHB_Slave" spirit:componentRef="i_h2p"/>
130
+ </spirit:hierConnection>
131
+ <spirit:hierConnection spirit:interfaceRef="INT_Master">
132
+ <spirit:interface spirit:busRef="INT_Master" spirit:componentRef="i_irq"/>
133
+ </spirit:hierConnection>
134
+ <spirit:hierConnection spirit:interfaceRef="INT_Slave">
135
+ <spirit:interface spirit:busRef="INT_Slave4" spirit:componentRef="i_irq"/>
136
+ </spirit:hierConnection>
137
+ <spirit:hierConnection spirit:interfaceRef="APB_MSlave_4">
138
+ <spirit:interface spirit:busRef="APB_MirroredSlave4" spirit:componentRef="i_apb"/>
139
+ </spirit:hierConnection>
140
+ <spirit:hierConnection spirit:interfaceRef="APB_MSlave_5">
141
+ <spirit:interface spirit:busRef="APB_MirroredSlave5" spirit:componentRef="i_apb"/>
142
+ </spirit:hierConnection>
143
+ <spirit:hierConnection spirit:interfaceRef="APB_MSlave_6">
144
+ <spirit:interface spirit:busRef="APB_MirroredSlave6" spirit:componentRef="i_apb"/>
145
+ </spirit:hierConnection>
146
+ <spirit:hierConnection spirit:interfaceRef="APB_MSlave_7">
147
+ <spirit:interface spirit:busRef="APB_MirroredSlave7" spirit:componentRef="i_apb"/>
148
+ </spirit:hierConnection>
149
+ </spirit:hierConnections>
150
+ </spirit:design>
@@ -0,0 +1,167 @@
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 APB design
32
+ *------------------------------------------------------------------------------
33
+ * Revision: 1.4
34
+ * Authors: SWG
35
+ * Copyright The SPIRIT Consortium 2008
36
+ *******************************************************************************/
37
+
38
+ #ifndef _APB_SUBSYSTEM_H_
39
+ #define _APB_SUBSYSTEM_H_
40
+
41
+ /*------------------------------------------------------------------------------
42
+ * Includes
43
+ *----------------------------------------------------------------------------*/
44
+ #include <systemc.h>
45
+
46
+ #include "apbbus.h"
47
+ #include "apbmst.h"
48
+ #include "timers.h"
49
+ #include "irqctrl.h"
50
+ #include "pv2apb.h"
51
+ #include "apbram.h"
52
+ #include "user_types.h"
53
+
54
+ #include "pv_target_port.h"
55
+ #include "pv_initiator_port.h"
56
+
57
+ /*------------------------------------------------------------------------------
58
+ * top netlist
59
+ *----------------------------------------------------------------------------*/
60
+ class apbSubSystem : public sc_module
61
+ {
62
+ public:
63
+ // slave ports
64
+ sc_in<int> int4_slave_port;
65
+ pv_target_port<ADDRESS_TYPE,DATA_TYPE> ahb_slave_port;
66
+ // interrupt ports
67
+ sc_out<int> irl_master_port;
68
+ sc_in<int> irq_slave_port;
69
+ sc_in<bool> ack_slave_port;
70
+ sc_in<sc_logic> clk_timers;
71
+ sc_in<sc_logic> pclk;
72
+ sc_in<sc_logic> presetn;
73
+
74
+ pv_initiator_port<ADDRESS_TYPE,DATA_TYPE> apb4_mslave_port;
75
+ pv_initiator_port<ADDRESS_TYPE,DATA_TYPE> apb5_mslave_port;
76
+ pv_initiator_port<ADDRESS_TYPE,DATA_TYPE> apb6_mslave_port;
77
+ pv_initiator_port<ADDRESS_TYPE,DATA_TYPE> apb7_mslave_port;
78
+
79
+ private:
80
+ // component instances
81
+ apbmst* i_h2p;
82
+ apbbus* i_apb;
83
+ irqctrl* i_irq;
84
+ timers* i_tim;
85
+ pv2apb* i_pv2apb;
86
+ apbram* i_apbram;
87
+ // interrupt signals
88
+ sc_buffer<int> interrupt_tim0;
89
+ sc_buffer<int> interrupt_tim1;
90
+ sc_buffer<sc_logic> psel;
91
+ sc_buffer<sc_logic> penable;
92
+ sc_buffer<sc_logic> pwrite;
93
+ sc_buffer<sc_lv<12> > paddr;
94
+ sc_buffer<sc_lv<32> > pwdata;
95
+ sc_buffer<sc_lv<32> > prdata;
96
+ sc_buffer<int> dangling;
97
+
98
+ public:
99
+ apbSubSystem(sc_module_name module_name) : sc_module(module_name),
100
+ ahb_slave_port("ahb_slave_port"),
101
+ apb4_mslave_port("apb4_mslave_port"),
102
+ apb5_mslave_port("apb5_mslave_port"),
103
+ apb6_mslave_port("apb6_mslave_port"),
104
+ apb7_mslave_port("apb7_mslave_port")
105
+ {
106
+ // instances
107
+ i_h2p = new apbmst("i_apbmst","leon2ApbMst.map");
108
+ i_apb = new apbbus("i_apbbus","leon2ApbBus.map");
109
+ i_irq = new irqctrl("i_irqctrl");
110
+ i_tim = new timers("i_timers");
111
+ i_pv2apb = new pv2apb("i_pv2apb");
112
+ i_apbram = new apbram("i_apbram");
113
+ // interconnections (transactional port binding)
114
+ i_h2p->initiator_port ( i_apb->target_port );
115
+ i_apb->initiator_port ( i_irq->apb_slave_port ); // binding of APB 0
116
+ i_apb->initiator_port ( i_tim->apb_slave_port ); // binding of APB 1
117
+ i_apb->initiator_port ( i_pv2apb->tlmpv_slave_port ); // binding of APB 8
118
+ // connections (wire port binding)
119
+ i_pv2apb->pclk (pclk);
120
+ i_apbram->pclk (pclk);
121
+ i_pv2apb->presetn (presetn);
122
+ i_apbram->presetn (presetn);
123
+ i_pv2apb->psel (psel);
124
+ i_apbram->psel (psel);
125
+ i_pv2apb->penable (penable);
126
+ i_apbram->penable (penable);
127
+ i_pv2apb->pwrite (pwrite);
128
+ i_apbram->pwrite (pwrite);
129
+ i_pv2apb->paddr (paddr);
130
+ i_apbram->paddr (paddr);
131
+ i_pv2apb->pwdata (pwdata);
132
+ i_apbram->pwdata (pwdata);
133
+ i_pv2apb->prdata (prdata);
134
+ i_apbram->prdata (prdata);
135
+
136
+ i_tim->int0 (interrupt_tim0);
137
+ i_irq->int3 (interrupt_tim0);
138
+ i_tim->int1 (interrupt_tim1);
139
+ i_irq->int2 (interrupt_tim1);
140
+ i_tim->clk (clk_timers);
141
+ i_irq->int1 (dangling);
142
+ i_irq->int0 (dangling);
143
+ // external interconnections
144
+ ahb_slave_port (i_h2p->target_port );
145
+ i_apb->initiator_port ( apb7_mslave_port ); // binding of APB 7
146
+ i_apb->initiator_port ( apb6_mslave_port ); // binding of APB 6
147
+ i_apb->initiator_port ( apb5_mslave_port ); // binding of APB 5
148
+ i_apb->initiator_port ( apb4_mslave_port ); // binding of APB 4
149
+ // external adhoc connections
150
+ i_irq->int4 ( this->int4_slave_port );
151
+ i_irq->irlout ( this->irl_master_port );
152
+ i_irq->irlin ( this->irq_slave_port );
153
+ i_irq->intack ( this->ack_slave_port );
154
+ }
155
+ ~apbSubSystem() {
156
+ delete i_h2p;
157
+ delete i_apb;
158
+ delete i_tim;
159
+ delete i_irq;
160
+ delete i_pv2apb;
161
+ delete i_apbram;
162
+ }
163
+ };
164
+
165
+ #endif /* _APB_SUBSYSTEM_H_ */
166
+
167
+
@@ -0,0 +1,236 @@
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>ahbbus22</spirit:name>
32
+ <spirit:version>1.4</spirit:version>
33
+ <spirit:busInterfaces>
34
+ <spirit:busInterface>
35
+ <spirit:name>AHB_MirroredMaster0</spirit:name>
36
+ <spirit:busType spirit:library="AMBA2" spirit:name="AHB" spirit:vendor="amba.com" spirit:version="r2p0_6"/>
37
+ <spirit:abstractionType spirit:library="abstractiondef.tlm" spirit:name="ahb_pv" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
38
+ <spirit:mirroredMaster/>
39
+ <spirit:portMaps>
40
+ <spirit:portMap>
41
+ <spirit:logicalPort>
42
+ <spirit:name>PV_TRANS</spirit:name>
43
+ </spirit:logicalPort>
44
+ <spirit:physicalPort>
45
+ <spirit:name>target_port</spirit:name>
46
+ </spirit:physicalPort>
47
+ </spirit:portMap>
48
+ </spirit:portMaps>
49
+ </spirit:busInterface>
50
+ <spirit:busInterface>
51
+ <spirit:name>AHB_MirroredMaster1</spirit:name>
52
+ <spirit:busType spirit:library="AMBA2" spirit:name="AHB" spirit:vendor="amba.com" spirit:version="r2p0_6"/>
53
+ <spirit:abstractionType spirit:library="abstractiondef.tlm" spirit:name="ahb_pv" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
54
+ <spirit:mirroredMaster/>
55
+ <spirit:portMaps>
56
+ <spirit:portMap>
57
+ <spirit:logicalPort>
58
+ <spirit:name>PV_TRANS</spirit:name>
59
+ </spirit:logicalPort>
60
+ <spirit:physicalPort>
61
+ <spirit:name>target_port</spirit:name>
62
+ </spirit:physicalPort>
63
+ </spirit:portMap>
64
+ </spirit:portMaps>
65
+ </spirit:busInterface>
66
+ <spirit:busInterface>
67
+ <spirit:name>AHB_MirroredSlave0</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:mirroredSlave>
71
+ <spirit:baseAddresses>
72
+ <spirit:remapAddress spirit:id="start_addr_slv0_mirror" spirit:resolve="user" spirit:choiceRef="BaseAddressChoices" spirit:configGroups="requiredConfig" spirit:prompt="Slave 0 Starting Address:">0x00000000</spirit:remapAddress>
73
+ <spirit:range spirit:id="range_slv0_mirror" spirit:resolve="user" spirit:configGroups="requiredConfig" spirit:prompt="Slave 0 Range:">0x00010000</spirit:range>
74
+ </spirit:baseAddresses>
75
+ </spirit:mirroredSlave>
76
+ <spirit:portMaps>
77
+ <spirit:portMap>
78
+ <spirit:logicalPort>
79
+ <spirit:name>PV_TRANS</spirit:name>
80
+ </spirit:logicalPort>
81
+ <spirit:physicalPort>
82
+ <spirit:name>initiator_port</spirit:name>
83
+ </spirit:physicalPort>
84
+ </spirit:portMap>
85
+ </spirit:portMaps>
86
+ </spirit:busInterface>
87
+ <spirit:busInterface>
88
+ <spirit:name>AHB_MirroredSlave1</spirit:name>
89
+ <spirit:busType spirit:library="AMBA2" spirit:name="AHB" spirit:vendor="amba.com" spirit:version="r2p0_6"/>
90
+ <spirit:abstractionType spirit:library="abstractiondef.tlm" spirit:name="ahb_pv" spirit:vendor="spiritconsortium.org" spirit:version="1.4"/>
91
+ <spirit:mirroredSlave>
92
+ <spirit:baseAddresses>
93
+ <spirit:remapAddress spirit:id="start_addr_slv1_mirror" spirit:resolve="user" spirit:choiceRef="BaseAddressChoices" spirit:configGroups="requiredConfig" spirit:prompt="Slave 1 Starting Address:">0x10000000</spirit:remapAddress>
94
+ <spirit:range spirit:id="range_slv1_mirror" spirit:resolve="user" spirit:configGroups="requiredConfig" spirit:prompt="Slave 1 Range:">0x00010000</spirit:range>
95
+ </spirit:baseAddresses>
96
+ </spirit:mirroredSlave>
97
+ <spirit:portMaps>
98
+ <spirit:portMap>
99
+ <spirit:logicalPort>
100
+ <spirit:name>PV_TRANS</spirit:name>
101
+ </spirit:logicalPort>
102
+ <spirit:physicalPort>
103
+ <spirit:name>initiator_port</spirit:name>
104
+ </spirit:physicalPort>
105
+ </spirit:portMap>
106
+ </spirit:portMaps>
107
+ </spirit:busInterface>
108
+ </spirit:busInterfaces>
109
+ <spirit:channels>
110
+ <spirit:channel>
111
+ <spirit:name>AHBChannel</spirit:name>
112
+ <spirit:busInterfaceRef>AHB_MirroredMaster0</spirit:busInterfaceRef>
113
+ <spirit:busInterfaceRef>AHB_MirroredMaster1</spirit:busInterfaceRef>
114
+ <spirit:busInterfaceRef>AHB_MirroredSlave0</spirit:busInterfaceRef>
115
+ <spirit:busInterfaceRef>AHB_MirroredSlave1</spirit:busInterfaceRef>
116
+ </spirit:channel>
117
+ </spirit:channels>
118
+ <spirit:model>
119
+ <spirit:views>
120
+ <spirit:view>
121
+ <spirit:name>TLM_PV</spirit:name>
122
+ <spirit:envIdentifier>:*Simulation:</spirit:envIdentifier>
123
+ <spirit:language>systemc</spirit:language>
124
+ <spirit:modelName>ahbbus</spirit:modelName>
125
+ <spirit:fileSetRef>
126
+ <spirit:localName>sourceCode</spirit:localName>
127
+ </spirit:fileSetRef>
128
+ </spirit:view>
129
+ </spirit:views>
130
+ <spirit:ports>
131
+ <spirit:port>
132
+ <spirit:name>target_port</spirit:name>
133
+ <spirit:transactional>
134
+ <spirit:transTypeDef>
135
+ <spirit:typeName>pv_target_port</spirit:typeName>
136
+ <spirit:typeDefinition>pv_target_port.h</spirit:typeDefinition>
137
+ </spirit:transTypeDef>
138
+ <spirit:service>
139
+ <spirit:initiative>provides</spirit:initiative>
140
+ <spirit:serviceTypeDefs>
141
+ <spirit:serviceTypeDef>
142
+ <spirit:typeName spirit:implicit="true">OSCI_TLM_PV</spirit:typeName>
143
+ <spirit:parameters>
144
+ <spirit:parameter>
145
+ <spirit:name>typedef1</spirit:name>
146
+ <spirit:value>ADDRESS_TYPE</spirit:value>
147
+ </spirit:parameter>
148
+ <spirit:parameter>
149
+ <spirit:name>typedef2</spirit:name>
150
+ <spirit:value>DATA_TYPE</spirit:value>
151
+ </spirit:parameter>
152
+ </spirit:parameters>
153
+ </spirit:serviceTypeDef>
154
+ </spirit:serviceTypeDefs>
155
+ </spirit:service>
156
+ </spirit:transactional>
157
+ </spirit:port>
158
+ <spirit:port>
159
+ <spirit:name>initiator_port</spirit:name>
160
+ <spirit:transactional>
161
+ <spirit:transTypeDef>
162
+ <spirit:typeName>pv_initiator_port</spirit:typeName>
163
+ <spirit:typeDefinition>pv_initiator_port.h</spirit:typeDefinition>
164
+ </spirit:transTypeDef>
165
+ <spirit:service>
166
+ <spirit:initiative>requires</spirit:initiative>
167
+ <spirit:serviceTypeDefs>
168
+ <spirit:serviceTypeDef>
169
+ <spirit:typeName spirit:implicit="true">OSCI_TLM_PV</spirit:typeName>
170
+ <spirit:parameters>
171
+ <spirit:parameter>
172
+ <spirit:name>typedef1</spirit:name>
173
+ <spirit:value>ADDRESS_TYPE</spirit:value>
174
+ </spirit:parameter>
175
+ <spirit:parameter>
176
+ <spirit:name>typedef2</spirit:name>
177
+ <spirit:value>DATA_TYPE</spirit:value>
178
+ </spirit:parameter>
179
+ </spirit:parameters>
180
+ </spirit:serviceTypeDef>
181
+ </spirit:serviceTypeDefs>
182
+ </spirit:service>
183
+ </spirit:transactional>
184
+ </spirit:port>
185
+ </spirit:ports>
186
+ <spirit:modelParameters>
187
+ <spirit:modelParameter spirit:dataType="const char*" spirit:usageType="nontyped">
188
+ <spirit:name>mapfile</spirit:name>
189
+ <spirit:value spirit:id="mapfile" spirit:resolve="user">ahbbus22MapFile.map</spirit:value>
190
+ </spirit:modelParameter>
191
+ </spirit:modelParameters>
192
+ </spirit:model>
193
+ <spirit:choices>
194
+ <spirit:choice>
195
+ <spirit:name>BaseAddressChoices</spirit:name>
196
+ <spirit:enumeration spirit:text="0x00000000">0x00000000</spirit:enumeration>
197
+ <spirit:enumeration spirit:text="0x10000000">0x10000000</spirit:enumeration>
198
+ <spirit:enumeration spirit:text="0x20000000">0x20000000</spirit:enumeration>
199
+ <spirit:enumeration spirit:text="0x30000000">0x30000000</spirit:enumeration>
200
+ <spirit:enumeration spirit:text="0x40000000">0x40000000</spirit:enumeration>
201
+ <spirit:enumeration spirit:text="0x50000000">0x50000000</spirit:enumeration>
202
+ <spirit:enumeration spirit:text="0x60000000">0x60000000</spirit:enumeration>
203
+ <spirit:enumeration spirit:text="0x70000000">0x70000000</spirit:enumeration>
204
+ <spirit:enumeration spirit:text="0x80000000">0x80000000</spirit:enumeration>
205
+ <spirit:enumeration spirit:text="0x90000000">0x90000000</spirit:enumeration>
206
+ <spirit:enumeration spirit:text="0xa0000000">0xa0000000</spirit:enumeration>
207
+ <spirit:enumeration spirit:text="0xb0000000">0xb0000000</spirit:enumeration>
208
+ <spirit:enumeration spirit:text="0xc0000000">0xc0000000</spirit:enumeration>
209
+ <spirit:enumeration spirit:text="0xd0000000">0xd0000000</spirit:enumeration>
210
+ <spirit:enumeration spirit:text="0xe0000000">0xe0000000</spirit:enumeration>
211
+ <spirit:enumeration spirit:text="0xf0000000">0xf0000000</spirit:enumeration>
212
+ </spirit:choice>
213
+ </spirit:choices>
214
+ <spirit:fileSets>
215
+ <spirit:fileSet>
216
+ <spirit:name>sourceCode</spirit:name>
217
+ <spirit:file>
218
+ <spirit:name>tlmsrc/ahbbus.h</spirit:name>
219
+ <spirit:fileType>systemCSource</spirit:fileType>
220
+ <spirit:isIncludeFile spirit:externalDeclarations="true">true</spirit:isIncludeFile>
221
+ <spirit:logicalName>ahbbus</spirit:logicalName>
222
+ <spirit:dependency>../../PV</spirit:dependency>
223
+ </spirit:file>
224
+ <spirit:file>
225
+ <spirit:name>../../PV/pv_router.h</spirit:name>
226
+ <spirit:fileType>unknown</spirit:fileType>
227
+ <spirit:isIncludeFile>true</spirit:isIncludeFile>
228
+ </spirit:file>
229
+ <spirit:file>
230
+ <spirit:name>../../PV/user_types.h</spirit:name>
231
+ <spirit:fileType>unknown</spirit:fileType>
232
+ <spirit:isIncludeFile>true</spirit:isIncludeFile>
233
+ </spirit:file>
234
+ </spirit:fileSet>
235
+ </spirit:fileSets>
236
+ </spirit:component>