data-dictionary

FPSADMIN.RTG_TOOL_ASGN_ROUTE_STEP

Data Dictionary

>

FPSADMIN Tables

> FPSADMIN.RTG_TOOL_ASGN_ROUTE_STEP

Table FPSADMIN.RTG_TOOL_ASGN_ROUTE_STEP"

Override RTG_TOOL_ASSIGNMENTS for a specific lot/route/step. If step_order is populated this table will populate WIP_SMP_FUTURE with TAKE for included steps and SKIP for those not included.

  • Schema: FPSADMIN

  • Tablespace: FPSDATA

  • Primary key: FACILITY, ROUTE, STEP, TOOL


Column

Type

Nullable

Comment

FACILITY

VARCHAR2(6)

N

Facility is included in almost every join in the DWH so this represents a definitive split. A route must have all steps on tools in the same facility. A tool must process all lots in the same facility. If your site has multiple buildings where lots run on routes using tools in multiple buildings then everything should be one facility. For example, multiple Fab buildings. But if your site has independent facilities like Fab and Test and Assembly where lot may progress from one to the next but on different routes then these should be different facilities. Since this column is in virtually every table it is critical that the value here is exactly matches what is in the MES if the MES has facility. Use facility_display for the display friendly name displayed in applications. See site_name comment for client/site/facility example. (* from FPSINPUT.GEN_FACILITIES)

ROUTE

VARCHAR2(256)

N

Route that has threading requirements (* from FPSINPUT.RTG_STEP_THREADING)

STEP

VARCHAR2(256)

N

A single processing step within a route representing a single tool visit. Step is often a very complex string and should rarely be displayed. Instead we should use process_display. (* from FPSINPUT.RTG_ROUTE_STEPS)

TOOL

VARCHAR2(16)

N

Tool is generally just the main tool. The exception is when different entities on the tool run completely independently and it is physically impossible to run wafers of the same lot across multiple entities. In this exception case, we may want to assign the entities to different eqp_types and therefore we should define each entity as a tool. Please note that when we do this there is no indication whatsoever that these different entities are on the same tool. (* from FPSINPUT.EQP_TOOLS)

ASGN_PARM1

VARCHAR2(128)

Four user-defined fields which can store anything the user would like to track relating to the assignment. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

ASGN_PARM2

VARCHAR2(128)

See ASGN_PARM1. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

ASGN_PARM3

VARCHAR2(128)

See ASGN_PARM1. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

ASGN_PARM4

VARCHAR2(128)

See ASGN_PARM1. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

BALANCED_BATCH_QTY

NUMBER(7)

When configured for balanced batching, this represents the maximum delta in unit quantity for lots to be considered balanced. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

BALANCED_BATCH_TYPE

VARCHAR2(8)

This parameter tells the scheduler whether and how the batch balance logic should be applied. Null means the logic is turned off. MATCH means that all lots in the balance group/pair must have unit quantities within this range. PREFER means that the scheduler should try to meet the criteria for MATCH, but if it cannot be met to add the next best lots to make a fuller batch. The maximum batch size for the process context must also be 4 lots/carriers if this value is not null. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

BATCH_CRITERIA

VARCHAR2(140)

Lots that can run on the same batch TOOL and have the same value of BATCH_CRITERIA can run together in a batch. Therefore this is a critical column for scheduling on batch tools. If BATCH_CRITERIA is not populated, Scheduler defaults to the assumption that any WIP with the same EST_MACHINE_RECIPE can be batched together. Keep in mind that many MESs have additional constraints on batching (for example, that all WIP in a batch has the same SCRIPT_ID) and these must be incorporated into BATCH_CRITERIA to ensure that the batches are allowed by the MES. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

CH_ALLOWED

VARCHAR2(24)

List of chambers allowed using the single character CH from EQP_CHAMBERS. While the concepts of cap_entity (capacity entity) and ch_type are important to our logic we agreed that there is no RMS or EI or MES on the planet that understands these concepts. All of these systems go by tool and chambers allowed and therefore our input tables must do the same. We list all chambers that can run and then calculate subsets of these chambers based on CH_TYPE. If all chambers are the same type then we assume you can run on any one or more of the chambers allowed. If the chambers are different types then we assume that at least one chamber of each type is required to run. If you populate either RTG_TOOL_ASGN_LOT_xxx_PATH table then you can leave ch_allowed blank since it will not be used. However there is nothing wrong with populating ch_allowed as a backup plan. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

CH_ASGN_RULES

VARCHAR2(128)

String with complicated syntax indicating which chambers can be used by the Scheduler. For example, (A|B|C) means the lot can only run on chamber A or B or C but not all of chambers. For example, if it runs on A then no wafer from the same lot can run on B nor C. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

EST_MACHINE_RECIPE

VARCHAR2(100)

N

Estimated machine recipe what we estimate will be the machine recipe based on information from the Recipe Management System. It is used in combination with process for throughput calculations and setup change penalty calculations. It is not necessary to estimate for all processes since this is always used in combination however it needs to be NA rather than blank since it is part of the primary key of most THP tables. Hopefully when this is not NA it should match the actual machine recipe logged for each lot during processing. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

EXPT_ID

VARCHAR2(12)

Experiment identifier which indicates the lot will process differently that normal for its product on at least one step of the route. (* from FPSINPUT.WIP_LOTS_STATIC)

EXPT_VARIATION

VARCHAR2(12)

Assigned to sibling lots to indicate which variation of the experiment will be performed on the lot. For example, variation 0 might get the normal recipe while variation 1 might get a different recipe then we can compare the different wafers in each split at a following measurement or test step.

EXTL_ID

VARCHAR2(64)

The identifier for the external model. For details on all EXTL columns please see Help Site page at https://help.finalphasesystems.com/display/SCHED/Scheduler+and+External+Model+Status. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

EXTL_MODEL_EXPIRE_INST

DATE

Datetime when the model state will expire. This value is critical for prioritizing lots in Scheduler using the Expiring status. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

EXTL_RANK

VARCHAR2(1)

Allowed values are P, F, W. For details on all EXTL columns please see Help Site page at https://help.finalphasesystems.com/display/SCHED/Scheduler+and+External+Model+Status. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

EXTL_RANK_COMMENT

VARCHAR2(256)

Optional comment entered by user or system who last updated external information. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

EXTL_RANK_UPDATED_INST

DATE

Datetime populated by trigger when external rank was last updated. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

EXTL_RANK_USER

VARCHAR2(64)

User or system who last updated external information. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

EXTL_STATUS_DISPLAY

VARCHAR2(64)

Normally just a display field for the External Model status but if the value matches one of the allowed Model States then it is considered to be the Model State. For the list of Model States and full detailed on all EXTL columns please see Help Site page at https://help.finalphasesystems.com/display/SCHED/Scheduler+and+External+Model+Status. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

IS_EXCLUSIVE_CHAMBER

CHAR(1)

This indicates that the tool may not run other jobs on other standby chambers while this job is running. For example, a process uses only chamber B on a three chamber tool. Normally that means you can run another job that uses A and/or C. However when this job is running you cannot run anything on chamber A nor C. If A and/or C are down you can still run the process on B. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

IS_EXTL_RANK_RENEWABLE

CHAR(1)

This flag indicates that if we run a lot applying to this record on the tool that we can renew the expiration of this rank. For example, a thread that expires after 48 hours of not being used. In this case, we would want to encourage scheduling a lot to renew the rank even if it is slightly lower priority than other lots. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

IS_NONSTD

CHAR(1)

Our column to indicate non-standard processing at the step. For example, an experiment or a chain that is only active at a particular step or set of steps and then goes back to being normal for the route. If an experiment is severe enough that it affects the final product and has to be planned separately then it will be its own prd or planprd. (* from FPSBASE.WIP_LOT_HIST)

LOGICAL_RECIPE

VARCHAR2(100)

Used for infomational purpose and is populated if known otherwise it will match the recipe. (* from FPSINPUT.WIP_EVENT_HIST)

OVR_LABOR_ROLE

VARCHAR2(36)

Override labor role for this recipe (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_LABOR_SEC_PER_BATCH

NUMBER(8,3)

Override labor batch time for this recipe (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_LABOR_SEC_PER_CARR

NUMBER(8,3)

Override labor carrier time for this recipe (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_LABOR_SEC_PER_UNIT

NUMBER(8,3)

Override wafer time for this recipe (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_MAX_BATCH_SIZE_CARRIERS

NUMBER(2)

Override the default maximum batch size carriers from EQP_TYPES for this specific criteria (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_MAX_BATCH_SIZE_LOTS

NUMBER(2)

Override The maximum number of lots allowed in one batch. This can be fewer than both the max_batch_size_carriers and max_batch_size_units because a single carrier may have multiple lots and the client may have business rules that limit the number of lots regardless of the total available space (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_MAX_BATCH_SIZE_UNITS

NUMBER(7)

Override the default maximum batch size units from EQP_TYPES for this specific criteria (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_MAX_MERGE_NUM_LOTS

NUMBER(2)

The maximum number of additional lots allowed to merge with current lot in a single carrier (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_MIN_BATCH_SIZE_CARRIERS

NUMBER(2)

The minimum number of carriers required in one batch (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_MIN_BATCH_SIZE_LOTS

NUMBER(2)

The minimum number of lots required in one batch. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_MIN_BATCH_SIZE_UNITS

NUMBER(7)

The minimum number of qty required in one batch (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_MIN_BATCH_WAIT_MINS

NUMBER(5)

Minimum amount of time that a group of lots MUST wait before scheduling a group of lots below the minimum batch size (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_RQD_SETUP

VARCHAR2(100)

For eqp types where the setup is not the recipe or process, populate the setup with this value. Possible use cases are where multiple recipes or processes share the same setup or where we want to represent the setup with a shorter name than the long name of the recipe. This column has the ovr prefix because we have the ability to configure the eqp_type to use either the process or the recipe as the setup in EQP_TYPES. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

OVR_SCHED_WEIGHTS_BY_TOOL

NUMBER(4,1)

This is how much weight to give the tool assignment rank. When populated, this will override the weights for tool assignment. If null, then Scheduler will take the value from the configuration table SCH_C_GROUP_PERM_RANKS. Note that ovr_sched_weight is also in the PATHS table so you can override either by tool or by chamber path. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

PERM_RANK

VARCHAR2(1)

N

Permanent rank is typically loaded by ETL from a combination of the MES, recipe management system, and existing preference logic already used at the site. Possible values are in FPSADMIN.RTG_PERM_RANKS. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

PERM_RANK_COMMENT

VARCHAR2(256)

Optional comment entered by user or system who last updated permanent rank (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

PERM_RANK_UPDATED_INST

DATE

N

Datetime populated by trigger when permanent rank was last updated (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

PERM_RANK_USER

VARCHAR2(64)

N

User or system who last updated permanent rank (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

PROCESS

VARCHAR2(50)

N

Process defines what occurs at a step. Different steps can share the same process if they are identical. Process should normally determine allowed tools and recipe although it can be overridden by step, route, prd, lot, and experiment for exceptions. Each process is dynamically assigned to one or more eqp_type-process_family combinations with use_pct. One process_family is determined to be primary. If grouping is done correctly, a process should only be one eqp_group with no crossover. (* from FPSINPUT.RTG_PROCESSES)

REQUIRE_ALL_CHAMBERS

CHAR(1)

This indicates that all chambers specified in CH_ALLOWED must be used. Normally we only require one chamber of each chamber type and can run with fewer chambers and a degraded throughput but not when this flag is set. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

RQD_PORT_GROUP

VARCHAR2(12)

Optional value if tool has different groups of ports, for example 150mm and 200mm. This indicates what is required for each lot and PORT_GROUP in EQP_PORTS indicates what ports can run this group. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

RQD_QUAL_EVENT_ID

VARCHAR2(32)

Used when a recipe requires a certain qual in order to be allowed to run. Often multiple recipes will require the same qual. One example is in Litho where several recipes all require a certain track monitor to pass in order to be allowed to run. When the qual has not passed (either failed or expired) then the curr_rank will automatically be set to Q which indicates the recipe is permanently allowed but not currently qualified. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

SCH_CUSTOM_SETUP_MSG

VARCHAR2(64)

Allow users to define a custom message to display on top of a lot box. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

STEP_ORDER

NUMBER(4)

The order in which the steps will be visited. Note that this is not the sequence number on the route. It is only for sorting within this table. This information may be used to determine upcoming sampling decision or deviations from standard routing. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS_LOT)

TEMP_RANK

VARCHAR2(1)

Temporary rank should only be set manually by a human user, never loaded automatically by ETL. Possible values are in FPSADMIN.RTG_PERM_RANKS. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

TEMP_RANK_COMMENT

VARCHAR2(256)

Optional comment entered by user or system who last updated temporary rank (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

TEMP_RANK_EXPIRE_INST

DATE

Optional column allows user to specify when the temporary rank expires. After this time we will use the permanent rank. (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

TEMP_RANK_UPDATED_INST

DATE

Datetime populated by trigger when external rank was last updated (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)

TEMP_RANK_USER

VARCHAR2(64)

User or system who last updated temporary rank (* from FPSINPUT.RTG_TOOL_ASSIGNMENTS)