27

I have read that the Amiga 1200 may need certain "timing fixes" to be applied to the motherboard in order to use CPU accelerators. What are these timing fixes and why are they needed? Is there one set of fixes that will fix all hardware stability issues with the Amiga 1200? Do the timing fixes needed depend on the CPU accelerator used?

25

As far as I know, there's no authoritative source, and the information out there is probably not really accurate. I will answer this from an electrical engineering perspective, and because I have implemented some of these fixes myself. First a little note about timing fixes:


The expression timing fixes is not really accurate, but comes from the observation that an RC filter (Resistor-Capacitor) will affect a digital step in a way that, after thresholding at an input of a digital circuit, looks like it has been delayed in time:

A simple time delay

It is a pretty bad and unreliable way to delay a fast digital signal, and to my knowledge, this is not really what the fixes do.


Ringing. Overshoot. Impedance mismatch.

Designing large circuit boards with multiple clock signals is not easy. Signals actually bounce when they reach junctions or connections, causing reflections and other impurities:

The solution is called termination, and you may have seen it used in other settings, for example in SCSI cabling. Here is a great video on the subject, from 1959.

If you have a signal from point A to point B, the correct termination can be calculated, but for distributed signals like the Amiga clock signals, it's not that easy. Especially so if you want to allow everyone to just plug in random boards to the same signals. The (arguably) correct solution is to use special circuits called clock distribution circuits, but you can usually get away with cheaper solutions.

The common way is to add termination resistors. This works well, but only when you know about everything connected to the bus. This is where the problem lies: Adding an expansion board to the bus will change the electrical parameters on the network, invalidating the previously calculated resistances. This does not necessarily break things. The signals only have to be "good enough". After all, that's why we are using digital signals.

There's also the question of electrical interference. A nice and clean clock signal will, counterproductively, cause a lot of electromagnetic interference. This can be mitigated by adding capacitors to smooth the sharp edges. Doing so is bad for the signal, and is preferably avoided, but can be a last resort fix to get the product out of the door.


Ian Stedman has collected some information about the various fixes proposed in the forums, and the main components are: E121x, E122x, E123x, E125x.

Looking at the schematics for the Amiga 1200 we can locate these components, and they are all connected to the CPU clock signal. A note on the schematics say

Note: Various components are for EMI Control and may be loaded with funny things...

...and another one...

Note: Components designated as Exxx may be loaded with EMI fliters[sic], ferrite beads or resistors!

We can also see that there is an asterisk near these components. What all this means is that the engineer(s) simply added the components to the schematic in case they found out that they are necessary. Some of these are not populated, and some are (This is very common and you will see a lot of unpopulated components on almost every circuit board). It could very well be that they did not plan to populate the components, but wanted the option of doing so in case any unforeseen problems arose. Eventually, someone down the line either put components there by mistake, or after measuring the final product and observing that the components are necessary. Everyone working in consumer electronics manufacturing can probably tell a lot of stories about this.


Suggested answer

Is there one set of fixes that will fix all hardware stability issues with the Amiga 1200?

Probably

The fixes consists of fitting or removing these components. Every Exxx component has two parts: A resistor and a capacitor. The resistor (ExxxR) can either be left out, fitted, or replaced with a ferrite bead. The capacitor (ExxxC) can either be fitted or left out.

A thread on the English Amiga Board suggests these fixes:

  • E123R, E125R - Fit with the value indicated in the schematics
  • E121R, E122R - Fit or replace with a 60 Ω ferrite bead
  • E123C, E125C - Fit with the value indicated in the schematics
  • E121C, E122C - Replace with 27 pF capacitors

In contrast to that advice, Individual Computer's wiki has an article about the capacitors and instead strongly recommend that they are to be removed.

In my opinion, removing the capacitors and leaving everything else as they are is the best advice. I have a feeling that doing this on every motherboard, no matter the revision, will fix any issues with accelerator boards. I have three reasons for recommending this:

  1. The capacitors are only added to pass an artificial test. Other than that, they do more harm than good to the signals.
  2. There is a technically sound reason for the resistors as designed.
  3. Any unnecessary rework has a chance of damaging the board or other components.
  4. No need to order new parts.

Do the timing fixes needed depend on the CPU accelerator used?

Probably not

I have not seen any good comparative data on this. People often mention Apollo boards to be extra problematic, but I have personally had to perform the modifications on an old Amiga 1200 for a Blizzard accelerator board.

Now, as mentioned by Kuba Tyszko in a comment, if your accelerator board works, it is not necessary to risk damage by doing any of these mods. If, however, you experience unusual instability, it may be worth trying to remove the capacitors. I have nothing to back this up (yet), but I believe that this will improve the situation for every accelerator.


Please leave a comment if you believe something here is wrong or unclear, and I will try to update the answer. It is an interesting topic, and it deserves to be researched.

  • iComp's Wiki says to remove E123C, E125C, E121C, E122C, so the other information out there that says to replace with other capacitors is confusing me. – rcntxtlztn May 23 '16 at 10:24
  • @rrrzx The capacitors are technically "bad", I'll update my answer now and I will keep that in mind. – pipe May 23 '16 at 12:30
  • 1
    @rrrzx There, now I've tried to explain about the capacitors and why they should (probably!) be removed. – pipe May 23 '16 at 13:09
  • 2
    Some sources mention that Apollo cards were the ones requiring timing fixes more than others (this may still depend on mb revision). Also, might be worth simply mentioning the obvious - "if your board works with your accelerator reliably - you probably don't need the fix" – Kuba Tyszko May 24 '16 at 0:09
  • 2
    Another obvious and non-obvious thing that might be worth mentioning - term "signal integrity" (I don't see it mentioned), and the fact that timing fixes (which is a well understood term in the community) are in fact signal integrity fixes For me, timing fix would actually mean resolving timing issues (stray pulses, non-even pulses) and that's not what we understand by it. – Kuba Tyszko May 24 '16 at 7:40

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.