¡Ú£±£®±â´É¾ÈÀü PMIC (w/MTCI) https://onefieldjira.renesas.com/browse/REKR_MOBIS-597 ¡ÛPMIC Á¦¾î À§ÇÑ I2C Åë½Å ñé End Notification ¹Ì È£Ãâ¿¡ µû¸¥ ¼öÇà ¸ØÃã (6/187/18) ?¸ðºñ½º ÀÚü Workaround ·Î Spinlock Àû¿ë ÈÄ ÀçÇö ¾ÈµÊ ?Aging ÇÏ¿© ¸ð´ÏÅ͸µ ñé (7/1) ¡Û¸£³×»ç½º¿Í ÇÕµ¿ Á¡°Ë (7/1) ?¹®Á¦ ¹ß»ý ½Ã ƯÁ¤ ·¹Áö½ºÅÍÀÇ »óŰªÀÌ º¯°æµÇÁö ¾ÊÀ½ ¡æ ¸£³×»ç½º º»»ç¿¡ ¹®ÀÇ ñé ?7/11 ¸£³×»ç½º ´äº¯ÀÌ ´Þ·ÈÀ¸³ª ¹®Á¦µÇ´Â ·¹Áö½ºÅÍ¿¡ ´ëÇÑ ³»¿ëÀÌ ¾Æ´Ï¾î¼­ 7/14¿¡ ·¹Áö½ºÅÍ¿¡ ´ëÇÑ Á¤º¸ Àç¿äû > Mobis¿Í ÇÕµ¿ Á¡°Ë ´ç½Ã, I2C Çϵå¿þ¾î ȸ·Îµµ ÀÌ»ó À¯¹« È®ÀÎ, I2C ¿ì¼±¼øÀ§ º¯°æ, I2C Ŭ·° º¯°æ, ±×¸®°í I2C ÇÔ¼öÀÇ ¸®Åϰª È®ÀÎ µîÀ» ÁøÇàÇÏ¿´À¸³ª, º°´Ù¸¥ ¹®Á¦´Â ¹ß°ßµÇÁö ¾Ê¾Ò½À´Ï´Ù. > ÀÌ¿¡ ¹®Á¦ ¹ß»ý ½Ã¿Í Á¤»ó µ¿ÀÛ ½ÃÀÇ ·¹Áö½ºÅÍ °ªÀ» ´ýÇÁÇÏ¿© Jira(https://onefieldjira.renesas.com/browse/REKR_MOBIS-597))¸¦ ÅëÇØ º»»ç¿¡ ¹®ÀÇÇÏ¿´À¸³ª, ¾ÆÁ÷ ȸ½ÅÀ» ¹ÞÁö ¸øÇÑ »óÅÂÀÔ´Ï´Ù. ¿Ö ¹ß»ýÇÏÁö? Ŭ·°°ú µ¥ÀÌÅͰ¡ 2°³ ¾øÀ½. ¼Ò½ÇµÇ´Â °Í °°À½. ³ëÀÌÁî ¶§¹®Àϱî? ÇÊÅ͸¦ ´Ù´Â °ÍÀº °¡´ÉÇѰ¡? ÀÎÅÍ·´Æ®´Â ¿Ö ¹ß»ýÇÏ´Â °ÅÁö? >·¹Áö½ºÅÍ ºÐ¼® >ȸÇǹæ¹ýÀº? ¸®¼ÂÇÏ¸é ¹¹°¡ ¸®¼ÂÀÌ µÇÁö? > ·Îµå ÁÙ¿©¼­ TestÇØº¸±â > ´Ù¸¥ I2C µð¹ÙÀ̽º¿Í Åë½Å ÇØº¸±â ¹»Çß´ÂÁö ³²°ÜµÎ±â ¸®¼Â ÇÔ¼ö·Î ÃʱâÈ­ ÇØµµ ¿Ö ·¹Áö½ºÅͰ¡ ¸®¼Â µÇÁö ¾ÊÁö? ·¹Áö½ºÅÍ ¸®¼Â ÇÏ´Â ¹æ¹ýÀÌ ¾øÀ» ±î? µð¹ö±ë ¸ðºñ½º ½ºÅγª´Â ¹ÙÀ̳ʸ® ³Ö¾î¼­ È®ÀÎÇØº¸±â. ¿Ö PMIC¿Í I2C Åë½ÅÇÏ¸é »»¾î ¹ö¸®³Ä? PMIC I2C »ç¾çÈ®ÀÎÇØº¸±â ¹º°¡ PMIC¿¡¼­ Àâ°í Àִµí 1.2 SM 6.10 Unintended Interrupt Check Ç׸ñ Å×½ºÆ® Áß ÀÎÅÍ·´Æ® °ªÀÌ Ç×»ó 1023À¸·Î ÀÐÇô ¸£³×»ç½º ÄÚ¸®¾Æ¿¡ ¹®ÀÇ ¿äû(7/11) - https://onefieldjira.renesas.com/browse/REKR_MOBIS-694 º» °ÇÀº ±ÝÀÏ Mobis Àεµ ÆÀ°úÀÇ PMIC Á¤·Êȸ¿¡¼­µµ ¾ð±ÞÀÌ ÀÖ¾ú½À´Ï´Ù. º»»çÀÇ Support°¡ ÇÊ¿äÇÏ´Ù°í ÆÇ´ÜµÇ¾î Jiraµî·ÏÀ» Mobis ÀεµÆÀ¿¡ ¿äû Çß½À´Ï´Ù. > Mobis ÀεµÆÀ¿¡¼­ ÀÚüÀûÀ¸·Î CloseÇÏ¿´½À´Ï´Ù. £²£®I2C Frequency, Duty Á¶Àý À§ÇÑ ¼³Á¤ °¡ÀÌµå ¿äû(7/10) ¡Û365kHz, 25% ¡æ 400kHz, 50%·Î ¼öÁ¤ ÇÊ¿ä ÀúÈñ°¡ º¸À¯ÇÑ Mobis º¸µå·Î Å×½ºÆ®ÇÑ °á°ú Duty°¡ 50%·Î Á¤»óÀûÀ¸·Î È®ÀεǾî, ÀǽɵǴ ºÎºÐ¿¡ ´ëÇØ Ãß°¡·Î Á¡°ËÇØ ´Þ¶ó°í ÀÛÀÏ Mobis¿¡ ¿äûÇÏ¿´½À´Ï´Ù. > Mobis¿¡¼­ ÀçÈ®ÀÎÇÑ °á°ú ¹®Á¦ ¾øÀ½. ¡Ú£³£®Global timestamp ÆÐÄ¡ ¿äû(7/14) ÀúÈñ´Â A-Core(Linux)¿ë Timestamp »ùÇà Äڵ带 º¸À¯Çϰí ÀÖÀ¸¸ç, À̸¦ ¸ðºñ½º¿¡ Àü´ÞÇÏ¿´½À´Ï´Ù. (https://onefieldjira.renesas.com/browse/REKR_MOBIS-686) ÇØ´ç »ùÇà ÄÚµå´Â GHS RH850 ÄÄÆÄÀÏ·¯(ICUMX IPL)¿Í GCC ARM 10.3 ÄÄÆÄÀÏ·¯(CR5 ÄÚ¾î¿Í CA ÄÚ¾î ¸ðµÎ)¿¡¼­ ºôµå°¡ µÇ´Â °ÍÀ» È®ÀÎ ÇÏ¿´½À´Ï´Ù. ÀÌ¿¡ ¸ðºñ½º°¡ Autosar R-Core ȯ°æ¿¡ ¸Â°Ô ÇØ´ç Äڵ带 ¼öÁ¤ÇÏ¿© ºôµåÇØ¾ß ÇÕ´Ï´Ù. > Mobis¿¡¼­ ¼öÁ¤Áß ¡Ú4. Safety Mechanism SAN Âü°íÇØ¼­ ¿¹¸¦ µé¾î Unintended Interrupt Check À϶§ ¾î¶»°Ô ¼³Á¤ÇÏ°í ¾î¶² ÀÎÅÍ·´Æ®°¡ ¶ß´ÂÁö ¼ÒÇÁÆ®¿þ¾î¾îÀûÀ¸·Î ºÐ¼®ÀÌ ÇÊ¿ä. PG ¿äû »çÇ× °í°´Àº CR52-Core¿¡¼­ ÀϺΠSafety MechanismÀ» ±¸ÇöÇÏ·Á°íÇÑ´Ù. °í°´ÀÎ Âü°íÇÒ ¼ö ÀÖ´Â °¡À̵尡 ÇÊ¿äÇÏ´Ù. CR52-Core Safety Sample Code ¹× °ü·Ã ÀڷḦ ¿äûÇÑ´Ù. AI Post Build TimeÀÌ ¾î¶² ÀǹÌÀÎÁö È®ÀÎ ECM(¿¡·¯ Á¦¾î ¸ðµâ)°ú ¿¬µ¿ÇÏ¿© ¡®6.10 Unintended Interrupt Check¡¯¸¦ ¼öÇàÇÒ °æ¿ì, ÇÊ¿äÇÑ ¼³Á¤ »çÇ×°ú ÀÎÅÍ·´Æ® µîÀÇ ¾Ë¸² ¹æ½ÄÀÌ ¾î¶»°Ô µÇ´ÂÁö È®ÀÎ sob san 6¿¡ ¾Ò´Â °Ç ¾î¶² api¿¡¼­ ¾î¶² ¸®ÅÏÀ» ¹Þ´ÂÁö. È®ÀÎ ¼ÒÇÁÆ®¿þ¾î À妽Ì. ¼ÒÇÁÆ®¿þ Àü´Þ ÆÐ½º´Â ¾î¶»°Ô µÇ´ÂÁö. ecm ÄÁÆ®·Ñ ÇÏ´Â °Í ¼ÒÇÁÆ®À§¾î ¾ÆÅ°ÅØÃ³ È®ÀÎ Â÷ÁÖ±îÁö. Summary £±£®±â´É¾ÈÀü PMIC °ü·Ã 1.1 I2C Åë½Å Error°Ç ÇöÀç PG·ÎºÎÅÍ Jira ¹®ÀÇ¿¡ ´ëÇÑ È¸½ÅÀ» ±â´Ù¸®°í ÀÖÀ¸¸ç, Á¶¸íÁ¦ ¿¬±¸¿ø°ú ÇÔ²² ÇØ´ç ¹®Á¦¸¦ ÃÖ¿ì¼±À¸·Î µð¹ö±ëÇϰí ÀÖ½À´Ï´Ù. 1.2 SM 6.10 Unintended Interrupt Check Ç׸ñ Å×½ºÆ® Áß ÀÎÅÍ·´Æ® °ªÀÌ Ç×»ó 1023 ÀÐÈû°Ç Mobis Àεµ ÆÀÀÌ Jira µî·ÏÀ» ¿Ï·áÇÏ¿´À¸³ª, ÀÌÈÄ ÇØ´ç À̽´¸¦ Mobis ÀÚüÀûÀ¸·Î Á¾·á(Close) ó¸®ÇÏ¿´½À´Ï´Ù. £²£®I2C Frequency, Duty Á¶Àý À§ÇÑ ¼³Á¤ °¡ÀÌµå ¿äû °Ç (365kHz, 25% ¡æ 400kHz, 50%·Î ¼öÁ¤ ÇÊ¿ä) ÀúÈñ°¡ º¸À¯ÇÑ Mobis º¸µå·Î Å×½ºÆ®ÇÑ °á°ú, µàƼ(Duty)°¡ 50%·Î Á¤»óÀûÀ¸·Î È®ÀεǾî, ÀǽɵǴ ºÎºÐ¿¡ ´ëÇØ Ãß°¡ Á¡°ËÀ» ¿äûÇÏ¿´À¸¸ç ÇöÀç Mobis¿¡¼­ È®ÀÎ ÁßÀÔ´Ï´Ù. Mobis°¡ Duty 50%·Î µ¿ÀÛÇÏ´Â °ÍÀ» È®ÀÎÇÔ(Close) £³£®Global timestamp ÆÐÄ¡ ¿äû(7/14) A-Core(Linux)¿ë ŸÀÓ½ºÅÆÇÁ »ùÇà Äڵ带 Mobis¿¡ Àü´ÞÇÏ¿´À¸¸ç, ÇöÀç Mobis¿¡¼­ R-Core ȯ°æ¿¡ ¸Â°Ô ÇØ´ç Äڵ带 ¼öÁ¤ ÁßÀÔ´Ï´Ù. ¡Ú ¾Æ·¡ ³»¿ëÀº UpdateÇÏÁö ¾Ê¾Æµµ µÊ. ¼ö¿äÀÏ 13½Ã ÀÌÁ¤¿ø ½ÇÀå´Ô, PRK3 TMM material MCU Issue ¹ßÇ¥ ³»¿ë. ÀúÈñ°¡ ´ëÀÀÇÏ´Â ¿ì¼± ¼øÀ§º°·Î CR-Core Issue¸¦ ¸®½ºÆ® ¾÷ÇÑ °ÍÀÔ´Ï´Ù. 1. CR-Core°¡ PMIC¿Í I2C Åë½ÅÇϴµ¥ ·£´ýÇÏ°Ô I2C ¿Ï·á ÀÎÅÍ·´Æ®°¡ ¹ß»ýÇÏÁö ¾Ê´Â °Ç ÀÔ´Ï´Ù. ¾ÕÀ¸·Î ¾î¶² È®ÀÎÀ» ÇÒ²«Áö ¹®Á¦ ¹ß»ýÇßÀ» ¶§¿Í ÇÏÁö ¾Ê¾ÒÀ»¶§ÀÇ Register ´ýÇÁ ºñ±³ ºÐ¼® I2C H/W »ç¾çÈ®ÀÎ ¾î¶² Test¸¦ Çß´ÂÁö 1. I2C ä³Î 5ÀÇ ÀÎÅÍ·´Æ® ¿ì¼±¼øÀ§´Â ÃÖ°í ¼öÁØÀ¸·Î ¼³Á¤µÇ¾úÁö¸¸, ¹®Á¦°¡ °è¼Ó ¹ß»ýÇϰí ÀÖ½À´Ï´Ù. 2. CddIic_Ch5Write ¹× CddIic_Ch5Read ÇÔ¼öÀÇ ¹Ýȯ°ªÀº ¸ðµÎ RTE_E_OK·Î, ÇÔ¼ö È£Ãâ ÀÚü¿¡´Â ¹®Á¦°¡ ¾øÀ½À» ³ªÅ¸³À´Ï´Ù. 3. ¿¬°áµÈ I2C µð¹ÙÀ̽º´Â PMIC IC¿Í VDD Àü¿ø Á¦¾î ICÀ̸ç, VDD Àü¿ø Á¦¾î IC ÂÊÀÇ I2C ¶óÀÎÀ» ¿ÀÇÂÇØ µÐ »óÅ¿¡¼­µµ ¹®Á¦°¡ ¿©ÀüÈ÷ ¹ß»ýÇÕ´Ï´Ù. 4. I2C Åë½Å ¼Óµµ¸¦ 400 kbps¿¡¼­ 200 kbps·Î ³·Ãß¾úÁö¸¸, ¹®Á¦´Â ÇØ°áµÇÁö ¾Ê¾Ò½À´Ï´Ù. 2. Global timestamp°Ç ¸ñÀû: AP-Core¿¡µµ ±¸ÇöµÇ¾î ÀÖ½À´Ï´Ù¸¸, CR52 ÄÚ¾î¿Í A76 Äھ Global timestamp ¸¦ °øÀ¯ÇϰíÀÚ CR-Core¿¡µµ »ç¿ëÇÒ ¼ö ÀÖ°Ô ÆÐÄ¡¸¦ ¿äûÇÑ °Ç. È®ÀÎ °á°ú timestamp´Â AP-CoreÂʸ¸ Sample Code°¡ ÀÖ¾ú°í CR-Core¿¡¼­ »ç¿ëÇÒ ¼ö ÀÖ°Ô²û º°µµÀÇ ÆÐÄ¡´Â ¾ø¾ú½À´Ï´Ù. ÇÏÁö¸¸ Linuxȯ°æ¿¡¼­ CR-Core¿Í CA-Core ¸ðµÎ ¹®Á¦ ¾øÀÌ ÄÄÆÄÀÏ µÇ´Â Sample Code¸¦ Àü´Þ ÇßÀ¸¸ç, ¿ÀÅä»çBSW°³¹ßÆÀ Á¶¸íÁ¦ ¿¬±¸¿øÀÌ À©µµ¿ì Autosar ȯ°æ¿¡¼­ ÄÄÆÄÀÏ µÇ°Ô²û ¼öÁ¤Çϰí ÀÖ½À´Ï´Ù. > º»»ç Ä¿¸ÇÆ® > ÀÌ ¼Ò½º ÄÚµå´Â ICUMX IPL¿ë GHS RH850 ÄÄÆÄÀÏ·¯¿Í CR52 ÄÚ¾î ¹× CA ÄÚ¾î¿ë GCC ARM 10.3 ÄÄÆÄÀÏ·¯¸¦ ¸ðµÎ »ç¿ëÇÏ¿© ÄÄÆÄÀÏÇß½À´Ï´Ù. > Á¦ ÀÛ¾÷ ȯ°æÀº LinuxÀÌÁö¸¸ Windows ȯ°æ¿¡¼­ ÄÄÆÄÀÏÇØµµ ¾Æ¹«·± ¹®Á¦°¡ ¾ø½À´Ï´Ù. 3. ¼¼ÀÌÇÁƼ ¸ÞÄ«´ÏÁò¿¡¼­ ÀÎÅÍ·´Æ® °ªÀÌ Ç×»ó µ¿ÀÏÇÏ°Ô ¹ßÇàÇÏ´Â °Ç 4. I2C Duty ¼³Á¤°Ç ¡Ú Áغñ¹° ¸ÖƼÅÇ »ì¸®, Power Tr32 º¸µå. ºñ±Û ¿¬±¸¿ø´Ô ¾ø´Âµ¿¾È ´©±¸ÇÑÅ× ¹æ¹®µî·Ï ½ÅûÇÒÁö È®ÀÎ 0.À¥¹ÌÆÃ : ºÒ°¡ 1. ºôµå ¹æ¹ý -> BWW_RTE¿¡¼­ ¿ìŬ¸¯ -> Open Terminal -> .\Build.bat RS4 NONE NONE OutÆú´õ¿¡ ÆÄÀϵéÀÌ »ý¼ºµÊ - ¿ÍÄ¡µ¶ ÄÚµå È®ÀÎ -> ÀεµÆÀÀ¸·Î ºÎÅÍ ¹Þ¾Æ¾ßÇÔ. - I2C ½ºÅÎ ÄÚµå À̰͸¸ ºÐ¼® °¡´É. CtCdSDL.c 2. Binary Write ¹æ¹ý -> Terraterm TTL ½ÇÇà 3. Tr32 ¿¬°á¹æ¹ý -> Cµå¶óÀ̺꿡 T32_V4H_202406 ->Bin -> Win64->t32start.exe 4. º¤ÅÍ ToolÀº USB ¶óÀ̼¾½º µ¿±Û ÇÊ¿ä. ÀçÇöÈ®ÀÎÈÄ º£Æ®³² ¿äû »çÇ× 1. work-around - ¸®Åϰª OKÀÎÁö È®ÀÎÈÄ ÁøÇà >https://teams.microsoft.com/l/meetingrecap?driveId=b%211Ktorb39oEaU7AGlmVVBuSfS_Kik4l9IpyahL7k8C9l96WPy5vpnTqNa_XPG_ZSR&driveItemId=01ELYJII2JVXYZCIVS7BAKX3H4T5WDBCJQ&sitePath=https%3A%2F%2Frenesasgroup-my.sharepoint.com%2F%3Av%3A%2Fg%2Fpersonal%2Fwoody_jang_xc_renesas_com%2FEUmt8ZEisvhAq-z8n2wwiTABcW6An7HFaI4r1Ro3RilWeg&fileUrl=https%3A%2F%2Frenesasgroup-my.sharepoint.com%2Fpersonal%2Fwoody_jang_xc_renesas_com%2FDocuments%2FRecordings%2FLuis%2520Kim%2520%25EB%258B%2598%25EA%25B3%25BC%2520%25ED%2586%25B5%25ED%2599%2594-20250814_181815-%25EB%25AA%25A8%25EC%259E%2584%2520%25EB%2585%25B9%25EC%259D%258C%25EB%2585%25B9%25ED%2599%2594.mp4%3Fweb%3D1&threadId=19%3A3a29c45c-eca8-4c42-b896-b55901017294_d53fa3a3-f232-4b71-8005-843b42ba969f%40unq.gbl.spaces&callId=e63b625a-db6e-4147-8fb9-575d11409401&threadType=OneOnOneChat&meetingType=Unknown&subType=RecapSharingLink_RecapCore DDR ¸Þ¸ð¸® ¼³Á¤ °í°´Àº MPU ¼³Á¤¿¡ Èûµé¾î Çϰí ÀÖ´Ù. Ȥ½Ã ¿ì¸®´Â MPU ¼³Á¤ÇÏ´Â ¿¹Á¦°¡ Àִ°¡? The customer is having trouble setting up the MPU(memory protection unit). Do you have any examples of setting up the MPU? ÀçÇö »óÅÂÈ®ÀÎ º¹±¸ ÇÒ ¼ö ÀÖ´Â ¹æ¹ý º£Æ®³² ÄÚµå Test ÀÎÅÍ·´Æ® ¼³Á¤ÀÌ Àß µÇ¾ú´ÂÁö È®ÀÎ Write 2¹ø Test MCAL ÂÊ¿¡¼­ ÃʱâÈ­ ÇÏ´Â °ÍÀÌ ÀÖ´ÂÁö È®ÀÎ 1. ·¹º§ -> º¹±Í°¡ µÊ. 2. ÃʱâÈ­°ª -> ¸ðµâÀÌ ¸®¼Â µÇ´Â °Í °°´Ù. 3. ÀÎÅÍ·´Æ® µð¼¼À̺í -> OS°¡ ¸ØÃ㠰ɸ®´Â µí. Á¤¸®Çؼ­ ¸ÞÀÏ·Î º¸°í. RV-VRAM MPU¼³Á¤ ¸Þ¸ð¸® °ü¸® ¹æ¹ý RCar ¸Þ¸ð¸®±¸Á¶(RAM(DRAM, SRAM)) ¹× ¼³Á¤¹æ¹ý CR-Core's Startup ¸Å¼Òµå ¸ÖƼÄÚ¾î»ç¿ëÇϴµ¥ ÀÖ¾î, CR-Core Boot(Core0, Core1, Core2) & ¸Þ¸ð¸® ¼³Á¤¹æ¹ýÀ» ±³À°¿¡ Æ÷ÇÔÇØ ÁÙ¼ö ÀÖ°Ú¾î? ¾È³çÇϼ¼¿ä. Àå½ÂÇõÀÔ´Ï´Ù. I2C Stuck°ÇÀ¸·Î ±ÝÀÏ µð¹ö±ëÇÑ ³»¿ëÀ» ȸ½Å µå¸³´Ï´Ù. Test ȯ°æ : CR-Core(Core0, Core2)¿Í CA-Core°¡ µ¿ÀÛÇÔ »ç¿ë Binary : 2025-07-22¸ÞÀÏÀÇ 20250703IPL.zip, ADASPRK3.srec(NotePC¿¡ ¼Â¾÷µÈ CR-Core S/W) Case 1. ¿§Áö ¹æ½Ä¿¡¼­ ·¹º§¹æ½ÄÀ¸·Î º¯°æ¼³Á¤ È®ÀÎ. -> Áõ»óÀÌ ÁÙ¾îµå´Â °ÍÀ» È®ÀÎÇÔ Case 2. OS-Stuck -> ºÐ¼® ºÒ°¡ Case 3. ¿ÜºÎ¿äÀÎÀ¸·Î I2C ModuleÀÌ ÃʱâÈ­°¡µÊ -> ºÐ¼® ºÒ°¡ ¸ðºñ½º¿¡¼­ Core0À¸·Î ±â´ÉÀ» À̰ü ¿Ï·áÈÄ ÃßÀÌ È®ÀÎ ¸ðºñ½º¿¡¼­ ½Ì±ÛÄÚ¾î·Î I2C StuckÀº ¹ß»ýÇÏÁö ¾Ê´Â´Ù°í ÀεµÆÀµµ È®ÀÎÇß°í ÄÚ¸®¾ÆÆÀµµ È®ÀÎÇß´Ù. Multi ÄÚ¾î ¼³Á¤ÀÌ À߾ȵǰí ÀÖ´Ù. Â÷ÈÄ È®ÀÎ »çÇ×Àº ¾Æ·¡ ºÎºÐ RTVAM ¾ó¶óÀÎ 256? 32Àΰ¡ 8 Àΰ¡ Sca.ÆÄÀÏ ºÐ¼® Gen4_R-Car ºó ¸ÖƼÄÚ¾î ¸Þ¸ð¸® ÂÊ °ËÅ並 ÇØ´Þ¶ó. º£Æ®³²¿¡ ¿äóÇÑ »çÇ× V4H internal memory structure ( ex: RT-VRAM ) RT-VRAM use case for multi CR-core usage How set up MPU for multi CR-core use case Spinlock for multi CR-core use case( ex: SPI/GPT/watchdog ) When using system RAM as share memory(non-cached), how guarantee access order °í°´ÀÇ ÇÊ¿äÇÑ ³»¿ë. (1) booting issue with multi CR core usage case (2) I2C stuck issue with multi CR core use case ¸ÖƼÄÚ¾î ¼³Á¤Àº ¾î¶»°Ô Çϴ°¡ °¢ ÄÚ¾î ¸Þ¸ð¸® ¼³Á¤Àº? 1. Shared Memory ¼³Á¤? 2. °¢ Coreº°·Î »ç¿ëÇÏ´Â ¸Þ¸ð¸®¸¦ ¼³Á¤ 2¹ø¿¡ normal non-cacheable ÀÏ µí Çѵ¥. RT-VRAM/DRAM/RT-SRAM? 5Â÷ º¸µå ¹ÞÀ» ¼ö ÀÖ´ÂÁö ±èÁ¤¼ö Ã¥ÀÓ´Ô.¿¡°Ô ¹®ÀÇ 20250827 Multi Core Boot Fail ȯ°æ MCU (CR0~2) ¸ÖƼÄÚ¾î »ç¿ë¿¡ ÀÖ¾î, °¢ ÄÚ¾îÀÇ MPU (Memory Protection Unit)¼³Á¤¿¡ ´ëÇØ ¹®Àǵ帳´Ï´Ù. CR0~2ÀÇ ÄÚ¾îµéÀº AUTOSAR ±â¹ÝÀ¸·Î µ¿ÀÛÇϸç, À̹ÌÁö´Â ÇϳªÀÔ´Ï´Ù. ¶ÇÇÑ ÄÚµå/µ¥ÀÌÅÍ´Â ¸ðµÎ DDR ¸Þ¸ð¸®¿¡ ·Îµå µÇ¾î µ¿ÀÛÇÕ´Ï´Ù. °¢ ÄÚ¾îÀÇ AUTOSAR °£ SHARED MEMORY ´Â System RAM À» ÀÌ¿ëÇÕ´Ï´Ù. ÇöÀç ºÎÆÃ ½Ã prefect abort µî exceptionÀÌ ¹ß»ýÇÕ´Ï´Ù. ÀÌ´Â mpu ¼³Á¤ÀÌ Àß ¼³Á¤µÇÁö ¾Ê¾Æ¼­ ÀÏ µí ÇÕ´Ï´Ù. Arm Cortex R52 ÄÚ¾îÀÇ µ¿ÀÛ¿¡ ¸Â´Â ¼³Á¤ÀÌ ÇÊ¿äÇØ º¸ÀÔ´Ï´Ù. ƯÈ÷ DDR ¸Þ¸ð¸®´Â RT-VRAM1 ÀÇ Extended ¸ðµå·Î Á¢±ÙÇÕ´Ï´Ù. ÀÌÁß Ä³½Ã·Î º¸¿©Áö´Âµ¥ ÀÌÀÇ °æ¿ì, ¾î¶»°Ô MPU¸¦ ¼³Á¤Çϸé ÁÁÀ» Áö ¹®Àǵ帳´Ï´Ù. CR0~2ÀÇ ÄÚ¾îµéÀº AUTOSAR ±â¹ÝÀ¸·Î µ¿ÀÛÇϸç, À̹ÌÁö´Â Çϳª ÄÚµå/µ¥ÀÌÅÍ´Â ¸ðµÎ DDR ¸Þ¸ð¸®(RT-VRAM1 ÀÇ Extended ¸ðµå)¿¡ ·Îµå System RAMÀ» SHARED MEMORY·Î »ç¿ë ÇöÀç ºÎÆÃ ½Ã prefect abort µî exceptionÀÌ ¹ß»ý MPU ¼³Á¤ÀÌ Single Core¿ë ȤÀº Multi Core¿ë ¼³Á¤ÀÌ ÀÖÀ»Áö ¸ð¸£°ÚÀ¸³ª MPU¼³Á¤ÀÌ Àß µÇ´Ï ¾Ê¾Æ ¹ß»ýÇÏ´Â ¹®Á¦·Î ÃßÁ¤ MCU ÆÄÆ® AP ÆÄÆ® °¢°¢ °³¹ßÀ» ½ÃÀÛ MCU C0 -> »ç¿ë. C2 Á¡ÇÁ¶Ù¸é¼­ ·Î »ç¿ë. C1 -> Á¶¿ëÀÏ Ã¥ÀÓÀÌ »ç¿ëÇÑ´Ù°í ÇÔ. C2 -> C0 ÀÌÈÄ »ç¿ë. C0 -> Á¤»ó C1 -> Abort, ¿¹¿Ü·Î ºüÁü. ±×¸®°í °µÀÌ ¸ØÃã C2-> Abort, ¿¹¿Ü·Î ºüÁü. ±×¸®°í °µÀÌ ¸ØÃã C0 only, C1, C2ÀÇ ÄÄÆ÷³ÍÆ®¸¦ C0À¸·Î ³ÖÀ½(3%·Î ¸ØÃã). -> C0°ú C2¸¦ »ç¿ëÇÏ´Â °ÍÀ¸·Î ¼³Á¤ÇÒ °ÍÀÓ. SC1±îÁö´Â µÇ¾ú´Âµ¥, SC3±îÁö´Â ¸ø°¨. ATCM, BTCM, CTCM. AP¸¦ Ű¸é °¡ÁßµÊ Iij½¬, Dij½¬. AP T»ç ÀÌ·ÂÀº. R5ÄÚ¾î strong order¸¦ »ç¿ëÇÔ.(¸Þ¸ð¸® ¼ø¼­¸¦ º¯°æÇÔ.) ¹éÅÍ´Â °¢°¢ À̹ÌÁö¸¦ ¿Ã·Á¼­ »ç¿ëÇÏ´Â °ÍÀ» ±ÇÀåÇÏÁö ¾ÊÀ½. ½¦¾îµå ¸Þ¸ð¸®´Â ÇÊ¿äÇÔ. MPU ¼³Á¤ IO ³»ºÎ ·¹Áö½ºÅÍ <- MCAL¿¡ start, asm 1. ½ºÅ¸Æ® ¿£µå ¾ó¶óÀÎÀÌ ¸Â´ÂÁö È®ÀÎÀÌ ÇÊ¿ä. 2. ÄÚ¾î Çϳª¸¸ ¼³Á¤Çϸé, ij½¬´Â ÀÚµ¿ ÇÒ´ç? ÄÚ¾î 3°³À̸é ÄÚ¾îÇϳª´ç »ç¿ëÇϴ ij½¬°¡ ÁÙ¾îµå³ª? RT-VRAM1 ·¥ÀÌ Ä³½¬·Î µÇ¸é¼­ RT-VRAM1 28M·Î È®Àå. 1M´Â ij½¬·Î »ç¿ë. ÀÌÁß Ä³½¬°¡ ¸Â³ª? RT-VRAM¼³Á¤ÀÌ ¸Â´Â°¡? EVB·Î ½Ì±ÛOK, NG, ¸ÖƼNG ÀÎ ¼Ò½º ÄÚµå ȯ°æÀ» ¹Þ±â. 2.ICMUX ·Îµå¿¡¼­ MPU ¼³Á¤À» Çϰí ÀÖÀ½. Boot ½ÃÄÁ½º È®ÀÎÀÌ ÇÊ¿ä. 0x80000000 MPU off ¿µ¿ªÀε¥, ¿©±â¼­ MPU ¼³Á¤À» »çÀü¿¡ ÇØ¾ß ÇÏÁö ¾ÊÀ» ±î? I2C ½ºÅÎ. 5Â÷ º¸µåÃß°¡ ¿äû. 1. ºÎÆÃ½ÃÄÁ½º, ¿ø·¡ °¡À̵å´Â? ¿ÀÅä»ç´Â ¾î´À ŸÀֿ̹¡ Á¡ÇÁ? MPU ¼³Á¤Àº ¾î´À ŸÀֿ̹¡? ÄÚµå ¿ÀÇÂ. EVB¿¡¼­ TestÈÄ È®ÀÎÈÄ ¸ØÃß´Â °ÍÀ» È®ÀÎÇϰí ÄÚµå Open 20250909 Boot ¼ø¼­ È®ÀÎ Core-1(IPL, Systemram) -> Core0(DDR) -> Core1(DDR)-> Core2(DDR) I-CashÇϰí DDR ¸Þ¸ð¸®ÇÏ°í ³»¿ëÀÌ ´Ù¸§. I-CashÀÇ ³»¿ëÀÌ ¾øÀ½. ÀÜ¿© À̽´: CR1/CR2¿¡¼­ °£ÇæÀûÀ¸·Î code jump area À̽´°¡ ÀÖÀ¸¸ç ÇØ´ç À̽´´Â 500ms ÀÌÇÏÀÇ on/off Å×½ºÆ®¿¡¼­ ¹ß»ýÇÏ¿©, ÀçÇö ȯ°æÀº Á¦°ø ¹ÞÀº »óȲÀÔ´Ï´Ù. 20250911: °á±¹ DRAM¿¡ µ¿½Ã Á¢±Ù ÇÏ¸é °¡Áö°í ¿À´Â Äھ ÀÖ°í ¸ø °¡Áö°í ¿À´Â Äھ ÀÖ´Ù. À̰ÍÀ» ÇØ°áÇØ¾ß ÇÒ ¹®Á¦´Ù. °í°´ÀÌ ±ÝÀϱîÁö ¹®Á¦¸¦ ºÐ¼®ÇÑ °á°ú, µÎ °³ÀÇ ÄÚ¾î(Core1, Core2)°¡ µ¿½Ã¿¡ DDR ³» µ¿ÀÏ ¿µ¿ª¿¡ Á¢±ÙÇÒ °æ¿ì, ƯÁ¤ ÄÚ¾î(Core1 ¶Ç´Â Core2)°¡ DDR¿¡ ÀÖ´Â ³»¿ëÀ» ÀÐÁö ¸øÇØ Error°¡ ¹ß»ýÇÏ´Â °ÍÀ¸·Î ÆÇ´ÜµÇ¾ú½À´Ï´Ù. Core0, Core1, Core2°¡ °°Àº Ŭ·¯½ºÅÍ Àΰ¡? MPU¼³Á¤ ÀÎ¾î ½¦¾î·¯ºí ¾Æ¿ôÆ® ½¦¾î·¯ºí? ¾î¶² ¼³Á¤À» ÇØ¾ßÇϴ°¡? Hello ºó ¸»¾¸ÇϽŵ¥·Î. Áö¶ó ƼÄÏÀ» »ý¼ºÇϰڴÙ. ±×¸®°í µÎ °¡Áö °£´ÜÇÑ Áú¹®À» ÇϰڴÙ. 1. AP ÄÚ¾î´Â Ŭ·¯½ºÅÍ·Î ±¸¼ºµÇ¾î ÀÖ´Â °ÍÀ» H/W Manual·Î È®ÀÎÇߴµ¥, CR ÄÚ¾î´Â ¾î¶»³Ä? Ŭ·¯½ºÅÍ·Î ±¸¼ºµÇ¾î Àִ°¡? 2. AXI ¹ö½º¸¦ ÅëÇØ DDR¿¡ Á¢±ÙÇϴµ¥ ÄÚ¾î 1°ú ÄÚ¾î2°¡ µ¿½Ã¿¡ AXI ¹ö½º¿¡ Á¢±ÙÇØ¼­ ¹®Á¦°¡ ¹ß»ýÇÏ´Â°Ô ¾Æ´Ï³Ä´Â °í°´ÀÇ ÀǰßÀÌ ÀÖ´Ù. CRÄÚ¾î´Â AXI ¹ö½º´Â µ¿½Ã¿¡ »ç¿ëÇÒ ¼ö Àִ°¡? 20250912: Multicore(CR-Core0, CR-Core1, CR-Core2) µ¿ÀÛÀ» ºê¸µ¾÷Çϰí ÀÖ´Â »ó¿¡¼­ ÄÚ¾î3°³¸¦ ¿þÀÌÅ©¾÷Çϰí OS°¡ ÃʱâÈ­ ÇÒ¶§, °¢ Äھ Àß ¿þÀÌÅ© ¾÷ Çß´ÂÁö ÄÚ¾îµéÀÌ ¼øÂ÷ÀûÀ¸·Î »óÈ£ ÀÎÅÍ·´Æ®¸¦ ÁÖ°í ¹Þ½À´Ï´Ù. À̶§ ÀÎÅÍ·´Æ®°¡ °ãÃļ­ ¹ß»ýÀ» Çϸé ÀÎÅÍ·´Æ® ó¸® ÇÏ´Â Äڵ带 µ¿½Ã¿¡ Á¢±Ù ÇÏ°Ô µÇ´Âµ¥ ¾î¶² ÄÚ¾î´Â ÀÎÅÍ·´Æ® ó¸® ÇÏ´Â Äڵ忡 Á¢±ÙÀ» ÇØ¼­ ¹®Á¦ ¾øÀÌ µ¿ÀÛÀ» Çϴµ¥ ¹ÝÇØ, ¾î¶² ÄÚ¾î´Â Á¢±ÙÀ» ¸øÇؼ­ ¿¡·¯°¡ ¹ß»ýÇÏ´Â ¹®Á¦ ÀÔ´Ï´Ù . °á±¹ OS ±¸µ¿½Ã¿¡ °¢ ÄÚ¾îµéÀÌ DDR Memory¿¡ µ¿½Ã Á¢±ÙÇßÀ» °æ¿ì ¹ß»ýÇÏ´Â ¹®Á¦. °¢ ÄÚ¾î¾îµéÀÌ ¼øÂ÷ÀûÀ¸·Î »óÈ£ ÀÎÅÍ·´Æ® ÁÖ°í ¹Þ´Â ºÎºÐ¿¡ ÀÖ¾î, ÀÎÅÍ·´Æ®°¡ °ãÃļ­ ¹ß»ýÇÏÁö ¾Êµµ·Ï µô·¹À̸¦ ³ÖÀ½. °í°´ÀÇ ¿äû»çÇ×, ÀÎÅÍ·´Æ®°¡ µ¿½Ã¿¡ ¹ß»ýÇÏ°í µ¿½Ã¿¡ ½ÇÇàµÉ °æ¿ì ȸÇÇÇÒ ¼ö ÀÖ´Â ¹æ¹ý. DDR Memory¿¡ µ¿½Ã Á¢±ÙÇßÀ» °æ¿ì ¹ß»ýÇÏ´Â ¹®Á¦¸¦ ȸÇÇÇÒ ¼ö ÀÖ´Â ¹æ¹ý. 1¸¶ÀÌÅ©·Î ¼¼ÄÁµå ±îÁö ½Ã°£ÀÌ °°À½. ´ë¾ÈÀ¸·Î watchdogÀÌ È°¼ºÈ­µÇ¸é booting failure ½Ã¿¡ ÀÚµ¿ rebootingµÇ¾î ¹®Á¦°¡ ¾ø´Ù´Â ÀǰßÀ̾ú½À´Ï´Ù. ATCM Àû¿ë ÈÄ, Ãß°¡ È®ÀÎÀÌ ÇÊ¿äÇÒ°ÍÀ¸·Î ¿¹»óµË´Ï´Ù. HS ¸ÞÀÏ ÀÚ·á ºÐ¼® Çö»óÈ®ÀÎ, T32·Î µð¹ö±ë Á¡ÆÛ ³¯·Á¼­ Àü¿øÇÏ°í °°ÀÌ º¸±â Jira-724: CRC È®ÀÎ µÇ¸é CloseÇØ ´Þ¶ó. Jira-725: I2c Á¡ÆÛ ´Þ¾Æ¼­ ÆúÆ®·¹Áö½ºÅÍ Àо, Jira¿¡ ´äº¯À» ÇϰڴÙ. Jira-726: ¿ÍÄ¡µ¶ ÈÄ Á¤Áö½Ã, SoC ¸®¼Â ½Ã±×³ÎÀº ¹ß»ýÇÏÁö¸¸ ¸®¼ÂÀÌ ¾ÈµÊ. È®ÀÎÇϰí Jira¿¡ ´äº¯À» ³²±â°Ú´Ù. 724¹ø Á¶¿¬±¸¿øÇÑÅ× »óȲ È®ÀÎ. 725¹ø Woody µð¹ö±ë ¡ÚAddress 0x117(TIMEOUT_SOCACTIVA_ST) : 125ms -> 250ms·Î º¯°æ] 0x117 ¸®µåÇØ¼­ °ªÀ» È®ÀÎÇϰí 5:6:7 bit°¡ 1:1:1 (0x07)ÀÌ 250ms·Î WriteÇÑ´ÙÀ½¿¡ ´Ù½Ã ¸®µåÇØ¼­ °ªÀ» È®ÀÎ read 0xC3(1100_0011) -> write 0xE3 ÆÄÇüÀ¸·Î È®ÀÎ ºÒ°¡ ATOSAR ºÎÆÃ 170ms°¡ ÇÊ¿äÇÔ. ¡Ú¿ÍÄ¡µ¶ ½ºÅ¾(µð¹ö°Å·Î ½ºÅ¾)ÇÏ°í ¸®½ºÅ¸Æ® ÇßÀ» ¶§ Á¤»óÀûÀ¸·Î µ¿ÀÛÇÏ´ÂÁö È®ÀÎ ¼ö¿äÀÏ ¿ÀÀü CR ÄÚ¾î Á×´Â °Íµµ È®ÀÎ ¼ö¿äÀÏ ¿ÀÈÄ ¸ðºñ½º ¹æ¹® [20251002] ¡Ú ÇÒÀÏ Windowsȯ°æ¿¡¼­ PMICÁ¦¾î - Read/Write Tool - ¿ÍÄ¡µ¶ ±¸Çö, 1. ICCOM °æ°ú È®ÀÎÇØº¸±â -> ¸ðºñ½º ³»ºÎÀûÀ¸·Î ¾ÆÁ÷ °áÁ¤µÈ °ÍÀÌ ¾ø¾î Áغñ¸¸ ÇØµÎ±â 2. ¸Þ¸ð¸® Ãæµ¹ ÀÇ°ß ¾ê±âÇϱâ -> ¸ðºñ½º Àεµ¿Í ¹®Á¦°¡ ´Ù¸£°í Çö»óµµ ´Ù¸£´Ù. ºü¸¥ ¼­Æ÷Æ®°¡ ÇÊ¿ä. °æ¿ì¿¡ µû¶ó¼­´Â ÃâÀåµµ ÇÊ¿ä MPU ¹®ÀǸ»°í, ´äº¯À» ÇØ¾ßÇÔ. -> H/W ÀûÀ¸·Î ¹®Á¦ ¾ø´Â°¡? -> ¿£Áö´Ï¾î ¾î»çÀÎÀÌ ÇÊ¿äÇÔ. ǰÁú¿¡¼­ ¹®Á¦°¡ µÊ. SC3¿Í´Â º°°³·Î º¸°í ÀÖ´Ù. ÇöÀç ¹»Çß°í ¾îµð±îÁö µð¹ö±ëÀÌ µÇ¾ú´ÂÁö °í°´»ç°¡ »óȲÁ¤¸®¸¦ ¿äûÇϰí ÀÖ´Ù ´äº¯À» ´Þ¶ó. 3. MCAL MCU ¼³Á¤ °ªÀÌ ¸Â´ÂÁö È®ÀÎ -> ÀÌ°Ç ³ªµµ È®ÀÎÀÌ ÇÊ¿ä. 4. CPG fusa ¸ð´ÏÅ͸µ °¡À̵å -> MTCI¿¡¼­ ÁøÇàÁß -> ¸ÞÀÏ ·çÇÁ¿¡ ÀÖÀ½ 5. PMIC ¿ÍÄ¡µ¶, SOC ¿¢Æ¼º£ÀÌ¼Ç Å¸ÀÓ PMIC »óÅ ¿¡·¯ ¶ô ¸®¼Â ÆúÆ® ¹ß»ýÇϸé, ¾Æ·¡Ã³·³ ÇØ°á °¡´É? ¼Ö·ç¼ÇÀ» ¿øÇÔ with src ¿ÍÄ¡µ¶ µð¼¼ÀÌºí ±â´ÉÀ» Çϰí -> ºÎÆÃ -> ¿ÍÄ¡µ¶ Àο¡ÀÌºí ¡Ú ÇöÀç ºÎÆÃ¹× ÆÄ¿ö À̽´´Â 10¿ù ¸»±îÁö ¸¶¹«¸®°¡ ÇÊ¿ä. »ùÇÃÀ» HKMC¿¡ º¸³¾¼ö°¡ ¾øÀ½.