Hi,
after combing through the SST data sheets for the * SST49LF008A * SST49LF080A * SST49LF016C * SST49LF160C parts, I am fairly sure I found a procedure to have multiple flash parts attached at the same time which should just work.
Simply use two chips of the same model, connect all of their pins except ID[0], wire ID[0] of each of the chips to one side of an intermediate switch which is connected to Vcc and GND on the other side. The intermediate switch makes sure exactly one chip has Vcc at ID[0] and the other one has GND at ID[0]. The switch with GND on ID[0] is the one selected. However, you need to drive the RST# pin of both chips to GND for 1µs whenever you want them to change roles during system operation.
So you'll need: * 2 identical flash chips * intermediate switch (can be hardware) * a way to drive RST# to GND without shorting the board * serious soldering skills to solder two chips to each other
Sounds nice? Surely there's a catch. It can't be that easy, right? Tell me!
Regards, Carl-Daniel
Simply use two chips of the same model, connect all of their pins except ID[0], wire ID[0] of each of the chips to one side of an intermediate switch which is connected to Vcc and GND on the other side.
You'll need a pull up/down resistor on that line probably.
- a way to drive RST# to GND without shorting the board
That's what diodes are for ;-)
- serious soldering skills to solder two chips to each other
Two sockets, some wire / PCB. Soldering them directly together would be very fragile.
Sounds nice? Surely there's a catch. It can't be that easy, right? Tell me!
Well you've got the basic idea right, there are some details to get right though, as always. Things can be slightly different per kind of chip and per board, too, be aware of that.
Segher
Carl-Daniel Hailfinger wrote:
So you'll need:
- 2 identical flash chips
- intermediate switch (can be hardware)
You need to disconnect ID0 from the board to the ROMs also, bending the J-Lead of that pin on the bottom part up is possible, and it won't break if you do it only once. (boards sometimes short ID pins to ground, with no pulldown to defeat)
- a way to drive RST# to GND without shorting the board
- serious soldering skills to solder two chips to each other
It is not that difficult. Straighten out the J-Leads on the "top" PLCC. Stack the parts, and just keep the solder from messing up the pins on the bottom part, and you are fine. Thirty-two pins soldered will be quite strong. You'll end up with two roms stacked up, and a jumper super glued to the top one. If you want to make 100, you'll want to just make a pcb.
Sounds nice? Surely there's a catch. It can't be that easy, right? Tell me!
Production lines utilize this same feature, the bed of nails controls the ID pins to allow automated test and programming by using 2 LPC parts on the same bus. It will work fine.
On 26.02.2007 04:29, Tom Sylla wrote:
Carl-Daniel Hailfinger wrote:
So you'll need:
- 2 identical flash chips
- intermediate switch (can be hardware)
You need to disconnect ID0 from the board to the ROMs also, bending the J-Lead of that pin on the bottom part up is possible, and it won't break if you do it only once. (boards sometimes short ID pins to ground, with no pulldown to defeat)
I'm currently pondering whether putting the two chips on top of an PLCC32 plug might make this easier. It certainly will facilitate removing the whole thing again and be less prone to breaking anything. While I'm at it, another question would be about how long wires may be at maximum (should I need them). My calculations suggest that 10cm would still be OK with the given timings and frequencies. However, I have no idea whether interference would already be too strong for the signals from/to the ROM.
- a way to drive RST# to GND without shorting the board
Do you have any pointer how long RST# is engaged in production to switch between the chips? I'm worried about how long is too long. The data sheets suggest ~100ns as minimum reset time, but if I do connect both RST# lines to a push-button, the time will probably be at least a million times longer.
- serious soldering skills to solder two chips to each other
It is not that difficult. Straighten out the J-Leads on the "top" PLCC. Stack the parts, and just keep the solder from messing up the pins on the bottom part, and you are fine. Thirty-two pins soldered will be quite strong. You'll end up with two roms stacked up, and a jumper super glued to the top one. If you want to make 100, you'll want to just make a pcb.
Good to know.
Sounds nice? Surely there's a catch. It can't be that easy, right? Tell me!
Production lines utilize this same feature, the bed of nails controls the ID pins to allow automated test and programming by using 2 LPC parts on the same bus. It will work fine.
Great.
Regards, Carl-Daniel
FYI: http://fab51.com/workshop/bios/dual_bios1.html
This page describes how you did same stuff, although written in Japanese.
--- Okajima, Jun. Tokyo, Japan.
Jun OKAJIMA wrote:
FYI: http://fab51.com/workshop/bios/dual_bios1.html
This page describes how you did same stuff, although written in Japanese.
--- Okajima, Jun. Tokyo, Japan.
Google's translation (to english): http://translate.google.com/translate?hl=en&sl=ja&u=http://fab51.com...
Thanks for the great link!
-Corey
On Sun, Mar 04, 2007 at 11:47:29AM +0900, Jun OKAJIMA wrote:
FYI: http://fab51.com/workshop/bios/dual_bios1.html
This page describes how you did same stuff, although written in Japanese.
It also shows that Gigabyte DualBIOS in fact means that there are two flash chips on the board.
//Peter