2 fpga arasındaki ses iletimi

Başlatan enesbugra, 21 Aralık 2016, 01:27:10

enesbugra

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.

Zoroaster

#1
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.
Seytan deliginden kacti.

kralsam


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 ?

superconductor

En basit yöntemlerden biri manchester coding. Aynı hattan hem data hem clock'u göndermiş olursunuz.

OG

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ş?
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

superconductor

#5
https://en.m.wikipedia.org/wiki/Manchester_code

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.

OG

Clock'u geri elde etmek için nasıl bir algoritma düşünebiliriz?
FORUMU İLGİLENDİREN KONULARA ÖM İLE CEVAP VERİLMEZ.

superconductor

Doğrudan dönüşüm olmuyor. Hat hiç susmayacaksa PLL kullanılabilir. Şurada açıklamışlar :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.

kralsam

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.

enesbugra

çok teşekkürler deneyeceğim söylediklerinizi .