Saturday, December 24, 2022

My PDP10. What was he thinking?

 

OK, it's gonna be a stretch. One old guy attempting to build a work alike KI-10 processor.
This blog will attempt to convey the humor and hubris of that statement along with some history and the necessity of much techy talk...


I wanted a brief intro at the top. You should really start at the bottom and read up.

 

Thursday, December 22, 2022

 Wow! 6 years have elapsed since my last post, and mostly since I last worked on it.

I have forgotten many things I was working on. Reading my own blog is helping!

I say mostly, because I have been seriously working on parts of the project for a couple of months now.

There are SO many things to do, but I have made some interim decisions, and done some engineering work.

I am going to pursue the course of 74HCTxx and where necessary for speed 74LSxx chips.

I am going to pursue using the Camac crate I have as the frame to build my project in.

This box has 25 slots for cards that are approximately 7.5” by 12”, so there’s a fair amount of real estate available.

There is a “Camac dataway” which I am hoping to turn into my register/memory/IO “unibus”, with enough extra lines so I can do addressing and control?

I have received a generous donation [ from Andreas Ruben at Weiner US ] of old Camac cards whose “rails” I can use when I start my prototype cards. This will allow me to not have to manufacture the hardware, so I can just pursue the design and acquisition of the solderable prototyping

I have purchased more 74HCTxx and 74LSXX chips, and enough AS6C4008 512k x 8 Static CMos Ram to construct a 4 MWord memory.

I have reached out to, and started to get some samples of pushbutton switches for a console.

I have started actually using KiCad [ a Cern developed Circuit design Cad tool] and made progress on my prototype board. We used these back in the day to build on off circuits at Fermilab.

They are not really available anymore, so I’m going to try to have some manufactured. This is what one looked like: [ This company wanted something like $1500 for this one


I am hoping to get 50 of them for about $1000.00, or about $20 each. These are approximately 7 x 12 and can hold 50 or more IC’s. In a production mode with designed traces, you could get 100 IC’s on one.

And here is a partial of how far I’ve gotten with the design of the new one. As you can see, I’m kida-sorta pretty far along and quite excited about it!

I had to stop, because I need to figure out if I can adjust the power supplies on my Camac crate, so that the ‘on-board’ power regulation will be needed.

Camac standard voltages  were +-6v +-12v and +-24v. They were developed before stand IC’s started really using +5v and +-15v. If I can adjust the main power supply for the crate, we’ll need less board based adjustment.

I will pursue a bus based set of registers with tri-state output ‘bus-drivers’ to reduce or eliminate the large amount of and-or gates used to control the data flow in the original KI10. Separately there will be open collector drivers for the lights, so we will still be able to see data flow in the registers.

Finally, ‘I think finally for now’, 3D printing IS A THING. I am going to use it so that I can get a console similar to the original, and several other places so that I can have LIGHTS and buttons!

I hope to be updating more regularly. Still yet to retire, but I’m working on the ‘retirement project’.







Tuesday, September 20, 2016

The wait is over, long live the wait (more on lights, your chance to vote

Some stuff came in from the company I was worried about!
At this point it's hard to know if internet reviews have any value. f$#k!

Futurlec, just so we are clear. Got a fair bit of bad review along with some good.
I got in LED's a number of different logic chips, pull-up resistors, etc.

2 orders. They arrived in 3 -4 weeks. This is typical for shipping from hong-kong.  So NOT the 3 months some said.

It looks mostly correct for parts and quantities, so while customer conversation with them was poor, it seems (at first glance) that they supplied what was asked for.

Now sadly, I have to test a bunch of these parts to see if they work, or are just a bunch of dead plastic.

First the LED's. (because they are easier and FUN!) and lead to blinking lights.
I have my 1st issue. I bought 50 each of red, blue, green and yellow. I got one (50) bag of blue that actually is red. I want to cut them some slack on this, All of the LED's are completely clear when not powered, I really don't know how that would not happen more often.

IF it is the only error, I'll consider this a decent buy. If it's only the start of the problems ...

So I wired up a few to get a look at 'em.  In groups of 3 just like on the KI-10 console. As you can see, I only got the 1 blue LED on the end. (They look better in real life than the pic)



below a part of the KI console











<<skip this if your eyes are glazing over)
I did some detailed testing because I wanted to know about power usage, etc.

Oddly the blue and green LED's have a forward voltage drop of 3 volts while the red and yellow only eat 2 volts. In any case that means with my guesstimated 150 ohm pull-up B&G are using 13 ma while R&Y are using 20 ma.

I may do more testing later, because I turned the voltage down to see where they started to actually emit light, and they actually start to work at amazingly low currents. This seems important, as I have to worry about the amount of power the system will use. (heat space cooling, etc...)
<<end of skip)

Now for the important part, the vote! My plan is to mostly use alternating blue and green LEDs in homage to the KI console, but WHAT do YOU think?
Post your vote as a comment to the post.

Meanwhile, There is now some serious time needed to do parts testing. Hopefully I'll get good results and wont need to spend so much time on that later, but for now, I gotta know if this stuff works.
The really good news for me is that this stuff is way cheaper than it was back in the day. If it works...

You may here me say this again. This could take me a while...

Sunday, September 18, 2016

Blinking light minutia

So, did we always know it would come down to blinking lights?
Not sure I did, because there is a big reason to avoid them. That reason is that it takes a lot more chips, just to run the lights. It takes a lot of mux's (at least that is how AK did it.) It also takes those light driver chips. hmm gotta look that up, back in a minute....

I'm back, but no more knowledgeable than I was when I left. It seems that the standard KI-10 Customer print set (which was by and large all us field service grunts ever saw) does not contain the actual schematics for the freaking blinking lights! It seems that this information was only in the manufacturing print set. So we know a wire goes off to somewhere there is a light (like AR BIT 0) , but that circuit is a mystery to us.

I sorta get this. Whether or not the lights worked was superfluous to the thing actually working. It coulda worked just fine with no lights at all, so they were there just for us to admire, and on the rare occasion use them for troubleshooting.

So, the customer would never need these and various power supply details unless they were building their own KI-10 which DEC would not have been in favor of. Hey, what about me? ha

BUT I started this post because blinking lights are COOL! And, whether or not the finished product has them, I'm gonna need them while prototyping, so I can "SEE" what's happening.

And now finally for the electrical and logic minutia (more teaching). I remembered that in the 74XX logic chips there were some that were built to be interface chips. To drive things OTHER than just another 74XX chip.

So, for example, there is the 7404 chip. This is one of the 3 most basic 74XX chips.
It is simply 6 NOT's. Whatever goes in comes out the opposite.
If the input is high, the output is low and visa versa.

OK goddamit here are the other 2.
These are the 7400, which is 4 NAND gates (that's an AND gate with a NOT output.
And the 7402 which is 4 NOR gates (yes, you get it, an OR with a NOT output.

I mention these here, because every other digital circuit can be made from these basic building blocks.
These form adders, registers, counters, etc. So really (and frankly you could do it all with just the 7400's) if you understand these you have the basis for any digital circuit.

Can we get back to the subject please? I said this was minutia and I need to get to it.

So, the 7404 is 6 inverters. But those guys also had the 7405 and the 7407 chips.
Now if you look below, you will see that the logic is identical. It looks like 6 inverters. Just like the 7404.

Well, as I said (it seems like forever ago) this chip was built to interface to other things. The way they did that was by making the output "open collector".
OK really in the weeds now, See the arrow? It it pointing to a part of a transistor which is NOT connected. It's OPEN. The circuit is completed OUTSIDE of the chip, which makes it usable to connect to other things.


And here we show why that is important. A blinking light can be driven by one of these.

Finally, notice that I mentioned there was a 7405 and a 7407. What's the difference? I started to ask myself that question as well, because I forgot.  I could buy a 7405 for a quarter (literally), but the 7407 was more like 60 cents. So el cheapo me went and bought (10) 7405's without thinking about it.

These are still on the parts I'm waiting for, but I did start to wonder. So, I looked at the spec's and it turns out that the 7405 isn't really powerful enough. It can only handle an output of 8 ma. My led's generally need about 30 ma, so if I connected one to a 7405 there would be smoke!

The 7407 chip can handle 40 ma (that's milliamp) outputs, or happily BLINKING LIGHTS
I just ordered some of those so I can start to work on the light show.


Thursday, September 15, 2016

Waiting...

I am waiting.

I am waiting for stuff to arrive from overseas. It naturally takes a long time, but there are complications.

Maybe I have purchased from an internet scam!

You can't cheat an honest man. Sadly, I am not so honest. I have started some internet research on parts. I have even joined Alibaba and successfully purchased stuff from Shenzhen China!

However, I am waiting for my biggest parts purchase to arrive. It's not that big (less than $150.00) , so it wont be the end of the world if it is a scam, but now I have to wait.

The website:  futurlec.com
It's a complete website, with many electronic parts, and frankly cheap (but  at 1st glance believable)  prices. There it is, the pretty good price trap. Are they too good to be true? I have in another area already fallen prey to this phenomenon. Yes, it's possible I have done this before.

So, AFTER the fact I started looking to see what others think of this company. The news is mixed. The internet is so unreliable. How do you know who is telling the truth?

Anyway, there are stories that this is a completely fake company that a couple of Australian guys are making money from. There is another story that this is a Thai based company. So many different experiences. Some say they never got product. Some say it took 3 months. Some say wrong product arrived. Some (a few) say all was OK.

My experience is that their customer service (via email) is slow and unreliable. Not the worst ever, but close. We have managed to carry on conversations and theoretically they have adjusted my orders to compensate far part substitutions they needed to make.

I know one really bad thing. We agreed to a change in the order in which I would owe them $8 more than originally paid for by credit card on their site. I asked them how they wanted me to pay the extra to which they did not respond. I have recently looked at my credit card activity and THEY TOOK THE MONEY! They charged me the additional $8 all by themselves. This means they KEPT ALL MY CREDIT information. Yikes!

I received an email from them today with tracking numbers from 2 different overseas locations.It's possible all is OK and they are just a really slow company (not unlike say Comcast for example).

I am now going to check on my credit card activity pretty closely for a while. I'd hate to have to change the number, it's tied in to so many payments I make.

Maybe all will arrive safe and all this worry is for naught. It's hard to believe a website could stay up for so long and be a scam, but as I said, I've been caught once before.

allhdd.com - don't EVER buy anything from them. I have the piece of crap they sold me sitting on my desk as a reminder. Apparently not enough.

Hey, none of this is serious. If I can't laugh at it, that would be an issue.

When they stuff gets here (from this or another company) I will start working on BLINKING LIGHTS! WOOHOO!



Wednesday, September 7, 2016

My workbench still isn't right, or how to kill 3 days.

I wanted to call this post 'lack of power, that was our dilemma' but that is an expression that no-one here will have heard before. This will be a long post, not because the subject matter deserves it, but because of how I let the project consume several days!

So, as we have seen previously, I have started to setup my workbench. As part of that, I bought this old laboratory bench power supply for cheap. Another image:

This is a perfectly wonderful piece of equipment. It supplies 3 different adjustable voltages, which allows you to build a mixed analog and digital circuit on your workbench to do almost anything a labrat would want. 0-30 volts (2 of 'em), and one (4 - 6.5) volt 5 amp output supply for the digital side.

The problem is the digital side. It was designed to allow some variation in output, to cover a number of early logic families. (Uh-oh, more history). We could go really back, a really early digital computer was made with electro-mechanical relays (see pic) (if you were near it, you would here them clicking back and forth, clackity clackity, clack) ,  and then they were made using vacuum tube technology (see pic). This was a tremendous increase in speed, approaching some semblance of modern technology, but tubes were still too big, occupying far too much space, and produced a large amount of heat.

Well ok, my time doesn't go back that far, but I do have one piece of old tech (which was already surplus when I was in high school) which had a bunch if tiny little tubes on a circuit board. Anyway, as logic transitioned to the solid state world, many different supply voltages were used. There were discrete diode and transistor boards (see pic) which might use any voltage the designer cared for. Some used negative power (DEC), etc. We were making progress. We could now get one WHOLE logic gate on a board!

At some point there could be more tutorial on digital logic, but I'm not sure about that. While I love the role of teacher, my audience probably has a handle on the basics. For now, see my favorite Dilbert cartoon.

This was followed by the introduction of a few different forms of integrated circuit (IC) logic. In the early days of RTL and DTL, the power ranges narrowed, but not completely.

Then we get to TTL logic. (transistor-transistor-logic aka 74XXX). This was becoming the main stream as I really started working, and it also forms the basis for the KI-10 CPU (which was where we started right?) TTL was much more rigidly defined which was a boon to the digital engineer. He could concentrate on the logic design, because way more analog variables had been removed. (We'll talk about output fan-out later). TTL logic required a 5 volt power supply. Technically the range was 4.5 to 5.5 volts (because they had to allow for some slop), but the truth is it was optimized and happiest at 5 volts. This was widely accepted and in fact following technologies (CMOS NMOS, etc) continued to use this voltage and still today it is commonly in use. Very high density memory and CPU chips now use 3.3 volts (to reduce power consumption), but 5 volts is the general standard.
  OK, I need to talk about TTL more, but not now. I want to get back on track...

5 volts. Not 4 volts. Certainly not 6.5 volts. (I smell smoke!). 5 volts. So, there is a problem with my venerable old bench supply. IT CAN supply the 5 volts needed, but what if someone accidentally turns the adjustment know, or bumps into it? Oops. This is a problem I am not prepared to allow. I don't want to fry any of my chips because of an accident. What I really need is 5 volt fixed power supply.

So, my pretty lab supply is not really what I want. I need to a simple single fixed 5 volt power supply.
So, I get this cheap new internal 5 volt 30 amp fixed supply for $35.00. $35.00? It continues to amaze me how cheap most of this stuff is.

But wait, there is a problem! What? Really, it's internal. I could just screw a power cord into it, but I would have live exposed 120 vac power a bit to close to possibly clumsy me on the workbench.

It needs to be in a box.
Wait, I have one. It's been on my shelf for a hundred years, waiting for me to have a project.

A perfect little box to hold my power supply.

A box to cover it up and make it pretty. Uh-oh, strap in for the rollercoaster of my brain.
It should have a plug in power cord, like my computer.
It should have a nice on/off switch.
It should have pretty binding posts for the output.
It should have a light indicating it's on.
No, better yet, it should have a digital display, showing that it's doing its job! Why? Because they are CHEAP! A BIG 3.5 digit LED volt measuring panel meter is $12.00! Back in the day, each digit would have cost $12.00, forget the volt meter. The panel would have cost more like $150.00.
Hey, while I'm at it, let's have a switch on it to show Volts or Amps in use.
I buy most of these extra parts online.

Were you buckled in? Did you survive the wave of my GREAT ideas for spending time on this? I figure I can put this together in a day. So, we have labor day weekend and I am stuck here minding the dog. If I take a day to throw this together, I'll still have 2 days to go out and do something. hahahahahahaha!

Well, this tale is getting there. I'm taking a work break now, more later.
-------------------------------------------------------

So ok, I have the design in my mind, now I have to start laying it out (mostly) on the aluminum front panel of the box. Now resurrecting long unused tools, I have more shopping to do. Simple issues like rust that need to be dealt with. So off to home depot for 3-in-one oil, new drill bits, etc..

Measure parts, scribe, square, scribe some more. One day gone.

2nd day, do the metal working. I don't have a shop so I have to proceed slowly to avoid having aluminum shards f*#k-up my floors. Have we talked about 'the nibbler' yet? I didn't think so. You see those NOT round holes? The cheapest way to make those for low volume use, when you don't have a machine shop is to use a device called a nibbler.



This evil device takes a very small (1/16" by 1/4") bite out of a piece of sheet aluminum. It operate by hand strength. As you can see by the size of those 1 by 2 inch sized holes, that is a lot of little bites. It's hard to use. It hurts my hand. I am a pussy not used to manual labor. With every bite I dream of having my own end mill.  (I went online to look for a pic of the nibbler and found possible powered ones for future endeavors) Notice the lopsided holes where my measurements went awry and further action was needed.  Two days gone.




Day 3. Wire it up and finish as seen in the below pic. There are of course mechanical issues getting the parts mounted. Last minute cuts drills and files...  I start wiring with the power cord/switch because I have to calibrate the actual 5 volt supply before I connect anything to it. I'd like to state up front that I cross wire the switch and instead of applying power it blows the internal fuse. I need to test it twice before I realize this idiot mistake.

Finally power is applied, now I don't like the wire stock I have on-hand to do the actual 5 volt wiring. Another trip to home-depot to buy more wire.

How about that cool 3 1/2 digit panel display?  As mentioned earlier, it was cool cheap. What does it do? It is a simple volt meter. It measures 0-199 millivolts to display 0-1999. There are no ranges. You have to externally adjust your input signal to fit the range of the panel. So, I need 2 resistors to make a voltage divider. A 10kohm followed by a 100ohm will be a 100/1 divider and keep my signal in range. (should be 5 volts divided by 100 = 50 millivolts which the panel can handle.)

At some point in this journey I decide that the panel should have a switch so I can display how much current is being used (amps)  so I can see how my test circuits is doing power wise.

An ammeter for those who are not trained, is different. We don't actually measure amps. Instead we use ohm's law.
                Image result for ohm's law equation
We only know how to measure voltage, so we get a known resistance and measure the voltage over it. By ohm's law voltage/resistance=current(I).

So, to set this up, I need to calculate backwards. My maximum output is 30 Amps. I need that to be measured as 30 millivolts (because my panel tops out at 200 and I need a value less than).
.03 volts / 30 amps = .001 ohm. Crap, do .001 ohm resistors exist? Yes, it turns out I have NOT invented the wheel. These are available to measure current (exactly what we are doing)

I buy one of these and it will arrive in a few days. I will put it in later.  Turns out these are relatively expensive. Where a 'normal' resistor might be 25 cents, the shunt is about $25.00




The ALMOST finished project. It looks fantastic from the outside, where you can't see the flaws.
The panel is too close to the edge. I had to cut away some inside stuff to get the box to close. I have ordered yet more wire. I had to use some that is too small for part of the wiring. I will rewire with some 18 AWG solid to better carry the current.



So, what's the point? There are several, but we'll see if I learn from any of them.

1. It takes much longer to actually do something, than to think it.
        a This could have severe consequences for the larger project
        b remember to review cost/benefit. Should I have looked harder for one to buy?

2. I need to have a system to keep my life balanced and out of 'the project sinkhole'

3. I am proud that I got this done. An (almost) completed electronic project. woohoo! Obviously the processor is far larger, but now I can physically start to work on test and development.

If you got this far, you may have less life than me.....

Thursday, September 1, 2016

Where do I start?

OK, seems like a general plan of attack is needed. There is clearly a lot to do.

You may have noticed that I am working on arithmetic. So, why not start there?
I plan to learn and breadboard everything from a simple add through a double floating divide.

That actually seems pretty fun, and I will start to get answers to the question, how fast will it be? We all know that the KI-10 had a 110 ns basic clock cycle. (You did right?) But less memorized was the 170-190 ns cycle needed to do an arithmetic ADD cycle. I am looking at my probable adder chip, the 74LS181 and trying to get propagation delays. IT looks like about 30 ns for most stuff but a little bit more for one logical operation?

That does not include other gates and latches which will be needed for the "ADD" cycle, but even so, it looks like I should be able to do 2 or even 3 times the speed of the original!

So, Al maybe I can get KL-10 speeds without that insane ECL logic!

Now for those of you keeping score at home, let's just look at what that means.
KL-10 mainframe    processor clock  33 MHz
Intel Core I7 in my current desktop   3.3 GHz.

So, it is the case that my current desktop computer is about 100 times faster than this old stuff!! i.e. this project is for fun, not real usability.

back to the plan....

So, in general the bullet points are
1 arithmetic
2 memory addressing (with paging, etc.
3 instruction decode (Can I do micro-code?)
3 processor status (user mode versus privileged mode)
4 I/O instructions and I/O bus.
6 PI (Programmed Interrupt) System

I need a more detailed list, and this will expand greatly as we go along. I don't know what I don't know. NO, that is NOT a Rumsfeld. The list at the link below will change as we go along.

Todo & question list for Dec-10 project

Maybe over the weekend I am actually gonna build something.

Monday, August 29, 2016

How much will it cost? - Don't know yet.

But, I have decided to keep track. At least as of now. I made a spreadsheet. I put into it ALL of the things I have purchased for this project so far.

A number of those things are test equipment and laboratory supplies, which won't actually be "IN" the project, but it seems reasonable to me to track ALL of the expenses and maybe exclude some things later.

Anyway, there will be significantly more to come, but I have purchased enough (it has not all yet crossed over from China) so that I can start testing timing and logic levels to make sure the parts are compatible. Some parts of the design can proceed without this info, but some depend on how the parts interact.

Ok, ok, ok, you are reading this post because you want to know where my insanity has taken me. ie, how much have I spent so far? Well I'll go one better. I am putting the $$ Purchase Log on-line and you can check here to see where I am at any point.

Also, of historical note, you'll get an idea of what it took in parts to build a mainframe computer around 1980.

So far, my wife has not subscribed to the blog. You may here some noise when that happens.

Saturday, August 27, 2016

How am I wrong #1.6

In the maintenance manual on page 7-13 in the Shift count subroutine section we find this: "right shifting, which is used in all multiplication and division, is done two places at at time.

So, I don't know why, but I do have a confirmation that I must learn how to multiple (and divide) in binary in a processor, before getting too far in the design of the arithmetic unit.  Chapter 8 of the manual does some explanation on doing math. Soon...

Also in the manual is a lot of text description of the special purpose gating, by which I mean that there are many "exceptions" to the rule to handle all kinds of partial use of the registers. In many cases a partial result will be loaded into part of a register while the rest of the register reloads from the data it is currently holding.

i.e. bits 18-35 of the AR reload (recirculate) themselves while bits 12-17 load from one source and bits 0-11 load from another. (this is not an actual example, just a representative for instance).


How am I wrong #1.5 RTFM?

Maybe I should just say #2, but this does relate to the last post. I have been reading the manual. Yeah, I know! RTFM? It's the last resort. Usually an admission of defeat. Well, I can't speak to AK (he died in 2006), so I need something to help me with the why's. Why did they do it that way?

I have some answers and there are more to come. When you read a manual, you can only digest so much at a time. Your mind is only ready for one piece of information, not the many that are available, So, you get a fact and internalize it, then you can go back, read it again, and now see the next fact. It was always there, but you couldn't see it the 1st time. You had to 'get' item one, before item 2 could be understood.

OK, another diversion, but necessary. Let's talk about multiplication. Really amazing how long it's been since I tried to multiply 2 numbers by myself. I wanted to  do that because I wanted to discuss multiply with you. I "knew" that multiplying 2 numbers was a process of adding and shifting. "Every" computer guy knows that. Well, old school guys do anyway. So I wanted to think about how WE multiply so I could discuss (briefly) the KI-10's process. (It's possible that a much longer discussion will come later)


So, as we see in the example above, we start by multiplying the 2 against the 756. We see that it is a process where the 2 is multiplied against each more significant digit, adding the carry over from the previous place when needed.
And then we multiply the "3" against the 756, (with the same digit by digit process) but it is SHIFTED over by one digit, one "10's" place.

Well, I didn't mean to write a math text, but we are this far in, so the full digit shift and add is:


The point is to remind you (you did know this once) that a multiply is a process that involves shifting the digits as we go through each step. And FINALLY I get to this point. I don't know how a KI processor multiplies. Well I kinda do, but not completely. I never had to know. I was a maintenance engineer.

When you do a multiply, there is a register that holds the results. (Let's call it the AR or Arithmetic Register, because that what it actually is called) Anyway, the AR holds the starting number, and then the process ADD and SHIFTS that number as required by the "2nd" number. So, the truth is I don't really have to fully understand the "multiply". The multiply is a series of "ADDS" and "SHIFTS".

When something in the KI processor BREAKS (which is all a maintenance engineer cares about), it  will be either the "ADD" or "SHIFT". So in fact, I only had to fix a broken ADD or SHIFT. If I got that correct, the "MULTIPLY" would take care of itself.

So, now, I am in a different place. I am designing a processor. At some point I will actually have to know how the MULTIPLY works. Well, that is not today, but, to get back to the original point, I need to know WHY they wired it the way they did.

Well, at this moment I still don't know WHY there is a 2 place shift right but only a one place shift left., BUT I have seen it discussed in the manual,so I have hope that the answer lies ahead.

What I have found is that there is a reason for wiring in the shifts INSTEAD of using a shift register. Because the output of the ADD can be (because it is wired) placed back into the adjacent bit (left or right), the add and shift can be done in ONE clock tick.

So, all those input mixers, with all that extra chip space, and all that extra wiring means a MULTIPLY is TWICE AS FAST. Shit. I don't want my updated unit to be slower! So, while I haven't come to any final design decisions, I do need to keep in mind that THEY did and ADD and SHIT in one clock tick, not two.

Maybe by the next post I'll know why they have a "2 bit" shift to the right.


Thursday, August 25, 2016

How am I wrong #1

There are probably going to be many of these. As I pour more over how it was done, I will find many things I forgot over the years....

I can't completely get rid of all the mixer chips, Well we'll see. Besides just connecting the registers, the mixers were used to connect different bit output positions to input positions. So, for example adder output bits 4,5,6,7 all get wired to AR input bit 5. They use this to do shifting of bits left or right. I may be able to limit this by using a SHIFT register directly. If I can find an appropriate one.

What I don't know now. Why the 2 bit shift to only the right? What was it's purpose?

While I'm here. the KI did NOT have the standard 74XX TTL adder chip. Perhaps it didn't appear until too late in the design cycle? I would have guessed incorrectly that I'd find 7483 chips in the adders, but no. The Dec "Magenta" M142 module used an adder put together by Dec using less sophisticated IC's.

We find yet another proprietary Dec chip in here. The DEC1074H which is a WIDE and or invert chip. Probably the 'merchants' didn't have call for a chip this wide (4 ands into the or), but Dec felt it needed enough of them to have someone build them. These are used in a few different FlipChips in the KI.

So I now know of at least 3 proprietary Dec chips that were used. Holy cow! And one of them was in the KA10!

How did the KI-10 do paging? (A long post - with history and motivations

Sent: Tuesday, August 23, 2016 5:49 PM
This back dated post gets me to current 

OK I am a little bit ahead of myself, but if I’d ever stayed on track in life I’d be a different guy. For example, I should be working RIGHT NOW and not writing this note. The goal is to do this project in retirement, but here I am spending time on it, which probably delays my retirement. (That’s how I roll)

So, I have been researching parts for my “KI clone” When I was at Fermi I learned a lot about ”bipolar” TTL logic and the KI was mostly made out of that stuff, so it was pretty easy to get into it when I went to KI school in Marlboro.

This project rattling around in my head is to build one similar, but a bit more advanced and smaller (because who needs that big a box in their living room). Why? Because I want to say I engineered a computer. It was not so different for Alan Kotok. (No, not comparing myself ). The point being, there was a KA-10, so when he designed the KI-10, it was kind of just an upgrade.

While doing this, I have come to some realization that it is almost 40 years later, and I feel a bit like I’ve been in a coma for a while.
What I know for sure is that a number of my life decisions were fear based. Path’s I didn’t take because they seemed ‘hard’ or might require work I was unwilling to do at the time. So, I didn’t go to Engineering school, I went to Tech school. I had good success at Dec, but I didn’t study for the next level of support at Dec because that seemed like too much work at the time. So I went to work setting up pioneering PC networks because I could bring mainframe expertise to that world.

I ended up having my successes and finding things to study and excel at, but felt that I had avoided certain paths.   Here we are, 40 years later. I have made a living solving technical problems for people for all of that time. I am getting ready to retire. It’s time to design a computer, like maybe I wanted to do so long ago, and never got to.

The industry has passed me by. This machine was obsolete 25 years ago.  There are others whom I have read about, who have already done what I am working on. Foonley designed the “Ten on a Desk” and sold some many years back. Another company Systems Concepts made even more advanced ones.  That’s not the point. The point is showing that I could. Maybe it counts less. There is less cost to failing now, life will go on. But, I’d like to say I did it.

So my plan is to re-engineer this thing. It will have the KI-instruction set (maybe with KL additions) and have somewhat of a similar data flow, but virtually none of the original components will be used. It will be mostly SSI integrated circuits, but several years newer than the original bipolar chips that were used in the KI. Where convenient, I will use some LSI memory to reduce chip count in that area. I also plan on micro coding the processor. Hopefully this will reduce some of the instruction decode logic, and it will allow me to fix some errors that I make.

The original 74xx series is what is mostly in the KI.
A word here about these IC’s. Integrated circuits. DEC (Digital Equipment Corp.) did not ( in the early days) make their own electronic parts. They purchased commercially available parts from what is known as ‘the merchant vendors’. These are the semiconductor houses which turned into the IC makers, which sold standardized parts to anyone building electronics. These were the Fairchild's, Motorola’s , Signetics' and Texas Instrument crowd, later joined by Intel and Advanced Micro Devices.
The point being that DEC didn’t make IC’s they bought easily available standard stuff. (cheaper)

A few years later the industry came up with 74LSxx. This was “low-power Schottky”. Faster, with about the same power consumption.
Then they came up with CMos, which was much lower power consumption, but slower.
Finally there were 74HCTxx chips. “High speed” CMos (low power) TTL compatible, so you could mix it in with other TTL chips.
So the machine will be mostly 74HCTxx chips and require far less power than the original.
And let me add that while one company may have done the R&D on a design, they usually gave or licensed it to the others, because companies wanted to know there was more than one supplier for every part.

About reducing chip count. Well before that lets discuss Dec modules. The modules were originally like the chips which followed them. The point being that you got a unit that did some small function, and then wired a bunch of them together. The modules in the KI were small, so you needed a lot of them to get higher functionality. So, there was a significant amount of space wasted, as compared to putting more chips on a larger board. This is in fact exactly what Dec did with all of its later machines. It increased the size of the boards by 10 times or more, to reduce wasted space, reduce board count and get to smaller systems.

Seems like I was gonna talk about chip count. There are several factors that will dramatically reduce chip count.
The KI was built with fairly early TTL chips, so for example the registers are mostly made out of 7474 chips. This venerable chip is 2 flip-flop’s. That is, it is “2 bits’ of whatever register we are taking about. So in a KI (36 bit word), you need 18 of these for EACH register. AR reg, BR reg,, PC reg, ARx reg, and so on.

I will be using mostly 74HCT574 chips. These are 8 bit chips. So the chip count for each KI register will go down from 18 / register to 5 / register.
Also, these chips have “tri-state” output. This means you can turn on only the output of the register you want to affect the next step. This allows the elimination of most of the “input mixer” chips. Voila!

One final tangent. Following this discreet logic came FPGA’s. These ‘Field Programmable Gate Arrays’ got more logic on a chip, so density went up and could lead to smaller designs. And then of course, we get to LSI. There is no reason why the whole PDP-10 could not be on a chip, and I believe one or 2 companies already did that. So again, I’m not creating a state of the art computer. It will, however, allow me to do all of the design work necessary for that process, and I believe it will be affordable for me to produce, which would not be the case were I to actually have someone fabricate a chip for me.

About the AC’s (or sometimes referred to as fast memory). The KI used the available at the time 7489 chip. It is a 16 word by 4 bit memory chip. So 36 of these chips were necessary to make 4 sets of 16 (36 bit) accumulators. Turns out they never made a bigger bipolar memory chip. (I think too much power, heat, etc) So, I have found some really high speed CMos static ram which could be used I haven’t decide which for sure yet, but it will probably be a 2k by 8 bit chip. So my chip count goes from 36 down to 5. Yes, you read that correctly. I need 64 words and will have 2048 words, so virtually the whole chip will be wasted. But it will take less real estate!

I am doing something similar with memory, having found a good 512k x 8 bit static CMos chip, I should be able to get a full 4M word PDP10 memory on a single board.

There are significant engineering and timing tests that will need to be done along the way, but I am making headway in defining the technology I will be using. I have actually started purchasing sample quantities of the chips, and they should start coming in soon. A lot of this is coming from somewhere in China, because somehow there are still stocks of some of this old stuff there. I have purchased some stuff on Alibaba. (Maybe if I did not get scammed [ more later] )

==============================================
Oh yeah, I started this with a question about KI-10 paging. The reason for that is that there are basically 2 things which  have been difficult (or impossible) to find regarding this KI-clone.

One is a Quicklatch connector. This (as you may recall) was the connector for the cables to the memory bus AND the I/O bus. I have not yet found one. IT was a fairly large clunky connector. Was not Mil-spec. Clearly hasn’t been used by anyone in years. So, how my processor would connect to any “KI peripherals” remains to be seen. It isn’t clear that I have to connect it to “real” peripherals. I could do emulation on various levels to replace them, but that is a decision for far down the line. Maybe I’ll come across an old MA10 memory  somewhere and get the connectors.

The second item which is unavailable has to do with the paging system. If you remember your KI-10 class, it had “associative memory” or sometimes called content addressable memory. This is memory you can load with a data word and then “read” the memory to see if that data word exists. Significant time was spent explaining this. The point was you could load a page address in there when that page was available in memory. So this memory  would tell you if a page did NOT exist meaning you had to drag it in from the disk. (paging)

Dec was pretty proud of this technology. Associative memory. Turns out, maybe they were the only ones. They had a special chip custom made for them! The DEC2104 chip. I believe it was made for them by Intel. There were 3 DEC2014’s on a DEC M260 “magenta” flipchip board. There were 8 Dec M260’s in the KI for a total of 24 DEC2104 associative memory chips.

These, in combination with the (8) M250 scratch pad modules, made up the bulk of the paging system. The M250 is somewhat noteworthy in that it ALSO had a custom chip. The DEC9035. This was an oddly designed 16 x 4 bit memory chip. This is noteworthy as it appears in the KA10 as the fast memory! Yes the KA10 had these TTL IC’s! Anyway, these are replaceable by some other memory chip.

The DEC2104 however is pretty lonely. So far in my research, none of the "Merchant suppliers" came up with any similar CAM in that technology, so DEC was apparently somewhat isolated in how they were managing paging. I could make an equivalence using some random logic, but that seems like it would take my chip count in the wrong direction(more). I have found one chip that was made (later) by Advanced Micro Devices for a while. The AM99C10. It was meant to manage (I think) Ethernet address’s and bridges. I think I can get some from China. I need to see if I can make it do the job.

Starting to get equipment

Sent: Tuesday, August 9, 2016 5:50 PM

So, patience never being my strong suit, and because really, I should be working, I have done more work on my ‘retirement project’ with no actual retirement in sight.

So I decided to buy some chips from China, because I couldn’t find them here. I can get most 74XX series stuff, but one part was proving difficult.
A 74LS182. It is the fast look ahead carry generator which helps speed up an ADD in the adder chip (74LS181) I am planning for the heart of my arithmetic unit. I think most of the rest of my machine will be 74HCTxx chips for lower power drain, but it didn’t seem like they ever made these adders in that lower power technology.

Anyway I signed up on Alibaba (the Chinese Amazon) and bought these things in Shenzhen, China. So then I said, shit I better get some test equipment so I can find out if they are selling me rocks or actual working chips.

Completely amazing how cheap this stuff is, now that it’s prehistoric. I used to have about $50k worth of test equipment on my bench at Fermi Lab. I think I can get just about everything for about $500. I saw on eBay an HP freq. counter that I had to write a ‘sole source justification’ for. It was $5k when I bought it back then. I saw one on eBay for $150.00. And newer better ones for less than that.

PS
There is more to a KI than one might have remembered.

 PPS
I have this nice JPEG of the front panel which nicely fits on my touchscreen monitor. This may turn into a touch screen version of the front panel, instead of building one.


Just one of many that were more advanced

 Sent: Monday, July 11, 2016 10:03 PM

Not claiming anything new
This image is a TOAD-2 sitting on a cart.
It is a 1 rack unit (1.75 inch high)  single chip implementation of a pdp10 which can run tops20
(This one is at the LCM in Seattle).


I’m just thinking about doing it to see if I can…

  Gary

From: Al
Sent: Monday, July 11, 2016 9:43 PM 

SRI (Stanford Research Institute) built a KL desktop a decade ago or so.
  

My Dec-10 delusions

Sent: Thursday, July 7, 2016 4:43 PM

So, still thinking about some kind of building a slightly updated KI-10 (in kind of a large desktop box. As a project when I retire.

Hard to believe I threw out all that documentation. I had a couple of manuals, but I have recently started buying a few manuals on eBay. Starting to get expensive….

A fraction of what I used to have… And how ‘bout that fiche set I tossed.


The customer print-set for the KI-10 is available online as a PDF. It costs $4.00 a page to print it on D size paper.

One is an urge to again work on a KI-10

I am back-filling here from emails, to get current.

Sent: Monday, March 9, 2015 7:58 PM
Subject:   One is an urge to again work on a KI-10

OK, My obsession is changing.
I now am thinking about building one. Not a copy, but a functional equivalent. Since I am not Paul Allen, I don’t think I could buy one.
Even at the time, I knew working on it that it was bigger than it needed to be. The design process took time(years) , and Dec was always conservative in using new technology, so they did not use the most complex TTL chips.

I think I could do a ‘desk sized’ unit for a few (ok a high few)  thousand dollars.

I am in vacation in Mexico right now, but it’s raining and there is nothing else to do in my casita…
Could take me a couple of years. Maybe more if the brain deteriorates…

Gary


Sent: Thursday, January 22, 2015 11:09 AM
Subject: There are several things that keep coming back to me. 
One is an urge to again work on a KI-10

I’ve said before and I’ll say again. I think the KI was the coolest ever.
It looked cool. You could clock tick by clock tick run stuff through registers, etc.

So there is a place that has purchased and rebuilt one. (OK I dream of that…)

In their words:

OPEN TO VIEW
Visitors are encouraged to come see and experience this 35-year-old machine that has been restored back to its original glory. The KI is a fantastic piece of engineering that was never replicated. It was a joy to use with its advanced virtual memory operating system, and for those who maintained them, they were a sight to behold with perhaps the most amazing control panel ever built for a computer system.
If you follow the article, you will be amused by the picture of the gentlemen working on the system.
Bummer is, it’s in Seattle, which I have never had a desire to visit.


Living Computer Museum
2245 First Avenue South
Seattle, WA 98134

A word of warning. Some (much) of this is going to be technical to some degree. And, I am speaking of 'old' tech. My previous emails have been to a group of former co-workers who also worked on Dec-10's. While history, and the trials of making this happen will be here, it will be aimed at people who knew Dec-10's or were involved in computing back when a mainframe was made of thousands of small scale Integrated Ciruits(IC's) and filled big rooms. Today the processor inside my phone is 200 times faster, 500 times smaller and 1000 times cheaper.

Wednesday, August 24, 2016

My PDP10? It sounds presumptuous, even to me.

My PDP10? It sounds presumptuous, even to my ears. I stand on the shoulders of giants. I will probably include a good bit of history here as I know it. Not because I am an historian, or even have done more work than internet searches, but because I an aware of those who came before, am grateful, and wish to express it.

This blog will be about my attempt to build a PDP10 compatible processor and perhaps some peripherals so it can run the native proprietary operating system TOPS-10.

This is the "KI-10" "DecSystem-10" "PDP-10" system at the Living Computer Museum in Seattle. This museum is a Paul Allen project and I believe he and Bill Gates programmed on Dec-10's back in the day. I was a Dec-10 maintenance engineer at that time.

Retirement is nearing. From time to time I have thought of finding and restoring one of these old machines, just to see if I could. Starting to see this one is running at the LCM has fueled this desire. I haven't been out there yet, but look forward to at least a visit. I'd love to ask if they need any help with any part of the project. Maybe I'll find the time and voice for that....

But, as mentioned above, my current main thought is that I probably don't have the resources to find and restore one of these systems, but maybe I could engineer a work-alike.

I have been thinking about this for most of a year, I have blue skied, done internet research, and even proceeded with some purchases. I have emailed some friends on this and will use some of those emails to get this party started.

Hopefully MUCH more to follow, although progress will be very sporadic. I am not sure how many people were in the Dec LCG engineeering group and working on the mainframes, but I am pretty sure it was more than one old guy sitting in a hallway upstairs in his house. I do have some advantages. It's many years later. Better schematic drawing tools exist. Laboratory test gear to do the job can be purchased on eBay (and some new) for 10% of their former cost. The cost of semi-comparable logic IC's is also fractions of what it once was.

I'd be kidding myself if I didn't think this will take a fair bit of time. Stay tuned to see if I retain the ability to reason long enough to finish....