Date: Fri, 20 Apr 2001 03:14:04 -0500 From: Mike Meyer <mwm@mired.org> To: "Charles Burns" <burnscharlesn@hotmail.com> Cc: mwm@mired.org, questions@freebsd.org Subject: Re: the AMD factor in FreeBSD Message-ID: <15071.61388.695526.323227@guru.mired.org> In-Reply-To: <F180HB3pHoWD47yicBo00003902@hotmail.com> References: <F180HB3pHoWD47yicBo00003902@hotmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Charles Burns <burnscharlesn@hotmail.com> types: > >RISC is pretty much vertical microcode. WISC - which didn't make quite > >the same splash - is pretty much horizontal microcode. People wanting > >to build fast CISC computers have done so by microcoding them for a > >long time, usually using vertical microcode. The 370 line was that > >way, as well the high end of the PDP-11 line was that way. > > Uhh. <confused> > My impression was that RISC=Reduced Instruction Set (chip/computer) meant > make the chip simpler (but harder to program at the asm level) and execute > more, simpler instructions. > > CISC=have complex instructions and lots of them thus having a higher IPC but > many theoretically unneeded transistors. > > Microcode=Simple software internal to chips or imbedded into battery-backed > ROM or FlashROM used to do things like fix simple processor bugs that > software can fix. I'm using the term microcode in a different manner. Macrocode is the "native" machine code that is generated by compilers. If a CPU is microcoded, then macrocode isn't run by the hardware directly, but is interpreted by microcode programs sometimes called "microprograms". That program is the microcode for the machine, and is written in microcode, which overloads the term. You can tweak the microprogram to do things like fix simple processor bugs. In at least one instance (the Nanodata QM/1), the microcode was itself interpreted by another layer, which Nanodata called "nanocode". > What is vertical and horizontal microcoding? If I am wrong I certainly want > to know--and I am curious as to what you are talking about as I have never > even heard these terms before. Vertical microcode looks like RISC machine instructions: move, add, load and store, etc. Horizontal microcode assigns a bit field to every gate in the machine, and each instruction sets the fields to control the data flow in the machine. > >Cray didn't have to implement a CISC instruction set, so the Cray I > >instruction set is very RISC-like, with the exception of the > >instructions for dealing with the array processor hanging off the > >back. > Was RISC vs CISC (terms which didn't even exist in the 70's then the Cray1 > was being built) even an issue then? It wasn't a conscious issue. There were machines with complex instructions sets. The Cray's instruction set - except for the vector processing instructions - wasn't. > Vector processors have such different > priorities than the processors that every other computer uses. > What do you mean by "hanging off the back"? You should be a speaker at > Defcon--They love to absorb esoteric and almost unknown computer knowledge. > (scratches head) Umm. Where can I get more info about this? My references are all in storage. You might try doing web searches for Nanodata, RISC, and writable control store. Sorry I can't provide better pointers. I'm not sure I know Defcon, but if it's got anything to do with the defense industry, they would be major consumers of this technology. > >The truly cool machines had a writable control store. > Huh? Microcode lived in the "control store". Some machines had control stores that could be written by the user, allowing you to alter the instruction sets of the machines after they left the factory. I still think that's really cool. > >The PDP-11 kit > >sold by Heathkit included that as an option. BBN had the ultimate Unix > >version, though - they included a C compiler and WCS linker so you > >could write new instructions in C, so your function calls turned into > >single instructions. > What does all this have to do with the price of tea in China? It's all very > interesting, but it seems like a collection of random unrelated computer > tidbits. I may just not see the point as this is mostly new to me other than > the PDP11 (which is still used today) and the Cray, sortof. Mostly, it's just public reminiscing triggered by seeing RISC and microcode in the same message. > >My favorite microcode oddity is the IBM PC card IBM sold that used a > >68K chip with custom microcode to interpret 370 machine instructions > >so you could run MVS software on your x86 PC. > > Are you one of those original hardware hackers that made new opcodes by > rewiring large circuitboards on $10Million IBM mainframes or...?? Nah, I'm not a hardware hacker. I've added instructions to machines by writing vertical microcode, and I've implemented machines in horizontal nanocode. In the latter case, we designed extensions to C for the application at hand - building jet aircraft simulators - then designed a micromachine using vertical microcode that would be easy to generate using that extended C, then I got to implement that micromachine. > I can't decide whether to be humbled or perplexed or both. Um. Ya. Certainly not humbled. Perplexed, I can understand. <mike -- Mike Meyer <mwm@mired.org> http://www.mired.org/home/mwm/ Independent WWW/Perforce/FreeBSD/Unix consultant, email for more information. To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-questions" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?15071.61388.695526.323227>