Autonomous peripheral operation

From HandWiki
Short description: MCU hardware feature for task offloading

In computing, autonomous peripheral operation is a hardware feature found in some microcontroller architectures to off-load certain tasks into embedded autonomous peripherals in order to minimize latencies and improve throughput in hard real-time applications as well as to save energy in ultra-low-power designs.

Overview

Forms of autonomous peripherals in microcontrollers were first introduced in the 1990s. Allowing embedded peripherals to work independently of the CPU and even interact with each other in certain pre-configurable ways off-loads event-driven communication into the peripherals to help improve the real-time performance due to lower latency and allows for potentially higher data throughput due to the added parallelism. Since 2009, the scheme has been improved in newer implementations to continue functioning in sleep modes as well, thereby allowing the CPU (and other unaffected peripheral blocks) to remain dormant for longer periods of time in order to save energy. This is partially driven by the emerging IoT market.[1]

Conceptually, autonomous peripheral operation can be seen as a generalization of and mixture between direct memory access (DMA) and hardware interrupts. Peripherals that issue event signals are called event generators or producers whereas target peripherals are called event users or consumers. In some implementations, peripherals can be configured to pre-process the incoming data and perform various peripheral-specific functions like comparing, windowing, filtering or averaging in hardware without having to pass the data through the CPU for processing.

Implementations

Known implementations include:

  • Peripheral Event Controller (PEC) in Siemens/Infineon C166 and C167 16-bit microcontrollers since 1990[2][3][4][5]
  • Intelligent autonomous peripherals (Capture compare unit (de) CCU6) in Infineon XC800 series of 8051-compatible 8-bit microcontrollers since 2005[6]
  • Event System (EVSYS) in Atmel AVR XMEGA 8-bit microcontrollers since 2008[7][8]
  • Peripheral Event System (PES) with SleepWalking[9] in Atmel (now Microchip Technology) AVR32 AT32UC3L 32-bit microcontrollers since 2009[10][11][12]
  • Peripheral Reflex System (PRS) in Energy Micro (now Silicon Labs) Gecko EFM32 32-bit ARM-based microcontrollers since 2009[13][14][12]
  • IXYS/Zilog ZNEO Z16FMC 16-bit microcontrollers since 2011[15][16]
  • Event Link Controller (ELC) in Renesas microcontrollers since 2011
  • Programmable Peripheral Interconnect (PPI) in Nordic nRF 32-bit ARM-based microcontrollers since about 2011[17]
  • Autonomous peripherals in Infineon XMC 32-bit microcontrollers since 2012[18]
  • Data Transfer Manager (DTM) in Silicon Labs Precision32 SiM3L1 32-bit ARM Cortex-M3 microcontrollers since 2012[19][12][20]
  • Peripheral Event System (PES) with SleepWalking in Atmel (now Microchip Technology) SAM4L 32-bit ARM Cortex-M4 microcontrollers since 2012[21]
  • Power-Smart Peripherals in Freescale (now NXP) Kinetis L 32-bit ARM Cortex-M0+ microcontrollers since 2012[22]
  • Event System (EVSYS) with SleepWalking[9] in Atmel (now Microchip Technology) SAMD, SAML and SAMC 32-bit ARM Cortex-M0+ microcontrollers since 2013[23][24]
  • Core Independent Peripherals (CIP) in Microchip PIC16F[25] and PIC18F[26] as well as Microchip AVR ATtiny 8-bit microcontrollers since 2015[27][28][29]
  • Peripherals Interconnect Matrix in STMicroelectronics' STM32 32-bit ARM-based microcontrollers since 2015[30]
  • Low-Power Background Autonomous Mode (LPBAM) in STMicroelectronics' STM32U5 32-bit ARM-based microcontrollers since 2021[31]

See also

References

  1. "Things worthy of consideration - The Internet of Things is pushing microcontroller developers to move in unexpected directions". New Electronics. 2014-01-28. pp. 22–23. http://www.newelectronics.co.uk/electronics-technology/the-internet-of-things-is-pushing-microcontroller-developers-to-move-in-unexpected-directions/59112/.  [1]
  2. "Connecting the C166 architecture to CAN (I)". Components. Applications Microcontrollers (Siemens Aktiengesellschaft) XXIX (4): 42–44. March 1994. http://ep.etc.tuiasi.ro/site/DIVERSE/placi/CAN/34/pdf/can1.pdf. Retrieved 2021-12-02.  (3 pages) (NB. Mentions the term "autonomous peripherals" in conjunction with the Siemens/Infineon SAB 80C166 in 1994 already. Part II of the article: [2])
  3. User's Manual - C167CR Derivatives - 16-Bit Single-Chip Microcontroller (2000-03 ed.). Munich, Germany: Infineon Technologies AG. March 2000. https://www.keil.com/dd/docs/datashts/infineon/c167cr_um.pdf. Retrieved 2021-12-02.  (NB. Discusses an autonomously operating built-in CAN controller and a "Peripheral Event Controller" (PEC).)
  4. CAN Connecting C166 and C500 Microcontroller to CAN. Infineon Technologies AG. February 2004. Application Note AP29000. https://www.infineon.com/dgdl/Ap2900010_C166_C500_CAN.pdf?fileId=db3a304412b407950112b41975592877. Retrieved 2021-12-02. 
  5. (in de) Embedded Systems SS2018. Munich, Germany: FH München - Hochschule für angewandte Wissenschaften, Fakultät für Elektrotechnik und Informationstechnik. Summer 2018. pp. 1, 17, 28, 37–40. ES. https://pc01-lsw.ee.hm.edu/~irber/EmbeddedSystems/powerpoint_deutsch/EmbeddedSystemsSS18_skript_irber.pdf. Retrieved 2021-12-02. 
  6. "XC800 Product Presentation - Capture Compare Unit CC6". Infineon. May 2006. https://www.infineon.com/dgdl/XC8xx_CC6_v10.pdf?fileId=db3a304412b407950112b40c64690b15. "[…] Drives need realtime performance – control loop must run faster than 2-4 PWM periods (e.g. 100-200us) – CPU performance is valuable and must be saved for key tasks – Question: How to offload the CPU? –Answer: Build intelligent and autonomous peripherals! […] CC6 in a Drive application: – generate PWM patterns for all kind of motors – operate always in a safe state – even in an error condition – interact with ADC for sensorless control of motors […] CC6 is used intensively – the more it works autonomous the more CPU load can be saved for control algorithms […]" 
  7. "Atmel's AVR XMEGA Redefines System Performance for 8/16-bit Microcontrollers". Atmel. 2008-02-26. https://www.ots.at/presseaussendung/OTE_20080226_OTE0012/atmels-avr-xmega-redefines-system-performance-for-816-bit-microcontrollers. 
  8. "Event System Implementations for Microcontroller Circuits". NTNU Open. Institutt for elektronikk og telekommunikasjon. 2009. https://brage.bibsys.no/xmlui/handle/11250/2370969. 
  9. 9.0 9.1 "System Design Trade-Offs in a Next-Generation Embedded Wireless Platform". Electrical Engineering and Computer Sciences, University of California at Berkeley. 2014-08-25. http://sdb.cs.berkeley.edu/sdb/files/publications/sdb/system_design_tradeoff.pdf. 
  10. "Atmel Introduces AVR32 Microcontroller Which Lowers Industry's Best Power Consumption by 63%". Atmel. 2009-06-22. https://www.ots.at/presseaussendung/OTE_20090622_OTE0006/atmel-introduces-avr32-microcontroller-which-lowers-industrys-best-power-consumption-by-63. 
  11. "Improve Cortex M4 MCU interrupt responses with an intelligent Peripheral Event System". Atmel Corp.. 2012-10-28. https://www.edn.com/print/4399539. 
  12. 12.0 12.1 12.2 "Raising Performance Without Breaking the Power Budget". Digikey. 2013-07-10. https://www.digikey.lv/en/articles/techzone/2013/jul/raising-performance-without-breaking-the-power-budget. 
  13. "Energy Micro reveals more details on power efficient ARM MCU". Electronics Weekly. 2009-07-08. https://www.electronicsweekly.com/news/products/micros/energy-micro-reveals-more-details-on-power-efficient-arm-mcu-2009-07/. 
  14. "Energy Micro details its ARM Cortex M3-based EFM32G range". Electronics Weekly. 2009-10-21. https://www.electronicsweekly.com/news/products/micros/energy-micro-details-its-arm-cortex-m3-based-efm32g-range-2009-10/. 
  15. "ZILOG Releases New 16-Bit MCU System On A Chip For Motor Control Applications". BusinessWire. 2011-01-06. https://www.businesswire.com/news/home/20110106005359/en/ZILOG-Releases-New-16-Bit-MCU-System-Chip. 
  16. "The Need for Autonomous Peripheral Interoperation in Sensorless BLDC Applications". Convergence Promotions LLC. 2011-10-12. https://www.digikey.com/en/articles/techzone/2011/oct/the-need-for-autonomous-peripheral-interoperation-in-sensorless-bldc-applications.  [3][4]
  17. "Programmable peripheral interconnect". Nordic Semiconductor ASA. 2011-12-12. https://patents.google.com/patent/US9087051B2/en. 
  18. "One microcontroller platform. Countless solutions. XMC4000.". International Press Conference, Am Campeon, Munich, Germany: Infineon. 2012-01-23. https://www.infineon.com/dgdl/XMC4000_PressConference_23-01-2012.pdf?fileId=db3a304334fac4c601350a01d8f011d4. 
  19. "Lowest power 32-bit MCUs from Si Labs". Electronics Weekly. 2012-10-03. https://www.electronicsweekly.com/news/products/micros/lowest-power-32-bit-mcus-from-si-labs-2012-10/. 
  20. Silicon Laboratories. "Low Power Technology: Microcontroller Peripherals Push the Boundaries of Ultra-Low-Power". https://www.mouser.de/applications/low-power-microcontroller-peripherals/.  [5]
  21. "Redefining the Power Benchmark". Atmel. 2012. https://www.newark.com/wcsstore/ExtendedSitesCatalogAssetStore/cms/asset/images/americas/common/storefront/atmel/Redefining_the_Power_Benchmark.pdf. 
  22. "Freescale Energy-Efficient Solutions: Kinetis L Series MCUs". Freescale. 2012. https://www.nxp.com/docs/en/white-paper/ENEFFSOLKINLSWP.pdf. 
  23. "Mikrocontroller: Neue Cortex-M0+-Familie von Atmel" (in de). elektroniknet.de. 2013-06-18. http://www.elektroniknet.de/preview/neue-cortex-m0-familie-von-atmel-98530.html. 
  24. "A closer look at Atmel's Peripheral Event System". https://atmelcorporation.wordpress.com/2013/07/05/a-closer-look-at-atmels-peripheral-event-system/. 
  25. "8-bit Fights Back with Autonomous Peripherals". Santa Clara, USA: EETimes. 2015-07-28. https://www.eetimes.com/document.asp?doc_id=1327261. 
  26. "Autonomous peripherals for PIC18F MCUs". Electronics Weekly. 2016-10-31. https://www.electronicsweekly.com/news/products/micros/autonomous-peripherals-pic18f-mcus-2016-10/. 
  27. "Microchip Technology: 8-Bit-Offensive: AVR" (in de). elektroniknet.de. 2016-11-10. http://www.elektroniknet.de/markt-technik/halbleiter/8-bit-offensive-avr-135724.html. 
  28. "There is nothing left to be invented in embedded control, Part 1". 2015-05-05. https://www.embedded.com/design/mcus-processors-and-socs/4439357/There-is-nothing-left-to-be-invented-in-embedded-control--Part-1. 
  29. "There is nothing left to be invented in embedded control, Part 2". 2015-05-12. https://www.embedded.com/print/4439430. 
  30. "Peripherals interconnections on ST M32F405/7xx, STM32F415/7xx, STM32F42xxx, STM32F43xxx, STM32F446xx and STM32F469/479xx". STMicroelectronics. http://www.st.com/content/ccc/resource/technical/document/application_note/59/ed/30/07/55/76/4e/82/DM00154959.pdf/files/DM00154959.pdf/jcr:content/translations/en.DM00154959.pdf. 
  31. "Introducing STM32U5, the flagship of ultra-low-power MCUs". STMicroelectronics International NV. 2021. https://www.st.com/content/ccc/resource/sales_and_marketing/presentation/product_presentation/group1/99/af/38/36/04/39/4c/4b/microcontrollers_stm32u5_series_product_overview/files/Microcontrollers_STM32U5_Series_product_overview.pdf/jcr:content/translations/en.Microcontrollers_STM32U5_Series_product_overview.pdf.