paint-brush
Konuşan Kutu: CVSD Ses Sayısallaştırıcı ve Oynatma Cihazıile@bobnoxious
287 okumalar

Konuşan Kutu: CVSD Ses Sayısallaştırıcı ve Oynatma Cihazı

ile Bob Wright31m2024/06/23
Read on Terminal Reader

Çok uzun; Okumak

Radio-Electronics Magazine bunu bir makale olarak satın aldı ve aslında bana oldukça iyi bir peşinat ödedi. Tasarlamaktan, inşa etmekten, kodlamaktan ve yazmaktan hoşlandığım için, geçimimi sağlamanın güzel bir yolu gibi görünüyordu. Daha sonra dergi Nisan 1985'te iflas etti ve makale hiç basılmadı.
featured image - Konuşan Kutu: CVSD Ses Sayısallaştırıcı ve Oynatma Cihazı
Bob Wright HackerNoon profile picture
0-item

CVSD Ses Sayısallaştırıcı ve Oynatma Cihazı

Bu devreyi 1985 yılında tasarladım çünkü yalnızdım ve konuşacak birine ihtiyacım vardı. Konuşan Kutu ona söylemesini söylediğim her şeyi söylerdi.


Cidden, onu telefonuma dijital telesekreter olarak bağladım. AT&T'den bir telefon hattı arayüzü olan Veri Erişim Düzenlemesi (DAA) aldım ve gerçekten iyi çalıştı. Dokunma tonlarıyla oynuyordum ve iyi bir sadakate ihtiyacım vardı. Daha sonra ilçe Aile ve Çocuk Hizmetleri yanlışlıkla benim numaramı bazı kartvizitlerine koydu. Çok çok çağrı aldım, özellikle de cevap mesajım olarak müstehcen saçma şiirimi yazıp okuduğum için. Hifi'den bahsediyorum bebeğim! Ne kadar sevildiğime dair çok sayıda kanıt aldım. Temel olarak 1985'te rap'ten önce rap yapıyordum. "Merhaba, çocuğunuzun bakımını yaptırmak için mi arıyorsunuz?" bugün muhtemelen kabul edilebilir bir selamlama olmayacaktı.


Cihaz fonksiyonlarını yönetmek için Z80 assembler'da bir montaj dili programı yazmıştım ve daha sonra IBM PC uyumlu bir makinenin seri I/O cihaz soketine takılan bir adaptör kartı oluşturdum ve asenkron UART cihazını evrensel senkronize/senkron versiyonla değiştirdim Intel'den bir USART Intel 8251A. Daha sonra Tommy Cobb veya "Cobbler" adında bir arkadaşım, Z80 kodumu PC için 8088 derleyiciye dönüştürdü. IBM PC seri G/Ç kartları için bağdaştırıcımı en son ne zaman gördüğümü hatırlamıyorum. Bildiğim hiçbir belge yok. Ve prototip Talking Box'ımı bulamıyorum ama şüphesiz bu evin bir yerindedir. Fotojenik bir birim ve buraya birkaç fotoğraf eklemek isterdim ama ne yazık ki.


Yazılım, onu telefona bağlamanın yanı sıra, ses için depolama kapsamı olarak kullanmak üzere bazı güzel döngüleri seçip yeniden oynatmama da olanak tanıdı. Sesini duymak için kayıtları geriye doğru oynatın… ah, boş verin. ☺


Neyse, Radio Electronics dergisi bunu bir makale olarak satın aldı ve aslında bana bunun için oldukça iyi bir peşinat ödedi. Aslında çok etkilendim ve kesinlikle motive oldum. İlk Kuzey Amerika Seri Hakları. Tasarlamaktan, inşa etmekten, kodlamaktan ve yazmaktan hoşlandığım için, geçimimi sağlamanın gerçekten güzel bir yolu gibi görünüyordu. Zaten tekrar tekrar ortaya çıkan birkaç yazar vardı, bu yüzden bu orijinal bir fikir değildi. Daha sonra dergi Nisan 1985'te iflas etti ve yayını durdurdu ve makale hiç basılmadı. Bana öyle geliyor ki o anda maker baskı endüstrisi bitti, hobici kitlesi buharlaştı. Bu internetten önceydi. İşte makale olduğu gibi yeniden dirildi. Umarım eskimiş haliyle bile keyif alırsınız. Elektrikli oyuncaklar, kullanımları sona erdikten sonra bile konsept olarak kullanılabilirliğini koruyor.


Yazar ayrıca K3GO'dan John T. Smith'e de özel teşekkürlerimi sunar. makalenin yazılan sayfalarının JPG taramalarını OCR vuruşlarıyla metne dönüştürmedeki çalışması nedeniyle.



Konuşan Kutu, neredeyse her bilgisayara insan konuşmasını veya benzer ses frekansı analog sinyallerini dijital olarak kodlama ve daha sonra yeniden üretme yolunu sağlayabilen, yapımı kolay, ekonomik bir projedir. Basit bir işlem sağlamak için proje, bir bilgisayarın seri I/O bağlantı noktasına bağlanacak ve neredeyse senkronize bir telefon modemi gibi görünecek şekilde tasarlandı. Bu, çok sayıda uygulama için bağlanması kolay bir cihaz arayüzü ile sonuçlanır. Proje devresi sürekli değişken tekniğini kullanır

Analog sinyallerin ikili verilere kodlanmasını gerçekleştirmek ve daha sonra bu ikili verilerin kodunu tekrar analog sinyale çözmek için eğim delta modülasyonu. Bu kodlama/kod çözme eylemi nedeniyle cihaza genel olarak ve basitçe codec adı verilir.


Saniyede on altı kilobitlik (kbps) seri veri hızında Talking Box, çoğu telefon telesekreteriyle karşılaştırılabilecek bir aslına uygunlukla konuşmayı kaydedebilir ve yeniden üretebilir. Veri hızının 32 kbps'ye veya yeniden üretilen sesin her saniyesi için yaklaşık dört kilobayt depolanan veriye arttırılması, frekansı 300 ila 3000 Hz arasında olan bir ses sinyalinde yüzde beşten daha az bozulmaya neden olur. Bu, örneğin telefon tuş sesi sinyallerini yeniden üretmek ve tanımak için projenin bir bilgisayarla kolayca kullanılmasına olanak tanır. Bu makalenin temel amacı Talking Box devresinin tasarımını ve yapısını ve bunun ikili depolama ve ses veya konuşma sinyallerinin çoğaltılması için kullanımını açıklamak olmasına rağmen, codec cihazının iletişim, endüstriyel kontrol ve enstrümantasyonda çok sayıda başka uygulaması vardır. Projenin kullanılabileceği olası yollardan bazıları arasında dijital filtreler, motorların uzaktan kontrolü, konuşma sinyallerinin karıştırılması, depolama veya görüntüleme için geçici sinyallerin kodlanması, bir sinyalin genlik sıkıştırılması, yankılanma için dijital gecikme hatları, alofonların çıkarılması ve çoğaltılması yer alır. sentetik konuşma oluşturmak, akustik modemler için sinyallerin kodlanması veya kodunun çözülmesi, paketlenmiş ses veri mesajları ve görüntü işleme veya analiz.


Delta Modülasyonunun Prensipleri

Çoğu dijital kodlayıcı, sürekli olarak değişen bir sinyalin genliğini düzenli aralıklarla örnekler ve daha sonra bu örnekleri, genlik ve polaritelerini belirten ikili kelimelerle temsil eder. Buna karşılık, bir delta modülatörü, değeri, giriş sinyalinin değerini temsil etmek yerine, bir izleme sinyalindeki nicelenmiş hatayı veya "delta"yı (A) temsil eden tek bitlik sözcükler üretir. Teknik olarak, bir delta modülatörü, polaritesi halihazırda örneklenen giriş sinyali ile önceki giriş sinyalinin nicelenmiş bir yaklaşımı arasındaki farkı temsil eden bir ikili çıkış üreten kapalı döngü örneklenmiş veri kontrol sistemidir. Bu, basit bir kontrol döngüsünün ileri yoluna bir karşılaştırıcı ve geri besleme yoluna bir entegratör yerleştirilerek gerçekleştirilir. Şekil 1'deki Doğrusal Delta Modülasyon Sistemi Blok Şemasında gösterildiği gibi, karşılaştırıcının girişleri, entegratörün veya yerel kod çözücünün giriş sinyali ve çıkışıdır.


Böylece karşılaştırıcı çıkışı, giriş sinyali ile entegratör çıkışı arasındaki farkın işaretini yansıtır. Bu işaret biti, entegratöre uygulanan bir sonraki yükün polaritesini kontrol eder ve ayrıca dijital çıkışı oluşturur. Karşılaştırıcı çıkışı normalde senkronize bant sınırlı seri dijital bit akışı sağlayacak şekilde saatlenir. Gerekli devrelerin basitliği ve çıkış verilerinin seri yapısı delta modülatörünün iki temel avantajıdır. Sonuçta elde edilen saatli seri bit akışının daha sonra yine Şekil 1'de gösterildiği gibi benzer şekilde yapılandırılmış bir alıcı entegratöre iletilmesi halinde, bu kod çözme entegratörünün çıktısı, orijinal verici kontrol döngüsü entegratör çıktısının bir kopyası olacaktır. Senkronize seri veri akışında hiçbir çerçeveleme bilgisi bulunmaz ve kodlayıcıdan gelen bit akışı tarafından temsil edilen orijinal girişin kopyalanması, bu verilerin kod çözücüye girilmesinden hemen sonra başlar. Bu kopyanın aslına uygunluğu, büyük ölçüde, verici entegratörün orijinal giriş sinyalini ne ölçüde takip ettiğine bağlı olacaktır. Şekil 2'de (Doğrusal Delta Modülatör Dalga Biçimleri Diyagramı) gösterilen dalga biçimlerinden görülebileceği gibi, kodlayıcının geri besleme sinyali, boyutu sabit olan bir dizi rampalı adımla giriş sinyalini izlemeye çalışır. Yerel kod çözücüden gelen geri besleme sinyali, doğrusal bir ağ tarafından oluşturulan sabit veya neredeyse sabit boyuttaki adımlardan oluştuğundan, bu tip delta modülasyonuna doğrusal delta modülasyonu adı verilir. Kod çözücü çıkışında bu artan adımların varlığı, granüler gürültü olarak adlandırılan bir niceleme gürültü sinyali ile sonuçlanır. Bit akışının saat hızı, giriş sinyalinin bant genişliğinin bir oktav veya daha üzerindeyse, alıcı çıkışındaki düşük geçişli filtreleme, bu gürültü sinyalinin çoğunu ortadan kaldıracaktır. Bu gürültü sinyali seviyesinde daha fazla azalma, örnekleme frekansını artırarak adım boyutunun azaltılmasıyla/ya da her ikisinin birden yapılmasıyla gerçekleştirilebilir.


Herhangi bir doğrusal modülasyon sisteminin en büyük dezavantajı, bu tür basit şekilde tasarlanmış kontrol döngülerinin, geniş bir giriş sinyal gücü aralığı boyunca yeterli bir sinyal-gürültü (s/n) oranını muhafaza etme konusundaki göreceli yetersizliğidir, yani sınırlı bir dinamik aralığa sahiptirler. Örneğin konuşma kaydında, farklı kişilerin konuşma kalıplarında karşılaşılan değişen güç seviyeleri, önemli ölçüde farklı s/n oranlarına yol açacaktır.


Bir delta modülasyon kodlayıcısında, giriş sinyalinin anlık eğimi veya genlikteki değişim hızı hakkındaki bilgi, ikili veya mantıksal çıkış seviyelerinin her birinin sıralı oluşum hızı ile gösterilir. Şekil 2'nin sol tarafında gösterildiği gibi girişte sıfır eğimli, sabit genlikli bir sinyal mevcut olduğunda, elde edilen izleme sinyali, her biri eşit düzeyde ancak zıt kutuplu bir dizi rampalı adımdır. Bu ayrıca dijital çıkışta alternatif bir sıfır-bir dizisi ile sonuçlanır ve bu dizi, giriş sinyalinde göreceli sessizlik periyotlarını veya sabit bir genlik seviyesini gösterir veya bunlara karşılık gelir. Sessiz dönemlerde bu istenen sonuçtan herhangi bir sapma, boş kanal gürültüsü olarak anılır ve elbette ilgili kod çözücüden sıfır olmayan bir sinyalin çıkışına neden olur.


Açıklandığı gibi, sıfır eğimli bir giriş sinyalinin uygulanmasının sonucu olarak birler ve sıfırlardan oluşan alternatif bir dizi çıktılanacaktır. Ancak, giriş sinyali eğiminin, geri besleme sinyalinin (yani kodlayıcının entegratör çıkışının) artık gelen sinyali izleyemeyecek kadar hızlı değişmesi gerektiğini varsayalım. Bu durumda, çıktıda sabit polaritede bir bit akışı meydana gelecektir. Bu duruma eğim aşırı yükü adı verilir ve bu durum meydana geldiğinde kod çözücünün çıkışı orijinal sinyalden oldukça farklı olabilir. Orijinal sinyal ile kopyası arasındaki farkın derecesi eğim aşırı yük gürültüsü olarak anılır. Eğim aşırı yükü gürültüsü, kopyalanmış bir dalga biçiminin bozulmasına granüler veya nicemleme gürültüsünden daha fazla katkıda bulunur ve dolayısıyla mutlak dalga biçimi doğruluğu üzerinde daha büyük bir etkiye sahiptir. Ancak insan dinleyiciler, yeniden üretilen konuşma sinyallerinde granüler gürültüyü algısal olarak daha belirgin ve rahatsız edici buluyor.


Böylece doğrusal bir kodlayıcı için s/n oranının doğrudan giriş sinyali güç seviyesinden etkilendiğini görebiliriz. Düşük bir giriş gücü seviyesinde, sinyal izleme zayıftır çünkü geri besleme izleme sinyali, nispeten küçük giriş sinyali etrafında önemli geziler yapar ve dolayısıyla nispeten büyük adım boyutu, önemli miktarda granüler gürültü üretir. Giriş sinyali güç seviyesi arttıkça, niceleme gürültüsü mevcut toplam gücün giderek daha küçük bir parçası haline geldiğinden s/n oranı doğrusal olarak iyileşir. Kodlayıcının giriş sinyalini izleme yeteneği, kodlayıcı hafifçe aşırı eğimle yüklenene kadar aşamalı olarak gelişir. Bu noktada gürültü güç içeriği sinyal güç içeriğine göre daha hızlı arttığından s/n oranı düşmeye başlar. Bu ilişkilerin grafiksel bir temsili Şekil 3'te Delta Modülatör Sistemlerde Sinyal Gücü ve Gürültü Gücü'nde gösterilmektedir.


Kodlayıcıya* giden analog giriş sinyalinin frekans sınırları üst uçta sınırlandırılmıştır. Yeterince küçük bir adım boyutuna sahip olmamız koşuluyla, Nyquist örnekleme oranı tarafından belirlenen, giriş sinyali bant genişliğinden daha büyük olan ve belirli bir gürültü seviyesinde sinyali kodlayacak bir saat frekansı vardır. Ancak giriş sinyalinin genlik sınırları hem üst hem de alt uçlarda sınırlanmıştır. Herhangi bir özel giriş sinyali seviyesi için, optimum s/n oranını sağlayacak ilgili bir entegratör adım boyutu vardır. Ne yazık ki, sabit adım boyutu, doğrusal bir kodlayıcıda kullanışlı giriş sinyali dinamik aralığı için nispeten küçük bir sınır değeriyle sonuçlanır.


Şimdi, giriş sinyalinin eğimi küçük olduğunda izleme adımı boyutunun bir şekilde küçük ve eğim dik olduğunda büyük yapılmasıyla sonuçlanacak olan s/n oranındaki iyileşmeyi düşünün. Bu, entegratörün kazancını ayarlayarak gerçekleştirilebilir. Açıkçası, geri besleme sinyali daha geniş bir giriş gücü seviyesi aralığında daha iyi izlenecektir. Niceleme gürültüsü adım boyutunun karesiyle orantılı olduğundan, adım boyutunun daha geniş bir giriş sinyali aralığına uyarlanabilir hale getirilmesi, gürültü gücünün doğrusal deltada olduğu gibi ondan bağımsız olmak yerine giriş sinyali gücüyle değişmesine neden olacaktır. modülasyon. Gürültü gücünün sinyal gücüyle orantılı hale getirilmesi bu nedenle s/n oranının giriş sinyal seviyesinden bağımsız olarak sabit bir değere sahip olmasına neden olur. Bu, uyarlanabilir delta modülasyonunun ilkesidir. Belirli bir saat hızı ve giriş sinyali bant genişliği için, entegratör kazancını ayarlama yaklaşımı, Şekil 3'te gösterildiği gibi yararlı dinamik aralıkta önemli bir artış sağlayabilir.


İzleme entegratörünün adım boyutunu uyarlamalı olarak değiştirmek için birçok algoritma kullanılmıştır, ancak Konuşan Kutu, sürekli değişken eğim delta (CVSD) modülasyonu olarak bilinen tekniği kullanır. Hecesel olarak sıkıştırılmış delta modülasyonu olarak da anılan bu yöntem, geniş bir dinamik aralığa sahip konuşma veya diğer analog sinyallerin kodlanması ve kodunun çözülmesi için tercih edilen bir yöntemdir. Daha önce gösterilen doğrusal delta modülatöründe bulunan çalıştırma elemanlarının dışında, delta modülatöründen mevcut ve geçmiş birkaç dijital çıkışı izleyen ve ardından kodlayıcı entegratörünün kazancını buna göre ayarlayan bir algoritmanın uygulanması vardır. CVSD Modülasyon Sistemi Blok Diyagramı, Şekil 4'te gösterildiği gibi, algoritmanın izleme kısmı, son üç veya dört çıkış bitini saklayan basit bir kaydırma yazmacı ile gerçekleştirilir. Kabul edilen standart algoritma, sıralı olarak depolanan tüm bu bitlerin aynı mantık düzeyinde olduğu zaman bir gösterge sağlar; bu durum tesadüf olarak adlandırılır. Gerçek bir çakışma çıkışının ortaya çıkması, mevcut entegratör kazancının muhtemelen analog girişi izlemek için çok küçük olduğuna işaret eder. Çakışma çıkışı, daha büyük bir akımın alçak geçişli bir filtreyi şarj etmesine izin verir ve bu filtrenin voltaj çıkışı daha sonra kodlayıcı entegratör kazancının mutlak büyüklüğünü ayarlamak için kullanılır. Çoğu uygulama, sesli konuşmanın tipik ses perdesi periyoduna eşdeğer olan yaklaşık beş ila on milisaniye arasında değişen sabit bir çakışma zaman sabitine sahip basit bir tek kutuplu alçak geçiş filtresi kullanır; bu da yaklaşık yüz milisaniyeye kadardır; Tipik hecesel konuşma süreleri. Bu nedenle bu filtreye konuşma codec uygulamalarında sıklıkla hece filtresi adı verilir. Genellikle zaman sabiti değeri sonuçta öznel tercih meselesi olarak seçilir.


Mantıksal seviye tespit algoritmasının bu çakışan dizisi, hem şık basitliğinden hem de kaydırma yazmacı kullanan diğer birçok algoritmanın daha az tatmin edici sonuçlarla denenmiş olmasından dolayı önemlidir. Kabul edilen algoritmayla, çakışma sinyalinin varlığı, giriş sinyalinin zarfının doğasıyla ilgilidir ve bu nedenle, diğer dizi tespitlerinde olduğu gibi giriş eğrisinin eğimi hakkında daha anlık bilgiden ziyade sinyalin zaman ortalamalı güç seviyesini gösterir. yöntemleri sağlar. Algoritmanın etkisi sinyali sıkıştırmak ve böylece gerçekleştirilebilir dinamik aralığı arttırmaktır.


Algoritma kod çözücüde tekrarlanır ve böylece seviye verileri alıcı uçta kurtarılır. CVSO kodlayıcı veri akışı doğrusal bir kod çözücüye girilirse, kodlayıcının analog giriş sinyalinin temel şekli kopyalanır ancak çıkışın tümü eşit seviyelere sahip olur. Bit akışı, sanki sabit bir giriş seviyesine sahip doğrusal bir kodlayıcıdan geliyormuş gibi görünür ve bu nedenle, sinyalin sıkıştırmasını açarak veya genişleterek genlik seviyesi değişikliklerini geri yüklemek için kod çözücü ucunda algoritmaya ihtiyaç duyulur. Algoritmanın yalnızca geçmiş seri veriler üzerinde çalıştığı için, kanal bit hızını değiştirmeden bit akışının bilgi içeriğini arttırmaya etkili bir şekilde eşdeğer olduğunu belirtmek ilginçtir.


Dolayısıyla CVSO algoritmasıyla birleştirilmiş delta modülasyonu ilkesinin, ses frekansı analog bilgilerinin seri veri akışına sayısallaştırılması için uygulanması kolay, etkili bir yöntem sağladığını görebiliriz.


Konuşan Kutu Devre Gerçekleştirmesinin Özellikleri

Konuşan Kutu, delta modülatör işlevlerini gerçekleştirmek için Motorola MC3417 veya MC3418 entegre devresini (IC) kullanarak CVSD kodlayıcı ve kod çözücü elektronik devresini uygular. Bu IC'ler, devre gerçekleştirilmesinin bir uygulamanın belirli gereksinimlerine göre uyarlanmasına olanak tanıyan genel amaçlı CVSO yapı taşlarıdır. Motorola'ya göre, eğim polarite anahtarı için akım eşleştirme, MC3418 entegresinin üretimi sırasında, beş milivoltluk minimum adım boyutu ve on beş mikroamperden üç miliampere kadar tipik yüzde bir akım eşleşmesi ile boşta kanal performansını garanti etmek için lazerle kesilir. Bu, önemli bir analog sinyal dinamik aralığı yeteneğini yansıtan, üç yüze birlik bir adım boyutu değişimine izin verir.


Talking Box devresinin kendisi ayrı bir kodlayıcı ve kod çözücü yolundan oluştuğundan, bu onların hem gönderme hem de alma için eşzamanlı kullanımına izin vererek tam çift yönlü çalışmaya izin verir. Hem kodlayıcı hem de kod çözücü aynı değişken oranlı TTL saat üreteci devresi tarafından çalıştırılır. Bir çift voltaj regülatörü ve RS232 arayüz seviye dönüştürücü entegrelerinden oluşan destek elemanları, baskılı devre kartı üzerindeki diğer parçalardır.


Kodlayıcı yolu elektronik devresi, bir CVSD Codec Konuşma Sayısallaştırıcısı (A/D) olan Şekil 5'teki şematik diyagramda gösterilmektedir. Burada gösterildiği gibi devre, mikrofon ön amplifikatör devresinden başlayarak, otomatik kazanç kontrolü (AGC) amplifikatörü, konuşma bant geçiren filtre ve son olarak CVSD modülatör devresi ile biten dört işlevsel alana bölünmüştür.

Mikrofon ön amplifikatörü klasik transformatörsüz dengesiz veya tek uçlu bir giriş amplifikatör devresidir. Dinamik mikrofon gibi bir ses kaynağından beklenen düşük seviyeli sinyallerle optimum gürültü performansı için tasarımda evirici olmayan bir konfigürasyon kullanılır. Bu uygulama, yüksek empedanslı alan etkili transistör (FET) girişlerine sahip TL084 tipi dört işlemsel yükselteç (op amp) entegresinin dörtte birinde gerçekleştirilir. Ön amplifikatörün, MIC GAIN etiketli, geri besleme direnci olarak bağlanan bir trimpot kullanılarak değiştirilebilen ayarlanabilir bir kazancı vardır. Amplifikatörün aynı zamanda köşe frekansı, op-amp'in evirici girişinden toprağa giden seri direnç/kapasitör kombinasyonunun değerleri tarafından belirlenen bir düşük frekanslı düşüş, yani yüksek geçiş karakteristiği de vardır. Bu, ön yükselticinin ortamdaki AC alanı (genellikle 60 Hz) uğultu alma hassasiyetini azaltmaya ve giriş sinyalinin düşük frekanslı güç içeriğini azaltmaya yarar. Son olarak, ön yükseltici ayrıca op-amp'in ters çevirmeyen veya sinyal girişinden toprağa yerleştirilen ve mikrofon kablosunda bulunabilecek istenmeyen yüksek frekanslı gürültüyü atlamaya hizmet eden küçük değerli bir kapasitöre sahiptir. Bazı uygulamalarda seri giriş direncinin (100 Ohm) genellikle yaklaşık bir mikrofaradlık bir kapasitörle değiştirilebileceğini unutmayın.


Mikrofon ön amplifikatörünün ardından, ses sinyalini konuşma filtresine ve CVSD kodlayıcıya uygulamadan önce seviye sıkıştırmasını sağlamaya hizmet eden bir A6C amplifikatör devresi gelir. Bu eylem, sinyal genliğinin frekans bant geçişine ve kodlayıcı işlemine sunulmasından önceki dinamik aralığını sınırlar. Talking Box'ta kullanılan AGO devresi, Burr-Brown Research Corporation'dan* Jerald Graeme tarafından açıklanan devredir. Çalışması, bu aşamanın kazanç aralığını ve çıkış genliğini belirleyen bir T gerilim bölücü ağında kontrollü değişken direnç elemanı olarak bir FET'in kullanılmasına dayanmaktadır.

AGC devre eylemi, FET ve daha önce açıklanan mikrofon ön yükselticisi için kısmen kullanılan aynı dörtlü paketten iki op amplifikatör ile gerçekleştirilir. İlk op-amp, kazanç kontrollü bir evirici amplifikatör, ikincisi ise bir tepe algılama amplifikatörü olarak hizmet eder. Çıkış sinyalinin pozitif tepe seviyesi, AGC LEVEL potansiyometresinin silecek kolunda ayarlanan voltaj değerini aşarsa, algılama karşılaştırıcısının çıkışı pozitif salınım yapacak, FET'in geçit voltajını artıracak ve böylece dr-kaynak direncini düşürecektir. . Bu da giriş sinyalinin daha fazlasının toprağa yönlendirilmesine neden olacak ve sonuçta bu aşama için genel devre kazancının azalmasına neden olacaktır. Çıkış sinyali genliği, yukarıda bahsedilen AGC LEVEL kontrol potansiyometresini ayarlayarak sıfırdan kazanç kontrollü amplifikatörün doygunluk veya kırpma seviyesine kadar ayarlanabilir.


Ses sinyalleri için değişken bir direnç elemanı olarak FET konseptini kullanan birçok uygulamada karşılaşılan bir zorluk, cihazın direncinin, kendisine iletilen sinyal tarafından modüle edilmesi gerçeğine dayanmaktadır. FET'in özelliklerinin bu yönünün yeterince telafi edilememesi, sinyal seviyesine bağlı kazanç ve distorsiyonla sonuçlanacaktır. Şekil 5'te gösterilen devre, bu sinyal seviyesi modülasyonunu önemli ölçüde azaltmak için yeni bir düzeltici geri besleme yöntemi kullanır. Görülebileceği gibi, FET'in drenaj kablosunda görünen sinyal, ilgili AGC amplifikatörünün çıkışından türetilen eşit ancak zıt fazlı bir sinyalle eşleştirilir. Devrede kullanılan direnç değerleri, FET'in küçük sinyal seviyelerinde çalışmasını sağlayacak şekilde seçilmiştir; distorsiyonun en aza indirilmesine de yardımcı olan bir durumdur. Gösterildiği gibi, AGC aşamasının çıkışı daha sonra kodlayıcının sinyal yolunda görülen konuşma bant geçiş filtresine uygulanır.


Konuşma bant geçiren filtre devresi aşaması nominal olarak 300 ila 3000 Hz frekans geçiş bandı içindeki giriş sinyallerinin geçmesine izin verirken bu aralığın dışında kalanları reddeder. Bant geçiren filtreler için bir uygulama tekniğinin seçiminde en önemli hususlardan biri, normalleştirilmiş veya kesirli bant genişliği olarak adlandırılan türetilmiş bir parametrenin değeridir. Sayısal olarak, alt -3dB veya yarı-güç kesme frekansının üst -3dB kesme frekansından çıkarılması ve bu fark değerinin aynı iki frekansın geometrik ortalamasına bölünmesiyle elde edilen sonuçtur. The. Geometrik ortalama elbette az önce hesaplanan bu fark değerinin kareköküdür. Kodlayıcı konuşma filtresinin belirtilen (yüksek ve düşük) kesme frekanslarından bu şekilde hesaplanan kesirli bant genişliğinin yaklaşık üç değeri vardır, kesirli bant genişliği için hesaplanan bu değerin yaklaşık 0,8'lik bir değeri geçmeye başladığında ve birliğe yaklaştığını veya bu değeri aştığını görüyoruz ( Aşağıdan bakıldığında, bant geçiren filtre performansı için genel olarak daha iyi sonuçlar, gerçek bir bant geçiren uygulama yerine kademeli yüksek geçiren ve alçak geçiren filtre bölümlerinden elde edilir. Bu, kodlayıcı konuşma filtresi devresinde kullanılan yöntemdir.


Dikkate alınması gereken diğer bir alan, konuşma filtresi için iyi frekans ve geçici yanıt özelliklerine duyulan ihtiyaçtır. Butterworth tipi filtre, orta derecede hızlı bir başlangıç zayıflama azalma hızı sağlarken en düz geçiş bandı genliğine sahiptir. Bu filtreleri kullanırken geçiş bandı boyunca frekans değişimiyle birlikte bir faz kayması olmasına rağmen bu kademelidir ve duyulabilir şekilde algılanamaz. Ek olarak, bu tür bir filtrenin düşük miktarda aşımı ve kabul edilebilir bir geçici yanıtı vardır. Tüm bu faktörler bir araya gelerek bu çeşitli filtrelerde düşük sinyal bozulması sağlar. Kodlayıcıda kullanılmak üzere seçilen yüksek ve alçak geçişli filtre türleri, köşe frekansının ötesinde oktav başına -18dB'lik keskin bir kesme oranı ve çapraz faz kaymasında kademeli bir değişiklikle düz bir güç ve voltaj frekansı tepkisi sergileyen üçüncü dereceden aktif filtrelerdir. müzik grubu. Filtreleri uygulamak için kullanılan özel elektronik devre, sonsuz kazançlı # çoklu geri besleme tasarımı olarak anılır ve karmaşıklık ile bileşen değeri yayılımı ve hassasiyeti arasında iyi bir uzlaşma sağladığı için seçilmiştir. Her bölüm, LM353 çift FET girişli op amp IC'nin yarısı ile gerçekleştirilir. Bu cihazlar çok yüksek bir giriş empedansına, hızlı bir dönüş hızına ve kapasitif yüklerle son derece kararlı bir çalışmaya sahiptir. Filtrede basamaklandırılmış iki ters çevirici op amplifikatör olduğundan, net sonuç, aşama boyunca sıfır faz değişimine yaklaşır.


Konuşma bant geçiş filtresinden gelen çıkış sinyali daha sonra son olarak CVSD modülatör devresine uygulanır. Temel olarak bu aşamanın tüm aktif işlevselliği IC'nin kendisinde bulunurken, ayrı bileşenler cihazın çalışmasının üç alanının özel parametrelerini oluşturmaya hizmet eder.


İlk olarak, iki silikon diyotun IC'nin 12 numaralı pininden toprağa bağlandığını bulduk; bu, TTL mantık seviyeleriyle kullanım için yerden yaklaşık 1,4 voltta (yaklaşık iki diyot düşüşü) cihaza mantık sinyali girişleri için eşik noktasını oluşturur. veya karttaki RS232 arayüzü ICS'si.


Dikkate alınan ikinci alan ise izleme entegratör filtre ağıdır. Talking Box devresi, IC'nin 6 ve 7 numaralı pinleri arasındaki yerel kod çözücü entegratör amplifikatörüne bağlanan tek kutuplu bir entegre filtre ağı kullanır. Çıktı

İzleme entegratörünün pin 7'de görünen kısmı da pin 2'deki analog sinyal karşılaştırıcısının bir girişine bağlanır. Bu filtre için iki kutuplu bir ağın kullanılması, s/n oranını tekli sinyal üzerinden bir veya iki dB kadar iyileştirebilir. kutup gerçekleştirilmesi. İstenirse iki kutuplu bir ağ, baskılı devre kartının üst kısmındaki 2 ve 7 numaralı iz bağlantı pinlerinin kesilmesi ve iletken tarafındaki pinlerin uygun bir dirençle köprülenmesi ve ardından pin 2'den toprağa bir kapasitör eklenmesiyle gerçekleştirilebilir. . Gerekli bileşen değerlerinin türetilmesi Motorola veri sayfası 2'de açıklanmaktadır.


Ancak gösterilen ve normalde kullanılan tek kutuplu filtrenin, MC3417 cihazıyla 32 kbps veri hızında TouchTone üretimi için tamamen yeterli olduğunun kanıtlandığını unutmayın.


CVSD modülatör işleminin son alanı, hece filtre ağı ve IC cihazı için entegratörün minimum adım boyutunun ve döngü kazancının belirlenmesidir. Hece filtresi, Rs ve Rp etiketli iki direnç ve Cs kapasitöründen oluşan basit bir tek kutuplu alçak geçiş devresidir. Normalde kapasitör seri olarak Rs ve Rp yoluyla şarj edilir. Ancak, IC'nin 11 numaralı pimi olan çakışma çıkışı doğru olduğunda, bu, üst direnç Rp'yi Cs'nin şarj yolundan etkili bir şekilde çıkarma görevi görür ve böylece şarj akımını ve sonuç olarak entegratör adım boyutunu artırır. Direnç Rm, minimum entegratör adım boyutunu belirlemeye hizmet ederken, Rx direncinin değeri basit bir doğrusal akım-voltaj dönüşümüyle döngü kazancını oluşturmaya hizmet eder. Bu dönüşüm ilişkisinin değiştirilmesi, s/n oranında önemli bir artışla sonuçlanabilir, ancak bununla birlikte elektronik devre karmaşıklığında da bir artış olur. Örneğin, bu işlevi gerçekleştirmek için aktif devre cihazlarının kullanılması, 32 kbps veri hızında çalıştırıldığında 30 dB s/n oranına sahip 50 dB yararlı sinyal genliği (dinamik) aralığıyla kolayca sonuçlanabilir.


CVSD kodlayıcı IC'nin çalışmasıyla ilişkili üç dijital veya mantık düzeyinde sinyal yolu vardır. Bu sinyallerden ilki, aşağıda açıklanan saat üreteci devresi tarafından normalde sağlanan pin 14'e saat girişidir. İkinci bir mantık sinyali, modülatörden gelen gerçek seri veri akışı olan pin 9'da görünen dijital çıkıştır. Veri bitleri, pin 14'teki IC'ye saat girişinin düşen kenarında cihazdan saatlenir. Üçüncü ve son mantık sinyali, devreye verilen boşta kuvvet girişi olan IC pin 15'tir. Pim 9'dan gelen dijital çıkış gösterildiği gibi IC'nin pim 13'üne bağlandığında, cihaz içinde bir geçişli flip-flop oluşturulur ve kuvvet boşta giriş pimini aktif hale getirmek daha sonra boşta bir kanal modelinin devreden iletilmesiyle sonuçlanır. kodlayıcı dijital çıkışı. Bu özellik, veri bağlantısı senkronizasyonu kurmanın veya kodlayıcıdan bir sessizlik modelini zorlamanın kolay bir yolunu sağlar.


Talking Box'ın kodlayıcı yolunu oluşturan devrenin ayrıntılarını böylece inceledikten sonra şimdi dikkatimizi kod çözücü yolunda kullanılan devre tasarımına çevirelim. Kod çözücü yolunun tamamı için şematik diyagram, bir CVSD Codec Konuşma Oluşturucusu (D/A) olan Şekil 6'da gösterilmektedir. Bu şemadan görülebileceği gibi, kod çözücü yolu, CVSD demodülatörüyle başlayan, çıkışı en sonunda bir çıkış amplifikatörünü çalıştıran bir konuşma bant geçiren filtreyle devam eden üç ana çalışma aşamasından oluşur.

Delta modülasyonunun ilkeleri bölümünde açıklandığı gibi, kod çözücü işlevi, kodlayıcının işlevini bir şekilde tamamlayıcı olarak görülebilir ve anlaşılabilir. O halde şaşırtıcı olmayan bir şekilde, ilgili elektronik devrelerde ve bileşen değerlerinde yansıtılmış bir benzerlik fark edebiliriz.


Dolayısıyla, CVSD demodülatör aşaması şemasında, kapasitör Cs ile birlikte Rp ve Rs etiketli dirençlerin çalışma fonksiyonu ve değeri, kodlayıcı yolu diyagramı olan Şekil 5'teki aynı etiketli bileşenlerin çalışma fonksiyonu ve değerine tamamen benzerdir. devre. Benzer şekilde Rx ve Rm etiketli dirençler, kodlayıcı uygulamasındaki aynı etiketli tamamlayıcılara benzer bir şekilde hizmet eder. Benzer şekilde, CVSD demodülatörü için kod çözücü entegratör filtre ağını oluşturan bileşenler bile modülatör devresinde bulunanlara benzerdir. Son olarak, kod çözücü IC'nin mantık eşik seviyeleri, kodlayıcı IC'de yapıldığı gibi bir çift silikon diyot üzerindeki düşüşle de ayarlanır.


Ancak kod çözücü yolunda devreyle ilişkili yalnızca iki dijital sinyal yolu vardır. Kodlama işlevi için kullanılan aynı TTL saat üreteci devresi tarafından normalde çalıştırılan bir saat girişi vardır. Bu sinyal, kod çözücü IC'nin pin 14'üne uygulanır ve veri bitlerini saatlendirir ve ardından her biri sırayla dijital giriş pin 13'te IC'ye görünür.


CVSD demodülatör aşamasının çıkışı elbette bir zamanlar kodlayıcı yoluna girilen orijinal analog sinyalin filtrelenmemiş bir kopyasıdır. Daha sonra, daha önce açıklanan tanecikli veya nicemleyici gürültüyü ortadan kaldırmaya yarayan kod çözücü yolu konuşma bant geçiren filtreye uygulanır. Donanım gerçekleştirilmesi, yüksek geçişli ve alçak geçişli devrelerin basamaklama sırasının tersine çevrilmesi dışında, kodlayıcı yolunda kullanılanla esasen aynıdır. Kod çözücü filtresinde, ilk amaç niceleme gürültüsünü mümkün olduğu kadar ortadan kaldırmaktır, dolayısıyla bunu en üst düzeye çıkarmak için alçak geçiş fonksiyonu ilk önce ve filtre aşamasının girişine (ve dolayısıyla kod çözücü çıkışına da) en yakın şekilde yerleştirilir. zayıflama.


Kod çözücü sinyal yolundaki konuşma filtresinin ardından üçüncü ve son kod çözücü devresi, yani çıkış amplifikatörü gösterilmektedir. Adından da anlaşılacağı gibi bu aşama, konuşma filtresinden çıkan ses sinyalini güçlendirir. Bu devrede kullanılan LF356 op amp IC'nin güç çıkış kapasitesini geliştirmek için bir çift ücretsiz silikon bipolar transistör tampon cihazları olarak bağlanır. Geri besleme yolunda bir trimpot biçiminde bir kazanç (veya ÇIKIŞ SEVİYESİ) kontrolü sağlanır, ancak op amp IC'nin evirici olmayan girişinden toprağa giden direncin değeri de çıkış aralığını ayarlamak için değiştirilebilir. seviye. Sonuçta güçlendirilmiş sinyal, büyük değerli bir elektrolitik kapasitör aracılığıyla çıkış transformatörünün primerine bağlanır. İkincil boyunca geliştirilen sinyal, elektronik devrelerin bu bölümünün tanımını tamamlayan kod çözücü yolunun son çıkışıdır.


Daha önce de belirtildiği gibi, az önce açıklanan kodlayıcı yolu ve kod çözücü yolu devrelerine ek olarak Talking Box'ın diğer ana devre elemanı, bu ilk ikisinin zamanlamasını kontrol etmek için kullanılan saat üretecidir. Bu devrenin şematik diyagramı, Seçilebilir Frekanslı TTL Saat Jeneratör Devresi olan Şekil 7'de gösterilmektedir. Orada görülebileceği gibi, bu devre esas olarak, bölme modülü ilgili dip anahtarında ayarlanan değer tarafından belirlenen programlanabilir bir bölücü zinciri çalıştıran kristal kontrollü bir osilatörden oluşur. Programlanabilir bölücü bu nedenle çok çeşitli veri saat hızları için çok kolay bir şekilde yapılandırılır ve aslında esneklik amacıyla bu saat hızı, bağlantı arayüzü aracılığıyla ilgili bilgisayar tarafından seçilebilecek şekilde ayarlanabilir.


Baskılı devre kartı üzerindeki son elektronik devre elemanları, bilgisayar arayüzünün kullandığı pozitif ve negatif voltaj regülatörleri ve RS232 seviye dönüştürücü entegrelerinden oluşan destek elemanlarıdır. Bu parçaları içeren şematik çizim Şekil B'de, RS232 Arayüz Devreleri ve Voltaj Regülatörleri diyagramında gösterilmektedir.


Delta modülatörlerinin genel olarak nasıl çalıştığını ve daha sonra özel olarak bunun nasıl çalıştığını gördükten sonra, şimdi gerçek donanımın nasıl gerçekleştirildiğini ve fiziksel olarak nasıl oluşturulduğunu görelim.


Konuşan Kutu Projesi Fiziki İnşaatı

Az önce anlatılan elektronik devrelerin tümü tek bir çift taraflı baskılı devre kartı üzerinde yer almaktadır. Bu kartın bir tarafı öncelikle dijital ve analog devrelerin yakın yerleştirilmesine ve birbirine karıştırılmasına olanak tanıyan bir zemin düzlemi olarak kullanılır. Baskılı kablolama panosunun her iki tarafındaki devre izlerinin pozitif görüntüsü, CVSD Codec Baskılı Devre Kartı Düzeni olan Şekil 9'da gösterilmektedir. Kartın çift taraflı olmasına veya kartın hem ön hem de arka tarafında iletken yollara sahip olmasına rağmen, düzenin, iki tarafı birbirine bağlamak için kaplamalı veya iletken deliklerin kullanılmasını gerektirmeyecek şekilde olmasına dikkat edin. Bu elbette projede kullanılması önerilen devre kartının deneyci tarafından kolay ve ucuz bir şekilde kopyalanmasına olanak sağlamak için yapılır. Kaplamalı deliklere sahip bitmiş devre kartları ve resmin film kopyaları, parça listesinde gösterildiği gibi mevcuttur.


Hem ön hem de arka devre düzenlerinin yanlarındaki çevresel alanlarda hizalama hedeflerinin sağlandığına dikkat edin. İlk olarak, her durumda bu hedefleri dahil ettiğinizden emin olarak, bu resmi her iki taraf için bir film görüntüsü olarak (genellikle negatif olarak) kaldırın. Daha sonra bu hedefleri kullanarak ön ve arka film görüntülerini üst üste hizalayın ve yerine yapıştırın. Şimdi yuvarlak kağıt zımbasıyla her iki film tabakasına aynı anda üç ayrı kayıt deliği açın. Devre resmi alanlarının dışında bir konuma delmeye dikkat edin. Bu kayıt deliklerinin varlığı daha sonra, ön ve arka film tabakalarının, bu deliklere yerleştirilen uygun pimler aracılığıyla birbirleriyle hizalanmasına olanak tanırken, açığa çıkarılacak devre kartı malzemesinin bir parçası, aralarına sandviç benzeri bir şekilde yerleştirilir. Böylece devre kartının iki tarafının önden arkaya kolay kaydı sağlanır. Hassas boyuttaki bu tür kayıt pimleri, baskılı devre tedarik mağazalarından ticari olarak temin edilebilir, ancak deneyimler, uygun boyutta önceden oluşturulmuş bir çubuk gibi bir şeyin mevcut olmaması durumunda, boyuta göre traşlanmış bir kalem veya dübelin bu amaç için iyi bir şekilde işe yarayacağını göstermektedir. Desteklenen deliklerin çoğu için, yani içlerinden bir bileşen kurşununun geçtiği delikler için 68 numaralı matkap boyutu yeterlidir. 37 numaralı regülatör montaj delikleri ve 3/16 inç çapındaki fono konnektör montaj delikleri bunun istisnasıdır.


Baskılı devre kartının bileşen montajı ve montaj ayrıntılarını göstermek için iki diyagram kullanılır. Bunlardan ilki, Şekil 10, CVSD Codec Devre Kartı Bileşen Montaj Şeması, parçaların panele monte edilip lehimleneceği şekilde yerleşimini gösterir ve ayrıca şematikteki çeşitli etiketli noktaların konumunu da gösterir; bunlardan bazıları bu etiketli devre konumları test noktaları olarak kullanılacak bağlantılar görevi görürken diğerleri çeşitli konfigürasyon seçeneklerinin bağlanmasına izin verir.


İkinci diyagram. Şekil 11, CVSD Codec Devre Kartı 'Z Kablosu' Konum şeması, kartın üst kısmına veya bileşen tarafına lehimlenmesi gereken devre kartındaki deliklerin konumunun ayrıntılarını verir. Bu adımın yalnızca kart üzerinde kaplamalı delikler yoksa ve parça listesinde gösterilen kartta bu tür delikler varsa gerekli olduğunu unutmayın. Bu deliğin bulunduğu yerde bir bileşen ucu varsa, bunu kartın her iki tarafına da lehimleyin. Bu delikten herhangi bir bileşen girişi yoksa, delikten ve perçinlemeden bir kablo ucu geçirin ve bunu her iki taraftan tahtaya lehimleyin. Bir devre kartının bir tarafından diğerine iletken bir geçiş veya yol elde etmenin bu yöntemine, atlama telinin o harfe göre kaba görünümü nedeniyle sıklıkla "Z teli" adı verilir, dolayısıyla Şekil 11'in başlığı da budur. devre kartının iletken tarafında lehimlenmesi gereken delikler kördür, yani bileşenler monte edildiğinde erişilemez. Bu, proje devresinin, açık deliklere gerek kalmadan ve çok az sayıda atlama kablosu gerektirmeyen, ev yapımı baskılı bir kartla kolayca monte edilmesini sağlar.


RS232 konektörünün kendisi, üst sıradaki pinlere (yani birden on üçe kadar olan sayılar) kartın üst veya bileşen tarafına lehimlenirken, on ikiden yirmi beşe kadar olan alt sıradaki pinler panelin üzerine lehimlenecektir. tahtanın arka tarafı.


Talking Box Projesi için Bilgisayar Arayüzü Operasyonu

Artık CVSD işleminin elektronik prensiplerini ve proje devre kartının fiziksel olarak nasıl oluşturulduğunu gördüğümüze göre, inceleyeceğimiz bir sonraki alan, cihazı ilgili bilgisayara bağlamak için gereken yazılımdır.


Giriş bölümünde bahsedildiği gibi, Talking Box esasen sanki bağlı olan destekleyici bilgisayara senkronize bir modemmiş gibi görünür. Şu ana kadar proje devresine giren ve çıkan beş dijital sinyal yolunu tanımladık. Bunlar elbette iki veri yoluydu; biri kod çözücüye, diğeri kodlayıcıya; ilişkili iki saat sinyali; ve kodlayıcıya boşta zorlama girişi. Diğer bazı isteğe bağlı fiziksel arayüz sinyalleri, uygulama örnekleriyle ilgili bir sonraki bölümde açıklanmaktadır. Bununla birlikte, hemen aşağıdaki açıklamalar yalnızca veri alışverişi işleminin kendisinin programatik yönleriyle ilgili olduğundan, artık yalnızca bu beş sinyal hattının ilgili bilgisayardaki bir seri I/O bağlantı noktasına ve bu bağlantı noktasından bağlı olduğu varsayılmaktadır. Bu ara bağlantının donanım özellikleri, CVSD Kartı Kullanımı için SIO Cihaz Kablolama Şemaları Şekil 12'de ayrıntılı olarak gösterilmektedir.


Aşağıdaki tartışma sırasında, CVSD Sürücü Programı başlıklı Liste 1'de gösterilen yazılım rutinlerine değineceğiz. Bu program listesi, hem Intel 8251 uyumlu bir seri I/O cihazını (USART) kontrol etmek için gerekli olan rutin modülünü hem de Zilog SIO uyumlu bir seri I/O cihazını kontrol etmek için gereken modülü içerir. Uygun sürücü modülü seçimi ile bu cihazlardan herhangi biri Talking Box'ın gereksinimlerine uygun senkron modda kolaylıkla çalıştırılabilir. Kaynak kodu tamamen Intel 8080 montaj dilinde yazılmıştır ve modüller arasındaki kullanım seçimi equate ifadeleri ile yapılmaktadır.


Hem USART hem de SIO yazılım sürücüsü modüllerinin her biri, bilgisayarın kodlayıcı/kod çözücüyle veri alışverişi ile doğrudan ilgili olan dört ana rutini veya giriş noktasını içerir. Bu dört giriş noktası INUART rutini, SERIN ve SEROUT rutinleri ve GETSYNC rutinidir.


Verileri her iki yönde aktarmak için ilk kez kullanılmadan önce, kullanıcının ilk olarak seri G/Ç cihazının kendisini senkronize modda çalışacak şekilde başlatması veya yazılımla yapılandırması gerekir. Bu, INUART etiketli rutine yapılan çağrıyla gerçekleştirilir. Her iki modülde de bu talimat dizisi esasen I/O cihazının kontrol kayıtlarını yüklemeye hizmet eder, böylece onun eşlik biti eklenmeden sekiz bitlik (bayt çapında) veri karakterleri üzerinde çalışmasını sağlarız ve böylece bir Bir karakter sınırında senkronizasyonla karşılaşıldığını varsaymak için seri bit akışı (genellikle SYNC karakteri olarak adlandırılır) içinde eşleşecek bir model için şablon olarak tek karakter (senkronizasyon tespiti olarak adlandırılır).

Çoğu senkronize iletişimde, asenkron veya karakter odaklı seri iletişim protokollerine aşina olan başlatma ve durdurma bitleri gibi karakter çerçeveleme bitlerinin bulunmadığına dikkat edin. bunun yerine, bir karakteri oluşturan her bit, ayrı bir sinyal konnektörü yolu üzerinde sunulan bir zamanlama sinyali tarafından seri cihazın içine veya dışına aktarılır ve karakter sınırları, giriş saatinden karakter başına uygun şekilde tanımlanmış bit sayısı sayılarak belirlenir. bit akışı. Çoğu "gerçek" veya senkronize telefon modemi, veri aktarım uygulamaları, veri akışının periyodik yeniden senkronizasyonu için ve her bloğun içeriğinin hata kontrolü gibi şeylere izin vermek için veri karakterlerini bu aktarımlar arasında duraklamalarla bloklar halinde gönderir ve alır. Belli nedenlerden dolayı, eşzamanlı yöntemlere genellikle mesaj odaklı seri iletişim protokolleri adı verilir.


SIO veya USART aygıtı başlatılıp çalıştırıldıktan sonra her ikisinin de yazılımla kontrol edilmesi nispeten kolay olmaya devam eder. Her iki durumda da, SERIN (bağlantı noktasından bir karakter alma) ve SEROUT (bağlantı noktasına bir karakter çıkışı) rutinleri, basit bir eşzamansız uygulama için olabileceklerle aynıdır. Bu nedenle, karakter giriş ve çıkış rutinleri, bir karakterin kabul edilmeye veya teslim edilmeye hazır olup olmadığını belirlemek amacıyla I/O cihazından tekrar tekrar okunan bir durum baytı içindeki bir bit seviyesinin yalnızca döngü testini içerir. Bu test nihayet tatmin edildiğinde, arayan kişiye geri dönüşle rutinden çıkılmadan önce karakterin kendisi gerçekten seri porttan okunur veya seri porta yazılır.


Geriye kalan sürücü rutini GETSYNC etiketli rutindir. Bir kez daha rutin, her iki G/Ç cihazı seçimi için de hemen hemen aynı işlevi yerine getirir. Bu giriş noktası genellikle kodlayıcıdan ses verilerinin girişini başlatmak için bir kayıt döngüsünün başlangıcında çağrılır. Bu görevde, rutin ilk önce kodlayıcıya zorla boşta girişini doğru tutmaya hizmet eder, böylece seri G/Ç cihazı daha sonra diziyi algılayana kadar kodlayıcının sessizliği temsil eden aynı alternatif bir-sıfır bit dizisi çıktısını üretmesine neden olur. senkronizasyon karakteri için eşleşme gibi bitler. Bu karakterin varlığına yönelik test karşılandığında, zorla boşta sinyal hattı derhal yanlış olarak döndürülür ve kodlayıcının, rutinden nihayet çıkılmadan önce bu verileri alacak şekilde bir sonraki ayarlanan seri bağlantı noktasına ses verilerini göndermeye başlamasına izin verilir. Bazı uygulamalar için, kullanılan bu bit modelinin değerinin, yani senkronizasyon karakterinin, örneğin bir sinyal dalga formundaki belirli bir yere karşılık gelen bir eşleşen dizinin donanım tespiti üzerinde ses kaydının başlatılmasına izin verecek şekilde değiştirilebileceğine dikkat edin.


Bu dört donanım sürücüsü temel rutini, ses verilerinin bilgisayara ve bilgisayar dışına fiziksel olarak aktarılması görevini gerçekleştirmek için bir uygulama programı tarafından çağrılır. Aşağıdaki bölümde bu rutinleri proje panosu ve destekleyici bir bilgisayarla kullanan bazı uygulama örnekleri bulunmaktadır.


Bazı Özel Uygulama Örnekleri

Yazar tarafından kullanılan Talking Box tanıtım programı, az önce açıklanan bu sürücü rutinlerini kullanır ve Şekil 13'te gösterilen CVSD Codec Devre Kartı Demo Programı Komut Menüsü'nde gösterilen komutlar menüsünden görevlerin seçici olarak yürütülmesine izin verir. Program CP/M İşletim Sistemi altında çalışır ve hem 8080 (homebrew) hem de Z80 tabanlı (Televideo TS802H) mikro bilgisayar sisteminde test edilmiştir. Bu programın derleme kaynak kodu, CVSD Codec Devre Kartı Demo Programı Liste 2'de gösterilmektedir. [-isteğe bağlı dahil etme]


Bu komut tablosundan görülebileceği gibi program, operatörün yerel mikrofon ve hoparlör çiftinden veya telefon hattından ses kaydetmesine ve oynatmasına olanak sağlayacak şekilde ayarlanmıştır. Gösterim programını ve Talking Box'lı bilgisayarı anahtarlamalı telefon ağına bağlamak için kullanılan ara bağlantı düzenlemesi, Veri Erişim Düzenlemesi veya DAA adı verilen bir cihazı temel alır. Yazar tarafından kullanılan cihaz daha eski (1976 model) bir Bell Telefon Tipi 1001F Veri Bağlayıcıdır, ancak DAA işlevini kopyalayan daha yeni FCC Bölüm 68 kayıtlı hibrit modüller Cermetek (CH1810) gibi firmalardan yirmi dolardan biraz daha düşük bir fiyata satın alınabilir. Doğrudan Bağlantılı Koruyucu Hibrit veya DCPH, bkz. referanslar). Bu modüller aynı işlevsel bağlantıları sağlar, ancak boyutları önemli ölçüde daha küçüktür ve kullanım kolaylığı açısından çok daha gelişmiştir; ayrı bir muhafaza içinde duvara asmak yerine bir cihazın içine monte edilmeleri amaçlanmıştır! DCPH modüllerinin CMOS mantık seviyesi sinyal yollarını kullandığına, DAA'nın ise RS232 sinyal seviyesi gereksinimlerine sahip olduğuna dikkat edin. DAA veya DCPH, telefonun çaldığına dair bir gösterge sağlayabilir ve bilgisayarın, cihazın açık/açık (veya yanıtlama/kapama) durumunu kontrol etmesine ve uygulamasını veya telefon hattına ve telefon hattından ses alımını kontrol etmesine izin verebilir. Her ikisi de faturalandırma gecikme zamanlayıcısı, aşırı sinyal koruması, hat izolasyonu ve koruma ile telefon hattını ele geçirme ve arama, yani çağrı yapma yeteneği sağlar. DAA veya DPCH'yi ve Talking Box'ı ana bilgisayara bağlamak için kullanılan fiziksel kablolama, Şekil 14'te bir CVSD Kartı ve DAA'dan Bilgisayara Kablolama Şeması'nda gösterilmektedir.


Demo programı, bilgisayarın hem yerel olarak hem de telefondan ses kaydetmesine ve oynatmasına izin vermenin yanı sıra, ses sinyalini temsil eden bellek alanının içeriğini görüntülemek ve değiştirmek, tümünü önceden ayarlanmış (SYNC) bir karaktere dönüştürmek için rutinler sağlar. değer ve ayrıca bu ses belleğinin içeriğini ana bilgisayar sistemi disk sürücülerinden kaydetmek veya yüklemek için kullanılır. Ayrıca proje tarafından kullanılan seri G/Ç bağlantı noktasının başlatılmasına, SYNC karakter değerinin değiştirilmesine ve kullanıcı tanımlı bir kontrol çıkışı (Bayrak Biti olarak adlandırılır) sinyalinin yüksek veya düşük ayarlanmasına da olanak tanır. Bu çıkış sinyali, Şekil 7 ve 8'de gösterildiği gibi bilgisayarın kontrolü altındaki bir çift kodlama/kod çözme seri saat hızları arasından seçim yapmak için kullanılabilir. Son olarak, program aynı zamanda her oynatma döngüsünün başlangıcında çıkış olarak verilen bir senkronize edici darbe sinyali de sağlar. bir osiloskop ekranının tetiklenmesi gibi şeylere izin vermek.


Açıkçası, program ve bazı rutinleri bir dizi kullanışlı cihaz uygulaması için çekirdek sağlayabilir. Proje sisteminin hemen gerçekleştirebileceği sayısız işlevden bazıları arasında bilgisayarlı bir elektronik sesli mesajlaşma sistemi veya telesekreter olarak kullanılması, ses seslerini (veya konuşmacıya bağlı ses birimi örneklerini) saklanan konuşmadan bazı veri örnekleri olarak çıkarmak ve oynatmak için kullanılması ve analiz için bu alofonlar veya geçici ses frekansı sinyalleri gibi şeyleri depolamak ve ardından (bir osiloskopta) görüntülemek için kullanımı ve daha sonra tekrar oynatılmak üzere tüm kelimeleri veya ifadeleri diskte depolamak için kullanımı.


Böylece Talking Box'ın konuşma veya diğer ses sinyallerini bir bilgisayarla sayısallaştırmaya ve yeniden üretmeye yönelik yapımı ve kullanımı kolay bir proje olduğunu görebiliriz.


Teşekkür

Yazar, bu projenin gerçekleştirilmesinde paha biçilmez destekleri ve katkıları için Sayın WH Kerr, EP Norwood ve CP Quinn'e özellikle teşekkür etmek ister.





Bu, Radio Electronics dergisi tarafından satın alınan makaleyi sonlandırıyor. Aşağıda Motorola'nın CVSD codec veri sayfasının bir kopyası bulunmaktadır. Bu belge çok ilginç ve bilgilendiricidir.


Çözüm

Umarız yukarıda sunulan şapımızda bir miktar fayda veya ilgi bulmuşsunuzdur ☺ Ciddi bir not: Yorumlar, Eleştiriler ve Öneriler her zaman takdir edilmektedir. Tanrı herkesi korusun.