stm32-data/data/registers/rng_v2.yaml
2023-06-30 17:44:07 +02:00

193 lines
4.8 KiB
YAML

---
block/RNG:
description: Random number generator
items:
- name: CR
description: control register
byte_offset: 0
fieldset: CR
- name: SR
description: status register
byte_offset: 4
fieldset: SR
- name: DR
description: data register
byte_offset: 8
access: Read
- name: HTCR
description: health test control register
byte_offset: 16
fieldset: HTCR
fieldset/CR:
description: control register
fields:
- name: RNGEN
description: Random number generator enable
bit_offset: 2
bit_size: 1
- name: IE
description: Interrupt enable
bit_offset: 3
bit_size: 1
- name: CED
description: Clock error detection
bit_offset: 5
bit_size: 1
- name: RNG_CONFIG3
description: RNG configuration 3
bit_offset: 8
bit_size: 4
enum: RNG_CONFIG3
- name: NISTC
description: Non NIST compliant
bit_offset: 12
bit_size: 1
enum: NISTC
- name: RNG_CONFIG2
description: RNG configuration 2
bit_offset: 13
bit_size: 3
enum: RNG_CONFIG2
- name: CLKDIV
description: Clock divider factor
bit_offset: 16
bit_size: 4
enum: CLKDIV
- name: RNG_CONFIG1
description: RNG configuration 1
bit_offset: 20
bit_size: 6
enum: RNG_CONFIG1
- name: CONDRST
description: Conditioning soft reset
bit_offset: 30
bit_size: 1
- name: CONFIGLOCK
description: Config Lock
bit_offset: 31
bit_size: 1
fieldset/SR:
description: status register
fields:
- name: DRDY
description: Data ready
bit_offset: 0
bit_size: 1
- name: CECS
description: Clock error current status
bit_offset: 1
bit_size: 1
- name: SECS
description: Seed error current status
bit_offset: 2
bit_size: 1
- name: CEIS
description: Clock error interrupt status
bit_offset: 5
bit_size: 1
- name: SEIS
description: Seed error interrupt status
bit_offset: 6
bit_size: 1
fieldset/HTCR:
description: Health test control register
fields:
- name: HTCFG
description: Health test configuration
bit_offset: 0
bit_size: 32
enum: HTCFG
enum/CLKDIV:
bit_size: 4
variants:
- name: NoDiv
description: Internal RNG clock after divider is similar to incoming RNG clock
value: 0
- name: Div_2_1
description: Divide RNG clock by 2^1
value: 1
- name: Div_2_2
description: Divide RNG clock by 2^2
value: 2
- name: Div_2_3
description: Divide RNG clock by 2^3
value: 3
- name: Div_2_4
description: Divide RNG clock by 2^4
value: 4
- name: Div_2_5
description: Divide RNG clock by 2^5
value: 5
- name: Div_2_6
description: Divide RNG clock by 2^6
value: 6
- name: Div_2_7
description: Divide RNG clock by 2^7
value: 7
- name: Div_2_8
description: Divide RNG clock by 2^8
value: 8
- name: Div_2_9
description: Divide RNG clock by 2^9
value: 9
- name: Div_2_10
description: Divide RNG clock by 2^10
value: 10
- name: Div_2_11
description: Divide RNG clock by 2^11
value: 11
- name: Div_2_12
description: Divide RNG clock by 2^12
value: 12
- name: Div_2_13
description: Divide RNG clock by 2^13
value: 13
- name: Div_2_14
description: Divide RNG clock by 2^14
value: 14
- name: Div_2_15
description: Divide RNG clock by 2^15
value: 15
enum/HTCFG:
bit_size: 32
variants:
- name: Recommended
description: Recommended value for RNG certification (0x0000_AA74)
value: 43636
- name: Magic
description: Magic number to be written before any write (0x1759_0ABC)
value: 391711420
enum/NISTC:
bit_size: 1
variants:
- name: Default
description: Hardware default values for NIST compliant RNG. In this configuration per 128-bit output two conditioning loops are performed and 256 bits of noise source are used
value: 0
- name: Custom
description: Custom values for NIST compliant RNG
value: 1
enum/RNG_CONFIG1:
bit_size: 6
variants:
- name: ConfigA
description: Recommended value for config A (NIST certifiable)
value: 15
- name: ConfigB
description: Recommended value for config B (not NIST certifiable)
value: 24
enum/RNG_CONFIG2:
bit_size: 3
variants:
- name: ConfigA_B
description: Recommended value for config A and B
value: 0
enum/RNG_CONFIG3:
bit_size: 4
variants:
- name: ConfigB
description: Recommended value for config B (not NIST certifiable)
value: 0
- name: ConfigA
description: Recommended value for config A (NIST certifiable)
value: 13