[HN Gopher] First new VAX in 30 years?
       ___________________________________________________________________
        
       First new VAX in 30 years?
        
       Author : JoachimS
       Score  : 182 points
       Date   : 2021-07-07 09:03 UTC (13 hours ago)
        
 (HTM) web link (mail-index.netbsd.org)
 (TXT) w3m dump (mail-index.netbsd.org)
        
       | ChrisArchitect wrote:
       | related / other thread from this netbsd list a few days ago
       | 
       |  _New Vax Implementation_
       | https://news.ycombinator.com/item?id=27742540
        
       | tpoacher wrote:
       | Did anyone else misread the title as "First new _wax_ in 30 years
       | " and imagine a _completely_ different article? xD
        
         | hereforphone wrote:
         | Only the young
        
       | lc9er wrote:
       | Interesting. I had an assembly course taught on a VAX system in
       | 2001. At the time, I had the impression it was because the
       | instructor had access to it and felt it was of historical
       | significance. I wish I could remember more about the experience.
        
         | bwanab wrote:
         | I'd say it was because the VAX (and the PDP-11 family that
         | preceded it) has one of the cleanest instruction sets of any
         | processor family that was ever extensively used. It was almost
         | as easy as C to program in its assembly language.
        
           | GeorgeTirebiter wrote:
           | Yes, and... each of the earlier processors had certain
           | 'corner cases' in the way they handled setting (or not) flag
           | bits; DEC s/w had to check these corner cases and execute a
           | proper set of instructions for that specific machine. But
           | yes, conceptually, the orthogonal addressing modes, and
           | 'obvious' instruction names influenced probably 2 generations
           | of students (for the better). The major lesson learned tho, I
           | think, was: never be stingy with address bits! (16 is way too
           | few; and even later 22-bit addresses weren't enough.)
        
       | Torwald wrote:
       | Anybody remember these?
       | 
       | https://www.ebay.com/itm/174146521380?_trkparms=aid%3D111000...
        
       | slumdev wrote:
       | Wild. Apparently there are many different efforts to use FPGAs to
       | simulate old hardware:
       | 
       | "Using FPGAs to Simulate old Game Consoles":
       | https://jakob.engbloms.se/archives/3026
       | 
       | "AMSTRAD ON AN FPGA": https://hackaday.com/2017/01/06/amstrad-on-
       | an-fpga/
       | 
       | "MISTER FPGA: THE FUTURE OF RETRO GAME EMULATION AND
       | PRESERVATION?": https://www.racketboy.com/retro/mister-fpga-the-
       | future-of-re...
        
         | tyingq wrote:
         | I find it interesting when someone makes foundational
         | improvements when using an FPGA to mimic an old CPU.
         | 
         | The NextZ80 is a good example. It's designed to run 4x the
         | amount of instructions at the same clock rate as a real Z80.
         | And you can clock it to 40MHz, so it's effectively a 160Mhz
         | Z80...compare to a typical 4/8Mhz real Z80.
         | 
         | https://opencores.org/projects/nextz80
        
       | mabbo wrote:
       | This seems interesting, but I lack context. Can someone ELI5? Or
       | maybe more like 'Explain Like I'm a CS Undergrad' (ELICSUG?).
        
         | lproven wrote:
         | Um. Now I feel like I'm 106 instead of "just" 53.
         | 
         | OK, so, basically _all_ modern mass-market OSes of any
         | significance derive in some way from 2 historical minicomputer
         | families... from the same company.
         | 
         | Minicomputers are what came after mainframes, before
         | microcomputers. A microcomputer is a computer whose processor
         | is a microchip: a single integrated circuit containing the
         | whole processor. Before the first one was invented in 1974
         | (IIRC), processors were made from discrete logic: lots of
         | little silicon chips.
         | 
         | The main distinguishing feature of minicomputers from micros is
         | that the early micros were single-user: one computer, one
         | terminal, one user. No multitasking or anything.
         | 
         | Minicomputers appeared in the 1960s and peaked in the 1970s,
         | and cost just tens to hundreds of thousands of dollars, while
         | mainframes cost millions and were usually leased. So
         | minicomputers could be afforded by a company department, not an
         | entire corporation... meaning that they were shared, by dozens
         | of people. So, unlike the early micros, minis had multiuser
         | support, multitasking, basic security and so on.
         | 
         | The most significant minicomputer vendor was a company called
         | DEC: Digital Equipment Corporation. DEC made multiple
         | incompatible lines of minis, many called PDP-something -- some
         | with 9-bit logic, some with 12-bit, 18-bit, or 36-bit logic.
         | 
         | One of its early big hits was the 12-bit PDP-8. It ran multiple
         | incompatible OSes, but one was called OS-8. This OS is long
         | gone but it was the origin of a command-line interface with
         | commands such as DIR, TYPE, DEL, REN and so on. It also had a
         | filesystem with 6-letter names (all in caps) with semi-
         | standardised 3-letter extension, such as README.TXT.
         | 
         | This OS and its shell later inspired Digital Research's CP/M
         | OS, the first industry-standard OS for 8-bit micros. CP/M was
         | going to be the OS for the IBM PC but IBM got a cheaper deal
         | from Microsoft for what was essentially a clean-room re-
         | implementation of CP/M, called MS-DOS.
         | 
         | So DEC's PDP-8 and OS-8 _directly inspired_ the entire PC-
         | compatible industry, the whole x86 computer industry.
         | 
         | Another DEC mini was the 18-bit PDP-7. Like almost all DEC
         | minis, this too ran multiple OSes, both from DEC and others.
         | 
         | A 3rd-party OS hacked together as a skunkworks project on a
         | disused spare PDP-7 at AT&T's research labs was UNIX.
         | 
         | More or less at the same time as the computer industry
         | gradually standardised on the 8-bit byte, DEC also made 16-bit
         | and 32-bit machines.
         | 
         | Among the 16-bit machines, the most commercially successful was
         | the PDP-11. This is the machine that UNIX's creators first
         | ported it to, and in the process, they rewrote it in a new
         | language called C.
         | 
         | The PDP-11 was a huge success so DEC was under commercial
         | pressure to make an improved successor model. It did this by
         | extending the 16-bit PDP-11 instruction set to 32 bits. For
         | this machine, the engineer behind the most successful PDP-11
         | OS, called RSX-11, led a small team that developed a new, pre-
         | emptive multitasking, multiuser OS with virtual memory, called
         | VMS.
         | 
         | VMX is still around: it was ported to DEC's Alpha, the first
         | 64-bit RISC chip, and later to the Intel Itanium. Now it has
         | been spun out from HP and is being ported to x86-64.
         | 
         | But the VMS project leader, Dave Cutler, and his team, were
         | headhunted from DEC by Microsoft.
         | 
         | At this time, IBM and Microsoft had very acrimoniously fallen
         | out over the failed OS/2 project. IBM kept the x86-32 version
         | OS/2 for the 386, which it completed and sold as OS/2 2 (and
         | later 2.1, 3, 4 and 4.5. It is still on sale today under the
         | name Blue Lion from Arca Noae.)
         | 
         | At Microsoft, Cutler and his team got given the very incomplete
         | OS/2 version 3, a planned CPU-independent portable version.
         | Cutler _et al_ finished this, porting it to the new Intel RISC
         | chip, the i860. This was codenamed the "N-Ten". The resultant
         | OS was initially called OS/2 NT, later renamed - due to the
         | success of Windows 3 - as Windows NT. Its design owes as much
         | to DEC VMS as it does to OS/2.
         | 
         | Today, Windows NT is the basis of Windows 10 and 11.
         | 
         | So the PDP-7, PDP-8 and PDP-11 directly influenced the
         | development of CP/M, MS-DOS, OS/2, & Windows 1 through to
         | Windows ME.
         | 
         | A different line of PDPs directly led to UNIX and C.
         | 
         | Meanwhile, the PDP-11's 32-bit successor directly influenced
         | the design of Windows NT.
         | 
         | When micros grew up and got to be 32-bit computers themselves,
         | and vendors needed multitasking OSes with multiuser security,
         | they turned back to 1970s mini OSes.
         | 
         | This project is a FOSS re-implementation of the VAX CPU on an
         | FPGA. It is at least the 3rd such project but the earlier ones
         | were not FOSS and have been lost.
        
         | ableal wrote:
         | In 1981 the VAX 11-780 was an object of lust for engineering
         | undergrads, who'd be lured by faculty with promises of access
         | to the "1 MIPS, 1 MB RAM beast" ...
         | 
         | The author says he re-implemented the CPU (using Verilog) on an
         | FPGA running at 50 MHz, well enough to run a test binary
         | successfully.
        
           | mabbo wrote:
           | Thanks!
        
         | rjsw wrote:
         | Try this [1]
         | 
         | [1] https://en.wikipedia.org/wiki/VAX
        
       | tyingq wrote:
       | There were apparently 2 prior working VAX FPGA implementations,
       | but both were lost to time[1]. I tried the Wayback machine for
       | both, but it doesn't seem to have the right time period cached.
       | 
       | [1] http://www.avanthar.com/healyzh/decemulation/pdp_fpga.html
       | (scroll to bottom)
        
         | lproven wrote:
         | RT Logic:
         | https://web.archive.org/web/20061019161717/http://www.rtlogi...
         | 
         | Not much info -- no more than is here:
         | https://comp.os.vms.narkive.com/UKFNZj9v/fpga-vax
         | 
         | Noboyuki Kondoh's PhD thesis on the university effort is here,
         | but only the abstract is in English:
         | http://labo.nshimizu.com/thesis/b2004/1adt2415.pdf
        
         | phendrenad2 wrote:
         | Oh that's sad. I remember when one of those was announced, I
         | was going to grab the code, but now it's gone? Is internet
         | decay accelerating?
        
       | zinekeller wrote:
       | Oh, wow, it's indeed nice (even though it's more like TransMeta's
       | x86 implementation than a silicon-level design!) Reminds me of
       | the efforts to implement the Japanese SuperH(2) RISC instruction
       | set.
       | 
       | (To you: you might want to clarify in the title that this is the
       | VAX architecture they're talking about (since "vax" unfortunately
       | might be confused here with the now-used shorthand for vaccine).)
        
         | opless wrote:
         | or more likely the brand of vacuum cleaners :)
        
           | DonaldFisk wrote:
           | Fun fact: the vacuum cleaner company (https://www.vax.co.uk)
           | had "Nothing sucks like a VAX!" as its advertising slogan:
           | http://foldoc.org/vax
        
             | dhosek wrote:
             | I have a vague recollection that "nothing sucks like a vax"
             | was a parody and never the vacuum cleaner's slogan. A
             | cursory google search doesn't pull up anything
             | authoritative and it seems like most of the claims that the
             | vacuum cleaner people used it are all worded nearly
             | identically. The photocopied afi saw back in the 80s was
             | too on the nose to be really believable, feeling an awful
             | lot like the mouse balls memo.
        
               | DonaldFisk wrote:
               | In that case it may be an urban myth, with its origin in
               | the (apparently real) Electrolux advert shown here: https
               | ://web.archive.org/web/20180707150205/http://adland.tv/..
               | .
        
           | mprovost wrote:
           | I felt quite old recently when someone at work recommended a
           | Vax carpet cleaner and I mentioned that my first email
           | account was on a Vax... and they had no idea what I was
           | talking about. Had never heard of the platform, or of DEC.
        
           | canadianfella wrote:
           | You think more people associate "vax" with a relatively small
           | vacuum cleaner company than vaccines?
        
         | boondaburrah wrote:
         | I've been meaning to check out J2 (the FPGA SH-2 core) for a
         | while now. Mostly haven't because there doesn't seem to be as
         | much support/howtos for the chip as there is for say
         | arm/mips/m68k/whathaveyou. Most Super-H knowledge I can find
         | online centers around programming the Dreamcast's SH-4 with
         | GCC.
        
         | p_l wrote:
         | VAX was a heavily microcoded design, so there wasn't really
         | "silicon level" implementation of VAX instructions themselves -
         | the microcode decoded the instructions and set inputs to
         | execution units, and unlike some modern microcoded designs,
         | there was much less hardwired implementation AFAIK
        
           | twoodfin wrote:
           | At least some VAX models supported user-supplied microcode
           | and thus a customizable ISA. This could be used, for example,
           | to implement a Prolog abstract machine directly on the
           | CPU[1].
           | 
           | [1] http://hps.ece.utexas.edu/pub/gee_micro19.pdf
        
       | baus wrote:
       | I took my original programming classes on the VAX. I'm somewhat
       | nostalgic for it. In many ways it was ahead of its time
        
         | cbm-vic-20 wrote:
         | The clustering technology was way ahead of its time. Stuff that
         | everyone oozes about over Kubernetes was in VMS clusters back
         | in the 1980s.
        
       | mousepilot wrote:
       | well does it boot vms or not?
        
         | ok123456 wrote:
         | Needs to add MMU.
        
         | mrlonglong wrote:
         | That would be awesome if that is possible some day. I still run
         | OpenVMS in simh. And the new owners of OpenVMS are busy
         | beavering away on an OpenVMS port to the amd64 platform and
         | most software should compile cleanly so I've read. Can't wait
         | !!!
        
           | pickle-wizard wrote:
           | VMS Software has released the x86_64 port of OpenVMS
           | recently. However it is not currently available under the
           | hobbyist program. They say that is coming soon.
        
             | phendrenad2 wrote:
             | Someone should tell them their website still says "VMS
             | Software, Inc. is porting OpenVMS to x86", present
             | continuous case.
        
       | herio wrote:
       | Really cool, but just to nitpick a bit not entirely correct in
       | some ways.
       | 
       | Logical systems still sell their NuVAX machines, see
       | https://logical-co.com/product/nuvax-4400-system/
       | 
       | They also do PDP/11 systems and hardware.
       | 
       | I think they might be built using an emulator on PC hardware with
       | some interfacing hardware, but still I would call it a "new" VAX
       | for most purposes.
        
         | minimaul wrote:
         | Definitely at least some software emulation on x86. The manual
         | for that system shows a board name "PEAK876VL2" in a picture -
         | that's an x86 board - but LGA1156, so old!
        
         | bencollier49 wrote:
         | I suppose that means the author of the blog post potentially
         | has a market for his FPGA implementation.
        
           | rob74 wrote:
           | I think getting VAX software to run on an FPGA board is the
           | lesser problem - getting it to be 100% compatible so it can
           | serve as a "slot-in" replacement for an existing VAX is
           | probably a lot more difficult.
        
         | jcurbo wrote:
         | Are there really PDP-11s out there still doing stuff? That is
         | wild
        
         | spfzero wrote:
         | Thanks, didn't know about NuVAX. How old is that product? It
         | seems like you could do much better than 70 VUPs today. Or 5
         | years ago, for that matter. I guess it is because everything is
         | done in sw emulation?
        
         | rob74 wrote:
         | Fascinating... in the phrase "replaces the VAX chassis, CPU,
         | memory, KWV11-C clock and mass storage", the clock being
         | mentioned separately intrigued me, so i googled it. Turns out
         | that _only the clock_ was a whole board full of good old TI 74x
         | TTL chips - and a  "used but working" board goes for 345$ on
         | eBay (https://www.ebay.de/itm/M4002-KWV11-C-MODULE-USED-AND-
         | WORKIN...)...
        
           | TheOtherHobbes wrote:
           | Compared to x nm VLSI, TTL and ECL are ridiculously low
           | density. And soooo sloooow.
           | 
           | DEC were very pleased with themselves when they got to
           | ~40VUPs in the later ECL models, but a full modern VLSI - not
           | FPGA - implementation wouldn't break a sweat at 1000VUPs.
        
           | dfox wrote:
           | What seems particularly interesting is that the board seems
           | to really be just an RTC, yet does not have any obvious place
           | for backup battery and has 10MHz oscillator on it.
        
           | cbm-vic-20 wrote:
           | The first-gen PDP-11's _CPU_ was just a couple of boards full
           | of good old TTL chips.
        
             | GeorgeTirebiter wrote:
             | Yes, the pdp-11/20, released in 1969. Core memory only. In
             | my opinion, it took the pdp-11/45 to firmly establish an
             | impressive new line of machines, separate and more powerful
             | than the pdp-8 line. But, in DEC's way of thinking, it's
             | instructive to note that a pdp-11/40 was used as the
             | console of the DECsystem-20. Separately, it's a shame we no
             | longer have 36-bit machines; 36-bit ints would hold time_t
             | just fine, and 72-bit doubles will work great for science.
             | Oh well. What we're stuck with now bytes.
        
             | noneeeed wrote:
             | I remember reading an old paper on some funky experimentat
             | user-interface that used a pair of PDP-11s (possibly, might
             | have been event older) essentially wired together at the
             | busses, with extra instructions added with new logic in TTL
             | silicon, I think it was for doing the maths for the vector
             | graphics. It was amazing the amount of hardware hackery
             | that was necessary to build these experimental systems.
        
         | p_l wrote:
         | NuVAX is based around software reimplementation of VAX cpu with
         | special-purpose I/O system to reuse existing interfaces
         | (important when you need to deal with custom interface cards,
         | for example).
         | 
         | Funnily enough, it appears that real vaxen ended up being
         | produced for shorter time than PDP-10, despite efforts going as
         | far as encasing last high-end PDP-10 prototype in concrete and
         | dumping it in mill pond (or so the story goes), as known
         | single-chip PDP-10 were produced at least as late as 2004,
         | after last VAX rolled off production line.
        
           | DonHopkins wrote:
           | "If you're not playing with 36 bits, you're not playing with
           | a full DEC!" -DIGEX (Doug Humphrey)
        
             | slowhand09 wrote:
             | "Radix-50 Rulz!!!"
        
             | jfengel wrote:
             | I didn't realize anybody still remembered Digex.
        
           | skissane wrote:
           | > as known single-chip PDP-10 were produced at least as late
           | as 2004
           | 
           | Who was producing a PDP-10 in 2004? I'd love to know more
           | about this.
        
             | TheOtherHobbes wrote:
             | XKL's TOAD-2 is/was based on a single chip PDP-10.
             | 
             | The hardware is used as a router, but supposedly if you ask
             | it very nicely you can get it to run TOPS-20.
        
               | pinewurst wrote:
               | https://commons.wikimedia.org/wiki/File:XKL_TOAD_2.jpg
        
               | p_l wrote:
               | Living Computer Museum had two XKL-2 running TOPS-20.
        
             | lproven wrote:
             | Yup, the XKL TOAD ("Ten On A Desk") and TOAD-2.
             | 
             | https://en.wikipedia.org/wiki/XKL#TOAD-1
        
               | p_l wrote:
               | At the time of TOAD-1, there were also still machines
               | built based on SC design, for effectively singular
               | consumer - Compuserve.
        
         | chx wrote:
         | GE Canada has VAXen running their atomic plants and they are
         | under contract to keep 'em running for a long time, 2035 or
         | 2045. (Might be called BWXT today.)
        
           | throw0101a wrote:
           | * https://www.theregister.com/2013/06/19/nuke_plants_to_keep_
           | p...
        
           | mrweasel wrote:
           | I would love to have some one write an article about how they
           | even manages to do that.
           | 
           | Are they real VAX servers or have they've been
           | virtualized/emulated somewhere down the line.
        
             | nickdothutton wrote:
             | More than you would imagine.
        
           | skissane wrote:
           | Melbourne (Australia)'s train signals used to be controlled
           | by PDP-11s running Ericsson JZA715 train control software.
           | They were replaced by Ospreys. An Osprey is actually a
           | hardware PDP-11 CPU on an expansion card which plugs into an
           | x86 PC bus. It uses an actual CPU not emulation because
           | realtime applications like train control need to be 100%
           | cycle accurate. (Originally they used actual PDP-11 CPU chips
           | manufactured by DEC, later they switched to using FPGAs). It
           | also has Unibus cards to do Unibus-ISA/EISA/PCI translation
           | so it can integrate with the original peripherals.
           | 
           | http://web.archive.org/web/20210126085900/https://www.equico.
           | ..
           | 
           | http://www.strobedata.com/home/ospreyguide.html
        
             | VectorLock wrote:
             | Why does train control need to be 100% cycle accurate?
             | 
             | PDP-11s ran at what, 1.25Mhz? I'd think that a modern CPU
             | software emulating a PDP-11 CPU could get to below those
             | cycle times.
        
               | GeorgeTirebiter wrote:
               | With bipolar memory option, the pdp-11/45 had a 300 ns
               | memory cycle time.
        
               | bluGill wrote:
               | A few cache misses in a row, and some branches
               | mispredicted and your modern CPU is slower than 1.25mhz.
               | This almost never happens (CPUs are very good at this)
               | but when it does things can get bad.
        
               | VectorLock wrote:
               | You could keep all of the PDP-11's RAM and probably most
               | of its "external storage" in the L2 cache of most modern
               | CPUs.
        
               | jandrese wrote:
               | Lets say the modern CPU gets itself really tied up in
               | knots and is out of action for a staggering 10ms. During
               | that time a speeding train doing 350kph travels not quite
               | a meter. Do trains run such tight scheduling that this
               | isn't sufficient time to cause delay on actuating a
               | switching element and cause an accident?
        
               | skissane wrote:
               | You have a legacy safety-critical system, which
               | incorporates legacy hardware peripherals. How sensitive
               | is it to changes in timing? You may not actually know. Do
               | you want to do the engineering analysis necessary to
               | prove that replacing one part of that system with
               | potentially different timing is not going to cause
               | problems? Or do you just seek out a replacement whose
               | timing is as close as possible to the original?
               | 
               | The big issue may not be with the trains themselves but
               | the signalling equipment and other peripherals. Changing
               | the timing in the communication with them may lead to
               | problems.
               | 
               | And what if the original software has race condition bugs
               | which have never been surfaced, and the occasional
               | inaccuracy in timing starts to surface them? Good luck
               | fixing bugs in some obscure piece of PDP-11 software that
               | was written in the late 1970s.
        
               | bluGill wrote:
               | I have no idea. If this is real time control that could
               | mean you keep running the motors in the switch long
               | enough to damage something. Or maybe you go past the end
               | of travel switch signal without reading it, the switch
               | turns off and you never stop... There are a lot of ways
               | real time systems can fail.
               | 
               | You are correct that 10ms is well within the margin of
               | error for safety stopping a train, but it may be out of
               | the margin for some subsystem in the control.
        
       | ChrisArchitect wrote:
       | Thought this might be about getting "VAX-inated" with the
       | vaccine..... ;)
        
       ___________________________________________________________________
       (page generated 2021-07-07 23:01 UTC)