Joe's Hobby Electronics
  • Joe's Hobby Electronics
    • Electronics Blog

 Building an Acorn System 1 replica - Part 2 (18/09/2019)

We left part 1 with me waiting for the PCB's to arrive from JLCPCB.

Today they arrived; all ten of them. JLCPCB only allow you to order in multiples of five, so, two designs means ten PCB's are now sitting on my desk.
Picture
So, on the face of it they look great, but the only way to tell is to assembler them and find out. 

I decided to assemble the top board (keyboard / display) first as this can be tested independently from the main CPU board and assembly was a piece of cake. Even the new keypad switches fitted perfectly (which was a worry as I'd had to design new templates for the PCB CAD software for them and well, mistakes happen). 

The default component pad size in DipTrace is a bit small and in my haste and excitement to order the boards, I never changed the pad size. They are fine and work, but for hand soldering it would be better if they were a little larger. I've updated the design files for the next batch. 

I also decided to solder the LED bubble display to a SIL socket and use that to connect to a header SIL on the PCB. These displays look pretty fragile and I don't want to risk damaging it having to keep removing it.
Picture
Keypad / Display board assembled
The keypad / display board was assembled and tested. This is a pretty easy board to test as all you need do is give it power, and then wiggle some of the control lines into the 7445 decoder or segment drive lines and it passed with flying colours. 

I'd decided to add a connector for the inter-connect ribbon cable but all I had were some Molex SIL connectors and since they don't do a 20-way one (or at least I don't have any), I had to use two smaller ones. BIG mistake as it's really difficult to plug/unplug the cable. It won't be long before the ribbon cable gets ripped from the connector shell, so the next revision will make use of a standard 26 way IDC box header. It will also save a lot of time when making the interconnect cable itself as right now each end has to be hand soldered. 

​Next, the CPU board. 
The CPU Board is a lot harder to test as it needs pretty much every component installed before it's going to work. Also, it needs a monitor program in the EPROM and it needs an INS8154 chip to drive the keypad and display. I have 2 x INS8154 chips that are of an unknown condition and I really don't want to have to go hunting to buy more, so need to be very carful with these.

So, first things first. I started with some basic continuity checks to make sure the power rails were correct and every IC would be getting 5v and 0v on the correct pins.
Problem 1...
It turns out there is a track missing and +5v cannot reach IC14 and IC15 that are used for the clock. At least this is a simple problem to fix and I soldered a short wire from the 5v rail to the ICs. Everything else seemed to look OK so I installed the components for the clock, powered on and poked around with my scope and it seemed to be working great. Base frequency was 4.032 MHz and the clock at the 6502 was 1.008 MHz exactly as it should be. 
Next I soldered in the remaining jelly bean logic that handles all the address decoding and bit the bullet as it were and soldered in the edge-way connector. I'd been holding off on the edge-way connector as it looks like it will be a nightmare to remove if I have to scrap this board for any reason. 

I started with basic continuity check on the data lines first of all and they seemed fine. Did the same on the address lines and they seemed OK and then powered the board and started injecting signals into the address lines via the edge connector to test the decode logic and here I started getting some really odd results. In the end I found I had accidentally routed a track on the wrong side of the board, right over a group of data lines (middle picture). 
Thirty minutes later after using a sharp knife, microscope and a small jumper wire the problem had been rectified (right picture). 
I decided to use a ZIF socket as I can imagine that I'll be inserting and removing the EPROM a fair bit initially whilst I get this board working. 

During assembly I have found a couple of problems, made some discoveries and thought of better ways of doing things and all these ideas and issues need to be fed into the schematics and PCB layouts, and that's my next job. Since the board is, as far as I can tell OK, I will continue with this one but I will have to order an updated set at some point. 
Of course, I still have a problem with how I test this board.
I'm thinking I'll add some LEDs and basic address decoding to a small expansion board and write some firmware that will make the LEDs flash. This will prove that the CPU is running. Next some type of RAM test program that can output it's results on my LEDs. At this point I will then have to look at connecting the keyboard and display board, and to do this I'll need a known working INS8154 chip.
Now I've got an idea on how I can get around not using any of these chips at all in the future and, if it works, could be of great benefit to other users suffering from a drought of these chips. I've got a few things to chew over first and investigate. 
​
​More soon. 
PART 1
PART 3
© Joe Farr, 2011 - 2020 - Email: HobbyElectronics@kcsl.uk.com