Difference between revisions of "RETRO-65C816"
Jump to navigation
Jump to search
Blwikiadmin (talk | contribs) |
Blwikiadmin (talk | contribs) |
||
Line 575: | Line 575: | ||
{| class="wikitable" | {| class="wikitable" | ||
+ | ! U8 PIN | ||
+ | ! EP4CE15 | ||
+ | ! EP4CE55 | ||
+ | ! 5CEFA2 | ||
+ | ! 10C1006 | ||
+ | ! J1 | ||
+ | ! Function | ||
+ | ! | ||
! U8 PIN | ! U8 PIN | ||
! EP4CE15 | ! EP4CE15 | ||
Line 590: | Line 598: | ||
| N/C | | N/C | ||
| | | | ||
− | | | + | | |
| 2 | | 2 | ||
| GND | | GND | ||
Line 606: | Line 614: | ||
| J1-1 | | J1-1 | ||
| | | | ||
− | | | + | | |
| 4 | | 4 | ||
| 3.3V | | 3.3V | ||
Line 622: | Line 630: | ||
| N/C | | N/C | ||
| | | | ||
− | | | + | | |
| 6 | | 6 | ||
| GND | | GND | ||
Line 638: | Line 646: | ||
| N/C | | N/C | ||
| CPUE | | CPUE | ||
− | | | + | | |
| 8 | | 8 | ||
| PIN_AB13 | | PIN_AB13 | ||
Line 654: | Line 662: | ||
| J1-4 | | J1-4 | ||
| CPUMX | | CPUMX | ||
− | | | + | | |
| 10 | | 10 | ||
| PIN_AB14 | | PIN_AB14 | ||
Line 670: | Line 678: | ||
| J1-6 | | J1-6 | ||
| CPUBE | | CPUBE | ||
− | | | + | | |
| 12 | | 12 | ||
| PIN_AB15 | | PIN_AB15 | ||
Line 686: | Line 694: | ||
| J1-8 | | J1-8 | ||
| CPURWB | | CPURWB | ||
− | | | + | | |
| 14 | | 14 | ||
| PIN_AB16 | | PIN_AB16 | ||
Line 702: | Line 710: | ||
| J1-10 | | J1-10 | ||
| CPUVDA | | CPUVDA | ||
− | | | + | | |
| 16 | | 16 | ||
| PIN_AB17 | | PIN_AB17 | ||
Line 718: | Line 726: | ||
| J1-12 | | J1-12 | ||
| CPUVPA | | CPUVPA | ||
− | | | + | | |
| 18 | | 18 | ||
| PIN_AB18 | | PIN_AB18 | ||
Line 734: | Line 742: | ||
| J1-14 | | J1-14 | ||
| CPUVPB | | CPUVPB | ||
− | | | + | | |
| 20 | | 20 | ||
| PIN_AB19 | | PIN_AB19 | ||
Line 750: | Line 758: | ||
| I1-16 | | I1-16 | ||
| | | | ||
− | | | + | | |
| 22 | | 22 | ||
| PIN_AB20 | | PIN_AB20 | ||
Line 766: | Line 774: | ||
| J1-18 | | J1-18 | ||
| | | | ||
− | | | + | | |
| 24 | | 24 | ||
| PIN_Y21 | | PIN_Y21 | ||
Line 782: | Line 790: | ||
| J1-20 | | J1-20 | ||
| | | | ||
− | | | + | | |
| 26 | | 26 | ||
| PIN_W21 | | PIN_W21 | ||
Line 798: | Line 806: | ||
| J1-22 | | J1-22 | ||
| | | | ||
− | | | + | | |
| 28 | | 28 | ||
| PIN_V21 | | PIN_V21 | ||
Line 814: | Line 822: | ||
| J1-24 | | J1-24 | ||
| | | | ||
− | | | + | | |
| 30 | | 30 | ||
| PIN_U21 | | PIN_U21 | ||
Line 830: | Line 838: | ||
| J1-26 | | J1-26 | ||
| | | | ||
− | | | + | | |
| 32 | | 32 | ||
| PIN_R21 | | PIN_R21 | ||
Line 846: | Line 854: | ||
| J1-28 | | J1-28 | ||
| | | | ||
− | | | + | | |
| 34 | | 34 | ||
| PIN_P21 | | PIN_P21 | ||
Line 862: | Line 870: | ||
| J1-30 | | J1-30 | ||
| | | | ||
− | | | + | | |
| 36 | | 36 | ||
| PIN_N21 | | PIN_N21 | ||
Line 878: | Line 886: | ||
| J1-32 | | J1-32 | ||
| | | | ||
− | | | + | | |
| 38 | | 38 | ||
| PIN_M21 | | PIN_M21 | ||
Line 894: | Line 902: | ||
| J1-34 | | J1-34 | ||
| | | | ||
− | | | + | | |
| 40 | | 40 | ||
| PIN_L21 | | PIN_L21 | ||
Line 910: | Line 918: | ||
| J1-36 | | J1-36 | ||
| | | | ||
− | | | + | | |
| 42 | | 42 | ||
| PIN_K21 | | PIN_K21 | ||
Line 926: | Line 934: | ||
| J1-38 | | J1-38 | ||
| | | | ||
− | | | + | | |
| 44 | | 44 | ||
| PIN_J21 | | PIN_J21 | ||
Line 942: | Line 950: | ||
| J1-40 | | J1-40 | ||
| | | | ||
− | | | + | | |
| 46 | | 46 | ||
| PIN_H21 | | PIN_H21 | ||
Line 958: | Line 966: | ||
| J1-42 | | J1-42 | ||
| | | | ||
− | | | + | | |
| 48 | | 48 | ||
| PIN_F21 | | PIN_F21 | ||
Line 974: | Line 982: | ||
| J1-44 | | J1-44 | ||
| | | | ||
− | | | + | | |
| 50 | | 50 | ||
| PIN_E21 | | PIN_E21 | ||
Line 990: | Line 998: | ||
| J1-46 | | J1-46 | ||
| | | | ||
− | | | + | | |
| 52 | | 52 | ||
| PIN_D21 | | PIN_D21 | ||
Line 1,006: | Line 1,014: | ||
| J1-48 | | J1-48 | ||
| | | | ||
− | | | + | | |
| 54 | | 54 | ||
| PIN_C21 | | PIN_C21 | ||
Line 1,022: | Line 1,030: | ||
| N/C | | N/C | ||
| | | | ||
− | | | + | | |
| 56 | | 56 | ||
| PIN_B21 | | PIN_B21 | ||
Line 1,038: | Line 1,046: | ||
| N/C | | N/C | ||
| | | | ||
− | | | + | | |
| 58 | | 58 | ||
| PIN_N19 | | PIN_N19 | ||
Line 1,054: | Line 1,062: | ||
| N/C | | N/C | ||
| | | | ||
− | | | + | | |
| 60 | | 60 | ||
| PIN_M19 | | PIN_M19 | ||
Line 1,070: | Line 1,078: | ||
| J1-50 | | J1-50 | ||
| | | | ||
− | | | + | | |
| 62 | | 62 | ||
| GND | | GND | ||
Line 1,080: | Line 1,088: | ||
|- | |- | ||
| 63 | | 63 | ||
− | | | + | | +5V |
− | | | + | | +5V |
− | | | + | | +5V |
− | | | + | | +5V |
| J1-50 | | J1-50 | ||
| | | | ||
− | | | + | | |
| 64 | | 64 | ||
− | | | + | | +5V |
− | | | + | | +5V |
− | | | + | | +5V |
− | | | + | | +5V |
| J1-50 | | J1-50 | ||
| | | |
Revision as of 21:06, 27 August 2022
Contents
- 1 Features
- 2 65C816 CPU
- 3 Connectors
- 4 Mechanicals
- 5 MultiComp On RETRO-65C816 VHDL Code
- 6 References/Notes
- 7 Revision History
- 8 Videos
- 9 Assembly Sheet
Features
- Design based on RETRO-EP4CE15 card
- Adds 65C816 CPU
- 5V level translator for keyboard
- 5V header moved to board edge
- 65C816 CPU
- 3.3V
- 8 MHz
- All pins are brought to FPGA
- Address A0-A15 and Data lines also go directly to the SRAM
- FPGA can have the ROM internally or download it to the SRAM
- 1MB SRAM
- 45nS access time
- USB B
- FTDI USB to TTL
- Tx/Rx LEDs
- VGA
- 2:2:2 R:G:B
- PS/2 keyboard
- 5V KEYBOARD
- Level translator to 3.3V for FPGA
- SD card socket
- Full-sized SD
- QMTECH FPGA card mounts on top
- 95x95mm card
- ODAS form factor
- (4) 6-32 Mounting holes
65C816 CPU
Block Diagram
Timing
Connectors
H1 - 5V
- Install jumper to power card from USB
H2 - VREG I/O Conn
- Power to J1
J1 - I/O Connector
- 50-pin I/O Connector
J2 - Keyboard
- 1x4 header
J3 - 6 FPGA pins
J4 - USB B Serial/Power
- Serial to/from FTDI
- Can power the card
J5 - 5V/GND
- 5V/ground for external 5V logic
J7 Pin Mapping Card to FPGA pins - Right connector
U7 PIN | EP4CE15 | EP4CE55 | 5CEFA2 | CYC 10 | FUNCTION | U7 PIN | EP4CE15 | EP4CE55 | 5CEFA2 | CYC 10 | FUNCTION | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | GND | GND | GND | GND | GND | 2 | GND | GND | GND | GND | GND | |
3 | 3.3V | 3.3V | 3.3V | 3.3V | 3.3V | 4 | 3.3V | 3.3V | 3.3V | 3.3V | 3.3V | |
5 | GND | GND | GND | GND | GND | 6 | GND | GND | GND | GND | GND | |
7 | PIN_R1 | PIN_R1 | PIN_AA2 | PIN_G1 | PS2CLK | 8 | PIN_R2 | PIN_R2 | PIN_AA1 | PIN_G2 | PS2DAT | |
9 | PIN_P1 | PIN_P1 | PIN_Y3 | PIN_D1 | SRAMA4 | 10 | PIN_P2 | PIN_P2 | PIN_W2 | PIN_C2 | SRAMA5 | |
11 | PIN_N1 | PIN_N1 | PIN_U1 | PIN_B1 | SRAMA3 | 12 | PIN_N2 | PIN_N2 | PIN_U2 | PIN_F5 | SRAMA6 | |
13 | PIN_M1 | PIN_M1 | PIN_N1 | PIN_D3 | SRAMA2 | 14 | PIN_M2 | PIN_M2 | PIN_N2 | PIN_C3 | SRAMA7 | |
15 | PIN_J1 | PIN_J1 | PIN_L1 | PIN_B3 | SRAMA1 | 16 | PIN_J2 | PIN_J2 | PIN_L2 | PIN_A3 | SRAM0E_N | |
17 | PIN_H1 | PIN_H1 | PIN_G1 | PIN_B4 | SRAMA0 | 18 | PIN_H2 | PIN_H2 | PIN_G2 | PIN_A4 | SRAMA8 | |
19 | PIN_F1 | PIN_F1 | PIN_E2 | PIN_E5 | SRAMCS_N | 20 | PIN_F2 | PIN_F2 | PIN_D3 | PIN_A2 | SRAMD7 | |
21 | PIN_E1 | PIN_E1 | PIN_C1 | PIN_D4 | SRAMD0 | 22 | PIN_D2 | PIN_D2 | PIN_C2 | PIN_E6 | SRAMD6 | |
23 | PIN_C1 | PIN_C1 | PIN_G6 | PIN_C6 | SRAMD1 | 24 | PIN_C2 | PIN_C2 | PIN_H6 | PIN_D6 | SRAMD5 | |
25 | PIN_B1 | PIN_B1 | PIN_G8 | PIN_B5 | SRAMD2 | 26 | PIN_B2 | PIN_B2 | PIN_H8 | PIN_A5 | SRAMD4 | |
27 | PIN_B3 | PIN_B3 | PIN_F7 | PIN_B6 | SRAMD3 | 28 | PIN_A3 | PIN_A3 | PIN_E7 | PIN_A6 | SRAMA9 | |
29 | PIN_B4 | PIN_B4 | PIN_D6 | PIN_B7 | SRAMWE_N | 30 | PIN_A4 | PIN_A4 | PIN_C6 | PIN_A7 | SRAMA10 | |
31 | PIN_C4 | PIN_C4 | PIN_E9 | PIN_D8 | SRAMA19 | 32 | PIN_C3 | PIN_C3 | PIN_D9 | PIN_C8 | SRAMA11 | |
33 | PIN_B5 | PIN_B5 | PIN_B5 | PIN_D9 | SRAMA18 | 34 | PIN_A5 | PIN_A5 | PIN_A5 | PIN_C9 | SRAMA12 | |
35 | PIN_B6 | PIN_B6 | PIN_B6 | PIN_B8 | SRAMA17 | 36 | PIN_A6 | PIN_A6 | PIN_B7 | PIN_A8 | SRAMA13 | |
37 | PIN_B7 | PIN_B7 | PIN_A7 | PIN_B9 | SRAMA16 | 38 | PIN_A7 | PIN_A7 | PIN_A8 | PIN_A9 | SRAMA14 | |
39 | PIN_B8 | PIN_B8 | PIN_A9 | PIN_E9 | N/C | 40 | PIN_A8 | PIN_A8 | PIN_A10 | PIN_E8 | SRAMA15 | |
41 | PIN_B9 | PIN_B9 | PIN_B10 | PIN_E11 | CARDDET | 42 | PIN_A9 | PIN_A9 | PIN_C9 | PIN_E10 | N/C | |
43 | PIN_B10 | PIN_B10 | PIN_G10 | PIN_A10 | USBRX/FPGATX | 44 | PIN_A10 | PIN_A10 | PIN_F10 | PIN_B10 | USBCTS/FPGARTS | |
45 | PIN_B13 | PIN_B13 | PIN_C11 | PIN_D12 | USBTX/FPGARX | 46 | PIN_A13 | PIN_A13 | PIN_B11 | PIN_D11 | UBSRTS/FPGACTS | |
47 | PIN_B14 | PIN_B14 | PIN_B12 | PIN_B11 | REDHI | 48 | PIN_A14 | PIN_A14 | PIN_A12 | PIN_A11 | REDMID | |
49 | PIN_B15 | PIN_B15 | PIN_E12 | PIN_B12 | REDLO | 50 | PIN_A15 | PIN_A15 | PIN_D12 | PIN_A12 | GRNHI | |
51 | PIN_B16 | PIN_B16 | PIN_D13 | PIN_B13 | GRNMID | 52 | PIN_A16 | PIN_A16 | PIN_C13 | PIN_A13 | GRNLO | |
53 | PIN_B17 | PIN_B17 | PIN_B13 | PIN_B14 | BLUHI | 54 | PIN_A17 | PIN_A17 | PIN_A13 | PIN_A14 | BLULO | |
55 | PIN_B18 | PIN_B18 | PIN_A15 | PIN_D14 | HSYNC | 56 | PIN_A18 | PIN_A18 | PIN_A14 | PIN_C14 | VSYNC | |
57 | PIN_B19 | PIN_B19 | PIN_B15 | PIN_B16 | SDCS_N | 58 | PIN_A19 | PIN_A19 | PIN_C15 | PIN_A15 | SD_MOSI | |
59 | PIN_B20 | PIN_B20 | PIN_C16 | PIN_C16 | SD_SCK | 60 | PIN_A20 | PIN_A20 | PIN_B16 | PIN_C15 | SD_MISO | |
61 | GND | GND | GND | GND | GND | 62 | GND | GND | GND | GND | GND | |
63 | VIN | VIN | VIN | VIN | VIN | 64 | VIN | VIN | VIN | VIN | VIN |
J8 Pin Mapping Card to FPGA pins - Left connector
U8 PIN | EP4CE15 | EP4CE55 | 5CEFA2 | 10C1006 | J1 | Function | U8 PIN | EP4CE15 | EP4CE55 | 5CEFA2 | 10C1006 | J1 | Function | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | GND | GND | GND | GND | N/C | 2 | GND | GND | GND | GND | N/C | |||
3 | 3.3V | 3.3V | 3.3V | 3.3V | J1-1 | 4 | 3.3V | 3.3V | 3.3V | 3.3V | J1-2 | |||
5 | GND | GND | GND | GND | N/C | 6 | GND | GND | GND | GND | N/C | |||
7 | PIN_AA13 | PIN_AA13 | PIN_AA14 | PIN_R9 | N/C | CPUE | 8 | PIN_AB13 | PIN_AB13 | PIN_AA13 | PIN_T9 | N/C | CPURES* | |
9 | PIN_AA14 | PIN_AA14 | PIN_AA15 | PIN_R10 | J1-4 | CPUMX | 10 | PIN_AB14 | PIN_AB14 | PIN_AB15 | PIN_T10 | J1-3 | CPUCLK | |
11 | PIN_AA15 | PIN_AA15 | PIN_Y15 | PIN_R11 | J1-6 | CPUBE | 12 | PIN_AB15 | PIN_AB15 | PIN_Y13 | PIN_T11 | J1-5 | CPUNMIB | |
13 | PIN_AA16 | PIN_AA16 | PIN_AB18 | PIN_R12 | J1-8 | CPURWB | 14 | PIN_AB16 | PIN_AB16 | PIN_AB17 | PIN_T12 | J1-7 | CPUIRQB | |
15 | PIN_AA17 | PIN_AA17 | PIN_Y7 | PIN_N9 | J1-10 | CPUVDA | 16 | PIN_AB17 | PIN_AB17 | PIN_Y16 | PIN_M9 | J1-9 | CPUABORTB | |
17 | PIN_AA18 | PIN_AA18 | PIN_AA18 | PIN_M10 | J1-12 | CPUVPA | 18 | PIN_AB18 | PIN_AB18 | PIN_AA17 | PIN_P9 | J1-11 | CPURDY | |
19 | PIN_AA19 | PIN_AA19 | PIN_AA20 | PIN_P11 | J1-14 | CPUVPB | 20 | PIN_AB19 | PIN_AB19 | PIN_AA19 | PIN_N11 | J1-13 | CPUMLB | |
21 | PIN_AA20 | PIN_AA20 | PIN_Y20 | PIN_R13 | I1-16 | 22 | PIN_AB20 | PIN_AB20 | PIN_Y19 | PIN_T13 | J1-15 | |||
23 | PIN_Y22 | PIN_Y22 | PIN_AB21 | PIN_T15 | J1-18 | 24 | PIN_Y21 | PIN_Y21 | PIN_AB20 | PIN_T14 | J1-17 | |||
25 | PIN_W22 | PIN_W22 | PIN_AA22 | PIN_N12 | J1-20 | 26 | PIN_W21 | PIN_W21 | PIN_AB22 | PIN_M11 | J1-19 | |||
27 | PIN_V22 | PIN_V22 | PIN_W22 | PIN_R14 | J1-22 | 28 | PIN_V21 | PIN_V21 | PIN_Y22 | PIN_N13 | J1-21 | |||
29 | PIN_U22 | PIN_U22 | PIN_Y21 | PIN_N14 | J1-24 | 30 | PIN_U21 | PIN_U21 | PIN_W21 | PIN_P14 | J1-23 | |||
31 | PIN_R22 | PIN_R22 | PIN_U22 | PIN_P16 | J1-26 | 32 | PIN_R21 | PIN_R21 | PIN_V21 | PIN_R16 | J1-25 | |||
33 | PIN_P22 | PIN_P22 | PIN_V20 | PIN_N16 | J1-28 | 34 | PIN_P21 | PIN_P21 | PIN_W19 | PIN_N15 | J1-27 | |||
35 | PIN_N22 | PIN_N22 | PIN_U21 | PIN_M16 | J1-30 | 36 | PIN_N21 | PIN_N21 | PIN_U20 | PIN_M15 | J1-29 | |||
37 | PIN_M22 | PIN_M22 | PIN_R22 | PIN_L16 | J1-32 | 38 | PIN_M21 | PIN_M21 | PIN_T22 | PIN_L15 | J1-31 | |||
39 | PIN_L22 | PIN_L22 | PIN_P22 | PIN_P15 | J1-34 | 40 | PIN_L21 | PIN_L21 | PIN_R21 | PIN_M12 | J1-33 | |||
41 | PIN_K22 | PIN_K22 | PIN_T20 | PIN_L14 | J1-36 | 42 | PIN_K21 | PIN_K21 | PIN_T19 | PIN_L13 | J1-35 | |||
43 | PIN_J22 | PIN_J22 | PIN_P16 | PIN_K16 | J1-38 | 44 | PIN_J21 | PIN_J21 | PIN_P17 | PIN_K15 | J1-37 | |||
45 | PIN_H22 | PIN_H22 | PIN_N20 | PIN_K12 | J1-40 | 46 | PIN_H21 | PIN_H21 | PIN_N21 | PIN_J12 | J1-39 | |||
47 | PIN_F22 | PIN_F22 | PIN_M21 | PIN_J14 | J1-42 | 48 | PIN_F21 | PIN_F21 | PIN_M20 | PIN_J13 | J1-41 | |||
49 | PIN_E22 | PIN_E22 | PIN_M18 | PIN_K11 | J1-44 | 50 | PIN_E21 | PIN_E21 | PIN_N19 | PIN_J11 | J1-43 | |||
51 | PIN_D22 | PIN_D22 | PIN_L18 | PIN_G11 | J1-46 | 52 | PIN_D21 | PIN_D21 | PIN_L19 | PIN_F11 | J1-45 | |||
53 | PIN_C22 | PIN_C22 | PIN_M22 | PIN_F13 | J1-48 | 54 | PIN_C21 | PIN_C21 | PIN_L22 | PIN_F14 | J1-47 | |||
55 | PIN_B22 | PIN_B22 | PIN_L17 | PIN_F10 | N/C | 56 | PIN_B21 | PIN_B21 | PIN_K17 | PIN_F9 | N/C | |||
57 | PIN_N20 | PIN_N20 | PIN_K22 | PIN_E16 | N/C | 58 | PIN_N19 | PIN_N19 | PIN_K21 | PIN_E15 | N/C | |||
59 | PIN_M20 | PIN_M20 | PIN_M16 | PIN_D16 | N/C | 60 | PIN_M19 | PIN_M19 | PIN_N16 | PIN_D15 | N/C | |||
61 | GND | GND | GND | GND | J1-50 | 62 | GND | GND | GND | GND | J1-49 | |||
63 | +5V | +5V | +5V | +5V | J1-50 | 64 | +5V | +5V | +5V | +5V | J1-50 |
P1 - VGA
- DB-15HD connector
- 2:2:2 R:G:B
P2 - PS/2 Keyboard
- Purple DIN-6 for PS/2 keyboard
P4 - SD Card
Mechanicals
MultiComp On RETRO-65C816 VHDL Code
References/Notes
- On the usefulness of 65816 as a 65C02 alternative
- Helpful timing information
...potential for data bus contention during Ø2 low. My solution was two-fold: use VDA and VPA to qualify chip selects, and qualify read-accesses with Ø2. The former assures that an addressed device will not respond to selection until the address bus is truly valid—invalid bus states may occur during the execution of some instructions. The latter assures that a selected device will not drive the data bus when the '816 is presenting A16-A23 on it. This solution doesn't totally eliminate the risk of contention but greatly narrows the window of opportunity for it. The need for more stringent qualifying of D0-D7 would depend on the peripheral silicon on the bus. In the case of POC and the Ø2 rate I'm using (12.5 MHz maximum), everything gets off the data bus before the '816 starts to drive it with the bank address. That would not be the case if I were to increase Ø2 to 20 MHz, however. Floating the buses with BE creates the odd situation where no valid address exists on A0-A15, which I daresay could cause a device to be selected solely because of a residual charge in bus capacitance. Also, BE floats the RWB signal*, which may trip up other logic that is dependent on RWB always being driven to one state or the other. The most fool-proof solution is the use of a data bus transceiver as you suggested, which is a straightforward method (74AC245 or 74AHC245 recommended if Ø2 will exceed 8 MHz).
Revision History
Rev 2
- Fixed W65C816 footprint
- Bigger footprint
- Moved around a lot of tracks to remove ground trace and use ground plane
Rev 1
- W65C816 footprint is too small for part
- Used TQFP footprint but part is clearly too big
- Datasheet does not indicate package detail
- 0.8mm pitch was OK
- Works well as RETRO-EP4CE15 replacement
- PS/2 @5V is good
Videos
- 65C816 Computer 27 Videos Series - Adrien Kohlbecker
- Lot of detail on 65C816 hardware