Prev: Software vs Hardware
Next: Searching for the PDP-3
From: Del Cecchi on 3 Jan 2007 12:12 ChrisQuayle wrote: > Peter "Firefly" Lund wrote: > >> >> It does look a bit like a PDP-11 with more registers and fewer >> addressing modes and with both more regularity in the registers (even >> the flags are in a general-purpose register vs. just the PC and SP on >> the PDP-11) and less regularity (R3 is not there -- if used as source >> it will generate one of a few constants based on the addressing mode! >> Likewise, R2, the flags register, will generate constants in some >> addressing modes). >> >> -Peter > > > Agreed, there is quite a bit of variance, but it's easy to see which > architecture they were inspired by. Not bad for a system that was > designed in the late 60's. I think the very first pdp used hard wired > logic, instead of microcode, but by the 11/05, the boards were full of > bipolar proms and (iirc) Texas 74181 bit slice. > > The saying used to be about the pdp that any addressing mode works with > any instruction and / or register, so long as it sounds sensible and it > is more or less true as well. After programming various intel and other > micros in assembler, the pdp seemed like pure luxury :-)... > > Chris > 74181 was a long long way from a bit slice. It was a 4 bit alu. -- Del Cecchi "This post is my own and doesn�t necessarily represent IBM�s positions, strategies or opinions.�
From: "Peter "Firefly" Lund" on 3 Jan 2007 12:35 On Wed, 3 Jan 2007, ChrisQuayle wrote: > Agreed, there is quite a bit of variance, but it's easy to see which > architecture they were inspired by. Not bad for a system that was designed in > the late 60's. No, not bad at all. It's just that thinking in those addressing modes doesn't seem at all natural to me. Hopefully, I'll learn. I intend to build a small (10cm x 10cm) PDP-11 clone in the beginning of February as part of my preparations for the VAX... :) > I think the very first pdp used hard wired logic, instead of Yep. > microcode, but by the 11/05, the boards were full of bipolar proms and (iirc) > Texas 74181 bit slice. Didn't they use AMD29xx? > The saying used to be about the pdp that any addressing mode works with any > instruction and / or register, so long as it sounds sensible and it is more > or less true as well. After programming various intel and other micros in > assembler, the pdp seemed like pure luxury :-)... From the 386 and on, the instruction set had become quite regular. -Peter
From: ChrisQuayle on 3 Jan 2007 17:18 Del Cecchi wrote: > ChrisQuayle wrote: > >> Peter "Firefly" Lund wrote: >> >>> >>> It does look a bit like a PDP-11 with more registers and fewer >>> addressing modes and with both more regularity in the registers (even >>> the flags are in a general-purpose register vs. just the PC and SP on >>> the PDP-11) and less regularity (R3 is not there -- if used as source >>> it will generate one of a few constants based on the addressing >>> mode! Likewise, R2, the flags register, will generate constants in >>> some addressing modes). >>> >>> -Peter >> >> >> >> Agreed, there is quite a bit of variance, but it's easy to see which >> architecture they were inspired by. Not bad for a system that was >> designed in the late 60's. I think the very first pdp used hard wired >> logic, instead of microcode, but by the 11/05, the boards were full of >> bipolar proms and (iirc) Texas 74181 bit slice. >> >> The saying used to be about the pdp that any addressing mode works >> with any instruction and / or register, so long as it sounds sensible >> and it is more or less true as well. After programming various intel >> and other micros in assembler, the pdp seemed like pure luxury :-)... >> >> Chris >> > 74181 was a long long way from a bit slice. It was a 4 bit alu. > Yes it was, but probably the best that could be done at the time in commodity devices - ok, bit slice in intent ?. I think the more complex AMD 29xx series came quite a bit later than 1972. Chris
From: ChrisQuayle on 3 Jan 2007 17:45 Peter "Firefly" Lund wrote: > It's just that thinking in those addressing modes doesn't seem at all > natural to me. > Ah, the power of indirection. Probably me take time to get back into the flow as well, but haven't worked on any cpu since that is so clean from an assembler programming point of view. Of course, modern compilers hide all that, but at the time, much more systems code was written in assembler. > > Hopefully, I'll learn. I intend to build a small (10cm x 10cm) PDP-11 > clone in the beginning of February as part of my preparations for the > VAX... :) > If it's a good enough clone, you could even run (heaven forbid ?) all the old dec os's - rt11, rsx as well as several early unices. Will you open source it to opencores.org, or what ?. My hardware design stops at ttl really, but a single chip pdp clone in a gate array on an evaluation board would be almost irresistable :-). I still have a Whitesmiths pc dos to pdp C cross compiler somewhere, though don't remember how good the generated code was. > >> microcode, but by the 11/05, the boards were full of bipolar proms and >> (iirc) Texas 74181 bit slice. > > > Didn't they use AMD29xx? No, definately 74181. The 11/05 print set does have the microcode rom listings btw + cross reference table, so perhaps dec had some sort of microcode assembler. If you have lots of time, you could relate these to the schematics to reverse engineer the design. > >> The saying used to be about the pdp that any addressing mode works >> with any instruction and / or register, so long as it sounds sensible >> and it is more or less true as well. After programming various intel >> and other micros in assembler, the pdp seemed like pure luxury :-)... > > > From the 386 and on, the instruction set had become quite regular. > > -Peter Some might say that the whole x86 architecture was and is regularly bad :-)... Chris
From: "Peter "Firefly" Lund" on 3 Jan 2007 19:11
On Wed, 3 Jan 2007, ChrisQuayle wrote: > Ah, the power of indirection. Probably me take time to get back into the flow > as well, but haven't worked on any cpu since that is so clean from an > assembler programming point of view. Of course, modern compilers hide all > that, but at the time, much more systems code was written in assembler. You can write systems code in anything. Think about the amount of Z80 and 6502/6510 machine code people wrote in the eighties. Yes, a lot of it didn't even use assembler. > If it's a good enough clone, you could even run (heaven forbid ?) all the old > dec os's - rt11, rsx as well as several early unices. I'm not going to implement the bank switching (sorry, "virtual memory"), the dual address spaces, or the two or three different protection levels. I might not even implement the simple stack-oriented floating-point instructions. (The PDP-11 was not so much an architecture as a family of architectures with various more or less compatible extensions. For example, there were at least three different kinds of floating-point acceleration.) > Will you open source it to opencores.org, or what ? Sure, why not... it will consist of a simple PCB layout and some microcode. There might be a verilog simulation but it will be boring. > My hardware design stops at ttl really, but a single chip pdp clone in a I can handle TTL and other digital things just fine on paper but what kills me is all the analog there really is in digital electronics. In order to get my VAX built, I will have to get much more accustomed to actual electronics, messy as it is. That's actually why I'm going to do a PDP-11 along the way. > No, definately 74181. The 11/05 print set does have the microcode rom > listings btw + cross reference table, so perhaps dec had some sort of > microcode assembler. If you have lots of time, you could relate these to the They did. It seems to have used extreme amounts of macro substitution for most of its work, at least when they had gotten to the VAX. Look at the SimH pages on trailing edge (google for "supnik+simh"). > Some might say that the whole x86 architecture was and is regularly bad > :-)... No, it never was all that bad. It just looks a lot worse than it actually is. Ok, the conditional branches had some stupid mnemonics, that one actually slowed me down a lot. The PDP-11 conditional branches had marginally better names. -Peter |