Switch to full style
In-depth technology research: finding new ways to recover data, accessing firmware, writing programs, reading bits off the platter, recovering data from dust.

Forum rules

Please do not post questions about data recovery cases here (use this forum instead). This forum is for topics on finding new ways to recover data. Accessing firmware, writing programs, reading bits off the platter, recovering data from dust...
Post a reply

Seagate F3 PES output pins

June 30th, 2017, 14:58

I am trying to view the real-time PES on the Barracuda 7200.12 320GB. I used the F3 serial port diagnostic command "/4e0" to enable the real-time PES output, and I have a document stating that "When PES Output is enabled, real time PES signal will be outputted to AMUX test pin."

I have enabled the PES output, but I don't know what the AMUX test pin is. Does anyone know what this means? Where is the AMUX test pin, and are the 16 different bits of the PES being multiplexed across a single pin? If anyone can help me with this problem or point me in the right direction, I would really appreciate it, thanks.

Re: Seagate F3 PES output pins

July 1st, 2017, 3:32

I don't have an answer for you, but perhaps some insight might be gained from the following datasheet:

SSI 32H6910 12V VCM/Spindle Driver:
http://web.archive.org/web/20100613121613/http://www.sluzhebka.com/DataSheet/DataSheets%20TI%20%2B%20SSI.PDF

Clearly the above chip is not directly relevant to your question (the PES is generated within the MCU, not the motor controller), but its datasheet may have similar AMUX (Analog Multiplexer) circuitry.

ANALOG MULTIPLEXER - To provide test visibility into internal analog signals, the AMUX pin is used to multiplex various internal analog signals. Table 9 defines the output signals for each state. In normal operation, AMUX must be set to 000 (OTSDZ) or 001 (PLLCLK). Other positions are for production test and chip evaluation only.

In the above example, AMUX is an analogue pin which enables of 1 of 8 internal analogue signals to be viewed externally. The required signal is selected via the motor controller's serial comms port by way of the AMUX2-0 bits. The multiplexer is akin to a single pole, 8-position analogue switch. This obviates the need for each signal to have its own separate pin.

In your case the PES could be one of two or more internal signals of the MCU which could be accessible or viewable via the MCU's AMUX pin. I suspect that you may be able to narrow down the prospective candidates by determining which pins look like they may be analogue rather than digital.
Attachments
32H6910_serial_port.gif
32H6910_AMUX_table.gif
32H6910_AMUX_table.gif (27.24 KiB) Viewed 16879 times

Re: Seagate F3 PES output pins

July 1st, 2017, 18:07

Thank you, that was very helpful! You can see from the attachments, however, that the PES is output as an 8-bit digital signal, not analog.

Based off the wording of the doc, it sounds like the AMUX is being used solely for PES? I am going to tap the MCU's pins and identify the AMUX by viewing how the signals change as I toggle the PES output on and off. It looks like I'm going to have to order a custom probing adapter from http://www.ironwoodelectronics.com/prod ... pters.cfm# , since they don't have 0.4mm pitch(MCU is the LSI B5502D0, which is a 176 pin 0.4mm pitch QFP), which will take some time. I'll report back what I find.

pes1.png

pes2.png

pes3.png

Re: Seagate F3 PES output pins

July 2nd, 2017, 0:02

"DiagDac On with Resolution = 2^xx" would suggest that the output is being generated by a digital-to-analogue converter, and that the PES voltage is being scaled to fit within the DAC's range.

The DAC appears to have an 8-bit resolution:

"... the high byte of the shifted result is sent out to AMUX"

AIUI, this is the layout of the 16-bit PES:

Code:
sign   num tracks    partial track
|----|--------------|---------------------------|
| 15 | 14 : 13 : 12 | 11 : 10 :  9 :        : 0 |
|----|--------------|---------------------------|
+/-    4    2    1   1/2  1/4  1/8

Let's say that the PES has a low value, eg ...

Code:
|----|---------|---------------------------|
| 0  |  0 0 0  |  0 1 0 1 0 1 1 0 x x x x  |
|----|---------|---------------------------|
|                        |                 |
|------------------------|-----------------|
|    high byte to DAC    |   ignored       |
|------------------------|-----------------|

In this case the PES will only have an effective resolution of 3 bits. We can scale up the PES by shifting it left by 4 bits.

Code:
|----|---------|---------------------------|
| 0  |  1 0 1  |  0 1 1 0 x x x x 0 0 0 0  |
|----|---------|---------------------------|
|                        |                 |
|------------------------|-----------------|
|    high byte to DAC    |   ignored       |
|------------------------|-----------------|

ICBW, but that's how I understand the docs.

BTW, the 7200.12 PCB has two sets of pads on the underside. Some of these pads will probably be assigned to JTAG, but perhaps one of them is your AMUX pin.

Re: Seagate F3 PES output pins

July 4th, 2017, 20:15

amux.png


I'm nearly positive that is the AMUX pin for the Barracuda 7200.12 1 TB disk. If I turn on PES output, the output of that via becomes a 34khz step function, which is exactly what I'd expect given 0x11f servo sectors and 7200 RPM. Unfortunately, a few minutes later I accidentally pulled off my oscilloscope's clip and it somehow shorted the drive as it dragged across the board; now it won't even spin up. I ordered 2 more drives of the same model, and will confirm my findings on those once I receive them.

One interesting note: that via is connected to a pin on the spindle controller, and not the MCU. Do you know why that could be? Perhaps the spindle controller uses the PES signal to determine the spindle's rotational velocity?

Re: Seagate F3 PES output pins

July 5th, 2017, 4:08

Sorry, I can't answer your questions. It's been 25 years since I last looked at "cat's eyes" on a scope. I wouldn't know what to expect today.

As for speed control, the spindle motor controller energises each pair of motor windings in sequence and senses the RPM by monitoring the back-EMF of the third winding. It doesn't need any other speed feedback, AFAIK.

I don't know why you have chosen the 7200.12 as your test subject, but you might like to consider an earlier HDD model such as the Maxtor DiamondMax Plus 9. Its PCB uses an L7250 SMOOTH controller (datasheet available), plus it has numerous labelled test points.

http://www.hddoracle.com/viewtopic.php?f=112&t=117

Better still, here is a servo oscillogram:

http://nazyura.hardw.net/ServMark.jpg

... and others:

http://nazyura.hardw.net/000004.htm

Re: Seagate F3 PES output pins

July 5th, 2017, 11:31

If u want Servo trace from a actual drive here u go, not sure if its what are u looking for
Attachments
Signal.png

Re: Seagate F3 PES output pins

July 15th, 2017, 7:58

beto wrote:If u want Servo trace from a actual drive here u go, not sure if its what are u looking for



Hi,
How Are You Beto ,Which Scope Is this Bro
Post a reply