Messages in this thread | | | Date | Fri, 25 Apr 2003 01:05:33 -0700 | From | Steven Augart <> | Subject | Simple x86 Simulator (was: Re: Flame Linus to a crisp!) |
| |
We could not. Consider just the 8 32-bit-wide legacy x86 registers, excluding the MMX and FPU registers: (AX, BX, CX, DX, BP, SI, DI, SP). 32 bits x 8 = 2^256 independent states to look up in the table, each state having 256 bits of information. 2^264 total bits of information needed. Assume 1 GB dimms (2^30 * 8 bits each = 2^33 bits of info), with a volume of 10 cm^3 per DIMM (including a tiny amount of space for air circulation.). Need 34508731733952818937173779311385127262255544860851932776 cubic kilometers of space.
Considerably larger than the volume of the earth, although admittedly smaller than the total volume of the universe.
--Steven Augart
John Bradford wrote:
>>>I'd like to see an x86 completely in perf board. I thought my high >>>school digital electronics type stuff looked bad... >>> >>> >>You could do it nowadays using dynamic binary translation, and an >>absurdly simple CPU capable of accessing a large memory. You'd need a >>DIMM for the large memory, but get away with discrete logic for the >>CPU if you really wanted to. >> >>At perf board sizes using discrete logic, expect it run run quite slow :) >> >> > >Could we not take this idea to it's logical extreme, and simply >calculate the results of every opcode, on every value, for every state >of all of the registers, and store them in an array of DIMMs, and >simply look up the necessary results? I.E. a cpu which is one _huge_ >look up table :-). > >John. > >
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |