Path: utzoo!mnetor!uunet!husc6!bloom-beacon!gatech!purdue!i.cc.purdue.edu!k.cc.purdue.edu!l.cc.purdue.edu!cik From: cik@l.cc.purdue.edu (Herman Rubin) Newsgroups: comp.arch Subject: Re: RISC a short answer?? Message-ID: <770@l.cc.purdue.edu> Date: 5 May 88 10:53:49 GMT References: <1036@nusdhub.UUCP> <1988May3.224604.2252@utzoo.uucp> <383@m3.mfci.UUCP> Organization: Purdue University Statistics Department Lines: 27 Summary: But what if there are many slow ones? The philosophy of RISC seems to be, to quote one of the above articles, that one shoul not worry about the "slow" instructions to speed up 70% of the instructions. If the 30% slow instructions now run at 1/3 the speed of the fast ones, this would give an overall time of 1.7/instruction. Now if the time of the slow instructions was doubled, and the fast instructions run infinitely fast, the overall time would be 2/instruction. It seems that, instead, there is great merit in a VCISC design, in which useful instructions are included to decrease the number of instructions needed in a program. This is especially important if the current instructions require branches, which are difficult to speed up in many cases. In many cases, the instruction complexity can be handled in a tag field, which does not have to be decoded in the initial assignment to a computing unit. An example of this is how to handle the quotient and remainder for a division, depending on the signs of the arguments. This may even be important if both arguments are positive; one may want the remainder non-positive, or of minimum magnitude. Here software is expensive compared to hardware; if the hardware default is not what is wanted, it may be necessary to use several instructions, including conditional branches, to achieve the result. If 10% of the instructions are of such a type, I doubt that increasing the instruction time of the "fast" instructions by 30% will compensate. And why should there not be different classes of instructions? -- Herman Rubin, Dept. of Statistics, Purdue Univ., West Lafayette IN47907 Phone: (317)494-6054 hrubin@l.cc.purdue.edu (ARPA or UUCP) or hrubin@purccvm.bitnet