Path: utzoo!attcan!uunet!tut.cis.ohio-state.edu!pt.cs.cmu.edu!fas.ri.cmu.edu!schmitz From: schmitz@fas.ri.cmu.edu (Donald Schmitz) Newsgroups: comp.realtime Subject: Re: Predicting Execution Times for Proc Keywords: '020 not so bad Message-ID: <8831@pt.cs.cmu.edu> Date: 12 Apr 90 13:02:39 GMT References: <765@telesoft.com> <70900012@m.cs.uiuc.edu> Distribution: na Organization: Carnegie-Mellon University, CS/RI Lines: 35 In article <70900012@m.cs.uiuc.edu> gillies@m.cs.uiuc.edu writes: >.. my rather extreme opinion is that the 68020 is a bullsh*t >processor for implementing real-time systems. > >Even if you disable the 68020's caches, you still must worry that your >runtime data may be misaligned in memory. The 68020 will happily >compensate for this, slowing down your program considerably. In my >opinion, you should stop thinking about the 68020 for real-time >systems, ... Actually, few if any compilers will generate such misaligned data (a few of the sloppy ones may put 4 byte objects on two byte boundaries, but this has surprisingly little effect on typical execution times, and it can usually be avoided). The '020 also has about the simplest cache imaginable, it is only an I cache and holds a single instruction per line. Turning off the cache on an '020 should always yield worst case performance (assuming no external caching). It is also a a bargain today (which is often important for real world real-time systems), the new '030 products have pushed down the cost of single board '020 systems to the $3K/board range - for that price you usually get 20Mhz CPU/FPU, 4M of 0-1 wait state memory, plus some mix of timers and serial ports. >Now here's a plug for our group's research. In some hard real-time >systems, researchers have advanced the idea that if a task runs longer >than its predicted execution, an error exception should be raised in >the task. This exception must be handled and an "acceptable" result >produced very quickly after the exception is raised. At my last job, we implemented a research system that supported this (on an '020), I'm waiting to see if actual applications (they were using it for robot control) can take advantage of the feature. I'd be interested in hearing of any results (theoretical or applications) anyone else has along these lines... Don