Rocksolid Light

Welcome to novaBBS (click a section below)

mail  files  register  newsreader  groups  login

Message-ID:  

"In short, _N is Richardian if, and only if, _N is not Richardian."


devel / comp.arch / Re: Are 24-bit Insttructions Possible?

SubjectAuthor
* Are 24-bit Insttructions Possible?Quadibloc
+- Re: Are 24-bit Insttructions Possible?BGB
+* Re: Are 24-bit Insttructions Possible?MitchAlsup
|+* Re: Are 24-bit Insttructions Possible?BGB
||`* Re: Are 24-bit Insttructions Possible?MitchAlsup
|| `- Re: Are 24-bit Insttructions Possible?BGB
|`* Re: Are 24-bit Insttructions Possible?Quadibloc
| +* Re: Are 24-bit Insttructions Possible?MitchAlsup
| |`* Re: Are 24-bit Insttructions Possible?Quadibloc
| | `* Re: Are 24-bit Insttructions Possible?MitchAlsup
| |  +* Re: Are 24-bit Insttructions Possible?Quadibloc
| |  |`- Re: Are 24-bit Insttructions Possible?Quadibloc
| |  +- Re: Are 24-bit Insttructions Possible?Ivan Godard
| |  `- Re: Are 24-bit Insttructions Possible?Terje Mathisen
| `* Re: Are 24-bit Insttructions Possible?Timothy McCaffrey
|  `- Re: Are 24-bit Insttructions Possible?Timothy McCaffrey
`* Re: Are 24-bit Insttructions Possible?Quadibloc
 +* Re: Are 24-bit Insttructions Possible?MitchAlsup
 |+- Re: Are 24-bit Insttructions Possible?Stephen Fuld
 |`- Re: Are 24-bit Insttructions Possible?Quadibloc
 `- Re: Are 24-bit Insttructions Possible?JimBrakefield

1
Are 24-bit Insttructions Possible?

<2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:ac8:5790:0:b0:305:bd1:f7b0 with SMTP id v16-20020ac85790000000b003050bd1f7b0mr13158922qta.94.1654997096472;
Sat, 11 Jun 2022 18:24:56 -0700 (PDT)
X-Received: by 2002:ac8:5cc9:0:b0:304:e03b:5964 with SMTP id
s9-20020ac85cc9000000b00304e03b5964mr35431211qta.433.1654997096341; Sat, 11
Jun 2022 18:24:56 -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, 11 Jun 2022 18:24:56 -0700 (PDT)
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fb70:6300:6947:3c86:73e1:a64e;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fb70:6300:6947:3c86:73e1:a64e
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
Subject: Are 24-bit Insttructions Possible?
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Sun, 12 Jun 2022 01:24:56 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Quadibloc - Sun, 12 Jun 2022 01:24 UTC

Clearly, an old-style 24-bit machine, that has a memory-accumulator
architecture instead of a general register architecture, and a 32k
address space, wouldn't be very useful nowadays.

But that isn't necessarily the kind of machine you have to design to have a
24-bit instruction word, even if one might nod to retro styling to a limited
extent.

So, for example, you could have an architecture with these two major
instruction formats:

00 - to indicate register-to-register instruction
Opcode: 7 bits
Destinatiion register: 5 bits
Operand register: 5 bits
Source register: 5 bits

That looks a lot like a modern RISC architecture!

But memory-reference instructions are harder to do, I admit. One
possible format could be this:

1 - to indicate memory-reference instruction
Index register: 2 bits
Opcode: 4 bits
Destination register: 2 bits
Base register: 3 bits
Address/Displacement: 12 bits

And then one has additional instructions starting witn 01, to handle
extra instructions with one or two operands, and for the jump
instructions.

It would be a rather Spartan instruction set, but I think it could manage
to cover all the basic stuff, like both integer and floating-point
instructions.

John Savard

Re: Are 24-bit Insttructions Possible?

<t843i8$4gf$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: cr88...@gmail.com (BGB)
Newsgroups: comp.arch
Subject: Re: Are 24-bit Insttructions Possible?
Date: Sun, 12 Jun 2022 02:09:52 -0500
Organization: A noiseless patient Spider
Lines: 87
Message-ID: <t843i8$4gf$1@dont-email.me>
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 12 Jun 2022 07:11:04 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="58ef6f547493ebe6b02ab97b6cba5aff";
logging-data="4623"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19LkK7ycKi1h7n9icwK3BeX"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.9.0
Cancel-Lock: sha1:HKeq+oQRvvqJFnb1+Bd/+/FGW7Y=
In-Reply-To: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
Content-Language: en-US
 by: BGB - Sun, 12 Jun 2022 07:09 UTC

On 6/11/2022 8:24 PM, Quadibloc wrote:
> Clearly, an old-style 24-bit machine, that has a memory-accumulator
> architecture instead of a general register architecture, and a 32k
> address space, wouldn't be very useful nowadays.
>
> But that isn't necessarily the kind of machine you have to design to have a
> 24-bit instruction word, even if one might nod to retro styling to a limited
> extent.
>

24-bit is possible, though on a "generic" memory width machine would
decay to needing byte-aligned instructions.

> So, for example, you could have an architecture with these two major
> instruction formats:
>
> 00 - to indicate register-to-register instruction
> Opcode: 7 bits
> Destinatiion register: 5 bits
> Operand register: 5 bits
> Source register: 5 bits
>
> That looks a lot like a modern RISC architecture!
>

Possible.

> But memory-reference instructions are harder to do, I admit. One
> possible format could be this:
>
> 1 - to indicate memory-reference instruction
> Index register: 2 bits
> Opcode: 4 bits
> Destination register: 2 bits
> Base register: 3 bits
> Address/Displacement: 12 bits
>

This would suck.

Would be better off with 5-bit immediate and displacement fields.

Despite being "not exactly big", they are also not quite as useless as
one might intuitively expect.

> And then one has additional instructions starting witn 01, to handle
> extra instructions with one or two operands, and for the jump
> instructions.
>
> It would be a rather Spartan instruction set, but I think it could manage
> to cover all the basic stuff, like both integer and floating-point
> instructions.
>

Hmm, Maybe:
zzzz-zzzz_nnnn-nmmm_mmzo-oooo
0000-lttt_nnnn-nmmm_mmpo-oooo
l: 0=Store, 1=Load
ttt: Type
p: 0=Register, 1=Disp5u
0001-0ttt_nnnn-nmmm_mmpo-oooo
ttt: Operator (ADD/SUB/MULS/MULU,-,AND/OR/XOR)
p: 0=Register, 1=Imm5u
0001-1zzz_nnnn-nmmm_mmzz-zzzz
2R space

0010-0000_dddd-dddd_dddd-dddd //BRA Disp16
0010-0001_dddd-dddd_dddd-dddd //BSR Disp16
0010-0010_dddd-dddd_dddd-dddd //BT Disp16
0010-0011_dddd-dddd_dddd-dddd //BF Disp16

0010-1000_nnnn-niii_iiii-iiii //LDI Imm11u, Rn
0010-1001_nnnn-niii_iiii-iiii //LDI Imm11n, Rn
0010-1010_nnnn-niii_iiii-iiii //ADD Imm11u, Rn
0010-1011_nnnn-niii_iiii-iiii //ADD Imm11n, Rn

...

....

> John Savard

Re: Are 24-bit Insttructions Possible?

<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:622a:20c:b0:304:f6db:6631 with SMTP id b12-20020a05622a020c00b00304f6db6631mr25100910qtx.257.1655054899606;
Sun, 12 Jun 2022 10:28:19 -0700 (PDT)
X-Received: by 2002:a05:620a:1b9a:b0:6a7:4d71:bb28 with SMTP id
dv26-20020a05620a1b9a00b006a74d71bb28mr8197468qkb.236.1655054899457; Sun, 12
Jun 2022 10:28:19 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.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: Sun, 12 Jun 2022 10:28:19 -0700 (PDT)
In-Reply-To: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:352b:933f:a14e:7;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:352b:933f:a14e:7
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Sun, 12 Jun 2022 17:28:19 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 3059
 by: MitchAlsup - Sun, 12 Jun 2022 17:28 UTC

On Saturday, June 11, 2022 at 8:24:57 PM UTC-5, Quadibloc wrote:
> Clearly, an old-style 24-bit machine, that has a memory-accumulator
> architecture instead of a general register architecture, and a 32k
> address space, wouldn't be very useful nowadays.
>
> But that isn't necessarily the kind of machine you have to design to have a
> 24-bit instruction word, even if one might nod to retro styling to a limited
> extent.
>
> So, for example, you could have an architecture with these two major
> instruction formats:
>
> 00 - to indicate register-to-register instruction
> Opcode: 7 bits
> Destinatiion register: 5 bits
> Operand register: 5 bits
> Source register: 5 bits
<
There is a very large fraction of instructions needing reasonable immediates.
Comparing MIPS with SPARC one sees 16-bits seems to be enough while 13-bits
does not. 18-bit control transfer immediates are far more valuable 15-bit. And
you can supply a maximum of 10-bits. You will end up using a lot of instructions
pasting constants together.
>
> That looks a lot like a modern RISC architecture!
<
Only to the squinting eye.
>
> But memory-reference instructions are harder to do, I admit. One
> possible format could be this:
>
> 1 - to indicate memory-reference instruction
> Index register: 2 bits
> Opcode: 4 bits
> Destination register: 2 bits
> Base register: 3 bits
> Address/Displacement: 12 bits
<
Now you are just adding complications to make op for the poor starting
position.
>
> And then one has additional instructions starting witn 01, to handle
> extra instructions with one or two operands, and for the jump
> instructions.
>
> It would be a rather Spartan instruction set, but I think it could manage
> to cover all the basic stuff, like both integer and floating-point
> instructions.
>
> John Savard

Re: Are 24-bit Insttructions Possible?

<t85eq0$6hn$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: cr88...@gmail.com (BGB)
Newsgroups: comp.arch
Subject: Re: Are 24-bit Insttructions Possible?
Date: Sun, 12 Jun 2022 14:27:50 -0500
Organization: A noiseless patient Spider
Lines: 107
Message-ID: <t85eq0$6hn$1@dont-email.me>
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Sun, 12 Jun 2022 19:29:04 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="58ef6f547493ebe6b02ab97b6cba5aff";
logging-data="6711"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19Qa0OCJzVdahg9Kj7xI2u+"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.9.0
Cancel-Lock: sha1:x+Tc99zR53kgy3xDljb4sURKqyo=
In-Reply-To: <14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com>
Content-Language: en-US
 by: BGB - Sun, 12 Jun 2022 19:27 UTC

On 6/12/2022 12:28 PM, MitchAlsup wrote:
> On Saturday, June 11, 2022 at 8:24:57 PM UTC-5, Quadibloc wrote:
>> Clearly, an old-style 24-bit machine, that has a memory-accumulator
>> architecture instead of a general register architecture, and a 32k
>> address space, wouldn't be very useful nowadays.
>>
>> But that isn't necessarily the kind of machine you have to design to have a
>> 24-bit instruction word, even if one might nod to retro styling to a limited
>> extent.
>>
>> So, for example, you could have an architecture with these two major
>> instruction formats:
>>
>> 00 - to indicate register-to-register instruction
>> Opcode: 7 bits
>> Destinatiion register: 5 bits
>> Operand register: 5 bits
>> Source register: 5 bits
> <
> There is a very large fraction of instructions needing reasonable immediates.
> Comparing MIPS with SPARC one sees 16-bits seems to be enough while 13-bits
> does not. 18-bit control transfer immediates are far more valuable 15-bit. And
> you can supply a maximum of 10-bits. You will end up using a lot of instructions
> pasting constants together.

Probably so, though 24-bits could potentially still hit a "sweet spot"
on the code-density front (similar to 16/32), but would likely still
give inferior performance to a 16/32 RISC ISA due to issues like
constants and immediate fields (fixed-length 24-bit would have some
similar disadvantages to fixed-length 16-bit regarding constants).

Can also note one thing as a semi-warning from dealing with SH-4:
If you run low on encoding space, and start banking in/out parts of the
ISA via modifying bits in control registers... This also sucks.

Like, SH-4 was like:
Well, we have FnmX, need to try to fit in:
Single precision instructions;
Double precision instructions;
A few 2x Single SIMD operations;
A MatMult helper instruction;
...
How do we do it?:
You load bits into FPSCR which indicate which ops to decode as.

Or, this sucked...

As for displacements:
~ 9-bit (scaled) or 11/12-bit (unscaled) seems to be mostly sufficient
for Load/Store;
One can go smaller, but then one really needs a register-indexed mode,
or else it is going to suck.

At these sizes, the number of (basic) displacements which fall outside
the range is pretty small (and those that fail, often do so by a much
larger amount).

For local branches (within a function), 8 bits can still be fairly
effective, though a fair number of functions will be larger than this
(so it is not sufficient "in general").

In my case, pretty much everything I have compiled thus far fits within
a 20-bit branch displacement (1MB), though a few programs are
approaching this limit.

Current fallback cases mostly involve Disp33 (8GB) and Abs48 encodings.

>>
>> That looks a lot like a modern RISC architecture!
> <
> Only to the squinting eye.
>>
>> But memory-reference instructions are harder to do, I admit. One
>> possible format could be this:
>>
>> 1 - to indicate memory-reference instruction
>> Index register: 2 bits
>> Opcode: 4 bits
>> Destination register: 2 bits
>> Base register: 3 bits
>> Address/Displacement: 12 bits
> <
> Now you are just adding complications to make op for the poor starting
> position.

As noted in my comment, "this would suck".

A larger displacement doesn't gain much if the register fields are useless.

>>
>> And then one has additional instructions starting witn 01, to handle
>> extra instructions with one or two operands, and for the jump
>> instructions.
>>
>> It would be a rather Spartan instruction set, but I think it could manage
>> to cover all the basic stuff, like both integer and floating-point
>> instructions.
>>
>> John Savard

Re: Are 24-bit Insttructions Possible?

<bc8c5697-267a-4582-84a2-c24474c9dc45n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:ad4:5de5:0:b0:468:e119:4f8a with SMTP id jn5-20020ad45de5000000b00468e1194f8amr36106149qvb.93.1655062758528;
Sun, 12 Jun 2022 12:39:18 -0700 (PDT)
X-Received: by 2002:a05:620a:410:b0:6a6:abbe:2018 with SMTP id
16-20020a05620a041000b006a6abbe2018mr29323644qkp.645.1655062758360; Sun, 12
Jun 2022 12:39:18 -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: Sun, 12 Jun 2022 12:39:18 -0700 (PDT)
In-Reply-To: <t85eq0$6hn$1@dont-email.me>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:352b:933f:a14e:7;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:352b:933f:a14e:7
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com> <t85eq0$6hn$1@dont-email.me>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <bc8c5697-267a-4582-84a2-c24474c9dc45n@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Sun, 12 Jun 2022 19:39:18 +0000
Content-Type: text/plain; charset="UTF-8"
 by: MitchAlsup - Sun, 12 Jun 2022 19:39 UTC

On Sunday, June 12, 2022 at 2:29:07 PM UTC-5, BGB wrote:
> On 6/12/2022 12:28 PM, MitchAlsup wrote:
> > On Saturday, June 11, 2022 at 8:24:57 PM UTC-5, Quadibloc wrote:
> >> Clearly, an old-style 24-bit machine, that has a memory-accumulator
> >> architecture instead of a general register architecture, and a 32k
> >> address space, wouldn't be very useful nowadays.
> >>
> >> But that isn't necessarily the kind of machine you have to design to have a
> >> 24-bit instruction word, even if one might nod to retro styling to a limited
> >> extent.
> >>
> >> So, for example, you could have an architecture with these two major
> >> instruction formats:
> >>
> >> 00 - to indicate register-to-register instruction
> >> Opcode: 7 bits
> >> Destinatiion register: 5 bits
> >> Operand register: 5 bits
> >> Source register: 5 bits
> > <
> > There is a very large fraction of instructions needing reasonable immediates.
> > Comparing MIPS with SPARC one sees 16-bits seems to be enough while 13-bits
> > does not. 18-bit control transfer immediates are far more valuable 15-bit. And
> > you can supply a maximum of 10-bits. You will end up using a lot of instructions
> > pasting constants together.
> Probably so, though 24-bits could potentially still hit a "sweet spot"
> on the code-density front (similar to 16/32), but would likely still
> give inferior performance to a 16/32 RISC ISA due to issues like
> constants and immediate fields (fixed-length 24-bit would have some
> similar disadvantages to fixed-length 16-bit regarding constants).
>
>
> Can also note one thing as a semi-warning from dealing with SH-4:
> If you run low on encoding space, and start banking in/out parts of the
> ISA via modifying bits in control registers... This also sucks.
>
> Like, SH-4 was like:
> Well, we have FnmX, need to try to fit in:
> Single precision instructions;
> Double precision instructions;
> A few 2x Single SIMD operations;
> A MatMult helper instruction;
> ...
> How do we do it?:
> You load bits into FPSCR which indicate which ops to decode as.
>
> Or, this sucked...
>
Understatement of the month ???
>
>
> As for displacements:
> ~ 9-bit (scaled) or 11/12-bit (unscaled) seems to be mostly sufficient
> for Load/Store;
<
Works better for C than FORTRAN.
<
> One can go smaller, but then one really needs a register-indexed mode,
> or else it is going to suck.
<
It is reasons such as these that My 66000 ISA never uses instructions to
paste constants together.
>
> At these sizes, the number of (basic) displacements which fall outside
> the range is pretty small (and those that fail, often do so by a much
> larger amount).
>
Then think about 64-bit address space where .bss and .data may be
placed more than 1GB away from each other and the code and at
randomized addresses/offsets. Even if 64-bit address/displacements
are only 1%-2% of all memory references, using LDs pollutes the D$,
using instructions pollutes the I$. The only reasonable way out is to
provide access means in the decode structure of the instructions
themselves (ala My 66000).
>
>
> For local branches (within a function), 8 bits can still be fairly
> effective, though a fair number of functions will be larger than this
> (so it is not sufficient "in general").
<
And then there are inner loops such as FPPPP (8K instructions).
So while 8-10-bits is sufficient for a lot of things, it still leaves a few
things dangling.
>
> In my case, pretty much everything I have compiled thus far fits within
> a 20-bit branch displacement (1MB), though a few programs are
> approaching this limit.
>
> Current fallback cases mostly involve Disp33 (8GB) and Abs48 encodings.
> >>
> >> That looks a lot like a modern RISC architecture!
> > <
> > Only to the squinting eye.
> >>
> >> But memory-reference instructions are harder to do, I admit. One
> >> possible format could be this:
> >>
> >> 1 - to indicate memory-reference instruction
> >> Index register: 2 bits
> >> Opcode: 4 bits
> >> Destination register: 2 bits
> >> Base register: 3 bits
> >> Address/Displacement: 12 bits
> > <
> > Now you are just adding complications to make op for the poor starting
> > position.
> As noted in my comment, "this would suck".
>
> A larger displacement doesn't gain much if the register fields are useless.
> >>
> >> And then one has additional instructions starting witn 01, to handle
> >> extra instructions with one or two operands, and for the jump
> >> instructions.
> >>
> >> It would be a rather Spartan instruction set, but I think it could manage
> >> to cover all the basic stuff, like both integer and floating-point
> >> instructions.
> >>
> >> John Savard

Re: Are 24-bit Insttructions Possible?

<t86b31$hs7$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: cr88...@gmail.com (BGB)
Newsgroups: comp.arch
Subject: Re: Are 24-bit Insttructions Possible?
Date: Sun, 12 Jun 2022 22:30:31 -0500
Organization: A noiseless patient Spider
Lines: 194
Message-ID: <t86b31$hs7$1@dont-email.me>
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com>
<t85eq0$6hn$1@dont-email.me>
<bc8c5697-267a-4582-84a2-c24474c9dc45n@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Mon, 13 Jun 2022 03:31:45 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="436e108c130d9e11ace72dff3c467483";
logging-data="18311"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19zhV+1wWSbjq+V6dHHl3C3"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.9.0
Cancel-Lock: sha1:sdC2YLqrjffkzMmLMiya8H14kRg=
In-Reply-To: <bc8c5697-267a-4582-84a2-c24474c9dc45n@googlegroups.com>
Content-Language: en-US
 by: BGB - Mon, 13 Jun 2022 03:30 UTC

On 6/12/2022 2:39 PM, MitchAlsup wrote:
> On Sunday, June 12, 2022 at 2:29:07 PM UTC-5, BGB wrote:
>> On 6/12/2022 12:28 PM, MitchAlsup wrote:
>>> On Saturday, June 11, 2022 at 8:24:57 PM UTC-5, Quadibloc wrote:
>>>> Clearly, an old-style 24-bit machine, that has a memory-accumulator
>>>> architecture instead of a general register architecture, and a 32k
>>>> address space, wouldn't be very useful nowadays.
>>>>
>>>> But that isn't necessarily the kind of machine you have to design to have a
>>>> 24-bit instruction word, even if one might nod to retro styling to a limited
>>>> extent.
>>>>
>>>> So, for example, you could have an architecture with these two major
>>>> instruction formats:
>>>>
>>>> 00 - to indicate register-to-register instruction
>>>> Opcode: 7 bits
>>>> Destinatiion register: 5 bits
>>>> Operand register: 5 bits
>>>> Source register: 5 bits
>>> <
>>> There is a very large fraction of instructions needing reasonable immediates.
>>> Comparing MIPS with SPARC one sees 16-bits seems to be enough while 13-bits
>>> does not. 18-bit control transfer immediates are far more valuable 15-bit. And
>>> you can supply a maximum of 10-bits. You will end up using a lot of instructions
>>> pasting constants together.
>> Probably so, though 24-bits could potentially still hit a "sweet spot"
>> on the code-density front (similar to 16/32), but would likely still
>> give inferior performance to a 16/32 RISC ISA due to issues like
>> constants and immediate fields (fixed-length 24-bit would have some
>> similar disadvantages to fixed-length 16-bit regarding constants).
>>
>>
>> Can also note one thing as a semi-warning from dealing with SH-4:
>> If you run low on encoding space, and start banking in/out parts of the
>> ISA via modifying bits in control registers... This also sucks.
>>
>> Like, SH-4 was like:
>> Well, we have FnmX, need to try to fit in:
>> Single precision instructions;
>> Double precision instructions;
>> A few 2x Single SIMD operations;
>> A MatMult helper instruction;
>> ...
>> How do we do it?:
>> You load bits into FPSCR which indicate which ops to decode as.
>>
>> Or, this sucked...
>>
> Understatement of the month ???

It sorta worked, but yeah, preferably one doesn't design their FPU this way.

If compiling code as-written, switching between Single and Double would
waste a lot of clock-cycles. GCC seemed to take an approach of in some
cases (when mixing Single and Double) just sort of converting everything
to Single and leaving it there (even if the C rules say you should
promote to Double and then convert the result back to Single).

When I designed the FPU for BJX2, I went over instead to treating Double
as the default internal format, with scalar Float values being operated
on as Double, in which case format conversions for scalar operations are
essentially free. I had also initially eliminated any "modal" concepts
from the FPU (later re-adding them only in a limited form as required
for C's "fenv_access" mechanism).

>>
>>
>> As for displacements:
>> ~ 9-bit (scaled) or 11/12-bit (unscaled) seems to be mostly sufficient
>> for Load/Store;
> <
> Works better for C than FORTRAN.
> <

Can generally deal with the sizes of most structs and stack frames.

>> One can go smaller, but then one really needs a register-indexed mode,
>> or else it is going to suck.
> <
> It is reasons such as these that My 66000 ISA never uses instructions to
> paste constants together.

If all you have is a 5 bit displacement, and no indexed mode, the ISA is
kinda screwed as:
Stack frames are frequently bigger than this;
Structs are also frequently bigger than this.

In SuperH, options were:
If the value is a 32-bit type, you can have a 4 bit load/store displacement;
Else, you can load the displacement into a register (R0 was hard-wired
as an index register);
If your displacement doesn't fit in 8-bits (sign extended), you need to
use a memory load to load the displacement;
Because the PC-relative load displacement was also pretty limited, one
would (typically) also need to branch over the constants they needed to
dump into the middle of the instruction stream in order to be able to
constant-load the memory displacements;
....

This... also sucked...

One of my extensions was an LDSH instruction:
MOV 0xXX, R0
LDSH 0xXX, R0 //R0=(R0<<8)|Imm8u
MOV.L @(R4, R0), R2

This could replace a 16-bit memory load with a 2-instruction bit-paste,
which was at least a little better.

>>
>> At these sizes, the number of (basic) displacements which fall outside
>> the range is pretty small (and those that fail, often do so by a much
>> larger amount).
>>
> Then think about 64-bit address space where .bss and .data may be
> placed more than 1GB away from each other and the code and at
> randomized addresses/offsets. Even if 64-bit address/displacements
> are only 1%-2% of all memory references, using LDs pollutes the D$,
> using instructions pollutes the I$. The only reasonable way out is to
> provide access means in the decode structure of the instructions
> themselves (ala My 66000).

In my current ABI, ".data" and ".bss" are accessed relative to GBR.

With Jumbo encodings, I can access a 4GB section data/bss section via a
single instruction.

Not currently a good way to deal with a data/bss section larger than 4GB
though (this case would require using ALU ops for the address calculations).

>>
>>
>> For local branches (within a function), 8 bits can still be fairly
>> effective, though a fair number of functions will be larger than this
>> (so it is not sufficient "in general").
> <
> And then there are inner loops such as FPPPP (8K instructions).
> So while 8-10-bits is sufficient for a lot of things, it still leaves a few
> things dangling.

In these cases, 20-bit branches are available in my case.

My compiler is generally able to figure out when to use a Disp8 or
Disp20 branch (16-bit or 32-bit instruction formats, eg: 20dd or F0dd_Cddd).

It would start using Disp33 if the program got too large for Disp20, but
this hasn't happened yet.

>>
>> In my case, pretty much everything I have compiled thus far fits within
>> a 20-bit branch displacement (1MB), though a few programs are
>> approaching this limit.
>>
>> Current fallback cases mostly involve Disp33 (8GB) and Abs48 encodings.
>>>>
>>>> That looks a lot like a modern RISC architecture!
>>> <
>>> Only to the squinting eye.
>>>>
>>>> But memory-reference instructions are harder to do, I admit. One
>>>> possible format could be this:
>>>>
>>>> 1 - to indicate memory-reference instruction
>>>> Index register: 2 bits
>>>> Opcode: 4 bits
>>>> Destination register: 2 bits
>>>> Base register: 3 bits
>>>> Address/Displacement: 12 bits
>>> <
>>> Now you are just adding complications to make op for the poor starting
>>> position.
>> As noted in my comment, "this would suck".
>>
>> A larger displacement doesn't gain much if the register fields are useless.
>>>>
>>>> And then one has additional instructions starting witn 01, to handle
>>>> extra instructions with one or two operands, and for the jump
>>>> instructions.
>>>>
>>>> It would be a rather Spartan instruction set, but I think it could manage
>>>> to cover all the basic stuff, like both integer and floating-point
>>>> instructions.
>>>>
>>>> John Savard

Re: Are 24-bit Insttructions Possible?

<d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:600c:19cf:b0:39c:88a0:c66e with SMTP id u15-20020a05600c19cf00b0039c88a0c66emr35395287wmq.37.1655731119098;
Mon, 20 Jun 2022 06:18:39 -0700 (PDT)
X-Received: by 2002:a37:42d5:0:b0:6a7:361:e583 with SMTP id
p204-20020a3742d5000000b006a70361e583mr16168154qka.514.1655731118637; Mon, 20
Jun 2022 06:18:38 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.87.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Mon, 20 Jun 2022 06:18:38 -0700 (PDT)
In-Reply-To: <14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fb70:6300:b1a7:856:fa8d:4b18;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fb70:6300:b1a7:856:fa8d:4b18
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com> <14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Mon, 20 Jun 2022 13:18:39 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Quadibloc - Mon, 20 Jun 2022 13:18 UTC

On Sunday, June 12, 2022 at 11:28:21 AM UTC-6, MitchAlsup wrote:

> Now you are just adding complications to make op for the poor starting
> position.

Essentially, this all stems from... the Control Data 8600.

That was to have been a 6600, but expanded from 60 bits to 64 bits. You noted
that it failed. My guess was that it was because they intended the performance
gain over the 7600 to be more than they could achieve.

I started thinking, based on my old idea of having 36, 48, and 60 bit floats that
I decided I should abandon - given that both the 1604, with 48-bit single precision,
and the 6600, with 60-bit single precision, just doubled those longer lengths for
their double precisiion - to go the 8600 one further.

Increase the word size from 60 bits to 72 bits. That way, half of a word would be
a decent single precision number of 36 bits.

But then, based on the fact that the 1604 fit two 24-bit instructions into a 48-bit
word, I thought to fit three 24-bit instructions into a 72-bit word. But the 15-bit
addresses would have to indicate halfwords if we're using 36-bit floats.

So *instead* of a 6600 expanded to 72 bits, I end up with a 1604 with the memory
shrunk to 3/4 of its original size - the same as a 7090. And having accumulator-memory
instructions (unlike the 1604, though, I would never think of using floats for integer
arithmetic; the SDS 9300 has an instruction set with both floating-point and integer
instructions, I'd go with something like that) unlike the register-to-register arithmetic
of the 6600, it would be slow given today's memory latencies.

But the Sigma 9 wormed its way out of the limitations of the Sigma's 32-bit instruction
format to allow a larger memory. And one can fit register-to-register instructions in 16 bits,
so they can certainly fit in 24 bits. So I tried to change the architecture from 1604-ish to
a bit more 6600-ish. Of course, it would be easier just to have 18-bit and 36-bit instructions
that don't cross 72-bit boundaries - to go full 6600.

John Savard

Re: Are 24-bit Insttructions Possible?

<1f9edc54-9579-4b02-9b6d-cffc2747fcd9n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:adf:ff88:0:b0:21b:92b5:8e63 with SMTP id j8-20020adfff88000000b0021b92b58e63mr3282660wrr.233.1655743840437;
Mon, 20 Jun 2022 09:50:40 -0700 (PDT)
X-Received: by 2002:a37:581:0:b0:6a6:c190:deb5 with SMTP id
123-20020a370581000000b006a6c190deb5mr16884335qkf.358.1655743840002; Mon, 20
Jun 2022 09:50:40 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.88.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Mon, 20 Jun 2022 09:50:39 -0700 (PDT)
In-Reply-To: <d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:5c46:e875:cc2:6d9e;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:5c46:e875:cc2:6d9e
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com> <d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <1f9edc54-9579-4b02-9b6d-cffc2747fcd9n@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Mon, 20 Jun 2022 16:50:40 +0000
Content-Type: text/plain; charset="UTF-8"
 by: MitchAlsup - Mon, 20 Jun 2022 16:50 UTC

On Monday, June 20, 2022 at 8:18:42 AM UTC-5, Quadibloc wrote:
> On Sunday, June 12, 2022 at 11:28:21 AM UTC-6, MitchAlsup wrote:
>
> > Now you are just adding complications to make op for the poor starting
> > position.
> Essentially, this all stems from... the Control Data 8600.
>
> That was to have been a 6600, but expanded from 60 bits to 64 bits. You noted
> that it failed. My guess was that it was because they intended the performance
> gain over the 7600 to be more than they could achieve.
<
Rumors are that the performance was "almost" there.
Cray and several others left to build Cray--while CDC set is eyes on building STARs.
>
> I started thinking, based on my old idea of having 36, 48, and 60 bit floats that
> I decided I should abandon - given that both the 1604, with 48-bit single precision,
> and the 6600, with 60-bit single precision, just doubled those longer lengths for
> their double precisiion - to go the 8600 one further.
>
> Increase the word size from 60 bits to 72 bits. That way, half of a word would be
> a decent single precision number of 36 bits.
<
1108 proved that 36 bits was sufficiently better than 32 for SP maths.
>
> But then, based on the fact that the 1604 fit two 24-bit instructions into a 48-bit
> word, I thought to fit three 24-bit instructions into a 72-bit word. But the 15-bit
> addresses would have to indicate halfwords if we're using 36-bit floats.
>
> So *instead* of a 6600 expanded to 72 bits, I end up with a 1604 with the memory
> shrunk to 3/4 of its original size - the same as a 7090. And having accumulator-memory
> instructions (unlike the 1604, though, I would never think of using floats for integer
> arithmetic; the SDS 9300 has an instruction set with both floating-point and integer
> instructions, I'd go with something like that) unlike the register-to-register arithmetic
> of the 6600, it would be slow given today's memory latencies.
<
THis is what 24-bit ISAs do to you.
>
> But the Sigma 9 wormed its way out of the limitations of the Sigma's 32-bit instruction
> format to allow a larger memory. And one can fit register-to-register instructions in 16 bits,
> so they can certainly fit in 24 bits. So I tried to change the architecture from 1604-ish to
> a bit more 6600-ish. Of course, it would be easier just to have 18-bit and 36-bit instructions
> that don't cross 72-bit boundaries - to go full 6600.
<
Sigma 5-7-9 were IBM format ISAs without the memory to memory cruft.
>
> John Savard

Re: Are 24-bit Insttructions Possible?

<5999168e-201f-4f3d-820a-39d6296d481fn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a5d:5234:0:b0:21b:829c:3058 with SMTP id i20-20020a5d5234000000b0021b829c3058mr16521968wra.13.1655764357125;
Mon, 20 Jun 2022 15:32:37 -0700 (PDT)
X-Received: by 2002:a05:6214:3006:b0:46e:6be4:2b7d with SMTP id
ke6-20020a056214300600b0046e6be42b7dmr20808440qvb.84.1655764356667; Mon, 20
Jun 2022 15:32:36 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.87.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Mon, 20 Jun 2022 15:32:36 -0700 (PDT)
In-Reply-To: <1f9edc54-9579-4b02-9b6d-cffc2747fcd9n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fb70:6300:e8c5:3e29:21bb:716a;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fb70:6300:e8c5:3e29:21bb:716a
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com> <d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
<1f9edc54-9579-4b02-9b6d-cffc2747fcd9n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <5999168e-201f-4f3d-820a-39d6296d481fn@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Mon, 20 Jun 2022 22:32:37 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Quadibloc - Mon, 20 Jun 2022 22:32 UTC

On Monday, June 20, 2022 at 10:50:43 AM UTC-6, MitchAlsup wrote:

> Sigma 5-7-9 were IBM format ISAs without the memory to memory cruft.

I see that indeed the Sigma 5 didn't have that.

But, as I remembered, the Sigma 7 *did*. How did it manage with only
32 bit instructions? One had to set up two consecutive registers with
the necessary information to describe the instruction.

The Sigma 7 had translate and test, edit, and all that stuff, like the 360.

There were other machines that did it the same way; the Sigmas weren't
the only ones.

John Savard

Re: Are 24-bit Insttructions Possible?

<32beba9a-11c8-43bc-9eaa-47ce8e7954ecn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a5d:5234:0:b0:21b:829c:3058 with SMTP id i20-20020a5d5234000000b0021b829c3058mr16585515wra.13.1655765623563;
Mon, 20 Jun 2022 15:53:43 -0700 (PDT)
X-Received: by 2002:ac8:5b15:0:b0:306:6c1b:fc08 with SMTP id
m21-20020ac85b15000000b003066c1bfc08mr21371182qtw.196.1655765623147; Mon, 20
Jun 2022 15:53:43 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.87.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Mon, 20 Jun 2022 15:53:42 -0700 (PDT)
In-Reply-To: <5999168e-201f-4f3d-820a-39d6296d481fn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:5c46:e875:cc2:6d9e;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:5c46:e875:cc2:6d9e
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com> <d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
<1f9edc54-9579-4b02-9b6d-cffc2747fcd9n@googlegroups.com> <5999168e-201f-4f3d-820a-39d6296d481fn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <32beba9a-11c8-43bc-9eaa-47ce8e7954ecn@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Mon, 20 Jun 2022 22:53:43 +0000
Content-Type: text/plain; charset="UTF-8"
 by: MitchAlsup - Mon, 20 Jun 2022 22:53 UTC

On Monday, June 20, 2022 at 5:32:40 PM UTC-5, Quadibloc wrote:
> On Monday, June 20, 2022 at 10:50:43 AM UTC-6, MitchAlsup wrote:
>
> > Sigma 5-7-9 were IBM format ISAs without the memory to memory cruft.
> I see that indeed the Sigma 5 didn't have that.
<
I spend 3 years programming real time applications in FORTRAN (and a bit
of ASM) from 1975-1978. We were primarily limited at the data collection side
of things, but we pounded down the ISR time so that "waiting for interrupt"
to "ready to wait for interrupt" was only 12 cycles. In the mean time, we had
to read an A/D converter, store the 22-bit quantity to memory, increment a
pointer/index, do a limit check, and Return from interrupt. The S5 had no
instruction cache, no data cache, and memory was 5 cycles away.
<
>
> But, as I remembered, the Sigma 7 *did*. How did it manage with only
> 32 bit instructions? One had to set up two consecutive registers with
> the necessary information to describe the instruction.
<
I thought S5 had 16-bit instructions, but it has been a LONG time.
>
> The Sigma 7 had translate and test, edit, and all that stuff, like the 360.
>
> There were other machines that did it the same way; the Sigmas weren't
> the only ones.
<
Interdata, S.E.L, and one other I can't remember right now.
>
> John Savard

Re: Are 24-bit Insttructions Possible?

<e889dd00-2a5b-48f4-b045-1ce35a96fdb2n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a7b:cc8e:0:b0:39c:829d:609b with SMTP id p14-20020a7bcc8e000000b0039c829d609bmr28434014wma.160.1655770160120;
Mon, 20 Jun 2022 17:09:20 -0700 (PDT)
X-Received: by 2002:ac8:7fd5:0:b0:305:1f31:c90b with SMTP id
b21-20020ac87fd5000000b003051f31c90bmr21973401qtk.22.1655770159691; Mon, 20
Jun 2022 17:09:19 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.88.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Mon, 20 Jun 2022 17:09:19 -0700 (PDT)
In-Reply-To: <32beba9a-11c8-43bc-9eaa-47ce8e7954ecn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fb70:6300:e8c5:3e29:21bb:716a;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fb70:6300:e8c5:3e29:21bb:716a
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com> <d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
<1f9edc54-9579-4b02-9b6d-cffc2747fcd9n@googlegroups.com> <5999168e-201f-4f3d-820a-39d6296d481fn@googlegroups.com>
<32beba9a-11c8-43bc-9eaa-47ce8e7954ecn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <e889dd00-2a5b-48f4-b045-1ce35a96fdb2n@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Tue, 21 Jun 2022 00:09:20 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Quadibloc - Tue, 21 Jun 2022 00:09 UTC

On Monday, June 20, 2022 at 4:53:46 PM UTC-6, MitchAlsup wrote:

> Interdata, S.E.L, and one other I can't remember right now.

I was thinking of an option for a higher-end PDP-11, and possibly also
some machine by Hewlett-Packard.

John Savard

Re: Are 24-bit Insttructions Possible?

<t8r9dr$a3q$1@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader02.eternal-september.org!.POSTED!not-for-mail
From: iva...@millcomputing.com (Ivan Godard)
Newsgroups: comp.arch
Subject: Re: Are 24-bit Insttructions Possible?
Date: Mon, 20 Jun 2022 19:12:13 -0700
Organization: A noiseless patient Spider
Lines: 35
Message-ID: <t8r9dr$a3q$1@dont-email.me>
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com>
<d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
<1f9edc54-9579-4b02-9b6d-cffc2747fcd9n@googlegroups.com>
<5999168e-201f-4f3d-820a-39d6296d481fn@googlegroups.com>
<32beba9a-11c8-43bc-9eaa-47ce8e7954ecn@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Tue, 21 Jun 2022 02:12:12 -0000 (UTC)
Injection-Info: reader02.eternal-september.org; posting-host="0e280b06f55513046e7d4b74cac3e918";
logging-data="10362"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19tFr6OIIW8d3aMFqFgGqjw"
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101
Thunderbird/91.10.0
Cancel-Lock: sha1:3W7yDUSAJmpJKCJUwAPuCnKpRAM=
In-Reply-To: <32beba9a-11c8-43bc-9eaa-47ce8e7954ecn@googlegroups.com>
Content-Language: en-US
 by: Ivan Godard - Tue, 21 Jun 2022 02:12 UTC

On 6/20/2022 3:53 PM, MitchAlsup wrote:
> On Monday, June 20, 2022 at 5:32:40 PM UTC-5, Quadibloc wrote:
>> On Monday, June 20, 2022 at 10:50:43 AM UTC-6, MitchAlsup wrote:
>>
>>> Sigma 5-7-9 were IBM format ISAs without the memory to memory cruft.
>> I see that indeed the Sigma 5 didn't have that.
> <
> I spend 3 years programming real time applications in FORTRAN (and a bit
> of ASM) from 1975-1978. We were primarily limited at the data collection side
> of things, but we pounded down the ISR time so that "waiting for interrupt"
> to "ready to wait for interrupt" was only 12 cycles. In the mean time, we had
> to read an A/D converter, store the 22-bit quantity to memory, increment a
> pointer/index, do a limit check, and Return from interrupt. The S5 had no
> instruction cache, no data cache, and memory was 5 cycles away.
> <
>>
>> But, as I remembered, the Sigma 7 *did*. How did it manage with only
>> 32 bit instructions? One had to set up two consecutive registers with
>> the necessary information to describe the instruction.
> <
> I thought S5 had 16-bit instructions, but it has been a LONG time.
>>
>> The Sigma 7 had translate and test, edit, and all that stuff, like the 360.
>>
>> There were other machines that did it the same way; the Sigmas weren't
>> the only ones.
> <
> Interdata, S.E.L, and one other I can't remember right now.

Burroughs B500 series had an edit micro; essentially single argument
printf in an instruction.

>>
>> John Savard

Re: Are 24-bit Insttructions Possible?

<79ecdc7e-77c2-440f-89a9-6d8a9e313748n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:600c:3505:b0:39c:93d4:5eec with SMTP id h5-20020a05600c350500b0039c93d45eecmr27747053wmq.179.1655793035242;
Mon, 20 Jun 2022 23:30:35 -0700 (PDT)
X-Received: by 2002:a05:620a:1b8c:b0:6a6:cb62:98fb with SMTP id
dv12-20020a05620a1b8c00b006a6cb6298fbmr18793577qkb.511.1655793034809; Mon, 20
Jun 2022 23:30:34 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.87.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Mon, 20 Jun 2022 23:30:34 -0700 (PDT)
In-Reply-To: <e889dd00-2a5b-48f4-b045-1ce35a96fdb2n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fb70:6300:e8c5:3e29:21bb:716a;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fb70:6300:e8c5:3e29:21bb:716a
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com> <d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
<1f9edc54-9579-4b02-9b6d-cffc2747fcd9n@googlegroups.com> <5999168e-201f-4f3d-820a-39d6296d481fn@googlegroups.com>
<32beba9a-11c8-43bc-9eaa-47ce8e7954ecn@googlegroups.com> <e889dd00-2a5b-48f4-b045-1ce35a96fdb2n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <79ecdc7e-77c2-440f-89a9-6d8a9e313748n@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Tue, 21 Jun 2022 06:30:35 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Quadibloc - Tue, 21 Jun 2022 06:30 UTC

On Monday, June 20, 2022 at 6:09:22 PM UTC-6, Quadibloc wrote:

> I was thinking of an option for a higher-end PDP-11,

Found it: the KE44-A Commercial Instruction Set Processor for the
PDP-11/44.

John Savard

Re: Are 24-bit Insttructions Possible?

<t8rvjq$1cv2$1@gioia.aioe.org>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!aioe.org!y0sttPrO1OAcON/g+jAtOw.user.46.165.242.91.POSTED!not-for-mail
From: terje.ma...@tmsw.no (Terje Mathisen)
Newsgroups: comp.arch
Subject: Re: Are 24-bit Insttructions Possible?
Date: Tue, 21 Jun 2022 10:30:55 +0200
Organization: Aioe.org NNTP Server
Message-ID: <t8rvjq$1cv2$1@gioia.aioe.org>
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com>
<d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
<1f9edc54-9579-4b02-9b6d-cffc2747fcd9n@googlegroups.com>
<5999168e-201f-4f3d-820a-39d6296d481fn@googlegroups.com>
<32beba9a-11c8-43bc-9eaa-47ce8e7954ecn@googlegroups.com>
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="46050"; posting-host="y0sttPrO1OAcON/g+jAtOw.user.gioia.aioe.org"; mail-complaints-to="abuse@aioe.org";
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:68.0) Gecko/20100101
Firefox/68.0 SeaMonkey/2.53.12
X-Notice: Filtered by postfilter v. 0.9.2
 by: Terje Mathisen - Tue, 21 Jun 2022 08:30 UTC

MitchAlsup wrote:
> On Monday, June 20, 2022 at 5:32:40 PM UTC-5, Quadibloc wrote:
>> On Monday, June 20, 2022 at 10:50:43 AM UTC-6, MitchAlsup wrote:
>>
>>> Sigma 5-7-9 were IBM format ISAs without the memory to memory cruft.
>> I see that indeed the Sigma 5 didn't have that.
> <
> I spend 3 years programming real time applications in FORTRAN (and a bit
> of ASM) from 1975-1978. We were primarily limited at the data collection side
> of things, but we pounded down the ISR time so that "waiting for interrupt"
> to "ready to wait for interrupt" was only 12 cycles. In the mean time, we had
> to read an A/D converter, store the 22-bit quantity to memory, increment a
> pointer/index, do a limit check, and Return from interrupt. The S5 had no
> instruction cache, no data cache, and memory was 5 cycles away.

Nice work!

Reminds me of Drew Major at Novell who got the total processing time for
a file read request (on NetWare 386) down to ~300 clock cycles. I.e.
accepting the network packet interrupt, parsing the request (verifying
access rights etc), locating the relevant data somewhere in the memory
cache, construct the reply packet and hand it back to the network card.

Terje

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

Re: Are 24-bit Insttructions Possible?

<761671e0-2187-47ad-8091-0959886d1a1bn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a5d:644e:0:b0:21b:9439:bae5 with SMTP id d14-20020a5d644e000000b0021b9439bae5mr13476229wrw.507.1656363781292;
Mon, 27 Jun 2022 14:03:01 -0700 (PDT)
X-Received: by 2002:a05:620a:170a:b0:6af:2170:736 with SMTP id
az10-20020a05620a170a00b006af21700736mr5879566qkb.656.1656363780526; Mon, 27
Jun 2022 14:03:00 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.88.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Mon, 27 Jun 2022 14:03:00 -0700 (PDT)
In-Reply-To: <d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=73.188.126.34; posting-account=ujX_IwoAAACu0_cef9hMHeR8g0ZYDNHh
NNTP-Posting-Host: 73.188.126.34
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com> <d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <761671e0-2187-47ad-8091-0959886d1a1bn@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: timcaff...@aol.com (Timothy McCaffrey)
Injection-Date: Mon, 27 Jun 2022 21:03:01 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Timothy McCaffrey - Mon, 27 Jun 2022 21:03 UTC

On Monday, June 20, 2022 at 9:18:42 AM UTC-4, Quadibloc wrote:
> On Sunday, June 12, 2022 at 11:28:21 AM UTC-6, MitchAlsup wrote:
>
> > Now you are just adding complications to make op for the poor starting
> > position.
> Essentially, this all stems from... the Control Data 8600.
>
> That was to have been a 6600, but expanded from 60 bits to 64 bits. You noted
> that it failed. My guess was that it was because they intended the performance
> gain over the 7600 to be more than they could achieve.
>

I haven't heard of the 8600 before now, but reading the Wikipedia page it sounds
like the CDC 800 series borrowed a lot of architecture from it (except the SIMD stuff).
The CDC 800 series added segmentation though, so they weren't *really* looking for performance,
but security & reliability.

- Tim

Re: Are 24-bit Insttructions Possible?

<59d328f8-a2ab-4f1f-8470-2f4dee5dfb74n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a5d:4e12:0:b0:21b:ae89:73e7 with SMTP id p18-20020a5d4e12000000b0021bae8973e7mr13839988wrt.386.1656363907054;
Mon, 27 Jun 2022 14:05:07 -0700 (PDT)
X-Received: by 2002:a05:620a:254c:b0:6a9:9011:3090 with SMTP id
s12-20020a05620a254c00b006a990113090mr8919267qko.441.1656363906250; Mon, 27
Jun 2022 14:05:06 -0700 (PDT)
Path: i2pn2.org!i2pn.org!weretis.net!feeder8.news.weretis.net!proxad.net!feeder1-2.proxad.net!209.85.128.88.MISMATCH!news-out.google.com!nntp.google.com!postnews.google.com!google-groups.googlegroups.com!not-for-mail
Newsgroups: comp.arch
Date: Mon, 27 Jun 2022 14:05:06 -0700 (PDT)
In-Reply-To: <761671e0-2187-47ad-8091-0959886d1a1bn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=73.188.126.34; posting-account=ujX_IwoAAACu0_cef9hMHeR8g0ZYDNHh
NNTP-Posting-Host: 73.188.126.34
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<14e1d9f3-bf55-4024-b705-bf058af4742dn@googlegroups.com> <d9380f6b-0dae-491c-9869-853f92191837n@googlegroups.com>
<761671e0-2187-47ad-8091-0959886d1a1bn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <59d328f8-a2ab-4f1f-8470-2f4dee5dfb74n@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: timcaff...@aol.com (Timothy McCaffrey)
Injection-Date: Mon, 27 Jun 2022 21:05:07 +0000
Content-Type: text/plain; charset="UTF-8"
 by: Timothy McCaffrey - Mon, 27 Jun 2022 21:05 UTC

On Monday, June 27, 2022 at 5:03:04 PM UTC-4, Timothy McCaffrey wrote:
> On Monday, June 20, 2022 at 9:18:42 AM UTC-4, Quadibloc wrote:
> > On Sunday, June 12, 2022 at 11:28:21 AM UTC-6, MitchAlsup wrote:
> >
> > > Now you are just adding complications to make op for the poor starting
> > > position.
> > Essentially, this all stems from... the Control Data 8600.
> >
> > That was to have been a 6600, but expanded from 60 bits to 64 bits. You noted
> > that it failed. My guess was that it was because they intended the performance
> > gain over the 7600 to be more than they could achieve.
> >
> I haven't heard of the 8600 before now, but reading the Wikipedia page it sounds
> like the CDC 800 series borrowed a lot of architecture from it (except the SIMD stuff).
> The CDC 800 series added segmentation though, so they weren't *really* looking for performance,
> but security & reliability.
>
> - Tim
Sorry, I meant the CDC Cyber 180 series (its been awhile).

Re: Are 24-bit Insttructions Possible?

<ce10762b-4b8c-49b8-bd90-c27776c03602n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:ad4:5bad:0:b0:476:e202:32eb with SMTP id 13-20020ad45bad000000b00476e20232ebmr6717715qvq.3.1659724503669;
Fri, 05 Aug 2022 11:35:03 -0700 (PDT)
X-Received: by 2002:a37:68d0:0:b0:6b9:21ae:5c9f with SMTP id
d199-20020a3768d0000000b006b921ae5c9fmr1603999qkc.291.1659724503522; Fri, 05
Aug 2022 11:35:03 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.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: Fri, 5 Aug 2022 11:35:03 -0700 (PDT)
In-Reply-To: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fb70:6300:6947:3c86:73e1:a64e;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fb70:6300:6947:3c86:73e1:a64e
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <ce10762b-4b8c-49b8-bd90-c27776c03602n@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Fri, 05 Aug 2022 18:35:03 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 2433
 by: Quadibloc - Fri, 5 Aug 2022 18:35 UTC

On Saturday, June 11, 2022 at 7:24:57 PM UTC-6, Quadibloc wrote:
> Clearly, an old-style 24-bit machine, that has a memory-accumulator
> architecture instead of a general register architecture, and a 32k
> address space, wouldn't be very useful nowadays.

And thus, it's not very useful that the Control Data 924 has inspired
me to suggest a way to improve that kind of machine.

Many 24-bit machines had a three bit tag field, consisting of one
bit to indicate indirection, and two index bits to indicate no indexing,
or choose one of three index registers.

The 924, instead, had six index registers. The three bit tag field was
0 for plain direct addressing, 1 to 6 to pick one of the index registers,
and 7 for indirect addressing.

That was a great idea on the part of Seymour Cray, but I think it can
be improved just a bit.

Let us just have _five_ index registers.

0: direct addressing, no index
1 - 5: indexed, with the index register indicated
6: indirect
7: indexed with index register 1 _and_ indirect.

So the number of index registers is increased, but not only is
indirection not sacrificed, but also the ability to combine indirection and
indexing, albeit for only one index register, is also retained.

John Savard

Re: Are 24-bit Insttructions Possible?

<af9bce94-831e-461c-bfa1-c92849affe4dn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:620a:9c5:b0:6b9:286a:6389 with SMTP id y5-20020a05620a09c500b006b9286a6389mr731627qky.55.1659726704637;
Fri, 05 Aug 2022 12:11:44 -0700 (PDT)
X-Received: by 2002:a05:622a:198f:b0:31f:cc6:b082 with SMTP id
u15-20020a05622a198f00b0031f0cc6b082mr7159353qtc.220.1659726704469; Fri, 05
Aug 2022 12:11:44 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer03.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: Fri, 5 Aug 2022 12:11:44 -0700 (PDT)
In-Reply-To: <ce10762b-4b8c-49b8-bd90-c27776c03602n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2600:1700:291:29f0:3d32:a2c2:f3e:1f9d;
posting-account=H_G_JQkAAADS6onOMb-dqvUozKse7mcM
NNTP-Posting-Host: 2600:1700:291:29f0:3d32:a2c2:f3e:1f9d
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com> <ce10762b-4b8c-49b8-bd90-c27776c03602n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <af9bce94-831e-461c-bfa1-c92849affe4dn@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: MitchAl...@aol.com (MitchAlsup)
Injection-Date: Fri, 05 Aug 2022 19:11:44 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 2747
 by: MitchAlsup - Fri, 5 Aug 2022 19:11 UTC

On Friday, August 5, 2022 at 1:35:04 PM UTC-5, Quadibloc wrote:
> On Saturday, June 11, 2022 at 7:24:57 PM UTC-6, Quadibloc wrote:
> > Clearly, an old-style 24-bit machine, that has a memory-accumulator
> > architecture instead of a general register architecture, and a 32k
> > address space, wouldn't be very useful nowadays.
> And thus, it's not very useful that the Control Data 924 has inspired
> me to suggest a way to improve that kind of machine.
>
> Many 24-bit machines had a three bit tag field, consisting of one
> bit to indicate indirection, and two index bits to indicate no indexing,
> or choose one of three index registers.
>
> The 924, instead, had six index registers. The three bit tag field was
> 0 for plain direct addressing, 1 to 6 to pick one of the index registers,
> and 7 for indirect addressing.
>
> That was a great idea on the part of Seymour Cray, but I think it can
> be improved just a bit.
<
If it was so great, why did none of the RISC generation 1 machines or any
that followed them follow suit ?
>
> Let us just have _five_ index registers.
>
> 0: direct addressing, no index
> 1 - 5: indexed, with the index register indicated
> 6: indirect
> 7: indexed with index register 1 _and_ indirect.
>
> So the number of index registers is increased, but not only is
> indirection not sacrificed, but also the ability to combine indirection and
> indexing, albeit for only one index register, is also retained.
>
> John Savard

Re: Are 24-bit Insttructions Possible?

<b5ed29ea-cbe1-4137-98da-04f09bb1bd6cn@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a05:6214:23cb:b0:472:f1a5:5cea with SMTP id hr11-20020a05621423cb00b00472f1a55ceamr6618729qvb.13.1659726832388;
Fri, 05 Aug 2022 12:13:52 -0700 (PDT)
X-Received: by 2002:a05:622a:174c:b0:31f:3926:c809 with SMTP id
l12-20020a05622a174c00b0031f3926c809mr7015747qtk.579.1659726832098; Fri, 05
Aug 2022 12:13:52 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.com!peer03.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: Fri, 5 Aug 2022 12:13:51 -0700 (PDT)
In-Reply-To: <ce10762b-4b8c-49b8-bd90-c27776c03602n@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=136.50.14.162; posting-account=AoizIQoAAADa7kQDpB0DAj2jwddxXUgl
NNTP-Posting-Host: 136.50.14.162
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com> <ce10762b-4b8c-49b8-bd90-c27776c03602n@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <b5ed29ea-cbe1-4137-98da-04f09bb1bd6cn@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: jim.brak...@ieee.org (JimBrakefield)
Injection-Date: Fri, 05 Aug 2022 19:13:52 +0000
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
X-Received-Bytes: 3278
 by: JimBrakefield - Fri, 5 Aug 2022 19:13 UTC

On Friday, August 5, 2022 at 1:35:04 PM UTC-5, Quadibloc wrote:
> On Saturday, June 11, 2022 at 7:24:57 PM UTC-6, Quadibloc wrote:
> > Clearly, an old-style 24-bit machine, that has a memory-accumulator
> > architecture instead of a general register architecture, and a 32k
> > address space, wouldn't be very useful nowadays.
> And thus, it's not very useful that the Control Data 924 has inspired
> me to suggest a way to improve that kind of machine.
>
> Many 24-bit machines had a three bit tag field, consisting of one
> bit to indicate indirection, and two index bits to indicate no indexing,
> or choose one of three index registers.
>
> The 924, instead, had six index registers. The three bit tag field was
> 0 for plain direct addressing, 1 to 6 to pick one of the index registers,
> and 7 for indirect addressing.
>
> That was a great idea on the part of Seymour Cray, but I think it can
> be improved just a bit.
>
> Let us just have _five_ index registers.
>
> 0: direct addressing, no index
> 1 - 5: indexed, with the index register indicated
> 6: indirect
> 7: indexed with index register 1 _and_ indirect.
>
> So the number of index registers is increased, but not only is
> indirection not sacrificed, but also the ability to combine indirection and
> indexing, albeit for only one index register, is also retained.
>
> John Savard
AFIR the CDC 924, 1604 and 3000 series varied between a single indirect bit with three index registers and six index registers and a single indirect mode. The 15-bit address/displacement field is no longer adequate, so may as well shorten the field and increase the number of index or base registers..
The Livermore Loops mostly use a single index register with up to 15 base registers. Question is if a single index register is sufficient in most loops? Am considering whether the index field should specify add or subtract the index register?

Re: Are 24-bit Insttructions Possible?

<tcjqeb$32vkd$3@dont-email.me>

  copy mid

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

  copy link   Newsgroups: comp.arch
Path: i2pn2.org!i2pn.org!eternal-september.org!reader01.eternal-september.org!.POSTED!not-for-mail
From: sfu...@alumni.cmu.edu.invalid (Stephen Fuld)
Newsgroups: comp.arch
Subject: Re: Are 24-bit Insttructions Possible?
Date: Fri, 5 Aug 2022 12:18:35 -0700
Organization: A noiseless patient Spider
Lines: 32
Message-ID: <tcjqeb$32vkd$3@dont-email.me>
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<ce10762b-4b8c-49b8-bd90-c27776c03602n@googlegroups.com>
<af9bce94-831e-461c-bfa1-c92849affe4dn@googlegroups.com>
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 7bit
Injection-Date: Fri, 5 Aug 2022 19:18:36 -0000 (UTC)
Injection-Info: reader01.eternal-september.org; posting-host="0b9a8b33734c055c93ee1872e969bdc9";
logging-data="3243661"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX1+GVlFnOYa6NmrEqJsBq27rqHk0N/3jKsc="
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101
Thunderbird/102.1.0
Cancel-Lock: sha1:76WshuOk6Iuv32ZBvoLSlIVRJ5U=
Content-Language: en-US
In-Reply-To: <af9bce94-831e-461c-bfa1-c92849affe4dn@googlegroups.com>
 by: Stephen Fuld - Fri, 5 Aug 2022 19:18 UTC

On 8/5/2022 12:11 PM, MitchAlsup wrote:
> On Friday, August 5, 2022 at 1:35:04 PM UTC-5, Quadibloc wrote:
>> On Saturday, June 11, 2022 at 7:24:57 PM UTC-6, Quadibloc wrote:
>>> Clearly, an old-style 24-bit machine, that has a memory-accumulator
>>> architecture instead of a general register architecture, and a 32k
>>> address space, wouldn't be very useful nowadays.
>> And thus, it's not very useful that the Control Data 924 has inspired
>> me to suggest a way to improve that kind of machine.
>>
>> Many 24-bit machines had a three bit tag field, consisting of one
>> bit to indicate indirection, and two index bits to indicate no indexing,
>> or choose one of three index registers.
>>
>> The 924, instead, had six index registers. The three bit tag field was
>> 0 for plain direct addressing, 1 to 6 to pick one of the index registers,
>> and 7 for indirect addressing.
>>
>> That was a great idea on the part of Seymour Cray, but I think it can
>> be improved just a bit.
> <
> If it was so great, why did none of the RISC generation 1 machines or any
> that followed them follow suit ?

I think John may have a different definition of "great" than most of the
rest of us. :-)

--
- Stephen Fuld
(e-mail address disguised to prevent spam)

Re: Are 24-bit Insttructions Possible?

<baf410c5-ee07-414d-beeb-f7acf82b2190n@googlegroups.com>

  copy mid

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

  copy link   Newsgroups: comp.arch
X-Received: by 2002:a37:43d4:0:b0:6b8:e3ba:ddfc with SMTP id q203-20020a3743d4000000b006b8e3baddfcmr9160869qka.192.1659810160965;
Sat, 06 Aug 2022 11:22:40 -0700 (PDT)
X-Received: by 2002:ac8:5b4d:0:b0:33b:858a:5c40 with SMTP id
n13-20020ac85b4d000000b0033b858a5c40mr10679910qtw.563.1659810160828; Sat, 06
Aug 2022 11:22:40 -0700 (PDT)
Path: i2pn2.org!i2pn.org!usenet.blueworldhosting.com!feed1.usenet.blueworldhosting.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, 6 Aug 2022 11:22:40 -0700 (PDT)
In-Reply-To: <af9bce94-831e-461c-bfa1-c92849affe4dn@googlegroups.com>
Injection-Info: google-groups.googlegroups.com; posting-host=2001:56a:fb70:6300:6947:3c86:73e1:a64e;
posting-account=1nOeKQkAAABD2jxp4Pzmx9Hx5g9miO8y
NNTP-Posting-Host: 2001:56a:fb70:6300:6947:3c86:73e1:a64e
References: <2afa7752-e373-4413-aa30-612fe786d784n@googlegroups.com>
<ce10762b-4b8c-49b8-bd90-c27776c03602n@googlegroups.com> <af9bce94-831e-461c-bfa1-c92849affe4dn@googlegroups.com>
User-Agent: G2/1.0
MIME-Version: 1.0
Message-ID: <baf410c5-ee07-414d-beeb-f7acf82b2190n@googlegroups.com>
Subject: Re: Are 24-bit Insttructions Possible?
From: jsav...@ecn.ab.ca (Quadibloc)
Injection-Date: Sat, 06 Aug 2022 18:22:40 +0000
Content-Type: text/plain; charset="UTF-8"
X-Received-Bytes: 1883
 by: Quadibloc - Sat, 6 Aug 2022 18:22 UTC

On Friday, August 5, 2022 at 1:11:45 PM UTC-6, MitchAlsup wrote:
> On Friday, August 5, 2022 at 1:35:04 PM UTC-5, Quadibloc wrote:

> > That was a great idea on the part of Seymour Cray, but I think it can
> > be improved just a bit.
> <
> If it was so great, why did none of the RISC generation 1 machines or any
> that followed them follow suit ?

I meant a great idea - in its day. The 924 was still a memory-accumulator
machine, and I'm not arguing that those are useful or practical at the
present time.

I also spend some time thinking about retrocomputing.

John Savard

1
server_pubkey.txt

rocksolid light 0.9.81
clearnet tor