Picproje Elektronik Sitesi

PICPROJE PROGRAMLAMA DERSLERİ => FPGA Öğreniyorum => Konuyu başlatan: enesbugra - 21 Aralık 2016, 01:27:10

Başlık: 2 fpga arasındaki ses iletimi
Gönderen: enesbugra - 21 Aralık 2016, 01:27:10
2  fpga kullandım. bir fpga mikrofon diğerine hoparlor bagladım , mikrofona bir tane yukseltici bagladım.hoparlorden ses alıyorum fakat cızırtılı .buna onlem olarak low pass fıltre kullandım bu sefer ses gelmedi. Asıl sorunum şuan kullandıgım kodlar clock kullanarak yaptım fakat hoca clock suz yapmamı istedi .Clock kullanmadan nasıl senkron yapabilirim 2 fpga i ?


Voice Transmission
On board ADC converts voice signal from a connected microphone to digital. This binary
signal is serialized and transmitted through a general purpose IO-port. No clock signal
will be transmitted (asynchronous).Serial data is received by another board and is fed to
DAC. Signal output from DAC is amplified if necessary and heard from a headphone or
speaker. For all clock signal needs, clock managers shall be used.
Başlık: Ynt: 2 fpga arasındaki ses iletimi
Gönderen: Zoroaster - 21 Aralık 2016, 11:20:23
Usarttaki mantığı kullan.

Data hattı H da beklesin.

Datayı hatta basmadan önce hattı "low"a çek T kadar bekle.

Datayı (8 biti) hatta bas.

Datayı "high" yap T kadar

Karşı taraf hattın low olduğunu gördüğü anda clock üretecisine start versin ve hattaki veriyi örneklemeye başlasın. Stop biti ile de örneklemeye son versin.

Bir başka teknik ise iki clock palsi arasına data biti sıkıştırmak olabilir.
Başlık: Ynt: 2 fpga arasındaki ses iletimi
Gönderen: kralsam - 21 Aralık 2016, 12:29:47

Mesafe ne kadar? Örnekleme frekansın ne kadar? ADC girişindeki ses ne kadar temiz başka kaynak ile denedin mi? Data aktarımı paralel olarak mı yoksa seri interface şeklinde mi? Ses çıkış kısmında DAC mı kullandın? Çıkış kısmındaki amfi ve hoparlör sistemi nasıl ?
Başlık: Ynt: 2 fpga arasındaki ses iletimi
Gönderen: superconductor - 21 Aralık 2016, 23:20:04
En basit yöntemlerden biri manchester coding. Aynı hattan hem data hem clock'u göndermiş olursunuz.
Başlık: Ynt: 2 fpga arasındaki ses iletimi
Gönderen: OG - 22 Aralık 2016, 04:21:43
Alıntı yapılan: superconductor - 21 Aralık 2016, 23:20:04
En basit yöntemlerden biri manchester coding. Aynı hattan hem data hem clock'u göndermiş olursunuz.
Nasıl oluyor bu iş?
Başlık: Ynt: 2 fpga arasındaki ses iletimi
Gönderen: superconductor - 22 Aralık 2016, 09:56:57
https://en.m.wikipedia.org/wiki/Manchester_code (https://en.m.wikipedia.org/wiki/Manchester_code)

https://en.m.wikipedia.org/wiki/Self-clocking_signal (https://en.m.wikipedia.org/wiki/Self-clocking_signal)

Taşınması gereken her bit, iki bit ile ifade ediliyor. 01 yada 10 gibi. Böylece durum geçişleri senkronizasyon için kullanılabiliyor.
Başlık: Ynt: 2 fpga arasındaki ses iletimi
Gönderen: OG - 22 Aralık 2016, 23:12:28
Clock'u geri elde etmek için nasıl bir algoritma düşünebiliriz?
Başlık: Ynt: 2 fpga arasındaki ses iletimi
Gönderen: superconductor - 23 Aralık 2016, 10:25:40
Doğrudan dönüşüm olmuyor. Hat hiç susmayacaksa PLL kullanılabilir. Şurada açıklamışlar :https://en.wikipedia.org/wiki/Clock_recovery (https://en.wikipedia.org/wiki/Clock_recovery)

Aslında clock sinyalini geri elde etmemiz şart değil. Uart gibi sinyalden örnek alıp zamanlamaya bakılabilir.
Başlık: Ynt: 2 fpga arasındaki ses iletimi
Gönderen: kralsam - 23 Aralık 2016, 10:53:08
Alıntı yapılan: OG - 22 Aralık 2016, 23:12:28
Clock'u geri elde etmek için nasıl bir algoritma düşünebiliriz?
Hocam şu şekilde mümkün olabilir. Mancherter coding algoritmesı aslında değişim üzerine kurulu bir algoritma. Değişim anlarını yakalayarak frekans tespit edilebilir. Ama mesajı çözmek için sanırım buna da ihtiyaç yok. Geçiş yönüne göre data tahmininde bulunabiliyorsun. Bu da zaten datayı veriyor.
Başlık: Ynt: 2 fpga arasındaki ses iletimi
Gönderen: enesbugra - 23 Aralık 2016, 18:18:36
çok teşekkürler deneyeceğim söylediklerinizi .