Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

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

History | View | Annotate | Download (5.34 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"]]]]]], "library" : ["ENTITY_DECLARATION", {
5
        "name" : ["IDENTIFIER", "latches"], "ports" : [{
6
          "names" : [["IDENTIFIER", "i_clock"]], "mode" : ["in"], "typ" : {
7
            "name" : ["SIMPLE_NAME", "std_logic"]}
8
          }
9
        , {
10
          "names" : [["IDENTIFIER", "i_reset"]], "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"]}
16
          }
17
        , {
18
          "names" : [["IDENTIFIER", "i_b"]], "mode" : ["in"], "typ" : {
19
            "name" : ["SIMPLE_NAME", "std_logic"]}
20
          }
21
        , {
22
          "names" : [["IDENTIFIER", "i_c"]], "mode" : ["in"], "typ" : {
23
            "name" : ["SIMPLE_NAME", "std_logic"]}
24
          }
25
        , {
26
          "names" : [["IDENTIFIER", "o_a"]], "mode" : ["out"], "typ" : {
27
            "name" : ["SIMPLE_NAME", "std_logic"]}
28
          }
29
        , {
30
          "names" : [["IDENTIFIER", "o_b"]], "mode" : ["out"], "typ" : {
31
            "name" : ["SIMPLE_NAME", "std_logic"]}
32
          }
33
        , {
34
          "names" : [["IDENTIFIER", "o_c"]], "mode" : ["out"], "typ" : {
35
            "name" : ["SIMPLE_NAME", "std_logic"]}
36
          }
37
        ], "ENTITY_DECLARATIVE_PART" : [], "ENTITY_STATEMENT_PART" : []}
38
      ]}
39
    , {
40
      "contexts" : [], "library" : ["ARCHITECTURE_BODY", {
41
        "name" : ["IDENTIFIER", "Behavioral"], "entity" : ["IDENTIFIER", "latches"], "ARCHITECTURE_DECLARATIVE_PART" : [{
42
          "declaration" : ["SIGNAL_DECLARATION", {
43
            "names" : [["IDENTIFIER", "latch_0"]], "typ" : {
44
              "name" : ["SIMPLE_NAME", "std_logic"]}
45
            }
46
          ]}
47
        ], "ARCHITECTURE_STATEMENT_PART" : [["PROCESS_STATEMENT", {
48
          "active_sigs" : [["SIMPLE_NAME", "i_reset"], ["SIMPLE_NAME", "i_a"], ["SIMPLE_NAME", "i_b"]], "PROCESS_STATEMENT_PART" : [["IF_STATEMENT", {
49
            "if_cases" : [{
50
              "if_cond" : ["EXPRESSION", {
51
                "args" : [["EXPRESSION", {
52
                  "args" : [["EXPRESSION", {
53
                    "args" : [["EXPRESSION", {
54
                      "args" : [["EXPRESSION", {
55
                        "id" : "=", "args" : [["EXPRESSION", {
56
                          "args" : [["EXPRESSION", {
57
                            "args" : [["EXPRESSION", {
58
                              "args" : [["CALL", ["SIMPLE_NAME", "i_reset"]]]}
59
                            ]]}
60
                          ]]}
61
                        ], ["EXPRESSION", {
62
                          "args" : [["EXPRESSION", {
63
                            "args" : [["EXPRESSION", {
64
                              "args" : [["CONSTANT_VALUE", {
65
                                "value" : ["CST_LITERAL", "'1'"]}
66
                              ]]}
67
                            ]]}
68
                          ]]}
69
                        ]]}
70
                      ]]}
71
                    ]]}
72
                  ]]}
73
                ]]}
74
              ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
75
                "lhs" : ["SIMPLE_NAME", "latch_0"], "rhs" : [{
76
                  "value" : ["EXPRESSION", {
77
                    "args" : [["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_cond" : ["EXPRESSION", {
91
                "args" : [["EXPRESSION", {
92
                  "args" : [["EXPRESSION", {
93
                    "args" : [["EXPRESSION", {
94
                      "args" : [["EXPRESSION", {
95
                        "id" : "=", "args" : [["EXPRESSION", {
96
                          "args" : [["EXPRESSION", {
97
                            "args" : [["EXPRESSION", {
98
                              "args" : [["CALL", ["SIMPLE_NAME", "i_b"]]]}
99
                            ]]}
100
                          ]]}
101
                        ], ["EXPRESSION", {
102
                          "args" : [["EXPRESSION", {
103
                            "args" : [["EXPRESSION", {
104
                              "args" : [["CONSTANT_VALUE", {
105
                                "value" : ["CST_LITERAL", "'1'"]}
106
                              ]]}
107
                            ]]}
108
                          ]]}
109
                        ]]}
110
                      ]]}
111
                    ]]}
112
                  ]]}
113
                ]]}
114
              ], "if_block" : [["SIGNAL_ASSIGNMENT_STATEMENT", {
115
                "lhs" : ["SIMPLE_NAME", "latch_0"], "rhs" : [{
116
                  "value" : ["EXPRESSION", {
117
                    "args" : [["EXPRESSION", {
118
                      "args" : [["EXPRESSION", {
119
                        "args" : [["EXPRESSION", {
120
                          "args" : [["CALL", ["SIMPLE_NAME", "i_a"]]]}
121
                        ]]}
122
                      ]]}
123
                    ]]}
124
                  ]}
125
                ]}
126
              ]]}
127
            ]}
128
          ]]}
129
        ]]}
130
      ]}
131
    ]}
132
  }