Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!steinmetz!sunray!oconnor From: oconnor@sunray.steinmetz (Dennis Oconnor) Newsgroups: comp.arch Subject: Re: Divides (Was RE: What should be in hardware but isn't) Message-ID: <7533@steinmetz.steinmetz.UUCP> Date: Tue, 6-Oct-87 08:54:01 EDT Article-I.D.: steinmet.7533 Posted: Tue Oct 6 08:54:01 1987 Date-Received: Fri, 9-Oct-87 22:09:48 EDT References: <581@l.cc.purdue.edu> <18336@amdcad.AMD.COM> Sender: root@steinmetz.steinmetz.UUCP Reply-To: oconnor@sunray.UUCP (Dennis Oconnor) Organization: General Electric CRD, Schenectady, NY Lines: 56 In article <1990@encore.UUCP> fay@encore.UUCP (Peter Fay) writes: >If the Newton-Raphson is not expensive ... faster than one cycle per >bit (~O(log2)), why not always design ... into CPUs with wide words.) Because you need a fast multiplier first, as has been stated. These are generally expensive ... BUT WORTH IT (depending on application). [ quoted from my ( Dennis O'Connor's ) earlier article ] >*It has the look-up table in random logic ( only need a few bits ). >*Has a clever normalize-denominator instruction (needed). >*Does the iteration in assembly language (it's a RISC machine) >*so no additional datapath is required. And will be in silicon RSN. > >Hey, wait a minute! Are you saying you do almost the whole operation in >assembler? The only extras you need are normalize-denominator instruction >(neat idea) and the look-up table for the initial approximation of the >divisor reciprocal (do you mean RAM or ROM when you say "random >logic"?)???? Wow!!! Whatever happened to doing things the hard way? (:-) What most people mean by random logic : NAND and NOR gates. After all the first guess only needs to by some small number ( implementation dependant ) of bits accurate, and is therefor only dependant on some small number of bits in the input. It could be done in RAM or ROM, but is (sometimes) more easily done in "random logic". Constructing ramdom logic to duplicate the effect of a ROM is left as an exercise for the reader. The normalization instruction is very neat, only deals with exponents, and is applied to both the numerator and denominator. It was cheap to build. (Exponent? But that's a floating point thingy! (hint hint)) There is nothing hard about the way we do division. Next time we'll do it faster and easier, but there's nothing hard about it now. >$64 Question: Since NR-Iteration doesn't give accurate remainder, how do >you produce one? Or do you skip remainders altogether? Given a numerator, a denominator, and a quotient, obtaining a remainder is left as an exersise for the reader. The only tools you can use in this exercise are the ones you needed to do the division in the first place : a multiplier and a subtractor. >*... Details will have to wait for the official public release... >When will this be? Details on when the official public release will occur will have to wait for the public release of details on when the public release will occur... :-) > peter fay > fay@multimax.arpa >{allegra|compass|decvax|ihnp4|linus|necis|pur-ee|talcott}!encore!fay -- Dennis O'Connor oconnor@sungoddess.steinmetz.UUCP ?? ARPA: OCONNORDM@ge-crd.arpa "If I have an "s" in my name, am I a PHIL-OSS-IF-FER?"