# STM32F4 FSMC 8-bit data width with 10+ bit addressing

I'm planning to interface an FPGA to a STM32F29/439 via the FSMC (Flexible Static Memory Controller). To save pins I would like to use the address/data multiplexing feature. Thus according to the datasheet for 16-bit mode I have multiplexed signals AD[1..16] and control lines nADV, nWE, nOE and nEN.

Now I only need 8-bit data width but still need at least 10-bit wide addresses, leading to multiplexed signals AD[1...8], non-multiplexed high address bits A[9..10] plus usual control lines. Since this assymetric case is not mentioned explicitly in the datasheet I ask whether someone can share some experience.

Clarification: I'm using a STM32F429 but in general this applies to all STM32F4 with FSMC. I think that the NOR-Flash interface would be most appropriate but unfortunatley the datasheet only mentions 16-bit memory data size, albeit without saying that 8-bit mode is unavailable for NOR Flash.

• Which part is giving you trouble? – Ignacio Vazquez-Abrams Nov 13 '14 at 8:36
• @IgnacioVazquez-Abrams see my edit. – Arne Nov 13 '14 at 8:44
• The main issue I see is whether or not AD[8..9] will need an address latch in 8-bit mode. Since you will be latching AD[0..7] anyway, it would be a small thing to go ahead and latch AD[8..9] in the FPGA. I'd say go for it. Even if 8-bit mode turned out to be not supported with a multiplexed bus, you could set-up for 16-bit mode and just not assign AD[10..15] to the FSMC alternate function, then just do 8-bit accesses skipping every other address. (assuming you're really just interested in I/O port type access into the FPGA) – Tut Nov 13 '14 at 11:49
• By the way, I am currently using a 16-bit multiplexed PSRAM interface into an FPGA using the FSMC of an STM32F405VG. It's a shame no one has responded to your query on the ST forum. ST should either exclude this mode or document it better. – Tut Nov 13 '14 at 12:00
• @Tut I'm not at all concerned with the functionality inside the FPGA - I'wonder whether the AD[8..9] signals of the STM32 will output the address in 8-bit mode. – Arne Nov 13 '14 at 12:25