4 votos

Lo que "el autobús de vuelta de la" demora si mi PSRAM?

Tengo un PSRAM impulsado por un STM32. Una de las opciones de tiempo para el STM32 es el bus de vuelta de la FSMC_BusTurnAroundDuration. El BRAZO manual de referencia (véase la página 1250) dice:

Estos bits son escritos por software para insertar el autobús de vuelta de la demora después de un solo acceso de lectura a partir de multiplexado NI memoria Flash para evitar contención de bus si el controlador necesita de la unidad de direcciones en la bus de datos para el siguiente lado-por-lado de la transacción.

Ahora mi PSRAM no NOR Flash y no el multiplexado de líneas de datos y direcciones, así que supuse que FSMC_BusTurnAroundDuration es un "no me importa" en mi caso. Sin embargo, cuando me puse a

FSMC_BusTurnAroundDuration = 0;

a continuación, el BRAZO se bloquea. Cualquier valor entre 1 y 15 no se bloquee el BRAZO.

¿Por qué es el bus de vuelta duración relevantes para mi PSRAM?

30voto

ozmank Puntos 127

Tal vez FSMC_BusTurnAroundDuration = 1 es la mínima latencia para los no-mux había direccionable de datos.

3voto

Alex Andronov Puntos 178

Usted no parece tener vinculada a la correcta documento, como su documento vinculado no tiene una página 1250. Sin embargo, puedo adivinar el carácter general de lo que está sucediendo. Generalmente, cuando se realiza un intento de leer un chip de memoria, el dispositivo realiza la lectura mantendrá la petición de lectura activa durante un ciclo completo. El chip de memoria seguirá salida de datos, siempre y cuando su solicitud de lectura activa, y durante un corto periodo de tiempo a partir de entonces. Si en el siguiente ciclo de bus es algo distinto de una lectura de que el chip de la memoria, el chip de memoria puede continuar salida de datos durante la parte de que el próximo ciclo de bus. Esto puede causar contención de bus, lo que resulta en un exceso de consumo de corriente, y también puede evitar que el dispositivo que debe conducir el autobús de hacerlo con éxito. Entrega retrasos de varios tipos se utilizan para permitir que un dispositivo que está conduciendo un autobús a dejar de hacerlo antes de que otro dispositivo comience a conducir.

No sé si el problema que tienes con cero retraso es causado por la disputa anterior escenario en particular, ya que muchos sistemas tienen un número de situaciones en las que la disputa podría ocurrir. El principio general es el mismo para muchos de ellos, sin embargo.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X