Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

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

History | View | Annotate | Download (4.05 KB)

1
{
2
  "DESIGN_FILE" : {
3
    "design_units" : [{
4
      "contexts" : [], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "mux2"], "ports" : [{
6
          "names" : [["IDENTIFIER", "a"], ["IDENTIFIER", "b"], ["IDENTIFIER", "sel"]], "mode" : ["in"], "typ" : {
7
            "name" : ["SIMPLE_NAME", "bit"]}
8
          }
9
        , {
10
          "names" : [["IDENTIFIER", "z"]], "mode" : ["out"], "typ" : {
11
            "name" : ["SIMPLE_NAME", "bit"]}
12
          }
13
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
14
      ]}
15
    , {
16
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
17
        "name" : ["IDENTIFIER", "behavioral"], "entity" : ["IDENTIFIER", "mux2"], "ARCHITECTURE_DECLARATIVE_PART" : [{
18
          "declaration" : ["CONSTANT_DECLARATION", {
19
            "names" : [["IDENTIFIER", "prop_delay"]], "typ" : {
20
              "name" : ["SIMPLE_NAME", "time"]}
21
            , "init_val" : ["EXPRESSION", {
22
              "args" : [["EXPRESSION", {
23
                "args" : [["EXPRESSION", {
24
                  "args" : [["EXPRESSION", {
25
                    "args" : [["CONSTANT_VALUE", {
26
                      "value" : ["CST_LITERAL", "2"], "unit_name" : ["SIMPLE_NAME", "ns"]}
27
                    ]]}
28
                  ]]}
29
                ]]}
30
              ]]}
31
            ]}
32
          ]}
33
        ], "ARCHITECTURE_STATEMENT_PART" : [["PROCESS_STATEMENT", {
34
          "id" : ["IDENTIFIER", "slick_mux"], "PROCESS_STATEMENT_PART" : [["CASE_STATEMENT_TREE", {
35
            "guard" : ["EXPRESSION", {
36
              "args" : [["EXPRESSION", {
37
                "args" : [["EXPRESSION", {
38
                  "args" : [["EXPRESSION", {
39
                    "args" : [["CALL", ["SIMPLE_NAME", "sel"]]]}
40
                  ]]}
41
                ]]}
42
              ]]}
43
            ], "branches" : [{
44
              "when_cond" : [["EXPRESSION", {
45
                "args" : [["EXPRESSION", {
46
                  "args" : [["CONSTANT_VALUE", {
47
                    "value" : ["CST_LITERAL", "'0'"]}
48
                  ]]}
49
                ]]}
50
              ]], "when_stmt" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
51
                "lhs" : ["SIMPLE_NAME", "z"], "rhs" : [{
52
                  "value" : ["EXPRESSION", {
53
                    "args" : [["EXPRESSION", {
54
                      "args" : [["EXPRESSION", {
55
                        "args" : [["EXPRESSION", {
56
                          "args" : [["CALL", ["SIMPLE_NAME", "a"]]]}
57
                        ]]}
58
                      ]]}
59
                    ]]}
60
                  ], "delay" : ["EXPRESSION", {
61
                    "args" : [["EXPRESSION", {
62
                      "args" : [["EXPRESSION", {
63
                        "args" : [["EXPRESSION", {
64
                          "args" : [["CALL", ["SIMPLE_NAME", "prop_delay"]]]}
65
                        ]]}
66
                      ]]}
67
                    ]]}
68
                  ]}
69
                ]}
70
              ], ["WAIT_STATEMENT"]]}
71
            , {
72
              "when_cond" : [["EXPRESSION", {
73
                "args" : [["EXPRESSION", {
74
                  "args" : [["CONSTANT_VALUE", {
75
                    "value" : ["CST_LITERAL", "'1'"]}
76
                  ]]}
77
                ]]}
78
              ]], "when_stmt" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
79
                "lhs" : ["SIMPLE_NAME", "z"], "rhs" : [{
80
                  "value" : ["EXPRESSION", {
81
                    "args" : [["EXPRESSION", {
82
                      "args" : [["EXPRESSION", {
83
                        "args" : [["EXPRESSION", {
84
                          "args" : [["CALL", ["SIMPLE_NAME", "b"]]]}
85
                        ]]}
86
                      ]]}
87
                    ]]}
88
                  ], "delay" : ["EXPRESSION", {
89
                    "args" : [["EXPRESSION", {
90
                      "args" : [["EXPRESSION", {
91
                        "args" : [["EXPRESSION", {
92
                          "args" : [["CALL", ["SIMPLE_NAME", "prop_delay"]]]}
93
                        ]]}
94
                      ]]}
95
                    ]]}
96
                  ]}
97
                ]}
98
              ], ["WAIT_STATEMENT"]]}
99
            ]}
100
          ]]}
101
        ]]}
102
      ]}
103
    ]}
104
  }