Want to build a 65816 system

Building your first 6502-based project? We'll help you get started here.
Post Reply
nbrok
Posts: 5
Joined: 06 Mar 2021

Want to build a 65816 system

Post by nbrok »

Hello,

I'm Nick and have a lot of experience building 68xx and Z80 microcomputers. I found a 65C816 while cleaning up my hobby-room. I tried to design a schematic that should give a working computer, but after reading some posts in this forum I am confused. I think it will not work at all. See attached schematic. Any commnets and hints are very welcome.
Attachments
65816scrumpel9.pdf
Draft schematic 65816 computer
(132.46 KiB) Downloaded 98 times
Greetings,

Nick
User avatar
BigEd
Posts: 11463
Joined: 11 Dec 2008
Location: England
Contact:

Re: Want to build a 65816 system

Post by BigEd »

Welcome Nick!

You're asking quite a lot, to review such a schematic, but maybe someone will help.

Possibly you could help out by drawing and explaining the logic: we can assume that know how to connect address and data busses, but the common difficulties are with the glue logic, especially the clock (if that's not trivial) the chip select and write enables for various chips, and in the case of an '816 design, the latching of high address bits.
nbrok
Posts: 5
Joined: 06 Mar 2021

Re: Want to build a 65816 system

Post by nbrok »

This is the corrected version, thanks to Handyandy. Remarks still welcome.
Attachments
65816scrumpel9.pdf
Corrected version of the schematic
(127.3 KiB) Downloaded 85 times
Greetings,

Nick
User avatar
Dr Jefyll
Posts: 3525
Joined: 11 Dec 2009
Location: Ontario, Canada
Contact:

Re: Want to build a 65816 system

Post by Dr Jefyll »

Welcome, Nick!

I see lots of logic chips which are labeled as being HCT series. Is this just a default notation supplied by the schematic software, or do you actually intend to use HCT? Based on a quick scan of the drawing, I notice only one chip (the '245 transceiver) that'll experience less than rail-to-rail swings at its inputs and will thus require one of the "T" variant families such as HCT. (And BTW for the transceiver I'd consider an 'AHCT245 rather than 'HCT245.)

As you may be aware, most (all?) of the other glue can use a non-T variant such as HC. (T variants will work but T series inputs have somewhat less noise margin than non-T. For hobby applications it's probably not enough to matter. But, other things being equal, I suggest you avoid T series except where it's necessary.)

This part (below) is probably alright, but as noted I'd switch the HCT to HC. Or, for the NAND's, I'd consider using 'AHC. It's important that the /WR signal not be unduly delayed, and AHC series logic is faster than HC (AC too is faster but with AC certain precautions apply).
nbrok excerpt1.png
Re the LED's (below), I guess you know you could save at least one inverter. The cpu's E output is strong enough to drive the LED directly, and the RXD signal could use just a single inverter. In each case the LED would need its other lead moved from Vcc to Gnd. And of course none of this matters if you have lots of extra inverters available. :)
nbrok excerpt2.png
Finally, I see the 8 MHz clock oscillator connects directly to the '816 clock input. Is the osc capable of providing fast the rise & fall times which the '816 clock input prefers? I'd consider using an AC or AHC series gate as a buffer between the osc and the cpu clock input.

Sorry not to have any more substantial comments, for example on subjects such as address decoding and others. Your schematic is drawn more or less as a net list, and I'm one of the folks who find that a real impediment. The choice is up to you, of course. But IMO it's a write-only approach, unfriendly to those trying to read the schematic. In future could you maybe at least separate the address, data and control buses? Cheers,

Jeff
In 1988 my 65C02 got six new registers and 44 new full-speed instructions!
https://laughtonelectronics.com/Arcana/ ... mmary.html
User avatar
drogon
Posts: 1671
Joined: 14 Feb 2018
Location: Scotland
Contact:

Re: Want to build a 65816 system

Post by drogon »

nbrok wrote:
This is the corrected version, thanks to Handyandy. Remarks still welcome.
Hi,

Nice to see another '816 project - go for it!

I'm glanced at the schematic - not in any great detail so not checked the actual logic, etc. but I see:

8KB Flash eeprom
2 x 512KB SRAM (1MB, Nice!)
6522 VIA
65C51 UART

with some TTL to decode and latch to upper 8 address bus lines.

Things I note:

You're not using the CA or CB pins out of the VIA. These are handy extra pins, also usable for e.g. a parallel printer interface or high(ish) speed parallel transfer bus and so on.

Not connected the IRQ pin from the 6522 either? You might want that to get it to generate nice timer interrupts.

The 65c51 has a bug to do with the Tx side - the transmit clear bit in the status register is always clear, so you need either an alternative timer interrupt (which the VIA can provide) or a software loop...

To me, there is too much "glue" logic, however you may be trying to stay faithful to a retro style design then that's fine by me - I "cheated" with a couple of GALs.

8Mhz is a good target speed too.

Let us know how you're getting on with it!

Cheers,

-Gordon
--
Gordon Henderson.
See my Ruby 6502 and 65816 SBC projects here: https://projects.drogon.net/ruby/
Post Reply