Project

General

Profile

« Previous | Next » 

Revision 96cb9cf2

Added by Arnaud Dieumegard over 3 years ago

Added MiniVHDL versions of component instantiation and concurretn statement

View differences:

src/backends/VHDL/mini_vhdl_ast.ml
1 1
open Vhdl_ast
2
				       
2
open Vhdl_ast_eq
3

  
4
type mini_vhdl_component_instantiation_t =
5
  {
6
    name: vhdl_name_t;
7
    archi: vhdl_architecture_t;
8
    entity: vhdl_entity_t;
9
    generic_map: vhdl_assoc_element_t list [@default []];
10
    port_map: vhdl_assoc_element_t list [@default []];
11
  }
12
[@@deriving show { with_path = false }];;
13

  
14
type mini_vhdl_concurrent_stmt_t =
15
  | SigAssign of vhdl_conditional_signal_t [@name "CONDITIONAL_SIGNAL_ASSIGNMENT"]
16
  | Process of vhdl_process_t [@name "PROCESS_STATEMENT"]
17
  | SelectedSig of vhdl_selected_signal_t [@name "SELECTED_SIGNAL_ASSIGNMENT"]
18
  | ComponentInst of mini_vhdl_component_instantiation_t [@name "COMPONENT_INSTANTIATION_STATEMENT"]
19
[@@deriving show { with_path = false }];;
20

  
3 21
type mini_vhdl_component_t =
4 22
  {
5 23
    names: vhdl_name_t list [@default NoName];
......
8 26
    contexts: vhdl_load_t list [@default []]; (* Related 'declarations' contexts + relatated entity contexts *)
9 27
    declarations: vhdl_declaration_t list [@default []]; (* From inlined 'declarations' + entity.declaration *)
10 28
    definitions: vhdl_definition_t list [@default []]; (* From inlined 'declarations' + entity.declaration *)
11
    body: vhdl_concurrent_stmt_t list [@key "ARCHITECTURE_STATEMENT_PART"] [@default []]; (* + entity.stmts *)
29
    body: mini_vhdl_concurrent_stmt_t list [@key "ARCHITECTURE_STATEMENT_PART"] [@default []]; (* + entity.stmts *)
12 30
  }
13
[@@deriving show { with_path = false }, yojson {strict = false}];;
31
[@@deriving show { with_path = false }];;
14 32

  
15 33
type mini_vhdl_design_file_t = 
16 34
  {
17 35
    components: mini_vhdl_component_t list [@default []];
18 36
    packages: vhdl_package_t list [@default []];
19 37
  }
20
[@@deriving show { with_path = false }, yojson];;
38
[@@deriving show { with_path = false }];;

Also available in: Unified diff