* [TUHS] Encoding an ISA: Random Logic vs. Control Stores
@ 2021-11-30 8:07 pbirkel
2021-11-30 15:19 ` Ron Natalie
0 siblings, 1 reply; 13+ messages in thread
From: pbirkel @ 2021-11-30 8:07 UTC (permalink / raw)
To: 'TUHS main list'; +Cc: 'Eugene Miya'
I believe that the PDP-11 ISA was defined at a time when DEC was still using
random logic rather than a control store (which came pretty soon
thereafter). Given a random logic design it's efficient to organize the ISA
encoding to maximize its regularity. Probably also of some benefit to
compilers in a memory-constrained environment?
I'm not sure at what point in time we can say "lots of processors" had moved
to a control store based implementation. Certainly the IBM System/360 was
there in the mid-60's. HP was there by the late 60's.
-----Original Message-----
From: TUHS <tuhs-bounces@minnie.tuhs.org> On Behalf Of Larry McVoy
Sent: Monday, November 29, 2021 10:18 PM
To: Clem Cole <clemc@ccc.com>
Cc: TUHS main list <tuhs@minnie.tuhs.org>; Eugene Miya <eugene@soe.ucsc.edu>
Subject: Re: [TUHS] A New History of Modern Computing - my thoughts
On Sun, Nov 28, 2021 at 05:12:44PM -0800, Larry McVoy wrote:
> I remember Ken Witte (my TA for the PDP-11 class) trying to get me to
> see how easy it was to read the octal. If I remember correctly (and I
> probably don't, this was ~40 years ago), the instructions were divided
> into fields, so instruction, operand, operand and it was all regular,
> so you could see that this was some form of an add or whatever, it got
> the values from these registers and put it in that register.
I've looked it up and it is pretty much as Ken described. The weird thing
is that there is no need to do it like the PDP-11 did it, you could use
random numbers for each instruction and lots of processors did pretty much
that. The PDP-11 didn't, it was very uniform to the point that Ken's
ability to read octal made perfect sense. I was never that good but a
little google and reading and I can see how he got there.
...
--lm
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA: Random Logic vs. Control Stores 2021-11-30 8:07 [TUHS] Encoding an ISA: Random Logic vs. Control Stores pbirkel @ 2021-11-30 15:19 ` Ron Natalie 2021-11-30 15:30 ` arnold 0 siblings, 1 reply; 13+ messages in thread From: Ron Natalie @ 2021-11-30 15:19 UTC (permalink / raw) To: pbirkel, 'TUHS main list'; +Cc: 'Eugene Miya' Indeed, the early PDPs (10/15/20) had no microprogramming at all. Even the early microprogrammed ones used "random logic" to implement that. It would take ten years before large scale integration took over. The PDP-11/44 in 1979 was the last of the discrete logic CPUs. ------ Original Message ------ From: pbirkel@gmail.com To: "'TUHS main list'" <tuhs@minnie.tuhs.org> Cc: "'Eugene Miya'" <eugene@soe.ucsc.edu> Sent: 11/30/2021 3:07:15 AM Subject: [TUHS] Encoding an ISA: Random Logic vs. Control Stores >I believe that the PDP-11 ISA was defined at a time when DEC was still using >random logic rather than a control stor ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA: Random Logic vs. Control Stores 2021-11-30 15:19 ` Ron Natalie @ 2021-11-30 15:30 ` arnold 2021-11-30 15:39 ` Ralph Corderoy 2021-11-30 18:50 ` Jon Steinhart 0 siblings, 2 replies; 13+ messages in thread From: arnold @ 2021-11-30 15:30 UTC (permalink / raw) To: tuhs, ron, pbirkel; +Cc: eugene Can someone please explain why it's called "random" logic? Discrete logic I understand (more or less), but I've not heard the term "random" used in this context before now. Thanks, Arnold "Ron Natalie" <ron@ronnatalie.com> wrote: > Indeed, the early PDPs (10/15/20) had no microprogramming at all. Even > the early microprogrammed ones used "random logic" to implement that. > It would take ten years before large scale integration took over. The > PDP-11/44 in 1979 was the last of the discrete logic CPUs. > > > ------ Original Message ------ > From: pbirkel@gmail.com > To: "'TUHS main list'" <tuhs@minnie.tuhs.org> > Cc: "'Eugene Miya'" <eugene@soe.ucsc.edu> > Sent: 11/30/2021 3:07:15 AM > Subject: [TUHS] Encoding an ISA: Random Logic vs. Control Stores > > >I believe that the PDP-11 ISA was defined at a time when DEC was still using > >random logic rather than a control stor > ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA: Random Logic vs. Control Stores 2021-11-30 15:30 ` arnold @ 2021-11-30 15:39 ` Ralph Corderoy 2021-11-30 18:50 ` Jon Steinhart 1 sibling, 0 replies; 13+ messages in thread From: Ralph Corderoy @ 2021-11-30 15:39 UTC (permalink / raw) To: tuhs Hi Arnold, > Can someone please explain why it's called "random" logic? Discrete > logic I understand (more or less), but I've not heard the term > "random" used in this context before now. I'm more used to ‘hard-wired’ logic versus ‘micro-programmed’ for microcode but random logic in a known term in this context: https://en.wikipedia.org/wiki/Random_logic Random logic is a semiconductor circuit design technique that translates high-level logic descriptions directly into hardware features such as AND and OR gates. The name derives from the fact that few easily discernible patterns are evident in the arrangement of features on the chip and in the interconnects between them. -- Cheers, Ralph. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA: Random Logic vs. Control Stores 2021-11-30 15:30 ` arnold 2021-11-30 15:39 ` Ralph Corderoy @ 2021-11-30 18:50 ` Jon Steinhart 2021-11-30 21:45 ` Humm 1 sibling, 1 reply; 13+ messages in thread From: Jon Steinhart @ 2021-11-30 18:50 UTC (permalink / raw) To: tuhs arnold@skeeve.com writes: > Can someone please explain why it's called "random" logic? Discrete > logic I understand (more or less), but I've not heard the term "random" > used in this context before now. Well, as a recovered random logic designer, I think that the name comes from there being no particular structure to the logic. Many parts of logic design are very regular, think memory. But that regularity doesn't exist when, for example, decoding irregular instructions. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA: Random Logic vs. Control Stores 2021-11-30 18:50 ` Jon Steinhart @ 2021-11-30 21:45 ` Humm 2021-11-30 23:07 ` Jon Steinhart 0 siblings, 1 reply; 13+ messages in thread From: Humm @ 2021-11-30 21:45 UTC (permalink / raw) To: tuhs Quoth Jon Steinhart: >arnold@skeeve.com writes: >> Can someone please explain why it's called "random" logic? Discrete >> logic I understand (more or less), but I've not heard the term "random" >> used in this context before now. > >Well, as a recovered random logic designer, I think that the name comes >from there being no particular structure to the logic. Many parts of >logic design are very regular, think memory. But that regularity doesn't >exist when, for example, decoding irregular instructions. Now that’s a “random” definition. -- Humm ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA: Random Logic vs. Control Stores 2021-11-30 21:45 ` Humm @ 2021-11-30 23:07 ` Jon Steinhart 2021-11-30 23:18 ` Henry Bent 0 siblings, 1 reply; 13+ messages in thread From: Jon Steinhart @ 2021-11-30 23:07 UTC (permalink / raw) To: tuhs Humm writes: > Quoth Jon Steinhart: > >arnold@skeeve.com writes: > >> Can someone please explain why it's called "random" logic? Discrete > >> logic I understand (more or less), but I've not heard the term "random" > >> used in this context before now. > > > >Well, as a recovered random logic designer, I think that the name comes > >from there being no particular structure to the logic. Many parts of > >logic design are very regular, think memory. But that regularity doesn't > >exist when, for example, decoding irregular instructions. > > Now that’s a “random” definition. > > -- > Humm OK, I'll try again. For anybody familiar with Portland, Oregon, it's the difference between driving in Northwest where there's a rectangular grid numbered in one direction and alphabetical in the other, and approaching the Ross Island Bridge from the west side which appears to be designed by someone following a goat while tripping their brains out. One can address Northwest Portland quite easily unlike getting onto the Ross Island Bridge. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA: Random Logic vs. Control Stores 2021-11-30 23:07 ` Jon Steinhart @ 2021-11-30 23:18 ` Henry Bent 2021-12-01 5:00 ` Jon Steinhart 0 siblings, 1 reply; 13+ messages in thread From: Henry Bent @ 2021-11-30 23:18 UTC (permalink / raw) To: Jon Steinhart; +Cc: TUHS main list [-- Attachment #1: Type: text/plain, Size: 1382 bytes --] On Tue, 30 Nov 2021 at 18:10, Jon Steinhart <jon@fourwinds.com> wrote: > Humm writes: > > Quoth Jon Steinhart: > > >arnold@skeeve.com writes: > > >> Can someone please explain why it's called "random" logic? Discrete > > >> logic I understand (more or less), but I've not heard the term > "random" > > >> used in this context before now. > > > > > >Well, as a recovered random logic designer, I think that the name comes > > >from there being no particular structure to the logic. Many parts of > > >logic design are very regular, think memory. But that regularity > doesn't > > >exist when, for example, decoding irregular instructions. > > > > Now that’s a “random” definition. > > > > -- > > Humm > > OK, I'll try again. For anybody familiar with Portland, Oregon, it's the > difference between driving in Northwest where there's a rectangular grid > numbered in one direction and alphabetical in the other, and approaching > the Ross Island Bridge from the west side which appears to be designed by > someone following a goat while tripping their brains out. One can address > Northwest Portland quite easily unlike getting onto the Ross Island Bridge. > So - and as I say this as someone who has no direct experience with this level of logic - everything is directly addressable but the difference is in how you get there? -Henry [-- Attachment #2: Type: text/html, Size: 1903 bytes --] ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA: Random Logic vs. Control Stores 2021-11-30 23:18 ` Henry Bent @ 2021-12-01 5:00 ` Jon Steinhart 2021-12-01 6:27 ` pbirkel 0 siblings, 1 reply; 13+ messages in thread From: Jon Steinhart @ 2021-12-01 5:00 UTC (permalink / raw) To: TUHS main list Henry Bent writes: > On Tue, 30 Nov 2021 at 18:10, Jon Steinhart <jon@fourwinds.com> wrote: > > > Humm writes: > > > Quoth Jon Steinhart: > > > >arnold@skeeve.com writes: > > > >> Can someone please explain why it's called "random" logic? Discrete > > > >> logic I understand (more or less), but I've not heard the term > > "random" > > > >> used in this context before now. > > > > > > > >Well, as a recovered random logic designer, I think that the name comes > > > >from there being no particular structure to the logic. Many parts of > > > >logic design are very regular, think memory. But that regularity doesn't > > > >exist when, for example, decoding irregular instructions. > > > > > > Now that's a "random" definition. > > > > > > -- > > > Humm > > > > OK, I'll try again. For anybody familiar with Portland, Oregon, it's the > > difference between driving in Northwest where there's a rectangular grid > > numbered in one direction and alphabetical in the other, and approaching > > the Ross Island Bridge from the west side which appears to be designed by > > someone following a goat while tripping their brains out. One can address > > Northwest Portland quite easily unlike getting onto the Ross Island Bridge. > > > > So - and as I say this as someone who has no direct experience with this > level of logic - everything is directly addressable but the difference is > in how you get there? Sorry my analogy didn't work. Look at a photomicrograph of a chip; at least to me it's pretty obvious where the random logic is located. Here's another try. In a microcoded machine, the same hardware is used for every microinstruction. In random logic, custom designed circuitry is used for each special case. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA: Random Logic vs. Control Stores 2021-12-01 5:00 ` Jon Steinhart @ 2021-12-01 6:27 ` pbirkel 2021-12-01 16:42 ` ron minnich 0 siblings, 1 reply; 13+ messages in thread From: pbirkel @ 2021-12-01 6:27 UTC (permalink / raw) To: 'TUHS main list' Said Jon: " In a microcoded machine, the same hardware is used for every microinstruction. In random logic, custom designed circuitry is used for each special case." Best way to get a handle on the distinction is to read up on the originator of the concept, Maurice Wilkes: https://en.wikipedia.org/wiki/Maurice_Wilkes https://amturing.acm.org/info/wilkes_1001395.cfm The original paper: http://www.cs.princeton.edu/courses/archive/fall09/cos375/BestWay.pdf "The Best Way to Design an Automatic Calculating Machine" (1951) ----- ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA: Random Logic vs. Control Stores 2021-12-01 6:27 ` pbirkel @ 2021-12-01 16:42 ` ron minnich 2021-12-01 17:08 ` Ron Natalie 2021-12-01 21:56 ` [TUHS] Encoding an ISA Warren Toomey 0 siblings, 2 replies; 13+ messages in thread From: ron minnich @ 2021-12-01 16:42 UTC (permalink / raw) To: TUHS main list I used to design hardware in those days, and had a soldering iron and a PDP 11/45 board on the same bench, unsuccessfully, so here goes. It's interesting to consider the PDP-8 and -11, and the progression of hardware. The -11 was way different than the -8: I still have some -8 boards, on which you can see the transistors and such needed to implement state and gates. The -11s had TTL. At the time, a package with four logic elements was a big deal. so the -8 had "a gate per 2x3 inch card" or so. The -11 had about 8x11 boards with, by my count on the 11/20, around 100+ gates (I've got some cards still ...). Again, multiple logic elements in a 14-dip were an amazing step forward. If you look at those boards, you see lots of 14-DIP with quad NAND, AND, NOR, 2 flops per package, and that's about it. In this world, where a gate costs about $1, you think about everything. Look carefully, and you can see the traces were laid out by hand; some of us remember the rooms full of light panels and the red tape you used to lay out the board. Not that I designed CPUs, but having used this gear, lived in the culture, I'd argue that bit layouts of instructions did in fact matter. The TTL MUX parts were yet to appear. The board layout, package design, cost of a wire, instruction format: all to some extent intertwined. You could look at the hardware design and draw a connection right back to instruction coding. It was all of a piece. The luxury of a ROM or MUX that picked instructions apart for you? Not at that time. As for random logic ... the things we did back then. The discipline of design for test, which we take for granted today as JTAG, was some time in the future. And some of you no doubt remember the unibus ... and the practice of "margining the bus." I.e., slow it the hell down so maybe it would not get data errors. Or maybe, even, "let's put a cap here to add some delay constant" -- people really did that stuff. It's amazing anything worked. But when a gate costs a buck, you do what you do. On Tue, Nov 30, 2021 at 10:30 PM <pbirkel@gmail.com> wrote: > > Said Jon: > > " In a microcoded machine, the same hardware is used for every > microinstruction. In random logic, custom designed circuitry is used for > each special case." > > Best way to get a handle on the distinction is to read up on the originator > of the concept, Maurice Wilkes: > > https://en.wikipedia.org/wiki/Maurice_Wilkes > https://amturing.acm.org/info/wilkes_1001395.cfm > > The original paper: > > http://www.cs.princeton.edu/courses/archive/fall09/cos375/BestWay.pdf > > "The Best Way to Design an Automatic Calculating Machine" (1951) > > ----- > ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA: Random Logic vs. Control Stores 2021-12-01 16:42 ` ron minnich @ 2021-12-01 17:08 ` Ron Natalie 2021-12-01 21:56 ` [TUHS] Encoding an ISA Warren Toomey 1 sibling, 0 replies; 13+ messages in thread From: Ron Natalie @ 2021-12-01 17:08 UTC (permalink / raw) To: ron minnich, TUHS main list There seems to be confusion here about microcoding vs. discrete logic/LSI. All but the initial 11/20 (and its variants) are microcoded. That is there is a programmed sequence of operations in the execution of the individual instructions. The less popular 11/60 even featrued a writable control store. All of the early PDP-11s were built out of discrete logic. Relatively simplistic combinations of various logic chips, gates, flip flops, etc.. A lot of these were encapsulated into the DEC "Flip Chips" small circuit boards to do common sets of operations. While this is by modern standards, crude, it doesn't preclude microcoding and other advanced tasks. I worked on a supercomputer built that way (Denelcor HEP built largely out of Motorola 10800-series ECL chips). As I previously stated, the 11/44 was the last of the discrete logic PDP's in 1979. The later systems were all large scale integrated circuit based. First starting with the LSI-11/03 on the Q bus, quickly followed by the 11/23 and the Unibus 11/24. ^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: [TUHS] Encoding an ISA 2021-12-01 16:42 ` ron minnich 2021-12-01 17:08 ` Ron Natalie @ 2021-12-01 21:56 ` Warren Toomey 1 sibling, 0 replies; 13+ messages in thread From: Warren Toomey @ 2021-12-01 21:56 UTC (permalink / raw) Cc: TUHS main list All, I think it's time to move the ISA and random logic threads over to COFF :-) Thanks! Warren ^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2021-12-01 21:58 UTC | newest] Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-11-30 8:07 [TUHS] Encoding an ISA: Random Logic vs. Control Stores pbirkel 2021-11-30 15:19 ` Ron Natalie 2021-11-30 15:30 ` arnold 2021-11-30 15:39 ` Ralph Corderoy 2021-11-30 18:50 ` Jon Steinhart 2021-11-30 21:45 ` Humm 2021-11-30 23:07 ` Jon Steinhart 2021-11-30 23:18 ` Henry Bent 2021-12-01 5:00 ` Jon Steinhart 2021-12-01 6:27 ` pbirkel 2021-12-01 16:42 ` ron minnich 2021-12-01 17:08 ` Ron Natalie 2021-12-01 21:56 ` [TUHS] Encoding an ISA Warren Toomey
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).