Zero glue logic 6502 SBC?

For discussing the 65xx hardware itself or electronics projects.
User avatar
BigDumbDinosaur
Posts: 9425
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: Zero glue logic 6502 SBC?

Post by BigDumbDinosaur »

plasmo wrote:
...I’m satisfied that low 30Mhz operation can be achieved with average pair of W65C02 and W65C22 running in fast RAM.

Now, the next question to be settled is can a practical system with mass storage and capable of running an operating environment and applications be operated in that speed range?
x86?  We ain't got no x86.  We don't NEED no stinking x86!
plasmo
Posts: 1273
Joined: 21 Dec 2018
Location: Albuquerque NM USA

Re: Zero glue logic 6502 SBC?

Post by plasmo »

I know CF can work with the 36Mhz 6502 prototype but with few wait states. DS1086 allows me to “cheat” by having “variable turbo” function under software control. I’m reasonably confident serial port, I2C, SPI, CF, LCD display, PS2 keyboard can all be controlled by a W65C22 without glue logic using adjustable Turbo feature. Now I wonder whether beam racing VGA is possible with shift register. Anyway, the goal is building a full up computer with many I/O functions without glue logic. The 32K RAM probably will be the real limitation.
Bill
User avatar
BigDumbDinosaur
Posts: 9425
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: Zero glue logic 6502 SBC?

Post by BigDumbDinosaur »

plasmo wrote:
The 32K RAM probably will be the real limitation.

That’s my main beef with the glue-less concept: too much “wasted” address space.
x86?  We ain't got no x86.  We don't NEED no stinking x86!
User avatar
Michael
Posts: 633
Joined: 13 Feb 2013
Location: Michigan, USA

Re: Zero glue logic 6502 SBC?

Post by Michael »

plasmo wrote:
... the goal is building a full up computer with many I/O functions without glue logic. The 32K RAM probably will be the real limitation.
I would love to see this evolve into a full computer. Your experiments are very cool but the lack of memory, and vectors in the upper 16K ($C000..$FFFF), could be a limitation. Even with glue logic and a uC providing Loader/Programmer functions to support RAM-only operation, it seems 32-MHz operation might be difficult.

Question, please? Could a GAL provide faster switching times if it replaced the 139's in the circuit below? Also, could it be faster if the GAL produced an active-high 'IO' signal connected to the RAM active-low CS1 input with the RAM active-high CS2 input connected back to the ɸ2 signal (RAM /OE would be connected to RAM /CS1 and RAM /WE would be connected to CPU R/W)?
Attachments
6502 RE1.png
User avatar
BigDumbDinosaur
Posts: 9425
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: Zero glue logic 6502 SBC?

Post by BigDumbDinosaur »

Michael wrote:
Question, please? Could a GAL provide faster switching times if it replaced the 139's in the circuit below?

I can’t read your drawing, so I don’t know exactly what is being achieved.  However, I can tell you that, on paper, a single 74LVC gate will be faster than the fastest GALs currently available (Atmel 7.5ns products).  However, 74LVC’s TPD is more affected by loading than is a GAL.  It all depends on what you want to achieve.  One GAL can do the work of multiple LVC gates, and if needed, in a more complex way.  Also, as long as a GAL design doesn’t use pins as feedback nodes, the advertised TPD is guaranteed.  With discrete gates, cascaded prop time is always a variable.
x86?  We ain't got no x86.  We don't NEED no stinking x86!
plasmo
Posts: 1273
Joined: 21 Dec 2018
Location: Albuquerque NM USA

Re: Zero glue logic 6502 SBC?

Post by plasmo »

I would speculate CS high tied to clock is the critical propagation path. W65C02 generates valid addresses quite quickly, so the decoding through GAL or ACT/LVC gate may be done before clock goes high. I do agree with BDD that a gate is faster than GAL. On the other hand, GAL has sufficient sum-of-product terms to form a small ROM the contains sufficient code to bootstrap from CF disk. That can be an interesting minimal design, too.
Regarding the missing vectors in high memory, I’m thinking of 8 resistors wired to value of $02, so interrupts are mapped to $0202. However, resistors may be too slow to work at 30+ MHz unless they are low values. I can also wire one of the resistor to address A[1] so IRQ vector is different from NMI vector.
Working on wiring CF interface to W65C22. To save I/O pins, CF’s data bus is connected directly to 6502 data bus which are additional loads limiting its max clock. <— oh, never mind, I just realize I have to drive CF data bus with 6522 port. I can play tricks with 3 CF address lines, but data need to be latched.
Bill
PS, in case you’ve not noticed, this “design” is work-in-progress, or more bluntly, making-stuff-up-as-I-go!
Attachments
IMG_5776.jpeg
plasmo
Posts: 1273
Joined: 21 Dec 2018
Location: Albuquerque NM USA

Re: Zero glue logic 6502 SBC?

Post by plasmo »

This is bottom view of the ZG6502 with CF interface added. The CF interface used 14 IO pins of W65C22; 8-bit data bus on port A and 6 IO on port B for addresses and CF controls. Serial bit-bang and CF interface used up all port A&B IO pins. I think I'll do SD interface instead because that only uses 4 IO pins.
Anyway, I'm able to read CF data reliably with 14.7MHz CPU clock. I'll do a speed test to check out the CF read and write access time.
Bill
Nov 11 update: it takes 23 seconds to read 8 megabytes of CF data (16384 sectors) at 14.7Mhz, that’s 360kB per second transfer rate.
Attachments
ZG6502Rev1_CF_serial_I2C_bottom.jpg
ZG6502R1schematic_CF_serial_I2C.pdf
(26.37 KiB) Downloaded 18 times
plasmo
Posts: 1273
Joined: 21 Dec 2018
Location: Albuquerque NM USA

Re: Zero glue logic 6502 SBC?

Post by plasmo »

I want to preserve both bitbang serial port as well as bitbang I2C function while implementing the CF interface. So I modified the prototype CF interface and assigned 6522’s CA2 and CB2 to CF read and write controls. The resulting CF interface is somewhat slower, but the I2C function is preserved. The CF transfer rate is 350KB per second with 14.7mhz 6502.
My goal is a demonstration program that reads video images from CF and displays on an I2C OLED display.
Bill
plasmo
Posts: 1273
Joined: 21 Dec 2018
Location: Albuquerque NM USA

Re: Zero glue logic 6502 SBC?

Post by plasmo »

15 seconds of BadApple playing on OLED display over I2C interface. The image is stored in CF disk; each image is 1KB that occupies 2 sectors of CF disk. The image is read into a buffer and then bit-bang I2C to the 128x64 OLED display. Each frame takes 37mS, bulk of the time is bit-banging the I2C, CF access only needs 3mS. 6502 clock is 14.7Mhz. This demonstrates ZG6502 can support serial port, I2C port, and CF interface without any glue logic.

https://www.youtube.com/watch?v=kuePpqKVDWw

Bill
plasmo
Posts: 1273
Joined: 21 Dec 2018
Location: Albuquerque NM USA

Re: Zero glue logic 6502 SBC?

Post by plasmo »

The next test is see whether ZG6502 can be overclocked to 32.3MH like before. Since serial port, I2C port, and CF port are accessed through W65C22, there are no additional loading on 6502 data bus so it should run up to 32.3MHz. The question is whether W65C22 can operate all the port A, B, CB2, and CA2 correctly at 32.3MHz. The answer is 'yes'! Once ZG6502 has booted from W27C512 ROM at 14.7MHz and running in 10nS RAM, DS1086 clock is cranked up to 32.3MHz. I can then successfully load the BadApple software via bit-bang serial port. Then I can run the software which reads images from CF disk and writes to I2C. Everything ran like yesterday's post, except more than twice as fast. I measured each frame as 16.7mS with CF access accounts for 1.5mS and I2C access 15.2mS. Current consumption of BadApple at 14.7MHz is 77mA, 105mA at 32.3mHz.
Bill
User avatar
Dr Jefyll
Posts: 3525
Joined: 11 Dec 2009
Location: Ontario, Canada
Contact:

Re: Zero glue logic 6502 SBC?

Post by Dr Jefyll »

plasmo wrote:
The question is whether W65C22 can operate all the port A, B, CB2, and CA2 correctly at 32.3MHz. The answer is 'yes'!
[...]
Everything ran like yesterday's post, except more than twice as fast.
:shock:

Nice work, Bill! In particular, it's nice to see a VIA smokin' along at a pace like this!

-- Jeff
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html
User avatar
BigDumbDinosaur
Posts: 9425
Joined: 28 May 2009
Location: Midwestern USA (JB Pritzker’s dystopia)
Contact:

Re: Zero glue logic 6502 SBC?

Post by BigDumbDinosaur »

Dr Jefyll wrote:
plasmo wrote:
The question is whether W65C22 can operate all the port A, B, CB2, and CA2 correctly at 32.3MHz.  The answer is 'yes'!
[...]
Everything ran like yesterday's post, except more than twice as fast.
:shock:

Nice work, Bill!  In particular, it's nice to see a VIA smokin' along at a pace like this!
Ah, let’s hope not literally smokin’.  Next thing you know, Bill will be describing his new liquid cooling system for the MPU and VIA.  :shock:  :shock:
x86?  We ain't got no x86.  We don't NEED no stinking x86!
plasmo
Posts: 1273
Joined: 21 Dec 2018
Location: Albuquerque NM USA

Re: Zero glue logic 6502 SBC?

Post by plasmo »

I’m pleased to see W65C22 can keep up with W65C02. VIA is widely used in 6502 designs for many good reasons, successfully pairing with W65C02 at high speed is another good reason.
I also like using DS1086 as “turbo” speed control. I’ve wondered whether W65C134’s 16Mhz top speed is due to speed limitation of the internal ROM, now I can find out by speed up DS1086 clock while running tests in external RAM.
I wonder how fast can ZG6502 go inside a freezer? I need to put it in a plastic bag and suck out the air so moisture won’t condense…hmm.
Bill
barnacle
Posts: 1831
Joined: 19 Jan 2004
Location: Potsdam, DE
Contact:

Re: Zero glue logic 6502 SBC?

Post by barnacle »

Is there any noticeable/measurable heat increase in the parts at those speeds?

Neil
User avatar
AndrewP
Posts: 368
Joined: 30 Aug 2021
Location: South Africa

Re: Zero glue logic 6502 SBC?

Post by AndrewP »

plasmo wrote:
I wonder how fast can ZG6502 go inside a freezer?
barnacle wrote:
Is there any noticeable/measurable heat increase in the parts at those speeds?
Not that I noticed. Had a 65C816 running stably at 36MHz at 5V for a couple of days and it still felt like it was at room temperature when I put my finger on it. (I can't remember values but I think the whole board was drawing 80mA and it turned out 40mA of that was the power LED or some value similarly ridiculous)

I did briefly experiment with overvoltaging the '816 (separate experiment) and whilst the data-sheet shows an absolute maxing rating for the supply voltage of 7V I seem to remember the current draw doubled quite fast. Like at 5.5V fast. And quadrupled again quite fast after that (and then I never went further). Hopefully Plasmo (or anyone who has overvoltaged 65x chips) has kept their notes and can fill in my failing memory.

Anyway, where I was going with this is that an overvoltaged (and overclocked) '816 or '02 might benefit from active cooling given the increase in current - if my memory is correct.
Post Reply