I should point out that the article you linked to is a different article by CPU Shack. The reason why two articles on the Nanoprocessor came out in a short time is that the chip's developer recently gave the masks and documents to CPU Shack, who wrote about it. Then I got the mask scans, so I wrote about the details of the chip.
Technically, it should say it lacks built-in arithmetic instructions. Any processor can add, subtract, multiply, or fixed width integers via some combination of bitwise operations. For example, https://en.wikipedia.org/wiki/Bitwise_operation#Applications shows how to do unsigned addition and multiplication.
And, of course, for better or worse, "add two numbers without using the + operator" is one of those silly LeetCode trivia questions software engineers occasionally get quizzed on.
Yes, addition and all other arithmetic and logical operations can be implemented using only one building block: Peirce's arrow (Logical NOR). I can't understand why you are getting downvoted.
Subtract is a "built-in arithmetic instructions" so it wouldn't be allowed in this environment. The idea is to implement arithmetic, but from bitwise operations.
https://en.wikipedia.org/wiki/Bitwise_operation
This is getting far afield from the actual Nanoprocessor, which has increment and decrement instructions. With those, you can add two numbers by repeatedly incrementing one and decrementing the other. (Which is a bit like addition using the Peano axioms.)
See page 126 of the Nanoprocessor User's Manual for code to add two numbers in this way.
Interesting problem. In this case though, I was just offering a pointless optimization to the parent post, which also used subtraction, so I assumed it was allowed.
I've never used a HP 9885 floppy disk drive but the chip sounds pretty awesome for PLC programmable logic controller drudgery tasks like emulating many relays for combinatorial logic.
So there's probably a simulated virtual relay that won't let the disk drive heads drop on the media unless the motor is up to speed, or a relay that locks the door if the motor is up to speed or makes kinda a phase locked loop that speeds up and slows down the drive motor until the speed is dead on accurate at 300 rpm. Upon power up or reset drive the head toward track zero until the track zero sensor is hit. A relay that hardware disables the write head if the write protect switch is set. Disable additional stepping of the track stepper motors to prevent damage if the head bonks into the track zero microswitch sensor. All kinds of fun stuff that doesn't involve addition but just piles of combinatorial logic rules repeatedly run thru a couple hundred times a second.
> Despite this limitation, the Nanoprocessor powered numerous Hewlett-Packard devices ranging from interface boards and voltmeters to spectrum analyzers and data capture terminals.4 The Nanoprocessor's key feature was its low cost and high speed: Compared against the contemporary Motorola 6800,7 the Nanoprocessor cost $15 instead of $360 and was an order of magnitude faster for control tasks.
It acted as a control processor with a lot of different roles. For instance, it could handle the interface signals between an external computer and a piece of HP test equipment. Or it could process button presses and control the display. Or it could parse ASCII command strings. With an external 74181 ALU chip, it could even compute error percentages in a voltmeter.
Quick question on the post, in the paragraph on metal gate transistors there are a couple of advantages listed. The last one says, "Third, metal-gate circuitry required an additional +12 V power supply."
It's not clear to me why a +12V supply would be an advantage? Did 1974 have their equivalent of ATX supplies so that meant one less rail the PCB needed to generate compared to silicon-transistor designs?
And there is some interesting cut in the ceramic that is exposing the lead frame on the left side of the package in the picture that is showing where the -2.5V bias note was written. Do you know what that is?
As jacobr1 pointed out, it's a disadvantage of metal-gate transistors, not an advantage. Silicon-gate transistors are entirely better than metal-gate transistors. (Except now metal-gate transistors are coming back for high performance, using "high-k" metals like hafnium. But these are completely different from 1970s-era metal-gate transistors.)
For your other question, the visible metal trace on top of the IC package is a common thing with ceramic packages. I think the purpose was to ground the metal lid of the IC to protect against noise, static, etc.
If the metal strip is on the top of the ceramic and grounded it makes sense that it would be for ESD protection. Especially as they likely did hand assembly of the PCBs.
Interestingly, the $360 quoted in the article is not that far off from a modern desktop Intel chip. For $25 today you can get an entire computer in the form of a Raspberry Pi 3 A+.
It was a cheap to manufacture chip with extremely limited capabilities. We certainly still have those, but the art has advanced to where the "extremely limited" part is not as limiting as it once was.
That doesn't really mean anything, other than the fact that the technology has gotten insanely cheaper. It's much more relevant to the question to compare the relative costs to modern chips. I just thought it was interesting that we could actually do this using things relatively close to the original price points in the article.