Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

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

History | View | Annotate | Download (5.7 KB)

1
{
2
  "DESIGN_FILE" : {
3
    "design_units" : [{
4
      "contexts" : [["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["SIMPLE_NAME", "words"]]]]]], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "cpu"], "ports" : [{
6
          "names" : [["IDENTIFIER", "address"]], "mode" : ["out"], "typ" : {
7
            "name" : ["SIMPLE_NAME", "uword"]}
8
          }
9
        , {
10
          "names" : [["IDENTIFIER", "data"]], "mode" : ["inout"], "typ" : {
11
            "name" : ["SIMPLE_NAME", "uword"]}
12
          }
13
        , {
14
          "names" : [["IDENTIFIER", "other_port"]], "mode" : ["in"], "typ" : {
15
            "name" : ["SIMPLE_NAME", "X01Z"]}
16
          , "expr" : ["EXPRESSION", {
17
            "args" : [["EXPRESSION", {
18
              "args" : [["EXPRESSION", {
19
                "args" : [["EXPRESSION", {
20
                  "args" : [["CONSTANT_VALUE", {
21
                    "value" : ["CST_LITERAL", "'Z'"]}
22
                  ]]}
23
                ]]}
24
              ]]}
25
            ]]}
26
          ]}
27
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
28
      ]}
29
    , {
30
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
31
        "name" : ["IDENTIFIER", "behavioral"], "entity" : ["IDENTIFIER", "cpu"], "ARCHITECTURE_DECLARATIVE_PART" : [], "ARCHITECTURE_STATEMENT_PART" : []}
32
      ]}
33
    , {
34
      "contexts" : [["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["SIMPLE_NAME", "words"]]]]]], "library" : ["ENTITY_DECLARATION", {
35
        "name" : ["IDENTIFIER", "memory"], "ports" : [{
36
          "names" : [["IDENTIFIER", "address"]], "mode" : ["in"], "typ" : {
37
            "name" : ["SIMPLE_NAME", "uword"]}
38
          }
39
        , {
40
          "names" : [["IDENTIFIER", "data"]], "mode" : ["inout"], "typ" : {
41
            "name" : ["SIMPLE_NAME", "uword"]}
42
          }
43
        , {
44
          "names" : [["IDENTIFIER", "other_port"]], "mode" : ["in"], "typ" : {
45
            "name" : ["SIMPLE_NAME", "X01Z"]}
46
          , "expr" : ["EXPRESSION", {
47
            "args" : [["EXPRESSION", {
48
              "args" : [["EXPRESSION", {
49
                "args" : [["EXPRESSION", {
50
                  "args" : [["CONSTANT_VALUE", {
51
                    "value" : ["CST_LITERAL", "'Z'"]}
52
                  ]]}
53
                ]]}
54
              ]]}
55
            ]]}
56
          ]}
57
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
58
      ]}
59
    , {
60
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
61
        "name" : ["IDENTIFIER", "behavioral"], "entity" : ["IDENTIFIER", "memory"], "ARCHITECTURE_DECLARATIVE_PART" : [], "ARCHITECTURE_STATEMENT_PART" : []}
62
      ]}
63
    , {
64
      "contexts" : [["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["SIMPLE_NAME", "words"]]]]]], "library" : ["ENTITY_DECLARATION", {
65
        "name" : ["IDENTIFIER", "ROM"], "ports" : [{
66
          "names" : [["IDENTIFIER", "a"]], "mode" : ["in"], "typ" : {
67
            "name" : ["SIMPLE_NAME", "uword"]}
68
          }
69
        , {
70
          "names" : [["IDENTIFIER", "d"]], "mode" : ["out"], "typ" : {
71
            "name" : ["SIMPLE_NAME", "ubyte"]}
72
          }
73
        , {
74
          "names" : [["IDENTIFIER", "other_port"]], "mode" : ["in"], "typ" : {
75
            "name" : ["SIMPLE_NAME", "X01Z"]}
76
          , "expr" : ["EXPRESSION", {
77
            "args" : [["EXPRESSION", {
78
              "args" : [["EXPRESSION", {
79
                "args" : [["EXPRESSION", {
80
                  "args" : [["CONSTANT_VALUE", {
81
                    "value" : ["CST_LITERAL", "'Z'"]}
82
                  ]]}
83
                ]]}
84
              ]]}
85
            ]]}
86
          ]}
87
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
88
      ]}
89
    , {
90
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
91
        "name" : ["IDENTIFIER", "behavioral"], "entity" : ["IDENTIFIER", "ROM"], "ARCHITECTURE_DECLARATIVE_PART" : [], "ARCHITECTURE_STATEMENT_PART" : []}
92
      ]}
93
    , {
94
      "contexts" : [], "library" : ["ENTITY_DECLARATION", {
95
        "name" : ["IDENTIFIER", "computer_system"], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
96
      ]}
97
    , {
98
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
99
        "name" : ["IDENTIFIER", "top_level"], "entity" : ["IDENTIFIER", "computer_system"], "ARCHITECTURE_DECLARATIVE_PART" : [{
100
          "use_clause" : ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["SIMPLE_NAME", "words"]]]]]}
101
        , {
102
          "declaration" : ["SIGNAL_DECLARATION", {
103
            "names" : [["IDENTIFIER", "address"]], "typ" : {
104
              "name" : ["SIMPLE_NAME", "uword"]}
105
            }
106
          ]}
107
        , {
108
          "declaration" : ["SIGNAL_DECLARATION", {
109
            "names" : [["IDENTIFIER", "data"]], "typ" : {
110
              "name" : ["SIMPLE_NAME", "word"]}
111
            }
112
          ]}
113
        ], "ARCHITECTURE_STATEMENT_PART" : [["COMPONENT_INSTANTIATION_STATEMENT", {
114
          "name" : ["IDENTIFIER", "the_cpu"], "inst_unit" : ["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["IDENTIFIER", "cpu"]]], "inst_unit_type" : "entity", "archi_name" : ["IDENTIFIER", "behavioral"], "port_map" : [{
115
            "actual_designator" : ["SIMPLE_NAME", "address"]}
116
          , {
117
            "actual_designator" : ["SIMPLE_NAME", "data"]}
118
          , {
119
            "actual_designator" : ["OPEN"]}
120
          ]}
121
        ], ["COMPONENT_INSTANTIATION_STATEMENT", {
122
          "name" : ["IDENTIFIER", "the_memory"], "inst_unit" : ["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["IDENTIFIER", "memory"]]], "inst_unit_type" : "entity", "archi_name" : ["IDENTIFIER", "behavioral"], "port_map" : [{
123
            "actual_designator" : ["SIMPLE_NAME", "address"]}
124
          , {
125
            "actual_designator" : ["SIMPLE_NAME", "data"]}
126
          , {
127
            "actual_designator" : ["OPEN"]}
128
          ]}
129
        ]]}
130
      ]}
131
    ]}
132
  }