Jump to content

x16 processor compared? Youtube videos found


Recommended Posts

Posted (edited)

First, meaningful comparisons are done based on the whole system.  So you have to take all of his videos into account.

 

It's more powerful than the C64.  It has five times the voices, but no envelope control.  256 colors and VGA.  32 times the ROM.  8 times the RAM (for starters).  Modern storage options. 

Nowhere near as powerful as the MEGA 65, though.

I think the 8 Bit Guy also made some comparisons with Intel 286 systems, say somewhere around 12 Mhz, but that's with all the nifty features rolled in, NOT a raw performance comparison.

 

Commodore 64
Commodore 128
Commodore 65 (might approach the power of a low-end 8086, maybe)
Intel 8086 systems
Commander X16 ~~~ Intel 286 system 
Intel 386SX
MEGA 65
C256 Fenix

 

 

Edited by rje
  • Like 1
Link to comment
Share on other sites

The intention here is good, but the execution falls short across the board.

Comparing one processor against another is a hard problem and we've known this for a long time. We have come up with synthetic benchmarks which attempt to answer the question in a reasonable manner, but they aren't perfect, and we know this also. The absolute worst way to compare CPUs is to look at micro-kernel operations whose performance can vary drastically depending on the execution context and that is exactly what happens here. Is it surprising that the 65C02 beats the 68000 when doing a single simple 8 bit operations in a 16 bit memory space? It shouldn't. What happens if you stay in that execution context but calculate an 8 bit CRC over a 4K buffer? Is the 65C02 still going to beat a 68000? It might, I'm not sure - but looking at very simple operations will not tell you that.

Similar story for graphics - you cannot just say the Amiga is better because it has the blitter and Copper. For starters, the Copper generally won't do anything for you here. If you were to look at small operations, I don't think you would be led to believe that the Amiga would win. E.g.: setting a single pixel - because of the way the Amiga's bit planes are laid out, setting a single pixel is a painful process and the blitter isn't going to help you get it done faster. Painting a 128x128 visual element moving across the screen would be helped by the blitter but the CX16 could handle that element as several sprites and "painting" it would only involve updating a set of sprite location registers. I think Amiga vs. CX16 bitmap graphics dominance would be a difficult call to make -- I'm not entirely certain which context the Amiga would be the clear winner in but it would probably be something like "32 color graphics" because the CX16 doesn't have such a mode. The blitter addresses shortcomings in the Amiga that the CX16 doesn't have (e.g. most bit blit operations on the Amiga will require read-modify-write compositing operations at the left and right edges of the element being blitted and anywhere there is a transparency mask but CX16 in 256 color mode never has to do that).

  • Like 1
Link to comment
Share on other sites

I get systems over all had pluses and minuses. The CX-16 is a neat project and system. I hope the basic good or better than the commodore plus. And looking at these videos I get the idea that the 65C02 has some advantages in a small instruction set similar to RISC in that it is such a small chip.

 

  • Thanks 1
Link to comment
Share on other sites

Or you could have gone to the discussions here of those videos from the time that one of the members of this site first posted them to youtube.

The IBM PC was not a rocket ship take-off in the personal computer market because its performance was astounding. It was a massive success because at the time the saying was "nobody every got fired for buying IBM" ... when corporations were buying minicomputers and mainframes ... and so IT people could respond to a task best served with a PC by putting an IBM PC on people's desks, and people in corporations could get their IT people to buy an IBM PC to put on their desk, and then people started buying them for the home to match the one they had at work. So it's not shocking that an 8bit "dream computer" can in many circumstances outperform one of the 8bit data bus IBM personal computers (PC/XT).

  • Like 2
Link to comment
Share on other sites

Posted (edited)
8 hours ago, rje said:

First, meaningful comparisons are done based on the whole system.  So you have to take all of his videos into account.

 

It's more powerful than the C64.  It has five times the voices, but no envelope control.  256 colors and VGA.  32 times the ROM.  8 times the RAM (for starters).  Modern storage options. 

Nowhere near as powerful as the MEGA 65, though.

I think the 8 Bit Guy also made some comparisons with Intel 286 systems, say somewhere around 12 Mhz, but that's with all the nifty features rolled in, NOT a raw performance comparison.

 

Commodore 64
Commodore 128
Commodore 65 (might approach the power of a low-end 8086, maybe)
Intel 8086 systems
Commander X16 ~~~ Intel 286 system 
Intel 386SX
MEGA 65
C256 Fenix

Yeah, I did some comparison testing using my favorite prime number algorithm and an (allegedly) cycle accurate emulator. My results suggested about a 2.3:1 performance ratio (meaning the 6502 does in 1 clock cycle what the 8088 does in 2.3.)

The Z80 has a similar performance ratio, so in both cases, you can expect an 8MHz 6502 to be roughly equivalent to an 18MHz 8088 or Z80 computer. 

This isn't because the 6502 is some sort of super chip. It's because the 6502 simply splits the clock into two phases, and it performs one operation per phase, rather than one operation per tick.

Let's look at a memory read operation:

  1. CPU Sets the address being accessed
  2. Memory sets the data bus
  3. CPU reads the data bus

On a Z80, this requires a minimum of 2 clock cycles (the instruction fetch): On the first cycle, the CPU sets the memory address, and the memory chips are expected to set the data bus on the falling edge of the clock. Then the CPU reads the data bus on the next cycle. Note the very short "IN" block in this diagram:
Z80 Special Reset

 

 

On the 6502, we don't deal in clock cycles, so much as phases, called PHI1 and PHI2. Each clock tick has two phases, and each phase can have two operations happening. So during PHI1, the CPU is setting the address bus, and it can read the data bus during the second half of PHI2. So notice how the phases of a 6502 correspond almost exactly to the clock cycles of the Z80 or 8080.

Image

 

This is why it's a little unfair to compare clock speeds of 6502 and 8088 systems, without taking the difference in cycle times into account. Since the 6502 doubles the clock internally, it's more correct to say the Commodore 64 has a phase clock of 2MHz. And when you start looking at things from that perspective, the Z80 and 6502 suddenly are much more similar in terms of performance. 

Having said all of that - the Z80 and 8088 still use extra cycles for instruction decoding. The 6502 actually has some primitive pipelining, and the instruction decode happens in parallel with the read of the first data byte of an instruction. This is the place where the 6502 is arguably better designed, since the Z80 uses two clock cycles to decode the opcode, and a minimum of 3 more ticks to fetch the first data byte (although there are several instructions that do not need operands.)

So while your typical single-operand Z80 instruction takes 5 clock cycles, the 6502 can do a single-operand operation in 2 clock cycles. Hence the myth that the 6502 is 2.5x more efficient than the Z80. It's actually not - it's just that you have to compare a 1MHz 6502 to a 2MHz Z80 to have a fair comparison.

 

 

 

 

Edited by TomXP411
  • Like 2
Link to comment
Share on other sites

Posted (edited)

That was interesting. But I wonder if scaling is a factor in over all systems take the C64 DTV where you have everything in an all in one chip that is many times smaller compared to the C64 bread box or even the C64 ultimate elite. Is it faster or better to miniaturize the entire machine or emulate it in an fpga or ASIC? I just think that when you have everything closer together you save time and energy in smaller form factors. And I think I heard 8 bit guy mention the Asic route if it sells good for the cx 16.

Edited by Travis Bryant moore
Link to comment
Share on other sites

If you need more speed, the first step would be to simply run the 65C02 at its maximum clock rate of 14 MHz...

And with only 4000 transistors, I'm sure the 6502 can be implemented at significantly higher speeds on an FPGA.

But at what point is the thing so fast that it's no longer an 8-bit computer (or even a 16-bit one) as we know them? Now you can start doing things that would never fly with a computer from the 1980s or 1990s because you have so many cycles to burn.

  • Like 1
Link to comment
Share on other sites

Posted (edited)
5 hours ago, Travis Bryant moore said:

That was interesting. But I wonder if scaling is a factor in over all systems take the C64 DTV where you have everything in an all in one chip that is many times smaller compared to the C64 bread box or even the C64 ultimate elite. Is it faster or better to miniaturize the entire machine or emulate it in an fpga or ASIC? I just think that when you have everything closer together you save time and energy in smaller form factors. And I think I heard 8 bit guy mention the Asic route if it sells good for the cx 16.

The mostly FPGA route is to make a system that is compatible with the real CX16. The real board with real chips is the system reference design. There are already plenty of projects that run fast 32bit hardware on inexpensive boards, there's no particular reason to make another one of this.

Remember that the origin of the whole idea was people asking David for advice on what old system to buy to get the "eight bit experience" and David realizing he couldn't really recommend one as a good starter system. "ASIC" here doesn't mean custom ASIC, it means off the shelf ASIC as much as possible, ideally through pin chips, which is the CX16p system reference platform. That necessarily costs hundredS of dollars. Then the cost reduced CX16c is mostly ASIC, but surface mount where available for lower assembly cost, maybe a single surface mount SRAM, maybe the address / chip select logic with a CPLD rather than all that glue logic. Maybe still hundredS, but lower cost. Then the mostly FPGA version would not be primarily about making it run fast, but about getting the board cost under $100, if possible.

 

Edited by BruceMcF
  • Like 1
Link to comment
Share on other sites

Posted (edited)
2 hours ago, iljitsch said:

If you need more speed, the first step would be to simply run the 65C02 at its maximum clock rate of 14 MHz...

And with only 4000 transistors, I'm sure the 6502 can be implemented at significantly higher speeds on an FPGA.

But at what point is the thing so fast that it's no longer an 8-bit computer (or even a 16-bit one) as we know them? Now you can start doing things that would never fly with a computer from the 1980s or 1990s because you have so many cycles to burn.

Bruce's post helps understand the context:

1 hour ago, BruceMcF said:

Remember that the origin of the whole idea was people asking David for advice on what old system to buy to get the "eight bit experience" and David realizing he couldn't really recommend one as a good starter system. 

Now note that the X16 interacts with components whose two main criteria are (a) price point and (b) COTS for an 8-bit system.

In short, 14 mhz appears to be beyond the requirements and capability of the system.  And that includes performance characteristics of the system's various affordable components.

When the goal is Affordably make an interesting 6502-based system then performance is not the primary purpose.

 

Just with mostly off-the-shelf parts, the X16 surpasses the Commodore 65 prototype.  That's as good a goal as you need.

 

Edited by rje
  • Like 1
Link to comment
Share on other sites

Posted (edited)

Thankyou everyone for your replies. I hope it all works out. but in over all systems I am sure the sd card is a big bonus as it gives it an advantage greater than dvd to blue ray capacity? I mean could you imagine a Commodore CD or Amiga DVD system? I mean just think if you had three pins to page read and write data from an SD card like the new m.2 solid state hard drive and ram hybrid being done on computers today?

Edited by Travis Bryant moore
Link to comment
Share on other sites

On 6/3/2021 at 6:03 AM, iljitsch said:

If you need more speed, the first step would be to simply run the 65C02 at its maximum clock rate of 14 MHz...

And with only 4000 transistors, I'm sure the 6502 can be implemented at significantly higher speeds on an FPGA.

So far, the fastest implementation is 48MHz, as seen on the Ultimate 64. 
 

all the U64 needs is an 80 column mode now...

Link to comment
Share on other sites

12 hours ago, TomXP411 said:

So far, the fastest implementation is 48MHz, as seen on the Ultimate 64. 
 

all the U64 needs is an 80 column mode now...

Coincidentally, AFAIR the top clock speed of the ez80, which can be put into z80 instruction mode, is 50MHz. But it would invert the relationship between 65xx and z80 clock speeds and processing performance, since the ez80 versions of the instructions are mostly single cycle per memory access.

  • Like 1
Link to comment
Share on other sites

On 6/3/2021 at 2:03 PM, iljitsch said:

If you need more speed, the first step would be to simply run the 65C02 at its maximum clock rate of 14 MHz...

And with only 4000 transistors, I'm sure the 6502 can be implemented at significantly higher speeds on an FPGA.

But at what point is the thing so fast that it's no longer an 8-bit computer (or even a 16-bit one) as we know them? Now you can start doing things that would never fly with a computer from the 1980s or 1990s because you have so many cycles to burn.

Because you could develop in things other than assembler without crashing into memory problems or VM performance issues. Most of the speed gain is lost because the system is full of 16 bit data.

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

Please review our Terms of Use