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?
Zero glue logic 6502 SBC?
- BigDumbDinosaur
- Posts: 9425
- Joined: 28 May 2009
- Location: Midwestern USA (JB Pritzker’s dystopia)
- Contact:
Re: Zero glue logic 6502 SBC?
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!
Re: Zero glue logic 6502 SBC?
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
Bill
- BigDumbDinosaur
- Posts: 9425
- Joined: 28 May 2009
- Location: Midwestern USA (JB Pritzker’s dystopia)
- Contact:
Re: Zero glue logic 6502 SBC?
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!
Re: Zero glue logic 6502 SBC?
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.
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)?
- BigDumbDinosaur
- Posts: 9425
- Joined: 28 May 2009
- Location: Midwestern USA (JB Pritzker’s dystopia)
- Contact:
Re: Zero glue logic 6502 SBC?
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!
Re: Zero glue logic 6502 SBC?
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!
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!
Re: Zero glue logic 6502 SBC?
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.
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
-
- ZG6502R1schematic_CF_serial_I2C.pdf
- (26.37 KiB) Downloaded 18 times
Re: Zero glue logic 6502 SBC?
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
My goal is a demonstration program that reads video images from CF and displays on an I2C OLED display.
Bill
Re: Zero glue logic 6502 SBC?
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
https://www.youtube.com/watch?v=kuePpqKVDWw
Bill
Re: Zero glue logic 6502 SBC?
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
Bill
Re: Zero glue logic 6502 SBC?
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.
[...]
Everything ran like yesterday's post, except more than twice as fast.
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
https://laughtonelectronics.com/Arcana/ ... mmary.html
- BigDumbDinosaur
- Posts: 9425
- Joined: 28 May 2009
- Location: Midwestern USA (JB Pritzker’s dystopia)
- Contact:
Re: Zero glue logic 6502 SBC?
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.
[...]
Everything ran like yesterday's post, except more than twice as fast.
Nice work, Bill! In particular, it's nice to see a VIA smokin' along at a pace like this!
x86? We ain't got no x86. We don't NEED no stinking x86!
Re: Zero glue logic 6502 SBC?
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
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
Re: Zero glue logic 6502 SBC?
Is there any noticeable/measurable heat increase in the parts at those speeds?
Neil
Neil
Re: Zero glue logic 6502 SBC?
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?
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.