Use 32k Timer to drive RFTimer for SCuM port, instead the 500kHz down converted from 20MHz HFCLK

Description

As indicated in paper CMOS oscillators to satisfy 802.15.4 and Bluetooth LE PHY specifications without a crystal reference
https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=8666473&casa_token=XDzQMVFMUyUAAAAA:TyaRw6JsGZL7fmp25j6ERjR2694NGhgHqp1bvj8CJQ0YxHSGLXt5Q54UgZGRyYoSSddrozizVA&tag=1
specifically Fig.3 (HFCLK OSC) vs Fig.6 (32kHz Timer OSC),
The 32k Timer OSC shows a better performance in term of drift comparing to 20MHz RC OSC.

RFTimer source configuration is determined by ASC bits 1151-1154:

(ASC_crossbar[1154:1151]):

  • 0b0000(LF_CLOCK),

  • 0b0001(HF_CLOCK),

  • 0b0010(RC_2MHz),

  • 0b0011(TIMER32k),

  • 0b0100(LF_ext_PAD),

  • 0b0101(LF_ext_GPIO), // external_clk_in_1

  • 0b0110(ADC_CLK),

  • 0b0111(LC_div_N),

  • 0b1000(LC_2MHz),

  • 0b1001(LC_1MHz_stat),

  • 0b1010(LC_1MHz_dyn),


To configure RFTimer driven by 32k timer, the following changes are required:

ASC[1154-1151] = 0b0011

ASC[36] = 1; # divider_RFTimer_PT pass through

Translate to code:

set_asc_bit(1151);

set_asc_bit(1152);

set_asc_bit(36);

Environment

None

Activity

Show:

Details

Assignee

Reporter

Labels

Story Points

5

Fix versions

Affects versions

Priority

Created May 28, 2020 at 10:43 PM
Updated May 28, 2020 at 10:51 PM