<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="https://devzone.nordicsemi.com/cfs-file/__key/system/syndication/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Real-time hardware capabilities of 5340 and 52833</title><link>https://devzone.nordicsemi.com/f/nordic-q-a/74300/real-time-hardware-capabilities-of-5340-and-52833</link><description>Hi 
 Evaluating nRF5340 and 52833 devices for our product prototype. Besides of BT functions we need to support certain real-time hardware capabilities such as very narrow duty-cycle PWM and counting time between events triggered externally (by IOs).</description><dc:language>en-US</dc:language><generator>Telligent Community 13</generator><lastBuildDate>Fri, 23 Apr 2021 16:59:15 GMT</lastBuildDate><atom:link rel="self" type="application/rss+xml" href="https://devzone.nordicsemi.com/f/nordic-q-a/74300/real-time-hardware-capabilities-of-5340-and-52833" /><item><title>RE: Real-time hardware capabilities of 5340 and 52833</title><link>https://devzone.nordicsemi.com/thread/306605?ContentTypeID=1</link><pubDate>Fri, 23 Apr 2021 16:59:15 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:0458209a-b4d8-449b-a39b-49ccbc8d2bab</guid><dc:creator>Pret</dc:creator><description>&lt;p&gt;Thank you very much, Einar. Very helpful indeed&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Real-time hardware capabilities of 5340 and 52833</title><link>https://devzone.nordicsemi.com/thread/306410?ContentTypeID=1</link><pubDate>Thu, 22 Apr 2021 15:46:53 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:4128d519-1f11-4cb4-b9db-ca96f8c16dda</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi Alex,&lt;/p&gt;
[quote user="Pret"]&lt;p&gt;Just to make sure I get your points as intended, when you say CPU do you mean an external CPU to the nRF52 device to configure the nRF52 device for the operation (counter mode as you mentioned)? If so, would the 5340&amp;#39;s application core be useful for that?&lt;/p&gt;
&lt;p&gt;Same about the PWM case, when you say using CPU - would the 5340 app core serve this?&lt;/p&gt;[/quote]
&lt;p&gt;When I say CPU I refer to the CPU core(s) in the nRF. The key here is that the programable peripheral interconnect (PPI) can be used to connect HW peripherals within the nRF so that events in one peripheral can trigger tasks in the other. See &lt;a href="https://infocenter.nordicsemi.com/topic/ps_nrf52840/peripheral_interface.html?cp=4_0_0_5_0"&gt;Peripheral interface&lt;/a&gt;&amp;nbsp;and &lt;a href="https://infocenter.nordicsemi.com/topic/ps_nrf52840/ppi.html?cp=4_0_0_5_15"&gt;PPI&lt;/a&gt; for more information. There are some minor differences between the nRF52 and nRF53 here, but the fundamentals remain the same. In a nutshell you can think of PPI as a very simple variant of the programmable interconnect you have in FPGAs, but without the programmable logic.&lt;/p&gt;
&lt;p&gt;And when I referred to the PWM peripheral, that is a dedicated peripheral that generates a PWM signal without need for CPU intervention other than for chancing configuration. See &lt;a href="https://infocenter.nordicsemi.com/topic/ps_nrf52840/pwm.html?cp=4_0_0_5_16"&gt;WPM chapter in PS&lt;/a&gt; (or for 53 &lt;a href="https://infocenter.nordicsemi.com/topic/ps_nrf5340/pwm.html?cp=3_0_0_6_22"&gt;here&lt;/a&gt;).&lt;/p&gt;
[quote user="Pret"]I&amp;#39;m just trying to get the idea whether our application can be served by a single-core nRF chip bearing in mind the regular BT stack operation and that PWM or time-between-events counting features, or this is not something that can be handled in hardware due to BT protocol real-time workload and we need either a separate controller on board or nRF5340 utilizing its app core..[/quote]
&lt;p&gt;I understand. I still do not know enough about your use case to say if the nRF52840 will do, but if you do not have strict timing requirements for when you change PWM duty cycle or when you actually process the&amp;nbsp;times you have measured using GPIOTE and PPI (if you do as suggested), but if that has a bit of slack, then using a single core device might work (and often does). If not, then the nRF53 could be a good option.&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Real-time hardware capabilities of 5340 and 52833</title><link>https://devzone.nordicsemi.com/thread/306403?ContentTypeID=1</link><pubDate>Thu, 22 Apr 2021 15:23:33 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:82d9b77b-1681-46e6-9b7d-fd440e85b719</guid><dc:creator>Pret</dc:creator><description>&lt;p&gt;Thank you Elnar&lt;/p&gt;
&lt;p&gt;Just to make sure I get your points as intended, when you say CPU do you mean an external CPU to the nRF52 device to configure the nRF52 device for the operation (counter mode as you mentioned)? If so, would the 5340&amp;#39;s application core be useful for that?&lt;/p&gt;
&lt;p&gt;Same about the PWM case, when you say using CPU - would the 5340 app core serve this?&lt;/p&gt;
&lt;p&gt;I&amp;#39;m just trying to get the idea whether our application can be served by a single-core nRF chip bearing in mind the regular BT stack operation and that PWM or time-between-events counting features, or this is not something that can be handled in hardware due to BT protocol real-time workload and we need either a separate controller on board or nRF5340 utilizing its app core..&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item><item><title>RE: Real-time hardware capabilities of 5340 and 52833</title><link>https://devzone.nordicsemi.com/thread/306337?ContentTypeID=1</link><pubDate>Thu, 22 Apr 2021 12:54:14 GMT</pubDate><guid isPermaLink="false">137ad170-7792-4731-bb38-c0d22fbe4515:aa3ca1f0-c95b-4753-b0e4-1ba4e12486d8</guid><dc:creator>Einar Thorsrud</dc:creator><description>&lt;p&gt;Hi Alex,&lt;/p&gt;
&lt;p&gt;I do not know enough about your use case to say which approach you should use or if it is feasible on the single core nRF52 device. There are some general concepts that are relevant, though.&lt;/p&gt;
&lt;p&gt;For counting time between external events you can use GPIOTE and TIMER in counter mode connected via PPI/DPPI. That way this can be achieved in HW, only needing the CPU for configuration (and using the data/count for something useful).&lt;/p&gt;
&lt;p&gt;Regarding PWM, if you need a continuous PWM signal you can use either the PWM peripheral (or a TIMER in timer mode connected to a GPIOTE via PPI), depending on your needs. If you use the PWM peripheral, it can &amp;quot;play out&amp;quot; a sequence from DMA, so you can change the duty cycle without CPU intervention for a predefined sequence. If you need this dynamically then you must use the CPU.&lt;/p&gt;
&lt;p&gt;Einar&lt;/p&gt;&lt;div style="clear:both;"&gt;&lt;/div&gt;</description></item></channel></rss>