cancel
Showing results for 
Search instead for 
Did you mean: 
Highlighted
Visitor
Visitor
2,814 Views
Registered: ‎03-02-2017

Temperature issue with UartPS

Hi, I am having an issue on Zynq 7Z030 SoC. The uart seems to stop working after a given temperature (around 65 °C). I am using the XUartPs_RecvByte function to get a character entered in uart. The program that I'm running is making the Zynq hot (because we are making a performance test on it), and after it gets to around 60-65°C, the uart stop to be accessible, it seems that the XUartPs_RecvByte functions hangs in the loops as if nothing was received even if I type character.

 

I tried to cool down the Zynq after the uart went out but nothing happens. If I try to do the test with a fan on at all the time, the test is going well and the uart doesn't shutdown (because the temperature doesn't get higher than 60°C).

 

Does someone encountered this kind of problem with uart and temperature ?

 

For information purpose, note that the FTDI module that convert uart to usb isn't near the board and doesn't get hot, so the problem must be on the board containing the zynq...

 

Thanks in advance,

 

Regards,

 

Yannick

0 Kudos
5 Replies
Highlighted
Scholar
Scholar
2,805 Views
Registered: ‎02-27-2008

Re: Temperature issue with UartPS

Ambient, or junction?

 

Commercial devices have 85 C max junction temperature.

Austin Lesea
Principal Engineer
Xilinx San Jose
0 Kudos
Highlighted
Visitor
Visitor
2,791 Views
Registered: ‎03-02-2017

Re: Temperature issue with UartPS

It seems that the uart just go off entirely. I tried to put a print inside this loop :

u8 XUartPs_RecvByte(u32 BaseAddress)
{
	u32 RecievedByte;
	/* Wait until there is data */
	while (!XUartPs_IsReceiveData(BaseAddress)) {
		print("on\r\n");
		;
	}
	RecievedByte = XUartPs_ReadReg(BaseAddress, XUARTPS_FIFO_OFFSET);
	/* Return the byte received */
	return (u8)RecievedByte;
}

And the "on" print just begin to be ike that  :


onÜ
onÜ
on
on
on
o
o
on


on
on
Ün
on
Ün

 

And then stop after a couple of seconds when the temperature goes too high.

0 Kudos
Visitor
Visitor
2,788 Views
Registered: ‎03-02-2017

Re: Temperature issue with UartPS

sorry, I meant junction temperature, as we are getting it from XADC.

0 Kudos
Highlighted
Scholar
Scholar
2,786 Views
Registered: ‎02-27-2008

Re: Temperature issue with UartPS

y,

 

Some thoughts:

Is the clock frequency changing?  What is the clock source?

What are the voltages doing (reported by the XADC system monitor)?

Have you observed the signal with an oscilloscope (maybe the receiving terminal has issues)?

What else is the system doing?  Could it be getting an interrupt?

As shipped, the Zynq boards run linux.  Does this happen with the as shipped linux image?

Check that you stop bit setting is correct, parity, etc.

Austin Lesea
Principal Engineer
Xilinx San Jose
0 Kudos
Highlighted
Visitor
Visitor
2,782 Views
Registered: ‎03-02-2017

Re: Temperature issue with UartPS

No, the zynq run a user program.

The clocks seems to be ok and the osc that gives the clock source isn't at the same temperature of the zynq so it function normaly. The uart signal stops when the zynq gets too hot but before they're totally ok.

 

We think this can be happening because of the clock drift on the DDR3 signals, the DDR3 aren't as hot as the Zynq, but the Zynq might generate drifted signal that aren't acceptable by the DDR3.

 

 

0 Kudos