Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

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

History | View | Annotate | Download (9.13 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"], "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" : ["SIMPLE_NAME", "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", ["FUNCTION_CALL", {
129
                                "id" : ["SIMPLE_NAME", "rising_edge"], "assoc_list" : [{
130
                                  "actual_designator" : ["SIMPLE_NAME", "i_Clock"]}
131
                                ]}
132
                              ]]]}
133
                            ]]}
134
                          ]]}
135
                        ]]}
136
                      ]]}
137
                    ]]}
138
                  ]]}
139
                ]]}
140
              ], "if_block" : [["IF_STATEMENT", {
141
                "if_cases" : [{
142
                  "if_cond" : ["EXPRESSION", {
143
                    "args" : [["EXPRESSION", {
144
                      "args" : [["EXPRESSION", {
145
                        "args" : [["EXPRESSION", {
146
                          "args" : [["EXPRESSION", {
147
                            "id" : "=", "args" : [["EXPRESSION", {
148
                              "args" : [["EXPRESSION", {
149
                                "args" : [["EXPRESSION", {
150
                                  "args" : [["CALL", ["SIMPLE_NAME", "Enable_r"]]]}
151
                                ]]}
152
                              ]]}
153
                            ], ["EXPRESSION", {
154
                              "args" : [["EXPRESSION", {
155
                                "args" : [["EXPRESSION", {
156
                                  "args" : [["CONSTANT_VALUE", {
157
                                    "value" : ["CST_LITERAL", "'1'"]}
158
                                  ]]}
159
                                ]]}
160
                              ]]}
161
                            ]]}
162
                          ]]}
163
                        ]]}
164
                      ]]}
165
                    ]]}
166
                  ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
167
                    "lhs" : ["SIMPLE_NAME", "Data_r"], "rhs" : [{
168
                      "value" : ["EXPRESSION", {
169
                        "args" : [["EXPRESSION", {
170
                          "args" : [["EXPRESSION", {
171
                            "args" : [["EXPRESSION", {
172
                              "args" : [["CALL", ["SIMPLE_NAME", "i_Data"]]]}
173
                            ]]}
174
                          ]]}
175
                        ]]}
176
                      ]}
177
                    ]}
178
                  ], ["SIGNAL_ASSIGNMENT_STATEMENT", {
179
                    "lhs" : ["SIMPLE_NAME", "Data_r2"], "rhs" : [{
180
                      "value" : ["EXPRESSION", {
181
                        "args" : [["EXPRESSION", {
182
                          "args" : [["EXPRESSION", {
183
                            "args" : [["EXPRESSION", {
184
                              "args" : [["CALL", ["SIMPLE_NAME", "Data_r"]]]}
185
                            ]]}
186
                          ]]}
187
                        ]]}
188
                      ]}
189
                    ]}
190
                  ]]}
191
                ]}
192
              ]]}
193
            ]}
194
          ]]}
195
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
196
          "postponed" : false, "lhs" : ["SIMPLE_NAME", "o_Data"], "rhs" : [{
197
            "expr" : [{
198
              "value" : ["EXPRESSION", {
199
                "args" : [["EXPRESSION", {
200
                  "args" : [["EXPRESSION", {
201
                    "args" : [["EXPRESSION", {
202
                      "args" : [["CALL", ["SIMPLE_NAME", "Data_r2"]]]}
203
                    ]]}
204
                  ]]}
205
                ]]}
206
              ]}
207
            ]}
208
          ]}
209
        ]]}
210
      ]}
211
    ]}
212
  }