Avances en el desarrollo del ZX-Uno

Sinclair QL, ZX81, +2, +3, 128K ...
Avatar de Usuario
TallerSeverino
Amstrad PC 1640
Amstrad PC 1640
Mensajes: 517
Registrado: 12 Abr 2013, 09:55
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Nintendo NES/Clónica
Primera consola: Nintendo NES/Clónica
Ubicación: Cádiz
Gracias dadas: 17 veces
Gracias recibidas: 15 veces

Re: Avances en el desarrollo del ZX-Uno

Mensajepor TallerSeverino » 02 Abr 2014, 10:21

antoniovillena escribió:TallerSeverino estoy mirando circuitos de audio en otras placas del estilo, y por ahora todas tienen un simple circuito paso bajo y de valores muy parecidos a los que tiene el ZX-Uno (3.3K en lugar de 3.9K y 4.7nF en lugar de 10nF)

A ver qué dice McLeod sobre el cambio de resistencia a 820 ohm. Con respecto al otro circuito, son 10 componentes en lugar de 4 y no tenemos mucho espacio, habría que ver si realmente es un problema o no la falta de filtro de continua.

Estoy de acuerdo, esto complica el diseño, pero como estaba "pensando en modo analógico" por eso he puesto el circuito "ideal" que suele ir detrás de un transistor o de un operacional. Recuerdo por ejemplo que la mayoría de circuitos zx de audio dicho condensador era del orden de pF, por eso me interesé al ver 10nF.
antoniovillena escribió:-- Actualizado 02 Abr 2014, 02:21 --

He encontrado este documento donde te dicen cómo calcular los componentes RC del filtro óptimos.

http://www.xilinx.com/support/documenta ... app154.pdf

Parece ser que los diseñadores de la Papilio Wing y de la pipistrello tenían en mente un DAC de 6 u 8 bits, mientras que los de la MOD-VGA (por tanto nosotros también que nos hemos copiado de ellos) pensaron en uno de 10 bits.


Este documento sí que me resulta más comprensible en términos de que usamos un dac de 10 bits y que es " de cajon" usar un paso bajo tal y como recomienda el fabricante, lo que hay que tener constante es R*C, así que según éste pdf, para un DAC de 10 bits R=6,8K y C= 4,7nF.
Si R*C debe ser constante, el resultado es muy parecido con 3k9 y 10nF, en el ejemplo del pdf, RC= 0,00003196, para 3,9k y 10nF RC= 0,000039. Prácticamente lo mismo.

Esta web ayuda a calcular la frecuencia de corte de los paso bajos:

http://www.ekswai.com/en_lowpass.htm

En un caso sale 4.9Khz y en el otro 4.08Khz.

Esto es simplemente para asegurar que no se cuelen armónicos del dac, supongo. Lo que sí creo es que se está asumiendo en el documento pdf que detrás de este paso bajo hay que tener un buffer, para que no afecte al funcionamiento del paso bajo dependiendo de la carga.
Copiado del pdf:
The user may implement a more sophisticated filter if the simple RC filter
has inadequate cutoff or drive characteristics for the application.
"El usuario puede implementar un filtro más sofisticado si el filtro RC simple tiene una frecuencia de corte o características de carga inadecuada para la aplicación"

Por simplicidad en la placa, los de mod-vga han eliminado esa parte, todo lo relacionado con el audio se realiza después en otro módulo aparte. Es básicamente como el circuito ear pero en plan buffer. y si me apuras reduciendo el número de componentes al mínimo. Cualquier filtro necesita de un buffer, si no, la carga, ya sea el scart o unos cascos hacen que el paso bajo "ideal" ya no se comporte como tal.

En esta página hay varios ejemplos:
http://www.muzique.com/lab/buffers.htm

Son circuitos complicados en el número de componentes, pero esto asegura que el filtro del dac está aislado de la carga y además podemos eliminar la contínua en el mismo buffer. Voy a ver qué ocupa menos, si dos transistores discretos o un operacional doble tipo tl072 (del tamaño de la winbond).

No digo nada de cambiar la resistencia, hay que respetar lo que dice el fabricante; todo lo que propongo debería ir después de este filtro. Voy a simular algo con el BC846 y sigo; lo único que hay que tener en cuenta son los Vpp que salen del dac, ¿Asumimos 3V?

En páginas de DIY audio es muy común respetar que no haya contínua sobre todo en cascos, 20mV de contínua pueden dañar los cascos, que si son de 2€ no pasa nada, pero si son unos AKG superiores a 50€ ya hay que pensarlo mejor:
http://tangentsoft.net/audio/trouble.html

Aquí hay un ejemplo del uso en buffer de los operacionales, en este caso es uno bastante caro, pero los hay tipo tl072 que son duales, los alimentamos con GND y 5v y luego desacoplamos:
Imagen

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 7 veces

Re: Avances en el desarrollo del ZX-Uno

Mensajepor antoniovillena » 02 Abr 2014, 12:57

He estado viendo otros circuitos que se "saltan" lo que recomienda el fabricante, por ejemplo minimig/mist hace esto:

https://code.google.com/p/mist-board/wiki/Board13

Es un filtro de orden 2 con un desacoplo (para quitar continua) a la salida.

Avatar de Usuario
TallerSeverino
Amstrad PC 1640
Amstrad PC 1640
Mensajes: 517
Registrado: 12 Abr 2013, 09:55
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Nintendo NES/Clónica
Primera consola: Nintendo NES/Clónica
Ubicación: Cádiz
Gracias dadas: 17 veces
Gracias recibidas: 15 veces

Re: Avances en el desarrollo del ZX-Uno

Mensajepor TallerSeverino » 02 Abr 2014, 14:11

antoniovillena escribió:He estado viendo otros circuitos que se "saltan" lo que recomienda el fabricante, por ejemplo minimig/mist hace esto:

https://code.google.com/p/mist-board/wiki/Board13

Es un filtro de orden 2 con un desacoplo (para quitar continua) a la salida.


En el pdf de xilinx decía que si la frecuencia de corte (4Khz en zx-uno) o las características de "drive", vamos de carga al fin y al cabo no se cumplían se pueden implementar filtros más selectivos, esto es en vez de 1er orden pues 2º orden, lo que no tengo muy claro, y hoy tengo un dolor de cabeza tremendo es la resistencia de 1k conectando los dos canales en el "mist", supongo que existe una razón teórica detrás, pero vamos, esto lo que incita es al "cross-talk" que siempre es un quebradero de cabeza en los amplis, que un canal se cuele en el otro. Leyendo un poco en la wiki del atari ST, este modelo es mono así que lo que se intenta en este esquemático, aparte del filtro, es usar un conector stereo donde las salidas L y R son idénticas. Ahí si tiene sentido sumar las señales L y R. Como yo lo estoy viendo desde un punto de vista stereo, pues hay que mantener esas señales lo más separadas posible, eso sí, hablo ya una vez que haya pasado por el DAC y hayamos aplicado un paso bajo acorde tanto a los bits del dac como a la frecuencia a la que funcione.
A ver si me aclaro yo mismo, la salida del dac tiene que llevar un paso bajo, un filtro RC como el que está implementado. Lo siguiente es poner un buffer, para que el bloque dac/filtro queden aislados, después del buffer se puede hacer lo que queramos. Como el desacoplo lo vamos a hacer al final de la cadena, los operacionales, 8 pines, se alimentan con 0v en v- y 5v o 3,3v en v+, así no hay que añadir tierras virtuales que lo que hacen es añadir componentes y complicar el diseño, yo tengo aquí operacionales varios, tanto jfet, bipolares, etc y cuando termine de montar puedo hacer pruebas, aunque sean en formato grande, los formato smd miden menos de 5mm y sólo hay que añadir 3 componentes por canal, es decir, el op-amp, condensador de desacoplo y resistencia (filtro paso alto) como ha dicho Mcleod, en vez de poner un divisor de tensión se pone una en serie en cada canal de acuerdo con las especificaciones scart. y dependiendo de la amplitud de la señal. Si lo hicieramos con transistores discretos tenemos que polarizarlos, y solo con eso ya tienes 3 resistencias "extra". Voy a por un ibuprofeno...

Avatar de Usuario
mcleod_ideafix
Amiga 2500
Amiga 2500
Mensajes: 5316
Registrado: 06 Oct 2009, 04:12
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Vectrex
Primera consola: TV Games/Pong Clone
Ubicación: Jerez de la Frontera
Gracias dadas: 12 veces
Gracias recibidas: 51 veces
Contactar:

Re: Avances en el desarrollo del ZX-Uno

Mensajepor mcleod_ideafix » 02 Abr 2014, 15:11

De verdad... yo es que ni me molestaba en bufferear la salida. Las impedancias de entrada de linea son lo suficientemente altas ( > 10K) como para no tener que preocuparse por el desvío en los parámetros del filtro al conectar la carga. Es deseable un buffer, sí, pero es que no hay espacio para florituras.

Estoy viendo por ejemplo la etapa de entrada de audio del monitor 1084, que no es que sea representativo de los monitores que llevan SCART, pero al menos tengo el esquemático y me vale como referencia, y la impedancia de entrada que tiene es de 22K para las entradas SCART, y 18K para la entrada de audio RCA. Por supuesto, tiene un condensador de desacoplo en la entrada al amplificador de audio.

El circuito RC tiene una impedancia de salida de alrededor de 3K (el pin de salida de la FPGA tiene, si mal no recuerdo, unos 25 ohm. de impedancia, pero te hablo de memoria), así que no estamos perdiendo potencia ni estamos distorsionando, ya que vamos siempre de menos impedancia a más impedancia.

Que sí que sería aconsejable reducir el voltaje de salida total. No recuerdo ahora mismo lo que ha puesto Antonio de sus cálculos, pero si son así, entonces es que ni siquiera hay que reducir nada. A mi me salían 3V como tensión máxima de salida en el circuito RC (con una carga de 47K, con 22K de carga me salen 2,8V).

Según se lee aquí ( http://martin.hinner.info/vga/scart.html ) la tensión de entrada de audio son 0,5Vrms , lo que corresponde a 1,414V pico a pico. O sea, justo la mitad de lo que tengo calculado para una impedancia de entrada de línea de 22K.

Así que entonces, según lo veo, bastaría con una resistencia en serie de 22K (o un poquito más) después del filtro RC, para que junto con la resistencia de 22K interna de la etapa de entrada de la tele, tener como tensión de entrada, los referidos 1,4V pico a pico. La frecuencia de corte del filtro y demás parámetros del mismo no se resienten (al menos no significativamente) por ello.
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 7 veces

Re: Avances en el desarrollo del ZX-Uno

Mensajepor antoniovillena » 02 Abr 2014, 15:36

Tengo hecho el cable RGB, puedo hacer una prueba de enviar una onda cuadrada por el speaker y medir con el osciloscopio la señal de audio (evidentemente con el Scart enchufado)

Avatar de Usuario
TallerSeverino
Amstrad PC 1640
Amstrad PC 1640
Mensajes: 517
Registrado: 12 Abr 2013, 09:55
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Nintendo NES/Clónica
Primera consola: Nintendo NES/Clónica
Ubicación: Cádiz
Gracias dadas: 17 veces
Gracias recibidas: 15 veces

Re: Avances en el desarrollo del ZX-Uno

Mensajepor TallerSeverino » 02 Abr 2014, 15:38

mcleod_ideafix escribió:De verdad... yo es que ni me molestaba en bufferear la salida. Las impedancias de entrada de linea son lo suficientemente altas ( > 10K) como para no tener que preocuparse por el desvío en los parámetros del filtro al conectar la carga. Es deseable un buffer, sí, pero es que no hay espacio para florituras.

Así que entonces, según lo veo, bastaría con una resistencia en serie de 22K (o un poquito más) después del filtro RC, para que junto con la resistencia de 22K interna de la etapa de entrada de la tele, tener como tensión de entrada, los referidos 1,4V pico a pico. La frecuencia de corte del filtro y demás parámetros del mismo no se resienten (al menos no significativamente) por ello.


Oks. Yo solo comento mejoras que pueden aportarse, si no hay espacio pues nada. No conectéis cascos a los que les tengáis mucho cariño...

Avatar de Usuario
mcleod_ideafix
Amiga 2500
Amiga 2500
Mensajes: 5316
Registrado: 06 Oct 2009, 04:12
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Vectrex
Primera consola: TV Games/Pong Clone
Ubicación: Jerez de la Frontera
Gracias dadas: 12 veces
Gracias recibidas: 51 veces
Contactar:

Re: Avances en el desarrollo del ZX-Uno

Mensajepor mcleod_ideafix » 02 Abr 2014, 16:35

TallerSeverino escribió:Oks. Yo solo comento mejoras que pueden aportarse, si no hay espacio pues nada. No conectéis cascos a los que les tengáis mucho cariño...

La intensidad de salida con el cambio (la resistencia) propuestos, es de 2,8V / 22K = 127 microamperios máximo. Eso suponiendo que se cortocircuitaran los terminales de salida de audio. Pinchando unos auriculares Sennheiser Momentum (por buscar por internet el primero que he visto "caro y bueno") que tienen una impedancia de 18 ohmios y aguantan 200mW, y haciendo que el DAC emita el nivel de continua mayor posible (esto es, el DAC emitiendo el valor 255 -es un DAC de 8 bits- , y por tanto sacando una señal de 2,8V antes de la resistencia limitadora) tenemos:

- Corriente DC que pasa por los altavoces: 2,8 / (22000+18) = 127 uA (los 18 ohmios son practicamente un cortocircuito comparado con las resistencias que estamos usando, de ahí que el valor de intensidad sea practicamente el mismo que en modo cortocircuito)

- Potencia disipada por cada altavoz, por el hecho de pasar esa corriente DC: el altavoz hace de divisor de tensión. La tensión a la entrada son 2,8V, la resistencia R1 es de 22K y la R2 es el propio altavoz, es decir, 18 ohm. La intensidad sigue siendo 127 uA, pero la tensión existente en bornes del altavoz es: 2,8 * 18 / (18+22000) = 2,29mV -vamos, inaudible- . La potencia disipada, ridícula: 0,291 microwatios. Disipa mucha más potencia la pobre resistencia de 22K que hemos usasdo para atenuar el nivel de la señal: (2800mV - 2,29mV) * 127uA = 355,31 microwatios.

Vamos, que yo tampoco conectaría cascos, independientemente del cariño que se les tenga, pero no porque te los cargues, sino porque lo que es escuchar, no se escucharía nada (o quizás un leve murmullo, no sé que sensibilidad tienen esos cascos).
Recuerda: cada vez que se implementa un sistema clásico en FPGA, Dios mata a un purista

Avatar de Usuario
TallerSeverino
Amstrad PC 1640
Amstrad PC 1640
Mensajes: 517
Registrado: 12 Abr 2013, 09:55
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Nintendo NES/Clónica
Primera consola: Nintendo NES/Clónica
Ubicación: Cádiz
Gracias dadas: 17 veces
Gracias recibidas: 15 veces

Re: Avances en el desarrollo del ZX-Uno

Mensajepor TallerSeverino » 02 Abr 2014, 17:35

mcleod_ideafix escribió:
TallerSeverino escribió:Oks. Yo solo comento mejoras que pueden aportarse, si no hay espacio pues nada. No conectéis cascos a los que les tengáis mucho cariño...


Vamos, que yo tampoco conectaría cascos, independientemente del cariño que se les tenga, pero no porque te los cargues, sino porque lo que es escuchar, no se escucharía nada (o quizás un leve murmullo, no sé que sensibilidad tienen esos cascos).


Yo lo decía antes de poner la resistencia serie de 22k después del filtro. Los cascos suelen tener de media 32 ohms, pero pueden llegar a 60, pero bueno.
2,8V con 18ohms ( en serie con la de 3k9 son 0,25mA , en los cascos hay 4,5mV ; 0,7mW, es realmente poco, normalmente la sensibilidad son 100dBSPL/V. 4,5mV se traducen en ..0,45dBSPL, que alguien me pegue un tirooooo! eso es que o he hecho mal las cuentas o no se escucha absolutamente nada. Todo esto debe ser que aún estoy paranoico tras haberme cargado un grave de mi altavoz debido a que se olvidó verificar el offset. ](*,)

Avatar de Usuario
antoniovillena
Amiga 1200
Amiga 1200
Mensajes: 2013
Registrado: 16 Abr 2012, 21:22
Gracias recibidas: 7 veces

Re: Avances en el desarrollo del ZX-Uno

Mensajepor antoniovillena » 02 Abr 2014, 19:16

TallerSeverino escribió:Yo lo decía antes de poner la resistencia serie de 22k después del filtro. Los cascos suelen tener de media 32 ohms, pero pueden llegar a 60, pero bueno.
2,8V con 18ohms ( en serie con la de 3k9 son 0,25mA , en los cascos hay 4,5mV ; 0,7mW, es realmente poco, normalmente la sensibilidad son 100dBSPL/V. 4,5mV se traducen en ..0,45dBSPL, que alguien me pegue un tirooooo! eso es que o he hecho mal las cuentas o no se escucha absolutamente nada. Todo esto debe ser que aún estoy paranoico tras haberme cargado un grave de mi altavoz debido a que se olvidó verificar el offset. ](*,)


Yo hice la prueba del auricular hace mucho tiempo (con el MOD-VGA) y sí se escuchaba, a un volumen bajo pero se escuchaba. El oído humano es muy sensible, por eso la escala que se usa es logarítmica.

Avatar de Usuario
TallerSeverino
Amstrad PC 1640
Amstrad PC 1640
Mensajes: 517
Registrado: 12 Abr 2013, 09:55
Sistema Favorito: Spectrum 16Kb/48Kb
primer_sistema: Spectrum 16Kb/48Kb
consola_favorita: Nintendo NES/Clónica
Primera consola: Nintendo NES/Clónica
Ubicación: Cádiz
Gracias dadas: 17 veces
Gracias recibidas: 15 veces

Re: Avances en el desarrollo del ZX-Uno

Mensajepor TallerSeverino » 02 Abr 2014, 20:05

antoniovillena escribió:
TallerSeverino escribió:Yo lo decía antes de poner la resistencia serie de 22k después del filtro. Los cascos suelen tener de media 32 ohms, pero pueden llegar a 60, pero bueno.
2,8V con 18ohms ( en serie con la de 3k9 son 0,25mA , en los cascos hay 4,5mV ; 0,7mW, es realmente poco, normalmente la sensibilidad son 100dBSPL/V. 4,5mV se traducen en ..0,45dBSPL, que alguien me pegue un tirooooo! eso es que o he hecho mal las cuentas o no se escucha absolutamente nada. Todo esto debe ser que aún estoy paranoico tras haberme cargado un grave de mi altavoz debido a que se olvidó verificar el offset. ](*,)


Yo hice la prueba del auricular hace mucho tiempo (con el MOD-VGA) y sí se escuchaba, a un volumen bajo pero se escuchaba. El oído humano es muy sensible, por eso la escala que se usa es logarítmica.

No, si la escala dBSPL ya es logarítmica, decibelios de presión sonora, 60 dBSPL es una conversación, 115dBSPL es un concierto de rock y creo que el umbral del dolor está en 120dBSPL.
Sobre los auriculares, sensibilidad, impedancia y dBSPL:
http://shure.custhelp.com/app/answers/detail/a_id/2991/~/understanding-earphone-%2F-headphone-specifications
Aquí comentan y explican la sensibilidad, son redondeando y haciendo media 100dBSPL/mW medidos casi siempre a 1Khz (no por voltio como en la web de akg) y así sale en los cascos de 18ohms 70dBSPL, un poco más que una conversación, ahora si me cuadra mejor. Mientras maś baratos los cascos suelen tener mayor impedancia y hace falta más voltios para producir la misma presión sonora; se escuchan más bajos. Poniendo la resistencia serie de 22K ya no se escucha; se multiplica por 100 el nivel mW que disipa en los cálculos de mcleod (0,291 microwatios) y se obtienen 0,029 dBSPL: no se oye nada.

Tengo hecho el cable RGB, puedo hacer una prueba de enviar una onda cuadrada por el speaker y medir con el osciloscopio la señal de audio (evidentemente con el Scart enchufado)


Antonio, si mides con el osciloscopio la señal cuadrada podemos calcular mejor la resistencia serie. Ah, los Vrms del scart son 0,5, pero son sinusoidales, si es cuadrada los Vpp son 2*Vrms, 1Vpp en este caso:

http://www.rfcafe.com/references/electrical/square-wave-voltage-conversion.htm
EDICION:
Me he pasado al "lado oscuro" para poder usar el multisim, ayer con cuentas me salía una resistencia serie de 12K (asumiendo 10K en el scart) usando el multisim y con componentes ideales para dar 1Vpp basta con 15k:
Imagen

Aquí el bode del paso bajo sin carga scart:
Imagen

Aquí con carga scart ideal:
Imagen
Prácticamente en el bode la frecuencia de corte es la misma lo único que hay 1dB menos en la zona lineal, no se modifica.
Un saludo.


Volver a “Sinclair/Spectrum”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 5 invitados