Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec-tests / vhdl_json / vhdl_files / 2-exportOK / ghdl / ghdl / testsuite / vests / vhdl-93 / ashenden / compliant / ch_15_dlxtst-b.json @ 3fd18385

History | View | Annotate | Download (9.07 KB)

1
{
2
  "DESIGN_FILE" : {
3
    "design_units" : [{
4
      "contexts" : [["LIBRARY_CLAUSE", [["IDENTIFIER", "ieee"]]], ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "ieee"], ["SIMPLE_NAME", "std_logic_1164"]]]]]], "library" : ["ARCHITECTURE_BODY", {
5
        "name" : ["IDENTIFIER", "bench"], "entity" : ["IDENTIFIER", "dlx_test"], "ARCHITECTURE_DECLARATIVE_PART" : [{
6
          "use_clause" : ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["SIMPLE_NAME", "dlx_types"]]]]]}
7
        , {
8
          "declaration" : ["COMPONENT_DECLARATION", {
9
            "name" : ["IDENTIFIER", "clock_gen"], "ports" : [{
10
              "names" : [["IDENTIFIER", "phi1"], ["IDENTIFIER", "phi2"]], "mode" : ["out"], "typ" : {
11
                "name" : ["SIMPLE_NAME", "std_logic"]}
12
              }
13
            , {
14
              "names" : [["IDENTIFIER", "reset"]], "mode" : ["out"], "typ" : {
15
                "name" : ["SIMPLE_NAME", "std_logic"]}
16
              }
17
            ]}
18
          ]}
19
        , {
20
          "declaration" : ["COMPONENT_DECLARATION", {
21
            "name" : ["IDENTIFIER", "memory"], "ports" : [{
22
              "names" : [["IDENTIFIER", "phi1"], ["IDENTIFIER", "phi2"]], "mode" : ["in"], "typ" : {
23
                "name" : ["SIMPLE_NAME", "std_logic"]}
24
              }
25
            , {
26
              "names" : [["IDENTIFIER", "a"]], "mode" : ["in"], "typ" : {
27
                "name" : ["SIMPLE_NAME", "dlx_address"]}
28
              }
29
            , {
30
              "names" : [["IDENTIFIER", "d"]], "mode" : ["inout"], "typ" : {
31
                "name" : ["SIMPLE_NAME", "dlx_word"]}
32
              }
33
            , {
34
              "names" : [["IDENTIFIER", "width"]], "mode" : ["in"], "typ" : {
35
                "name" : ["SIMPLE_NAME", "dlx_mem_width"]}
36
              }
37
            , {
38
              "names" : [["IDENTIFIER", "write_enable"]], "mode" : ["in"], "typ" : {
39
                "name" : ["SIMPLE_NAME", "std_logic"]}
40
              }
41
            , {
42
              "names" : [["IDENTIFIER", "burst"]], "mode" : ["in"], "typ" : {
43
                "name" : ["SIMPLE_NAME", "std_logic"]}
44
              , "expr" : ["EXPRESSION", {
45
                "args" : [["EXPRESSION", {
46
                  "args" : [["EXPRESSION", {
47
                    "args" : [["EXPRESSION", {
48
                      "args" : [["CONSTANT_VALUE", {
49
                        "value" : ["CST_LITERAL", "'0'"]}
50
                      ]]}
51
                    ]]}
52
                  ]]}
53
                ]]}
54
              ]}
55
            , {
56
              "names" : [["IDENTIFIER", "mem_enable"]], "mode" : ["in"], "typ" : {
57
                "name" : ["SIMPLE_NAME", "std_logic"]}
58
              }
59
            , {
60
              "names" : [["IDENTIFIER", "ready"]], "mode" : ["out"], "typ" : {
61
                "name" : ["SIMPLE_NAME", "std_logic"]}
62
              }
63
            ]}
64
          ]}
65
        , {
66
          "declaration" : ["COMPONENT_DECLARATION", {
67
            "name" : ["IDENTIFIER", "dlx"], "ports" : [{
68
              "names" : [["IDENTIFIER", "phi1"], ["IDENTIFIER", "phi2"]], "mode" : ["in"], "typ" : {
69
                "name" : ["SIMPLE_NAME", "std_logic"]}
70
              }
71
            , {
72
              "names" : [["IDENTIFIER", "reset"]], "mode" : ["in"], "typ" : {
73
                "name" : ["SIMPLE_NAME", "std_logic"]}
74
              }
75
            , {
76
              "names" : [["IDENTIFIER", "halt"]], "mode" : ["out"], "typ" : {
77
                "name" : ["SIMPLE_NAME", "std_logic"]}
78
              }
79
            , {
80
              "names" : [["IDENTIFIER", "a"]], "mode" : ["out"], "typ" : {
81
                "name" : ["SIMPLE_NAME", "dlx_address"]}
82
              }
83
            , {
84
              "names" : [["IDENTIFIER", "d"]], "mode" : ["inout"], "typ" : {
85
                "name" : ["SIMPLE_NAME", "dlx_word"]}
86
              }
87
            , {
88
              "names" : [["IDENTIFIER", "width"]], "mode" : ["out"], "typ" : {
89
                "name" : ["SIMPLE_NAME", "dlx_mem_width"]}
90
              }
91
            , {
92
              "names" : [["IDENTIFIER", "write_enable"]], "mode" : ["out"], "typ" : {
93
                "name" : ["SIMPLE_NAME", "std_logic"]}
94
              }
95
            , {
96
              "names" : [["IDENTIFIER", "ifetch"]], "mode" : ["out"], "typ" : {
97
                "name" : ["SIMPLE_NAME", "std_logic"]}
98
              }
99
            , {
100
              "names" : [["IDENTIFIER", "mem_enable"]], "mode" : ["out"], "typ" : {
101
                "name" : ["SIMPLE_NAME", "std_logic"]}
102
              }
103
            , {
104
              "names" : [["IDENTIFIER", "ready"]], "mode" : ["in"], "typ" : {
105
                "name" : ["SIMPLE_NAME", "std_logic"]}
106
              }
107
            ]}
108
          ]}
109
        , {
110
          "declaration" : ["SIGNAL_DECLARATION", {
111
            "names" : [["IDENTIFIER", "phi1"], ["IDENTIFIER", "phi2"], ["IDENTIFIER", "reset"]], "typ" : {
112
              "name" : ["SIMPLE_NAME", "std_logic"]}
113
            }
114
          ]}
115
        , {
116
          "declaration" : ["SIGNAL_DECLARATION", {
117
            "names" : [["IDENTIFIER", "a"]], "typ" : {
118
              "name" : ["SIMPLE_NAME", "dlx_address"]}
119
            }
120
          ]}
121
        , {
122
          "declaration" : ["SIGNAL_DECLARATION", {
123
            "names" : [["IDENTIFIER", "d"]], "typ" : {
124
              "name" : ["SIMPLE_NAME", "dlx_word"]}
125
            }
126
          ]}
127
        , {
128
          "declaration" : ["SIGNAL_DECLARATION", {
129
            "names" : [["IDENTIFIER", "halt"]], "typ" : {
130
              "name" : ["SIMPLE_NAME", "std_logic"]}
131
            }
132
          ]}
133
        , {
134
          "declaration" : ["SIGNAL_DECLARATION", {
135
            "names" : [["IDENTIFIER", "width"]], "typ" : {
136
              "name" : ["SIMPLE_NAME", "dlx_mem_width"]}
137
            }
138
          ]}
139
        , {
140
          "declaration" : ["SIGNAL_DECLARATION", {
141
            "names" : [["IDENTIFIER", "write_enable"], ["IDENTIFIER", "mem_enable"], ["IDENTIFIER", "ifetch"], ["IDENTIFIER", "ready"]], "typ" : {
142
              "name" : ["SIMPLE_NAME", "std_logic"]}
143
            }
144
          ]}
145
        ], "ARCHITECTURE_STATEMENT_PART" : [["COMPONENT_INSTANTIATION_STATEMENT", {
146
          "name" : ["IDENTIFIER", "cg"], "inst_unit" : ["SIMPLE_NAME", "clock_gen"], "inst_unit_type" : "component", "port_map" : [{
147
            "formal_name" : ["SIMPLE_NAME", "phi1"], "actual_designator" : ["SIMPLE_NAME", "phi1"]}
148
          , {
149
            "formal_name" : ["SIMPLE_NAME", "phi2"], "actual_designator" : ["SIMPLE_NAME", "phi2"]}
150
          , {
151
            "formal_name" : ["SIMPLE_NAME", "reset"], "actual_designator" : ["SIMPLE_NAME", "reset"]}
152
          ]}
153
        ], ["COMPONENT_INSTANTIATION_STATEMENT", {
154
          "name" : ["IDENTIFIER", "mem"], "inst_unit" : ["SIMPLE_NAME", "memory"], "inst_unit_type" : "component", "port_map" : [{
155
            "formal_name" : ["SIMPLE_NAME", "phi1"], "actual_designator" : ["SIMPLE_NAME", "phi1"]}
156
          , {
157
            "formal_name" : ["SIMPLE_NAME", "phi2"], "actual_designator" : ["SIMPLE_NAME", "phi2"]}
158
          , {
159
            "formal_name" : ["SIMPLE_NAME", "a"], "actual_designator" : ["SIMPLE_NAME", "a"]}
160
          , {
161
            "formal_name" : ["SIMPLE_NAME", "d"], "actual_designator" : ["SIMPLE_NAME", "d"]}
162
          , {
163
            "formal_name" : ["SIMPLE_NAME", "width"], "actual_designator" : ["SIMPLE_NAME", "width"]}
164
          , {
165
            "formal_name" : ["SIMPLE_NAME", "write_enable"], "actual_designator" : ["SIMPLE_NAME", "write_enable"]}
166
          , {
167
            "formal_name" : ["SIMPLE_NAME", "burst"], "actual_designator" : ["OPEN"]}
168
          , {
169
            "formal_name" : ["SIMPLE_NAME", "mem_enable"], "actual_designator" : ["SIMPLE_NAME", "mem_enable"]}
170
          , {
171
            "formal_name" : ["SIMPLE_NAME", "ready"], "actual_designator" : ["SIMPLE_NAME", "ready"]}
172
          ]}
173
        ], ["COMPONENT_INSTANTIATION_STATEMENT", {
174
          "name" : ["IDENTIFIER", "proc"], "inst_unit" : ["SIMPLE_NAME", "dlx"], "inst_unit_type" : "component", "port_map" : [{
175
            "formal_name" : ["SIMPLE_NAME", "phi1"], "actual_designator" : ["SIMPLE_NAME", "phi1"]}
176
          , {
177
            "formal_name" : ["SIMPLE_NAME", "phi2"], "actual_designator" : ["SIMPLE_NAME", "phi2"]}
178
          , {
179
            "formal_name" : ["SIMPLE_NAME", "reset"], "actual_designator" : ["SIMPLE_NAME", "reset"]}
180
          , {
181
            "formal_name" : ["SIMPLE_NAME", "halt"], "actual_designator" : ["SIMPLE_NAME", "halt"]}
182
          , {
183
            "formal_name" : ["SIMPLE_NAME", "a"], "actual_designator" : ["SIMPLE_NAME", "a"]}
184
          , {
185
            "formal_name" : ["SIMPLE_NAME", "d"], "actual_designator" : ["SIMPLE_NAME", "d"]}
186
          , {
187
            "formal_name" : ["SIMPLE_NAME", "width"], "actual_designator" : ["SIMPLE_NAME", "width"]}
188
          , {
189
            "formal_name" : ["SIMPLE_NAME", "write_enable"], "actual_designator" : ["SIMPLE_NAME", "write_enable"]}
190
          , {
191
            "formal_name" : ["SIMPLE_NAME", "ifetch"], "actual_designator" : ["SIMPLE_NAME", "ifetch"]}
192
          , {
193
            "formal_name" : ["SIMPLE_NAME", "mem_enable"], "actual_designator" : ["SIMPLE_NAME", "mem_enable"]}
194
          , {
195
            "formal_name" : ["SIMPLE_NAME", "ready"], "actual_designator" : ["SIMPLE_NAME", "ready"]}
196
          ]}
197
        ]]}
198
      ]}
199
    ]}
200
  }