Published On: August, 2, 2017 By: Eshtaartha Basu | Updated: October 1, 2020 by Greg Sheridan
A clock is essential for the operation of any microprocessor. Therefore, proper design of the clock circuit is pivotal to achieve reliable operation. This article will help you understand the OSD335x Clock Circuitry design methodology.
This article is a part of the broader OSD335x Reference Design Lesson 1 series which consists of a sequence of articles designed to help you build the bare minimum circuitry required to boot the OSD335x.
We recommend reading the article OSD335x Reset Circuitry before this one. This article builds upon the foundation outlined in it.
All design files for this lesson can be downloaded here.
The OSD335x has two clock inputs. They are:
OSC0: This is the High Frequency Oscillator Input. This clock source is also called the Master Oscillator. It operates at either 19.2MHz, 24MHz, 25 MHz or 26MHz. This clock source provides reference for all non-RTC functions. The OSC0_IN, OSC0_OUT and OSC0_GND pins are used for this clock input.
OSC1: This is the Low Frequency Oscillator Input. This clock source provides a reference clock for the Real Time Clock (RTC) and operates at 32.768kHz. The OSC1_IN, OSC1_OUT and OSC1_GND pins are used for this clock input.
OSC1 is disabled by default when power is applied. This clock input is optional and is not required if the RTC (Real Time Clock) module is configured to receive clock from internal 32kHz RC oscillator or if the RTC modules is not needed at all.
For more information on clock sub-systems, you can refer the Clock Management section of the AM335x Technical Reference Manual.
The crystal oscillator circuit for OSC0 is shown in Figure 1.
However, Rd is in series with the crystal and the OSC0_OUT pin, so it must always be populated even if it is not needed, which adds cost to the design. We decided not to add the footprint for Rd since we didn’t think we needed it and it makes the layout cleaner.
For the reference design, we were happy with the performance of the crystal when we just used a 1Mohm resistor for Rbias. You will have to decide how to handle Rbias and Rd based on your design and your crystal.
The choice of OSC0 clock frequency will affect the boot-configuration pull down/pull-up resistor setup. See the SYSBOOT Configuration Pins section of the AM335x Technical Reference Manual for more information about boot configuration resistor setup.
Now let’s add OSC0 and OSC1 circuits into our schematics as shown in Figure 3.
OSC0 and OSC1 clock inputs can also be sourced from digital oscillator chips like SIT8008BCE7-18E (for OSC0) and ASDK2-32.768KHZ-LRT (for OSC1). Use of digital oscillators will significantly reduce the complexity of the circuit but does add cost. A discussion on digital oscillator chip is beyond the scope of this article.
Here are the guidelines we used for crystal oscillator layout in this design:
Let’s layout the traces for OSC0 and OSC1 as shown in Figure 4.
The AM335x processor inside the OSD335x contains a RTC (Real Time Clock) with the potential to support an RTC-Only mode. However, the OSD335x DOES NOT support RTC-Only mode because it uses the C version of TPS65217 which does not support RTC-Only power mode. Although RTC-Only mode is not available, the RTC can still be enabled and used to keep track of time.
The RTC peripheral has an internal LDO which can supply power to it. CAP_VDD_RTC (the supply pin for the RTC core) gets power from the internal RTC LDO if the RTC_KALDO_ENn (active low) pin is pulled low as shown in Figure 5. If RTC_KALDO_ENn is pulled high, the internal RTC LDO will be disabled and CAP_VDD_RTC will have to be connected to VDD_CORE to power the RTC core externally.
Powering down or resetting the RTC could cause boot issues during U-Boot with most Linux images due to bus accesses to the RTC that hang. See OSD335x RTC Use Cases app note to learn more about RTC Use Cases and recommendations.
On completion of clock circuitry layout, the board should look like Figure 6 (assuming the board is also populated with power and reset circuitry from previous articles).
There has been multiple revisions to the OSDZU3-REF and some of the documentation is for specific revisions.
The revision of your OSDZU3-REF is printed under the fan next to the Octavo Systems logo. See the image below.
If there are multiple versions of a document make sure you select the one that matches your revision.