Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site mips.UUCP Path: utzoo!linus!decvax!decwrl!Glacier!mips!kim From: kim@mips.UUCP (Kim DeVaughn) Newsgroups: net.micro,net.micro.pc Subject: NEC V30 availability, benchmarks, info Message-ID: <192@mips.UUCP> Date: Thu, 19-Sep-85 14:03:03 EDT Article-I.D.: mips.192 Posted: Thu Sep 19 14:03:03 1985 Date-Received: Sat, 21-Sep-85 11:47:24 EDT Distribution: net Organization: mips ... where RISC is a way of life Lines: 179 Xref: linus net.micro:10761 net.micro.pc:5038 [ ... go ahead, eat my bits ... ] Well, I found one (an 8 MHz V30, that is) at one of the local NEC distributors ... the 1st one I called, and I got the last one they had in stock, no less (maybe I *am* living "right," afterall :-) )! The salesman I spoke with said they'd be getting more in "soon," as I mentioned I wanted to pick up a spare. The distributor I used is: Western Microtechnology ph: 408-725-1660 10040 Bubb Rd. Cupertino, CA 95014 The price (quantity of one) was $20.10 plus tax. This was for the 8 MHz, ceramic part, and has to be just about the best deal I've seen in many moons! By the way, the actual NEC part numbers for the V30 series of chips are: uPD70116D-8 8 MHz, ceramic uPD70116D-5 5 MHz, ceramic uPD70116C-8 8 MHz, plastic uPD70116C-5 5 MHz, plastic (Replace the "16" with "08" and you get the V20 (8088 compatible) p/n's.) There were alot of distributors listed on the sheet NEC sent with the V30 spec, so you shouldn't have too much trouble finding one. I did recognize one outfit on the list from the back pages of Radio-Electronics or Popular Electronics in days-gone-by. They were (are?) used to dealing with small volume, mail-orders; you might try them if your local distributor doesn't want to sell you just one chip. They are: Mouser Electronics ph: 619-449-2300 11433 Woodside Av. Santee, CA 92071 NEC's address (so you can get a spec) is: NEC Electronics, Inc. ph: 800-632-3532 in California 401 Ellis St. 800-632-3531 elsewhere PO Box 7241 Mt. View, CA 94039 Note: I am not associated with any of the above companies, except as a satisfied customer. Ok, now for some quick-and-dirty before/after benchmark numbers: System: Fujitsu u-16s w/8087 (8 MHz) SCP: MS-DOS 2.11 Compiler: TurboPascal 3.01A (w/8087 support) Benchmark: program bench(output); var i,j,k,l: integer; r: real; s: string[100]; t,u: string[50]; begin i := 0; r := 0.0; s := ''; t := 'ABCDEFGHIJKLMNOPQRSTUVWXYABCDEFGHIJKLMNOPQRSTUVWXY'; u := 'abcdefghijklmnopqrstuvwxyabcdefghijklmnopqrstuvwxy'; repeat until keypressed; {start timing when a key is hit} for j := 1 to 1000 do for k := 1 to 1000 do {1 to 50 for string test} for l := 1 to 10 do {one of: } i := i + 1; {integer} {r := r + 1.0;} {real} {s := t + u; } {string assign/concatinate} writeln(^G,i{or r, or s}); {stop timing when the bell rings} end. Results: | 8086 | V30 | %-improvement --------------------------------------------------------- integer | 150.75 | 144.30 | 4.3% real | 1489.24 | 1357.94 | 8.8% string | 497.50 | 296.25 | 40.5% <---- !! | | | Mgen + | 1012.14 | 935.84 | 7.5% Msho ++ | 23.09 | 18.35 | 20.5% Times are in seconds. + Mgen is a Mandelbrot set generating program (compute intensive). ++ Msho is a display routine for Mgen's data (data-move intensive). The machine sucessfully ran all the diagnostics, floppy and hard-disk tests, rupt driven communication/modem program, etc. In short, the s/w couldn't tell the difference (obviously, there were no s/w timing loops in anything I ran ... at least none that were critical). Subjectively, MASM seems to run about 20%-30% faster, and scrolling thru text in various editors is quite noticeably faster. I am a little surprised by the integer vs. real results (I expected to see the least improvement in code that uses the 8087); I haven't looked at the code Turbo generates tho. In any case, a performance improvement of 15%-20% for average, interactive work is well worth $21.51, I'd say (and the chip was only slightly warm after a couple of hours of experimentation)! Here's a look at the "extra" instructions in the V30 and V20 (note that these are NEC's mnemonics): 80186 compatible: PUSH imm . pushes immediate data onto the stack PUSH R . pushes 8 general registers onto stack POP R . pops 8 general registers from stack MUL imm . executes 16-bit multiply of register or memory contents by immediate data SHL imm8 . shifts/rotates register or memory by SHR imm8 immediate value SHRA imm8 ROL imm8 ROR imm8 ROLC imm8 RORC imm8 CHKIND . checks array index against designated boundaries INM . moves a string from I/O port to mem OUTM . moves a string from mem to I/O port PREPARE . allocates an area for a stack frame and copies previous frame pointers DISPOSE . frees the current stack frame on a procedure exit NEC unique: INS . insert bit-field EXT . extract bit-field ADD4S . adds packed decimal strings SUB4S . subtract one packed decimal string from another CMP4S . compares two packed decimal strings ROL4 . rotates one BCD digit left thru AL lower 4 bits ROR4 . rotates one BCD digit right thru AL lower 4 bits TEST1 . tests a sspecified bit; sets/resets zero-flag NOT1 . inverts a specified bit CLR1 . clears a specified bit SET1 . sets a specified bit REPC . repeats next (string) instruction until carry-flag is cleared REPNC . repeats next (string) instruction until carry-flag is set FP02 . additional float-pt processor call 8080 emulation mode: BRKEM . start 8080 emulation mode RETEM . return from emulation mode CALLN . call native-mode (V30) subroutine from within 8080 emulation mode (use normal RETI to return) Looks like NEC just may have developed the "Z-80" of the 8086-style 16-bitters ... Enjoy! /kim "The difference between science and the fuzzy subjects is that science requires reasoning, while those other subjects mearly require scholarship." -- Lazarus Long [generic disclaimer] -- UUCP: {decvax,ucbvax,ihnp4}!decwrl!mips!kim DDD: 415-960-1200 USPS: MIPS Computer Systems Inc, 1330 Charleston Rd, Mt View, CA 94043 Brought to you by Super Global Mega Corp .com