<?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>i.MX RT Crossover MCUsのトピックRe: Shared memory data update in ALIAS region between M7 and M4</title>
    <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2110734#M34423</link>
    <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/250815"&gt;@GA154&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;In order to support you better, could you provide me more details about how you came to the following conclusion?&lt;BR /&gt;&lt;STRONG&gt;"We are facing the problem with cache coherence between two cores."&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;The cache does not intervene with the TCM (Tightly Coupled Memory); the cache is directly connected to the core. As shown in the next image obtained from Chapter 33.2.1 in the RM:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Habib_MS_1-1749074630591.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/341438iB4A8C44A195A272C/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Habib_MS_1-1749074630591.png" alt="Habib_MS_1-1749074630591.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Habib_MS_1-1749074630591.png&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Also, in the chapter 2.1 in the app note called "&lt;A href="https://www.nxp.com/docs/en/application-note/AN12042.pdf?_gl=1*1tnejdy*_ga*MTk2NjYxOTE5OC4xNzQ0MTM4MTg2*_ga_WM5LE0KMSH*czE3NDkwNjkzMDgkbzE3JGcxJHQxNzQ5MDcxNjM2JGo2MCRsMCRoODg0NTM1NTQ0" target="_self"&gt;Using the i.MXRT L1 Cache&lt;/A&gt;" mentions the next:&lt;BR /&gt;&lt;STRONG&gt;"The I/DTCM (FlexRAM banks configured as TCM) is accessed directly by CPU core, bypass the L1 cache."&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;BR&lt;BR /&gt;Habib&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Wed, 04 Jun 2025 22:13:55 GMT</pubDate>
    <dc:creator>Habib_MS</dc:creator>
    <dc:date>2025-06-04T22:13:55Z</dc:date>
    <item>
      <title>Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2103428#M34359</link>
      <description>&lt;P&gt;&lt;SPAN&gt;Dear Team,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;We are facing memory updation not reflecting in alias region between M7 and M4 on IMXRT1176-EVK with MCUXpresso IDE with USB MSD with FATFS baremetal code.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;We are developing an application with the following requirements:&lt;/SPAN&gt;&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;&lt;P&gt;&lt;SPAN&gt;Three buffers shared_buf[3][64KB] between M7 and M4 where M7 is master and M4 is Slave&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;SPAN&gt;Using M7, Read 64KB data from USB into one of the ‘shared_buf’ and send the index of buffer using MU_interrupt to M4. M7 starts reading another 64KB data from USB into another buffer&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;SPAN&gt;On receiving Interrupt, M4 processes the data in ‘shared_buf’, say increment each byte by 1 in buffer, and sends the processed data buffer index to M7 using MU_interrupt&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;LI&gt;&lt;P&gt;&lt;SPAN&gt;On receiving Interrupt, M7 Writes the processed data into another USB MSD on Host1. The process continues&lt;/SPAN&gt;&lt;/P&gt;&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;We have made the memory configuration on M7 as shown below:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ganesh_Akula_9-1747991895331.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/339425iF8A202DA6C3CB06F/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Ganesh_Akula_9-1747991895331.png" alt="Ganesh_Akula_9-1747991895331.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Ganesh_Akula_9-1747991895331.png&lt;/span&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ganesh_Akula_10-1747991909366.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/339426i01B483B956FFD1F3/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Ganesh_Akula_10-1747991909366.png" alt="Ganesh_Akula_10-1747991909366.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Ganesh_Akula_10-1747991909366.png&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;M4 as shown in attched file and&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;Memory configuration on M4 as shown below:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ganesh_Akula_11-1747991929558.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/339427i81AC01151AE2C3A0/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Ganesh_Akula_11-1747991929558.png" alt="Ganesh_Akula_11-1747991929558.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Ganesh_Akula_11-1747991929558.png&lt;/span&gt;&lt;/span&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ganesh_Akula_12-1747991952515.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/339428iD2EE33B3B665DC72/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Ganesh_Akula_12-1747991952515.png" alt="Ganesh_Akula_12-1747991952515.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Ganesh_Akula_12-1747991952515.png&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;We have defined the shared memory of shared_buf[3][64KB] along with additional details for size and processed info of another 32bytes in ‘*(.shared_memory)’ section in &lt;/SPAN&gt;&lt;SPAN&gt;&lt;I&gt;‘SRAM_CM4_ALIAS_SHARED’&lt;/I&gt;&lt;/SPAN&gt;&lt;SPAN&gt; region on M7 and &lt;/SPAN&gt;&lt;SPAN&gt;&lt;I&gt;‘SRAM_DTC_cm4’&lt;/I&gt;&lt;/SPAN&gt;&lt;SPAN&gt; region on M4. ‘shared_buf’ is 32B aligned and starts at 0x2020e000 on both cores M7 and M4.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;We are using the default ‘&lt;/SPAN&gt;&lt;FONT color="#000000"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt;BOARD_ConfigMPU()’ &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;function and no modifications done in the memory regions settings as shown below:&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;DIV class=""&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ganesh_Akula_13-1747991999772.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/339429iEF6D1B4423A45DF7/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Ganesh_Akula_13-1747991999772.png" alt="Ganesh_Akula_13-1747991999772.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Ganesh_Akula_13-1747991999772.png&lt;/span&gt;&lt;/span&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;P&gt;&lt;SPAN&gt;We are able access the shared memory on both cores successfully, but data changes are not reflected on either side with above mentioned memory configuration. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;We tried cache cleaning functions ‘&lt;/SPAN&gt;&lt;FONT color="#000000"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt;SCB_CleanDCache_by_Addr&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#000000"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#7f0055"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt;volatile&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color="#7f0055"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt;void&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#000000"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt; *addr, &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#005032"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt;int32_t&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#000000"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt; dsize)’ &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;before giving interrupt to M4 on M7 and&lt;/SPAN&gt;&lt;/FONT&gt; &lt;FONT color="#000000"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt;SCB_CleanInvalidateDCache_by_Addr&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#000000"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt; (&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#7f0055"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt;volatile&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt; &lt;FONT color="#7f0055"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt;void&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#000000"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt; *addr, &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#005032"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt;int32_t&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#000000"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt; dsize) &lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;after getting interrupt from M4 on M7 but execution becomes &lt;/SPAN&gt;&lt;/FONT&gt;&lt;SPAN&gt;nearly 8 times slower.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;If we change the above memory configuration to any of them as shown below and no usage of &lt;/SPAN&gt;&lt;SPAN&gt;cache cleaning function,&lt;/SPAN&gt;&lt;SPAN&gt; data changes are reflected properly but execution becomes nearly 8 times slower which is not desirable.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Setting-1:&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV class=""&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ganesh_Akula_14-1747992033760.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/339430i7F6C7A0C218C8D32/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Ganesh_Akula_14-1747992033760.png" alt="Ganesh_Akula_14-1747992033760.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Ganesh_Akula_14-1747992033760.png&lt;/span&gt;&lt;/span&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;P&gt;&lt;SPAN&gt;Setting-2:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ganesh_Akula_15-1747992053767.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/339431i6C8AF41085DD7B57/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Ganesh_Akula_15-1747992053767.png" alt="Ganesh_Akula_15-1747992053767.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Ganesh_Akula_15-1747992053767.png&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Setting-3:&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV class=""&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Ganesh_Akula_16-1747992078103.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/339432iBB6A81786D0EB09D/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Ganesh_Akula_16-1747992078103.png" alt="Ganesh_Akula_16-1747992078103.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Ganesh_Akula_16-1747992078103.png&lt;/span&gt;&lt;/span&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;/DIV&gt;&lt;P&gt;&lt;SPAN&gt;How to achieve the data changes reflected properly with shared memory (approx. 196KB) at 0x2020e000 on both M7 and M4?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Please help us to resolve the problem.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 23 May 2025 09:35:05 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2103428#M34359</guid>
      <dc:creator>GA154</dc:creator>
      <dc:date>2025-05-23T09:35:05Z</dc:date>
    </item>
    <item>
      <title>Re: Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2103769#M34363</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/250815"&gt;@GA154&lt;/a&gt;,&lt;BR /&gt;&lt;BR /&gt;I will check your memory configurations, and I will get back to you as soon as possible.&lt;BR /&gt;I highly recommend see these links in order to obtain more information:&lt;BR /&gt;&lt;BR /&gt;&lt;A href="https://www.nxp.com/design/design-center/training/TIP-MULTICORE-PROCESSING-WITH-IMXRT1170#:~:text=Learn%20about%20the%20phyCORE-RT1170%20SOM%20from%20PHYTEC%20and,and%20synchronization%20between%20tasks%20across%20the%20two%20cores." target="_blank"&gt;Multicore Processing with the i.MX RT 1170 CPU, NXP's MQX RTOS, and PHYTEC’s phyCORE-RT1170 SOM | NXP Semiconductors&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;&lt;A href="https://www.nxp.com/docs/en/application-note/AN13264.pdf" target="_blank"&gt;i.MX RT1170 Dual Core Application&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;SDK (version 25.03) example called "sema4_dualcore_primary_core"&lt;/P&gt;
&lt;P&gt;BR&lt;BR /&gt;Habib&lt;/P&gt;</description>
      <pubDate>Fri, 23 May 2025 21:44:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2103769#M34363</guid>
      <dc:creator>Habib_MS</dc:creator>
      <dc:date>2025-05-23T21:44:24Z</dc:date>
    </item>
    <item>
      <title>Re: Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2105491#M34384</link>
      <description>&lt;P&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/231807"&gt;@Habib_MS&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank You for your quick reply.&lt;/P&gt;&lt;P&gt;We have already gone through AN13264.pdf mentioned in link&amp;nbsp;&lt;A href="https://www.nxp.com/docs/en/application-note/AN13264.pdf" target="_blank" rel="nofollow noopener noreferrer"&gt;i.MX RT1170 Dual Core Application&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;We have gone through the video shared in link&amp;nbsp;&lt;A href="https://www.nxp.com/design/design-center/training/TIP-MULTICORE-PROCESSING-WITH-IMXRT1170#:~:text=Learn%20about%20the%20phyCORE-RT1170%20SOM%20from%20PHYTEC%20and,and%20synchronization%20between%20tasks%20across%20the%20two%20cores." target="_blank" rel="nofollow noopener noreferrer"&gt;Multicore Processing with the i.MX RT 1170 CPU, NXP's MQX RTOS, and PHYTEC’s phyCORE-RT1170 SOM | NX...&lt;/A&gt;&lt;/P&gt;&lt;P&gt;We configured both Cores M7 as master and M4 as slave with bare-metal code and both cores are working as expected.&lt;/P&gt;&lt;P&gt;We need to work with shared memory of triple_buffer where each buffer is 64KB and We assumed Zero-copy will help us from CPU cycles for faster execution. Hence we used alias region for shared memory. Here triple_buffer is used for USB MSD I/O on M7 and data processing on M4.&lt;/P&gt;&lt;P&gt;But, We are experiencing data coherence issues when alias region is made as cacheable. Very very slowness is observed in execution when we make Alias region as non-cacheable.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Our understanding is that alias region is also the part of TCM and TCM is single cycle memory and runs at core clock.&lt;/P&gt;&lt;P&gt;1. Then why do we get slow execution problem when alias region is made as non-cacheable?&lt;/P&gt;&lt;P&gt;2. Any other settings to be done in &lt;FONT color="#000000"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt;BOARD_ConfigMPU()&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;&amp;nbsp;for alias region?&lt;/P&gt;&lt;P&gt;3. We could not find &lt;SPAN&gt;SDK (version 25.03) for&amp;nbsp;&lt;/SPAN&gt;MIMXRT1170-EVK. We could find only (&lt;SPAN&gt;SDK_&lt;/SPAN&gt;&lt;SPAN&gt;2.16.000_&lt;/SPAN&gt;&lt;SPAN&gt;MIMXRT1170-EVK) though we are currently using SDK_2.13&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Hoping your best solution to resolve the problem.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 27 May 2025 18:05:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2105491#M34384</guid>
      <dc:creator>GA154</dc:creator>
      <dc:date>2025-05-27T18:05:47Z</dc:date>
    </item>
    <item>
      <title>Re: Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2105514#M34386</link>
      <description>&lt;P&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/231807"&gt;@Habib_MS&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you for quick reply.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We have referred the document AN13264.pdf as mentioned in the link&amp;nbsp;&lt;A href="https://www.nxp.com/docs/en/application-note/AN13264.pdf" target="_blank" rel="nofollow noopener noreferrer"&gt;i.MX RT1170 Dual Core Application&lt;/A&gt;.&amp;nbsp;&lt;/P&gt;&lt;P&gt;We have gone through the video given in the link&amp;nbsp;&lt;A href="https://www.nxp.com/design/design-center/training/TIP-MULTICORE-PROCESSING-WITH-IMXRT1170#:~:text=Learn%20about%20the%20phyCORE-RT1170%20SOM%20from%20PHYTEC%20and,and%20synchronization%20between%20tasks%20across%20the%20two%20cores." target="_blank" rel="nofollow noopener noreferrer"&gt;Multicore Processing with the i.MX RT 1170 CPU, NXP's MQX RTOS, and PHYTEC’s phyCORE-RT1170 SOM | NX...&lt;/A&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We need to work with triple_buffer where each buffer is of 64KB. We want to have Zeo-copy for saving the CPU cycles. Hence we chose Alias region as shared memory for triple_buffer. M7 is the master and does USB MSD I/O on triple_buffer and M4 does processing the triple_buffer. Synchronization between two cores for data read and write is well taken care.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Our application is working with both core as expected but we are facing data coherence problem when alias region is made as cacheable. There is no data coherence problem when we made alias region as non-cacheable but execution is very slow.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Our understanding is that TCM is with core and runs at core clock and single cycle memory. Hence we chose alias region for shared memory instead of OCRAM which runs at 1/4th of M7 core clock.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;1. Why does cacheable make huge impact on alias region even though alias region is part of TCM?&lt;/P&gt;&lt;P&gt;2. Any memory configuration changes to be done in '&lt;SPAN&gt;BOARD_ConfigMPU()' for alias region so that execution is faster and data coherence is maintained?&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;3. We are yet to try&amp;nbsp;SDK (version 25.03) example called "sema4_dualcore_primary_core" as we are currently with SDK (version 2.13)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Hoping your best possible solution to resolve the problem.&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 27 May 2025 18:44:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2105514#M34386</guid>
      <dc:creator>GA154</dc:creator>
      <dc:date>2025-05-27T18:44:08Z</dc:date>
    </item>
    <item>
      <title>Re: Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2105622#M34387</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/250815"&gt;@GA154&lt;/a&gt;,&lt;BR /&gt;&lt;BR /&gt;To help determine whether this resolves the issue, could you please declare the buffer using the AT_NONCACHEABLE_SECTION_INIT macro? For example:&lt;BR /&gt;&lt;SPAN&gt;AT_NONCACHEABLE_SECTION_INIT (uint32_t srcAddr[20])&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;The reason for this request is that I suspect the CM7 core may currently be writing to its cache rather than directly updating the RAM, which could be causing inconsistencies.&lt;/P&gt;
&lt;P&gt;Additionally, for the purposes of your application, is it strictly necessary for the shared buffer to reside at address 0x2020e000? Or would it be acceptable to use address 0x202C000, specifically within the OCRAM2 region?"&lt;/P&gt;
&lt;P&gt;&lt;SPAN&gt;I recommend taking a look at the rpmsg_lite_pingpong_cm7 example included in SDK version 25.03. It demonstrates how to initialize a shared buffer using a user-defined length, which can be very helpful for your implementation. To better understand how the example works, I also highly recommend reading the README file that comes with it—it provides detailed explanations and guidance.&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;BR&lt;BR /&gt;Habib&lt;/P&gt;</description>
      <pubDate>Wed, 28 May 2025 01:30:08 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2105622#M34387</guid>
      <dc:creator>Habib_MS</dc:creator>
      <dc:date>2025-05-28T01:30:08Z</dc:date>
    </item>
    <item>
      <title>Re: Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2108564#M34408</link>
      <description>&lt;P&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/231807"&gt;@Habib_MS&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you for your quick reply.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We have started with example provided in &lt;A href="https://www.nxp.com/docs/en/application-note/AN13264.pdf" target="_blank" rel="nofollow noopener noreferrer"&gt;i.MX RT1170 Dual Core Application&lt;/A&gt;&lt;/P&gt;&lt;P&gt;We have gone through the video link provided by You. We have gone through the NXP Community previous posts specifically we found one &lt;A title="Memory performance" href="https://community.nxp.com/t5/RT-4-Digit-10xx-11xx-12xx/iMXRTxxxx-Memory-Performance-ITCM-DTCM-L1-CACHE-LMEM-CACHE-OCRAM/ta-p/1109993" target="_blank" rel="noopener"&gt;iMXRTxxxx-Memory-Performance-ITCM-DTCM-L1-CACHE-LMEM-CACHE-OCRAM&lt;/A&gt;.&lt;/P&gt;&lt;P&gt;Then we decided to used ALIAS REGION as shared memory for our application need. We successfully configured both cores with with memories as mentioned in my request post and code executes is as expected. But, we are facing the problem with cache coherence between two cores. Cache cleaning functions were helpful in this scenario but execution is very slow.&lt;/P&gt;&lt;P&gt;Our understanding is that alias region is part of TCM and TCM is single cycle memory. Then why cache is intervening here?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We could find SDK 2.16 as the latest one for RT1176-EVK board.&lt;/P&gt;&lt;P&gt;AT_NONCACHEABLE_SECTION_INIT didn't help for any execution speed.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;What else can be done? Are we missing something here?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 02 Jun 2025 09:28:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2108564#M34408</guid>
      <dc:creator>GA154</dc:creator>
      <dc:date>2025-06-02T09:28:57Z</dc:date>
    </item>
    <item>
      <title>Re: Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2108572#M34409</link>
      <description>&lt;P&gt;Hi &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/231807"&gt;@Habib_MS&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We have planned another approach on M7 as mentioned below:&lt;/P&gt;&lt;OL&gt;&lt;LI&gt;define 3 buffers of 64KB each buf[3][65536] in ITCM/DTCM and use for USB file I/O operations&lt;/LI&gt;&lt;LI&gt;Use another 3 buffers of 64KB each in ALIAS REGION&lt;/LI&gt;&lt;LI&gt;Define ALIAS REGION as non-cacheable&lt;/LI&gt;&lt;LI&gt;Read 64KB data from USB0 to buf[0][] in ITCM/DTCM&lt;/LI&gt;&lt;LI&gt;Use a DMA channel for Tx for memory to memory transfer from ITCM/DTCM to ALIAS REGION&lt;/LI&gt;&lt;LI&gt;Use MU to inform M4 about data sent on DMA_callback and update the buffer status for processing&lt;/LI&gt;&lt;LI&gt;Go on to read another 64KB data from USB0 to buf[1][]&lt;/LI&gt;&lt;LI&gt;Meanwhile Get data processing done by M4&lt;/LI&gt;&lt;LI&gt;Receive MU from M4 about processing done&lt;/LI&gt;&lt;LI&gt;Use another DMA channel for Rx for memory to memory transfer from ALIAS REGION to ITCM/DTCM on MU Interrupt&lt;/LI&gt;&lt;LI&gt;Update buffer status for writing on completion of Rx DMA_callback&lt;/LI&gt;&lt;LI&gt;Write Processed data to USB1 if buffer status is updated for writing otherwise go on to read another 64KB data from USB0 to another buffer if free&lt;/LI&gt;&lt;/OL&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;But in this approach, we are facing DMA transfer time is more than USB read time of M7 which is again a bottleneck for throughput.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We would like to know:&lt;/P&gt;&lt;P&gt;1. is it a limitation of the architecture with TCM and ALIAS region for cache coherence?&lt;/P&gt;&lt;P&gt;2. Are we unable to understand the architecture to use it at its full extent for our application need?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/250815"&gt;@GA154&lt;/a&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 02 Jun 2025 10:01:12 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2108572#M34409</guid>
      <dc:creator>GA154</dc:creator>
      <dc:date>2025-06-02T10:01:12Z</dc:date>
    </item>
    <item>
      <title>Re: Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2108583#M34410</link>
      <description>Hi &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/231807"&gt;@Habib_MS&lt;/a&gt;&lt;BR /&gt;We have gone through various posts on NXP Community and found one with memory performance comparison. Then decided ALIAS REGION for shared memory with intention of zero copy between two cores.&lt;BR /&gt;&lt;BR /&gt;AT_NONCACHEABLE_SECTION_INIT also makes execution slower&lt;BR /&gt;&lt;BR /&gt;Regards&lt;BR /&gt;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/250815"&gt;@GA154&lt;/a&gt;</description>
      <pubDate>Mon, 02 Jun 2025 10:15:34 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2108583#M34410</guid>
      <dc:creator>GA154</dc:creator>
      <dc:date>2025-06-02T10:15:34Z</dc:date>
    </item>
    <item>
      <title>Re: Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2110734#M34423</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/250815"&gt;@GA154&lt;/a&gt;,&lt;/P&gt;
&lt;P&gt;In order to support you better, could you provide me more details about how you came to the following conclusion?&lt;BR /&gt;&lt;STRONG&gt;"We are facing the problem with cache coherence between two cores."&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;The cache does not intervene with the TCM (Tightly Coupled Memory); the cache is directly connected to the core. As shown in the next image obtained from Chapter 33.2.1 in the RM:&lt;/P&gt;
&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Habib_MS_1-1749074630591.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/341438iB4A8C44A195A272C/image-size/medium?v=v2&amp;amp;px=400" role="button" title="Habib_MS_1-1749074630591.png" alt="Habib_MS_1-1749074630591.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;Habib_MS_1-1749074630591.png&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;
&lt;P&gt;Also, in the chapter 2.1 in the app note called "&lt;A href="https://www.nxp.com/docs/en/application-note/AN12042.pdf?_gl=1*1tnejdy*_ga*MTk2NjYxOTE5OC4xNzQ0MTM4MTg2*_ga_WM5LE0KMSH*czE3NDkwNjkzMDgkbzE3JGcxJHQxNzQ5MDcxNjM2JGo2MCRsMCRoODg0NTM1NTQ0" target="_self"&gt;Using the i.MXRT L1 Cache&lt;/A&gt;" mentions the next:&lt;BR /&gt;&lt;STRONG&gt;"The I/DTCM (FlexRAM banks configured as TCM) is accessed directly by CPU core, bypass the L1 cache."&lt;/STRONG&gt;&lt;/P&gt;
&lt;P&gt;BR&lt;BR /&gt;Habib&lt;/P&gt;
&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 04 Jun 2025 22:13:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2110734#M34423</guid>
      <dc:creator>Habib_MS</dc:creator>
      <dc:date>2025-06-04T22:13:55Z</dc:date>
    </item>
    <item>
      <title>Re: Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2123808#M34578</link>
      <description>&lt;P&gt;Dear &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/231807"&gt;@Habib_MS&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Sorry for my late reply.&lt;/P&gt;&lt;P&gt;As you have pointed out, we are also not sure how cache is intervening when we use TCM with cores. But, we set memory region as cacheable in '&lt;FONT color="#000000"&gt;&lt;FONT face="Consolas, serif"&gt;&lt;SPAN&gt;BOARD_ConfigMPU()&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/FONT&gt;'.&amp;nbsp; When we set memory region as non-cacheable, application execution time is much slower and when we set memory region as cacheable application execution is faster but data is not updated for both cores. The details of setting memory region is given below:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="GA154_0-1750926950357.png" style="width: 400px;"&gt;&lt;img src="https://community.nxp.com/t5/image/serverpage/image-id/344804iC62E04F1B9142545/image-size/medium?v=v2&amp;amp;px=400" role="button" title="GA154_0-1750926950357.png" alt="GA154_0-1750926950357.png" /&gt;&lt;span class="lia-inline-image-caption" onclick="event.preventDefault();"&gt;GA154_0-1750926950357.png&lt;/span&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;Hence, We ere seeking support for memory region configuration from NXP Community for faster execution and data updation for both cores.&lt;/P&gt;&lt;P&gt;Now we are left with running the entire logic on core M7 rather than running partly on core M7 and party on core M4.&lt;/P&gt;&lt;P&gt;Running the entire logic on core M7 is faster than running on two cores (theoretically should be faster than single core as processing logic is offloaded to M4 from M7).&lt;/P&gt;&lt;P&gt;Please do the needful.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;GA154&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 26 Jun 2025 08:47:24 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2123808#M34578</guid>
      <dc:creator>GA154</dc:creator>
      <dc:date>2025-06-26T08:47:24Z</dc:date>
    </item>
    <item>
      <title>Re: Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2124987#M34590</link>
      <description>&lt;P&gt;Hello&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/250815"&gt;@GA154&lt;/a&gt;,&lt;BR /&gt;Regarding your comments:&lt;BR /&gt;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt;&lt;EM&gt;As you have pointed out, we are also not sure how cache is intervening when we use TCM with cores. But we set memory region as cacheable in 'BOARD_ConfigMPU()'.&lt;/EM&gt;&lt;/FONT&gt; &lt;BR /&gt;This parameter is present as it is required by the API, even if it does not affect TCM behavior.&amp;nbsp;&lt;SPAN data-teams="true"&gt;As it is ignored by the hardware (mentioned in my previous post) it does not have an impact.&amp;nbsp;&lt;BR /&gt;&lt;FONT color="#0000FF"&gt;&lt;EM&gt;When we set memory region as non-cacheable, application execution time is much slower and when we set memory region as cacheable application execution is faster, but data is not updated for both cores.&amp;nbsp;&lt;/EM&gt;&lt;/FONT&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;
&lt;P&gt;When memory is marked as non-cacheable, the processor must fetch data directly from external memory, which is significantly slower than accessing data from the cache. In contrast, cacheable memory allows the processor to store frequently accessed data in its local cache, which is much faster due to its proximity to the core.&lt;/P&gt;
&lt;P&gt;However, cache memory is private to each core and not visible to others. This means that if multiple cores need to share data, using cacheable memory can lead to inconsistencies, since one core's cache may not reflect the most recent changes made by another.&amp;nbsp;&lt;BR /&gt;BR&lt;BR /&gt;Habib&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Fri, 27 Jun 2025 21:02:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2124987#M34590</guid>
      <dc:creator>Habib_MS</dc:creator>
      <dc:date>2025-06-27T21:02:49Z</dc:date>
    </item>
    <item>
      <title>Re: Shared memory data update in ALIAS region between M7 and M4</title>
      <link>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2125120#M34593</link>
      <description>&lt;P&gt;Hi&amp;nbsp;&lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/231807"&gt;@Habib_MS&lt;/a&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you for your quick reply.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Your comment:&amp;nbsp;&lt;FONT color="#0000FF"&gt;&lt;SPAN&gt;"However, cache memory is private to each core and not visible to others. This means that if multiple cores need to share data, using cacheable memory can lead to inconsistencies, since one core's cache may not reflect the most recent changes made by another."&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;Yes. This makes data inconsistency between two core with shared region.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;Hence, now we have left with the choice of running the entire logic on core M7.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;Thank you for support.&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;Regards,&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT color="#000000"&gt;&lt;SPAN&gt;GA154&lt;/SPAN&gt;&lt;/FONT&gt;&lt;/P&gt;</description>
      <pubDate>Sun, 29 Jun 2025 05:33:45 GMT</pubDate>
      <guid>https://community.nxp.com/t5/i-MX-RT-Crossover-MCUs/Shared-memory-data-update-in-ALIAS-region-between-M7-and-M4/m-p/2125120#M34593</guid>
      <dc:creator>GA154</dc:creator>
      <dc:date>2025-06-29T05:33:45Z</dc:date>
    </item>
  </channel>
</rss>

