I am developing a hardware which has an MCU - AT91SAM7SE256 from Atmel. There are 6 Si3215(ProSLIC) devices and 2 Si3050(DAA) devices (both from SiLabs) interfaced to SPI master of this MCU in normal individual chip select mode. The frequency of SPI I am using is 4 MHz. The slave devices are placed in 2 columns of 4 devices each. So the trace lengths are big and I haven't provided any signal termination but there is a powerplane running below along the paths of all traces.

Now, when I try to communicate to these slave devices, some of them work fine but 2-3 of these slave devices send Hex. FF data all the time. I thought this might be the loading issue so i used buffer 74HC125 to provide more driving current on SPI clock and MOSI signals. But still one of the slave devices was behaving same. But I can see there is a reduction in number of Slaves having problem.

The datasheet of AT91SAM7SE says that it can provide maximum 8 mA current on its digital output pins and the datasheet of Si3215 or Si3050 say in their Absolute Maximum ratings that Max Input current on digital Input pins would be 10 mA. I am not sure what these values mean.

One interesting observation I have done is when i place the Oscilloscope probe on SPI clock signal, more number of slave devices on board start behaving(sending Hex. FF data) as described above. And it also happens sometime that when I remove the probe from SPI clock, the number of Slaves which were having problem originally, may get reduced.

Could this be a loading problem? or Could it be just an improper termination problem? Please explore you views and suggest your solutions.

By my count you have a total of 8 peripheral devices. Is the processor and the 8 devices all on the same board?

Each device needs a separate chip select going to the device

The MOSI line and the SCLK line may need to be buffered going to the 8 devices

The MISO lines coming back to the processor from each device must be tri-stated when that device's chip select is inactive. Sometimes the peripheral device will do this for you, and sometimes you must use an external tri-state buffer. Consult the datasheet.

You have two branches of maximum length (4.6 + 1.5 + 2.0) = 8.1 inches
I'm guessing that you have 10-12 pf on each device and 15-20 pf for each branch. A TTL/CMOS IC is normally characterized at 50 pf so buffering would seem to be a good idea.

I used the solution as mentioned below (Used 74LCX125 buffer to drive 4 slave devices and buffered SPI clock, MOSI line, PCM clock and PCM FrameSync signals). I did this rework on 3 boards and on 1 board this solution worked very well. All devices are working very fine on this board but on other two boards with this rewok, the same problem happens. 3 to 4 Si3215 devices send unexpected data on SPI interface.

Now i do not understand the fact that on one board all 8 slave device are working very fine with this solution and on other two boards this solution does not work.

One thing to note is the distributor we purchased these SiLabs parts from is not an authorized distributor of SiLabs. Also this distributor claims himself to be specialist in delivering Obsolete and Long lead time parts.

Do you think that these parts may not be genuine parts and are themselves faulty?

It is possible. We have purchased gray market parts that ended up being plastic encapsulated lead frames with no silicon at all inside. It leaves one with a feeling similar to having your house broken into.

There is one more thing that is coming to my mind is whenever I do any rework with these SI3215 and Si3050 devices (desoldering and soldering work), problems in SPI communication start to happen in the parts which were not having problems previously.
Is it possible that these devices are very sensitive to assembly and soldering temperatures and their functioning gets changes by these high temperatures?

It is possible. Most datasheets have a time and temperature profile that gives some guidance. My rule of thumb in the absence of any other information is 260 degrees C for 10 seconds maximum. A good production tech will seldom exceed these limits.

Ok. Thanks PapaBravo. The Si-Labs people are arranging 12 samples of Si3215 and Si3050 for us. I will make sure the temperature does not exceed this limit when these samples are assembled on two boards. Will wait for the performance of these two boards.