Revision history   OpenPOWER Library

 10.1.13. PSL Context Swap Time Slice Register(PSL_CtxTime_An) 

 The PSL Context Swap Time Slice Register(PSL_CtxTime_An) allows system software to govern the amount of time an AFU processes one process element. After the amount of time has expired, the PSL will request for the operation to be preempted and the context saved.

 This register is initialized by the hypervisor or from the process element. The process element information is used when the PSL Scheduled Processes Area is enabled (PSL_SPAP_An[V] = '1').

 When the AFU is operating in a virtualized programming model, the data returned when reading this register is indeterminate. CAIA-compliant devices should return the corresponding process element data when an interrupt is pending for diagnostic purposes.

 This facility is optional for CAIA-compliant devices that do not support virtualization. System software can detect if this feature is supported by writing x'0000000000FF00FF' to this register and reading back the contents. If a value of zero is returned, this feature is not supported. Any nonzero value indicates that the feature is supported.

 There is one register for each PSL slice. Access to these registers should be privileged. These registers must be accessed using a single 64-bit store operation.

 Note: This register is provided as a place holder for storing the contents of the PSL Context Swap Time Slice Register in the Process Element. Because this register is only required for virtualized programming models and read data is intermediate, implementations can choose to not implement a read/write MMIO register for this value.

Access Type

Read/Write

 Base Address Offset

 (P1_Base | P1(n)) + x'A8'; where n is an AFU number.

Reserved

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

Reserved

Idle_Time

Reserved

Context_Time

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

Bits

Field Name

Description

 0:39

 Reserved

 Reserved.

 40:47

 Idle_Time

 Idle time.

 The Idle Time defines the amount of time an AFU is allowed to reach a precise state, save the context, and indicate AFU_idle before the PSL starts to increase the number of times the process element will be skipped and placed back into the PSL queue.

 Mapping of the value to an absolute time is implementation dependent.

 Setting this field to a value of x'00' disables the timer.

 48:55

 Reserved

 Reserved.

 56:63

 Context_Time

 Context swap time.

 The context time defines the amount of time a process element is allowed to run before the PSL sends a preempt request.

 Mapping of the value to an absolute time is implementation dependent.

 Setting this field to a value of x'00' disables the timer.


loading table of contents...