André's 8-bit Pages  Projects  Code  Resources  Tools  Forum
search

(Google, in new window)
share
follow
Follow my 8-bit tweets on
Twitter
(In new window)
discuss

Discuss my site on this 6502.org forum thread

(Forum registration required to post)

Hot!

Dive into the retro feeling and build yourself a Commodore PET replica

Need more speed? Speed up your 6502 computer with this 10 MHz 6502 CPU replacement board

Interested in electronics design? Look at the design lesson I got from Bil Herd, the hardware designer of the C128

Want 64bit? - pimp the 6502 with the 65k processor design!

You are using an old MS Internet Explorer as browser. This version is not supported anymore. Please use a more modern browser, like Internet Explorer 8 or later, Firefox, Google Chrome, or Opera.

CS/A65 CPU

This board implements the main 6502 CPU board. It extends the 6502 cpu with a memory management unit (MMU) to achieve a 1 MByte address space. The board also contains the reset circuit, addressing logic for the I/O address space, clock and dRAM signal generation (2Phi2), bus drivers, and - in the newer versions - bus error detection circuits.
 

Table of content

Version: 2.0K

Status: ok

Notes

 
This version only improves the layout, in that it finally has decent GND and VCC power supply networks. Otherwise unchanged from 2.0J. Note that ICs should be 'ALS. I tried to use 'HCT drivers (the '245) but they produced slightly different signals when the CPU was replaced by the PET816 CPU card, which produced errors on the VDC access... With 'ALS it seems to work.

Files

 
csa_cpu_v2.0h-desc.txt
 
csa_cpu_v2.0h-parts.txt
 
csa_cpu_v2.0k.sch
 
csa_cpu_v2.0k_sch.png
 
csa_cpu_v2.0k.brd
 
csa_cpu_v2.0k_brd.png

Version: 2.0J

Status: ok

Notes

 
This version improves on the timing. 2Phi2 is now driven by the XOR, not the actual bus driver anymore. This does not make signal quality better but improves timing such that it is rock stable. IC3 is now an 'ALS as well.

Files

 
csa_cpu_v2.0h-desc.txt
 
csa_cpu_v2.0h-parts.txt
 
csa_cpu_v2.0j.sch
 
csa_cpu_v2.0j_sch.png
 
csa_cpu_v2.0j.brd
 
csa_cpu_v2.0j_brd.png

Version: 2.0H

Status: prototype

Notes

 
Version 2.0H implements all the features mentioned above. There is an Eagle(tm) schematics and also layout available. The schematics and layout are not yet tested in a prototype board.
 
This board has not yet been tested.
 
The TTL types are mostly 'ALS technology, which is faster and less power-hungry than 'LS. In one place, however, I needed to fall back to 'LS: IC3 is still a 74LS245 instead of a 74ALS245, as it seemed that the 6522 on the PETIO board did not like it. Don't ask me why, I don't know.
 
This board implements new features, in that bus errors like writing on a write protected page, accessing a page that is not mapped, and also fetching an opcode from a "no-execute" page! This feature is similar to the new feature implemented in the PC processors, to protect from buffer overflows.

Files

 
csa_cpu_v2.0h-desc.txt
 
csa_cpu_v2.0h-parts.txt
 
csa_cpu_v2.0h.sch
 
csa_cpu_v2.0h-sch.png
 
csa_cpu_v2.0h.brd
 
csa_cpu_v2.0h-lay.png

Version: 2.0G

Status: prototype with bugs

Notes

 
Version 2.0G implements all the features mentioned above. There is an Eagle(tm) schematics and also layout available. The schematics and layout are tested in a prototype board.
 
This version has a severe bug (that can be fixed, though): the mmu inputs RS0-RS3 are connected to the BUSA0-BUSA3 in the wrong order. Due to the way the address bits are connected, it should have RS0 connected to BUSA3 and so on.

Files

 
csa_cpu_v2.0g.sch
 
csa_cpu_v2.0g-sch.png
 
csa_cpu_v2.0g.brd
 
csa_cpu_v2.0g-lay.png
 
csa_cpu_v2.0g.jpg(Without CPU, to see the driver underneath)

Version: 1.3B

Status: ok

Notes

 
This version implements an additional write protection circuit. I.e. an additional mmu bit is used to disable the memory access to the selected memory.
 
This schematics is only available as a "diff" to the 1.2C version.

Files

 
cpu65wpdesc.txt
 
cpu65wp.png
 
cpu65wp.fig
 
cpu65wp.ps.gz

Version: 1.2C

Status: ok

Notes

 
This is the original cpu board. It implements most features, but not the bus error detection circuits.

Files

 
cpu65desc.txt
 
cpu65parts.txt
 
cpu65.png
 
cpu65.fig
 
cpu65.ps.gz
 
cpu65.jpg(The IC on top and the 74LS244 on the right are testbeds for the new 2Phi2 generation and the write protect as implemented in newer versions)
block diagram
Block diagram of the cpu board. It shows the MMU, but also the port to read the CPU address. Please note that the MMU and the port can be accessed from the bus alone, if the cpu is decoupled from the bus with the drivers. This can be used when the cpu is stopped with the RDY e.g. by a bus error.

Last modified: 2006-10-13.

Return to Homepage