5 ms·
Reverse-engineering a mysterious Univac computer board
- marcodiego 5y ago"many customers found plugboard programming easier than programming with code, both because they were more familiar with it and because it is visual and direct." If your program has only 31 steps, I'd also would prefer to program it using a plugboard panel.
- rep_lodsb 5y agoSeems like it quickly turns into spaghetti code: > https://static.righto.com/images/univac-board/plugboard.jpg https://static.righto.com/images/univac-board/plugboard.jpg > A plugboard for the Univac 1004. This board was used for payroll consolidation from 1965 to 1972.
- aftbit 5y agoToday I learned about excess-3 encoding, from footnote 10 in the linked article. Its interesting to see how clearly the early computers were intended to work with decimal while retaining the simplicity brought by using the two signal levels of binary. Footnote reproduced here: The computer uses excess-three encoding for digits, adding 3 to the value before converting to binary. For example, 6 is represented as binary 1001. The advantage of this encoding is that flipping the bits yields the 9's-complement decimal value, simplifying subtraction. For example, flipping the bits of 6 yields binary 0110, which is 3 in excess-3 notation. Excess-3 representation also handles carries correctly; if you add two numbers that sum to 10, the excess-3 values will sum to 16, causing a binary carry. To convert the sum to excess-3, The value 3 must be added (if a carry) or subtracted (if no carry). To see how addition works with excess-3, 2 + 4 in excess-3 is binary 0101 + 0111 = 1100. Subtracting 3 yields 1001, which is 6 in excess-3. But 2 + 9 is binary 0101 + 1100 = 10001, generating a carry out of the 4 bit value. Adding 3 yields 0100, which is 1 in excess-3. Considering the carry-out, this is the desired result of 11.
- kragen 5y agoSome early computers, as early as the 01940s, used binary; others used decimal, typically BCD but sometimes excess-3 BCD or one-hot encoding. Knuth's MIX was originally specified to be either binary or decimal, as you prefer, but by the later volumes of TAOCP he switched to requiring binary for things like tries. Typically an early (pre-01960) computer was either "scientific" or "business". A "scientific" computer was binary, had word-oriented memory of at least 16 bits width and sometimes as much as 60 or more, was measured by its calculation speed, and had floating point. (Some didn't even have separate integer arithmetic.) A "business" computer was decimal, had character-oriented memory of 6-9 bits, was measured by its I/O speed, and had only integer arithmetic, or not even that (as in the case of the IBM 1620). These categories were blurring a lot by the 01960s, and the IBM 360 largely put an end to the division: it had 8-bit-wide memory, 32-bit-wide CPU registers, floating point and binary integer and binary decimal arithmetic, and different binary-compatible models with varying degrees of speed at I/O and calculation. A few years later there were even models that supported paging and timesharing.
- kens 5y agoYes, the IBM System/360 was designed to support the full 360° circle of applications (scientific and business), which was a rather revolutionary idea at the time.
- kragen 5y agoExactly! But in terms of design, there were earlier machines that spanned the gap like the astounding Burroughs B5000, which was marketed almost entirely to businesses (because that was the Burroughs customer base), but with a 48-bit word length and floating-point-only arithmetic, and including both "numerical" and "character" instruction set operating modes. The first delivery was, I think, to NASA. Also, as Robert points out in https://news.ycombinator.com/item?id=30900280 https://news.ycombinator.com/item?id=30900280, the earlier IBM 1620 was similarly ambiguously positioned.
- Taniwha 5y ago
- kens 5y agoAuthor here if anyone has questions about the board or the Univac 1004.
- prashnts 5y agoLong time reader of your blog, thanks for doing what you do! So I've been into "connector technologies" (if that's a thing) for a while -- more specifically I really admire the simplicity of edge connectors that nowadays are basically free (except the higher amount of metal than traces, (gold?) plating etc.). Anything you'd like to add about these sort of connectors from this era? Were they reliable in mating-cycle sense? Could you just casually insert them or was there a specific process? Was there a standard? As you can see I don't have a precise question, I'm looking more towards the considerations that an engineer at that time would have to take into account. Unfortunately it's not very easy to google this these days.
- kens 5y agoThe IBM 1401 team analyzed the gold on the SMS card edge connectors and found they have 100 microinches of gold, which is a lot by modern standards: http://ibm-1401.info/SMS_Tabs_IBM_Report_Dec2007.pdf http://ibm-1401.info/SMS_Tabs_IBM_Report_Dec2007.pdf The connectors were generally reliable; I don't think we've had any problems with them. You could clean them with isopropyl alcohol if necessary. There was one IBM manual that described a process for removing SMS cards where you'd put a punch card on either side of the board to protect the board against catching on neighboring boards, and then use a special puller to remove the board. But we just pull the boards out by hand without problems.
- chiph 5y agoNot about the board, Ken. But I am curious about how you have the time to work on projects with the Computer History Museum and with Marc on his projects. Seems like you're a very busy man. :)
- kens 5y agoThe secret to having enough time is to retire :-)
- Animats 5y agoOh, the UNIVAC 1004. Those were often used as peripherals for UNIVAC mainframes. My UNIVAC 1004 story.[1] [1] https://hardware.slashdot.org/comments.pl?sid=957001&cid=24920979 https://hardware.slashdot.org/comments.pl?sid=957001&cid=249...
- tyingq 5y agoThe real-life "spaghetti code" visual is pretty neat: https://upload.wikimedia.org/wikipedia/commons/b/b7/IBM402plugboard.Shrigley.wireside.jpg https://upload.wikimedia.org/wikipedia/commons/b/b7/IBM402pl...
- quercusa 5y agoThat plugboard brings back long-suppressed nightmares of bad wire-wrapping jobs.
- GrumpyNl 5y agoI still have one, given to me by IBM. Nice decoration piece.
- GnarfGnarf 5y agoI worked for Univac and had occasion to work with the 1001 card reader. The 1004 was also popular as a RJE (Remote Job Entry) unit and printer attached to the more powerful 1100 series computers. The unit behind the female operator is a row card punch (200 cards/min.)
- zw123456 5y agoAlways thanks to Ken for all the fun "memory" lane stuff. That board reminded me of an old PDP1 board from way back when I was doing undergrad in the 1970's and we had a "junker" PDP1 that no longer ran (replaced with new PDP8) but people would salvage things off it. It had that same old timer Resistor, Diode, Transistor type logic circuits on it. Would love to see some of the old PDP's stuff reversed engineered if they have any of it around there. Ken if you take requests :)