Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10 beta 3/9/83; site microsoft.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!mhuxt!houxm!vax135!cornell!uw-beaver!microsoft!gordonl From: gordonl@microsoft.UUCP (Gordon Letwin) Newsgroups: net.micro Subject: Re: Z-100 vs IBM-PC Challenge Message-ID: <8746@microsoft.UUCP> Date: Thu, 30-May-85 16:21:43 EDT Article-I.D.: microsof.8746 Posted: Thu May 30 16:21:43 1985 Date-Received: Sat, 1-Jun-85 02:20:52 EDT References: <11021@brl-tgr.ARPA> Organization: Microsoft Corporation Lines: 41 Recent articles have said that the IBM-PC-AT runs at an effective rate of 5 mHz due to wait states. This is true. They then suggest that an 8 mhz 8088 is therefore faster; this is not true. The 286 wins over the 8086 (both 16-bit buss interfaces) in a very important way - the address arithmentic is pipelined in the 286. In the 8086 instruction timings are listed as "N + EA", because the "effective address" is computed by running it through the ALU. In the 286 there is seperate EA computation hardware which computes the EA "on the way to the address pins", so to speak. Intel quotes most 286 instructions as running at "N", with EA classifications only for REGISTER/IMMEDIATE and MEMORY. I haven't done any calculations or actual measurements, but I think that a 5 mHz 286 is at least as fast as a an 8 mHz 8086 (not 8088). As for the 8088; the 286 wins over that again because of the buss size. This chip family tends to keep the memory interface nearly fully busy because of the fetch silo. in the 8088, this silo must be nearly always empty. (By the way, don't believe the 8088 timings in the books... it takes 4 cycles to fetch a byte, so if you add the # of bytes in an instruction with the number of other memory accesses it requires, and multiply by 4, you get the number of cycles that the opcode keeps the buss busy. The manual quotes a much smaller figure by assuming that the fetch-ahead silo is always full. Since there are almost no instructions that are quoted as slower than their memory fetch needs, the silo will nearly always be empty and the 4* figure is the accurate one, not the manual figure. This is less true on the 8086 and the 286 because they fetch twice as many bytes in that 4 cycles.) Factoring in the doubled memory bandwidth of the 286, a 5 mHz 286 will considerably outrun an 8 mHz 8088. In fact, I benchmark an AT at about 2.5 to 3 times faster than a PC-XT, which means that you'd need a 12 mHz 8088 (without wait states) to keep up. As for the Z-100 measuring faster than the AT... I don't know whats going on, but I do know that you're measuring the performance of the basic interpreters. The interpreters are NOT identical. I don't know how they differ, but they are responsible if a high-speed 8088 is looking as fast as a 286. gordon letwin