Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

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

History | View | Annotate | Download (10.4 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"]]]]], ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "IEEE"], ["SIMPLE_NAME", "numeric_std"]]]]]], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "STD_03600_good"], "ports" : [{
6
          "names" : [["IDENTIFIER", "i_Reset_n"]], "mode" : ["in"], "typ" : {
7
            "name" : ["SIMPLE_NAME", "std_logic"]}
8
          }
9
        , {
10
          "names" : [["IDENTIFIER", "i_Clock"]], "mode" : ["in"], "typ" : {
11
            "name" : ["SIMPLE_NAME", "std_logic"]}
12
          }
13
        , {
14
          "names" : [["IDENTIFIER", "i_D"]], "mode" : ["in"], "typ" : {
15
            "name" : ["SIMPLE_NAME", "std_logic"]}
16
          }
17
        , {
18
          "names" : [["IDENTIFIER", "o_Q"]], "mode" : ["out"], "typ" : {
19
            "name" : ["SIMPLE_NAME", "std_logic"]}
20
          }
21
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
22
      ]}
23
    , {
24
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
25
        "name" : ["IDENTIFIER", "Behavioral"], "entity" : ["IDENTIFIER", "STD_03600_good"], "ARCHITECTURE_DECLARATIVE_PART" : [{
26
          "declaration" : ["SIGNAL_DECLARATION", {
27
            "names" : [["IDENTIFIER", "D_r1"]], "typ" : {
28
              "name" : ["SIMPLE_NAME", "std_logic"]}
29
            }
30
          ]}
31
        , {
32
          "declaration" : ["SIGNAL_DECLARATION", {
33
            "names" : [["IDENTIFIER", "D_r2"]], "typ" : {
34
              "name" : ["SIMPLE_NAME", "std_logic"]}
35
            }
36
          ]}
37
        , {
38
          "declaration" : ["SIGNAL_DECLARATION", {
39
            "names" : [["IDENTIFIER", "D_re"]], "typ" : {
40
              "name" : ["SIMPLE_NAME", "std_logic"]}
41
            }
42
          ]}
43
        ], "ARCHITECTURE_STATEMENT_PART" : [["PROCESS_STATEMENT", {
44
          "id" : ["IDENTIFIER", "P_First_Register"], "active_sigs" : [["SIMPLE_NAME", "i_Reset_n"], ["SIMPLE_NAME", "i_Clock"]], "PROCESS_STATEMENT_PART" : [["IF_STATEMENT", {
45
            "if_cases" : [{
46
              "if_cond" : ["EXPRESSION", {
47
                "args" : [["EXPRESSION", {
48
                  "args" : [["EXPRESSION", {
49
                    "args" : [["EXPRESSION", {
50
                      "args" : [["EXPRESSION", {
51
                        "id" : "=", "args" : [["EXPRESSION", {
52
                          "args" : [["EXPRESSION", {
53
                            "args" : [["EXPRESSION", {
54
                              "args" : [["CALL", ["SIMPLE_NAME", "i_Reset_n"]]]}
55
                            ]]}
56
                          ]]}
57
                        ], ["EXPRESSION", {
58
                          "args" : [["EXPRESSION", {
59
                            "args" : [["EXPRESSION", {
60
                              "args" : [["CONSTANT_VALUE", {
61
                                "value" : ["CST_LITERAL", "'0'"]}
62
                              ]]}
63
                            ]]}
64
                          ]]}
65
                        ]]}
66
                      ]]}
67
                    ]]}
68
                  ]]}
69
                ]]}
70
              ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
71
                "lhs" : ["SIMPLE_NAME", "D_r1"], "rhs" : [{
72
                  "value" : ["EXPRESSION", {
73
                    "args" : [["EXPRESSION", {
74
                      "args" : [["EXPRESSION", {
75
                        "args" : [["EXPRESSION", {
76
                          "args" : [["CONSTANT_VALUE", {
77
                            "value" : ["CST_LITERAL", "'0'"]}
78
                          ]]}
79
                        ]]}
80
                      ]]}
81
                    ]]}
82
                  ]}
83
                ]}
84
              ]]}
85
            , {
86
              "if_cond" : ["EXPRESSION", {
87
                "args" : [["EXPRESSION", {
88
                  "args" : [["EXPRESSION", {
89
                    "args" : [["EXPRESSION", {
90
                      "args" : [["EXPRESSION", {
91
                        "args" : [["EXPRESSION", {
92
                          "args" : [["EXPRESSION", {
93
                            "args" : [["EXPRESSION", {
94
                              "args" : [["CALL", ["FUNCTION_CALL", {
95
                                "id" : ["SIMPLE_NAME", "rising_edge"], "assoc_list" : [{
96
                                  "actual_designator" : ["SIMPLE_NAME", "i_Clock"]}
97
                                ]}
98
                              ]]]}
99
                            ]]}
100
                          ]]}
101
                        ]]}
102
                      ]]}
103
                    ]]}
104
                  ]]}
105
                ]]}
106
              ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
107
                "lhs" : ["SIMPLE_NAME", "D_r1"], "rhs" : [{
108
                  "value" : ["EXPRESSION", {
109
                    "args" : [["EXPRESSION", {
110
                      "args" : [["EXPRESSION", {
111
                        "args" : [["EXPRESSION", {
112
                          "args" : [["CALL", ["SIMPLE_NAME", "i_D"]]]}
113
                        ]]}
114
                      ]]}
115
                    ]]}
116
                  ]}
117
                ]}
118
              ]]}
119
            ]}
120
          ]]}
121
        ], ["PROCESS_STATEMENT", {
122
          "id" : ["IDENTIFIER", "P_Second_Register"], "active_sigs" : [["SIMPLE_NAME", "i_Reset_n"], ["SIMPLE_NAME", "i_Clock"]], "PROCESS_STATEMENT_PART" : [["IF_STATEMENT", {
123
            "if_cases" : [{
124
              "if_cond" : ["EXPRESSION", {
125
                "args" : [["EXPRESSION", {
126
                  "args" : [["EXPRESSION", {
127
                    "args" : [["EXPRESSION", {
128
                      "args" : [["EXPRESSION", {
129
                        "id" : "=", "args" : [["EXPRESSION", {
130
                          "args" : [["EXPRESSION", {
131
                            "args" : [["EXPRESSION", {
132
                              "args" : [["CALL", ["SIMPLE_NAME", "i_Reset_n"]]]}
133
                            ]]}
134
                          ]]}
135
                        ], ["EXPRESSION", {
136
                          "args" : [["EXPRESSION", {
137
                            "args" : [["EXPRESSION", {
138
                              "args" : [["CONSTANT_VALUE", {
139
                                "value" : ["CST_LITERAL", "'0'"]}
140
                              ]]}
141
                            ]]}
142
                          ]]}
143
                        ]]}
144
                      ]]}
145
                    ]]}
146
                  ]]}
147
                ]]}
148
              ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
149
                "lhs" : ["SIMPLE_NAME", "D_r2"], "rhs" : [{
150
                  "value" : ["EXPRESSION", {
151
                    "args" : [["EXPRESSION", {
152
                      "args" : [["EXPRESSION", {
153
                        "args" : [["EXPRESSION", {
154
                          "args" : [["CONSTANT_VALUE", {
155
                            "value" : ["CST_LITERAL", "'0'"]}
156
                          ]]}
157
                        ]]}
158
                      ]]}
159
                    ]]}
160
                  ]}
161
                ]}
162
              ], ["SIGNAL_ASSIGNMENT_STATEMENT", {
163
                "lhs" : ["SIMPLE_NAME", "D_re"], "rhs" : [{
164
                  "value" : ["EXPRESSION", {
165
                    "args" : [["EXPRESSION", {
166
                      "args" : [["EXPRESSION", {
167
                        "args" : [["EXPRESSION", {
168
                          "args" : [["CONSTANT_VALUE", {
169
                            "value" : ["CST_LITERAL", "'0'"]}
170
                          ]]}
171
                        ]]}
172
                      ]]}
173
                    ]]}
174
                  ]}
175
                ]}
176
              ]]}
177
            , {
178
              "if_cond" : ["EXPRESSION", {
179
                "args" : [["EXPRESSION", {
180
                  "args" : [["EXPRESSION", {
181
                    "args" : [["EXPRESSION", {
182
                      "args" : [["EXPRESSION", {
183
                        "args" : [["EXPRESSION", {
184
                          "args" : [["EXPRESSION", {
185
                            "args" : [["EXPRESSION", {
186
                              "args" : [["CALL", ["FUNCTION_CALL", {
187
                                "id" : ["SIMPLE_NAME", "rising_edge"], "assoc_list" : [{
188
                                  "actual_designator" : ["SIMPLE_NAME", "i_Clock"]}
189
                                ]}
190
                              ]]]}
191
                            ]]}
192
                          ]]}
193
                        ]]}
194
                      ]]}
195
                    ]]}
196
                  ]]}
197
                ]]}
198
              ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
199
                "lhs" : ["SIMPLE_NAME", "D_r2"], "rhs" : [{
200
                  "value" : ["EXPRESSION", {
201
                    "args" : [["EXPRESSION", {
202
                      "args" : [["EXPRESSION", {
203
                        "args" : [["EXPRESSION", {
204
                          "args" : [["CALL", ["SIMPLE_NAME", "D_r1"]]]}
205
                        ]]}
206
                      ]]}
207
                    ]]}
208
                  ]}
209
                ]}
210
              ], ["SIGNAL_ASSIGNMENT_STATEMENT", {
211
                "lhs" : ["SIMPLE_NAME", "D_re"], "rhs" : [{
212
                  "value" : ["EXPRESSION", {
213
                    "id" : "and", "args" : [["EXPRESSION", {
214
                      "args" : [["EXPRESSION", {
215
                        "args" : [["EXPRESSION", {
216
                          "args" : [["EXPRESSION", {
217
                            "args" : [["CALL", ["SIMPLE_NAME", "D_r1"]]]}
218
                          ]]}
219
                        ]]}
220
                      ]]}
221
                    ], ["EXPRESSION", {
222
                      "args" : [["EXPRESSION", {
223
                        "args" : [["EXPRESSION", {
224
                          "args" : [["EXPRESSION", {
225
                            "id" : "not", "args" : [["CALL", ["SIMPLE_NAME", "D_r2"]]]}
226
                          ]]}
227
                        ]]}
228
                      ]]}
229
                    ]]}
230
                  ]}
231
                ]}
232
              ]]}
233
            ]}
234
          ]]}
235
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
236
          "postponed" : false, "lhs" : ["SIMPLE_NAME", "o_Q"], "rhs" : [{
237
            "expr" : [{
238
              "value" : ["EXPRESSION", {
239
                "args" : [["EXPRESSION", {
240
                  "args" : [["EXPRESSION", {
241
                    "args" : [["EXPRESSION", {
242
                      "args" : [["CALL", ["SIMPLE_NAME", "D_re"]]]}
243
                    ]]}
244
                  ]]}
245
                ]]}
246
              ]}
247
            ]}
248
          ]}
249
        ]]}
250
      ]}
251
    ]}
252
  }