Author Topic: GX4000 - ASIC information  (Read 1033 times)

0 Members and 1 Guest are viewing this topic.

Offline overCLK

  • CPC464
  • **
  • Posts: 5
  • Country: es
  • Liked: 1
  • Likes Given: 0
GX4000 - ASIC information
« on: 22:04, 22 September 19 »

Hi there!


Some months ago I got a broken GX4000 (untested, you know). It turned out that diode D183 was shorted and input voltage reached the 5V rail, damaging at least one of the RAM chips.


I've seen that the ASIC is generating some of the expected outputs: Z80 CLOCK, Z80 WAIT are there and look OK. The problem is that the reset signal seems to be kept low (active) and I think this is (at least) what is preventing the console to start.


I know that it's quite probable that the ASIC was partially broken because of the over voltage, but I would like to be sure before giving up though.


Is there detailed information about pin functions, startup sequences, … anything other than the schematics that can be found in the Service Manual?
I'm particularly interested into the meaning of the different RESET-related pins (RESET, SRST, BRST,...) whether they are inputs or outputs and how they are expected to behave during console startup.


Thanks a lot!


Offline KaosOverride

  • 464 Plus
  • *****
  • Posts: 308
  • Country: es
  • Liked: 191
  • Likes Given: 44
Re: GX4000 - ASIC information
« Reply #1 on: 01:59, 27 September 19 »
Hi overCLK

Are you making your tests with a working cart with ACID chip or equivalent (CPLD replacement or the flip flop hack)? Just to be sure. Without the ACID, the Z80 is blocked, afaik...


http://www.cpcwiki.eu/index.php/Amstrad_Cartridge_Identification_Device
« Last Edit: 02:05, 27 September 19 by KaosOverride »
KaosOverride · GitHub
MEGA Amstrad Public Amstrad folder

Offline overCLK

  • CPC464
  • **
  • Posts: 5
  • Country: es
  • Liked: 1
  • Likes Given: 0
Re: GX4000 - ASIC information
« Reply #2 on: 20:28, 29 September 19 »

Hi KaosOverride!


Thanks a lot for answering.


Yes, I'm doing my tests without an ACID device connected nor anything simulating it.
My understanding is that on ACID absence the ASIC should be scrambling memory accesses (either by getting the address or the data bus dirty), but I don't think it brings down the Z80 by pulling the reset signal down. Just my guess though, because I haven't found any related information other than that page you're linking from cpcwiki  :)


Do you happen to have any evidence of this (or documentation asserting that)?




Offline overCLK

  • CPC464
  • **
  • Posts: 5
  • Country: es
  • Liked: 1
  • Likes Given: 0
Re: GX4000 - ASIC information
« Reply #3 on: 22:40, 16 November 19 »

Not completely related, but since I'm still struggling to figure out what is going on with Z80 reset...


My understanding of the service manual schematics is that Z80 reset is pulled up by R180 (and D202). So:
- In the board layout found in the same service manual I'm not able to find either R180 or D202. Do you know where are they hiding? :-)
- My board also doesn't have any trace of R180 or D202 (or at least I'm not able to find them). It could be that my board revision doesn't have these components (the one in the service manual is marked as 2700-017P-3 and mine is 2700-017P-4. Do you know what are the differences or if there are any schematics available for such board release?


Thanks a lot. :-)


Offline gerald

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.454
  • Liked: 1013
  • Likes Given: 255
Re: GX4000 - ASIC information
« Reply #4 on: 12:52, 17 November 19 »
Not completely related, but since I'm still struggling to figure out what is going on with Z80 reset...


My understanding of the service manual schematics is that Z80 reset is pulled up by R180 (and D202). So:
- In the board layout found in the same service manual I'm not able to find either R180 or D202. Do you know where are they hiding? :-)
- My board also doesn't have any trace of R180 or D202 (or at least I'm not able to find them). It could be that my board revision doesn't have these components (the one in the service manual is marked as 2700-017P-3 and mine is 2700-017P-4. Do you know what are the differences or if there are any schematics available for such board release?


Thanks a lot. :-)
I don't think there is a schematic of the 2700-017P-4.
I did not find any reference of R180 on the schematic, did you mean R210 ?
Anyway, this part of the circuit with IC16 is related to vectored IRQ acknowledge patch. This has been discussed elsewhere on the forum.
R210, D201 and D202 form a wired AND between nreset and IC16 pin 13.
If you look at https://www.cpcwiki.eu/imgs/3/36/GX4000_PCB_Top_%282700-017P-3_MC0123A_K2%29.jpg you will see that the diodes and resistor are not on the PCB but soldered directly on IC16 pins and the AY pin 16 (nreset) and 19 (VCC).

Some later 2700-017P-3 do not have these diodes anymore.
My guess is that the reset was not needed to make the patch work.

« Last Edit: 12:54, 17 November 19 by gerald »

Offline overCLK

  • CPC464
  • **
  • Posts: 5
  • Country: es
  • Liked: 1
  • Likes Given: 0
Re: GX4000 - ASIC information
« Reply #5 on: 14:55, 17 November 19 »
I don't think there is a schematic of the 2700-017P-4.
I did not find any reference of R180 on the schematic, did you mean R210 ?
Anyway, this part of the circuit with IC16 is related to vectored IRQ acknowledge patch. This has been discussed elsewhere on the forum.
R210, D201 and D202 form a wired AND between nreset and IC16 pin 13.
If you look at https://www.cpcwiki.eu/imgs/3/36/GX4000_PCB_Top_%282700-017P-3_MC0123A_K2%29.jpg you will see that the diodes and resistor are not on the PCB but soldered directly on IC16 pins and the AY pin 16 (nreset) and 19 (VCC).

Some later 2700-017P-3 do not have these diodes anymore.
My guess is that the reset was not needed to make the patch work.



Thanks a lot Gerald!
Yes, I meant R210. Sorry for the confusion. I see now the reason why they are missing in the layout.

I've checked the other pictures and mine is identical to this one: http://www.cpcwiki.eu/index.php/File:GX4000_PCB_Top.jpg



So, in this model, the reset signal doesn't seem to be pulled-up in the board itself. Well, if I'm not mistaken there is a weak pull-up through R91,R90,R17 but that would be 33K, wouldn't it?


Offline gerald

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.454
  • Liked: 1013
  • Likes Given: 255
Re: GX4000 - ASIC information
« Reply #6 on: 16:36, 17 November 19 »

Thanks a lot Gerald!
Yes, I meant R210. Sorry for the confusion. I see now the reason why they are missing in the layout.

I've checked the other pictures and mine is identical to this one: http://www.cpcwiki.eu/index.php/File:GX4000_PCB_Top.jpg



So, in this model, the reset signal doesn't seem to be pulled-up in the board itself. Well, if I'm not mistaken there is a weak pull-up through R91,R90,R17 but that would be 33K, wouldn't it?
Somehow, yes. 
But to not forget that the real reset is the ASIC NRESET output .
Unless there is something externally shorting it low, it's the ASIC that drives it low.
If the inner logic of the ASIC is similar to the original CPC, it just an AND between BRST and SRST.
So if BRST is at 5V as it should, the only reason for NRESET to be low are :
- C26 is dead short and pull the pin SRST down to GND.
- SRST input is dead and the ASIC see it as low.
- NREST output is dead and is always driven low.
« Last Edit: 16:39, 17 November 19 by gerald »

Offline overCLK

  • CPC464
  • **
  • Posts: 5
  • Country: es
  • Liked: 1
  • Likes Given: 0
Re: GX4000 - ASIC information
« Reply #7 on: 21:53, 18 November 19 »
Somehow, yes. 
But to not forget that the real reset is the ASIC NRESET output .
Unless there is something externally shorting it low, it's the ASIC that drives it low.
If the inner logic of the ASIC is similar to the original CPC, it just an AND between BRST and SRST.
So if BRST is at 5V as it should, the only reason for NRESET to be low are :
- C26 is dead short and pull the pin SRST down to GND.
- SRST input is dead and the ASIC see it as low.
- NREST output is dead and is always driven low.



I've measured 3,4V on /SRST what would be enough for TTL logic levels. So it seems that unfortunately either SRST input  or /NREST output are broken. I've tried some desperate solutions like isolating the Z80 reset circuit and replace it with a pull-up + capacitor or even short R90 to put some more voltage on /SRST, but no signs of life other than the good looking WAIT signal. I'm afraid this GX4000 is gone for good.


 

Offline gerald

  • Supporter
  • 6128 Plus
  • *
  • Posts: 1.454
  • Liked: 1013
  • Likes Given: 255
Re: GX4000 - ASIC information
« Reply #8 on: 22:40, 18 November 19 »

I've measured 3,4V on /SRST what would be enough for TTL logic levels. So it seems that unfortunately either SRST input  or /NREST output are broken. I've tried some desperate solutions like isolating the Z80 reset circuit and replace it with a pull-up + capacitor or even short R90 to put some more voltage on /SRST, but no signs of life other than the good looking WAIT signal. I'm afraid this GX4000 is gone for good.
3.3V is what you expect from the 11k/224 divisor bridge  ;)
The ASIC being a CMOS device, the NRESET should have gone high at when SRST reached 2.5V and then stay there. The 22K resistor from NRESET is here to make SRST a Schmitt trigger input.

RIP