65VM02

Topics relating to PALs, CPLDs, FPGAs, and other PLDs used for the support or creation of 65-family processors, both hardware and HDL.
User avatar
GaBuZoMeu
Posts: 660
Joined: 01 Mar 2017
Location: North-Germany

Re: 65VM02

Post by GaBuZoMeu »

I have to agree to what Garth said "but I didn't get the impression that it's possible for one to compete in the area of power and speed with silicon designs made from the ground up to be the particular processor. That's no reason to not go ahead with the project though."

I don't think it's much useful or helpful to compare your design against s.th. you (as well a I) have only limited knowledge about.

Why don't you focus your efforts to an area where you really know what's going on? IMHO you started this thread with an enhanced 6502 variant that would ease a fast implementation of a forth interpreter. I found the idea of expanding the memory to 128K (just 1 single "lumpy" bit) very well choosen. Simple & efficient!

Why not continue this way? If you can tweak your design to have it perform a forth interpreter say twice as fast as a standard 6502 (same clock speed) - it would be great! You can get it faster? Make it!

Then you can check how many FPGA ressources this may cost and whether there is either room for further enhancements or where you may save some ressources without sacrifying much speed.

Finally build it and use it, just to verify that it is really that powerful, and of course enjoy your work!
Hugh Aguilar
Posts: 158
Joined: 03 Jun 2016

Re: 65VM02

Post by Hugh Aguilar »

Hugh Aguilar wrote:
This is my first design --- I don't want to go overboard with features...
Well, I have a new document (attached) with some more features --- hopefully I haven't gone overboard yet.

The new instructions are all minor improvements that seem easy and obvious. For example, in the 65c02 the direct,Y addressing mode can't be used with LDA and STA --- somewhat of weird hole in the instruction set --- I added that, as well as some other instructions to help with 16-bit data.

Mostly I upgraded the amount of documentation that I provide. I have a section that discusses C and Pascal compilers now. I still only provide Forth code, but I think with my documentation anybody should be able to write a C or Pascal compiler fairly easily --- there is not that much difference from Forth except that C and Pascal use local variables for everything, and they don't have a data-stack at all --- Forth mostly uses the data-stack, but has locals for use in the larger more complicated functions.

I expect that the 6502 forum guys will cheer when they read my final section:

Code: Select all

Section 8.) conclusion

The 65VM02 is to the 65c02 what the eZ80 is to the Z80 --- a way to support large programs on an 8-bit processor.
The eZ80 had 24-bit registers, which are inefficient considering that most data are 16-bit.
In the 65VM02, only the FLDA and FSTA instructions use 24-bit addresses. Most direct-page pointers are 16-bit.
The eZ80 had only a very few registers (mostly just HL) that could be used as pointers, so there was a bottleneck.
In the 65VM02, the direct-page can be used for pointers, so you can have dozens of pointers.

The 65VM02 is efficient for large programs because it is founded upon the 65c02 that was efficient for small programs!
:-D
Attachments
65VM02.txt
added some minor improvements, and added a discussion of C and Pascal compilation
(38.63 KiB) Downloaded 210 times
User avatar
GARTHWILSON
Forum Moderator
Posts: 8775
Joined: 30 Aug 2002
Location: Southern California
Contact:

Re: 65VM02

Post by GARTHWILSON »

GARTHWILSON wrote:
Hugh Aguilar wrote:
It is unclear who would be interested in an 8-bit processor in the 21st century, given the low cost of 32-bit processors with megabytes of memory
In Microchip's Wayne Freeman's Dec 12, 2016 Electronic Design article "11 Myths About 8-Bit Microcontrollers," the #1 myth he addresses is that the 8-bit is going away. He says, "Gartner’s 2015 Microcontroller Report lists the dollar value of both 8- and 32-bit annual sales in the ~$6B range—roughly equivalent to each other. Given the differences in average transaction price, the math tells us that there were three 8-bit MCUs designed into embedded systems for every one 32-bit MCU in 2015. Going away? Not anytime soon."
Someone just sent me another supporting article, dated May 24, 2022:
Why Won’t the 8-bit Microcontroller Die?
http://WilsonMinesCo.com/ lots of 6502 resources
The "second front page" is http://wilsonminesco.com/links.html .
What's an additional VIA among friends, anyhow?
User avatar
BigDumbDinosaur
Posts: 9428
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: 65VM02

Post by BigDumbDinosaur »

GARTHWILSON wrote:
GARTHWILSON wrote:
Hugh Aguilar wrote:
It is unclear who would be interested in an 8-bit processor in the 21st century, given the low cost of 32-bit processors with megabytes of memory
In Microchip's Wayne Freeman's Dec 12, 2016 Electronic Design article "11 Myths About 8-Bit Microcontrollers," the #1 myth he addresses is that the 8-bit is going away.
Someone just sent me another supporting article, dated May 24, 2022:
Why Won’t the 8-bit Microcontroller Die?
Eight-bit MCUs continue to take market share because they do what needs to be done in the applications in which they are used. Not every naval conflict needs a battleship and not every electronic device needs a 32-bit MCU. Given that eight-bit code tends to be easier to write, I completely see the logic behind not using a 32-bit MCU for every application.
x86?  We ain't got no x86.  We don't NEED no stinking x86!
kakemoms
Posts: 349
Joined: 02 Mar 2016

Re: 65VM02

Post by kakemoms »

Still dreaming of a robot with a 6502 running at 1THz. Its probably far into the future, but the 1THz transistor is already old news:
https://www.extremetech.com/extreme/193 ... rld-record
User avatar
barrym95838
Posts: 2056
Joined: 30 Jun 2013
Location: Sacramento, CA, USA

Re: 65VM02

Post by barrym95838 »

BigDumbDinosaur wrote:
Given that eight-bit code tends to be easier to write, I completely see the logic behind not using a 32-bit MCU for every application.
You mean like

Code: Select all

    lda b0
    bne h
    lda b1
    bne g
    lda b2
    bne f
    dec b3
f:  dec b2
g:  dec b1
h:  dec b0
instead of

Code: Select all

    subq #1,d0
???
Got a kilobyte lying fallow in your 65xx's memory map? Sprinkle some VTL02C on it and see how it grows on you!

Mike B. (about me) (learning how to github)
kakemoms
Posts: 349
Joined: 02 Mar 2016

Re: 65VM02

Post by kakemoms »

barrym95838 wrote:
instead of

Code: Select all

    subq #1,d0
???
you mean

Code: Select all

	dec d0
????
Post Reply