NXP ¹ÝµµÃ¼(NXP Semiconductors)´Â ¿§Áö º¸¾ÈÀ» À§ÇÑ ¾÷°è ÃÖÃÊÀÇ ¸ÖƼÄÚ¾î ¼Ö·ç¼Ç 2Á¾À» Ãâ½ÃÇß´Ù. ÀÌ ¼Ö·ç¼ÇÀº °ÈµÈ º¸¾È ¼ºê½Ã½ºÅÛ°ú ¼ÒÇÁÆ®¿þ¾î¸¦ ¾ÈÀü ½ÇÇà ȯ°æ(SEE; secure execution environment)¿¡ ÅëÇÕÇØ ½Å·Ú¼º°ú °³ÀÎÁ¤º¸º¸È£, ±â¹Ð¼º ±âÁØÀ» ÇÑÃþ Çâ»ó½ÃŲ´Ù. »õ·Ó°Ô ¼±º¸ÀÌ´ÂCortex-M33 ±â¹Ý ¼Ö·ç¼ÇÀÎ LPC5500 ¸¶ÀÌÅ©·ÎÄÁÆ®·Ñ·¯¿Íi.MX RT600 Å©·Î½º¿À¹ö ÇÁ·Î¼¼¼´Â »õ·Î¿î º¸¾È ±â´É°ú ¿©·¯°¡Áö Ư¡ÀûÀÎ ±â´ÉÀ» Á¦°øÇÑ´Ù.
NXP´Â ÀÚ»çÀÇ º¸¾È Àü¹®¼º¿¡ ±â¹ÝÇØ ±¸ÃàÇÑ, ¾÷°è À¯ÀÏÀÇ ¸ÖƼ·¹À̾îµå(multi-layered) Çϵå¿þ¾î Áö¿ø º¸È£ ü°è¸¦ ¼±º¸ÀδÙ. ¹°¸®Àû ¹× ·±Å¸ÀÓ(run-time) º¸È£¿¡ ÇʼöÀûÀÎ ·¹À̾îµå º¸¾È ¹æ½ÄÀº ´ÙÀ½°ú °°Àº ±â´ÉÀ¸·Î ÀÓº£µðµå ½Ã½ºÅÛÀ» º¸È£ÇÑ´Ù.
• Çϵå¿þ¾î ±â¹ÝÀÇ º¯°æ ºÒ°¡ÇÑ RoT(root-of-trust) ¿ë º¸¾È ºÎÆÃ
• ÀÎÁõ ±â¹Ý º¸¾È µð¹ö±× ÀÎÁõ
• Áö¿¬½Ã°£ ¾ø´Â ½Ç½Ã°£ Çص¶ ±â´ÉÀ» °®Ãá ¾ÏÈ£ÈµÈ ¿ÂĨ Æß¿þ¾î ½ºÅ丮Áö
Armv8-M ¹× ¸Þ¸ð¸® º¸È£ ÀåÄ¡(MPU)¿ë Arm Æ®·¯½ºÆ®Á¸(TrustZone)ÀÇ Çâ»óµÈ Arm Cortex-M33À» È°¿ëÇÑ ÀÌµé ±â´ÉÀº ¸®¼Ò½º ¹× µ¥ÀÌÅÍ¿¡ ´ëÇÑ ±ÇÇÑ ±â¹Ý ¾×¼¼½º¸¦ À§ÇØ Çϵå¿þ¾î¿¡ ±â¹ÝÇÑ ¸Þ¸ð¸® ¸ÅÇÎµÈ °Ý¸®¸¦ Á¦°øÇϸç, ¹°¸®Àû ¹× ·±Å¸ÀÓ º¸È£¸¦ º¸ÀåÇÑ´Ù.
Á¦ÇÁ ¸®Áî(Geoff Lees) NXP ¸¶ÀÌÅ©·ÎÄÁÆ®·Ñ·¯ ¼ö¼® ºÎ»çÀå °â ÃÑ°ýÀº “»ç¹°ÀÎÅͳÝÀ» ÅëÇØ ¿¬°áµÈ ¼¼»óÀ» ±¸ÇöÇÏ°Ú´Ù´Â ¾à¼ÓÀº ´ë´ÜÇÑ °Í”À̶ó¸ç, “NXPÀÇ ½Éµµ ÀÖ´Â º¸¾È·ÇÁ·Î¼¼½Ì Àü¹®¼º°ú ¼ÒÇÁÆ®¿þ¾î »ýÅ°è, Æø ³ÐÀº Æ÷Æ®Æú¸®¿À¸¦ ÅëÇØ NXP´Â ¸ðµç °³¹ßÀڵ鿡 IoT º¸¾È¿¡ Çõ½ÅÀûÀÌ¸ç ¾×¼¼½º °¡´ÉÇÑ ¹ßÀü »çÇ×À» Á¦°øÇÒ ¼ö ÀÖ´Â µ¶º¸Àû ÀÔÁö¿Í ¿ª·®À» °®Ãß¾ú´Ù”°í ¸»Çß´Ù.
º¯°æ ºÒ°¡ÇÑ Çϵå¿þ¾î ‘RoT’¸¦ Çü¼ºÇϱâ À§ÇØ µð¹ÙÀ̽º °íÀ¯ Å°¸¦ »ç¿ëÇÏ´ÂNXPÀÇ ROM ±â¹Ý º¸¾È ºÎÆà ÇÁ·Î¼¼½º´Â µð¹ÙÀ̽º ½Å·Ú¼ºÀ» ±¸ÃàÇϱâ À§ÇÑ Ãʼ®ÀÌ´Ù. ÀÌ Å°´Â SRAM ºñÆ®¼¿ º»·¡ÀÇ ÀÚ¿¬Àû º¯ÇüÀ» »ç¿ëÇÏ´Â SRAM ±â¹Ý PUF(Physically Unclonable Function)¸¦ È°¿ëÇØ, ÇÊ¿äÇÒ ¶§ ·ÎÄÿ¡¼ »ý¼ºÇÒ ¼ö ÀÖ´Ù. ÀÌ´Â ÃÖÁ¾ »ç¿ëÀÚ¿Í OEM °£ Æó·çÇÁ(closed-loop) °Å·¡¸¦ °¡´ÉÄÉ ÇØ, º¸¾ÈÀÌ Ãë¾àÇÒ ¼ö Àִ ȯ°æ¿¡¼ Ÿ»ç Å°¸¦ ó¸®ÇØ¾ß ÇÏ´Â Çʿ伺ÀÌ ¾ø´Ù. ±âÁ¸ Ç»Áî ±â¹Ý ¹æ¹ýÀ» ÅëÇÑ Å° ÁÖÀÔÀº ¼±Åà »çÇ×ÀÌ´Ù.
¶ÇÇÑ NXPÀÇ SEE´Â SRAM PUFÀÇ Çõ½ÅÀûÀÎ »ç¿ëÀ¸·Î µð¹ÙÀ̽º °íÀ¯ÀÇ ºñ¹Ð Å°¸¦ »ý¼ºÇØ ¿§Áö-Åõ-¿§Áö, Ŭ¶ó¿ìµå-Åõ-¿§Áö Åë½ÅÀ» À§ÇÑ ´ëĪ ¹× ºñ´ëĪ ¾Ïȣȸ¦ Çâ»ó½ÃŲ´Ù. °ø°³ Å° ÀÎÇÁ¶ó(PKI) ¶Ç´Â ºñ´ëĪ ¾Ïȣȸ¦ À§ÇÑ º¸¾ÈÀº TCG(Trusted Computing Group)°¡ Á¤ÀÇÇÑ DICE(Device Identity Composition Engine) º¸¾È Ç¥ÁØÀ» ÅëÇØ Çâ»óµÇ¾ú´Ù. SRAM PUF´Â DICE¿¡¼ ¿ä±¸ÇÏ´Â UDS(Unique Device Secret)ÀÇ ±â¹Ð¼ºÀ» º¸ÀåÇÑ´Ù. »õ·ÎÀÌ ¹ßÇ¥µÈ ¼Ö·ç¼ÇÀº mbedTLS ÃÖÀûÈ ¶óÀ̺귯¸®·Î, ºñ´ëĪ ¾ÏÈ£È(RSA 1024 ~4096-ºñÆ® ±æÀÌ, ECC)¿Í ÃÖ´ë 256 ºñÆ® ´ëĪ ¾ÏÈ£È, ÇؽÌ(AES-256 ¹×SHA2-256)À» À§ÇÑ °¡¼ÓÀ» Áö¿øÇÑ´Ù.
Á¸ ·ÐÄÚ(John Ronco) Arm ÀÓº£µðµå&ÀÚµ¿Â÷ »ç¾÷ºÎ ºÎ»çÀå °â ÃÑ°ýÀº “Ä¿³ØƼµå µð¹ÙÀ̽ºÀÇ Æø¹ßÀû ¼ºÀåÀ» À̾·Á¸é ÀÌµé µð¹ÙÀ̽º¿¡ ´ëÇÑ »ç¿ëÀÚ ½Å·Ú°¡ Çâ»óµÇ¾î¾ß ÇÑ´Ù. Ä¿³ØƼµå µð¹ÙÀ̽º º¸¾È¿¡ ´ëÇÑ NXPÀÇ ³ë·ÂÀº »õ·ÎÀÌ ¼±º¸ÀÌ´Â Cortex-M33 ±â¹Ý Á¦Ç°¿¡ ÀÚ¸íÇÏ°Ô µå·¯³ª ÀÖ´Ù. ÀÌ ¼Ö·ç¼ÇÀº °ËÁõµÈ º¸¾È ±â¹ÝÀÎ Æ®·¯½ºÆ®Á¸ ±â¼úÀ» Åä´ë·Î ±¸ÃàµÇ¾ú´Ù. ¶ÇÇÑ ArmÀÇ Ç÷§Æû º¸¾È ¾ÆÅ°ÅØó(PSA)ÀÇ ¼³°è ¿øÄ¢À» ÅëÇÕÇß°í, Cortex-M ¼º´É È¿À²ÀÇ ÇѰ踦 ¶Ù¾î ³Ñ´Â °ÍÀÌ Æ¯Â¡ÀÌ´Ù”°í ¸»Çß´Ù.
NXP´Â Arm v8-M ¾ÆÅ°ÅØóÀÇ Àüü ±â´ÉÀ» È°¿ëÇϱâ À§ÇØ Àü·«ÀûÀ¸·Î Cortex-M33À» ¼±ÅÃÇß´Ù. À̸¦ ÅëÇØ º¸¾È Ç÷§ÆûÀ» Á¦°øÇÏ°í, ±âÁ¸ Cortex-M3/M0 MCU¿¡ ºñÇØ »ó´çÇÑ ¼º´É Çâ»ó(°¢°¢ 15~65% ÀÌ»ó Çâ»ó)À» °ÅµÑ ¼ö ÀÖ´Ù. Cortex-M33ÀÇ ÇÙ½É ±â´É Áß Çϳª´Â ¹ÐÂø °áÇÕµÈ ÄÚÇÁ·Î¼¼½ºÀÇ È¿À²ÀûÀÎ ÅëÇÕÀ» Çã¿ëÇϸé¼, Àüü »ýÅ°è¿Í ÅøüÀΠȣȯ¼º(toolchain compatibility)À» À¯ÁöÇÏ´Â CPUÀÇ ÇÁ·Î¼¼½Ì ±â´ÉÀ» È®ÀåÇÏ´Â Àü¿ë ÄÚÇÁ·Î¼¼¼ ÀÎÅÍÆäÀ̽ºÀÌ´Ù. NXP´Â ÀÌ ±â´ÉÀ» »ç¿ëÇØ ÄÁº¼·ç¼Ç(convolution)°ú »ó°ü °ü°è, Çà·Ä ¿¬»ê, Àü´Þ ÇÔ¼ö, ÇÊÅ͸µ µî ÇÙ½É ML ¹× DSP ±â´ÉÀ» °¡¼ÓÈÇϱâ À§ÇÑ ÄÚÇÁ·Î¼¼½º¸¦ ±¸ÇöÇØ Cortex-M33¿¡¼ ½ÇÇàÇÏ´Â °Í ´ëºñ ÃÖ´ë 10¹è ¼º´ÉÀ» Çâ»ó½ÃŲ´Ù. ¶ÇÇÑ ÀÌ ÄÚÇÁ·Î¼¼¼´Â ³Î¸® »ç¿ëµÇ´Â CMSIS-DSP ¶óÀ̺귯¸® ÄÝ(API)À» »ç¿ëÇØ °í°´ ÄÚµå À̽ļºÀ» °£¼ÒÈÇÑ´Ù.
LPC5500 Ç÷§Æû– »ê¾÷¿ë ¹× IoT ¾ÖÇø®ÄÉÀ̼ÇÀ» À§ÇÑ ¸ÖƼ ÄÚ¾î Cortex-M33 MCU
ÅëÇÕ DC-DC¸¦ °®Ãá ½Ì±Û/µà¾ó ÄÚ¾î Cortex-M33´Â ÃÖ´ë 90 ¹Ð¸®¾ÏÆä¾î´ç Äھũ(CoreMarks™/mA)¿¡ ´ÞÇÏ´Â ÀϺΠÀü·Â ¿¹»êÀ¸·Î ¾÷°è ¼±µµÀû ¼º´ÉÀ» Á¦°øÇÑ´Ù. ÃÖ´ë 640KB Ç÷¡½Ã¿Í 320KB SRAÀÇ °í¹Ðµµ ¿ÂĨ ¸Þ¸ð¸®·Î º¹ÀâÇÑ ¿§Áö ¾ÖÇø®ÄÉÀ̼ÇÀ» È¿À²ÀûÀ¸·Î ½ÇÇàÇÒ ¼ö ÀÖ´Ù. ¶ÇÇÑ, »ç¿ëÀÚ Á¤ÀÇ ÀÛ¾÷ ¿ÀÇÁ·Îµù ¹× ½ÇÇàÀ» À§ÇÑ NXPÀÇ ÀÚÀ²ÀûÀ̸ç ÇÁ·Î±×·¡¹Ö °¡´ÉÇÑ ·ÎÁ÷ À¯´ÖÀº Çâ»óµÈ ½Ç½Ã°£ º´·Ä ó¸® ±â´ÉÀ» Á¦°øÇÑ´Ù.
i.MX RT600 Å©·Î½º¿À¹ö Ç÷§Æû – ½Ç½Ã°£ ¸Ó½Å ·¯´×(ML)°ú Àΰø Áö´É(AI) ¾ÖÇø®ÄÉÀ̼ÇÀ» À§ÇØ Àü·Â ÃÖÀûÈµÈ Cortex-M33 / DSP MCUs
ÃÖ´ë 300MHz Cortex-M33, ÃÖ´ë 600MHz Ä«µ§½º ÅٽǸ®Ä«(Cadence® Tensilica®) HiFi 4 DSP ¹× ÃÖ´ë 4.5MBÀÇ °øÀ¯ ¿Â-Ĩ SRAMÀ¸·Î Æø³ÐÀº ÀÛµ¿ Àü¾Ð°ú ¼º´É ¹üÀ§¸¦ °®Ãá ÀÌ Ç÷§ÆûÀ» È°¿ëÇØ È¿À²ÀûÀÎ ·ÎÄà ¿Àµð¿À Àüó¸®¿Í ¸ôÀÔÇü 3D ¿Àµð¿À Àç»ý, À½¼º ±â¹Ý °æÇèÀ» ±¸ÇöÇÒ ¼ö ÀÖ´Ù. 4x 32ºñÆ® MAC, º¤ÅÍ FPU, 256ºñÆ® ÆøÀÇ Á¢±Ù ¹ö½º ¹× Ư¼ö È°¼ºÈ ÇÔ¼ö (¿¹: ½Ã±×¸ðÀ̵å Àü¼Û ÇÔ¼ö)¸¦ À§ÇÑ DSP È®ÀåÀ¸·Î DSP ³» ML ¼º´ÉÀº ÇÑÃþ °ÈµÇ¾ú´Ù.
µµ¹ö Äھµå(Dover CoreGuard) – Çϵå¿þ¾î ±â¹Ý ¹æ¾î º¸¾È
NXP´Â µµ¹ö ¸¶ÀÌÅ©·Î½Ã½ºÅÛ(Dover Microsystems)»ç¿Í Çù·ÂÇØ ÇâÈÄ ÀÓº£µðµå Ç÷§Æû¿¡ µµ¹öÀÇ Äھµå(CoreGuard™) ±â¼úÀ» µµÀÔÇÑ´Ù. Äھµå´Â »çÀü ¼³Á¤µÈ º¸¾È ±ÔÄ¢À» À§¹ÝÇÏ´Â ¸í·ÉÀ» Áï½Ã Â÷´ÜÇÏ´Â Çϵå¿þ¾î ±â¹Ý ¾×Ƽºê ¹æ¾î º¸¾È IP·Î, ÀÓº£µðµå ÇÁ·Î¼¼¼°¡ ¼ÒÇÁÆ®¿þ¾î Ãë¾à¼º°ú ³×Æ®¿öÅ© ±â¹Ý °ø°ÝÀ¸·ÎºÎÅÍ ½º½º·Î¸¦ ¹æ¾îÇÒ ¼ö ÀÖµµ·Ï ÇÑ´Ù. |