ZX Spectrum 128K ULA replacement

For experts to discuss very technical stuff and newbies to ask why the Spectrum they bought off ebay doesn't work.
Post Reply
KeplerOfMars
Drutt
Posts: 45
Joined: Mon Jun 26, 2023 6:23 pm

ZX Spectrum 128K ULA replacement

Post by KeplerOfMars »

Hello,

It appears the ULA in my Toastrack is dying as the machine freezes after a few minutes. I can't even complete The Central Cavern before the display becomes corrupt!

So...my question is, where is a "new" ULA to be acquired?

What would you all recommend?
User avatar
1024MAK
Bugaboo
Posts: 3172
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: ZX Spectrum 128K ULA replacement

Post by 1024MAK »

Finding a new old stock ULA is going to be difficult…

It’s possible it’s not the ULA. What leads you to think it’s the ULA?

There is a module that can replace a ULA for a 128K toastrack. See here.

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer being good this year.
KeplerOfMars
Drutt
Posts: 45
Joined: Mon Jun 26, 2023 6:23 pm

Re: ZX Spectrum 128K ULA replacement

Post by KeplerOfMars »

As the ULA is the only IC that becomes hot over time, I concluded that it is the most likely candidate. Fortunately, I had access to another ULA for testing and the replacement seemed to solve the problem. My machine was certainly not crashing after a few minutes.
User avatar
Seven.FFF
Manic Miner
Posts: 754
Joined: Sat Nov 25, 2017 10:50 pm
Location: USA

Re: ZX Spectrum 128K ULA replacement

Post by Seven.FFF »

Another replacement option is here, when it comes back in stock https://www.sellmyretro.com/offer/detai ... %2B2-21779
Robin Verhagen-Guest
SevenFFF / Threetwosevensixseven / colonel32
NXtel NXTP ESP Update ESP Reset CSpect Plugins
zx64
Manic Miner
Posts: 212
Joined: Sat Jul 11, 2020 3:25 am
Location: Australia

Re: ZX Spectrum 128K ULA replacement

Post by zx64 »

KeplerOfMars wrote: Sat Jul 01, 2023 11:04 pm As the ULA is the only IC that becomes hot over time, I concluded that it is the most likely candidate. Fortunately, I had access to another ULA for testing and the replacement seemed to solve the problem. My machine was certainly not crashing after a few minutes.
Hot ULA is normal. How hot is it?
KeplerOfMars
Drutt
Posts: 45
Joined: Mon Jun 26, 2023 6:23 pm

Re: ZX Spectrum 128K ULA replacement

Post by KeplerOfMars »

I haven't measured the temperature but it gets hot to the point that you have to move your finger. That and the crashing of the machine led to me to test a different ULA which didn't result in the same issue.
User avatar
Flatulentia
Drutt
Posts: 33
Joined: Wed Jun 21, 2023 10:24 pm
Location: Cambridgeshire, UK

Re: ZX Spectrum 128K ULA replacement

Post by Flatulentia »

I'm not familiar with the original Toastrack, but isn't there room to fit a low profile heatsink on the ULA?

My ZX81s had stupidly hot ULAs, but a 6mm tall M.2 SSD heatsink made an enormous difference.
"Gandalf the Grey" Sinclair ZX Spectrum 128 +2 running "Toastrack" ROM with 'EAR' Input Jack Mod.
KeplerOfMars
Drutt
Posts: 45
Joined: Mon Jun 26, 2023 6:23 pm

Re: ZX Spectrum 128K ULA replacement

Post by KeplerOfMars »

That is an excellent idea! Unfortunately, there is very little room between the top of the ICs and the bottom of the keyboard...but I will investigate.
However, the fact that the ULA does become excessively hot to the point that it crashes the machine, does that not suggest a fundamental fault with the ULA?
User avatar
1024MAK
Bugaboo
Posts: 3172
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: ZX Spectrum 128K ULA replacement

Post by 1024MAK »

All Ferranti high speed ULA chips run hot. This is due to the technology used. So it’s perfectly normal for you not to be able to hold your finger in the centre of the encapsulation (plastic chip case). This goes for the ZX81 ULA, the ZX Spectrum 16K/48K/+ ULA series AND the ZX Spectrum 128K AND +2 (grey) ULAs.

All the above ULAs are designed such that a heatsink is not needed. The operating temperature of the silicon chip die is up to 125°C. Hence the encapsulation can get to a temperature that is too hot for you to hold your finger on.

The worst example, is the ULA (VideoProc) in the Acorn BBC Micro, where it also runs very hot.

Heatsinks only help if the following applies:
  • There is very good thermal conductivity from the chip die (inside the plastic case) and the heatsink, AND
  • There is adequate air ventilation so that air can pass over the heatsink to cool it. If there is insufficient ventilation, all that happens is that the heatsink will increase in temperature and transfer the heat to the air in the case. But eventually, the air will heat up severely reducing the effectiveness of the heatsink. As heatsinks need a difference in temperature between themselves and the air to work.
I’m not saying that your ULA is not failing or faulty, but the more scientific method is to compare supply current between the suspect ULA and the known good ULA.

If you really want to know more about ULAs and heatsinks, definitely read this post, then follow this link and then the links within that post…

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer being good this year.
User avatar
Flatulentia
Drutt
Posts: 33
Joined: Wed Jun 21, 2023 10:24 pm
Location: Cambridgeshire, UK

Re: ZX Spectrum 128K ULA replacement

Post by Flatulentia »

Heatsinks nearly always help.

The thermal conductivity of the plastic encapsulation is a constant specified on most IC datasheets in °C/W, therefore, if you lower the surface temperature by, let's say, 32°C then you've also lowered the internal temperature by 32°C. That's the difference I get with a low profile M.2 SSD heatsink on a ZX81 ULA.

I understand the science behind arguing against a heatsink inside an enclosed case, but none of the Sinclair cases are enclosed, so it definitely helps to some degree. Whether or not that help is technically needed is another matter entirely, but it seems as though the OP's failing ULA might benefit from one.

What is for certain is that the subject is nowhere near as black-and-white as "Heatsinks only help if...".
"Gandalf the Grey" Sinclair ZX Spectrum 128 +2 running "Toastrack" ROM with 'EAR' Input Jack Mod.
User avatar
1024MAK
Bugaboo
Posts: 3172
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: ZX Spectrum 128K ULA replacement

Post by 1024MAK »

I refer you to this post which has some Ferranti documentation including a ULA 2000 Series Datasheet.

Please note that at no point am I telling people not to fit a heatsink to a ULA. That is up to each individual to decide for themselves. I’m just pointing out that ULA chips run hot when operating normally. If you look at how much current they use, it becomes obvious that at that power level, they will get hot. The heat output is well within the normal range for the plastic package used. This is also the reason that the original equipment manufacturers did not normally fit heatsinks.

There are some exceptions to the above, the first being the ULA used in some Amstrad CPC464 machines. I don’t know the details, but Amstrad had problems with these. Anyway, they were fitted with heatsinks as manufactured.

The second case is that of the VideoProc ULA used in the Acorn BBC Micro. The first version of the Ferranti VideoProc ULA as used in the BBC Micro (which has a design error, hence needs a heatsink).

Note that the later Ferranti VideoProc ULA used in some BBC machines does not need a heatsink, and indeed was not fitted with a heatsink, even though it also gets hot. Not to be confused with the VTI gate array that was also used in later machines.

The only other ULA that I know of which was provided with a heatsink, is the ULA fitted in the Amstrad +2 (grey). But we don’t know why Amstrad engineers fitted a heatsink, and, it’s rather a crude affair anyway. It’s possible that Amstrad fitted a heatsink due to the problems they had with the ULA used in the CPC464.

As I have said elsewhere, the best thing you can do to improve the reliability of your Sinclair computer (except the +2A, +2B, +3 or +3B) is to replace the 7805/78S05 voltage regulator with a good quality DC/DC converter / switching type. This significantly reduces the air temperature inside the case.

Mark

Edited by PJ at request of Mark.
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer being good this year.
KeplerOfMars
Drutt
Posts: 45
Joined: Mon Jun 26, 2023 6:23 pm

Re: ZX Spectrum 128K ULA replacement

Post by KeplerOfMars »

Thanks Mark.
Could you post a link for a replacement DC/DC converter please?
User avatar
1024MAK
Bugaboo
Posts: 3172
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: ZX Spectrum 128K ULA replacement

Post by 1024MAK »

You can use either:
  • MuRata Switch Mode 5v Regulator from here (or here for a low height version), (scroll down the page).
  • A RECOM R-78E5.0-1.0 type or R-78K5.0-1.0 type (available from many electronics suppliers).
  • A TRACO POWER TSR 1-2450E type or a TRACO POWER TSR 1-2450 type (available from many electronics suppliers).
Both the RECOM and TRACO POWER types are also available with right angle bent legs, but for some reason are considerably more expensive. These manufacturers also have other similar parts that would work, I selected the lowest cost parts from one supplier.

Unfortunately for small orders, many electronics suppliers charge a small order fee, or the P&P costs are significant.

If you are buying from a trading site, make sure you buy from a reputable trader.

Here’s an old topic showing how I fitted a RECOM to a ZX81.

Mark
Last edited by 1024MAK on Mon Jul 03, 2023 11:35 am, edited 1 time in total.
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer being good this year.
User avatar
Flatulentia
Drutt
Posts: 33
Joined: Wed Jun 21, 2023 10:24 pm
Location: Cambridgeshire, UK

Re: ZX Spectrum 128K ULA replacement

Post by Flatulentia »

1024MAK wrote: Mon Jul 03, 2023 1:23 am The only other ULA that I know of which was provided with a heatsink, is the ULA fitted in the Amstrad +2 (grey). But we don’t know why Amstrad engineers fitted a heatsink, and, it’s rather a crude affair anyway. It’s possible that Amstrad fitted a heatsink due to the problems they had with the ULA used in the CPC464.
As crude as it is, it has roughly the same surface area as the M.2 SSD heatsinks I've been using, so it's likely quite effective compared to a bare, shiny (ie, minimal surface area) plastic encapsulation.

Any heatsink is generally better than no heatsink at all, especially on a hot-running plastic package that struggles to get the heat out.

I'd love to know how much difference (if any) it would have made toward saving all of the ULAs that have died over the years, but we'll never know. I just prefer to err on the side of good engineering practice in the hope that it may make a difference.
"Gandalf the Grey" Sinclair ZX Spectrum 128 +2 running "Toastrack" ROM with 'EAR' Input Jack Mod.
User avatar
1024MAK
Bugaboo
Posts: 3172
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: ZX Spectrum 128K ULA replacement

Post by 1024MAK »

The biggest problem with the heatsink fitted to the ULA in the Amstrad +2 (grey), is that they often don’t fit tightly to the chip.

Myself, I think a combination of edge-connector abuse, use of “any old” PSU/power adapter (especially with the incorrect polarity or AC output types), and the general elevated air temperature in the case are the contributing factors.

In terms of chips dying, it’s normally the 4116 (or equivalent) “lower” DRAM or less often, the 32K bit “upper” DRAM chips.

ULAs do fail (especially the ones in early issue boards), but they don’t fail as often as people think.

Edge-connector abuse (connecting or disconnecting an expansion/interface while the computer is on, or allowing it to come into contact with metal object(s), or the loss of the locating peg on the female connector on expansions/interfaces) can, and does kill ULAs, Z80s, DRAM, and maybe ROM chips.

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer being good this year.
User avatar
Guesser
Manic Miner
Posts: 646
Joined: Wed Nov 15, 2017 2:35 pm
Contact:

Re: ZX Spectrum 128K ULA replacement

Post by Guesser »

Sure it's not hermetically sealed, but it would be a bit of a stretch to call the rubber key 48 ventilated. A few slots on the base covered by the PCB, and the edge connector slot blocked off by a peripheral can't be conducive to much convection.
KeplerOfMars
Drutt
Posts: 45
Joined: Mon Jun 26, 2023 6:23 pm

Re: ZX Spectrum 128K ULA replacement

Post by KeplerOfMars »

1024MAK wrote: Sun Jul 02, 2023 4:34 pm All Ferranti high speed ULA chips run hot. This is due to the technology used. So it’s perfectly normal for you not to be able to hold your finger in the centre of the encapsulation (plastic chip case). This goes for the ZX81 ULA, the ZX Spectrum 16K/48K/+ ULA series AND the ZX Spectrum 128K AND +2 (grey) ULAs.

All the above ULAs are designed such that a heatsink is not needed. The operating temperature of the silicon chip die is up to 125°C. Hence the encapsulation can get to a temperature that is too hot for you to hold your finger on.

The worst example, is the ULA (VideoProc) in the Acorn BBC Micro, where it also runs very hot.

Heatsinks only help if the following applies:
  • There is very good thermal conductivity from the chip die (inside the plastic case) and the heatsink, AND
  • There is adequate air ventilation so that air can pass over the heatsink to cool it. If there is insufficient ventilation, all that happens is that the heatsink will increase in temperature and transfer the heat to the air in the case. But eventually, the air will heat up severely reducing the effectiveness of the heatsink. As heatsinks need a difference in temperature between themselves and the air to work.
I’m not saying that your ULA is not failing or faulty, but the more scientific method is to compare supply current between the suspect ULA and the known good ULA.

If you really want to know more about ULAs and heatsinks, definitely read this post, then follow this link and then the links within that post…

Mark
I have just acquired a grey Spectrum +2 and was surprised to find a heatsink on the Amstrad 40056 ULA. As this IC was also used in a Spectrum 128K, did it come with a heatsink too?
User avatar
1024MAK
Bugaboo
Posts: 3172
Joined: Wed Nov 15, 2017 2:52 pm
Location: Sunny Somerset in the U.K. in Europe

Re: ZX Spectrum 128K ULA replacement

Post by 1024MAK »

No, Sinclair did not fit any heatsinks to any ULA chips. Not in any model of any of their computers.

The ULA used in the ZX Spectrum 128 and the Amstrad made ZX Spectrum +2 (grey) are the same. But Amstrad had their part number printed on ULA chips made for them.

Mark
:!: Standby alert :!:
“There are four lights!”
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb :dance
Looking forward to summer being good this year.
Post Reply