Deutsch English Français Italiano |
<45fb24ca46af5c388b0a44af2f72ddf6@www.novabbs.org> View for Bookmarking (what is this?) Look up another Usenet article |
Path: ...!weretis.net!feeder9.news.weretis.net!i2pn.org!i2pn2.org!.POSTED!not-for-mail From: mitchalsup@aol.com (MitchAlsup1) Newsgroups: comp.arch Subject: Re: Computer architects leaving Intel... Date: Tue, 17 Sep 2024 23:04:52 +0000 Organization: Rocksolid Light Message-ID: <45fb24ca46af5c388b0a44af2f72ddf6@www.novabbs.org> References: <vaqgtl$3526$1@dont-email.me> <86r09ulqyp.fsf@linuxsc.com> <2024Sep8.173639@mips.complang.tuwien.ac.at> <p1cvdjpqjg65e6e3rtt4ua6hgm79cdfm2n@4ax.com> <2024Sep10.101932@mips.complang.tuwien.ac.at> <ygn8qvztf16.fsf@y.z> <2024Sep11.123824@mips.complang.tuwien.ac.at> <vbsoro$3ol1a$1@dont-email.me> <867cbhgozo.fsf@linuxsc.com> <20240912142948.00002757@yahoo.com> <vbuu5n$9tue$1@dont-email.me> <20240915001153.000029bf@yahoo.com> <vc6jbk$5v9f$1@paganini.bofh.team> <20240915154038.0000016e@yahoo.com> <2024Sep15.194612@mips.complang.tuwien.ac.at> <vc8m5k$2nf2l$1@dont-email.me> <vc8tlj$2od19$3@dont-email.me> <vca209$319ci$1@dont-email.me> <vcbiov$3ecji$3@dont-email.me> <vccmm3$3m42h$1@dont-email.me> <e060fe2e0ee375efff2a9ab1223652f5@www.novabbs.org> <vccv3r$3nfqv$1@dont-email.me> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Injection-Info: i2pn2.org; logging-data="2456349"; mail-complaints-to="usenet@i2pn2.org"; posting-account="65wTazMNTleAJDh/pRqmKE7ADni/0wesT78+pyiDW8A"; User-Agent: Rocksolid Light X-Spam-Checker-Version: SpamAssassin 4.0.0 X-Rslight-Posting-User: ac58ceb75ea22753186dae54d967fed894c3dce8 X-Rslight-Site: $2y$10$oUY4034daT7ZNDLtl3wtgOTgAP1WR.0z9MU1pBsyBCoC3uoA1GdGK Bytes: 4202 Lines: 70 On Tue, 17 Sep 2024 22:15:12 +0000, BGB wrote: > On 9/17/2024 3:11 PM, MitchAlsup1 wrote: >> >> Modes make testing significantly harder. Each mode adds 1 to the >> exponent >> how many test cases it takes to adequately test a part. > > Possibly. > > But, modes are kinda unavoidable here: > CPU only runs RV64GC or similar: > Doomed to relative slowness; > CPU only does CoEx: > Closes off the ability to run binaries that assume RV64GC. > CPU only does new ISA: > Well, then it can't run RISC-V code, making all this kinda moot. My 66000 does not have modes (at least yet) it even comes our of RESET with the MMUs turned on. ----------- >>> This is assuming an implementation that would want to be able to support >>> both this ISA and also RV64GC. >>> >>> One possibility could be (in native RV notation): >>> RV64 (Branches if supported, NOP if not): >>> LBU X0, Xs, Disp12s //Dest=RV64GC >>> LWU X0, Xs, Disp12s //Dest=CoEx >>> LHU X0, Xs, Disp12s //Dest=Native >>> New ISA: >>> LBU X0, Xs, Disp10s //Dest=RV64GC >>> LWU X0, Xs, Disp10s //Dest=CoEx >>> LHU X0, Xs, Disp10s //Dest=Native >> >> This only gives 36-bits (top) or 30-bits (bottom) or range. What you are >> going to want is 64-bits of range -- especially when switching modes-- >> you PROBABLY want to use an entirely different sub-tree of the >> translation >> table trees. > > Idea here is that 'Xs' will give the base address for the target. > > On the RISC-V side, this would mean, say: > AUIPC X7, disp > LWU X0, X7, disp > Similar to a normal JALR. Still limited to 32-bit displacement from IP. How would you perform the following call:: current IP = 0x0000000000001234 target IP = 0x7FFFFFFF00001234 This is a single (2-word) instruction in my ISA, assuming GOT is 32-bit displaceable and 64-bit entries. > I could almost interpret X0 as PC, except that on a "standard" RISC-V > CPU, the non-supported case would be, likely: "program crashes trying to > access a NULL pointer", which is less useful. > > > Branches in the new ISA would likely be encoded using jumbo prefixes. > > Well, partly because the new ISA lacks AUIPC, but the new ISA can encode > it more directly as, essentially: > LWU X0, PC, Disp33s AUPIC is (and remains) a crutch (like LUI from MIPS) a) it consumes an instruction (space and time) b) it consumes a register unnecessarily c) it consumes power that direct delivery of the constant would not