Multiplexer and SPI flash, load capacitance issue? - Page 1
Forum section: electronics / projects

author: 74HC04
author_rank: Contributor
timestamp: September 07, 2011, 08:46:53 pm
content: I am working on a project which requires modifying an existing design where a M25P64 SPI flash IC is connected to a micro. The modification is to allow the Flash to be programmed in-circuit at high speed using an external programmer and the current plan of attack is to use a 4-bit 1-of-2 mux such as the 74CBTLV3257, using the programmer's connector to toggle connectivity.Whilst other options, including DIP switches have been considered, these have been dismissed as too prone to assembler error in the Production enviroment and work out at similar cost to an electronic solution. A programming header, jumpered by 0R links exists in the current design allowing the flash to be safely programmed if the links to the micro are removed. Since the links are 0402 (this is a high density board!), installing these post programming is less than ideal. I suppose that good quality 0.1" jumpers are one option but these have so far been dismissed due to the risk of reliability issues in the field (perhaps I'm beingwaytoo cautious here but this is a rugged design and I'm concerned about shock/vibration working the jumpers loose... Or Production staff again forgetting to fit them!)I have experiemented with a Totalphase Cheetah SPI host adapter connected to the existing header and can acheive clock speeds of 40MHz before the link fails. Crudely adding capacitors from all 4 SPI lines to ground made the link unreliable at somewhere between the 10pF and 22pF marks. Looking at the datasheets for the various componets, it looks as though the flash can withstand a total capacitive load of 30pF max. I am struggling to find a multilplexer with a low enough capacitance as to avoid compromising the bus integrity.Hopfully, I'm doing the maths wrong here but taking the NXP I am working on a project which requires modifying an existing design where a M25P64 SPI flash IC is connected to a micro (well, an ASIC containing a micro actually, but I digress!). The modification is to allow the Flash to be programmed in-circuit at high speed using an external programmer and the current plan of attack is to use a 4-bit 1-of-2 mux such as the 74CBTLV3257.Whilst other options, including DIP switches have been considered, these have been dismissed as too prone to assembler error in the Production enviroment and work out at similar cost to an electronic solution. A programming header, jumpered by 0R links exists in the current design allowing the flash to be safely programmed if the links to the micro are removed. Since the links are 0402 (this is a high density board!), installing these post programming is less than ideal. I suppose that good quality 0.1" jumpers are one option but these have so far been dismissed due to the risk of reliability issues in the field (perhaps I'm beingwaytoo cautious here but this is a rugged design and I'm concerned about shock/vibration working the jumpers loose... Or Production staff again forgetting to fit them!)I have experiemented with a Totalphase Cheetah SPI host adapter connected to the existing header and can acheive clock speeds of 40MHz before the link fails. Crudely adding capacitors from all 4 SPI lines to ground made the link unreliable at somewhere between the 10pF and 22pF marks. Looking at the datasheets for the various componets, it looks as though the flash can withstand a total capacitive load (CL) of 30pF max (on the clock line???). Hopefully, Iam just doing my maths here but I am struggling to find a multilplexer with a low enough capacitance to be confident in designing it into a prototype respin of the product. The only options that came to mind are USB multiplexers such as TI's TS3USB221 but these come at a high cost with no second source manufacturer. If I'm reading the datasheets correctly, these present circa 6pF when the mux is switched on.Taking an NXP '3257 as an example (worst case so far for CL)Worst case capacitance: 8pF (Output capacitance of flash) + 14.3pF ("Cson") of '3257 + 5pF (specified capacitance to GND of Micro's pins) = 27.3pF. The PCB tracking would also present a few more pF in all likelyhood.With the deadline approaching, please somebody tell me that I've got this all wrong!!! Buffering would probably notch up the cost and board space a little too much and jumpers are looking like the best option right now. KISS, right?Many thanks,RFlash >http://http://www.micron.com/get-document/?documentId=5980Mux >http://www.nxp.com/documents/data_sheet/74CBTLV3257.pdfUSB Mux >http://www.ti.com/product/ts3usb221a?qgpn=ts3usb221aA similar enquiryhttp://e2e.ti.com/support/logic/f/151/t/60684.aspx

author: Gall
author_rank: Frequent Contributor
timestamp: September 08, 2011, 07:24:49 am
content: Hm. The capacitance is NOT the sole cause of similar problems. Cold joints or board leakage have very similar results. (If one of your wires has hogher resistance than it should, or if one of your insulators has lower resistance, it will result in higher sensitivity to parasitic capacitancec).Try to measure exact waveforms, using i.e. 1:100 divider with low capacitance.In the worst case, a buffering can be done with TI's "LittleLogic".

author: 74HC04
author_rank: Contributor
timestamp: September 08, 2011, 06:46:45 pm
content: Thank you very much for your reply, Gall. I shall endeavour to take measurements and look into "Littlelogic" in due course