{"id":4010,"date":"2024-04-13T09:06:51","date_gmt":"2024-04-13T03:36:51","guid":{"rendered":"https:\/\/cthecosmos.com\/?p=4010"},"modified":"2024-04-13T09:06:51","modified_gmt":"2024-04-13T03:36:51","slug":"%f0%9d%91%ba%f0%9d%92%90%f0%9d%92%87%f0%9d%92%95%f0%9d%92%98%f0%9d%92%82%f0%9d%92%93%f0%9d%92%86-%f0%9d%91%b6%f0%9d%92%97%f0%9d%92%86%f0%9d%92%93-%f0%9d%91%bb%f0%9d%92%89%f0%9d%92%86-%f0%9d%91%a8","status":"publish","type":"post","link":"https:\/\/cthecosmos.com\/?p=4010","title":{"rendered":"\ud835\udc7a\ud835\udc90\ud835\udc87\ud835\udc95\ud835\udc98\ud835\udc82\ud835\udc93\ud835\udc86 \ud835\udc76\ud835\udc97\ud835\udc86\ud835\udc93 \ud835\udc7b\ud835\udc89\ud835\udc86 \ud835\udc68\ud835\udc8a\ud835\udc93 (\ud835\udc7a\ud835\udc76\ud835\udc7b\ud835\udc68)\u00a0"},"content":{"rendered":"\n<p class=\"has-black-color has-white-background-color has-text-color has-background has-link-color wp-elements-d78f9887ef27e7bbd8bfa1be1d3bc404\" style=\"font-size:17px;line-height:1.8\">\ud835\udc7a\ud835\udc90\ud835\udc87\ud835\udc95\ud835\udc98\ud835\udc82\ud835\udc93\ud835\udc86 \ud835\udc76\ud835\udc97\ud835\udc86\ud835\udc93 \ud835\udc7b\ud835\udc89\ud835\udc86 \ud835\udc68\ud835\udc8a\ud835\udc93 (\ud835\udc7a\ud835\udc76\ud835\udc7b\ud835\udc68) is a modern technique that facilitates remote software updates for devices. The AURIX TC3xx microcontrollers have implemented this feature to allow seamless software updates, with the exception of the TC33x and TC33xED models.<br><br>The functionality of SOTA for Aurix TC3xx series is as follows:<br><br>\ud835\udc6b\ud835\udc96\ud835\udc82\ud835\udc8d \ud835\udc77\ud835\udc6d\ud835\udc73\ud835\udc68\ud835\udc7a\ud835\udc6f \ud835\udc69\ud835\udc82\ud835\udc8f\ud835\udc8c\ud835\udc94:<br><br>The TC3xx microcontrollers enhance SOTA by dividing the PFLASH into two distinct groups of banks, termed as Group A and Group B. This bifurcation allows one group to be actively read and executed from, while the other group can be written with new code. It&#8217;s a strategic design since within a single physical PFLASH bank, simultaneous read-while-write (RWW) isn&#8217;t supported. The dual-bank system ensures that SOTA updates are executed securely and reliably.<br><br>\ud835\udc68\ud835\udc84\ud835\udc95\ud835\udc8a\ud835\udc97\ud835\udc86 \ud835\udc82\ud835\udc8f\ud835\udc85 \ud835\udc70\ud835\udc8f\ud835\udc82\ud835\udc84\ud835\udc95\ud835\udc8a\ud835\udc97\ud835\udc86 \ud835\udc69\ud835\udc82\ud835\udc8f\ud835\udc8c\ud835\udc94:<br><br>When SOTA is operational, one set of PFLASH banks is mapped to CPU executable address space and is designated as the &#8216;active&#8217; banks.<br>Conversely, the other set is labeled as the &#8216;inactive&#8217; banks, which are mapped to a set of addresses that allow them to be read from and written to.<br>Post a SOTA update, a swap occurs, but only in terms of address mapping, ensuring that the address range executed from remains unchanged, and no data copying is required.<br><br>\ud835\udc68\ud835\udc85\ud835\udc85\ud835\udc93\ud835\udc86\ud835\udc94\ud835\udc94 \ud835\udc74\ud835\udc82\ud835\udc91\ud835\udc91\ud835\udc8a\ud835\udc8f\ud835\udc88:<br><br>The physical address of the PFLASH banks adheres to the standard address map as discussed in the &#8220;Address Map&#8221; chapter. When a SOTA address map switch takes place, the reading and code execution mapping of the PFLASH banks are detailed in the alternate address map, also available in the Address Map chapter. Within this context, the active group in the standard address map is denoted as \u2018A\u2019, while the active group in the alternate address map is labeled as \u2018B\u2019.<br><br>\ud835\udc75\ud835\udc90\ud835\udc8f-\ud835\udc7d\ud835\udc90\ud835\udc8d\ud835\udc82\ud835\udc95\ud835\udc8a\ud835\udc8d\ud835\udc86 \ud835\udc74\ud835\udc86\ud835\udc8e\ud835\udc90\ud835\udc93\ud835\udc9a \ud835\udc76\ud835\udc91\ud835\udc86\ud835\udc93\ud835\udc82\ud835\udc95\ud835\udc8a\ud835\udc90\ud835\udc8f\ud835\udc94:<br><br>All operations on NVM are executed via the DMU using the physical system address of the PFLASH. This means that any NVM operation always resorts to the standard address map, irrespective of the swap settings. Here, the term &#8216;NVM operation&#8217; indicates any command sequence, such as programming or erasing, targeting a FLASH and excludes reads.<br><br>\ud835\udc6a\ud835\udc90\ud835\udc8f\ud835\udc87\ud835\udc8a\ud835\udc88\ud835\udc96\ud835\udc93\ud835\udc82\ud835\udc95\ud835\udc8a\ud835\udc90\ud835\udc8f \ud835\udc82\ud835\udc8f\ud835\udc85 \ud835\udc7a\ud835\udc82\ud835\udc87\ud835\udc86\ud835\udc95\ud835\udc9a:<br><br>Parameters that control the SOTA address map switching and associated functions are preset in the User Configuration Block (UCB).<br>Post configuration, the hardware settings are updated by the on-chip system firmware only during the subsequent System Reset. This design choice is deliberate to prevent any unintentional modifications during application execution.<br><br>(The flow chart illustrates the Runtime SOTA configuration in TC3xx devices)<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"712\" height=\"842\" data-attachment-id=\"4012\" data-permalink=\"https:\/\/cthecosmos.com\/?attachment_id=4012\" data-orig-file=\"https:\/\/i0.wp.com\/cthecosmos.com\/wp-content\/uploads\/2024\/04\/infenion3.jpeg?fit=712%2C842&amp;ssl=1\" data-orig-size=\"712,842\" data-comments-opened=\"1\" data-image-meta=\"{&quot;aperture&quot;:&quot;0&quot;,&quot;credit&quot;:&quot;&quot;,&quot;camera&quot;:&quot;&quot;,&quot;caption&quot;:&quot;&quot;,&quot;created_timestamp&quot;:&quot;0&quot;,&quot;copyright&quot;:&quot;&quot;,&quot;focal_length&quot;:&quot;0&quot;,&quot;iso&quot;:&quot;0&quot;,&quot;shutter_speed&quot;:&quot;0&quot;,&quot;title&quot;:&quot;&quot;,&quot;orientation&quot;:&quot;0&quot;}\" data-image-title=\"infenion3\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/cthecosmos.com\/wp-content\/uploads\/2024\/04\/infenion3.jpeg?fit=712%2C842&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/cthecosmos.com\/wp-content\/uploads\/2024\/04\/infenion3.jpeg?resize=712%2C842&#038;ssl=1\" alt=\"\" class=\"wp-image-4012\" \/><figcaption class=\"wp-element-caption\">Image from Aurix TC375LK Datasheet<\/figcaption><\/figure>\n<\/div>\n\n\n<p><\/p>\n\n\n\n<p class=\"has-white-color has-text-color has-background has-link-color has-medium-font-size wp-elements-486e7799b35920eece0029316d5e98bd\" style=\"background:linear-gradient(135deg,rgb(35,23,11) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%)\">~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<br><strong>An Article by: <\/strong>Yashwanth Naidu Tikkisetty<br>~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Summary:<br \/>\nSoftware Over-The-Air (SOTA) allows remote updates for AURIX TC3xx microcontrollers, with dual PFLASH banks ensuring secure and reliable updates. The active and inactive banks are mapped for CPU execution, and address mapping is switched without data copying during updates. Configuration parameters are set in the User Configuration Block. The hardware settings update during System Reset.<\/p>\n<a href=\"https:\/\/cthecosmos.com\/?p=4010\" class=\"more-link\">Read More <span class=\"screen-reader-text\">\ud835\udc7a\ud835\udc90\ud835\udc87\ud835\udc95\ud835\udc98\ud835\udc82\ud835\udc93\ud835\udc86 \ud835\udc76\ud835\udc97\ud835\udc86\ud835\udc93 \ud835\udc7b\ud835\udc89\ud835\udc86 \ud835\udc68\ud835\udc8a\ud835\udc93 (\ud835\udc7a\ud835\udc76\ud835\udc7b\ud835\udc68)\u00a0<\/span><\/a>","protected":false},"author":120055267,"featured_media":4014,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":false,"jetpack_social_post_already_shared":false,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_wpas_customize_per_network":false},"categories":[30181,952411],"tags":[770793751,772321193,18286079,801,1354040,228408],"class_list":{"0":"post-4010","1":"post","2":"type-post","3":"status-publish","4":"format-standard","5":"has-post-thumbnail","6":"hentry","7":"category-embedded-systems","8":"category-short-articles","9":"tag-aurix-tc375lk","10":"tag-embedded-systems","11":"tag-mircocontroller","12":"tag-security","13":"tag-short-article","14":"tag-sota","16":"fallback-thumbnail"},"aioseo_notices":[],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/cthecosmos.com\/wp-content\/uploads\/2024\/04\/pexels-photo-6325003.jpeg?fit=1880%2C1253&ssl=1","jetpack_likes_enabled":true,"jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p8CiEf-12G","jetpack-related-posts":[],"_links":{"self":[{"href":"https:\/\/cthecosmos.com\/index.php?rest_route=\/wp\/v2\/posts\/4010","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cthecosmos.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cthecosmos.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cthecosmos.com\/index.php?rest_route=\/wp\/v2\/users\/120055267"}],"replies":[{"embeddable":true,"href":"https:\/\/cthecosmos.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=4010"}],"version-history":[{"count":4,"href":"https:\/\/cthecosmos.com\/index.php?rest_route=\/wp\/v2\/posts\/4010\/revisions"}],"predecessor-version":[{"id":4016,"href":"https:\/\/cthecosmos.com\/index.php?rest_route=\/wp\/v2\/posts\/4010\/revisions\/4016"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cthecosmos.com\/index.php?rest_route=\/wp\/v2\/media\/4014"}],"wp:attachment":[{"href":"https:\/\/cthecosmos.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=4010"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cthecosmos.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=4010"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cthecosmos.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=4010"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}