Page 3 of 4
Posted: Sun Mar 07, 2010 5:04 pm
by BigEd
So INX should be 1 cycle, and INX16 would be 2.
Ehhhh, no and maybe yes. If you use the ALU to increment X, the internal data bus is needed twice.
Maybe a single bus is a good foundation for your design, but I wasn't thinking of that constraint. (In a TTL design of course it costs more to add busses than in FPGA.) Looking at the
65ce02 datasheet (pdf) we see
A unique design feature allows [Address registers] ADL and ADH to store indirect address vectors while [Address Counters] ABL and ABH function as counters, thus relieving the ALU from internal address fetches and increasing throughput
and we also see some additional busses in the block diagram (see below)
The same datasheet shows the reduced cycle counts, including many single-cycle instructions (and no page-crossing penalties). Garth has previously mentioned patents covering the elimination of dead cycles, but I haven't yet discovered the patent numbers.
Edit: attached version of image in case imageshack drops the ball.
Posted: Sun Mar 07, 2010 11:55 pm
by ElEctric_EyE
Ruud, I keep getting "unexpected end of archive" when trying to download the PNG files. Problem could be on my end?...
Off-topic: I got home and I still have the same problem on my laptop running a 32 bit version of windows... I go onto my main computer which has a 64 bit version, and it loads ok. (I did a parite virus check on my laptop, nothing found. That virus has attached itself to .exe files and screwed up other files in the past on my laptop).
On-topic: I have the day off tomorrow, I plan on ordering a few more parts and checking your schematics out. Do you have your version built yet? or partially built?
Posted: Mon Mar 08, 2010 7:05 am
by Ruud
Do you have your version built yet? or partially built?
No. But I'm busy scraping the parts together. But I first optimize the schematics for the board. For example, the way the 573's are connected to the EEPROM's is not optimal for routing. By swapping 5 lines routing becomes very simple suddenly. I'm not only optimizing it for the auto-router but also for myself: I have to solder the boards by hand.
During this proces I found a bus on 6502-m2 which is an inheritance from the past. Due to other changes it became obselete so I removed it and connected the inputs of the 191's directly to the internal data bus.
I'll keep you informed.
Posted: Mon Mar 08, 2010 6:34 pm
by ElEctric_EyE
...Garth has previously mentioned patents covering the elimination of dead cycles, but I haven't yet discovered the patent numbers.
Code: Select all
Broken external image link
http://img716.imageshack.us/img716/3018/65ce02blockdiagram.jpg
I heard of the 65CE02 mentioned here on the forums, but I didn't realize how powerful it was compared to the original before I read through the manual last night. Why didn't WDC use this design as it's foundation? or did WDC's version come before this iteration? Is the 65CE02 still being sold?
Posted: Mon Mar 08, 2010 7:31 pm
by BigEd
As I understand it, the 65CE02 came later than the 65816, and arguably borrowed some ideas from it. The 'CE02 is by Commodore, not by WDC, and I think it didn't happen in any quantity because of marketing or management misses.
Posted: Tue Mar 09, 2010 1:09 pm
by Ruud
The 'CE02 is by Commodore
In that case it was the CPU meant for the C65, the successor of the C64. Except a number of prototypes, this machine hasn't been produced.
Posted: Tue Mar 09, 2010 4:07 pm
by kc5tja
I remember that a few 3rd-party vendors adopted the 65CE02 for their processor of choice, and I seem to recall that Apple had once experimented with it. Since Woz's DOS relied on CPU instruction timings so heavily, they rejected it in favor of the 65816 for the Apple IIgs.
I do know, however, that the 65CE02 existed for a few years before the first C65 prototype was made. The C65 used a CSG4510A if memory serves me correctly, which has a 65CE02 core, but a handful of other peripherals integrated right on the chip (e.g., both CIA chips, etc.).
Posted: Sat Mar 13, 2010 1:56 am
by ElEctric_EyE
This company has the 144 pin QFP's available. I used them when I bought chips for my SBC-3 bulk order.
You could contact them to see what the minimum order might be. If too much for you, you could see if others want in on a bulk purchase.
XC3S400-4TQG144C
http://www.americaii.com/
Daryl
I put in a RFQ 3 days ago, for min order. No response yet, although they seem to be well stocked on this IC.
Posted: Sun Mar 28, 2010 9:34 pm
by ElEctric_EyE
New update from Dennis, looks like almost final?, on the 6502 on Spartan 3 as of Mar 16, 2010. Such a nice looking board. And to think it has a 6502 at the core. He notes just a few problems with the VHDL code. Beautiful... 'cept for the fact it only runs @ 4MHz.
http://mycpu.selfhost.it/mycpucompact.htm
Posted: Mon Sep 27, 2010 9:09 pm
by ElEctric_EyE
Now he's got it up to 34MHz!
Posted: Mon Sep 27, 2010 10:50 pm
by kc5tja
Wow. Why so slow? I would have thought an FPGA implementation could go at least in the 60MHz region with today's technology. :/ My lack of FPGA-related experience is showing through here.
(Though, I'm strongly considering a very cheap Windows-based laptop just to tinker around with this stuff.)
Posted: Mon Sep 27, 2010 11:38 pm
by ElEctric_EyE
A 34MHz 6502 is slow? This is a man's effort to implement another version of 6502 on FPGA with VHDL.. You have something to teach here kc5tja?
Posted: Mon Sep 27, 2010 11:42 pm
by kc5tja
Dude, settle down and back off. I only asked a question. What part of, "My lack of FPGA-related experience is showing through here." was not understood?
I think it's cool that he did push it to 34MHz. Other FPGA hackers have reported (non-6502) CPUs up into the 133MHz realm. So, I thought a 6502 implementation could also go at least as fast.
Posted: Tue Sep 28, 2010 12:09 am
by GARTHWILSON
So when does it go on sale?

Posted: Tue Sep 28, 2010 2:12 am
by BigDumbDinosaur
Now he's got it up to 34MHz!
I'd be delighted if I could run my POC unit at 34 MHz. It barely stays on its feet at 12.