SCHEMA Scheduling_Analysis; USE FROM Basic_Types; USE FROM Framework_Config; USE FROM Time_Unit_Events; USE FROM Buffers; TYPE Scheduling_Sequence = Time_Unit_Table; END_TYPE; TYPE Blocking_Time_Range = Range; END_TYPE; TYPE Blocking_Time_Table = LIST OF Density_Item; END_TYPE; TYPE Response_Time_Table = LIST OF Association; END_TYPE; TYPE Response_Time_Range = Range; END_TYPE; TYPE Buffer_Size_Range = Range; END_TYPE; TYPE Buffer_Size_Table = LIST OF Buffer_Size_Item; END_TYPE; TYPE Buffer_Result_Range = Range; END_TYPE; (* TYPE Buffer_Result_Table = LIST [ 0 : Max_Buffers] OF Association; END_TYPE; *) TYPE Buffer_Result_Table = LIST [ 0 : 100 ] OF Association; END_TYPE; TYPE Waiting_Time_Range = Range; END_TYPE; TYPE Waiting_Time_Table = LIST OF REAL; END_TYPE; TYPE Density_Range = Range; END_TYPE; TYPE Density_Table = LIST OF Density_Item; END_TYPE; TYPE Densities_Range = Range; END_TYPE; TYPE Densities_Table = LIST OF Density_Item; END_TYPE; TYPE Deadlock_Iterator = Iterator; END_TYPE; TYPE Deadlock_List = LIST OF Deadlock_Item; END_TYPE; TYPE Priority_Inversion_Iterator = Iterator; END_TYPE; TYPE Priority_Inversion_List = LIST OF Priority_Inversion_Item; END_TYPE; ENTITY Generic_Index_Lst_Package; END_ENTITY; ENTITY Double_Tasks_Parameters_Package; indexed_table : Blocking_Time_Table; indexed_table_range : Blocking_Time_Range; indexed_table_ : Response_Time_Table; indexed_table_range_ : Response_Time_Range; END_ENTITY; ENTITY Buffer_Size_Item; time : Natural; size : Natural; END_ENTITY; ENTITY Buffer_Size_Package; table_range : Buffer_Size_Range; table : Buffer_Size_Table; END_ENTITY; ENTITY Buffer_Result_Package; indexed_table_range : Buffer_Result_Range; indexed_table : Buffer_Result_Table; END_ENTITY; ENTITY Waiting_Time_Package; table_range : Waiting_Time_Range; table : Waiting_Time_Table; END_ENTITY; ENTITY Density_Item; response_time : Natural; probability : REAL; END_ENTITY; ENTITY Density_Package; table_range : Density_Range; table : Density_Table; END_ENTITY; ENTITY Densities_Table_Package; indexed_table_range : Densities_Range; indexed_table : Densities_Table; END_ENTITY; ENTITY Deadlock_Item; time : Natural; task_name : STRING; resource_name : STRING; END_ENTITY; ENTITY Deadlock_Package; iterator : Deadlock_Iterator; list_ : Deadlock_List; END_ENTITY; ENTITY Priority_Inversion_Item; start_time : Natural; end_time : Natural; task_name : STRING; resource_name : STRING; END_ENTITY; ENTITY Priority_Inversion_List_Package; iterator : Priority_Inversion_Iterator; list_ : Priority_Inversion_List; END_ENTITY; (*-----------------------------*) ENTITY Task_Release_Record; task_name : STRING; task_index : Natural; capacity : Natural; release_time : Natural; finish_time : Natural; deadline : Natural; completed : BOOLEAN; END_ENTITY; TYPE Task_Release_Records_Range = Range; END_TYPE; TYPE Task_Release_Records_Table = LIST OF Task_Release_Record; END_TYPE; ENTITY Task_Release_Records_Table_Package; table_range : Task_Release_Records_Range; table : Task_Release_Records_Table; END_ENTITY; ENTITY Relative_Priority_Record; higher_priority_task : STRING; hpt_index : Natural; lower_priority_task : STRING; lpt_index : Natural; END_ENTITY; TYPE Relative_Priority_Records_Range = Range; END_TYPE; TYPE Relative_Priority_Records_Table = LIST OF Relative_Priority_Record; END_TYPE; ENTITY Relative_Priority_Records_Table_Package; table_range : Relative_Priority_Records_Range; table : Relative_Priority_Records_Table; END_ENTITY; (*-----------------------------*) ENTITY Ceiling_Priority_Record; resource_name : STRING; ceiling_priority : Priority_Range; END_ENTITY; TYPE Ceiling_Priority_Range = Range; END_TYPE; TYPE Ceiling_Priority_Table = LIST OF Ceiling_Priority_Record; END_TYPE; ENTITY Ceiling_Priority_Table_Package; table_range : Ceiling_Priority_Range; table : Ceiling_Priority_Table; END_ENTITY; END_SCHEMA; SCHEMA Call_Framework_Interface; USE FROM Framework_Config; USE FROM basic_types; USE FROM Parameters; TYPE Framework_Statement_Type = ENUMERATION OF ( Scheduling_Simulation_Basics, Scheduling_Simulation_Time_Line, Scheduling_Simulation_Preemption_Number, Scheduling_Simulation_Context_Switch_Number, Scheduling_Simulation_Response_Time, Scheduling_Simulation_All_Response_Times, Scheduling_Simulation_Blocking_Time, Scheduling_Simulation_Priority_Inversion, Scheduling_Simulation_Deadlock, Scheduling_Simulation_Run_Event_Handler, Scheduling_Feasibility_Basics, Scheduling_Feasibility_Periodic_Task_Worst_Case_Response_Time, Scheduling_Feasibility_Transaction_Worst_Case_Response_Time_Audsley, Scheduling_Feasibility_Transaction_Worst_Case_Response_Time_Tindell, Scheduling_Feasibility_Transaction_Worst_Case_Response_Time_Palencia, Scheduling_Feasibility_Transaction_Worst_Case_Response_Time_WCDOPS_Plus, Scheduling_Feasibility_Transaction_Worst_Case_Response_Time_WCDOPS_Plus_NIM, Scheduling_Feasibility_Cpu_Utilization, Scheduling_Feasibility_Compute_Worst_Case_Blocking_Time, Scheduling_Feasibility_Compute_And_Set_Worst_Case_Blocking_Time, Scheduling_Feasibility_Compute_Resource_Ceiling_Priority, Scheduling_Feasibility_Compute_And_Set_Resource_Ceiling_Priority, Scheduling_Feasibility_Tests_Compositional, Scheduling_Feasibility_Demand_Bound_Function, Scheduling_Feasibility_Interval, Scheduling_Feasibility_First_Fit, Scheduling_Feasibility_General_Task, Scheduling_Feasibility_Next_Fit, Scheduling_Feasibility_Best_Fit, Scheduling_Feasibility_Small_Task, Scheduling_Set_Priorities_According_To_Deadline_Monotonic, Scheduling_Set_Priorities_According_To_Rate_Monotonic, Scheduling_Set_Priorities_According_To_Audsley_OPA, Scheduling_Set_Priorities_According_To_OPA_CRPD_PT, Scheduling_Set_Priorities_According_To_OPA_CRPD_PT_Simplified, Scheduling_Set_Priorities_According_To_OPA_CRPD_Tree, Select_Feasibility_Tests_Simple, Select_Feasibility_Test_By_Name, Scheduling_Compute_Scheduling_Anomalies, Memory_Set_Footprint_Analysis, Memory_Compute_Footprint_Analysis, Memory_Analysis_Interferences_Delays, Buffer_Feasibility_Tests, Buffer_Scheduling_Simulation, Random_Response_Time_Density, Dependency_Compute_End_To_End_Response_Time_One_Step, Dependency_Set_End_To_End_Response_Time_One_Step, Dependency_Compute_End_To_End_Response_Time_All_Steps, Dependency_Set_End_To_End_Response_Time_All_Steps, Dependency_Compute_Chetto_Blazewicz_Priority, Dependency_Compute_Chetto_Blazewicz_Deadline, Dependency_Set_Chetto_Blazewicz_Priority, Dependency_Set_Chetto_Blazewicz_Deadline, Cache_Analysis_Compute_Cache_Access_Profile, Cache_Analysis_Import_CFG, Cache_Analysis_Import_CFG_And_Compute_Cache_Access_Profile, Network_NoC_Compute_Communication_Delay, Network_NoC_Compute_Path_Delay, Network_NoC_Compute_Direct_Interference_Delay, Network_NoC_Compute_Indirect_Interference_Delay, Network_Compute_NoC_Transformation_ECTM_SAF, Network_Set_NoC_Transformation_ECTM_SAF, Network_Compute_NoC_Transformation_ECTM_Wormhole, Network_Set_NoC_Transformation_ECTM_Wormhole, Network_Compute_NoC_Transformation_WCCTM_SAF, Network_Set_NoC_Transformation_WCCTM_SAF, Network_Compute_NoC_Transformation_WCCTM_Wormhole, Network_Set_NoC_Transformation_WCCTM_Wormhole, Network_Compute_Spacewire_Transformation_SCM, Network_Set_Spacewire_Transformation_SCM, MILS_Compute_security_chinese_wall, MILS_Compute_security_Warshall, MILS_Compute_security_bell_lapadula, MILS_Compute_security_biba ); END_TYPE; TYPE Framework_Request_Range = Range; END_TYPE; TYPE Framework_Request_Table = LIST [ 0 : Max_Requests] OF Framework_Request; END_TYPE; TYPE Framework_Response_Range = Range; END_TYPE; TYPE Framework_Response_Table = LIST [ 0 : Max_Requests] OF Framework_Response; END_TYPE; TYPE Partioning_Type = ENUMERATION OF ( General_Task, Best_Fit, First_Fit, Next_Fit, Small_Task ); END_TYPE; TYPE Output_Format = ENUMERATION OF ( Xml_Output, String_Output, Raw_Output ); END_TYPE; TYPE Transaction_Wcrt_Type = ENUMERATION OF ( Periodic, Tindell, Audsley, Palencia, Wcdops_plus, Wcdops_plus_nim); END_TYPE; TYPE CRPD_Computation_Approach_Type = ENUMERATION OF ( No_CRPD, ECB_Only, ECB_Union_Multiset, UCB_Union_Multiset, Combined_Multiset); END_TYPE; TYPE Memory_Interference_Computation_Approach_Type = ENUMERATION OF ( No_Memory_Interference, DRAM_Single_Arbiter, Kalray_Multi_Arbiter); END_TYPE; TYPE Perform_Order = ENUMERATION OF ( Total_Order, Causal_Order ); END_TYPE; ENTITY Framework_Request; statement : Framework_Statement_Type; param : Framework_Parameters_Table; target : STRING; END_ENTITY; ENTITY Framework_Request_Package; table_range : Framework_Request_Range; table : Framework_Request_Table; END_ENTITY; ENTITY Framework_Response; title : STRING; text : STRING; END_ENTITY; ENTITY Framework_Response_Package; table_range : Framework_Response_Range; table : Framework_Response_Table; END_ENTITY; END_SCHEMA; SCHEMA Multiprocessor_Services_Interface; USE FROM scheduling_analysis; USE FROM Basic_Types; USE FROM Processors; USE FROM Tasks; USE FROM Framework_Config; TYPE Scheduling_Table = LIST OF Association; END_TYPE; TYPE Scheduling_Table_Range = Range; END_TYPE; ENTITY Scheduling_Result; scheduling_msg : STRING; has_error : BOOLEAN; error_msg : STRING; result : Scheduling_Sequence; END_ENTITY; ENTITY Scheduling_Result_Per_Processor_Package; indexed_table : Scheduling_Table; indexed_table_range : Scheduling_Table_Range; END_ENTITY; TYPE Naturals_Table = LIST OF Natural; END_TYPE; TYPE Naturals_Table_Range = Range; END_TYPE; ENTITY Naturals_Table_Package; table_range : Naturals_Table_Range; table : Naturals_Table; END_ENTITY; TYPE Periodic_Tasks_Table = LIST OF Periodic_Task; END_TYPE; TYPE Periodic_Tasks_Table_Range = Range; END_TYPE; ENTITY Periodic_Tasks_Table_Package; table_range : Periodic_Tasks_Table_Range; table : Periodic_Tasks_Table; END_ENTITY; ENTITY Run_Server SUBTYPE OF ( Periodic_Task ); rate : REAL; core : STRING; executing : BOOLEAN; deadlines : naturals_table; periods : naturals_table; job : naturals_table_range; job_capacity : Natural; job_duration : Natural; job_release : Natural; job_deadline : Natural; END_ENTITY; TYPE Run_Servers_Table = LIST OF Run_Server; END_TYPE; TYPE Run_Servers_Table_Range = Range; END_TYPE; ENTITY Run_Servers_Table_Package; table_range : Run_Servers_Table_Range; table : Run_Servers_Table; END_ENTITY; ENTITY Run_Server_Primal SUBTYPE OF ( Run_Server ); packed_servers : Run_Servers_Table; END_ENTITY; ENTITY Run_Server_Dual SUBTYPE OF ( Run_Server ); primal_server : Run_Server_Primal; END_ENTITY; END_SCHEMA; SCHEMA AADL_Parser_Interface; USE FROM Basic_Types; USE FROM Framework_Config; TYPE Processor_Binding_Table = LIST OF Binding_Record_Type; END_TYPE; TYPE Processor_Binding_Range = Range; END_TYPE; ENTITY Binding_Record_Type; cpu_name : STRING; address_space_name : STRING; END_ENTITY; ENTITY Processor_Binding_Package; table : Processor_Binding_Table; table_range : Processor_Binding_Range; END_ENTITY; END_SCHEMA; SCHEMA Xml_Architecture_Parser_Interface; TYPE XML_Units = ENUMERATION OF ( batteries_xml, core_units_xml, address_spaces_xml, processors_xml, memories_xml, buffers_xml, resources_xml, dependencies_xml, networks_xml, messages_xml, tasks_xml, task_groups_xml, deployments_xml, resource_entities_xml, consumer_entities_xml, event_analyzers_xml, caches_xml, cache_blocks_xml, cfgs_xml, cfg_nodes_xml, cfg_edges_xml, basic_blocks_xml, cache_access_profile_xml, ucbs_xml, ecbs_xml, scheduling_errors_xml ); END_TYPE; END_SCHEMA;