Processing_Resource (
   Type                   => Regular_Processor,
   Name                   => fpga,
   Max_Interrupt_Priority => 32767,
   Min_Interrupt_Priority => 1,
   Worst_ISR_Switch       => 0.00,
   Avg_ISR_Switch         => 0.00,
   Best_ISR_Switch        => 0.00,
   Speed_Factor           => 1.00);

Processing_Resource (
   Type                   => Regular_Processor,
   Name                   => gpp1,
   Max_Interrupt_Priority => 32767,
   Min_Interrupt_Priority => 1,
   Worst_ISR_Switch       => 0.00,
   Avg_ISR_Switch         => 0.00,
   Best_ISR_Switch        => 0.00,
   Speed_Factor           => 1.00);

Processing_Resource (
   Type                   => Regular_Processor,
   Name                   => gpu,
   Max_Interrupt_Priority => 32767,
   Min_Interrupt_Priority => 1,
   Worst_ISR_Switch       => 0.00,
   Avg_ISR_Switch         => 0.00,
   Best_ISR_Switch        => 0.00,
   Speed_Factor           => 1.00);

Processing_Resource (
   Type                   => Regular_Processor,
   Name                   => gpp2,
   Max_Interrupt_Priority => 32767,
   Min_Interrupt_Priority => 1,
   Worst_ISR_Switch       => 0.00,
   Avg_ISR_Switch         => 0.00,
   Best_ISR_Switch        => 0.00,
   Speed_Factor           => 1.00);

Scheduler (
   Type            => Primary_Scheduler,
   Name            => s_fpga,
   Host            => fpga,
   Policy          => 
      ( Type                 => Fixed_Priority,
        Worst_Context_Switch => 0.00,
        Avg_Context_Switch   => 0.00,
        Best_Context_Switch  => 0.00,
        Max_Priority         => 32,
        Min_Priority         => 1));

Scheduler (
   Type            => Primary_Scheduler,
   Name            => s_gpp1,
   Host            => gpp1,
   Policy          => 
      ( Type                 => Fixed_Priority,
        Worst_Context_Switch => 0.00,
        Avg_Context_Switch   => 0.00,
        Best_Context_Switch  => 0.00,
        Max_Priority         => 32,
        Min_Priority         => 1));

Scheduler (
   Type            => Primary_Scheduler,
   Name            => s_gpu,
   Host            => gpu,
   Policy          => 
      ( Type                 => Fixed_Priority,
        Worst_Context_Switch => 0.00,
        Avg_Context_Switch   => 0.00,
        Best_Context_Switch  => 0.00,
        Max_Priority         => 32,
        Min_Priority         => 1));

Scheduler (
   Type            => Primary_Scheduler,
   Name            => s_gpp2,
   Host            => gpp2,
   Policy          => 
      ( Type                 => Fixed_Priority,
        Worst_Context_Switch => 0.00,
        Avg_Context_Switch   => 0.00,
        Best_Context_Switch  => 0.00,
        Max_Priority         => 32,
        Min_Priority         => 1));

Scheduling_Server (
   Type                       => Regular,
   Name                       => t1,
   Server_Sched_Parameters    => 
      ( Type         => Fixed_Priority_Policy,
        The_Priority => 1,
        Preassigned  => NO),
   Scheduler                  => s_fpga);

Scheduling_Server (
   Type                       => Regular,
   Name                       => t2,
   Server_Sched_Parameters    => 
      ( Type         => Fixed_Priority_Policy,
        The_Priority => 1,
        Preassigned  => NO),
   Scheduler                  => s_gpp1);

Scheduling_Server (
   Type                       => Regular,
   Name                       => t3,
   Server_Sched_Parameters    => 
      ( Type                   => Polling_Policy,
        The_Priority           => 2,
        Preassigned            => NO,
        Polling_Period         => 10.000,
        Polling_Worst_Overhead => 1.00,
        Polling_Best_Overhead  => 1.00,
        Polling_Avg_Overhead   => 0.00),
   Scheduler                  => s_gpu);

Scheduling_Server (
   Type                       => Regular,
   Name                       => t4,
   Server_Sched_Parameters    => 
      ( Type                   => Polling_Policy,
        The_Priority           => 1,
        Preassigned            => NO,
        Polling_Period         => 40.000,
        Polling_Worst_Overhead => 0.00,
        Polling_Best_Overhead  => 0.00,
        Polling_Avg_Overhead   => 0.00),
   Scheduler                  => s_gpp2);

Scheduling_Server (
   Type                       => Regular,
   Name                       => t_extra,
   Server_Sched_Parameters    => 
      ( Type         => Fixed_Priority_Policy,
        The_Priority => 1,
        Preassigned  => NO),
   Scheduler                  => s_gpu);

Operation (
   Type                       => Simple,
   Name                       => o_t1,
   Worst_Case_Execution_Time  => 28.00,
   Avg_Case_Execution_Time    => 1.000E+100,
   Best_Case_Execution_Time   => 28.00);

Operation (
   Type                       => Simple,
   Name                       => o_t2,
   Worst_Case_Execution_Time  => 19.00,
   Avg_Case_Execution_Time    => 1.000E+100,
   Best_Case_Execution_Time   => 17.00);

Operation (
   Type                       => Simple,
   Name                       => o_t3,
   Worst_Case_Execution_Time  => 8.00,
   Avg_Case_Execution_Time    => 1.000E+100,
   Best_Case_Execution_Time   => 8.00);

Operation (
   Type                       => Simple,
   Name                       => o_t4,
   Worst_Case_Execution_Time  => 10.00,
   Avg_Case_Execution_Time    => 1.000E+100,
   Best_Case_Execution_Time   => 10.00);

Operation (
   Type                       => Simple,
   Name                       => o_t_extra,
   Worst_Case_Execution_Time  => 9.00,
   Avg_Case_Execution_Time    => 9.00,
   Best_Case_Execution_Time   => 0.00);

Transaction (
   Type            => regular,
   Name            => t1,
   External_Events => 
      ( ( Type       => Periodic,
          Name       => e1,
          Period     => 40.000,
          Max_Jitter => 0.000,
          Phase      => 0.000)),
   Internal_Events => 
      ( ( Type => Regular,
          Name => i1),
        ( Type => Regular,
          Name => i2),
        ( Type => Regular,
          Name => i3),
        ( Type => Regular,
          Name => o1,
          Timing_Requirements => 
            ( Type             => Hard_Global_Deadline,
              Deadline         => 160.000,
              Referenced_Event => e1))),
   Event_Handlers  => 
      ( (Type               => Activity,
         Input_Event        => e1,
         Output_Event       => i1,
         Activity_Operation => o_t1,
         Activity_Server    => t1),
        (Type               => Activity,
         Input_Event        => i1,
         Output_Event       => i2,
         Activity_Operation => o_t2,
         Activity_Server    => t2),
        (Type               => Activity,
         Input_Event        => i2,
         Output_Event       => i3,
         Activity_Operation => o_t3,
         Activity_Server    => t3),
        (Type               => Activity,
         Input_Event        => i3,
         Output_Event       => o1,
         Activity_Operation => o_t4,
         Activity_Server    => t4)));

Transaction (
   Type            => regular,
   Name            => extra,
   External_Events => 
      ( ( Type       => Periodic,
          Name       => ee1,
          Period     => 20.000,
          Max_Jitter => 0.000,
          Phase      => 0.000)),
   Internal_Events => 
      ( ( Type => Regular,
          Name => ee2,
          Timing_Requirements => 
            ( Type             => Hard_Global_Deadline,
              Deadline         => 20.000,
              Referenced_Event => ee1))),
   Event_Handlers  => 
      ( (Type               => Activity,
         Input_Event        => ee1,
         Output_Event       => ee2,
         Activity_Operation => o_t_extra,
         Activity_Server    => t_extra)));

