Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

Linux: The OS people choose without $200,000,000 of persuasion. -- Mike Coleman


devel / comp.arch / Re: Could we build a better 6502?

SubjectAuthor
* Could we build a better 6502?Thomas Koenig
+* Re: Could we build a better 6502?Quadibloc
|+* Re: Could we build a better 6502?John Levine
||+* Re: Could we build a better 6502?MitchAlsup
|||`* Re: Could we build a better 6502?aph
||| `* Re: Could we build a better 6502?Anton Ertl
|||  `* Re: Could we build a better 6502?MitchAlsup
|||   +- Re: Could we build a better 6502?Thomas Koenig
|||   +- Re: Could we build a better 6502?Anton Ertl
|||   `* Re: Could we build a better 6502?Quadibloc
|||    `* Re: Could we build a better 6502?Thomas Koenig
|||     +* Re: Could we build a better 6502?Brian G. Lucas
|||     |`* Re: Could we build a better 6502?Quadibloc
|||     | +- Re: Could we build a better 6502?Brian G. Lucas
|||     | `- Re: Could we build a better 6502?Anton Ertl
|||     +* Re: Could we build a better 6502?Stephen Fuld
|||     |+- Re: Could we build a better 6502?Terje Mathisen
|||     |`* Re: Could we build a better 6502?pec...@gmail.com
|||     | +* Re: Could we build a better 6502?MitchAlsup
|||     | |+* Re: Could we build a better 6502?pec...@gmail.com
|||     | ||`* Re: Could we build a better 6502?Stephen Fuld
|||     | || `- Re: Could we build a better 6502?pec...@gmail.com
|||     | |`* Re: Could we build a better 6502?Timothy McCaffrey
|||     | | +- Re: Could we build a better 6502?Michael Barry
|||     | | `* Re: Could we build a better 6502?Thomas Koenig
|||     | |  `* Re: Could we build a better 6502?Timothy McCaffrey
|||     | |   +* Re: Could we build a better 6502?pec...@gmail.com
|||     | |   |`* Re: Could we build a better 6502?Michael Barry
|||     | |   | `- Re: Could we build a better 6502?Thomas Koenig
|||     | |   `* Re: Could we build a better 6502?chris
|||     | |    `* Re: Could we build a better 6502?pec...@gmail.com
|||     | |     +* Re: Could we build a better 6502?MitchAlsup
|||     | |     |`- Re: Could we build a better 6502?Thomas Koenig
|||     | |     `* Re: Could we build a better 6502?chris
|||     | |      `* Re: Could we build a better 6502?George Neuner
|||     | |       `* Re: Could we build a better 6502?chris
|||     | |        +* Re: Could we build a better 6502?MitchAlsup
|||     | |        |`* Re: Could we build a better 6502?Thomas Koenig
|||     | |        | +- Re: Could we build a better 6502?Bernd Linsel
|||     | |        | `* Re: Could we build a better 6502?David Brown
|||     | |        |  `* Re: Could we build a better 6502?chris
|||     | |        |   `* Re: Could we build a better 6502?David Brown
|||     | |        |    `* Re: Could we build a better 6502?Terje Mathisen
|||     | |        |     `* Re: Could we build a better 6502?Thomas Koenig
|||     | |        |      `- Re: Could we build a better 6502?Terje Mathisen
|||     | |        `* Re: Could we build a better 6502?Al Grant
|||     | |         `- Re: Could we build a better 6502?chris
|||     | `* Re: Could we build a better 6502?Thomas Koenig
|||     |  +- Re: Could we build a better 6502?MitchAlsup
|||     |  +- Re: Could we build a better 6502?pec...@gmail.com
|||     |  +* Re: Could we build a better 6502?Thomas Koenig
|||     |  |+* Re: Could we build a better 6502?Stefan Monnier
|||     |  ||`* Re: Could we build a better 6502?Ivan Godard
|||     |  || `* Re: Could we build a better 6502?Stefan Monnier
|||     |  ||  `* Re: Could we build a better 6502?John Dallman
|||     |  ||   +- Re: Could we build a better 6502?Stefan Monnier
|||     |  ||   +* Re: Could we build a better 6502?pec...@gmail.com
|||     |  ||   |`- Re: Could we build a better 6502?Ivan Godard
|||     |  ||   `- Re: Could we build a better 6502?Stephen Fuld
|||     |  |`* Re: Could we build a better 6502?pec...@gmail.com
|||     |  | `* Re: Could we build a better 6502?Thomas Koenig
|||     |  |  `- Re: Could we build a better 6502?pec...@gmail.com
|||     |  `* Re: Could we build a better 6502?Thomas Koenig
|||     |   +* Re: Could we build a better 6502?Anton Ertl
|||     |   |+* Re: Could we build a better 6502?Thomas Koenig
|||     |   ||`* Re: Could we build a better 6502?pec...@gmail.com
|||     |   || `- Re: Could we build a better 6502?MitchAlsup
|||     |   |`* Re: Could we build a better 6502?David Schultz
|||     |   | +* Re: Could we build a better 6502?Anton Ertl
|||     |   | |`- Re: Could we build a better 6502?David Schultz
|||     |   | `* Re: Could we build a better 6502?MitchAlsup
|||     |   |  `* Re: Could we build a better 6502?pec...@gmail.com
|||     |   |   `- Re: Could we build a better 6502?MitchAlsup
|||     |   `- Re: Could we build a better 6502?MitchAlsup
|||     `* Re: Could we build a better 6502?Anton Ertl
|||      `* Re: Could we build a better 6502?Thomas Koenig
|||       `* Re: Could we build a better 6502?MitchAlsup
|||        +* Re: Could we build a better 6502?Marcus
|||        |+* Re: Could we build a better 6502?MitchAlsup
|||        ||`* Re: Could we build a better 6502?Thomas Koenig
|||        || `- Re: Could we build a better 6502?Anton Ertl
|||        |`- Re: Could we build a better 6502?Thomas Koenig
|||        `- Re: Could we build a better 6502?Thomas Koenig
||+* Re: Could we build a better 6502?Quadibloc
|||`- Re: Could we build a better PDP-8, was 6502?John Levine
||`- Re: Could we build a better 6502?Tim Rentsch
|`* Re: Could we build a better 6502?Quadibloc
| +* Re: Could we build a better 6502?Thomas Koenig
| |`* Re: Could we build a better 6502?Anton Ertl
| | `* Re: Could we build a better 6502?David Schultz
| |  `* Re: Could we build a better 6502?Brett
| |   `* Re: Could we build a better 6502?David Schultz
| |    `* Re: Could we build a better 6502?Brett
| |     `* Re: Could we build a better 6502?David Schultz
| |      `* Re: Could we build a better 6502?Brett
| |       `- Re: Could we build a better 6502?David Schultz
| +* Re: Could we build a better 6502?Stefan Monnier
| |`* Re: Could we build a better 6502?Thomas Koenig
| | +* Re: Could we build a better 6502?Stefan Monnier
| | |+* Re: Could we build a better 6502?MitchAlsup
| | ||`- Re: Could we build a better 6502?pec...@gmail.com
| | |`* Re: Could we build a better 6502?pec...@gmail.com
| | +- Re: Could we build a better 6502?MitchAlsup
| | `* Re: Could we build a better 6502?pec...@gmail.com
| `- Re: Could we build a better 6502?MitchAlsup
+* Re: Could we build a better 6502?Marcus
+* Re: Could we build a better 6502?MitchAlsup
+* Re: Could we build a better 6502?EricP
+* Re: Could we build a better 6502?Guillaume
+- Re: Could we build a better 6502?EricP
+* Re: Could we build a better 6502?Timothy McCaffrey
+- Re: Could we build a better 6502?JimBrakefield
+* Re: Could we build a better 6502?Anssi Saari
+* Re: Could we build a better 6502?John Dallman
+* Re: Could we build a better 6502?Anton Ertl
+* Re: Could we build a better 6502?Michael Barry
+* Re: Could we build a better 6502?pec...@gmail.com
+* Re: Could we build a better 6502?Bernd Linsel
+- Re: Could we build a better 6502?clamky
+* Re: Could we build a better 6502?Quadibloc
`- Re: Could we build a better 6502?Quadibloc

Pages:12345678910111213
Re: Could we build a better 6502?

<162708436023.19375.15376383822102298119@media.vsta.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19104&group=comp.arch#19104

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: van...@vsta.org (Andy Valencia)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Fri, 23 Jul 2021 16:52:40 -0700
Lines: 11
Message-ID: <162708436023.19375.15376383822102298119@media.vsta.org>
References: <64f676a8-3eb3-4299-87bf-c4277bccc8fan@googlegroups.com> <sde7eg$hgb$1@newsreader4.netcologne.de> <ad5864a4-d8c1-4670-89d2-ef006d00cf1cn@googlegroups.com> <sdf079$3bn$1@newsreader4.netcologne.de>
X-Trace: individual.net Ue1wb0GG2puYxJjbkSpGGwKQlX12OLFI06St2nQlD1fFn9nLAu
X-Orig-Path: media
Cancel-Lock: sha1:1PPyyLEIG8NDIONeCpEN0C9s7vk=
User-Agent: rn.py v0.0.1
 by: Andy Valencia - Fri, 23 Jul 2021 23:52 UTC

Timothy McCaffrey <timcaffrey@aol.com> writes:
> I think you meant 6800 (or 8080), 6809 didn't show up to several years later
> (with 3x the number of transistors).

I was trying to design page faults for the 6809. Exercise for the reader:
What is the worst case number of pages faults which need to be resolved
to complete a single instruction?

Andy Valencia
Home page: https://www.vsta.org/andy/
To contact me: https://www.vsta.org/contact/andy.html

Re: Could we build a better 6502?

<8d2a018e-3f50-4ac5-95f4-02fe74574261n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19110&group=comp.arch#19110

  copy link   Newsgroups: comp.arch
X-Received: by 2002:ad4:5ccc:: with SMTP id iu12mr8209597qvb.21.1627106167725;
Fri, 23 Jul 2021 22:56:07 -0700 (PDT)
X-Received: by 2002:aca:ac46:: with SMTP id v67mr4964981oie.99.1627106167536;
Fri, 23 Jul 2021 22:56:07 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Fri, 23 Jul 2021 22:56:07 -0700 (PDT)
In-Reply-To: <sm0im10aii9.fsf@lakka.kapsi.fi>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:f39a:d100:20ce:a771:e90b:a3aa;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:f39a:d100:20ce:a771:e90b:a3aa
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <sm0im10aii9.fsf@lakka.kapsi.fi>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <8d2a018e-3f50-4ac5-95f4-02fe74574261n@googlegroups.com>
Subject: Re: Could we build a better 6502?
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Sat, 24 Jul 2021 05:56:07 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Quadibloc - Sat, 24 Jul 2021 05:56 UTC

On Friday, July 23, 2021 at 2:21:37 PM UTC-6, Anssi Saari wrote:

> Wasn't it already done with the 65816

That is a better 6502, but the way he phrased his post, I thought
he meant a more optimized 6502, one that fit the 6502 into an
even smaller package with fewer logic gates.

That is something I don't think we could improve on much, if at
all... nor is there any motivation to make the effort to try.

John Savard

Re: Could we build a better 6502?

<sdggje$36g$1@newsreader4.netcologne.de>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19114&group=comp.arch#19114

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!paganini.bofh.team!news.dns-netz.com!news.freedyn.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoe...@netcologne.de (Thomas Koenig)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sat, 24 Jul 2021 07:47:58 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <sdggje$36g$1@newsreader4.netcologne.de>
References: <sde7eg$hgb$1@newsreader4.netcologne.de>
<sm0im10aii9.fsf@lakka.kapsi.fi>
<8d2a018e-3f50-4ac5-95f4-02fe74574261n@googlegroups.com>
Injection-Date: Sat, 24 Jul 2021 07:47:58 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2a0a:a540:a40:0:7285:c2ff:fe6c:992d";
logging-data="3280"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Sat, 24 Jul 2021 07:47 UTC

Quadibloc <jsavard@ecn.ab.ca> schrieb:
> On Friday, July 23, 2021 at 2:21:37 PM UTC-6, Anssi Saari wrote:
>
>> Wasn't it already done with the 65816
>
> That is a better 6502, but the way he phrased his post, I thought
> he meant a more optimized 6502, one that fit the 6502 into an
> even smaller package with fewer logic gates.

It was more along the lines of "what could be the best
microprocessor that could have fitted the transistor and 8 bit
bus limit", which "best" having different quality metrics,
of course.

Re: Could we build a better 6502?

<2021Jul24.122208@mips.complang.tuwien.ac.at>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19122&group=comp.arch#19122

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sat, 24 Jul 2021 10:22:08 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 59
Distribution: world
Message-ID: <2021Jul24.122208@mips.complang.tuwien.ac.at>
References: <sde7eg$hgb$1@newsreader4.netcologne.de>
Injection-Info: reader02.eternal-september.org; posting-host="33a9a59b4e6b0975f5bffca868e1fab6";
logging-data="23291"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19CBxiOr/hY6n4WxLBc9jwe"
Cancel-Lock: sha1:97MOsoc0KBtKb2B1tRMLXucKuQQ=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Sat, 24 Jul 2021 10:22 UTC

Thomas Koenig <tkoenig@netcologne.de> writes:
>Another direction for retro-architectures... I've been looking
>at the 6502 a bit, and it really is quite an interesting design.
>Squeezing the functionality of a CPU into ~3500 transistors (plus
>~1000 transistors used as resistors) was quite an achievement.

[Additional boundary conditions from further down:]
|16 bit address bus, combined program and data bus of 8 bit.

>Could we do better knowing what we know now?

I think so.

Maybe something like the small variant of b16 (first called b16-small,
later renamed into b16, while the original (large) b16 was renamed
into b16-dsp):

https://bernd-paysan.de/b16-presentation.pdf

Having the stacks on-chip would be great, but probably does not fit
the transistor budget, so one would only keep TOS and P on-chip, and
replace the rest with stack pointers (maybe 5 bits each) and one
16-bit buffer (not per stack) for keeping one other stack item after
loading it or before storing it.

The b16 feature of having 3+ instructions (without immediates) per
16-bit word could be good for speed, but requires a 16-bit shift
register for holding the instruction, which we may not want due to its
transistor cost. The alternative is to have a 5-bit and a 3-bit
instruction in an 8-bit byte. One would have to analyse the usage to
decide which instructions to make available through the three bits.

The b16 design uses a 16-bit ALU. One can replace that with several
passes through an 8-bit or 4-bit ALU, at an increase in control logic.
Not sure if that would pay off wrt transistors. The first Nova
certainly took the 4-bit-ALU approach. Given that you need a two-pass
approach for 16-bit memory accesses anyway, the additional cost for a
two-pass approach through an 8-bit ALU may be minor.

I don't think that the b16 has interrupts, so you would need to add
that to be on feature-parity with the 6502.

>"Better" could of course mean different things - more instructions
>per cycle, possibility of higher frequency, higher code density,
>easier programming (programming the 6502 was not easy, especially
>on the C-64 where Commodore had used up almost all of the zero
>page for its Basic - I hardly ever used the X register).

About half of the zero page was used for the kernal (OS), and yes,
BASIC used the other half. But if you did not call into BASIC, you
could use that other half. The X register can be used with 16-bit
base addresses, so even if you don't use the zero page, X is useful.
I did find the (...,X) addressing mode useless, though (even though I
had enough zero-page places for my usage).

- anton
--
'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
Mitch Alsup, <c17fcd89-f024-40e7-a594-88a85ac10d20o@googlegroups.com>

Re: Could we build a better 6502?

<2021Jul24.162915@mips.complang.tuwien.ac.at>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19124&group=comp.arch#19124

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sat, 24 Jul 2021 14:29:15 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 76
Message-ID: <2021Jul24.162915@mips.complang.tuwien.ac.at>
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <sdethg$10ug$1@gioia.aioe.org>
Injection-Info: reader02.eternal-september.org; posting-host="33a9a59b4e6b0975f5bffca868e1fab6";
logging-data="3992"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/27jCq1fF51urCAdMl2SMa"
Cancel-Lock: sha1:/k46Oovi61iNeuqTwYg812xOBgY=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Sat, 24 Jul 2021 14:29 UTC

Guillaume <message@bottle.org> writes:
>I guess using a completely different architecture, based on a very
>simple RISC instruction set, you might be able to do something a bit
>more "powerful" with the same amount of logic, and being able to run at
>much higher frequencies even on old processes. But using such a CPU with
>simple dev tools as they were available at them time would be very
>clunky. Only decent compilers can make efficient use of such simple RISC
>architectures while not making the developers' life a hell. I guess.

You guess wrong. RISCs are easy to program in assembly. It's more
the other way round: Assembly programmers can cope with irregular
register sets like the one of the 6502, while compilers have a hard
time with them; they benefit from the regularity of register machines,
both CISC (e.g., PDP-11, VAX, AMD64), and RISC (all of them).

Concerning a "very simple RISC instruction set", the NOVA has a
load/store architecture. The National Semiconductor IPC-16A/520 PACE
seems to be the first single-chip implementation of an instruction set
similar to the Nova (and the first single-chip 16-bit CPU), announced
in 1974 <https://www.cpu-world.com/CPUs/PACE/index.html>, so maybe
with a similar transistor budget as the 6502. It took 10us per
instruction on average (1MHz 6502 2-7us), somewhat negating the 16-bit
advantage. That's apparently also the case for the other
Nova-inspired microprocessors (microNova and Fairchild 9440), and is
probably the reason why they were not successful; it's unclear to me
why they came out this way, but if it is to be a "better 6502", it
must be avoided.

Concerning the "much higher frequencies", a 6502 in a computer of its
time does not really benefit from a higher clock frequency, because it
accesses memory in most cycles, so a higher-clocked 6502 would
effectively run at the same speed.

So if we want to design something better, we need to design something
that needs fewer memory accesses. The 6502 needs many instructions
and many memory accesses because it has so few registers. It also
needs many instructions because one needs to synthesize 16-bit
operations from several 8-bit instructions.

OTOH, unlike load/store architectures the 6502 has load-op
instructions (and even a few read-modify-write instructions) that
reduce the number of instructions executed compared to an otherwise
similar load/store instruction set.

Still, if I wanted to rise to the challenge, my first pick would be a
16-bit load/store architecture, with as many registers as fit in the
transistor budget. Use an 8-bit ALU to save transistors (you already
need the sequencing logic for 16-bit memory accesses anyway); or
alternatively, use a 16-bit ALU, and perform 8-bit loads and 8-bit
stores programmatically to avoid the sequencing.

My guess is that 3 general-purpose registers should fit (can be
addressed in 2 bits, and have one option for zero/discard-result).
That's of course very tight, especially because you have no additional
stack pointer. If we can fit more registers, it would be better.

Instructions should fit into 8 bits (plus immediate operands/offsets),
so we can afford only one or two register addresses in each
instruction. Would be an interesting exercise for the instruction-set
designers here. Auto-increment/decrement would be cool, but probably
does not fit in the instruction size or transistor size limit.

Calls store the return address in a register, and return is an
indirect jump through that register.

An extra special-purpose register would be needed for holding the
interrupt return address.

- anton

--
'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
Mitch Alsup, <c17fcd89-f024-40e7-a594-88a85ac10d20o@googlegroups.com>

Re: Could we build a better 6502?

<2021Jul24.175049@mips.complang.tuwien.ac.at>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19125&group=comp.arch#19125

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sat, 24 Jul 2021 15:50:49 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 13
Message-ID: <2021Jul24.175049@mips.complang.tuwien.ac.at>
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <sdethg$10ug$1@gioia.aioe.org> <sdf0vd$3bn$3@newsreader4.netcologne.de> <c613eaec-5cda-490a-a84b-87a62b36ad76n@googlegroups.com>
Injection-Info: reader02.eternal-september.org; posting-host="33a9a59b4e6b0975f5bffca868e1fab6";
logging-data="3992"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX18OJJsRR7wnY3v+dYaH0VPm"
Cancel-Lock: sha1:GJwZSKpFqimqtvvt+WecXlk262s=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Sat, 24 Jul 2021 15:50 UTC

MitchAlsup <MitchAlsup@aol.com> writes:
>On Friday, July 23, 2021 at 1:15:11 PM UTC-5, Thomas Koenig wrote:
>> The first time I browsed through handbook on the 68000, I thought=20
>> "This is not assembler, this is a high-level language!"
><
>And they took most of it from the PDP-11

Except the best feature of the PDP-11: general-purpose registers.

- anton
--
'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
Mitch Alsup, <c17fcd89-f024-40e7-a594-88a85ac10d20o@googlegroups.com>

Re: Could we build a better 6502?

<2021Jul24.175222@mips.complang.tuwien.ac.at>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19126&group=comp.arch#19126

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sat, 24 Jul 2021 15:52:22 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 11
Message-ID: <2021Jul24.175222@mips.complang.tuwien.ac.at>
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <memo.20210723223631.14132I@jgd.cix.co.uk>
Injection-Info: reader02.eternal-september.org; posting-host="33a9a59b4e6b0975f5bffca868e1fab6";
logging-data="3992"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19Q50FjJHu2q5++PtxqjWBS"
Cancel-Lock: sha1:8bxM1a0BwZaGWmpbO0SnPsakn5s=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Sat, 24 Jul 2021 15:52 UTC

jgd@cix.co.uk (John Dallman) writes:
>The early ARMs were inspired by the 6502, but only in terms of being
>simple and avoiding microcode.

But the 6502 was microcoded (with the microprogram encoded in the
PLA).

- anton
--
'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
Mitch Alsup, <c17fcd89-f024-40e7-a594-88a85ac10d20o@googlegroups.com>

Re: Could we build a better 6502?

<a3679527-2841-4a73-a961-2712824d09c9n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19128&group=comp.arch#19128

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:620a:d49:: with SMTP id o9mr10187664qkl.378.1627147038174;
Sat, 24 Jul 2021 10:17:18 -0700 (PDT)
X-Received: by 2002:a9d:3a49:: with SMTP id j67mr7262812otc.114.1627147037966;
Sat, 24 Jul 2021 10:17:17 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sat, 24 Jul 2021 10:17:17 -0700 (PDT)
In-Reply-To: <2021Jul24.175049@mips.complang.tuwien.ac.at>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:2478:2de3:e5d1:75a1;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:2478:2de3:e5d1:75a1
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <sdethg$10ug$1@gioia.aioe.org>
<sdf0vd$3bn$3@newsreader4.netcologne.de> <c613eaec-5cda-490a-a84b-87a62b36ad76n@googlegroups.com>
<2021Jul24.175049@mips.complang.tuwien.ac.at>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <a3679527-2841-4a73-a961-2712824d09c9n@googlegroups.com>
Subject: Re: Could we build a better 6502?
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Sat, 24 Jul 2021 17:17:18 +0000
Content-Type: text/plain; charset="UTF-8"
 by: MitchAlsup - Sat, 24 Jul 2021 17:17 UTC

On Saturday, July 24, 2021 at 10:51:53 AM UTC-5, Anton Ertl wrote:
> MitchAlsup <Mitch...@aol.com> writes:
> >On Friday, July 23, 2021 at 1:15:11 PM UTC-5, Thomas Koenig wrote:
> >> The first time I browsed through handbook on the 68000, I thought=20
> >> "This is not assembler, this is a high-level language!"
> ><
> >And they took most of it from the PDP-11
> Except the best feature of the PDP-11: general-purpose registers.
<
They thought they were doing better with A and D registers.
<
> - anton
> --
> 'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
> Mitch Alsup, <c17fcd89-f024-40e7...@googlegroups.com>

Re: Could we build a better 6502?

<_YXKI.24291$Nq7.13736@fx33.iad>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19129&group=comp.arch#19129

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!aioe.org!feeder1.feed.usenet.farm!feed.usenet.farm!newsfeed.xs4all.nl!newsfeed9.news.xs4all.nl!news-out.netnews.com!news.alt.net!fdc3.netnews.com!peer03.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!fx33.iad.POSTED!not-for-mail
From: ThatWoul...@thevillage.com (EricP)
User-Agent: Thunderbird 2.0.0.24 (Windows/20100228)
MIME-Version: 1.0
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <sdeci7$re5$1@dont-email.me> <sdei1n$pb4$1@newsreader4.netcologne.de> <0bCKI.27849$bR5.27689@fx44.iad> <10f4292e-7e9a-4ded-960e-aa233e365f0cn@googlegroups.com>
In-Reply-To: <10f4292e-7e9a-4ded-960e-aa233e365f0cn@googlegroups.com>
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit
Lines: 50
Message-ID: <_YXKI.24291$Nq7.13736@fx33.iad>
X-Complaints-To: abuse@UsenetServer.com
NNTP-Posting-Date: Sat, 24 Jul 2021 17:19:54 UTC
Date: Sat, 24 Jul 2021 13:18:54 -0400
X-Received-Bytes: 2999
 by: EricP - Sat, 24 Jul 2021 17:18 UTC

MitchAlsup wrote:
> On Friday, July 23, 2021 at 11:33:05 AM UTC-5, EricP wrote:
>>
>> Static CMOS doesn't have any equivalent to wire-OR so there is little
>> saving making static PLAs. Instead PLAs are built out of dynamic logic.
>> But I don't see them explicitly referenced in designs much
>> so I think the tricky dynamic aspect keeps designers away.
> <
> Err, no........
> All of the 68K family (at least the ones before 040) used PLAs.
> The 88Ks used a PLA--well, actually ½ a PLA; we used a single NOR
> plane as the decoder in 88100.
> Lots of other designs used PLAs or NOR planes because they were
> DENSE--as dense as DRAMs with mask programmable bit patterns.
> I bet most of the microprocessors, prior to the RISC revolution, used
> PLAs (or NOR planes).
> <
> One of the clever things 68020 did was to place an XOR gate between
> the two NOR planes of the PLA which vastly increases the kinds of
> patterns one could decode !!
> <

Yes but those were 30 to 35 years ago.
I haven't seen PLA's mentioned in a design in at least 20 years,
though I would imagine that Intel and AMD use them for the decoders.

The 88100's single NOR plane would have less strict timing than a
PLA with two planes. From what I have read, ideally the first plane
drives the second directly - one doesn't want a layer of latches between.
However before the first plane signals stabilize, they can glitch the
second plane and cause it to erroneously discharge.
I can see this would be finicky circuitry and possibly susceptible
to timing changes due to process variation.

I looked at the 88100 instruction encodings -
I still haven't figured out how you got away with just 1 NOR plane.

>> Also tools like Verilog don't generate PLAs.
> <
> NO but microcode assemblers do !
> <

Yes but how would one do a simulation test of a whole design?

I suppose the PLA assembler could generate a Verilog UNIQUE CASEX statement
with ? don't cares which implements the equivalent logic to the PLA.
That could be used to test the logic functionality but not the timing.

Re: Could we build a better 6502?

<sdhkr7$15vg$1@gal.iecc.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19131&group=comp.arch#19131

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder6.news.weretis.net!news.cmpublishers.com!adore2!news.iecc.com!.POSTED.news.iecc.com!not-for-mail
From: joh...@taugh.com (John Levine)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sat, 24 Jul 2021 18:06:31 -0000 (UTC)
Organization: Taughannock Networks
Message-ID: <sdhkr7$15vg$1@gal.iecc.com>
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <be7f8928-ee11-422e-b11e-f89d3ad39782n@googlegroups.com>
Injection-Date: Sat, 24 Jul 2021 18:06:31 -0000 (UTC)
Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970";
logging-data="38896"; mail-complaints-to="abuse@iecc.com"
In-Reply-To: <sde7eg$hgb$1@newsreader4.netcologne.de> <be7f8928-ee11-422e-b11e-f89d3ad39782n@googlegroups.com>
Cleverness: some
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: johnl@iecc.com (John Levine)
 by: John Levine - Sat, 24 Jul 2021 18:06 UTC

According to Quadibloc <jsavard@ecn.ab.ca>:
>On Friday, July 23, 2021 at 4:59:30 AM UTC-6, Thomas Koenig wrote:
>> Another direction for retro-architectures... I've been looking
>> at the 6502 a bit, and it really is quite an interesting design.
>> Squeezing the functionality of a CPU into ~3500 transistors (plus
>> ~1000 transistors used as resistors) was quite an achievement.
>
>Indeed.
>
>However, even the 6502, let alone the 6800 or the 8080, seemed
>to me to have very complicated instruction sets compared to the
>PDP-8.

The original PDP-8 had only 1409 transisors, each one in a separate can,
so it's not surprising. The first computer I programmed was a PDP-8 and
it was a fantastically well-done tradeoff between extreme simplicity and
usability.

--
Regards,
John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
Please consider the environment before reading this e-mail. https://jl.ly

Re: Could we build a better 6502?

<a783990f-90b7-44f8-9b01-75fcbc4c8ef2n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19132&group=comp.arch#19132

  copy link   Newsgroups: comp.arch
X-Received: by 2002:ac8:540f:: with SMTP id b15mr9115760qtq.193.1627150284175;
Sat, 24 Jul 2021 11:11:24 -0700 (PDT)
X-Received: by 2002:a05:6830:929:: with SMTP id v41mr6644832ott.16.1627150283954;
Sat, 24 Jul 2021 11:11:23 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sat, 24 Jul 2021 11:11:23 -0700 (PDT)
In-Reply-To: <_YXKI.24291$Nq7.13736@fx33.iad>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:2478:2de3:e5d1:75a1;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:2478:2de3:e5d1:75a1
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <sdeci7$re5$1@dont-email.me>
<sdei1n$pb4$1@newsreader4.netcologne.de> <0bCKI.27849$bR5.27689@fx44.iad>
<10f4292e-7e9a-4ded-960e-aa233e365f0cn@googlegroups.com> <_YXKI.24291$Nq7.13736@fx33.iad>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <a783990f-90b7-44f8-9b01-75fcbc4c8ef2n@googlegroups.com>
Subject: Re: Could we build a better 6502?
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Sat, 24 Jul 2021 18:11:24 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
 by: MitchAlsup - Sat, 24 Jul 2021 18:11 UTC

On Saturday, July 24, 2021 at 12:19:57 PM UTC-5, EricP wrote:
> MitchAlsup wrote:
> > On Friday, July 23, 2021 at 11:33:05 AM UTC-5, EricP wrote:
> >>
> >> Static CMOS doesn't have any equivalent to wire-OR so there is little
> >> saving making static PLAs. Instead PLAs are built out of dynamic logic..
> >> But I don't see them explicitly referenced in designs much
> >> so I think the tricky dynamic aspect keeps designers away.
> > <
> > Err, no........
> > All of the 68K family (at least the ones before 040) used PLAs.
> > The 88Ks used a PLA--well, actually ½ a PLA; we used a single NOR
> > plane as the decoder in 88100.
> > Lots of other designs used PLAs or NOR planes because they were
> > DENSE--as dense as DRAMs with mask programmable bit patterns.
> > I bet most of the microprocessors, prior to the RISC revolution, used
> > PLAs (or NOR planes).
> > <
> > One of the clever things 68020 did was to place an XOR gate between
> > the two NOR planes of the PLA which vastly increases the kinds of
> > patterns one could decode !!
> > <
> Yes but those were 30 to 35 years ago.
> I haven't seen PLA's mentioned in a design in at least 20 years,
> though I would imagine that Intel and AMD use them for the decoders.
<
A lot of microcode moved towards ROM territory:: a ROM is a PLA that
happens the the first layer is a decoder (which could be done with a NOR
plane but the decoder is faster and fewer gates.) IIRC: Athlon had a bit
more than 3K µwords and Opteron had a bit more than 4K µwords.
>
> The 88100's single NOR plane would have less strict timing than a
> PLA with two planes. From what I have read, ideally the first plane
> drives the second directly - one doesn't want a layer of latches between.
<
Back in the 88100 there was a latch before the NOR plane and a latch
at the output of the NOR plane and the NOR plane carefully biased
and the latch input carefully sized so that the latch acted as a sense
amplifier.
<
The latch directly drove the first ½ cycle of the datapath select
lines. This corresponds to the first ½ of integer execution or the
delivery of operands to the MUL or FADD units. The second ½
of the cycle might come from the NOR plane (int) or from the
sequencers (AGEN, MUL, and FADD).
<
> However before the first plane signals stabilize, they can glitch the
> second plane and cause it to erroneously discharge.
> I can see this would be finicky circuitry and possibly susceptible
> to timing changes due to process variation.
>
> I looked at the 88100 instruction encodings -
> I still haven't figured out how you got away with just 1 NOR plane.
<
Dig deeper......
<
> >> Also tools like Verilog don't generate PLAs.
> > <
> > NO but microcode assemblers do !
> > <
> Yes but how would one do a simulation test of a whole design?
>
> I suppose the PLA assembler could generate a Verilog UNIQUE CASEX statement
> with ? don't cares which implements the equivalent logic to the PLA.
> That could be used to test the logic functionality but not the timing.
<
Nah:: just have the assembler spit out a VERILOG table directly--there is
no more reason to be able to read it here than the average coder reading
assembly language.

Re: Could we build a better 6502?

<7ba1c011-0d7a-40f3-b690-a729134ac9ecn@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19133&group=comp.arch#19133

  copy link   Newsgroups: comp.arch
X-Received: by 2002:ac8:4783:: with SMTP id k3mr8655476qtq.296.1627150408660; Sat, 24 Jul 2021 11:13:28 -0700 (PDT)
X-Received: by 2002:aca:3094:: with SMTP id w142mr5328372oiw.37.1627150408349; Sat, 24 Jul 2021 11:13:28 -0700 (PDT)
Path: i2pn2.org!i2pn.org!aioe.org!news.uzoreto.com!tr3.eu1.usenetexpress.com!feeder.usenetexpress.com!tr3.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sat, 24 Jul 2021 11:13:28 -0700 (PDT)
In-Reply-To: <sdhkr7$15vg$1@gal.iecc.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:2478:2de3:e5d1:75a1; posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:2478:2de3:e5d1:75a1
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <be7f8928-ee11-422e-b11e-f89d3ad39782n@googlegroups.com> <sdhkr7$15vg$1@gal.iecc.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <7ba1c011-0d7a-40f3-b690-a729134ac9ecn@googlegroups.com>
Subject: Re: Could we build a better 6502?
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Sat, 24 Jul 2021 18:13:28 +0000
Content-Type: text/plain; charset="UTF-8"
Lines: 26
 by: MitchAlsup - Sat, 24 Jul 2021 18:13 UTC

On Saturday, July 24, 2021 at 1:06:33 PM UTC-5, John Levine wrote:
> According to Quadibloc <jsa...@ecn.ab.ca>:
> >On Friday, July 23, 2021 at 4:59:30 AM UTC-6, Thomas Koenig wrote:
> >> Another direction for retro-architectures... I've been looking
> >> at the 6502 a bit, and it really is quite an interesting design.
> >> Squeezing the functionality of a CPU into ~3500 transistors (plus
> >> ~1000 transistors used as resistors) was quite an achievement.
> >
> >Indeed.
> >
> >However, even the 6502, let alone the 6800 or the 8080, seemed
> >to me to have very complicated instruction sets compared to the
> >PDP-8.
>
> The original PDP-8 had only 1409 transisors, each one in a separate can,
> so it's not surprising. The first computer I programmed was a PDP-8 and
> it was a fantastically well-done tradeoff between extreme simplicity and
> usability.
<
Not quite a fair comparison: In the logic family of the PDP-8, 1 transistor
could make a 5-input NAND gate whereas in the 6502 logic family this
would take 6 transistors (5 pull downs (N-ch) and 1 pull up (depletion).)
>
> --
> Regards,
> John Levine, jo...@taugh.com, Primary Perpetrator of "The Internet for Dummies",
> Please consider the environment before reading this e-mail. https://jl.ly

Re: Could we build a better 6502?

<sdhlke$tvr$1@newsreader4.netcologne.de>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19134&group=comp.arch#19134

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoe...@netcologne.de (Thomas Koenig)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sat, 24 Jul 2021 18:19:58 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <sdhlke$tvr$1@newsreader4.netcologne.de>
References: <sde7eg$hgb$1@newsreader4.netcologne.de>
<sdethg$10ug$1@gioia.aioe.org>
<2021Jul24.162915@mips.complang.tuwien.ac.at>
Injection-Date: Sat, 24 Jul 2021 18:19:58 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2a0a:a540:a40:0:7285:c2ff:fe6c:992d";
logging-data="30715"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Sat, 24 Jul 2021 18:19 UTC

Anton Ertl <anton@mips.complang.tuwien.ac.at> schrieb:
> Guillaume <message@bottle.org> writes:

> Concerning a "very simple RISC instruction set", the NOVA has a
> load/store architecture. The National Semiconductor IPC-16A/520 PACE
> seems to be the first single-chip implementation of an instruction set
> similar to the Nova (and the first single-chip 16-bit CPU), announced
> in 1974 <https://www.cpu-world.com/CPUs/PACE/index.html>, so maybe
> with a similar transistor budget as the 6502.

https://www.cpu-world.com/CPUs/INS8900/index.html states that

# The fastest INS8900 instruction can be executed in 4 machine
# cycles, and require 1 read cycle. Since each machine cycle takes
# 4 clock cycles, it takes at least 17 clock cycles to execute one
# instruction. INS8900 CPU, running at 2 MHz, has 0.5 microsecond
# cycle, and thus can execute at most 117,600 instructions per
# second. That is much slower than instruction per second rate of
# many popular 8-bit processors of the time - Intel 8080, MOS 6502,
# or Motorola 6800.

Having "machine cycles" which were quite a few clock cycles seems
to have been done frequently, the Z80 also did this (I assume to
deal with its 4-bit ALU). This is also why the Z80 was not much
faster than the 6502 despite its much higher clock rates.

I think the 6502 had its clock cycles (only? partially?) determined
by its 8-bit ripple carry adder(s), which is why many instructions
where the address + index crossed a page boundary took an extra
cycle.

Re: Could we build a better 6502?

<m2oofgdag5umsjv04cebjvrrtv9eipnqac@4ax.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19136&group=comp.arch#19136

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: gneun...@comcast.net (George Neuner)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sat, 24 Jul 2021 14:54:09 -0400
Organization: A noiseless patient Spider
Lines: 43
Message-ID: <m2oofgdag5umsjv04cebjvrrtv9eipnqac@4ax.com>
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <ef98dbca-46aa-45f0-861b-e1b872d58c62n@googlegroups.com>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Injection-Info: reader02.eternal-september.org; posting-host="0abdd7266ed09c098a430e37be17d2a5";
logging-data="11778"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/3bA6WqX9givLo0UoNteKXop8k9KDYBSI="
User-Agent: ForteAgent/8.00.32.1272
Cancel-Lock: sha1:MzouSviTyzLrgrwmEFZYx41GmCw=
 by: George Neuner - Sat, 24 Jul 2021 18:54 UTC

On Fri, 23 Jul 2021 12:27:39 -0700 (PDT), Timothy McCaffrey
<timcaffrey@aol.com> wrote:

>On Friday, July 23, 2021 at 6:59:30 AM UTC-4, Thomas Koenig wrote:
>> Another direction for retro-architectures... I've been looking
>> at the 6502 a bit, and it really is quite an interesting design.
>> Squeezing the functionality of a CPU into ~3500 transistors (plus
>> ~1000 transistors used as resistors) was quite an achievement.
>>
>> Could we do better knowing what we know now?
>>
>> "Better" could of course mean different things - more instructions
>> per cycle, possibility of higher frequency, higher code density,
>> easier programming (programming the 6502 was not easy, especially
>> on the C-64 where Commodore had used up almost all of the zero
>> page for its Basic - I hardly ever used the X register).
>>
>> The boundary conditions were of course severe. 16 bit address
>> bus, combined program and data bus of 8 bit. At least memory
>> was rather fast and could be accessed once per cycle without
>> problems (and even with the possibility of another, interleaved
>> access for graphics). Plus, any more transistors were bound to
>> increase the size and decrease the yield, leading to much
>> higher cost and erosion of the competetive advantage that the
>> 6502 and its derivatives had at the time.
>
>16 bit Stack pointer.
>
>Some optimizations that found their way into follow on products (I think these are documented on the Wikipedia page).
>IIRC, there was a sequencer optimization to one of the addressing modes that sped things up by ~15%.
>
>16 bit X & Y would have been great, especially if they supported some 16 bit math.
>Get rid of the (mostly) unused addressing modes.
>Direct Page register like the 6809.

That's the 65c802: 16-bit registers, direct page, pin compatible with
65c02.

65c816 adds 24 bit address space.

WDC supposedly also was working on a 32-bit version that included
floating point ... but AFAIK, nothing came of it.

Re: Could we build a better 6502?

<4f0b4ea2-a40a-4565-bf12-044063f7df93n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19140&group=comp.arch#19140

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a0c:d44e:: with SMTP id r14mr7888261qvh.61.1627159370602;
Sat, 24 Jul 2021 13:42:50 -0700 (PDT)
X-Received: by 2002:a9d:491c:: with SMTP id e28mr6972610otf.342.1627159370398;
Sat, 24 Jul 2021 13:42:50 -0700 (PDT)
Path: i2pn2.org!i2pn.org!aioe.org!feeder1.feed.usenet.farm!feed.usenet.farm!newsfeed.xs4all.nl!newsfeed7.news.xs4all.nl!news-out.netnews.com!news.alt.net!fdc3.netnews.com!peer02.ams1!peer.ams1.xlned.com!news.xlned.com!peer01.iad!feed-me.highwinds-media.com!news.highwinds-media.com!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sat, 24 Jul 2021 13:42:50 -0700 (PDT)
In-Reply-To: <sdhkr7$15vg$1@gal.iecc.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:f39a:d100:4568:db05:6e53:ccff;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:f39a:d100:4568:db05:6e53:ccff
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <be7f8928-ee11-422e-b11e-f89d3ad39782n@googlegroups.com>
<sdhkr7$15vg$1@gal.iecc.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <4f0b4ea2-a40a-4565-bf12-044063f7df93n@googlegroups.com>
Subject: Re: Could we build a better 6502?
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Sat, 24 Jul 2021 20:42:50 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 2220
 by: Quadibloc - Sat, 24 Jul 2021 20:42 UTC

On Saturday, July 24, 2021 at 12:06:33 PM UTC-6, John Levine wrote:
> According to Quadibloc <jsa...@ecn.ab.ca>:

> >However, even the 6502, let alone the 6800 or the 8080, seemed
> >to me to have very complicated instruction sets compared to the
> >PDP-8.

> The original PDP-8 had only 1409 transisors, each one in a separate can,
> so it's not surprising. The first computer I programmed was a PDP-8 and
> it was a fantastically well-done tradeoff between extreme simplicity and
> usability.

I wonder what the transistor count of the PDP-5 was.

The PDP-5 was the predecessor of the PDP-8; its instruction set
was almost identical. However, it used memory location 0 as the
program counter.

When the program counter was added to the PDP-8 as a separate
register, they changed the locations used to save return data for
interrupts to use location 0, making the two computers incompatible.

Also, the PDP-5 was normally connected to a 5-level Teletype rather
than an ASCII one.

John Savard

Re: Could we build a better 6502?

<2021Jul24.234617@mips.complang.tuwien.ac.at>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19142&group=comp.arch#19142

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ant...@mips.complang.tuwien.ac.at (Anton Ertl)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sat, 24 Jul 2021 21:46:17 GMT
Organization: Institut fuer Computersprachen, Technische Universitaet Wien
Lines: 16
Distribution: world
Message-ID: <2021Jul24.234617@mips.complang.tuwien.ac.at>
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <sdethg$10ug$1@gioia.aioe.org> <2021Jul24.162915@mips.complang.tuwien.ac.at> <sdhlke$tvr$1@newsreader4.netcologne.de>
Injection-Info: reader02.eternal-september.org; posting-host="33a9a59b4e6b0975f5bffca868e1fab6";
logging-data="25806"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX186LZrSb257/i9P8zANSvv3"
Cancel-Lock: sha1:jJKoxUDm9sMLhdq3v/w5T9A/MLY=
X-newsreader: xrn 10.00-beta-3
 by: Anton Ertl - Sat, 24 Jul 2021 21:46 UTC

Thomas Koenig <tkoenig@netcologne.de> writes:
>I think the 6502 had its clock cycles (only? partially?) determined
>by its 8-bit ripple carry adder(s), which is why many instructions
>where the address + index crossed a page boundary took an extra
>cycle.

The extra cycle is necessary because the high byte then has to run
through the 8-bit ALU to get incremented. See the data path at
<http://www.weihenstephan.org/~michaste/pagetable/6502/6502.jpg>. The
only other parts that can increment are only connected to the program
counter.

- anton
--
'Anyone trying for "industrial quality" ISA should avoid undefined behavior.'
Mitch Alsup, <c17fcd89-f024-40e7-a594-88a85ac10d20o@googlegroups.com>

Re: Could we build a better 6502?

<sdi8ds$ngf$1@dont-email.me>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19144&group=comp.arch#19144

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: ber...@net2o.de (Bernd Paysan)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sat, 24 Jul 2021 23:40:44 -0000 (UTC)
Organization: A noiseless patient Spider
Lines: 52
Message-ID: <sdi8ds$ngf$1@dont-email.me>
References: <sde7eg$hgb$1@newsreader4.netcologne.de>
<2021Jul24.122208@mips.complang.tuwien.ac.at>
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Injection-Date: Sat, 24 Jul 2021 23:40:44 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="93f05e0c9de6ea013ad371bbc888119c";
logging-data="24079"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19kGOQvB423lfeDJ4aa4i5CkAokylP1jYQ="
User-Agent: Pan/0.146 (Hic habitat felicitas; 8107378
git@gitlab.gnome.org:GNOME/pan.git)
Cancel-Lock: sha1:hvDXjbNU7qWT6WdRsEevReINRg0=
 by: Bernd Paysan - Sat, 24 Jul 2021 23:40 UTC

Am Sat, 24 Jul 2021 10:22:08 GMT schrieb Anton Ertl:

> Thomas Koenig <tkoenig@netcologne.de> writes:
>>Could we do better knowing what we know now?
>
> I think so.
>
> Maybe something like the small variant of b16 (first called b16-small,
> later renamed into b16, while the original (large) b16 was renamed into
> b16-dsp):
>
> https://bernd-paysan.de/b16-presentation.pdf
>
> Having the stacks on-chip would be great, but probably does not fit the
> transistor budget, so one would only keep TOS and P on-chip, and replace
> the rest with stack pointers (maybe 5 bits each) and one 16-bit buffer
> (not per stack) for keeping one other stack item after loading it or
> before storing it.

Dynamic structures (DRAM-style storage elements) are ok with an NMOS
CPU. A DRAM cell is 2 transistors (one used as switch, one used as
capacitor). 2*256 transistors for 2*8 cells stack looks ok.

As long as the stack is used push/pull only (means NOS is kept in a
register), reads can be destructive (you read when you pull, so the data
is no longer needed). Refresh logic could be software requirement (don't
keep things on the on-chip stack for more than a few 1000 instructions),
or a refresh interrupt would read out the stacks into main memory and
read them in again once every few 1000 instructions.

> The b16 design uses a 16-bit ALU. One can replace that with several
> passes through an 8-bit or 4-bit ALU, at an increase in control logic.
> Not sure if that would pay off wrt transistors. The first Nova
> certainly took the 4-bit-ALU approach. Given that you need a two-pass
> approach for 16-bit memory accesses anyway, the additional cost for a
> two-pass approach through an 8-bit ALU may be minor.

Probably. ALUs are not that big after all.

> I don't think that the b16 has interrupts, so you would need to add that
> to be on feature-parity with the 6502.

Yes. The use cases of the b16 didn't require interrupts, a “wait for an
event” feature was sufficient. The downside of interrupts is that you
need some stack space for them; the absolute minimum is one return and
one data stack item.

--
Bernd Paysan
"If you want it done right, you have to do it yourself"
net2o id: kQusJzA;7*?t=uy@X}1GWr!+0qqp_Cn176t4(dQ*
https://bernd-paysan.de/

Re: Could we build a better PDP-8, was 6502?

<sdid4r$2tdn$1@gal.iecc.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19145&group=comp.arch#19145

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!paganini.bofh.team!news.dns-netz.com!news.freedyn.net!newsfeed.xs4all.nl!newsfeed8.news.xs4all.nl!tr1.eu1.usenetexpress.com!feeder.usenetexpress.com!tr2.iad1.usenetexpress.com!border1.nntp.dca1.giganews.com!nntp.giganews.com!news.iecc.com!.POSTED.news.iecc.com!not-for-mail
From: joh...@taugh.com (John Levine)
Newsgroups: comp.arch
Subject: Re: Could we build a better PDP-8, was 6502?
Date: Sun, 25 Jul 2021 01:01:15 -0000 (UTC)
Organization: Taughannock Networks
Message-ID: <sdid4r$2tdn$1@gal.iecc.com>
References: <sde7eg$hgb$1@newsreader4.netcologne.de> <be7f8928-ee11-422e-b11e-f89d3ad39782n@googlegroups.com> <sdhkr7$15vg$1@gal.iecc.com> <4f0b4ea2-a40a-4565-bf12-044063f7df93n@googlegroups.com>
Injection-Date: Sun, 25 Jul 2021 01:01:15 -0000 (UTC)
Injection-Info: gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="95671"; mail-complaints-to="abuse@iecc.com"
In-Reply-To: <sde7eg$hgb$1@newsreader4.netcologne.de> <be7f8928-ee11-422e-b11e-f89d3ad39782n@googlegroups.com> <sdhkr7$15vg$1@gal.iecc.com> <4f0b4ea2-a40a-4565-bf12-044063f7df93n@googlegroups.com>
Cleverness: some
X-Newsreader: trn 4.0-test77 (Sep 1, 2010)
Originator: johnl@iecc.com (John Levine)
Lines: 20
 by: John Levine - Sun, 25 Jul 2021 01:01 UTC

According to Quadibloc <jsavard@ecn.ab.ca>:
>I wonder what the transistor count of the PDP-5 was.
>
>The PDP-5 was the predecessor of the PDP-8; its instruction set
>was almost identical. However, it used memory location 0 as the
>program counter.

Probably not that much fewer than the PDP-8. The main difference was that
the PDP-8 was reimplemented in flip chips rather than the older system
modules. As you note, it put the PC in a register which would mean a few
more flip flops but the architecture was otherwise the same.

>Also, the PDP-5 was normally connected to a 5-level Teletype rather
>than an ASCII one.

No, the price list and manuals say it came with an ASR-33.

--
Regards,
John Levine, johnl@taugh.com, Primary Perpetrator of "The Internet for Dummies",
Please consider the environment before reading this e-mail. https://jl.ly

Re: Could we build a better 6502?

<9e41bc85-aff3-4eb0-adaa-054f37eb7db4n@googlegroups.com>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19147&group=comp.arch#19147

  copy link   Newsgroups: comp.arch
X-Received: by 2002:aed:2163:: with SMTP id 90mr10301842qtc.186.1627187770934;
Sat, 24 Jul 2021 21:36:10 -0700 (PDT)
X-Received: by 2002:a05:6808:2d2:: with SMTP id a18mr7448004oid.84.1627187770460;
Sat, 24 Jul 2021 21:36:10 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.160.216.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Sat, 24 Jul 2021 21:36:10 -0700 (PDT)
In-Reply-To: <sde7eg$hgb$1@newsreader4.netcologne.de>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:bd00:a1a0:d5d0:f519:2d3b:c93a;
posting-account=LutruAoAAAATsnFU5eS3mBdP_JaNBOzH
NNTP-Posting-Host: 2600:1700:bd00:a1a0:d5d0:f519:2d3b:c93a
References: <sde7eg$hgb$1@newsreader4.netcologne.de>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <9e41bc85-aff3-4eb0-adaa-054f37eb7db4n@googlegroups.com>
Subject: Re: Could we build a better 6502?
From: barrym95...@yahoo.com (Michael Barry)
Injection-Date: Sun, 25 Jul 2021 04:36:10 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Michael Barry - Sun, 25 Jul 2021 04:36 UTC

On Friday, July 23, 2021 at 3:59:30 AM UTC-7, Thomas Koenig wrote:
> Another direction for retro-architectures... I've been looking
> at the 6502 a bit, and it really is quite an interesting design.
> Squeezing the functionality of a CPU into ~3500 transistors (plus
> ~1000 transistors used as resistors) was quite an achievement.
>
> Could we do better knowing what we know now?
>
How about wider "bytes"? You could discard the silly 8-bit convention
and go with 9 or 10. You don't lose the classic flavor, but you increase
your opcode space by a power of two and your addressing space by a
power of four. Add a few more registers and a few more addressing
modes, add without carry, subtract without borrow, signed comparisons,
bsr, brl, conditional rts ... whatever floats your boat.

I grew up with the 6502 and the Z80, and they are both brilliant little gems
from the mid-70s. I gravitated toward the 6502 because it was more
accessible to me, and it fit better into my thought processes. I still post
frequently on 6502.org because I love how its assembly language feels in
my tired old brain. The 65816 with its width mode bits ... not so much.

Mike B.

Re: Could we build a better 6502?

<sdj8ur$ue1$1@newsreader4.netcologne.de>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19152&group=comp.arch#19152

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!paganini.bofh.team!news.dns-netz.com!news.freedyn.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoe...@netcologne.de (Thomas Koenig)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sun, 25 Jul 2021 08:55:55 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <sdj8ur$ue1$1@newsreader4.netcologne.de>
References: <sde7eg$hgb$1@newsreader4.netcologne.de>
<9e41bc85-aff3-4eb0-adaa-054f37eb7db4n@googlegroups.com>
Injection-Date: Sun, 25 Jul 2021 08:55:55 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2a0a:a540:a40:0:7285:c2ff:fe6c:992d";
logging-data="31169"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Sun, 25 Jul 2021 08:55 UTC

Michael Barry <barrym95838@yahoo.com> schrieb:
> On Friday, July 23, 2021 at 3:59:30 AM UTC-7, Thomas Koenig wrote:
>> Another direction for retro-architectures... I've been looking
>> at the 6502 a bit, and it really is quite an interesting design.
>> Squeezing the functionality of a CPU into ~3500 transistors (plus
>> ~1000 transistors used as resistors) was quite an achievement.
>>
>> Could we do better knowing what we know now?
>>
> How about wider "bytes"?

(Of course what I am now writing is shifting the goalpost on "8 bit
data bus").

One possibility would be a 16-bit RISC chip simplified down to the
bone, like what Helmut Neeman has done for his Digital simulator.

This is a 16-register, two-operand machine where instructions take
two bytes (one byte opcode, one byte operand) where short immediates
go into the instructions and long immediates are possible. It is
desiged for two-cycle operation, one cycle of memory operation
and one cycle of execution.

If you throw out the multiplier and replace the control ROM by a
PLA, this would come to around 6000 transistors (I have assumed
20 transistors for a full adder, which may be off). Add some more
logic for interrupt handling, and you are higher than the 6502,
but lower than the Z80, and any such CPU would have run rings around
any of the 8-bit CPUs at the time even when clocked a bit lower
than the 6502.

So, for that time machine to go back and tell people about the RISC
revolution in the 1970s - maybe Edson De Castro or Ken Olsen would
have been the wrong people to talk to, Chuck Peddle or Frederico
Faggin would have been better.

Re: Could we build a better 6502?

<sdjl6c$1d3b$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19155&group=comp.arch#19155

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!aioe.org!gQesnmzb0qB9vB6KzIYu2A.user.46.165.242.91.POSTED!not-for-mail
From: terje.ma...@tmsw.no (Terje Mathisen)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sun, 25 Jul 2021 14:24:44 +0200
Organization: Aioe.org NNTP Server
Message-ID: <sdjl6c$1d3b$1@gioia.aioe.org>
References: <sde7eg$hgb$1@newsreader4.netcologne.de>
<sdethg$10ug$1@gioia.aioe.org> <sdf0vd$3bn$3@newsreader4.netcologne.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="46187"; posting-host="gQesnmzb0qB9vB6KzIYu2A.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101
Firefox/60.0 SeaMonkey/2.53.8
X-Notice: Filtered by postfilter v. 0.9.2
 by: Terje Mathisen - Sun, 25 Jul 2021 12:24 UTC

Thomas Koenig wrote:
> Guillaume <message@bottle.org> schrieb:
>> Only decent compilers can make efficient use of such simple RISC
>> architectures while not making the developers' life a hell. I guess.
>
> Hardly a decent compiler around for the 6502 in those days, at
> least I knew none. It was Basic or Assembler (or machine code
> via a monitor, with a hard reset if you made a programming mistake).

Let me fix that documentation bug for you:

"with a hard reset WHEN you made a programming mistake"

:-)

Terje

--
- <Terje.Mathisen at tmsw.no>
"almost all programming can be viewed as an exercise in caching"

Re: Could we build a better 6502?

<sdjlq4$1p53$1@gioia.aioe.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19156&group=comp.arch#19156

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!aioe.org!gQesnmzb0qB9vB6KzIYu2A.user.46.165.242.91.POSTED!not-for-mail
From: terje.ma...@tmsw.no (Terje Mathisen)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sun, 25 Jul 2021 14:35:15 +0200
Organization: Aioe.org NNTP Server
Message-ID: <sdjlq4$1p53$1@gioia.aioe.org>
References: <64f676a8-3eb3-4299-87bf-c4277bccc8fan@googlegroups.com>
<sde7eg$hgb$1@newsreader4.netcologne.de>
<ad5864a4-d8c1-4670-89d2-ef006d00cf1cn@googlegroups.com>
<sdf079$3bn$1@newsreader4.netcologne.de>
<162708436023.19375.15376383822102298119@media.vsta.org>
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Info: gioia.aioe.org; logging-data="58531"; posting-host="gQesnmzb0qB9vB6KzIYu2A.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:60.0) Gecko/20100101
Firefox/60.0 SeaMonkey/2.53.8
X-Notice: Filtered by postfilter v. 0.9.2
 by: Terje Mathisen - Sun, 25 Jul 2021 12:35 UTC

Andy Valencia wrote:
> Timothy McCaffrey <timcaffrey@aol.com> writes:
>> I think you meant 6800 (or 8080), 6809 didn't show up to several years later
>> (with 3x the number of transistors).
>
> I was trying to design page faults for the 6809. Exercise for the reader:
> What is the worst case number of pages faults which need to be resolved
> to complete a single instruction?

I did write some 6809 asm many years ago, but I don't remember enough of
the details now. :-(

In particular, any system with unlimited memory indirect can also cause
unimited number of page faults, even without any hardware looping, but
I'm pretty sure the 6809 didn't allow this?

Terje

--
- <Terje.Mathisen at tmsw.no>
"almost all programming can be viewed as an exercise in caching"

Re: Could we build a better 6502?

<sdjmrd$8f6$1@newsreader4.netcologne.de>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19157&group=comp.arch#19157

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!paganini.bofh.team!news.dns-netz.com!news.freedyn.net!newsreader4.netcologne.de!news.netcologne.de!.POSTED.2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de!not-for-mail
From: tkoe...@netcologne.de (Thomas Koenig)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sun, 25 Jul 2021 12:53:01 -0000 (UTC)
Organization: news.netcologne.de
Distribution: world
Message-ID: <sdjmrd$8f6$1@newsreader4.netcologne.de>
References: <sde7eg$hgb$1@newsreader4.netcologne.de>
<sdethg$10ug$1@gioia.aioe.org> <sdf0vd$3bn$3@newsreader4.netcologne.de>
<sdjl6c$1d3b$1@gioia.aioe.org>
Injection-Date: Sun, 25 Jul 2021 12:53:01 -0000 (UTC)
Injection-Info: newsreader4.netcologne.de; posting-host="2a0a-a540-a40-0-7285-c2ff-fe6c-992d.ipv6dyn.netcologne.de:2a0a:a540:a40:0:7285:c2ff:fe6c:992d";
logging-data="8678"; mail-complaints-to="abuse@netcologne.de"
User-Agent: slrn/1.0.3 (Linux)
 by: Thomas Koenig - Sun, 25 Jul 2021 12:53 UTC

Terje Mathisen <terje.mathisen@tmsw.no> schrieb:
> Thomas Koenig wrote:
>> Guillaume <message@bottle.org> schrieb:
>>> Only decent compilers can make efficient use of such simple RISC
>>> architectures while not making the developers' life a hell. I guess.
>>
>> Hardly a decent compiler around for the 6502 in those days, at
>> least I knew none. It was Basic or Assembler (or machine code
>> via a monitor, with a hard reset if you made a programming mistake).
>
> Let me fix that documentation bug for you:
>
> "with a hard reset WHEN you made a programming mistake"
>
>:-)

While better than the original, this is still not quite correct.
There were some programming mistakes (maybe 10% or so) which only
led to incorrect results and not to a freeze.

So, maybe

"with a hard reset most of the times when you made a programming
mistake" ?

The longest-running program I ever ran on that machine was searching
for Golomb rulers after reading an article on them in the German
version of Scientific American (using Basic for I/O), that ran
for three weeks; the lack of peripherals meant that I had to
take care that nobody unplugged the machine during that time.

Hm. I just saw that Martin Gardner's article in Scientific American
appeared 1972, far too early for me or for the C-64. They must have
reprinted it more than a decade later in the German edition.

Re: Could we build a better 6502?

<162722089396.5736.3112557284479151479@media.vsta.org>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19159&group=comp.arch#19159

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!news.swapon.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail
From: van...@vsta.org (Andy Valencia)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sun, 25 Jul 2021 06:48:13 -0700
Lines: 20
Message-ID: <162722089396.5736.3112557284479151479@media.vsta.org>
References: <sdjlq4$1p53$1@gioia.aioe.org> <64f676a8-3eb3-4299-87bf-c4277bccc8fan@googlegroups.com> <sde7eg$hgb$1@newsreader4.netcologne.de> <ad5864a4-d8c1-4670-89d2-ef006d00cf1cn@googlegroups.com> <sdf079$3bn$1@newsreader4.netcologne.de> <162708436023.19375.15376383822102298119@media.vsta.org>
X-Trace: individual.net RJX5nUn6N/Nc0FkzKdhsqgluY8hiSwp/6vEOpalHq0ZWYKfPi7
X-Orig-Path: media
Cancel-Lock: sha1:m/UfChPc7g9UcIuHkpQeynd4bt0=
User-Agent: rn.py v0.0.1
 by: Andy Valencia - Sun, 25 Jul 2021 13:48 UTC

Terje Mathisen <terje.mathisen@tmsw.no> writes:
> In particular, any system with unlimited memory indirect can also cause
> unimited number of page faults, even without any hardware looping, but
> I'm pretty sure the 6809 didn't allow this?

We were kicking it around in private email (my memory is fuzzy, too).
Given the 6809's unaligned everything, you can have the instruction
straddle pages, the memory ref, the indirect ref, and the result
store all be unaligned memory refs. So... 8?

Of course, bulk memory move/set would also have unbounded, but that
has its own family of fixes to address it.

I vaguely remember a CPU where you could have unlimited indirect
memory references, and you could lock it up with an infinite
loop of them (until they fixed the implementation).

Andy Valencia
Home page: https://www.vsta.org/andy/
To contact me: https://www.vsta.org/contact/andy.html

Re: Could we build a better 6502?

<memo.20210725150820.14132R@jgd.cix.co.uk>

  copy mid

https://www.novabbs.com/devel/article-flat.php?id=19160&group=comp.arch#19160

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: jgd...@cix.co.uk (John Dallman)
Newsgroups: comp.arch
Subject: Re: Could we build a better 6502?
Date: Sun, 25 Jul 2021 15:08 +0100 (BST)
Organization: A noiseless patient Spider
Lines: 10
Message-ID: <memo.20210725150820.14132R@jgd.cix.co.uk>
References: <162722089396.5736.3112557284479151479@media.vsta.org>
Reply-To: jgd@cix.co.uk
Injection-Info: reader02.eternal-september.org; posting-host="ea02df03e370f6807d1e762640da97b4";
logging-data="5363"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1/t2rZGUT+IasvV1TJJCK88Ec6T0/v+AI4="
Cancel-Lock: sha1:h6JDlZky+tgRli40MWAbn2k3xXw=
 by: John Dallman - Sun, 25 Jul 2021 14:08 UTC

In article <162722089396.5736.3112557284479151479@media.vsta.org>,
vandys@vsta.org (Andy Valencia) wrote:

> I vaguely remember a CPU where you could have unlimited indirect
> memory references, and you could lock it up with an infinite
> loop of them (until they fixed the implementation).

The DEC PDP-10 had this, although there may have been others.

John


devel / comp.arch / Re: Could we build a better 6502?

Pages:12345678910111213
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor