Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

25/07/2014 #1

Avatar de seaarg

Consulta sobre adaptar impedancias
Foristas,

Estoy diseñando un PCB de un sistema digital de alta frecuencia, en el cual tengo un GAL22v10 manejando un bus de direcciones.

Dicho bus esta conectado a 8 memorias SRAM y en el correran datos a una frecuencia maxima de 100mhz

Cada linea del bus es basicamente un cable de 0.3 mm en el PCB y la longitud total del bus es de aproximadamente 15 cm (recorriendo las 8 memorias)

Se me ocurre entonces que para evitar reflexiones y degradacion de la señal, tengo que colocar un terminador al final de cada linea del bus. Tengo, que conozca, 2 opciones:

Opcion A: Diodo a positivo y negativo al final de la linea para cortar picos. Serian 62 diodos (15 lineas de direccion + 16 lineas de datos) Una locura.

Opcion B: Resistor de terminacion a masa en cada linea. Y aqui esta mi problema:

En el datasheet del GAL que adjunto, no encuentro un parametro que me diga la impedancia de salida del mismo. Si veo la corriente que pueden entregar (16ma y -3.5ma) para lo cual podria poner un valor de resistor tal que no supere esa corriente.

Por el final del datasheet, veo unos AC test circuits donde ponen cargas de 300 ohms a positivo y 390 ohms a gnd. Y otro donde asumen 50 ohms de impedancia (me parece muy poco!!! mucha corriente no?)

¿Alguien me puede tirar una soga al respecto para saber que resistor poner, o de que otra forma puedo hacer esto?

Probablemente si lo hago sin terminador ni nada "ande" pero mi idea es hacer señales lo mas perfectas posible, sin ringing.
25/07/2014 #2

Avatar de foso

No es tanta corriente. Mi cálculo:

considerando Vcc = 5V, y la impedancia de salida 50 Ω.

Para la red de 2 resistores de 300 Ω y 390 Ω:
Suponiendo salida en bajo, te quedan 50 Ω en paralelo con 390 Ω --> 44.32 Ω.

Luego la tensión en el medio del divisor resistivo es de:

5V / (300Ω+44.32Ω) * 44.32Ω = 0.64 V

y la corriente entrante al GAL sería de 0.64 V / 50Ω = 12.8 mA

Haciendo la misma cuenta para el estado alto me da 9.9 mA de corriente de salida.

Que tengan 50 Ω de impedancia de salida no quiere decir que estén preparados para entregar alta corriente, es como los operacionales que traen baja impedancia de salida pero no se los puede cargar mucho, yo creo que la impedancia tiene que ser 50 Ω, es el valor estándar, te dejo un documento de Lattice donde matchean otras FPGA.
Lo que sí, no me está dando la adaptación de impedancias, la línea de 50 ohm estaría viendo 170 ohm ¿?
saludos
26/07/2014 #3

Avatar de seaarg

Excelente documento foso, muchas gracias por tu aporte.

Tambien veo en este documento que se asume una Z de 50 ohms y le ponen un resistor de 50 ohms a VCC solamente. (en vez de a GND como yo pondria).

Supongo que la razon de esto es que el PLD puede recibir mas corriente que la que entrega. Es decir, que en estado BAJO puede circular aprox. el triple de corriente que en alto, entonces, el resistor a positivo no representa carga significativamente alta contra lo que seria un resistor a GND.

Sin embargo, con 1 solo resistor mi cuenta es: 5v = I x 50 = 5 / 50 = 100 mA y ahi es donde radica mi duda. ¿Poner 2 resistores como divisor de tension, que daria los valores que vos pones o colocar 1 solo resistor a positivo pero mas grande para acomodarlo a la corriente que maneja el GAL? Esta ultima forma creo que me tiraria la adaptacion de impedancias a cualquier lado, porque ya no serian la misma impedancia.

Ademas, esta GAL manejaria las lineas de direccion de varias SRAM. ¿Tengo que considerar la impedancia de entrada de dichas ram o solamente poner simplemente resistencias como terminador ignorando en la cuenta la impedancia de ellas? Son CMOS, no me fije el datasheet pero asumo 1 mega de impedancia de entrada?

Por ultimo: Siempre que hice mis PCB, a cada integrado le pongo su capacitor entre vcc y Gnd, y en serie a vcc pongo un inductorcito, normalmente de 100 uH (sin calcular) a modo de pasabajos para limpiar las lineas de alimentacion. ¿Es buena esta practica o tengo que tener algo mas en cuenta? Me lo pregunto porque en las placas de circuitos digitales que veo, solo tienen el capacitor, nunca un inductor.
26/07/2014 #4

Avatar de foso

El filtro para la alimentación se suele hacer con un ferrite bead, es un tubito de ferrita por el que se le pasa un alambre por el agujero:

estos dan una inductancia de 1 µH aproximadamente. Se coloca en serie un resistor de 10 Ω para bajar el factor de mérito del filtro y que no provoque oscilaciones. Luego el capacitor puede andar de 1µF a 10µF de tantalio en paralelo con 100 nF cerámico.

Volviendo al tema del GAL estoy viendo que la corriente máxima de salida es de 3.2 mA , asique ahora tengo mis dudas de la impedancia de salida. Puede que sea mayor entonces a 50 Ω.

Para la impedancia de entrada de las memorias creo que estaría bien considerar solo la capacidad, que puede andar en los 5 pF.

Estoy haciendo una cuenta que me dice que casi no es necesario considerar la línea de transmisión para este caso:
La velocidad de propagación de la onda en la línea es aproximadamente:
v = c / √Er , donde Er es la permitividad relativa y puede valer 5 para el pertinax , v = 134 Mm/s, suponiendo que el trazo de pista midiera 10 cm, me da un tiempo de propagación de 750 ps, no llega al nanosegundo. Y considerando ondas cuadradas de 100 MHz como máximo tenemos pulsos de 5 ns. Creo que se podría despreciar el efecto todavía a esta frecuencia. Igual es necesario una buena terminación para no tener sobrepasos excesivos.

Yo probaría con el arreglo de los dos resistores de 300 y 390Ω. Tal vez podrías probar medirle la corriente entrante y saliente para estado bajo y alto respectivamente antes de hacer el PCB, y verificar que no superen las corrientes máximas.
Imágenes Adjuntas
Tipo de Archivo: png noizeplaza_110614_en_1.png (12,3 KB (Kilobytes), 34 visitas)
26/07/2014 #5

Avatar de seaarg

Estaba viendo el datasheet de los buffers 74LS245 y estos tienen en sus entradas los clamp diodes de proteccion. Los mismos limitan el ringing tambien por lo que concluyo (espero que no equivocadamente) que para las lineas de dato no me va a ser necesario terminador, si para las lineas de direccion.
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.