Application module: Layered interconnect module with printed component design | ISO/TS 10303-1700:2018-11(E) © ISO |
This clause specifies the information requirements for the Layered interconnect module with printed component design application module. The information requirements are specified as the Application Reference Model (ARM) of this application module.
NOTE 1 A graphical representation of the information requirements is given in Annex C.
NOTE 2 The mapping specification is specified in 5.1. It shows how the information requirements are met by using common resources and constructs defined or imported in the MIM schema of this application module.
This clause defines the information requirements to which implementations shall conform using the EXPRESS language as defined in ISO 10303-11. The following begins the Layered_interconnect_module_with_printed_component_design_arm schema and identifies the necessary external references.
EXPRESS specification:
*)
SCHEMA Layered_interconnect_module_with_printed_component_design_arm;
(*
The following EXPRESS interface statements specify the elements imported from the ARMs of other application modules.
EXPRESS specification:
*)
USE FROM
Printed_physical_layout_template_arm;
--
ISO/TS 10303-1737
USE FROM
Land_arm;
--
ISO/TS 10303-1692
REFERENCE FROM
Support_resource_arm
--
ISO/TS 10303-1800
(bag_to_set);
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
Printed_physical_layout_template_arm ISO/TS 10303-1737 Land_arm ISO/TS 10303-1692 Support_resource_arm ISO/TS 10303-1800
NOTE 2 See Annex C, Figures C.1, C.2and C.3 for a graphical representation of this schema.
This subclause specifies the ARM types for this application module. The ARM types and definitions are specified below.
The conductor_or_conductive_filled_area type allows for the designation of the data types Conductor, and Conductive_filled_area.
EXPRESS specification:
*)
TYPE
conductor_or_conductive_filled_area =
SELECT
(Conductor,
Conductive_filled_area);
END_TYPE;
(*
The limwpcd_external_identification_item type is an extension of the external_identification_item type. It adds the data type Printed_component to the list of alternate data types.
EXPRESS specification:
*)
TYPE
limwpcd_external_identification_item =
SELECT
BASED_ON
external_identification_item
WITH
(Printed_component);
END_TYPE;
(*
This subclause specifies the ARM entities for this module. Each ARM application entity is an atomic element that embodies a unique application concept and contains attributes specifying the data elements of the entity. The ARM entities and definitions are specified below.
EXPRESS specification:
*)
ENTITY Basic_multi_stratum_printed_component
SUBTYPE OF (Printed_component);
material_stack : Stratum_feature_based_derived_pattern;
SELF\Printed_component.derived_from : Basic_multi_stratum_printed_part_template;
DERIVE
stratum_feature_implementation : Stratum_feature := material_stack.reference_stratum_feature;
END_ENTITY;
(*
Attribute definitions:
material_stack: specifies the role of the Stratum_feature_based_derived_pattern for the Basic_multi_stratum_printed_component.
derived_from: an attribute inherited from the Printed_component shall be redeclared as the Basic_multi_stratum_printed_part_template for the Basic_multi_stratum_printed_component.
stratum_feature_implementation: specifies the role of the Stratum_feature for the Basic_multi_stratum_printed_component.
EXPRESS specification:
*)
ENTITY Multi_stratum_printed_component
SUBTYPE OF (Printed_component, Structured_layout_component);
SELF\Printed_component.derived_from : Multi_stratum_printed_part_template;
END_ENTITY;
(*
Attribute definitions:
derived_from: an attribute inherited from the Printed_component shall be redeclared as the Multi_stratum_printed_part_template for the Multi_stratum_printed_component.
A Printed_component is a type of Assembly_component and a type of Single_instance. A Printed_component is a Single_stratum_printed_component or a Basic_multi_stratum_printed_component or a Multi_stratum_printed_component.
A Printed_component is an occurrence of Printed_part_template that is used as an Assembly_component in an Interconnect_module_design_view. A Printed_component is manufactured integral to an Interconnect_module_design_view. Only the Routed_transmission_line subtype shall reference a Printed_part_cross_section_template as a derived_from.
NOTE 1 Footprint_occurrence and Padstack_occurrence are provided for the most common case of CAD system interface requirements. Printed_component other than Printed_connector_component are generally reserved for more complex requirements.
EXPRESS specification:
*)
ENTITY Printed_component
ABSTRACT SUPERTYPE
OF (ONEOF (Single_stratum_printed_component,
Basic_multi_stratum_printed_component,
Multi_stratum_printed_component))
SUBTYPE OF (Assembly_component, Single_instance);
SELF\Definition_based_product_occurrence.derived_from : Printed_part_template;
INVERSE
access_mechanism : SET[1:?] OF Printed_component_join_terminal FOR associated_definition;
cad_layer : SET[0:1] OF External_source_identification FOR item;
WHERE
WR5: NOT EXISTS(SELF\Product_view_definition.name);
END_ENTITY;
(*
Attribute definitions:
derived_from: an attribute inherited from the Definition_based_product_occurrence shall be redeclared as the Printed_part_template for the Printed_component.
access_mechanism: specifies an inverse relationship that specifies that the existence of the Printed_component is dependent on the existence of the Printed_component_join_terminal that specifies the Printed_component as its associated_definition. There shall be one or more Printed_component_join_terminals for a particular Printed_component.
cad_layer: specifies an inverse relationship that specifies that the existence of the Printed_component is dependent on the existence of the External_source_identification that specifies the Printed_component as its item. There shall be zero or more External_source_identifications for a particular Printed_component.
NOTE 2 The cad_layer is only appropriate where there is a single layer material being defined.
Formal propositions:
WR5: The name shall not be populated.
A Printed_component_join_terminal is a type of Laminate_component_join_terminal. This terminal is a terminus for internal circuitry in the interconnect substrate.
EXAMPLE Figure 1 illustrates a detail of a layout drawing that shows the internal terminals of the printed connector (edge connector).
EXPRESS specification:
*)
ENTITY Printed_component_join_terminal
SUBTYPE OF (Laminate_component_join_terminal);
SELF\Component_feature.definition : Printed_part_template_join_terminal;
SELF\Component_feature.associated_definition : Printed_component;
stratum_concept_implementation : Stratum_feature_template_component;
WHERE
WR1: NOT EXISTS(SELF\Shape_element.description);
WR2: associated_definition.derived_from :=: definition\Printed_part_template_terminal.associated_definition;
END_ENTITY;
(*
Attribute definitions:
definition: an attribute inherited from the Component_feature shall be redeclared as the Printed_part_template_join_terminal that defines the Printed_component_join_terminal.
associated_definition: an attribute inherited from the Component_feature shall be redeclared as the Printed_component being accessed by the Printed_component_join_terminal.
stratum_concept_implementation: specifies the role of the Stratum_feature_template_component for the Printed_component_join_terminal.
Formal propositions:
WR1: The description shall not be populated.
WR2: The Template_definition specified by the associated_definition as its derived_from shall be the same Template_definition specified by the definition as its associated_definition.
EXPRESS specification:
*)
ENTITY Printed_connector_component
SUBTYPE OF (Printed_component);
SELF\Definition_based_product_occurrence.derived_from : Printed_connector_template;
INVERSE
interface_access_mechanism : SET[1:?] OF Printed_connector_component_interface_terminal FOR associated_definition;
END_ENTITY;
(*
Attribute definitions:
derived_from: an attribute inherited from the Printed_component shall be redeclared as the Printed_connector_template for the Printed_connector_component.
interface_access_mechanism: an inverse relationship that specifies that the existence of the Printed_connector_component is dependent on the existence of the Printed_connector_component_interface_terminal that specifies the Printed_connector_component as its associated_definition. There shall be one or more Printed_connector_component_interface_terminals for a Printed_connector_component.
A Printed_connector_component_interface_terminal is a type of Laminate_component_interface_terminal. The Printed_connector_component_interface_terminal is an individual access mechanism.
EXAMPLE 1 One terminal on a Printed_connector_component.
"Interface" means it is not tied to the substrate as part of the fabrication or assembly operation.
EXAMPLE 2 Figure 2 of ISO/TS 10303-1737 illustrates a detail of a layout drawing that shows a Printed_connector_component_interface_terminal.
EXPRESS specification:
*)
ENTITY Printed_connector_component_interface_terminal
SUBTYPE OF (Laminate_component_interface_terminal);
SELF\Component_feature.definition : Printed_part_template_interface_terminal;
SELF\Component_feature.associated_definition : Printed_connector_component;
stratum_concept_implementation : Stratum_feature_template_component;
WHERE
WR1: NOT EXISTS(SELF\Shape_element.description);
END_ENTITY;
(*
Attribute definitions:
definition: an attribute inherited from the Component_feature shall be redeclared as the Printed_part_template_interface_terminal for the Printed_connector_component_interface_terminal.
associated_definition: an attribute inherited from the Component_feature shall be redeclared as the Printed_connector_component for the Printed_connector_component_interface_terminal.
stratum_concept_implementation: specifies the role of the Stratum_feature_template_component for the Printed_connector_component_interface_terminal.
Formal propositions:
WR1: The description shall not be populated.
EXPRESS specification:
*)
ENTITY Routed_transmission_line
SUBTYPE OF (Assembly_component, Single_instance);
routed_centreline_shape : Curve;
SELF\Definition_based_product_occurrence.derived_from : Printed_part_cross_section_template;
component_extent : Inter_stratum_extent;
curve_parameters : Curve_style_parameters;
END_ENTITY;
(*
Attribute definitions:
routed_centreline_shape: specifies the role of the Curve for the Routed_transmission_line. The routed_centreline_shape may be represented as the result of an extrusion process, where the derived_from is extruded along the path of the route. The ends of the shape shall be perpendicular to the centreline.
NOTE This representation is not intended to reflect physical processing.
derived_from: an attribute inherited from the Definition_based_product_occurrence shall be redeclared as the Printed_part_cross_section_template for the Routed_transmission_line. The derived_from provides a cross-sectional definition that shall be interpreted as a constant cross-section along the path of the route.
component_extent: specifies the role of the Inter_stratum_extent for the Routed_transmission_line.
curve_parameters: specifies the role of the Curve_style_parameters for the Routed_transmission_line.
NOTE The geometric pattern may be discontinuous over the extent of the Single_stratum_printed_component.
EXAMPLE A single layer printed capacitor with line edge to edge spacing of 0.01 mm and line length of 1 mm and line width of 0.1 mm may represented by a Single_stratum_printed_component. The decision to classify the component as a capacitor instead of an inductor is a function of the external application.
EXPRESS specification:
*)
ENTITY Single_stratum_printed_component
SUBTYPE OF (Printed_component, Structured_layout_component);
SELF\Printed_component.derived_from : Single_stratum_printed_part_template;
stratum_feature_implementation : SET[1:?] OF Stratum_feature;
WHERE
WR1: SIZEOF(QUERY(sfi <* stratum_feature_implementation |
NOT(sfi.resident_stratum = stratum_feature_implementation[1].associated_definition)
)) = 0;
END_ENTITY;
(*
Attribute definitions:
derived_from: an attribute inherited from the Printed_component shall be redeclared as the Single_stratum_printed_part_template for the Single_stratum_printed_component.
stratum_feature_implementation: specifies the role of the Stratum_feature for the Single_stratum_printed_component. There shall exist one or more Stratum_features for the Single_stratum_printed_component.
Formal propositions:
WR1: Each Stratum_feature referenced by stratum_feature_implementation shall specify the same Stratum in the role of resident_stratum as that Stratum referenced by the first member of stratum_feature_implementation.
A Tiebar_printed_component is a type of Printed_component and a type of Structured_layout_component. The function of a Tiebar_printed_component is to provide a short between two or more physical networks. A Tiebar_printed_component provides a realization mechanism to resolve the logical difficulty in having contiguous metalization on a layer while still making an assertion that there is more than one physical network associated with the metalization.
NOTE 1 Because of the predefined function of the Tiebar_printed_component, the logical structure associated with each of the physical networks shorted by a Tiebar_printed_component continues to exist in the design model.
NOTE 2 The set of Structured_layout_component_sub_assembly_relationship input to limdwpcd_get_sspc to generate the tiebar_component is prefiltered to qualify only the types desired which is the Area_component and none of its subtypes and no complex instances with other subtypes of Stratum_feature_template_component.
NOTE 3 If a tiebar functionality is needed, but the functionality of the short is not realized as part of the fabrication process, but is realized as part of an external component, then Printed_connector_component shall be provided instead of Tiebar_printed_component.
NOTE 4 A Tiebar_printed_component may be used to provide a thermal short in addition to an electrical short, depending on material characteristics.
EXAMPLE 1 A standard example is for two ground signals to be tied together in a single small neighborhood of points but retain their internal structure for design and analysis purposes. This example is referenced in industrial practice as a single point ground practice.
EXAMPLE 2 An industrial application of a Tiebar_printed_component may be to ensure higher levels of reliability by forcing localized measurements to be generated by automated inspection algorithms.
EXPRESS specification:
*)
ENTITY Tiebar_printed_component
SUBTYPE OF (Printed_component, Structured_layout_component);
SELF\Printed_component.derived_from : Printed_tiebar_template;
DERIVE
joined_networks : SET[0:?] OF Generic_physical_network := get_gpn(SELF\Printed_component.access_mechanism);
tiebar_component : SET[0:?] OF Area_component := limdwpcd_get_ac(components);
padstack_component : SET[0:?] OF Laminate_component := limdwpcd_get_lc(components);
passage_component : SET[0:?] OF Plated_passage := QUERY(pc <* padstack_component | ('LAYERED_INTERCONNECT_MODULE_DESIGN_ARM.PLATED_PASSAGE' IN TYPEOF(pc)));
tiebar_resident_stratum : SET[0:?] OF Stratum := limdwpcd_get_tbrs(tiebar_component);
passage_resident_stratum : SET[0:?] OF Stratum := limdwpcd_get_prs(passage_component, SELF\Assembly_component.assemblies);
passage_dependent_land_component : SET[0:?] OF Plated_passage_dependent_land := limdwpcd_get_ppdl(passage_component);
INVERSE
SELF\Assembly_group_component.components : SET[1:?] OF Structured_layout_component_sub_assembly_relationship FOR relating_view;
WHERE
WR1: (SIZEOF(tiebar_component) + SIZEOF(passage_component)) > 0;
WR2: SIZEOF(components) = (SIZEOF(tiebar_component) + SIZEOF(padstack_component));
WR3: SIZEOF(padstack_component) > SIZEOF(passage_component);
WR4: SIZEOF(QUERY(tc <* tiebar_component |
NOT('LAYERED_INTERCONNECT_MODULE_DESIGN_ARM.STRATUM_FEATURE' IN TYPEOF
(tc\Stratum_feature_template_component.implementation_or_resident_stratum))
)) = 0;
WR5: SIZEOF(tiebar_component) = SIZEOF(tiebar_resident_stratum);
WR6: SIZEOF(joined_networks) > 1;
WR7: SIZEOF(QUERY(jn <* joined_networks |
NOT(SIZEOF(SELF\Printed_component.access_mechanism * jn\Generic_physical_network.connectivity_requirement_element) = 1 )
)) = 0;
WR8: SIZEOF(QUERY(tc <* tiebar_component |
NOT(SIZEOF(USEDIN(tc,'COMPONENT_FEATURE_ARM.COMPONENT_FEATURE.ASSOCIATED_DEFINITION')) = 0)
)) = 0;
WR9: NOT(SIZEOF(passage_component) = 1) OR
(SIZEOF(QUERY(pc <* passage_component | NOT((SIZEOF(tiebar_component) = 0) OR
(SIZEOF(tiebar_resident_stratum * passage_resident_stratum) = SIZEOF(tiebar_resident_stratum))
)
)) = 0);
WR10: NOT(SIZEOF(passage_component) >= 1) OR
(SIZEOF(QUERY(pc <* passage_component | NOT
(SIZEOF(tiebar_resident_stratum * passage_resident_stratum) = SIZEOF(tiebar_resident_stratum))
)) = 0);
WR11: SIZEOF(QUERY(am <* SELF\Printed_component.access_mechanism |
NOT('PRINTED_PHYSICAL_LAYOUT_TEMPLATE_ARM.STRUCTURED_PRINTED_PART_TEMPLATE_TERMINAL' IN TYPEOF(am.definition))
)) = 0;
END_ENTITY;
(*
Attribute definitions:
derived_from: an attribute inherited from the Printed_component shall be redeclared as the Printed_tiebar_template for the Tiebar_printed_component.
joined_networks: specifies a role of the Generic_physical_network for the Tiebar_printed_component. There shall exist zero or more Generic_physical_networks for the Tiebar_printed_component.
tiebar_component: specifies a role of the Area_component for the Tiebar_printed_component. There shall exist zero or more Area_components for the Tiebar_printed_component.
padstack_component: specifies a role of the Laminate_component for the Tiebar_printed_component. There shall exist zero or more Laminate_components for the Tiebar_printed_component.
passage_component: specifies a role of the Plated_passage for the Tiebar_printed_component. There shall exist zero or more Plated_passages for the Tiebar_printed_component.
tiebar_resident_stratum: specifies a role of the Stratum for the Tiebar_printed_component. There shall exist zero or more Stratums for the Tiebar_printed_component.
passage_resident_stratum: specifies a role of the Stratum for the Tiebar_printed_component. There shall exist zero or more Stratums for the Tiebar_printed_component.
passage_dependent_land_component: specifies a role of the Plated_passage_dependent_land for the Tiebar_printed_component. There shall exist zero or more Plated_passage_dependent_lands for the Tiebar_printed_component.
components: an inverse relationship that specifies that the existence of the Tiebar_printed_component is dependent on the existence of the Structured_layout_component_sub_assembly_relationship that specifies the Tiebar_printed_component as its relating_view. There shall be one or more Structured_layout_component_sub_assembly_relationship for the Tiebar_printed_component.
Formal propositions:
WR1: There shall be at least one member of tiebar_component or there shall be at least one member of passage_component.
NOTE 5 A Tiebar_printed_component may just be implemented as a Plated_passage which connects implementation of two or more Routed_physical_network on at least two different Stratum and therefore does not use an Area_component to effect the short circuit.
WR2: Only tiebar_component and padstack_component are allowed to be components.
WR3: There shall be at least one padstack_component that is not a passage_component.
NOTE 6 At least one padstack_component will be a Plated_passage_dependent_land to implement horizontal interface to the material on a Design_layer_stratum.
EXAMPLE 3 In the case where an inner layer is to be connected, a Plated_passage_dependent_land would be a padstack_component.
WR4: Each Stratum_feature_template_component in the role of tiebar_component shall have a Stratum_feature as an implementation_or_resident_stratum.
WR5: Each Stratum_feature_template_component in the role of tiebar_component shall be on a separate Stratum from any other tiebar_component.
WR6: There shall be more than one Generic_physical_network joined by the Tiebar_printed_component.
WR7: Each member of access_mechanism inherited from Printed_component shall be referenced as a connectivity_requirement_element by one member of joined_networks.
NOTE 7 It is possible for a Generic_physical_network to reference more than one terminal of a Tiebar_printed_component.
WR8: No member of tiebar_component shall be referenced by a member of Laminate_component_join_terminal as an associated_definition.
WR9: If exactly one passage_component is provided, then if there is a tiebar_component provided, the resident_stratum of the tiebar_component shall be in the vertical extent of the passage_component.
WR10: If more than one passage_component is provided, then the resident_stratum of each member of tiebar_component shall be in the vertical extent of each of the passage_component.
WR11: Each member of access_mechanism shall be defined by a member of Structured_printed_part_template_terminal.
NOTE 8 The specifics of terminal instantiation is dependent on the application.
This subclause specifies the ARM subtype constraints for this module. Each subtype constraint places constraints on the possible super-type / subtype instantiations. The ARM subtype constraints and definitions are specified below.
The limwpcd_assembly_component_subtypes constraint specifies a constraint that applies to instances of Assembly_component and enforces the rule that its subtypes Physical_component, Printed_component and Laminate_component are exclusive.
EXPRESS specification:
*)
SUBTYPE_CONSTRAINT limwpcd_assembly_component_subtypes FOR Assembly_component;
ONEOF (Physical_component,
Printed_component,
Laminate_component);
END_SUBTYPE_CONSTRAINT;
(*
The limwpcd_structured_layout_component_subtypes constraint specifies a constraint that applies to instances of Structured_layout_component and enforces the rule that its subtypes Footprint_occurrence, Material_removal_structured_component, Multi_stratum_printed_component, Multi_stratum_special_symbol_component, Padstack_occurrence, Single_stratum_printed_component and Single_stratum_special_symbol_component are exclusive.
EXPRESS specification:
*)
SUBTYPE_CONSTRAINT limwpcd_structured_layout_component_subtypes FOR Structured_layout_component;
ONEOF (Footprint_occurrence,
Material_removal_structured_component,
Multi_stratum_printed_component,
Multi_stratum_special_symbol_component,
Padstack_occurrence,
Single_stratum_printed_component,
Single_stratum_special_symbol_component);
END_SUBTYPE_CONSTRAINT;
(*
This subclause specifies the ARM functions for this module. The ARM functions and definitions are specified below.
EXPRESS specification:
*)
FUNCTION get_gpn (input : SET[0:?] OF Printed_component_join_terminal) : SET[0:?] OF Generic_physical_network;
LOCAL gpn : SET[0:?] OF Generic_physical_network := []; --this gives us access to the information base END_LOCAL; REPEAT i := 1 to SIZEOF(input) by 1; gpn := gpn + bag_to_set(USEDIN(input[i],'LAYERED_INTERCONNECT_MODULE_DESIGN_ARM.GENERIC_PHYSICAL_NETWORK.CONNECTIVITY_REQUIREMENT_ELEMENT')); END_REPEAT; RETURN(gpn);
END_FUNCTION;
(*
Argument definitions:
input: the specified set of Printed_component_join_terminal.
EXPRESS specification:
*)
FUNCTION limdwpcd_get_ac (input : SET[0:?] OF Structured_layout_component_sub_assembly_relationship) : SET[0:?] OF Area_component;
LOCAL sspc : SET OF Stratum_feature_template_component := []; --this gives us access to the information base slcsar : SET OF Structured_layout_component_sub_assembly_relationship := (QUERY(inp <* input | ('LAYERED_INTERCONNECT_MODULE_DESIGN_ARM.AREA_COMPONENT' IN TYPEOF(inp.related_view)) AND NOT ('LAND_ARM.LAND' IN TYPEOF(inp.related_view)) AND NOT ('LAYERED_INTERCONNECT_MODULE_DESIGN_ARM.CONDUCTIVE_INTERCONNECT_ELEMENT_WITH_PRE_DEFINED_TRANSITIONS' IN TYPEOF(inp.related_view)) AND NOT ('LAYERED_INTERCONNECT_MODULE_DESIGN_ARM.INTERFACE_ACCESS_STRATUM_FEATURE_TEMPLATE_COMPONENT' IN TYPEOF(inp.related_view)) )); END_LOCAL; REPEAT i := 1 to SIZEOF(slcsar) by 1; sspc := sspc + slcsar[i]\Structured_layout_component_sub_assembly_relationship.related_view; END_REPEAT; RETURN(sspc);
END_FUNCTION;
(*
Argument definitions:
input: a set of Structured_layout_component_sub_assembly_relationship.
EXPRESS specification:
*)
FUNCTION limdwpcd_get_lc (input : SET[0:?] OF Structured_layout_component_sub_assembly_relationship) : SET[0:?] OF Laminate_component;
LOCAL sspc : SET OF Laminate_component := []; --this gives us access to the information base slcsar : SET OF Structured_layout_component_sub_assembly_relationship := (QUERY(inp <* input | ('LAYERED_INTERCONNECT_MODULE_DESIGN_ARM.PADSTACK_DEFINITION' IN TYPEOF (inp\Structured_layout_component_sub_assembly_relationship.second_location\Template_location_in_structured_template.assembly)) )); END_LOCAL; REPEAT i := 1 to SIZEOF(slcsar) by 1; sspc := sspc + slcsar[i]\Structured_layout_component_sub_assembly_relationship.related_view; END_REPEAT; RETURN(sspc);
END_FUNCTION;
(*
Argument definitions:
input: a set of Structured_layout_component_sub_assembly_relationship.
EXPRESS specification:
*)
FUNCTION limdwpcd_get_ppdl (input : SET[0:?] OF Plated_passage) : SET[0:?] OF Plated_passage_dependent_land;
LOCAL sspc : SET OF Plated_passage_dependent_land := []; --this gives us access to the information base END_LOCAL; REPEAT i := 1 to SIZEOF(input) by 1; sspc := sspc + bag_to_set(USEDIN(input[i],'LAND_ARM.PLATED_PASSAGE_DEPENDENT_LAND.REFERENCE_PLATED_PASSAGE')); END_REPEAT; RETURN(sspc);
END_FUNCTION;
(*
Argument definitions:
input: a set of Plated_passage_dependent_land.
The limdwpcd_get_prs function returns a set of Stratum where each member of that set is in the vertical extent of the input.
EXPRESS specification:
*)
FUNCTION limdwpcd_get_prs (input1 : SET[0:?] OF Plated_passage; input2 : SET[0:?] OF Product_view_definition) : SET[0:?] OF Stratum;
LOCAL s : SET OF Stratum := []; --this gives us access to the information base stol : SET OF Stratum_technology_occurrence_link := []; --this gives us access to the information base ptatsm : SET OF Passage_technology_allocation_to_stack_model := []; --this gives us access to the information base END_LOCAL; REPEAT i := 1 to SIZEOF(input1) by 1; ptatsm := ptatsm + input1[i]\Inter_stratum_feature.vertical_extent; END_REPEAT; REPEAT i := 1 to SIZEOF(ptatsm) by 1; stol := stol + ptatsm[i]\Stratum_sub_stack.stratum_technology_sequence; END_REPEAT; s := limdwpcd_get_stolrs(stol, input2); RETURN(s);
END_FUNCTION;
(*
Argument definitions:
input1: a set of Plated_passage.
input2: a set of Product_view_definition.
EXPRESS specification:
*)
FUNCTION limdwpcd_get_s (input : SET[0:?] OF Single_stratum_printed_component) : SET[0:?] OF Stratum;
LOCAL s : SET[0:?] OF Stratum := []; --this gives us access to the information base END_LOCAL; REPEAT i := 1 to SIZEOF(input) by 1; s := s + input[i]\Single_stratum_printed_component.stratum_feature_implementation[1]\Stratum_feature.resident_stratum; END_REPEAT; RETURN(s);
END_FUNCTION;
(*
Argument definitions:
input: the specified set of Single_stratum_printed_component.
EXPRESS specification:
*)
FUNCTION limdwpcd_get_sspc (input : SET[0:?] OF Structured_layout_component_sub_assembly_relationship) : SET[0:?] OF Single_stratum_printed_component;
LOCAL sspc : SET[0:?] OF Single_stratum_printed_component := []; --this gives us access to the information base END_LOCAL; REPEAT i := 1 to SIZEOF(input) by 1; sspc := sspc + input[i]\Structured_layout_component_sub_assembly_relationship.related_view; END_REPEAT; RETURN(sspc);
END_FUNCTION;
(*
Argument definitions:
input: a set of Structured_layout_component_sub_assembly_relationship that are prequalified to relate only to Single_stratum_printed_component as a related_view.
The limdwpcd_get_stolrs function returns a set of Stratum where each member of that set is referenced by a member of Stratum_technology_occurrence that is also referenced by a member of the input1, and is helping to compose a member of input2.
EXPRESS specification:
*)
FUNCTION limdwpcd_get_stolrs (input1 : SET[0:?] OF Stratum_technology_occurrence_link; input2 : SET[0:?] OF Product_view_definition) : SET[0:?] OF Stratum;
LOCAL s0 : SET OF Stratum := []; --this gives us access to the information base for stratum that reference sto sto : SET OF Stratum_technology_occurrence := []; --this gives us access to the information base imsar : SET OF Interconnect_module_stratum_assembly_relationship := []; s1 : SET OF Stratum := []; --this gives us access to the information base for stratum that are referenced by the assembly relationship to the input2 s2 : SET OF Stratum := []; --this gives us access to the information base for stratum that are related to both input1 and input2 i : INTEGER := 0; -- variable representing the member of input2 that is the context for the function END_LOCAL; (* initial implementation only supports examining the first Product_view_definition as the stratum stack is not expected to change over the design cycle. *) (* depends on the unique constraint on stratum.definition in an assembly context *) REPEAT i := 1 to 1 by 1; REPEAT j := 1 to SIZEOF(input1) by 1; sto := sto + input1[j]\Stratum_technology_occurrence_relationship.sto_1 + input1[j]\Stratum_technology_occurrence_relationship.sto_2; END_REPEAT; REPEAT j := 1 to SIZEOF(sto) by 1; s0 := s0 + bag_to_set(USEDIN(sto[j], 'LAYERED_INTERCONNECT_MODULE_DESIGN_ARM.STRATUM.DEFINITION')); END_REPEAT; imsar := imsar + bag_to_set(USEDIN(input2[i], 'LAYERED_INTERCONNECT_MODULE_DESIGN_ARM.INTERCONNECT_MODULE_STRATUM_ASSEMBLY_RELATIONSHIP.ASSEMBLY')); REPEAT j := 1 to SIZEOF(imsar) by 1; s1 := s1 + imsar[j]\Interconnect_module_stratum_assembly_relationship.component; END_REPEAT; s2 := s0 * s1; -- The intersection of the Stratum that reference the sto and the stratum that are part of the layered interconnect module. END_REPEAT; RETURN(s2);
END_FUNCTION;
(*
Argument definitions:
input1: a set of Stratum_technology_occurrence_link.
input2: a set of Product_view_definition.
The function returns a set of Stratum where each Stratum is the associated stratum for a member of the input.
NOTE If more than one member of input reference the same Stratum, only one member of Stratum will be returned.
EXPRESS specification:
*)
FUNCTION limdwpcd_get_tbrs (input : SET[0:?] OF Stratum_feature_template_component) : SET[0:?] OF Stratum;
LOCAL s : SET OF Stratum := []; --this gives us access to the information base END_LOCAL; REPEAT i := 1 to SIZEOF(input) by 1; s := s + input[i]\Stratum_feature_template_component.resident_stratum; END_REPEAT; RETURN(s);
END_FUNCTION;
(*
Argument definitions:
input: a set of Stratum_feature_template_component.
*)
END_SCHEMA; -- Layered_interconnect_module_with_printed_component_design_arm
(*
© ISO 2018 — All rights reserved