Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec-tests / vhdl_json / vhdl_files / 2-exportOK / cnes_guidelines / rule / data / STD_05700_good.json @ 3fd18385

History | View | Annotate | Download (9.46 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"]]]]], ["USE_CLAUSE", [["SELECTED_NAME", [["SIMPLE_NAME", "work"], ["SIMPLE_NAME", "pkg_HBK"]]]]]], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "STD_05700_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_Enable"]], "mode" : ["in"], "typ" : {
15
            "name" : ["SIMPLE_NAME", "std_logic"]}
16
          }
17
        , {
18
          "names" : [["IDENTIFIER", "i_Data"]], "mode" : ["in"], "typ" : {
19
            "name" : ["SIMPLE_NAME", "std_logic"]}
20
          }
21
        , {
22
          "names" : [["IDENTIFIER", "o_Data"]], "mode" : ["out"], "typ" : {
23
            "name" : ["SIMPLE_NAME", "std_logic"]}
24
          }
25
        , {
26
          "names" : [["IDENTIFIER", "o_Gated_Clock"]], "mode" : ["out"], "typ" : {
27
            "name" : ["SIMPLE_NAME", "std_logic"]}
28
          }
29
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
30
      ]}
31
    , {
32
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
33
        "name" : ["IDENTIFIER", "Behavioral"], "entity" : ["IDENTIFIER", "STD_05700_good"], "ARCHITECTURE_DECLARATIVE_PART" : [{
34
          "declaration" : ["SIGNAL_DECLARATION", {
35
            "names" : [["IDENTIFIER", "Enable_r"]], "typ" : {
36
              "name" : ["SIMPLE_NAME", "std_logic"]}
37
            }
38
          ]}
39
        , {
40
          "declaration" : ["SIGNAL_DECLARATION", {
41
            "names" : [["IDENTIFIER", "Data_r"]], "typ" : {
42
              "name" : ["SIMPLE_NAME", "std_logic"]}
43
            }
44
          ]}
45
        , {
46
          "declaration" : ["SIGNAL_DECLARATION", {
47
            "names" : [["IDENTIFIER", "Data_r2"]], "typ" : {
48
              "name" : ["SIMPLE_NAME", "std_logic"]}
49
            }
50
          ]}
51
        ], "ARCHITECTURE_STATEMENT_PART" : [["COMPONENT_INSTANTIATION_STATEMENT", {
52
          "name" : ["IDENTIFIER", "DFF_En"], "inst_unit" : ["SIMPLE_NAME", "DFlipFlop"], "inst_unit_type" : "component", "port_map" : [{
53
            "formal_name" : ["SIMPLE_NAME", "i_Clock"], "actual_designator" : ["SIMPLE_NAME", "i_Clock"]}
54
          , {
55
            "formal_name" : ["SIMPLE_NAME", "i_Reset_n"], "actual_designator" : ["SIMPLE_NAME", "i_Reset_n"]}
56
          , {
57
            "formal_name" : ["SIMPLE_NAME", "i_D"], "actual_designator" : ["SIMPLE_NAME", "i_Enable"]}
58
          , {
59
            "formal_name" : ["SIMPLE_NAME", "o_Q"], "actual_designator" : ["SIMPLE_NAME", "Enable_r"]}
60
          , {
61
            "formal_name" : ["SIMPLE_NAME", "o_Q_n"], "actual_designator" : ["OPEN"]}
62
          ]}
63
        ], ["PROCESS_STATEMENT", {
64
          "id" : ["IDENTIFIER", "P_Sync_Data"], "active_sigs" : [["SIMPLE_NAME", "i_Reset_n"], ["SIMPLE_NAME", "i_Clock"]], "PROCESS_STATEMENT_PART" : [["IF_STATEMENT", {
65
            "if_cases" : [{
66
              "if_cond" : ["EXPRESSION", {
67
                "args" : [["EXPRESSION", {
68
                  "args" : [["EXPRESSION", {
69
                    "args" : [["EXPRESSION", {
70
                      "args" : [["EXPRESSION", {
71
                        "id" : "=", "args" : [["EXPRESSION", {
72
                          "args" : [["EXPRESSION", {
73
                            "args" : [["EXPRESSION", {
74
                              "args" : [["CALL", ["SIMPLE_NAME", "i_Reset_n"]]]}
75
                            ]]}
76
                          ]]}
77
                        ], ["EXPRESSION", {
78
                          "args" : [["EXPRESSION", {
79
                            "args" : [["EXPRESSION", {
80
                              "args" : [["CONSTANT_VALUE", {
81
                                "value" : ["CST_LITERAL", "'0'"]}
82
                              ]]}
83
                            ]]}
84
                          ]]}
85
                        ]]}
86
                      ]]}
87
                    ]]}
88
                  ]]}
89
                ]]}
90
              ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
91
                "lhs" : ["SIMPLE_NAME", "Data_r"], "rhs" : [{
92
                  "value" : ["EXPRESSION", {
93
                    "args" : [["EXPRESSION", {
94
                      "args" : [["EXPRESSION", {
95
                        "args" : [["EXPRESSION", {
96
                          "args" : [["CONSTANT_VALUE", {
97
                            "value" : ["CST_LITERAL", "'0'"]}
98
                          ]]}
99
                        ]]}
100
                      ]]}
101
                    ]]}
102
                  ]}
103
                ]}
104
              ], ["SIGNAL_ASSIGNMENT_STATEMENT", {
105
                "lhs" : ["SIMPLE_NAME", "Data_r2"], "rhs" : [{
106
                  "value" : ["EXPRESSION", {
107
                    "args" : [["EXPRESSION", {
108
                      "args" : [["EXPRESSION", {
109
                        "args" : [["EXPRESSION", {
110
                          "args" : [["CONSTANT_VALUE", {
111
                            "value" : ["CST_LITERAL", "'0'"]}
112
                          ]]}
113
                        ]]}
114
                      ]]}
115
                    ]]}
116
                  ]}
117
                ]}
118
              ]]}
119
            , {
120
              "if_cond" : ["EXPRESSION", {
121
                "args" : [["EXPRESSION", {
122
                  "args" : [["EXPRESSION", {
123
                    "args" : [["EXPRESSION", {
124
                      "args" : [["EXPRESSION", {
125
                        "args" : [["EXPRESSION", {
126
                          "args" : [["EXPRESSION", {
127
                            "args" : [["EXPRESSION", {
128
                              "args" : [["CALL", ["INDEXED_NAME", {
129
                                "id" : ["SIMPLE_NAME", "rising_edge"], "exprs" : [["EXPRESSION", {
130
                                  "args" : [["EXPRESSION", {
131
                                    "args" : [["EXPRESSION", {
132
                                      "args" : [["EXPRESSION", {
133
                                        "args" : [["CALL", ["SIMPLE_NAME", "i_Clock"]]]}
134
                                      ]]}
135
                                    ]]}
136
                                  ]]}
137
                                ]]}
138
                              ]]]}
139
                            ]]}
140
                          ]]}
141
                        ]]}
142
                      ]]}
143
                    ]]}
144
                  ]]}
145
                ]]}
146
              ], "if_block" : [["IF_STATEMENT", {
147
                "if_cases" : [{
148
                  "if_cond" : ["EXPRESSION", {
149
                    "args" : [["EXPRESSION", {
150
                      "args" : [["EXPRESSION", {
151
                        "args" : [["EXPRESSION", {
152
                          "args" : [["EXPRESSION", {
153
                            "id" : "=", "args" : [["EXPRESSION", {
154
                              "args" : [["EXPRESSION", {
155
                                "args" : [["EXPRESSION", {
156
                                  "args" : [["CALL", ["SIMPLE_NAME", "Enable_r"]]]}
157
                                ]]}
158
                              ]]}
159
                            ], ["EXPRESSION", {
160
                              "args" : [["EXPRESSION", {
161
                                "args" : [["EXPRESSION", {
162
                                  "args" : [["CONSTANT_VALUE", {
163
                                    "value" : ["CST_LITERAL", "'1'"]}
164
                                  ]]}
165
                                ]]}
166
                              ]]}
167
                            ]]}
168
                          ]]}
169
                        ]]}
170
                      ]]}
171
                    ]]}
172
                  ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
173
                    "lhs" : ["SIMPLE_NAME", "Data_r"], "rhs" : [{
174
                      "value" : ["EXPRESSION", {
175
                        "args" : [["EXPRESSION", {
176
                          "args" : [["EXPRESSION", {
177
                            "args" : [["EXPRESSION", {
178
                              "args" : [["CALL", ["SIMPLE_NAME", "i_Data"]]]}
179
                            ]]}
180
                          ]]}
181
                        ]]}
182
                      ]}
183
                    ]}
184
                  ], ["SIGNAL_ASSIGNMENT_STATEMENT", {
185
                    "lhs" : ["SIMPLE_NAME", "Data_r2"], "rhs" : [{
186
                      "value" : ["EXPRESSION", {
187
                        "args" : [["EXPRESSION", {
188
                          "args" : [["EXPRESSION", {
189
                            "args" : [["EXPRESSION", {
190
                              "args" : [["CALL", ["SIMPLE_NAME", "Data_r"]]]}
191
                            ]]}
192
                          ]]}
193
                        ]]}
194
                      ]}
195
                    ]}
196
                  ]]}
197
                ]}
198
              ]]}
199
            ]}
200
          ]]}
201
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
202
          "postponed" : false, "lhs" : ["SIMPLE_NAME", "o_Data"], "rhs" : [{
203
            "expr" : [{
204
              "value" : ["EXPRESSION", {
205
                "args" : [["EXPRESSION", {
206
                  "args" : [["EXPRESSION", {
207
                    "args" : [["EXPRESSION", {
208
                      "args" : [["CALL", ["SIMPLE_NAME", "Data_r2"]]]}
209
                    ]]}
210
                  ]]}
211
                ]]}
212
              ]}
213
            ]}
214
          ]}
215
        ]]}
216
      ]}
217
    ]}
218
  }