• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Microcontrollers » MSP430™ Microcontrollers » MSP430 Ultra-Low Power 16-bit Microcontroller Forum » Oscillator Fault: What constitutes fault?
Share
MSP430™ Microcontrollers
  • Forum
  • Announcements
  • E2E Wiki
Options
  • Subscribe via RSS
MSP430 Resources
  • MSP430 Product Folder
  • MSP-EXP430G2 - MSP430 LaunchPad Value Line Development kit
  • MSP430 Getting Started Guide
  • MSP430 Microcontroller Projects
  • More Resources >
  • Forums

    Oscillator Fault: What constitutes fault?

    This question is not answered
    David Escandon
    Posted by David Escandon
    on Aug 19 2011 16:42 PM
    Expert2125 points

    I want to quote the hardware manual:

    "The crystal oscillator fault bits XT1LFOFFG, XT1HFOFFG, and XT2OFFG are set if the corresponding crystal oscillator is turned on and not operating properly." 

    My questions is this. What about the oscillator causes the fault bits to be set? The sentence implies that the oscillator is on, but not generating a signal. So how does the MSP430 check this? Is this a edge detect circuit of some kind. 

    We check the fault bit every 4 hours.  When the bit indicates a clock fault has occurred, we create an entry log, clear the bit and switch the clock source back to external ACLK.  We do nothing special to address the fault since we did not expect to ever see them – except in manufacturing.

    So what could be causing the fault to occur and how does the MSP430 circuitry detect ths fault?

    Oscillator fault
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    All Replies
    • Jeff Tenney
      Posted by Jeff Tenney
      on Aug 19 2011 16:55 PM
      Guru10795 points

      Hi David,

      Typically the processor-specific data sheet lists a frequency below which the internal fault signal will be set.  For example:

      If the rate of oscillation of XT1 in LF mode falls below 10000 Hz, the internal fault signal might be set.  If the rate of oscillation falls below 10 Hz, the internal fault signal definitely will be set.  It only takes one overlong cycle to set the flag.

      The x5xx User's Guide says that this fault signal has to be clear for 8192 consecutive cycles (for XT1 in LF mode) for the firmware to be allowed to clear XT1LFOFFG.  I'm guessing that's what family you're using.

      Jeff

       

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • David Escandon
      Posted by David Escandon
      on Aug 19 2011 17:24 PM
      Expert2125 points

      Thanks Jeff.

      But can you tell me how this fault is detected? In hardware, is this an edge triggered gate that starts a timer of some sort. In other words, how did you guys come up with 10Hz and 10000Hz. That has to be measured and compared some how.

      -David

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Jeff Tenney
      Posted by Jeff Tenney
      on Aug 19 2011 17:39 PM
      Guru10795 points

      David,

      Interesting question.  Maybe Monday somebody from TI will respond, but they often don't chime in on internal design questions.

      So I'll just guess.

      An edge on the clock probably "latches" the state NO_FAULT.  However, the "latched" state probably decays with time.  If I had to guess I'd go with some kind of RC circuit where the clock edge charges the cap fully.  Anyway, the amount of time it takes for the NO_FAULT state to decay into the FAULT state is going to be really hard to specify.  It's voltage, temperature, process, and device dependent.

      As long as edges keep coming, the latched state stays at NO_FAULT (not enough decay occurs between edges).  But as soon as an edge doesn't arrive in time, we decay into the FAULT state and reset the 8192 counter (which controls XT1LFOFFG).

      Jeff

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Jens-Michael Gross
      Posted by Jens-Michael Gross
      on Aug 23 2011 08:24 AM
      Guru139900 points

      On old 1x family, the fault detection was more or less a retriggerable monoflop, triggered by the oscillator, whose expiration was latched into the OFIFG bit, while clearing the bit was triggering the monoflop. You had to clear the bit and then wait for the worst-case time whether it is set again.
      On 5x family, this mechanism has been expanded: the monoflop expiration sets a counter which counts down on every oscillation cycle. Its zero/non-zero output is reflected in the OFFG bit(s), which nail the OFIFG bit to '1' if set. So you cannot clear OFIFG unless all OFFG bits are clear too.

      The counter size is different for different  oscillators and oscillator modes. Also, the DCOFFG bit is not derived by such a monoflop/counter combo but rather indicates that the DCOx bits are all-0 or all-1 (indicating an FLL over/underrun and a required RSELx change).

       

      _____________________________________
      Before posting bug reports or ask for help, do at least quick scan over this article. It applies to any kind of problem reporting. On any forum. And/or look here.
      If you cannot discuss your problem in the public, feel free to start a private conversation: click on my name and then 'start conversation'. But please do so only if you really cannot do it in a public thread, as I usually read all threads. And I prefer to answer where others can profit from it (or contribute to it) too.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • old_cow_yellow
      Posted by old_cow_yellow
      on Aug 23 2011 10:47 AM
      Guru25715 points

      David Escandon
      ... XT1LFOFFG, XT1HFOFFG, and XT2OFFG ... We check the fault bit every 4 hours.... 

      Those bits are non-latching. If the oscillators are "operating properly" while you check them, they are all 0s. Faults during the rest of each 4 hours are not detected.

      XT1LFOFFG, XT1HFOFFG, and XT2OFFG are ORed together and set OFIFG. which can only be cleared by software. If you check OFIFG, you are more likely to detect oscillator faults. OFIFG can also be used to trigger a reset.

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • Jeff Tenney
      Posted by Jeff Tenney
      on Aug 23 2011 11:03 AM
      Guru10795 points

      old_cow_yellow

      [XT1LFOFFG, XT1HFOFFG, and XT2OFFG] are non-latching.

      I'm still just assuming that David's customer is using a 5xx/6xx MCU.  I don't think those specific flag names are used in the other families.  (??)

      In the 5xx/6xx, the XT1LFOFFG and similar flags are actually latched:

      And the "fault condition" they refer to is a "smart" condition.  The crystal must be operating correctly for many consecutive cycles before that "fault condition" clears.

      Jeff

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • old_cow_yellow
      Posted by old_cow_yellow
      on Aug 23 2011 11:44 AM
      Guru25715 points

      Jeff Tenney
      I don't think those specific flag names are used in the other families.  (??)

      You are right.

       

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • David Escandon
      Posted by David Escandon
      on Aug 23 2011 11:52 AM
      Expert2125 points

      Thanks guys. This is very helpful, and more definiitve that the datasheet. Much appreciate.

      Cheers,

       

      David

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • david sun77114
      Posted by david sun77114
      on Aug 07 2012 18:33 PM
      Intellectual795 points

      Hi David, 

      How are you doing with this fault bit? I encountered same problem as you had last year, once a while, I guess in very special situation when the system voltage get interfered, but still in the spec tolerances, the XT1LFOFFG bit get set. I am using an oscillator, seems to me the Xin input is solid. have you figure out what triggered the fault in your system finally, any suggestion are appreciated.

      David Sun

      XT1LFOFFG Fault
      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    • David Escandon
      Posted by David Escandon
      on Aug 10 2012 18:15 PM
      Expert2125 points

      David,

      We found out that in production the crystals were giving us the problem. Make sure you have a good crystal in place.

      -David

      Report Abuse
      • Reply
      You have posted to a forum that requires a moderator to approve posts before they are publicly available.
    TI E2E™ Community
    • Support Forums
    • Blogs
    • Videos
    • Groups
    • Site Support & Feedback
    • Settings
    TI E2E™ Community Groups
    • TI University Program
    • Make the Switch
    • Microcontroller Projects
    • Motor Drive & Control
    Other Communities
    • Deyisupport
    • Designsomething.org
    • beagleboard.org
    • TI on Element 14
    • TI on TechXchangeSM
    Other Technical & Support Resources
    • WEBENCH® Design Center
    • Product Information Centers
    • Technical Documents
    • TI Design Network
    • TI Technical Articles
    • TI Training

    All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

    Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

    Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
    TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

    TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
    embedded processors, along with software, tools and the industry’s largest sales/support staff.

    © Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
    Trademarks | Privacy Policy | Terms of Use