Path: utzoo!attcan!uunet!husc6!uwvax!astroatc!johnw From: johnw@astroatc.UUCP (John F. Wardale) Newsgroups: comp.arch Subject: Re: RISC vs CISC on Low-End Processors Keywords: RISC, real-time Message-ID: <1035@astroatc.UUCP> Date: 26 May 88 00:51:35 GMT References: <1521@pt.cs.cmu.edu> <1532@pt.cs.cmu.edu> <476@pcrat.UUCP> <9561@sol.ARPA> <1658@pt.cs.cmu.edu> Reply-To: johnw@astroatc.UUCP (John F. Wardale) Organization: Astronautics Technology Cntr, Madison, WI Lines: 40 In article <1658@pt.cs.cmu.edu> koopman@a.gp.cs.cmu.edu (Philip Koopman) writes: >How about stack architectures? They seem to meet the criteria you >set forth. Does anyone have arguments for or against them? People claim stack machines can give you fast execution and dense code. I have two arguments against this: (From "The Case Against Stack-Oriented Instruction Sets" G. Myers @ IBM (SIGCA-August 77) and other stuff.) 1: Code Size Several studies yield overwelming evidence that almost all code takes on of these three forms: 1: a=b 2: a=a+b 3: a=b+c (+ is an operation) Stack based code gains NOTHING in these cases. Mem-to-mem code wins! 2: Speed (pipelining / schecualing) consider a = (b+c) * (e+f) (push,push,+,push,push,+,*,pop) Since all the operands and results share 2 or 3 entries on the stack, its very hard (impossible?) to have any parallelism. (The third push must wait for the + to replace two operands with one result.) With a Register-Based machine (RISC if you like) you have/use lots of registers to avoid these confiltcs (hazards). In other words register (RISC) machines encourage scheduling; Stack machines prevent it. (Schecualed REG code could be: 4 load, +, +, *, store [two addes in parallel] Scientific advances in SW and HW have provided us better ways of doing thins, These ways just happen to NOT be very compatable with stack architectures. (The Model T [car] was good in it's day, but they're not used much any more.) Comments welcome. If you want to flame, flame yourself....my asbestoes underware wore out last month. -- John Wardale ... {seismo | harvard | ihnp4} ! {uwvax | cs.wisc.edu} ! astroatc!johnw To err is human, to really foul up world news requires the net!