Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec-tests / vhdl_json / vhdl_files / 2-exportOK / cnes_guidelines / rule / data / STD_03300_good.json @ 2051e520

History | View | Annotate | Download (9.11 KB)

1 2051e520 Arnaud Dieumegard
{
2
  "DESIGN_FILE" : {
3
    "design_units" : [{
4
      "contexts" : [["LIBRARY_CLAUSE", [["IDENTIFIER", "IEEE"]]], ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "IEEE"], ["SIMPLE_NAME", "std_logic_1164"]]]]], ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "IEEE"], ["SIMPLE_NAME", "numeric_std"]]]]]], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "STD_03300_good"], "ports" : [{
6
          "names" : [["IDENTIFIER", "i_Clock"]], "mode" : ["in"], "typ" : {
7
            "name" : ["SIMPLE_NAME", "std_logic"]}
8
          }
9
        , {
10
          "names" : [["IDENTIFIER", "i_Reset_n"]], "mode" : ["in"], "typ" : {
11
            "name" : ["SIMPLE_NAME", "std_logic"]}
12
          }
13
        , {
14
          "names" : [["IDENTIFIER", "i_A"]], "mode" : ["in"], "typ" : {
15
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
16
              "ranges" : [["RANGE_WITH_DIRECTION", {
17
                "direction" : "downto", "from" : ["EXPRESSION", {
18
                  "args" : [["EXPRESSION", {
19
                    "args" : [["CONSTANT_VALUE", {
20
                      "value" : ["CST_LITERAL", "3"]}
21
                    ]]}
22
                  ]]}
23
                ], "_to" : ["EXPRESSION", {
24
                  "args" : [["EXPRESSION", {
25
                    "args" : [["CONSTANT_VALUE", {
26
                      "value" : ["CST_LITERAL", "0"]}
27
                    ]]}
28
                  ]]}
29
                ]}
30
              ]]}
31
            ]}
32
          }
33
        , {
34
          "names" : [["IDENTIFIER", "o_B"]], "mode" : ["out"], "typ" : {
35
            "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
36
              "ranges" : [["RANGE_WITH_DIRECTION", {
37
                "direction" : "downto", "from" : ["EXPRESSION", {
38
                  "args" : [["EXPRESSION", {
39
                    "args" : [["CONSTANT_VALUE", {
40
                      "value" : ["CST_LITERAL", "3"]}
41
                    ]]}
42
                  ]]}
43
                ], "_to" : ["EXPRESSION", {
44
                  "args" : [["EXPRESSION", {
45
                    "args" : [["CONSTANT_VALUE", {
46
                      "value" : ["CST_LITERAL", "0"]}
47
                    ]]}
48
                  ]]}
49
                ]}
50
              ]]}
51
            ]}
52
          }
53
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
54
      ]}
55
    , {
56
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
57
        "name" : ["IDENTIFIER", "Behavioral"], "entity" : ["IDENTIFIER", "STD_03300_good"], "ARCHITECTURE_DECLARATIVE_PART" : [{
58
          "declaration" : ["SIGNAL_DECLARATION", {
59
            "names" : [["IDENTIFIER", "B"]], "typ" : {
60
              "name" : ["SIMPLE_NAME", "std_logic_vector"], "const" : ["INDEX_CONSTRAINT", {
61
                "ranges" : [["RANGE_WITH_DIRECTION", {
62
                  "direction" : "downto", "from" : ["EXPRESSION", {
63
                    "args" : [["EXPRESSION", {
64
                      "args" : [["CONSTANT_VALUE", {
65
                        "value" : ["CST_LITERAL", "3"]}
66
                      ]]}
67
                    ]]}
68
                  ], "_to" : ["EXPRESSION", {
69
                    "args" : [["EXPRESSION", {
70
                      "args" : [["CONSTANT_VALUE", {
71
                        "value" : ["CST_LITERAL", "0"]}
72
                      ]]}
73
                    ]]}
74
                  ]}
75
                ]]}
76
              ]}
77
            }
78
          ]}
79
        ], "ARCHITECTURE_STATEMENT_PART" : [["PROCESS_STATEMENT", {
80
          "id" : ["IDENTIFIER", "P_Add"], "active_sigs" : [["SIMPLE_NAME", "i_Reset_n"], ["SIMPLE_NAME", "i_Clock"]], "PROCESS_STATEMENT_PART" : [["IF_STATEMENT", {
81
            "if_cases" : [{
82
              "if_cond" : ["EXPRESSION", {
83
                "args" : [["EXPRESSION", {
84
                  "args" : [["EXPRESSION", {
85
                    "args" : [["EXPRESSION", {
86
                      "args" : [["EXPRESSION", {
87
                        "id" : "=", "args" : [["EXPRESSION", {
88
                          "args" : [["EXPRESSION", {
89
                            "args" : [["EXPRESSION", {
90
                              "args" : [["CALL", ["SIMPLE_NAME", "i_Reset_n"]]]}
91
                            ]]}
92
                          ]]}
93
                        ], ["EXPRESSION", {
94
                          "args" : [["EXPRESSION", {
95
                            "args" : [["EXPRESSION", {
96
                              "args" : [["CONSTANT_VALUE", {
97
                                "value" : ["CST_LITERAL", "'0'"]}
98
                              ]]}
99
                            ]]}
100
                          ]]}
101
                        ]]}
102
                      ]]}
103
                    ]]}
104
                  ]]}
105
                ]]}
106
              ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
107
                "lhs" : ["SIMPLE_NAME", "B"], "rhs" : [{
108
                  "value" : ["EXPRESSION", {
109
                    "args" : [["EXPRESSION", {
110
                      "args" : [["EXPRESSION", {
111
                        "args" : [["EXPRESSION", {
112
                          "args" : [["AGGREGATE", {
113
                            "elems" : [{
114
                              "choices" : [["OTHERS"]], "expr" : ["EXPRESSION", {
115
                                "args" : [["EXPRESSION", {
116
                                  "args" : [["EXPRESSION", {
117
                                    "args" : [["EXPRESSION", {
118
                                      "args" : [["CONSTANT_VALUE", {
119
                                        "value" : ["CST_LITERAL", "'0'"]}
120
                                      ]]}
121
                                    ]]}
122
                                  ]]}
123
                                ]]}
124
                              ]}
125
                            ]}
126
                          ]]}
127
                        ]]}
128
                      ]]}
129
                    ]]}
130
                  ]}
131
                ]}
132
              ]]}
133
            , {
134
              "if_cond" : ["EXPRESSION", {
135
                "args" : [["EXPRESSION", {
136
                  "args" : [["EXPRESSION", {
137
                    "args" : [["EXPRESSION", {
138
                      "args" : [["EXPRESSION", {
139
                        "args" : [["EXPRESSION", {
140
                          "args" : [["EXPRESSION", {
141
                            "args" : [["EXPRESSION", {
142
                              "args" : [["CALL", ["FUNCTION_CALL", {
143
                                "id" : ["SIMPLE_NAME", "rising_edge"], "assoc_list" : [{
144
                                  "actual_designator" : ["SIMPLE_NAME", "i_Clock"]}
145
                                ]}
146
                              ]]]}
147
                            ]]}
148
                          ]]}
149
                        ]]}
150
                      ]]}
151
                    ]]}
152
                  ]]}
153
                ]]}
154
              ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
155
                "lhs" : ["SIMPLE_NAME", "B"], "rhs" : [{
156
                  "value" : ["EXPRESSION", {
157
                    "args" : [["EXPRESSION", {
158
                      "args" : [["EXPRESSION", {
159
                        "args" : [["EXPRESSION", {
160
                          "args" : [["CALL", ["FUNCTION_CALL", {
161
                            "id" : ["SIMPLE_NAME", "std_logic_vector"], "assoc_list" : [{
162
                              "actual_expr" : ["EXPRESSION", {
163
                                "args" : [["EXPRESSION", {
164
                                  "args" : [["EXPRESSION", {
165
                                    "args" : [["EXPRESSION", {
166
                                      "id" : "+", "args" : [["EXPRESSION", {
167
                                        "args" : [["CALL", ["FUNCTION_CALL", {
168
                                          "id" : ["SIMPLE_NAME", "unsigned"], "assoc_list" : [{
169
                                            "actual_designator" : ["SIMPLE_NAME", "i_A"]}
170
                                          ]}
171
                                        ]]]}
172
                                      ], ["EXPRESSION", {
173
                                        "args" : [["CALL", ["FUNCTION_CALL", {
174
                                          "id" : ["SIMPLE_NAME", "unsigned"], "assoc_list" : [{
175
                                            "actual_designator" : ["SIMPLE_NAME", "B"]}
176
                                          ]}
177
                                        ]]]}
178
                                      ]]}
179
                                    ]]}
180
                                  ]]}
181
                                ]]}
182
                              ]}
183
                            ]}
184
                          ]]]}
185
                        ]]}
186
                      ]]}
187
                    ]]}
188
                  ]}
189
                ]}
190
              ]]}
191
            ]}
192
          ]]}
193
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
194
          "postponed" : false, "lhs" : ["SIMPLE_NAME", "o_B"], "rhs" : [{
195
            "expr" : [{
196
              "value" : ["EXPRESSION", {
197
                "args" : [["EXPRESSION", {
198
                  "args" : [["EXPRESSION", {
199
                    "args" : [["EXPRESSION", {
200
                      "args" : [["CALL", ["SIMPLE_NAME", "B"]]]}
201
                    ]]}
202
                  ]]}
203
                ]]}
204
              ]}
205
            ]}
206
          ]}
207
        ]]}
208
      ]}
209
    ]}
210
  }