<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic How to trap Double Bus Faults? in ColdFire/68K Microcontrollers and Processors</title>
    <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-trap-Double-Bus-Faults/m-p/144853#M2997</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;In the process of debugging my code, when the program runs "off in the weeds", sometimes I'll get a "Double Bus Fault" error.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I am using Wind River's (USB) Probe for In-Circuit debugging, and when you get&amp;nbsp;a Double Bus Fault, it's rendered useless until you reinitialize it (which trashes any info that might've told me WTF happened).&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;My CPU is MCF5271.&amp;nbsp; All OS is homegrown.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;What I expect is possible is defining a "fenced" area of memory from which the CPU is allowed to execute code, and a special exception vector I could use to catch instances of the PC going outside this range.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Anyone know how to pull this off?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Thanks.&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Fri, 09 Feb 2007 04:26:21 GMT</pubDate>
    <dc:creator>ynaught</dc:creator>
    <dc:date>2007-02-09T04:26:21Z</dc:date>
    <item>
      <title>How to trap Double Bus Faults?</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-trap-Double-Bus-Faults/m-p/144853#M2997</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;In the process of debugging my code, when the program runs "off in the weeds", sometimes I'll get a "Double Bus Fault" error.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;I am using Wind River's (USB) Probe for In-Circuit debugging, and when you get&amp;nbsp;a Double Bus Fault, it's rendered useless until you reinitialize it (which trashes any info that might've told me WTF happened).&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;My CPU is MCF5271.&amp;nbsp; All OS is homegrown.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;What I expect is possible is defining a "fenced" area of memory from which the CPU is allowed to execute code, and a special exception vector I could use to catch instances of the PC going outside this range.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Anyone know how to pull this off?&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;Thanks.&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 09 Feb 2007 04:26:21 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-trap-Double-Bus-Faults/m-p/144853#M2997</guid>
      <dc:creator>ynaught</dc:creator>
      <dc:date>2007-02-09T04:26:21Z</dc:date>
    </item>
    <item>
      <title>Re: How to trap Double Bus Faults?</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-trap-Double-Bus-Faults/m-p/144854#M2998</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;DIV&gt;I now know the punchline to this joke so in case somebody else is suffering, here it is:&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;A bus fault triggers an exception (interrupt) handler.&amp;nbsp; A bus fault can happen when a non-existant memory location is read or written.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;A double bus fault happens when an EXCEPTION HANDLER causes a bus fault.&amp;nbsp; In other words, your exception handler needs an exception handler, and Coldfire doesn't do that.&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;So for the most part, my solution for Double Bus Faults has been to issue a "halt" command in my exception routine (only when DEBUG mode is enabled), so I can crawl up in there with my ICE and find out what happened.&amp;nbsp;&amp;nbsp;When DEBUG is disabled, the default is (usually) to do a hard reboot, which continues to work.&lt;/DIV&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 25 Mar 2008 02:33:29 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/How-to-trap-Double-Bus-Faults/m-p/144854#M2998</guid>
      <dc:creator>ynaught</dc:creator>
      <dc:date>2008-03-25T02:33:29Z</dc:date>
    </item>
  </channel>
</rss>

