EGU — Event generator unit

The Event generator unit (EGU) provides support for inter-layer signaling. This means support for atomic triggering of both CPU execution and hardware tasks from both firmware (by CPU) and hardware (by PPI). This feature can, for instance, be used for triggering CPU execution at a lower priority execution from a higher priority execution, or to handle a peripheral's ISR execution at a lower priority for some of its events. However, triggering any priority from any priority is possible.

Listed here are the main EGU features:

  • Enables SW triggering of interrupts
  • 6 EGU instances – separate interrupt vectors
  • Up to 16 separate event flags per interrupt for multiplexing

The EGU implements a set of tasks which can individually be triggered to generate the corresponding event, i.e., the corresponding event for TASKS_TRIGGER[n] is EVENTS_TRIGGERED[n].

Table 1. EGU configuration
EGU instanceNumber of event flags
0-516

Registers

Table 2. Instances
Base addressPeripheralInstanceDescriptionConfiguration
0x40014000EGUEGU0

Event Generator Unit 0

  
0x40015000EGUEGU1

Event Generator Unit 1

  
0x40016000EGUEGU2

Event Generator Unit 2

  
0x40017000EGUEGU3

Event Generator Unit 3

  
0x40018000EGUEGU4

Event Generator Unit 4

  
0x40019000EGUEGU5

Event Generator Unit 5

  
Table 3. Register Overview
RegisterOffsetDescription
TASKS_TRIGGER[0]0x000

Trigger 0 for triggering the corresponding TRIGGERED[0] event

 
TASKS_TRIGGER[1]0x004

Trigger 1 for triggering the corresponding TRIGGERED[1] event

 
TASKS_TRIGGER[2]0x008

Trigger 2 for triggering the corresponding TRIGGERED[2] event

 
TASKS_TRIGGER[3]0x00C

Trigger 3 for triggering the corresponding TRIGGERED[3] event

 
TASKS_TRIGGER[4]0x010

Trigger 4 for triggering the corresponding TRIGGERED[4] event

 
TASKS_TRIGGER[5]0x014

Trigger 5 for triggering the corresponding TRIGGERED[5] event

 
TASKS_TRIGGER[6]0x018

Trigger 6 for triggering the corresponding TRIGGERED[6] event

 
TASKS_TRIGGER[7]0x01C

Trigger 7 for triggering the corresponding TRIGGERED[7] event

 
TASKS_TRIGGER[8]0x020

Trigger 8 for triggering the corresponding TRIGGERED[8] event

 
TASKS_TRIGGER[9]0x024

Trigger 9 for triggering the corresponding TRIGGERED[9] event

 
TASKS_TRIGGER[10]0x028

Trigger 10 for triggering the corresponding TRIGGERED[10] event

 
TASKS_TRIGGER[11]0x02C

Trigger 11 for triggering the corresponding TRIGGERED[11] event

 
TASKS_TRIGGER[12]0x030

Trigger 12 for triggering the corresponding TRIGGERED[12] event

 
TASKS_TRIGGER[13]0x034

Trigger 13 for triggering the corresponding TRIGGERED[13] event

 
TASKS_TRIGGER[14]0x038

Trigger 14 for triggering the corresponding TRIGGERED[14] event

 
TASKS_TRIGGER[15]0x03C

Trigger 15 for triggering the corresponding TRIGGERED[15] event

 
EVENTS_TRIGGERED[0]0x100

Event number 0 generated by triggering the corresponding TRIGGER[0] task

 
EVENTS_TRIGGERED[1]0x104

Event number 1 generated by triggering the corresponding TRIGGER[1] task

 
EVENTS_TRIGGERED[2]0x108

Event number 2 generated by triggering the corresponding TRIGGER[2] task

 
EVENTS_TRIGGERED[3]0x10C

Event number 3 generated by triggering the corresponding TRIGGER[3] task

 
EVENTS_TRIGGERED[4]0x110

Event number 4 generated by triggering the corresponding TRIGGER[4] task

 
EVENTS_TRIGGERED[5]0x114

Event number 5 generated by triggering the corresponding TRIGGER[5] task

 
EVENTS_TRIGGERED[6]0x118

Event number 6 generated by triggering the corresponding TRIGGER[6] task

 
EVENTS_TRIGGERED[7]0x11C

Event number 7 generated by triggering the corresponding TRIGGER[7] task

 
EVENTS_TRIGGERED[8]0x120

Event number 8 generated by triggering the corresponding TRIGGER[8] task

 
EVENTS_TRIGGERED[9]0x124

Event number 9 generated by triggering the corresponding TRIGGER[9] task

 
EVENTS_TRIGGERED[10]0x128

Event number 10 generated by triggering the corresponding TRIGGER[10] task

 
EVENTS_TRIGGERED[11]0x12C

Event number 11 generated by triggering the corresponding TRIGGER[11] task

 
EVENTS_TRIGGERED[12]0x130

Event number 12 generated by triggering the corresponding TRIGGER[12] task

 
EVENTS_TRIGGERED[13]0x134

Event number 13 generated by triggering the corresponding TRIGGER[13] task

 
EVENTS_TRIGGERED[14]0x138

Event number 14 generated by triggering the corresponding TRIGGER[14] task

 
EVENTS_TRIGGERED[15]0x13C

Event number 15 generated by triggering the corresponding TRIGGER[15] task

 
INTEN0x300

Enable or disable interrupt

 
INTENSET0x304

Enable interrupt

 
INTENCLR0x308

Disable interrupt

 

INTEN

Address offset: 0x300

Enable or disable interrupt

Bit number313029282726252423222120191817161514131211109876543210
Id                PONMLKJIHGFEDCBA
Reset 0x0000000000000000000000000000000000000000
IdRWFieldValue IdValueDescription
ARW

TRIGGERED0

  

Enable or disable interrupt for TRIGGERED[0] event

See EVENTS_TRIGGERED[0]

   

Disabled

0

Disable

   

Enabled

1

Enable

BRW

TRIGGERED1

  

Enable or disable interrupt for TRIGGERED[1] event

See EVENTS_TRIGGERED[1]

   

Disabled

0

Disable

   

Enabled

1

Enable

CRW

TRIGGERED2

  

Enable or disable interrupt for TRIGGERED[2] event

See EVENTS_TRIGGERED[2]

   

Disabled

0

Disable

   

Enabled

1

Enable

DRW

TRIGGERED3

  

Enable or disable interrupt for TRIGGERED[3] event

See EVENTS_TRIGGERED[3]

   

Disabled

0

Disable

   

Enabled

1

Enable

ERW

TRIGGERED4

  

Enable or disable interrupt for TRIGGERED[4] event

See EVENTS_TRIGGERED[4]

   

Disabled

0

Disable

   

Enabled

1

Enable

FRW

TRIGGERED5

  

Enable or disable interrupt for TRIGGERED[5] event

See EVENTS_TRIGGERED[5]

   

Disabled

0

Disable

   

Enabled

1

Enable

GRW

TRIGGERED6

  

Enable or disable interrupt for TRIGGERED[6] event

See EVENTS_TRIGGERED[6]

   

Disabled

0

Disable

   

Enabled

1

Enable

HRW

TRIGGERED7

  

Enable or disable interrupt for TRIGGERED[7] event

See EVENTS_TRIGGERED[7]

   

Disabled

0

Disable

   

Enabled

1

Enable

IRW

TRIGGERED8

  

Enable or disable interrupt for TRIGGERED[8] event

See EVENTS_TRIGGERED[8]

   

Disabled

0

Disable

   

Enabled

1

Enable

JRW

TRIGGERED9

  

Enable or disable interrupt for TRIGGERED[9] event

See EVENTS_TRIGGERED[9]

   

Disabled

0

Disable

   

Enabled

1

Enable

KRW

TRIGGERED10

  

Enable or disable interrupt for TRIGGERED[10] event

See EVENTS_TRIGGERED[10]

   

Disabled

0

Disable

   

Enabled

1

Enable

LRW

TRIGGERED11

  

Enable or disable interrupt for TRIGGERED[11] event

See EVENTS_TRIGGERED[11]

   

Disabled

0

Disable

   

Enabled

1

Enable

MRW

TRIGGERED12

  

Enable or disable interrupt for TRIGGERED[12] event

See EVENTS_TRIGGERED[12]

   

Disabled

0

Disable

   

Enabled

1

Enable

NRW

TRIGGERED13

  

Enable or disable interrupt for TRIGGERED[13] event

See EVENTS_TRIGGERED[13]

   

Disabled

0

Disable

   

Enabled

1

Enable

ORW

TRIGGERED14

  

Enable or disable interrupt for TRIGGERED[14] event

See EVENTS_TRIGGERED[14]

   

Disabled

0

Disable

   

Enabled

1

Enable

PRW

TRIGGERED15

  

Enable or disable interrupt for TRIGGERED[15] event

See EVENTS_TRIGGERED[15]

   

Disabled

0

Disable

   

Enabled

1

Enable

 

INTENSET

Address offset: 0x304

Enable interrupt

Bit number313029282726252423222120191817161514131211109876543210
Id                PONMLKJIHGFEDCBA
Reset 0x0000000000000000000000000000000000000000
IdRWFieldValue IdValueDescription
ARW

TRIGGERED0

  

Write '1' to Enable interrupt for TRIGGERED[0] event

See EVENTS_TRIGGERED[0]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

BRW

TRIGGERED1

  

Write '1' to Enable interrupt for TRIGGERED[1] event

See EVENTS_TRIGGERED[1]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

CRW

TRIGGERED2

  

Write '1' to Enable interrupt for TRIGGERED[2] event

See EVENTS_TRIGGERED[2]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

DRW

TRIGGERED3

  

Write '1' to Enable interrupt for TRIGGERED[3] event

See EVENTS_TRIGGERED[3]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

ERW

TRIGGERED4

  

Write '1' to Enable interrupt for TRIGGERED[4] event

See EVENTS_TRIGGERED[4]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

FRW

TRIGGERED5

  

Write '1' to Enable interrupt for TRIGGERED[5] event

See EVENTS_TRIGGERED[5]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

GRW

TRIGGERED6

  

Write '1' to Enable interrupt for TRIGGERED[6] event

See EVENTS_TRIGGERED[6]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

HRW

TRIGGERED7

  

Write '1' to Enable interrupt for TRIGGERED[7] event

See EVENTS_TRIGGERED[7]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

IRW

TRIGGERED8

  

Write '1' to Enable interrupt for TRIGGERED[8] event

See EVENTS_TRIGGERED[8]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

JRW

TRIGGERED9

  

Write '1' to Enable interrupt for TRIGGERED[9] event

See EVENTS_TRIGGERED[9]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

KRW

TRIGGERED10

  

Write '1' to Enable interrupt for TRIGGERED[10] event

See EVENTS_TRIGGERED[10]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

LRW

TRIGGERED11

  

Write '1' to Enable interrupt for TRIGGERED[11] event

See EVENTS_TRIGGERED[11]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

MRW

TRIGGERED12

  

Write '1' to Enable interrupt for TRIGGERED[12] event

See EVENTS_TRIGGERED[12]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

NRW

TRIGGERED13

  

Write '1' to Enable interrupt for TRIGGERED[13] event

See EVENTS_TRIGGERED[13]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

ORW

TRIGGERED14

  

Write '1' to Enable interrupt for TRIGGERED[14] event

See EVENTS_TRIGGERED[14]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

PRW

TRIGGERED15

  

Write '1' to Enable interrupt for TRIGGERED[15] event

See EVENTS_TRIGGERED[15]

   

Set

1

Enable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

 

INTENCLR

Address offset: 0x308

Disable interrupt

Bit number313029282726252423222120191817161514131211109876543210
Id                PONMLKJIHGFEDCBA
Reset 0x0000000000000000000000000000000000000000
IdRWFieldValue IdValueDescription
ARW

TRIGGERED0

  

Write '1' to Disable interrupt for TRIGGERED[0] event

See EVENTS_TRIGGERED[0]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

BRW

TRIGGERED1

  

Write '1' to Disable interrupt for TRIGGERED[1] event

See EVENTS_TRIGGERED[1]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

CRW

TRIGGERED2

  

Write '1' to Disable interrupt for TRIGGERED[2] event

See EVENTS_TRIGGERED[2]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

DRW

TRIGGERED3

  

Write '1' to Disable interrupt for TRIGGERED[3] event

See EVENTS_TRIGGERED[3]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

ERW

TRIGGERED4

  

Write '1' to Disable interrupt for TRIGGERED[4] event

See EVENTS_TRIGGERED[4]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

FRW

TRIGGERED5

  

Write '1' to Disable interrupt for TRIGGERED[5] event

See EVENTS_TRIGGERED[5]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

GRW

TRIGGERED6

  

Write '1' to Disable interrupt for TRIGGERED[6] event

See EVENTS_TRIGGERED[6]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

HRW

TRIGGERED7

  

Write '1' to Disable interrupt for TRIGGERED[7] event

See EVENTS_TRIGGERED[7]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

IRW

TRIGGERED8

  

Write '1' to Disable interrupt for TRIGGERED[8] event

See EVENTS_TRIGGERED[8]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

JRW

TRIGGERED9

  

Write '1' to Disable interrupt for TRIGGERED[9] event

See EVENTS_TRIGGERED[9]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

KRW

TRIGGERED10

  

Write '1' to Disable interrupt for TRIGGERED[10] event

See EVENTS_TRIGGERED[10]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

LRW

TRIGGERED11

  

Write '1' to Disable interrupt for TRIGGERED[11] event

See EVENTS_TRIGGERED[11]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

MRW

TRIGGERED12

  

Write '1' to Disable interrupt for TRIGGERED[12] event

See EVENTS_TRIGGERED[12]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

NRW

TRIGGERED13

  

Write '1' to Disable interrupt for TRIGGERED[13] event

See EVENTS_TRIGGERED[13]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

ORW

TRIGGERED14

  

Write '1' to Disable interrupt for TRIGGERED[14] event

See EVENTS_TRIGGERED[14]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

PRW

TRIGGERED15

  

Write '1' to Disable interrupt for TRIGGERED[15] event

See EVENTS_TRIGGERED[15]

   

Clear

1

Disable

   

Disabled

0

Read: Disabled

   

Enabled

1

Read: Enabled

 

Electrical specification

EGU Electrical Specification

SymbolDescriptionMin.Typ.Max.Units
tEGU,EVT

Latency between setting an EGU event flag and the system setting an interrupt

1cycles