<?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 IMX6D ODT in i.MX Processors</title>
    <link>https://community.nxp.com/t5/i-MX-Processors/IMX6D-ODT/m-p/316265#M41887</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;Customer is using their controller card, in which they created by copying the schematic and code from MCIMX6Q-SDB. They did not copy the PCB design/layout. In review of the memory ODT, they have the following questions:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;Is there a preferred value for the ODT resistance Rtt_non (ie 60 Ohms or 120 Ohms)?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;U-Boot sets the nominal ODT resistance value for a write access to 60 Ohms. However, U-Boot sets the Dynamic ODT resistance value to 120 Ohms for burst write accesses. Why is there a different ODT resistance value for a burst write access?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;U-Boot sets the system up such that the ODT resistors are enabled in the DDR3 SDRAM’s whenever the IMX6 is writing data to the DDR3 SDRAM’s. U-Boot uses the ODT control pin to disable the ODT resistors in the DDR3 SDRAM’s when reading data out of the SDRAM’s. This makes sense to me; the termination resistors are on the receiving side of the transaction. My question is: Are the ODT termination resistors enabled in the IMX6 when the IMX6 is reading data out of the DDR3 SDRAM’s? If so, how is this accomplished?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;There is a Pad Group Control Register at address 0x020E_0774 that sets the input mode of the DDR3 SDRAM data bus signals. U-Boot writes 0x0002_0000 to this register. This configures the DDR3 SDRAM data bus signals for the “differential input mode”. Since the DDR3 SDRAM data bus signals are single ended, I changed the contents of this register to 0x0000_0000. This configures the DDR3 SDRAM data bus signals for the “CMOS input mode”. The board wouldn’t boot after I made this change. Why?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;I attempted to write 0x0000_0200 to the Pad Group Control Registers located at the following addresses:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;0x020E_754, 0x020E_75C, 0x020E_760, 0x020E_764, 0x020E_76C, 0x020E_778, 0x020E_77C, 0x020E_780. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;Writing 0x0000_0200 to these registers sets the ODT resistance value for the DDR3 SDRAM Data Bus (DDR3_SDRAM_D63 – DDR3_SDRAM_D0) to 60 Ohms. Writing 0x0000_0200 to these registers breaks the board (i.e. the board won’t boot). The default (i.e. reset) value for these registers is 0x0000_0000 (ODT resistance disabled). However, when I tried writing 0x0000_0000 to these registers, I broke the board again. Why is this happening?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;Tom Saluzzo&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;FAE&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;Arrow Electronics&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Sun, 06 Jul 2014 13:35:39 GMT</pubDate>
    <dc:creator>tomsaluzzo</dc:creator>
    <dc:date>2014-07-06T13:35:39Z</dc:date>
    <item>
      <title>IMX6D ODT</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX6D-ODT/m-p/316265#M41887</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;Customer is using their controller card, in which they created by copying the schematic and code from MCIMX6Q-SDB. They did not copy the PCB design/layout. In review of the memory ODT, they have the following questions:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;&lt;SPAN style="color: #000000;"&gt;Is there a preferred value for the ODT resistance Rtt_non (ie 60 Ohms or 120 Ohms)?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;U-Boot sets the nominal ODT resistance value for a write access to 60 Ohms. However, U-Boot sets the Dynamic ODT resistance value to 120 Ohms for burst write accesses. Why is there a different ODT resistance value for a burst write access?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;U-Boot sets the system up such that the ODT resistors are enabled in the DDR3 SDRAM’s whenever the IMX6 is writing data to the DDR3 SDRAM’s. U-Boot uses the ODT control pin to disable the ODT resistors in the DDR3 SDRAM’s when reading data out of the SDRAM’s. This makes sense to me; the termination resistors are on the receiving side of the transaction. My question is: Are the ODT termination resistors enabled in the IMX6 when the IMX6 is reading data out of the DDR3 SDRAM’s? If so, how is this accomplished?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;There is a Pad Group Control Register at address 0x020E_0774 that sets the input mode of the DDR3 SDRAM data bus signals. U-Boot writes 0x0002_0000 to this register. This configures the DDR3 SDRAM data bus signals for the “differential input mode”. Since the DDR3 SDRAM data bus signals are single ended, I changed the contents of this register to 0x0000_0000. This configures the DDR3 SDRAM data bus signals for the “CMOS input mode”. The board wouldn’t boot after I made this change. Why?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;I attempted to write 0x0000_0200 to the Pad Group Control Registers located at the following addresses:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;0x020E_754, 0x020E_75C, 0x020E_760, 0x020E_764, 0x020E_76C, 0x020E_778, 0x020E_77C, 0x020E_780. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;Writing 0x0000_0200 to these registers sets the ODT resistance value for the DDR3 SDRAM Data Bus (DDR3_SDRAM_D63 – DDR3_SDRAM_D0) to 60 Ohms. Writing 0x0000_0200 to these registers breaks the board (i.e. the board won’t boot). The default (i.e. reset) value for these registers is 0x0000_0000 (ODT resistance disabled). However, when I tried writing 0x0000_0000 to these registers, I broke the board again. Why is this happening?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;Tom Saluzzo&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;FAE&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN style="color: #000000;"&gt;Arrow Electronics&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Sun, 06 Jul 2014 13:35:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX6D-ODT/m-p/316265#M41887</guid>
      <dc:creator>tomsaluzzo</dc:creator>
      <dc:date>2014-07-06T13:35:39Z</dc:date>
    </item>
    <item>
      <title>Re: IMX6D ODT</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX6D-ODT/m-p/316266#M41888</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Please look at my comments below.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1.&lt;/P&gt;&lt;P&gt;&amp;nbsp; There are no special considerations regarding the ODT of the i.MX6. It is highly &lt;/P&gt;&lt;P&gt;recommended to use simulation technique for PCB design in order to define if termination &lt;/P&gt;&lt;P&gt;is needed and what are optimal parameters. Also optimal values may be found during&lt;/P&gt;&lt;P&gt;testing / debugging on real board.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;2.&lt;/P&gt;&lt;P&gt;&amp;nbsp; You are right, termination is provided on receiver side.&lt;/P&gt;&lt;P&gt;So, for read (by CPU) operation resistors are provided (if configured) by the &lt;/P&gt;&lt;P&gt;CPU on CPU side (internally). For write - the CPU asserts ODT signal to inform &lt;/P&gt;&lt;P&gt;DRAM that memory should provide termination.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;3.&lt;/P&gt;&lt;P&gt;&amp;nbsp; It is recommended to use only MMDC_MPODTCTRL register to configure ODT of i.MX6.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;4.&lt;/P&gt;&lt;P&gt;&amp;nbsp; As for input mode parameter (DDR_INPUT bit), which may be configured as CMOS&amp;nbsp; or differential. &lt;/P&gt;&lt;P&gt;This configures the voltage level at which the pins senses a transition from logic low to logic high and &lt;/P&gt;&lt;P&gt;vice versa. In differential mode, the pins level transitions are at 50%. In CMOS input mode, the pins level &lt;/P&gt;&lt;P&gt;transitions are&amp;nbsp; at 80% for high and 20 % for low.&amp;nbsp; Different DDR_INPUT options may be used in case of timing &lt;/P&gt;&lt;P&gt;problems in order to improve situation.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;BR /&gt;Have a great day,&lt;BR /&gt;Yuri&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Jul 2014 06:22:10 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX6D-ODT/m-p/316266#M41888</guid>
      <dc:creator>Yuri</dc:creator>
      <dc:date>2014-07-08T06:22:10Z</dc:date>
    </item>
    <item>
      <title>Re: IMX6D ODT</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX6D-ODT/m-p/316267#M41889</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;This was copied and pasted from the description of the MMDCx_MPODTCTRL register description in the IMX6 Reference Manual:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;“On chip ODT byte3 resistor - This field determines the Rtt_Nom of the on chip ODT byte3 resistor during read accesses.”&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Do these ODT resistors get set for the DDR3 Data Bus bits only or do the ODT resistors also get set for the Data Mask and Data Strobe bits?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt; &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Tom Saluzzo &lt;/P&gt;&lt;P&gt;Field Application Engineer &lt;/P&gt;&lt;P&gt;Arrow Electronics &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;1000 Pittsford Victor Rd. 2nd Floor&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Pittsford, NY 14534&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;585.820.2781 &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;tsaluzzo@arrow.com&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.nxp.com/www.arrow.com" target="test_blank"&gt;www.arrow.com&lt;/A&gt; &amp;lt;http://www.arrow.com/&amp;gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 08 Jul 2014 18:27:41 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX6D-ODT/m-p/316267#M41889</guid>
      <dc:creator>tomsaluzzo</dc:creator>
      <dc:date>2014-07-08T18:27:41Z</dc:date>
    </item>
    <item>
      <title>Re: IMX6D ODT</title>
      <link>https://community.nxp.com/t5/i-MX-Processors/IMX6D-ODT/m-p/316268#M41890</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P style="font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif; color: #3d3d3d;"&gt;&lt;SPAN style="font-weight: inherit; font-style: inherit; font-family: inherit;"&gt;&amp;nbsp; I was mistaken last time, the&lt;/SPAN&gt;&lt;SPAN style="font-weight: inherit; font-style: inherit;"&gt; ODT resistors (configured via &lt;SPAN style="color: #3d3d3d; font-family: 'Helvetica Neue', Helvetica, Arial, 'Lucida Grande', sans-serif;"&gt;MMDCx_MPODTCTRL &lt;/SPAN&gt;) &lt;BR /&gt;are actual for the Data lines, Data Mask and Data Strobe signals. &lt;BR /&gt;&lt;/SPAN&gt; &lt;/P&gt;&lt;P&gt; Have a great day,&lt;BR /&gt;Yuri&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P style="font-weight: inherit; font-style: inherit; font-family: inherit; color: #3d3d3d;"&gt;-----------------------------------------------------------------------------------------------------------------------&lt;BR /&gt;Note: If this post answers your question, please click the Correct Answer button. Thank you!&lt;BR /&gt;-----------------------------------------------------------------------------------------------------------------------&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 10 Jul 2014 02:49:16 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-Processors/IMX6D-ODT/m-p/316268#M41890</guid>
      <dc:creator>Yuri</dc:creator>
      <dc:date>2014-07-10T02:49:16Z</dc:date>
    </item>
  </channel>
</rss>

