Live data from Hacker News

The RISC Deprogrammer

blog.erratasec.com

11–20 of 110 posts

Re: The RISC Deprogrammer

#11

"In contrast, 16-bit processors could only address 64-kilobytes of memory, and weren't really practical for real computing." ?

See their definition of "real" computing (the author even uses sarcastic quotes elsewhere):

>The interesting parts of CPU evolution are the three decades from 1964 with IBM's System/360 mainframe and 2007 with Apple's iPhone. The issue was a 32-bit core with memory-protection allowing isolation among different programs with virtual memory. These were real computers, from the modern perspective: real computers have at least 32-bit and an MMU (memory management unit).

Re: The RISC Deprogrammer

#12

"In contrast, 16-bit processors could only address 64-kilobytes of memory, and weren't really practical for real computing." ?

See their definition of "real" computing (the author even uses sarcastic quotes elsewhere): >The interesting parts of CPU evolution are the three decades from 1964 with IBM's System/360 mainframe and 2007 with Apple's iPhone. The issue was a 32-bit core with memory-protection allowing isolation among different programs with virtual memory. These were real computers, from the modern perspective: real computers have at…

Mostly everyone else seems to define the bitness of CPUs by their capacity to add numbers in one go, not by the address space they can address. What "everyone" calls 8bit computers could address 64kb of address space, not 256 bytes. Everyone can call a table a chair, but it doesn't make communication easier.

Re: The RISC Deprogrammer

#13

Earlier quoted context omitted.

See their definition of "real" computing (the author even uses sarcastic quotes elsewhere): >The interesting parts of CPU evolution are the three decades from 1964 with IBM's System/360 mainframe and 2007 with Apple's iPhone. The issue was a 32-bit core with memory-protection allowing isolation among different programs with virtual memory. These were real computers, from the modern perspective: real computers have at…

Mostly everyone else seems to define the bitness of CPUs by their capacity to add numbers in one go, not by the address space they can address. What "everyone" calls 8bit computers could address 64kb of address space, not 256 bytes. Everyone can call a table a chair, but it doesn't make communication easier.

I'm not sure I understand what you are saying and how it is a refutation. The line you pulled was in fact his argument for why memory addressing is an important qualifier for his definition and bit-length of registers is insufficient in his mind. The line is from where he argues that even though the 68k is considered a 16bit machine due to how the ALU works, it can address 24bit addresses, making it closer to a "real" computer by his definition. I'd reckon he'd say (as he did :) ) that the 6502 isn't a "real" computer because it can only address 64K of memory.

I think "modern" computing is a better term than "real" computing for what he means, but it's merely presumptuous of a definition, it's nowhere as extreme as calling a table a chair. I'd suggest not letting a definition poison your mind too much as the post is interesting if you can get past the tone.

Re: The RISC Deprogrammer

#14
This article is a polemic. Don't take it personally. Enjoy! Also it's clear they are well versed in the topic. You may not agree but it is great food for thought.

Re: The RISC Deprogrammer

#15
The article (like most RISC hit pieces) neglects the implicit value of simplicity.

Complexity needs to be justified, and the article does a very poor job there.

Re: The RISC Deprogrammer

#16
post #8

The article does clear up a few things. Could have been a little less acerbic though.

It kind of pushed their own definition of what RISC is. They also confuse the definition of what a 16-bit computer is and ignore the many commercial successes in 16-bit minicomputers such as the Nova. It is clever to point out that the most useful definition of RISC is that it’s a tradeoff. The point remains that a simplified ISA that’s easy to decode (and, more recently) implement dynamic reordering, will always hav…

>It kind of pushed their own definition of what RISC is.

That's intentional. A straw man tends to be easier to attack.

Re: The RISC Deprogrammer

#17
post #15

The article (like most RISC hit pieces) neglects the implicit value of simplicity. Complexity needs to be justified, and the article does a very poor job there.

It's not really a hit piece and I think he does a good job of arguing that high performance chips are not all that simple anyway anymore regardless of ISA.

Re: The RISC Deprogrammer

#18

Earlier quoted context omitted.

See their definition of "real" computing (the author even uses sarcastic quotes elsewhere): >The interesting parts of CPU evolution are the three decades from 1964 with IBM's System/360 mainframe and 2007 with Apple's iPhone. The issue was a 32-bit core with memory-protection allowing isolation among different programs with virtual memory. These were real computers, from the modern perspective: real computers have at…

Mostly everyone else seems to define the bitness of CPUs by their capacity to add numbers in one go, not by the address space they can address. What "everyone" calls 8bit computers could address 64kb of address space, not 256 bytes. Everyone can call a table a chair, but it doesn't make communication easier.

> Mostly everyone else seems to define the bitness of CPUs by their capacity to add numbers in one go, not by the address space they can address.

Nah, only historically. Yes, "8-bit" refers to the ALU. Back in the day, 16-bit was similar. But even then it was muddy, because when talking about operating systems like Unix or NT the key question about bitness would be in the context of a 32-bit flat addressing model, not really the data width.

By the time the 64-bit era rolled around, the "64-bits" definitely referred to address space.. The original Pentium had a 64-bit data path and had instructions (MMX, eg PADDQ) that could operate on 64-bit numbers - no one would call it 64-bit. By the early 2000s with the big push to mainstreaming 64-bit, it was all breaking out of the 4GB address space limitation - not the width of data.

> define the bitness of CPUs by their capacity to add numbers in one go

This is nebulous and therefore troublesome to define. Are we talking about the ISA or the internal circuitry (ALU and/or data path)? Is the 68000 a 16-bit or 32-bit CPU?

Re: The RISC Deprogrammer

#19
> Back in the 1980s, most of the major CPUs in the world were big-endian, while Intel bucked the trend being little-endian. The reason is that some engineer made a simple optimization back when the 8008 processor...

The article started talking about the VAX and how it was the gold standard everybody competed against.

The VAX is little endian.

Little endian is not a hack. It's a natural way to represent numbers. Its just that most languages in earth write words left to right while writing numbers right to left

Re: The RISC Deprogrammer

#20
One of the idea I take from the piece is that CPU design success is intimately tied to the software ecosystem of the day and Memory Management Units were a big thing for C langage multitasking.

I wonder if Rust or similar could make the MMU transistors and energy budget redondant.

Disclaimer: I am a 68k fan.

Post reply on HN