Que tal,
Hasta el momento no me había tenido la necesidad de resetear la FPGA de la iCEStick, para hacer pruebas con el cold boot tengo que resetear la FPGA, por el momento lo había hecho quitado la alimentación por USB y puesto de nuevo, sin embargo creo que se puede solucionar como sigue:
En la imagen de abajo se ve el pin CRESET_B (#66) este pin esta conectado a un pin del integrado FTDI por medio de la señal iCE_CREST (no tengo control sobre esta señal), al mismo tiempo esta conectado a un divisor resistivo R22 y R23, por medio de la resistencia R22 esta conectada a 3.3v, así se mantiene en 1 lógico al pin, la resistencia R23 no esta presente en la PCB.
¿Sería correcto conectar un botón en el lugar de R23 y resetear la FPGA presionando el botón?
Hola Carlos,
Tu suposición es correcta, poniendo un pulsador en lugar de R23 reseteas la FPGA pero también cortocircuitas a masa el pin ADBUS7 (24) del FTDI. Eso podría dañar ese pin e inutilizaría la placa.
En la Icestick, para solucionar este problema debes sustituir R45 por un valor entre 220R y 1K. El divisor formado entre R22 y R45 permite que la FPGA vea el nivel del pin del FTDI y a la vez limita la corriente que entrega el FTDI al poner a masa el pin de CRESET_B con el pulsador.
Los esquemáticos de Kicad que estáis mirando son de la IceZUM v1.0. En esta versión había la posibilidad de hacer este tipo de reset que estamos comentando o bien un "power-on reset" ciclando la alimentación, según qué resistencias se montaran. En la versión 1.1 el reset siempre es poniendo a cero el pin CRESET_B. No hay que resetear nada más en la placa.
Saludos, Eladio
--
Has recibido este mensaje porque estás suscrito al grupo "FPGAwars: explorando el lado libre" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el-lado-libre+unsubscribe@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a fpga-wars-explorando-el-lado-lib...@googlegroups.com.
Visita este grupo en https://groups.google.com/group/fpga-wars-explorando-el-lado-libre.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/42e1548a-df4e-4b95-bc34-02b10976d04b%40googlegroups.com.
Para acceder a más opciones, visita https://groups.google.com/d/optout.
--
Has recibido este mensaje porque estás suscrito al grupo "FPGAwars: explorando el lado libre" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el-lado-libre+unsubscribe@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a fpga-wars-explorando-el-lado-li...@googlegroups.com.
Visita este grupo en https://groups.google.com/group/fpga-wars-explorando-el-lado-libre.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/0a454c01-10f6-4f8c-ae60-560a55301578%40googlegroups.com.
Que tal Eladio,
Me había quedado con la duda de tu primer
respuesta así que busque el esquemático de la versión 1.1 y en el botón
(SW4) del que se obtiene la señal FPGA_RESET vi que hay un diodo conectado en inversa, del botón al pin del FPGA,
como soy novato en diseño de hw no estoy seguro de su función, ¿es para
aislar los 5v del botón de los 3v3 de la resistencia de pull-up (R3)?
Saludos
- Carlos
--
Has recibido este mensaje porque estás suscrito al grupo "FPGAwars: explorando el lado libre" de Grupos de Google.
Para cancelar la suscripción a este grupo y dejar de recibir sus mensajes, envía un correo electrónico a fpga-wars-explorando-el-lado-libre+unsubscribe@googlegroups.com.
Para publicar en este grupo, envía un correo electrónico a fpga-wars-explorando-el-lado-li...@googlegroups.com.
Visita este grupo en https://groups.google.com/group/fpga-wars-explorando-el-lado-libre.
Para ver esta conversación en el sitio web, visita https://groups.google.com/d/msgid/fpga-wars-explorando-el-lado-libre/ee4f2c6c-089f-45f0-9d5d-ba29a7e5f070%40googlegroups.com.