Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
builderpages:lynchaj:start [2021/04/15 12:28]
lynchaj [Image Gallery]
builderpages:lynchaj:start [2021/12/03 07:00] (current)
lynchaj [Introduction]
Line 4: Line 4:
  
 The purpose of this project is to revisit the design concepts behind original Z80 SBC (aka test prototype) which has evolved into the SBC V2-005 over several years. Attempt to introduce some new concepts to make the design more modular, flexible, and less expensive. Use low cost prototype PCBs (100x100mm) available for less than $20 including shipping from JLCPCB. Make simple single function boards to implement good program design concepts from Computer Science: high cohesion and low coupling. Maintain as much backward compatibility with latest SBC V2 as possible. The purpose of this project is to revisit the design concepts behind original Z80 SBC (aka test prototype) which has evolved into the SBC V2-005 over several years. Attempt to introduce some new concepts to make the design more modular, flexible, and less expensive. Use low cost prototype PCBs (100x100mm) available for less than $20 including shipping from JLCPCB. Make simple single function boards to implement good program design concepts from Computer Science: high cohesion and low coupling. Maintain as much backward compatibility with latest SBC V2 as possible.
 +
 +**Board technical information is stored at a Github repo located here: [[https://github.com/lynchaj/nhyodyne|https://github.com/lynchaj/nhyodyne]]**
 +
 +The new repo contains the KiCAD information, Gerber files, schematics, PCB layout, BOM, 3D rendering, and a brief description with jumper settings for each board. **There is also a discussions forum in case anyone wants any specific help with their build or would like to discuss related topics such as future boards, changes to existing boards, etc. [[https://github.com/lynchaj/nhyodyne/discussions|Discussions · lynchaj/nhyodyne (github.com)]]**
 +
  
 ===== Overview ===== ===== Overview =====
Line 26: Line 31:
  
 Seventh, lower build cost by using inexpensive off-the-shelf components and PCBs. All parts come from Jameco or ordered off eBay (bus connectors). Use simple 9vdc 1A unregulated power supply. Keep part count on boards low so they are effectively disposable eliminating the need for sockets and further lowering builder costs. Make non-essential components optionally do-not-populate. Seventh, lower build cost by using inexpensive off-the-shelf components and PCBs. All parts come from Jameco or ordered off eBay (bus connectors). Use simple 9vdc 1A unregulated power supply. Keep part count on boards low so they are effectively disposable eliminating the need for sockets and further lowering builder costs. Make non-essential components optionally do-not-populate.
 +
 +===== Areas For Improvement =====
 +
 +Z80 backplane:
 +
 +  * correct LED orientation on silkscreen
 +  * add component labels on silkscreen
 +  * add power switch or use in-line switch on power cable
 +  * orient power LED to vertical
 +  * allocate 10 spare bus pins to
 +      * GND
 +      * VCC
 +      * IEI#
 +      * IEO#
 +      * BAI#
 +      * BAO#
 +      * DREQ0#
 +      * TEND0#
 +      * i2c_TX
 +      * i2c_RX
 +  * add 16 pin extended bus lines connector to 8 of 16 slots. Include Z80180 signals such as 4 more address lines, DREQ1#/TEND1#, INT1#/INT2#, E, ST, PHI, another GND, and VCC plus 3 undefined spares
 +  * add screw terminal power block
 +  * add more slots (8 → 16)
 +
 +Z80 processor: (fixed in V2)
 +
 +  * <del>correct LED and diode orientation on silkscreen</del>
 +  * <del>add component labels on silkscreen</del>
 +  * <del>add local oscillator for CPU clock and selector circuit to allow for use of local oscillator or clock signal from bus connector for CPU</del>
 +  * <del>add clock to bus jumper</del>
 +  * <del>add IM 2 external interrupt circuit</del>
 +  * <del>add mounting bracket holes and exclusion zones</del>
 +
 +Z80 clock: (fixed in V2)
 +
 +  * <del>correct LED and diode orientation on silkscreen</del>
 +  * <del>add component labels on silkscreen</del>
 +  * <del>selection jumper for battery back up</del>
 +  * <del>fix IO port address decoder logic</del>
 +  * <del>exchange USER0 and USER1 LEDs to be in more logical order for debugging; USER1 on the right and USER0 on the left</del>
 +  * <del>add clock to bus jumper</del>
 +
 +Z80 clock V2
 +
 +  * add 10K ohm resistor in parallel with piezo speaker to fix low volume issue
 +
 +Z80 ROM:
 +
 +  * add component labels on silkscreen
 +  * Add mounting holes and exclusion zones
 +  * Move LEDs to top of board
 +
 +Z80 serial: (fixed in V2)
 +
 +  * <del>move power LED to left most position and move chip select LED to the right one</del>
 +  * <del>reposition U3 label</del>
 +  * <del>add inverters to TX/RX LEDs (active high)</del>
 +  * <del>add user button on Ring Indicator on UART for ROMWBW recovery mode</del>
 +  * <del>rename UART oscillator clock P3 to a U* designator</del>
 +  * <del>add over-the-top external DMA connector</del>
 +  * <del>remove female 6 pin TTL serial header</del>
 +  * <del>add mounting bracket holes & exclusion zones</del>
 +
 +Z80 RAM (fixed in V2)
 +
 +  * <del>fix broken DS1210 circuitry, connect to RAM0 and RAM1 chip selects</del>
 +  * <del>add mounting holes and exclusion zones</del>
 +
 +Z80 serial V2 (fixed in V3 but V2 retained for legacy compatibility)
 +
 +  * convert DIP-40 16C550 to PLCC format
 +
 +Z80 DMA:
 +
 +  * R12 pin 1 connected to ground instead of VCC causing power LED to not work. Fix is to disconnect R12, pin 1 and connect to pin immediately to its right (VCC)
 +
 +Z80 Prototyping board:
 +
 +  * socket footprints too close together causing interference preventing install. Work around is to directly solder in ICs in a couple of sockets to free up some room
 +
 +Z80 RAM V2 (fixed in V3)
 +
 +  * <del>Add tolerance jumpers for DS1210s (5% or 10%)</del>
 +
 +Z80 processor V2 (fixed in V3)
 +
 +  * <del>redesign IM2 circuit</del>
 +
 +Z80 DUART
 +
 +  * fix label on front silk screen to TL16C2552FN (not TL16C550CFN)
 +  * add 470 ohm pull down resistors on INTA and INTB
 +  * remove 1N5817 anti-latch up protection diodes (don't work)
 +
 +Z80 backplane V2
 +
 +  * add signal descriptions on front silkscreen
 +  * add connectors section on side (PS/2 keyboard & mouse, user, sys recovery, & reset buttons, IDE activity LED, serial ports, etc.)
 +  * add PTHs for external VCC power wires (front to back)
 +
  
 ===== Image Gallery ===== ===== Image Gallery =====
Line 47: Line 152:
 Z80 ROM board, initial build and test Z80 ROM board, initial build and test
  
-{{https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210414_202034.jpeg?direct&640x480}}+[[https://www.retrobrewcomputers.org/lib/exe/fetch.php?tok=a4030e&media=https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210414_202034.jpeg|{{https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210414_202034.jpeg?direct&640x480|www.retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_builderpages_lynchaj_resized_20210414_202034.jpeg}}]] 
 + 
 +First boot, running jploop. Run/Halt LED is green, CPU is running. Also ROM0 chip select LED lit 
 + 
 +[[https://retrobrewcomputers.org/lib/exe/fetch.php?tok=b97929&media=https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210415_193444.jpeg|{{https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210415_193444.jpeg?direct&640x853|www.retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_builderpages_lynchaj_resized_20210415_193444.jpeg}}]] 
 + 
 +More testing, with halt ROM. Run/Halt LED is red. CPU is halted. ROM0 chip select lit 
 + 
 +[[https://retrobrewcomputers.org/lib/exe/fetch.php?tok=1af407&media=https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210415_193648.jpeg|{{https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210415_193648.jpeg?direct&640x853|www.retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_builderpages_lynchaj_resized_20210415_193648.jpeg}}]] 
 + 
 +Z80 serial board build and test 
 + 
 +[[https://www.retrobrewcomputers.org/lib/exe/fetch.php?tok=44ddd8&media=https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210429_203853_1_.jpeg|{{https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210429_203853_1_.jpeg?direct&640x480|www.retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_builderpages_lynchaj_resized_20210429_203853_1_.jpeg}}]] 
 + 
 +Z80 serial board, running scream test ROM. This is major milestone when something goes from being a collection of parts to an actual computer. Not quite there yet but big steps towards it 
 + 
 +[[https://www.retrobrewcomputers.org/lib/exe/fetch.php?tok=81bd6b&media=https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210501_110807.jpeg|{{https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210501_110807.jpeg?direct&640x480|www.retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_builderpages_lynchaj_resized_20210501_110807.jpeg}}]] 
 + 
 +Z80 RAM partial build, starting test and check out. 
 + 
 +[[https://www.retrobrewcomputers.org/lib/exe/fetch.php?tok=6769d4&media=https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210605_135225.jpeg|{{https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210605_135225.jpeg?direct&640x480|www.retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_builderpages_lynchaj_resized_20210605_135225.jpeg}}]] 
 + 
 +Z80 backplane, Z80 processor, Z80 clock, Z80 ROM, Z80 serial, and Z80 RAM board all running CP/M 2.2 
 + 
 +[[https://retrobrewcomputers.org/lib/exe/fetch.php?tok=46268a&media=https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210616_112038.jpeg|{{https://www.retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210616_112038.jpeg?direct&640x480|www.retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_builderpages_lynchaj_resized_20210616_112038.jpeg}}]] 
 + 
 +Z80 MBC with DSKY next generation with Z80 PPIDE in action 
 + 
 +[[https://retrobrewcomputers.org/lib/exe/fetch.php?tok=f83c80&media=https://retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210703_104404.jpeg|{{https://retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210703_104404.jpeg?direct&640x480|retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_builderpages_lynchaj_resized_20210703_104404.jpeg}}]] 
 + 
 +[[https://retrobrewcomputers.org/lib/exe/fetch.php?tok=dfd778&media=https://retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210703_104412.jpeg|{{https://retrobrewcomputers.org/lib/plugins/ckgedit/fckeditor/userfiles/image/builderpages/lynchaj/resized_20210703_104412.jpeg?direct&640x480|retrobrewcomputers.org_lib_plugins_ckgedit_fckeditor_userfiles_image_builderpages_lynchaj_resized_20210703_104412.jpeg}}]] 
 + 
 +Z80 FDC partial build, starting test and check out.
  
  
builderpages/lynchaj/start.1618504137.txt.gz · Last modified: 2021/04/15 12:28 by lynchaj
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0