News:

Printed Amstrad Addict magazine announced, check it out here!

Main Menu
avatar_orzel

1000$ question about cpc 6128 schematics

Started by orzel, 19:40, 04 August 25

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

orzel


Can anyone explains the role of R157(680) and R158(680) ??

One is connected to /casaddr and the other to +5V (some kind of pullup? that seems a very low value for a pull-up)

What really surprises me, is that the DRAM address bit affected (a4, a5) have nothing different than the others, and yet, the other address bits don't have those resistors.

They also appear on pelrun schematics, so i suppose they really are on the motherboard.

McArti0

#1
fast edge pullup or long line corrector. First time this R appeared on CPC464 and ic104 has been last on long PCB
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
One chip driver for 512kB(to640) extRAM 6128
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

robcfg

@orzel , if you check the Mainboard Versions page in the wiki, you can see that they've been there since the beginning on CPC6128 boards.

orzel

Er... Ok.
I dont really care how long they've been here, actually.

I'd like to know why they are here. What's their purpose. Why other lines don't have it. Why one is connected to 5v and the other to /casaddr. This last one especially makes me wonder..

robcfg

I was referring to this:
QuoteThey also appear on pelrun schematics, so i suppose they really are on the motherboard.
They really are on the motherboard, and they have always been there, meaning it's not an addition to fix a problem or something, but part of the original design.

orzel

Quote from: robcfg on 23:39, 04 August 25I was referring to this:

Oh, I see. ok. Indeed.

But nobody knows why they are here then.. ?

McArti0

#6
Quote from: robcfg on 23:39, 04 August 25I was referring to this:
QuoteThey also appear on pelrun schematics, so i suppose they really are on the motherboard.
They really are on the motherboard, and they have always been there, meaning it's not an addition to fix a problem or something, but part of the original design.
NO  ;)
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
One chip driver for 512kB(to640) extRAM 6128
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

pelrun

Quote from: orzel on 23:57, 04 August 25But nobody knows why they are here then.. ?

The very first reply in the thread:

Quote from: McArti0 on 20:28, 04 August 25fast edge pullup or long line corrector. First time this R appeared on CPC464 and ic104 has been last on long PCB

There's no such thing as pure digital logic. It's all still analogue signals bouncing about, which means you have to care about the actual analog voltage sometimes. These specific signals aren't just long wires, they also have higher fan-out - one output is driving 16 separate inputs (one per ram chip), and each input adds extra load to the wire, slowing edges down and dropping the maximum voltage they can reach. Eventually the output pin doesn't have the drive strength to pull the signal high enough fast enough to meet timing requirements (or fails to even reach Vhi at all!) and it needs some assistance.

The reason the resistors are present only occasionally and not from the start is because not all the RAM chips are the same. Just as we have multiple different CRTC variants that are *mostly* compatible but vary in the tiny details, Amstrad would have used whatever 4164 chips they could get cheapest at the time. So they used a new 4164 variant at some point, saw crashing, and so redesigned the board to fix the problem for those chips. But there's no need to pay for 2 resistors when they're using the other variants that don't need them.

It's also why the CPC has a completely unused SIP header next to the AY3 - they were anticipating having to use the A variant that needed external pullup resistors, but in the end never needed to.

orzel

I understand the digital-is-just-analog stuff. And indeed, driving 16 outputs is a lot, especially with old technologies.

I had read the "fast edge pullup or long line corrector", but it's rather cryptic to me. And it leaves all my remarks alone.

That somehow explains the resistor to +5V. But doesn't say why only on this line. It's longer than this other ones, and hence weaker ? That seems really strange that only exactly one line needs it.

And it definitely does not explain the one pulling to /casaddr. I mean, there's a signal there, which is very different than the one on a4. So why connecting those with a low resistor ? To me than can only create interferences (on both), and surely not help with fast edge or whatever.

(as to 'occasionally', others seem to say those resistors were always there).

orzel

Quote from: pelrun on 11:56, 05 August 25It's also why the CPC has a completely unused SIP header next to the AY3 - they were anticipating having to use the A variant that needed external pullup resistors, but in the end never needed to.

Ah! That explains another question i had, Thanks !
(but far far less perturbing to me ;D )

McArti0

#10
Quote from: orzel on 15:05, 05 August 25It's longer than this other ones,
Therefore it has the largest capacity.

Maybe casadr is the best at extinguishing reflections?
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
One chip driver for 512kB(to640) extRAM 6128
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

McArti0

Quote from: orzel on 15:05, 05 August 25. And it leaves all my remarks alone.
At least $50 each for me and Pelrun  ??? ;D
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
One chip driver for 512kB(to640) extRAM 6128
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

pelrun

#12
"Why just those ones?" Because for whatever reason the RAM pins those signals are going to are dragging down the levels more than the others, or they need more signal to actually be stable. Again, this wouldn't have been done for "logical design" reasons, but purely in response to the behaviour they were seeing on the bench. It's a kludge!

And while the address pins on the ram chips are logically similar, they aren't necessarily electrically similar. Especially with 80's era dynamic ram. Heck, it could even have been a flaw in that particular manufacturer's design, that wasn't bad enough to junk the parts completely but made them a bit more temperamental to work with. And they then got sold off cheaply. And Lord Sugar is all about those bargains... :D

pelrun

Quote from: McArti0 on 16:00, 05 August 25Maybe casadr is the best at extinguishing reflections?

It smells more like luck.

There are four inputs to the multiplexer. Unlike with R157 where apparently all four inputs could be pulled a bit higher and it fixed the problem, for R157 one or more needed to be pulled up a bit, one or more needed to be pulled down a bit, and whatever was left didn't care. And /CASADDR *just happened* to line up with that list.

There's no need for logical correlation here - if a signal has the right value at the right times, even if it's by sheer coincidence, then it'll work.

Bread80

Re the /CASADDR thing, is it possible that the address line only needed faster transitions during a particular part of the cycle, and /CASADDR was at the appropriate level during that part of the cycle? My timing notes seem to indicate that the /RAS high period is shorter before the video cycle than it is before the CPU cycle. That shorter high period might require the faster transitions (although I'm not sure why that would be better than simply pulling up to 5V).

Steve Furber (co-designer of the BBC Micro) once said something about an issue with the BBC Micro which they sorted by adding some resistors. He said (IIRC) that they had no idea why there was an issue and no idea why the resistors fixed it, but they did. I think he was talking about the data bus (and the BBC Micro schematics don't seem to show anything near the RAM). But this stuff is not always logically obvious.

orzel


orzel

Quote from: McArti0 on 16:00, 05 August 25
Quote from: orzel on 15:05, 05 August 25It's longer than this other ones,
Therefore it has the largest capacity.

That was a question of my part, that's what i meant. But is it ?

orzel

Ok, so basically, you don't know either. You have some hypothesis, more or less those I had, and some others.

McArti0

7 versions of cpc464 motherboards worked without these resistors. 
CPC 6128, Whole 6128 and Only 6128, with .....
NewPAL v3 for use all 128kB RAM by CRTC as VRAM
One chip driver for 512kB(to640) extRAM 6128
TYPICAL :) TV Funai 22FL532/10 with VGA-RGB-in.

pelrun

Quote from: orzel on 23:28, 05 August 25Ok, so basically, you don't know either. You have some hypothesis, more or less those I had, and some others.

So where exactly would "officially correct knowledge" come from?  ???

orzel


I don't understand what you mean.

I know people here know the CPC hardware a lot better than me. I'm asking. It's ok if you don't know of course.

What do you mean by 'official' ?

eto

Quote from: orzel on 23:28, 05 August 25Ok, so basically, you don't know either. You have some hypothesis, more or less those I had, and some others.
Probably only the engineers know (knew). 

There is another thread somewhere on this forum where Bryce had some explanations about those resistors but they also were only hypothetical. 

But there is no documentation available that explains why they were added.

orzel

Ok. Good to know ! :)

While I'm it, I have a few other questions, all about the 'official' schematics.

1) There's r154, pull-up on /iorq (near z80). It doesn't appear in pelrun recreation, and I dont seem to have it in my CPC. There's a cryptic comment about HS-CMOS -> USE. Any idea what this means ? I suppose it's only needed in some (old?) cases ?

2) The 6845 output "ma11" is connected to "PAD". Which doesn't appear anywhere else. Any idea what that is ? Funnily, on perlun pcb, this pad is routed toward... a dead end. So clearly Amstrad intended to do something about it.. ? (or did ?)

3) Near the a15 pin on gatearray, it's written /nysync. Any idea what that is ?

 
 anyone knows what 

Bread80

Quote from: orzel on Yesterday at 16:54Ok. Good to know ! :)

While I'm it, I have a few other questions, all about the 'official' schematics.

1) There's r154, pull-up on /iorq (near z80). It doesn't appear in pelrun recreation, and I dont seem to have it in my CPC. There's a cryptic comment about HS-CMOS -> USE. Any idea what this means ? I suppose it's only needed in some (old?) cases ?

2) The 6845 output "ma11" is connected to "PAD". Which doesn't appear anywhere else. Any idea what that is ? Funnily, on perlun pcb, this pad is routed toward... a dead end. So clearly Amstrad intended to do something about it.. ? (or did ?)

3) Near the a15 pin on gatearray, it's written /nysync. Any idea what that is ?

 
 anyone knows what
I'm not sure what the "pelrun recreation" refers to. Is that the redrawn '464 schematic on this website?

1. Unconnected input on LS series logic will float into a high state. The same on CMOS (HC and HCT series in this time period) will fluctuate and cause issues and even damage to the chip. The pull-up is to stop the signal from floating.

Why does this matter? Because the /BUSRQ input on the Z80 will cause it to tristate most of it's output (and bidirectional) pins. (This is to allow a peripheral device to access memory and/or other I/O devices). I'm not sure any hardware ever did that on the CPC but it needs to be prepared for.

If you look at the '464 schematics you'll see that the GA actually has these pull-ups internally on /MREQ, /IORQ, /RD and /WR, as well as on it's open collector output signals - thus saving Sir Alan a few bob in components. I'm not sure why they felt the need for an additional pull-up on the CMOS models. It's probably down to the analogue properties of component pins or, maybe, stricter timing requirements (HC and HCT tend to be a little slower than LS).

2. I've always assumed this is a test pad. Ie. something used during burn-in tests to check the 6845 is functioning properly.

3. I have absolutely no idea, and I can't think what it might stand for. Maybe Lord Sugar's boy band?

pelrun

Quote from: Bread80 on Yesterday at 22:13I'm not sure what the "pelrun recreation" refers to. Is that the redrawn '464 schematic on this website?
No, it's the 6128 schematic I drew up in kicad a few years back: https://github.com/pelrun/cpc-schematics

Powered by SMFPacks Menu Editor Mod