On 04/18/12 15:38, Peter Stuge wrote:
Oliver Schinagl wrote:
It's a mux on the CS/ line of two SPI flash chips.
Oliver, I really think you should add a real mux to the PCB, and have that be "remote controlled" by the jumper or mechanical switch.
Why is that recommended?
The point is to keep the signals on the PCB. Some flash chips are extremely sensitive to noise even on the chip select line and they will simply not work if the signals are too far away from the PCB. Even a jumper could mess it up.
Fair enough, makes sense. Well with the solder-bridge, a user could choose.
If something like this where to be used and given away, like we saw posted on the coreboot list, this won't be an issue to have included I suppose.
If using a jumper cap, it shouldn't be able to go wrong? Chip1 active, none active, chip2 active? To which I can't understand why that extra component would help.
It's not about mistakenly activating both chips, although this is also an important consideration, since if that happens and one chip outputs 0 while the other outputs 1 then there's a short circuit which could kill the output driver of both flash chips.
Experienced users should thus use a jumper cap, since accidentally shortening the two outer pins. Others can use the version with the fet switch or an actual switch.
Not that I don't believe you :p I know nothing of this stuff, but the goal was to make this board as simple as possible.
Anything that requires soldering is already significant overhead for many software people, so replacing two resistors with two other parts isn't that bad IMO. But I do note that the SSOP package can be tricky to solder for a beginner, while a 0603 is still much easier, even if that is starting to get a bit small.
True, which is why I like the giving away idea, to be used as give aways for example.
It's a small board but I think it can be done. The design I used on
I think it would make the board a little bigger again, or actually the SOIC8 3306 could fit on top between the connector, so I think it may be possible using the same size :) Dunno if routing will be still possible :p
Note that SN74CB3T3306 only comes in SSOP and VSSOP packages.
SO8 is only available for SN74CBT3306 which is not usable here since it requires a 5V supply.
Absolute Maximum: VCC Supply voltage range (2) –0.5 7
Recommended Operating Conditions: VCC Supply voltage min: 2.3 max: 3.6
It reads in my datasheet, which matches the name of the part: DUAL FET BUS SWITCH 2.5-V/3.3-V LOW-VOLTAGE BUS SWITCH WITH 5-V TOLERANT LEVEL SHIFTER
My symbol had the package set to SSOP8 already, sorry I didn't send it separately, but it could also have been copied out of the schematic.
I just saw a big warning box 'part missing' and an empty spot, with 8 unconnected pins.
the M57SLI (see http://stuge.se/m57sli/ if curious) is shown in the
Now the left schematic is what your motherboard does? The top right is what's the smallest component count and the ride side is with an easier switch, but higher component count?
Exactly. The version with the SN74LVC1G14 has the advantage that because it is only one contact, the jumper could be replaced with or connected to a pushbutton. This means that there is a kind of dead man's switch for selecting the backup flash chip, which makes it less likely to overwrite the wrong flash chip by accident.
That would increase the size and complexity of the PCB and schematic, but something to concider indeed. Would also drive price up unfortunatly.
Even though I am sure that the 3306 method would be better, I don't understand quite how and why it's needed.
There are two points satisfied by the bus switch:
- Keep the CS# signal on the PCB at all times
- Remote control the switch by connecting a control signal to GND
Point 1 is important because some flash chips are extremely sensitive to noise on CS# and while just a jumper on the PCB should be OK having the jumper there is inspirational for people to put a cable on it, and that will not work. Using the bus switch the cable can be as long as needed. With the circuit on the left I tested a 5 meter cable across the room.
Point 2 is important because GND is the prefered signal to use in a switch. The chassis is often (though not always; see wikipedia on floating ground) connected to ground on the mainboard and if suddenly the switch cables came loose (e.g. in the schematic I used for the M57SLI) then it would be really easy to end up with a short circuit between 3V3 and GND, which is bad since the 3V3 rail is rather powerful, so it would likely destroy several components on the mainboard.
Also I haven't found a 3306 on any of my pcb's to scavenge one off :) I'd reccon the simpler design would allow for easier adaption?
See if you can sample the SN74CB3T3306 from TI/National. TI used to have a vere generous sampling policy. I don't know if it has changed since National.
Advantage of the solderbridge, it can always be broken and this chip added later :D
Finally, I notice you use 100k resistorpacks, but in a previous message I recall you mentioning anything between 1k and 10k should be good? (I happen to have a 103 resistor pack on a pcb here is my wondering :)
The resistors are not neccessarily critical, but in this case weaker is better, in order to not disturb the communication more than neccessary. 10k may also work, but you should test it. Please also test 4k7 so that you know that you have 2x margin.
Well testing (bridge) resistor can always be done once I have finished designing the PCB's ;) IF huge quantities are actually ordered and build, 100k shouldn't be an issue to use.
//Peter
I'll go on then to routing the PCB according to the new schematic and see if I can fit in.