Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!feeder.erje.net!us.feeder.erje.net!newsfeed.straub-nv.de!weretis.net!feeder4.news.weretis.net!rt.uk.eu.org!aioe.org!.POSTED!not-for-mail From: Walter Banks Newsgroups: comp.lang.forth,comp.arch.embedded Subject: Re: Parallax Propeller Date: Mon, 21 Jan 2013 21:11:49 -0500 Organization: Aioe.org NNTP Server Lines: 43 Message-ID: <50FDF565.57943C37@bytecraft.com> References: <50FC6BC1.EFBD7190@bytecraft.com> NNTP-Posting-Host: BHh21/vwyfp7J2F7IuU86w.user.speranza.aioe.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Complaints-To: abuse@aioe.org X-Mailer: Mozilla 4.79 [en]C-CCK-MCD NSCPCD479 (Windows NT 5.0; U) X-Accept-Language: en X-Notice: Filtered by postfilter v. 0.8.2 Xref: csiph.com comp.lang.forth:18976 comp.arch.embedded:11101 David Brown wrote: > On 20/01/13 23:12, Walter Banks wrote: > > Interrupts are not going away anytime soon. > > > > There are event riven processors that are essentially all interrupts. > > I have often written programs where the main loop contains nothing but a > "sleep until next interrupt" instruction - it is not uncommon for > low-power systems. > > > > > Add run to completion (to eliminate preemption overhead) and multiple > > cores for interrupts to use the next available execution unit and a lot of > > processing overheads go away with comparable reduction in software > > complexity. > > > > If you can eliminate all forms of pre-emption, you can keep many things > simpler - there is no need to worry about how you share data or > resources amongst threads, for example. But of course you can no longer > have low-latency reactions to events - you need to make sure these are > handled in hardware. Latency in these systems is reduced in two ways, pre computing responses delivered on an event (your comment) and multiple execution units so code is not pre-empted but is immediately executed if there is an available execution unit. Hardware arbitrated execution priority levels is also a feature of these processors The rest is software design to make sure the response time meets the application requirements. The resulting code has better average response time and that can be important as well. w..