News for hackers. Stuff that matters.
Re:The HP Nanoprocessor: a high-speed processor that can't e... by bluu00 on Friday September 04, 2020 @01:59PM (#24377336)
> lacking basic arithmetic functionality

> the Nanoprocessor provided high performance in its microcontroller role

So what was its purpose in HP products?

Re:The HP Nanoprocessor: a high-speed processor that can't e... by pmiller2 on Friday September 04, 2020 @02:49PM (#24377766)
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.

Re:The HP Nanoprocessor: a high-speed processor that can't e... by mkup on Friday September 04, 2020 @03:07PM (#24377914)
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.
Re:The HP Nanoprocessor: a high-speed processor that can't e... by perl4ever on Sunday September 06, 2020 @09:31AM (#24391161)
A question I was interested in a while ago was, how would you implement the usual bitwise operations if you can only do 2s-complement arithmetic.

I wasn't sure if it's something anyone reasonably bright should be able to derive, or how to search for it.

Re:The HP Nanoprocessor: a high-speed processor that can't e... by Invictus0 on Friday September 04, 2020 @02:54PM (#24377816)
I did this in my head and came up with -1*(-x - y); seems a little cheeky but acceptable.
Re:The HP Nanoprocessor: a high-speed processor that can't e... by recursive on Friday September 04, 2020 @03:32PM (#24378161)
If you're allowed negation, (like `-x`) then `x - (-y)` seems even better.
Re:The HP Nanoprocessor: a high-speed processor that can't e... by egsmi on Friday September 04, 2020 @03:44PM (#24378260)
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
Re:The HP Nanoprocessor: a high-speed processor that can't e... by kens on Friday September 04, 2020 @05:07PM (#24378898)
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.

https://www.hp9845.net/9845/downloads/manuals/Nanoprocessor....

Re:The HP Nanoprocessor: a high-speed processor that can't e... by egsmi on Friday September 04, 2020 @07:54PM (#24380130)
One can also use the techniques demonstrated your reversing the ALU article. :)

https://www.righto.com/2020/08/reverse-engineering-8086s.htm...

Re:The HP Nanoprocessor: a high-speed processor that can't e... by recursive on Friday September 04, 2020 @07:38PM (#24380029)
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.
Re:The HP Nanoprocessor: a high-speed processor that can't e... by echlebek on Friday September 04, 2020 @04:55PM (#24378792)
Here's some background on how things like that work:

https://en.wikipedia.org/wiki/Adder_(electronics)

Re:The HP Nanoprocessor: a high-speed processor that can't e... by 082349872349872 on Saturday September 05, 2020 @01:05AM (#24381521)
Re:The HP Nanoprocessor: a high-speed processor that can't e... by VLM on Friday September 04, 2020 @05:10PM (#24378918)
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.

Re:The HP Nanoprocessor: a high-speed processor that can't e... by leonardoeloy on Friday September 04, 2020 @02:09PM (#24377423)
> 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.
Re:The HP Nanoprocessor: a high-speed processor that can't e... by kens on Friday September 04, 2020 @02:08PM (#24377420)
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.
Re:The HP Nanoprocessor: a high-speed processor that can't e... by egsmi on Friday September 04, 2020 @03:51PM (#24378325)
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?

Re:The HP Nanoprocessor: a high-speed processor that can't e... by jacobr1 on Friday September 04, 2020 @04:01PM (#24378390)
That is a disadvantage.

> First, silicon-gate transistors were smaller, faster, and more reliable.

> Second, silicon-gate chips had a layer of polysilicon wiring in addition to the metal wiring; this made chip layouts about twice as dense.8

> Third, metal-gate circuitry required an additional +12 V power supply.

This implies silicon-gate chips DO NOT require the additional power supply.

Re:The HP Nanoprocessor: a high-speed processor that can't e... by kens on Friday September 04, 2020 @05:20PM (#24379010)
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.

Re:The HP Nanoprocessor: a high-speed processor that can't e... by egsmi on Friday September 04, 2020 @06:12PM (#24379414)
Oh, I see. I completely misread that paragraph.

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.

Re:The HP Nanoprocessor: a high-speed processor that can't e... by bluu00 on Friday September 04, 2020 @02:10PM (#24377439)
curious.

any relevancy in modern technology?

Re:The HP Nanoprocessor: a high-speed processor that can't e... by jdmichal on Friday September 04, 2020 @04:49PM (#24378742)
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.

Re:The HP Nanoprocessor: a high-speed processor that can't e... by bleepblorp on Friday September 04, 2020 @07:08PM (#24379826)
$360 USD in 1974 dollars is $1,892 in 2020 dollars, which will buy you a 32-core Threadripper 3970X today.
Re:The HP Nanoprocessor: a high-speed processor that can't e... by jdmichal on Friday September 04, 2020 @09:39PM (#24380722)
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.