Project

General

Profile

Download (11 KB) Statistics
| Branch: | Tag: | Revision:
1
{
2
  "DESIGN_FILE" : {
3
    "design_units" : [{
4
      "contexts" : [], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "hold_time_checker"], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
6
      ]}
7
    , {
8
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
9
        "name" : ["IDENTIFIER", "test"], "entity" : ["IDENTIFIER", "hold_time_checker"], "ARCHITECTURE_DECLARATIVE_PART" : [{
10
          "declaration" : ["CONSTANT_DECLARATION", {
11
            "names" : [["IDENTIFIER", "Thold_d_clk"]], "typ" : {
12
              "name" : ["SIMPLE_NAME", "delay_length"]}
13
            , "init_val" : ["EXPRESSION", {
14
              "args" : [["EXPRESSION", {
15
                "args" : [["EXPRESSION", {
16
                  "args" : [["EXPRESSION", {
17
                    "args" : [["CONSTANT_VALUE", {
18
                      "value" : ["CST_LITERAL", "3"], "unit_name" : ["SIMPLE_NAME", "ns"]}
19
                    ]]}
20
                  ]]}
21
                ]]}
22
              ]]}
23
            ]}
24
          ]}
25
        , {
26
          "declaration" : ["SIGNAL_DECLARATION", {
27
            "names" : [["IDENTIFIER", "clk"], ["IDENTIFIER", "d"]], "typ" : {
28
              "name" : ["SIMPLE_NAME", "bit"]}
29
            , "init_val" : ["EXPRESSION", {
30
              "args" : [["EXPRESSION", {
31
                "args" : [["EXPRESSION", {
32
                  "args" : [["EXPRESSION", {
33
                    "args" : [["CONSTANT_VALUE", {
34
                      "value" : ["CST_LITERAL", "'0'"]}
35
                    ]]}
36
                  ]]}
37
                ]]}
38
              ]]}
39
            ]}
40
          ]}
41
        ], "ARCHITECTURE_STATEMENT_PART" : [["PROCESS_STATEMENT", {
42
          "id" : ["IDENTIFIER", "hold_time_checker"], "PROCESS_DECLARATIVE_PART" : [{
43
            "declaration" : ["VARIABLE_DECLARATION", {
44
              "names" : [["IDENTIFIER", "last_clk_edge_time"]], "typ" : {
45
                "name" : ["SIMPLE_NAME", "time"]}
46
              , "init_val" : ["EXPRESSION", {
47
                "args" : [["EXPRESSION", {
48
                  "args" : [["EXPRESSION", {
49
                    "args" : [["EXPRESSION", {
50
                      "args" : [["CONSTANT_VALUE", {
51
                        "value" : ["CST_LITERAL", "0"], "unit_name" : ["SIMPLE_NAME", "fs"]}
52
                      ]]}
53
                    ]]}
54
                  ]]}
55
                ]]}
56
              ]}
57
            ]}
58
          ], "active_sigs" : [["SIMPLE_NAME", "clk"], ["SIMPLE_NAME", "d"]], "PROCESS_STATEMENT_PART" : [["IF_STATEMENT", {
59
            "if_cases" : [{
60
              "if_cond" : ["EXPRESSION", {
61
                "id" : "and", "args" : [["EXPRESSION", {
62
                  "args" : [["EXPRESSION", {
63
                    "args" : [["EXPRESSION", {
64
                      "args" : [["EXPRESSION", {
65
                        "args" : [["CALL", ["ATTRIBUTE_NAME", {
66
                          "id" : ["SIMPLE_NAME", "clk"], "designator" : ["SIMPLE_NAME", "event"]}
67
                        ]]]}
68
                      ]]}
69
                    ]]}
70
                  ]]}
71
                ], ["EXPRESSION", {
72
                  "id" : "=", "args" : [["EXPRESSION", {
73
                    "args" : [["EXPRESSION", {
74
                      "args" : [["EXPRESSION", {
75
                        "args" : [["CALL", ["SIMPLE_NAME", "clk"]]]}
76
                      ]]}
77
                    ]]}
78
                  ], ["EXPRESSION", {
79
                    "args" : [["EXPRESSION", {
80
                      "args" : [["EXPRESSION", {
81
                        "args" : [["CONSTANT_VALUE", {
82
                          "value" : ["CST_LITERAL", "'1'"]}
83
                        ]]}
84
                      ]]}
85
                    ]]}
86
                  ]]}
87
                ]]}
88
              ], "if_block" : [["VARIABLE_ASSIGNMENT_STATEMENT", {
89
                "lhs" : ["SIMPLE_NAME", "last_clk_edge_time"], "rhs" : ["EXPRESSION", {
90
                  "args" : [["EXPRESSION", {
91
                    "args" : [["EXPRESSION", {
92
                      "args" : [["EXPRESSION", {
93
                        "args" : [["CALL", ["SIMPLE_NAME", "now"]]]}
94
                      ]]}
95
                    ]]}
96
                  ]]}
97
                ]}
98
              ]]}
99
            ]}
100
          ], ["IF_STATEMENT", {
101
            "if_cases" : [{
102
              "if_cond" : ["EXPRESSION", {
103
                "args" : [["EXPRESSION", {
104
                  "args" : [["EXPRESSION", {
105
                    "args" : [["EXPRESSION", {
106
                      "args" : [["CALL", ["ATTRIBUTE_NAME", {
107
                        "id" : ["SIMPLE_NAME", "d"], "designator" : ["SIMPLE_NAME", "event"]}
108
                      ]]]}
109
                    ]]}
110
                  ]]}
111
                ]]}
112
              ], "if_block" : [["ASSERTION_STATEMENT", {
113
                "cond" : ["EXPRESSION", {
114
                  "id" : ">=", "args" : [["EXPRESSION", {
115
                    "args" : [["EXPRESSION", {
116
                      "args" : [["EXPRESSION", {
117
                        "id" : "-", "args" : [["EXPRESSION", {
118
                          "args" : [["CALL", ["SIMPLE_NAME", "now"]]]}
119
                        ], ["EXPRESSION", {
120
                          "args" : [["CALL", ["SIMPLE_NAME", "last_clk_edge_time"]]]}
121
                        ]]}
122
                      ]]}
123
                    ]]}
124
                  ], ["EXPRESSION", {
125
                    "args" : [["EXPRESSION", {
126
                      "args" : [["EXPRESSION", {
127
                        "args" : [["CALL", ["SIMPLE_NAME", "Thold_d_clk"]]]}
128
                      ]]}
129
                    ]]}
130
                  ]]}
131
                ], "report" : ["EXPRESSION", {
132
                  "args" : [["EXPRESSION", {
133
                    "args" : [["EXPRESSION", {
134
                      "args" : [["EXPRESSION", {
135
                        "args" : [["CONSTANT_VALUE", {
136
                          "value" : ["CST_LITERAL", "\"hold time violation\""]}
137
                        ]]}
138
                      ]]}
139
                    ]]}
140
                  ]]}
141
                ]}
142
              ]]}
143
            ]}
144
          ]]}
145
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
146
          "postponed" : false, "label" : ["IDENTIFIER", "clk_gen"], "lhs" : ["SIMPLE_NAME", "clk"], "rhs" : [{
147
            "expr" : [{
148
              "value" : ["EXPRESSION", {
149
                "args" : [["EXPRESSION", {
150
                  "args" : [["EXPRESSION", {
151
                    "args" : [["EXPRESSION", {
152
                      "args" : [["CONSTANT_VALUE", {
153
                        "value" : ["CST_LITERAL", "'1'"]}
154
                      ]]}
155
                    ]]}
156
                  ]]}
157
                ]]}
158
              ], "delay" : ["EXPRESSION", {
159
                "args" : [["EXPRESSION", {
160
                  "args" : [["EXPRESSION", {
161
                    "args" : [["EXPRESSION", {
162
                      "args" : [["CONSTANT_VALUE", {
163
                        "value" : ["CST_LITERAL", "10"], "unit_name" : ["SIMPLE_NAME", "ns"]}
164
                      ]]}
165
                    ]]}
166
                  ]]}
167
                ]]}
168
              ]}
169
            , {
170
              "value" : ["EXPRESSION", {
171
                "args" : [["EXPRESSION", {
172
                  "args" : [["EXPRESSION", {
173
                    "args" : [["EXPRESSION", {
174
                      "args" : [["CONSTANT_VALUE", {
175
                        "value" : ["CST_LITERAL", "'0'"]}
176
                      ]]}
177
                    ]]}
178
                  ]]}
179
                ]]}
180
              ], "delay" : ["EXPRESSION", {
181
                "args" : [["EXPRESSION", {
182
                  "args" : [["EXPRESSION", {
183
                    "args" : [["EXPRESSION", {
184
                      "args" : [["CONSTANT_VALUE", {
185
                        "value" : ["CST_LITERAL", "20"], "unit_name" : ["SIMPLE_NAME", "ns"]}
186
                      ]]}
187
                    ]]}
188
                  ]]}
189
                ]]}
190
              ]}
191
            ], "cond" : ["EXPRESSION", {
192
              "id" : "=", "args" : [["EXPRESSION", {
193
                "args" : [["EXPRESSION", {
194
                  "args" : [["EXPRESSION", {
195
                    "args" : [["CALL", ["SIMPLE_NAME", "clk"]]]}
196
                  ]]}
197
                ]]}
198
              ], ["EXPRESSION", {
199
                "args" : [["EXPRESSION", {
200
                  "args" : [["EXPRESSION", {
201
                    "args" : [["CONSTANT_VALUE", {
202
                      "value" : ["CST_LITERAL", "'0'"]}
203
                    ]]}
204
                  ]]}
205
                ]]}
206
              ]]}
207
            ]}
208
          ]}
209
        ], ["CONDITIONAL_SIGNAL_ASSIGNMENT", {
210
          "postponed" : false, "label" : ["IDENTIFIER", "stimulus"], "lhs" : ["SIMPLE_NAME", "d"], "rhs" : [{
211
            "expr" : [{
212
              "value" : ["EXPRESSION", {
213
                "args" : [["EXPRESSION", {
214
                  "args" : [["EXPRESSION", {
215
                    "args" : [["EXPRESSION", {
216
                      "args" : [["CONSTANT_VALUE", {
217
                        "value" : ["CST_LITERAL", "'1'"]}
218
                      ]]}
219
                    ]]}
220
                  ]]}
221
                ]]}
222
              ], "delay" : ["EXPRESSION", {
223
                "args" : [["EXPRESSION", {
224
                  "args" : [["EXPRESSION", {
225
                    "args" : [["EXPRESSION", {
226
                      "args" : [["CONSTANT_VALUE", {
227
                        "value" : ["CST_LITERAL", "15"], "unit_name" : ["SIMPLE_NAME", "ns"]}
228
                      ]]}
229
                    ]]}
230
                  ]]}
231
                ]]}
232
              ]}
233
            , {
234
              "value" : ["EXPRESSION", {
235
                "args" : [["EXPRESSION", {
236
                  "args" : [["EXPRESSION", {
237
                    "args" : [["EXPRESSION", {
238
                      "args" : [["CONSTANT_VALUE", {
239
                        "value" : ["CST_LITERAL", "'0'"]}
240
                      ]]}
241
                    ]]}
242
                  ]]}
243
                ]]}
244
              ], "delay" : ["EXPRESSION", {
245
                "args" : [["EXPRESSION", {
246
                  "args" : [["EXPRESSION", {
247
                    "args" : [["EXPRESSION", {
248
                      "args" : [["CONSTANT_VALUE", {
249
                        "value" : ["CST_LITERAL", "53"], "unit_name" : ["SIMPLE_NAME", "ns"]}
250
                      ]]}
251
                    ]]}
252
                  ]]}
253
                ]]}
254
              ]}
255
            , {
256
              "value" : ["EXPRESSION", {
257
                "args" : [["EXPRESSION", {
258
                  "args" : [["EXPRESSION", {
259
                    "args" : [["EXPRESSION", {
260
                      "args" : [["CONSTANT_VALUE", {
261
                        "value" : ["CST_LITERAL", "'1'"]}
262
                      ]]}
263
                    ]]}
264
                  ]]}
265
                ]]}
266
              ], "delay" : ["EXPRESSION", {
267
                "args" : [["EXPRESSION", {
268
                  "args" : [["EXPRESSION", {
269
                    "args" : [["EXPRESSION", {
270
                      "args" : [["CONSTANT_VALUE", {
271
                        "value" : ["CST_LITERAL", "72"], "unit_name" : ["SIMPLE_NAME", "ns"]}
272
                      ]]}
273
                    ]]}
274
                  ]]}
275
                ]]}
276
              ]}
277
            ]}
278
          ]}
279
        ]]}
280
      ]}
281
    ]}
282
  }
(3-3/12)