İçindekiler:

4 Adım Dijital Sıralayıcı: 19 Adım (Resimlerle)
4 Adım Dijital Sıralayıcı: 19 Adım (Resimlerle)

Video: 4 Adım Dijital Sıralayıcı: 19 Adım (Resimlerle)

Video: 4 Adım Dijital Sıralayıcı: 19 Adım (Resimlerle)
Video: Çoğu Kişi Bu Zeka Sorusunu Bilemiyor! #shorts 2024, Temmuz
Anonim
4 Adımlı Dijital Sıralayıcı
4 Adımlı Dijital Sıralayıcı
4 Adımlı Dijital Sıralayıcı
4 Adımlı Dijital Sıralayıcı

CPE 133, Cal Poly San Luis Obispo

Proje Yaratıcıları: Jayson Johnston ve Bjorn Nelson

Günümüz müzik endüstrisinde en yaygın olarak kullanılan “enstrümanlardan” biri dijital sentezleyicidir. Hip-hop'tan pop'a ve hatta country'ye kadar her müzik türü, müziklerini hayata geçirmek için ihtiyaç duydukları ritimleri ve sesleri oluşturmak için stüdyoda bir dijital sentezleyici kullanır. Bu derste, Basys 3 FPGA kartı ile çok basit bir sentezleyici oluşturacağız.

Sentezleyici, seçilen dört çeyrek notayı, dakikada sabit bir vuruş sayısında çalabilecektir. Kullanıcılar, her bir çeyrek notayı bir müzik perdesine atamak için düğmeleri kullanacaktır. Bu proje için, çıktıyı karttan alıp bir analog sinyale dönüştürmek için 4 bitlik bir dijital-analog dönüştürücü (DAC) kullanıyoruz. DAC'den gelen çıktı daha sonra standart bir bilgisayar hoparlörüne beslenecek ve müziğimizi oluşturacak. On altı ayrı perde mümkündür. Sentezleyicimizi orta C (261.6 Hz) ve B4 (493.9 Hz) arasında kalan 12 notalık tek bir oktavla sınırlayacağız. Kullanıcı ayrıca aynı anda birden fazla nota atama seçeneğine sahip olacak ve perde düğmelerinden hiçbiri yukarı kaydırılmadan atamaya basarak bir dinlenme atayabilecek. Her nota seçilip çalınırken, 7 segmentli ekranda harf notası gösterilir. Ayrıca, biri müziği çalmak ve duraklatmak için, biri sentezleyiciyi sıfırlamak ve onu “seçim” moduna geçirmek için ve üçüncüsü seçim modundayken her notaya bir perde atamak için olmak üzere tahtadaki üç düğmeyi kullanacağız.

Kullanıcı, nota seçiminden memnun kaldığında ve oynat düğmesine bastıktan sonra, sentezleyici, kullanıcı duraklat veya seç düğmesine basana kadar art arda her notayı çalacaktır.

İşte gerekli ekipmanların bir listesi:

  • Vivado (veya herhangi bir VHDL çalışma alanı)
  • Basys 3 veya benzeri FPGA kartı
  • Dijitalden analoğa dönüştürücü (min. 4-bit)
  • Kulaklık jakı olan hoparlör
  • Kablo uçları

Adım 1: Dijital Sıralayıcının Kullanıcı Tarafından Çalıştırılması

Dijital Sıralayıcının Kullanıcı İşlemi
Dijital Sıralayıcının Kullanıcı İşlemi

Aşağıdaki adımlar dijital sıralayıcıyı çalıştırmak içindir. Dijital sıralayıcı, 261.6 Hz ile 493.9 Hz arasında değişen 12 farklı perdenin (C, Db, D, Eb, E, F, Gb, G, Ab, A, Bb, B) çalınmasını destekler.

1. Kartı seçim moduna geçirmek için sol düğmeye basın. Bu moddayken, en soldaki 4 anahtarın (13 ila 16 arasındaki anahtarlar) her biri ayrı bir adım değeri kaydetmek için kullanılacaktır.

2. Bir seçim yapmak için, soldaki düğmelerden birini açın ve ardından istenen adımı seçmek için en sağdaki 4 düğmeyi (1 ila 4 arasındaki düğmeler) kullanın. Sağ anahtarların belirli bir kombinasyonuyla ilişkili adım yedi segmentli ekranda gösterilecek ve sağ anahtarlar yeni bir kombinasyona kaydırıldığında ekran yeni ilişkili adıma güncellenecektir. Bir dinlenme, sol düğmelerden birine asla bir perde atamadan veya nota ekranda 0 olarak gösterilen bir perde atayarak atanabilir. İstenen perde bulunduğunda ve ekranda görüntülendiğinde, nota belirli bir perdeyi atamak için alttaki atama düğmesine basın.

3. Kalan sol düğmelerin her birini ayrı ayrı çevirerek, sağ düğmelerle ilgili perdeyi seçerek ve perdeyi nota atamak için alt düğmeye basarak, kalan üç nota için 2. adımı tekrarlayın. Aynı anda birden fazla sol düğme yukarı kaydırılarak birden fazla nota aynı perdeye atanabilir.

4. Artık tüm nota perdeleri atandığına göre, dijital sıralayıcı çalmaya hazırdır. Notaları hoparlörde çalmak için, müziği çalmaya başlamak için sağdaki oynat/duraklat düğmesine basmanız yeterlidir. Oynatma sırasının sırası, sol anahtarlarla ilişkili perdeleri soldan sağa doğru yansıtır. Notalar, 1, 2, 3, 4, 1, 2… sırasına göre, dakika başına belirli sayıda vuruşla çalınacaktır. Hoparlörler müziği çalarken ekranda o anda çalmakta olan nota gösterilecektir. Müzik çalmayı duraklatmak için sağ düğmeye basmanız yeterlidir, ardından müzik çalmayı durduracak ve ekranda bir duraklatma sembolü görüntülenecektir. Sağ düğmeye tekrar basmak, oynatmaya devam edecektir.

2. Adım: Teknik Detaylar

Teknik detaylar
Teknik detaylar

Sentezleyicimiz birçok farklı dijital bileşeni kullanır. Sonlu durum makineleri, yazmaçlar, çoklayıcılar, saat bölücüler ve daha fazlası dahildir. Sentezleyicimizi oluşturmak için 10 benzersiz modüler dosya kullandık. Her modülü bir bileşen yapmak yerine, modüler dosyaları fonksiyona göre ayırdık. Sonuç olarak çoğu modül birden fazla bileşendir. Yukarıdaki görüntünün, en iyi tasarımımızda birbirine bağlı her bloğu gösterdiğine dikkat edin.

Girdileri ve çıktıları tanımlayarak, bileşenlerini parçalayarak ve genel tasarımdaki amacını açıklayarak her bir modülü tartışacağız. Projede kullanılan her VHDL kod dosyasını içeren talimatın altında bir ZIP dosyası bulunur.

Girişler

  • Clk (yerel saat sinyali)
  • PP (oynat/duraklat)
  • Sel (sentezleyiciyi seçim moduna geçir)
  • Ata (bir adıma adım atama)
  • Adım (konum notları)
  • Frekans (istenen perdeyi oluşturan anahtarlar)

çıktılar

  • Anot (7 segmentli anotlar)
  • Katot (7 segmentli katotlar)
  • DAC (DAC'yi süren 4 bit)

3. Adım: Teknik Ayrıntılar

Teknik detaylar
Teknik detaylar

Adım 4: 7 segmentli Saat Bölücü

7 segmentli Saat Bölücü
7 segmentli Saat Bölücü

Sentezleyicimiz, hepsi projemizde farklı bir amaca hizmet eden sinyaller üreten üç saat bölücüyü kullanır. Bir saat bölücü, yerel bir saat sinyalini alır ve orijinal saat sinyalinden daha düşük bir frekansa sahip değiştirilmiş bir sinyal üretir. Basys 3'ün yerel saati 100 MHz'dir. Bu, saat bölücülerimizin kullandığı frekanstır. Farklı bir yerel saat frekansına sahip farklı bir FPGA kartı kullanıyorsanız, kodu değiştirmeniz gerekebilir.

7 segmentli saat bölücü, seg_display dosyasını çalıştıran bir sinyal üretir. Bölümüne geldiğimizde bu dosyanın nasıl çalıştığını daha detaylı anlatacağız. Esasen, bu saat bölücü, ekranda anotlar ve katotlar arasında geçiş yapmak için kullanılacak 240 Hz'lik bir sinyal üretir. İnsan gözünün ışığın yokluğunu algılayamadığı frekans 60 Hz olduğu için sinyal 240 Hz'dir. İki basamak kullanıyoruz, dolayısıyla bu frekansı ikiye katlayarak her basamak 60 Hz'de salınacak. Daha sonra iki katına çıkararak 240 Hz elde ederiz çünkü sistem sadece sinyal düştüğünde değil, yükseldiğinde değişir.

Bunu başarmak için bölücü doğal 100 MHz sinyali alır ve yükselen her kenarda sayar. Sayaç 416667'ye ulaştığında, çıkış düşükten yükseğe veya tam tersine gidecektir.

Girişler

Clk (yerel saat sinyali)

çıktılar

Clk_7seg (seg_display için)

Bileşenler

  • D kaydı
  • MUX
  • Çevirici
  • toplayıcı

Adım 5: Dakikada Vuruş Sayısı Saat Bölücü

Dakikada Vuruş Sayısı Saat Bölücü
Dakikada Vuruş Sayısı Saat Bölücü

BPM saat bölücü benzer şekilde çalışır. Bu bölücü, çalma durumunda ton çıkışı verirken dört adım arasındaki geçişi sağlayan saat frekansını üretir. 100 BPM'de notlar arasında geçiş yapmaya karar verdik. 100 BPM'de, her nota saniyenin 3/5'i kadar çalınacaktır. Ortaya çıkan sinyal, 1.67 Hz'lik bir frekansa sahip olacaktır.

Bu frekansta bir sinyal üretmek için yine bir sayma sistemi kullandık ama bu sefer sayı 60 milyondu. Sayaç 60 milyona her vurduğunda, çıkış sinyali yüksek veya düşük arasında değişirdi.

Girişler

Clk (yerel saat frekansı)

çıktılar

Clk_BPM (çıkış_FSM'ye)

Bileşenler

  • D kaydı
  • MUX
  • Çevirici
  • toplayıcı

Adım 6: Saha Saati Bölücü

Saha Saat Bölücü
Saha Saat Bölücü

Saha Saat Bölücü, saat bölücülerimizin en büyüğüdür. Bu bölücü, sentezleyicimizin çalabileceği 12 farklı notaya karşılık gelen 12 farklı sinyal verir. Temel müzik teorisi bilgisini kullanarak, bir bit veya veri yolunun, notaların frekansına karşılık gelen bir oranda salınım yapabileceği sonucuna vardık. Kullandığımız frekansları görmek için buraya bakın. Dördüncü oktav perdeleri kullandık.

Burada da aynı sayma sistemi kullanılmaktadır. Saydığımız belirli değerler için, Clk_div_pitches etiketli dosyaya bakın.

Girişler

Clk (yerel saat frekansı)

çıktılar

C, Db, D, Eb, E, F, Gb, G, Ab, A, Bb, B (çıktı_seçimine)

Bileşenler

  • D kaydı
  • MUX
  • Çevirici
  • toplayıcı

Adım 7: Oynat/Duraklat/Durum Makinesini Seç

Oynat/Duraklat/Durum Makinesini Seç
Oynat/Duraklat/Durum Makinesini Seç

Projemizde iki adet sonlu durum makinesi (FSM) bulunmaktadır. Bir FSM, sınırlı sayıdaki durumdan yalnızca bir durumda var olabilen bir mantık aygıtıdır. Bir FSM kullanarak, bir dijital devre, girişlerin bir kombinasyonuna dayalı olarak yeni bir duruma geçebilir. Giriş mantığını kullanarak, saatin yükselen kenarı olduğunda bir FSM'nin durumu değişecektir. Durumdan ve devreye girişlerden, yalnızca FSM belirli bir durumdaysa var olan çıkışlar veren çıkış mantığı oluşturabilirsiniz.

PPS durum makinesi devremizdeki ilk FSM'dir. Bu FSM'de üç eyalet vardır; Oynat, Duraklat ve Seçim modu. Farklı durumlar arasında gezinmek için PP ve Seçim düğmelerini kullandık. Durumlar arasındaki geçişlerin nasıl gerçekleştiğini görmek için yukarıdaki durum şemasına bakın. Bu FSM geçişini doğal 100 MHz saatin yükselen kenarında yaptık, böylece çok kısa bir süre için bile olsa düğmelerden birine basıldığında makinenin geçiş yapmaması imkansız olurdu. Mevcut durum (P_state) bu modülün tek çıktısıdır.

Girişler

  • Clk (yerel saat frekansı)
  • Sel (sol tuş)
  • PP (sağ düğme)

çıktılar

P_state (mevcut durum, output_FSM'ye, note_assign, seg_dsiplay, final_select)

Bileşenler

  • MUX
  • D kaydı

Adım 8: Oynat/Duraklat/Durum Makinesini Seç

Oynat/Duraklat/Durum Makinesini Seç
Oynat/Duraklat/Durum Makinesini Seç

Adım 9: Çıkış FSM

Çıkış FSM'si
Çıkış FSM'si

Bu, önceki bölümde atıfta bulunulan ikinci FSM'dir. Bu FSM diğerinden farklı bir işleve sahiptir, ancak bunun temeli esasen aynıdır.

FSM çıkışı yalnızca ilk FSM'den gelen mevcut durum "01" (oynatma durumu) ise çalışır. Esasen, bu modül için etkinleştirmedir. Durum "01" ise, FSM, BPM saat sinyalinin yükselen kenarındaki durumlar arasında geçiş yapacaktır. Bunu yapıyoruz çünkü output_FSM, output_select ve seg_display modüllerine seçilen adım için hangi ikili sayının gönderileceğini kontrol ediyor. FSM, daha sonra ele alınacak olan not atama modülünden gelen 16 bitlik bir girişe sahiptir. output_FSM için "00" durumunda, modül atanan ilk not için "xxxx" çıktısını verecektir. Sonra "01"de, ikinci nota için "yyyy" çıktısı verir ve ilk nota dönmeden önce her nota için böyle devam eder. Yukarıdaki durum şemasına bakın.

Bu FSM, ilkinden farklıdır çünkü durumlar arasında geçişi kontrol edecek bir giriş mantığı yoktur. Bunun yerine, FSM yalnızca ilk FSM'den gelen durum "01" olduğunda çalışacak ve daha sonra bu FSM, yalnızca saat sinyalinin yükselen kenarındaki durumlar arasında geçiş yapacaktır. Diğer bir fark, bu modülün çıkış mantığına sahip olmasıdır, yani mevcut durumu değil, o durumdaki adım için ikili sayıyı verir.

Girişler

  • Clk_BPM (saat bölücüden BPM saat sinyali)
  • FSM1_state (PPS FSM'den PS)
  • Pitch_in (note_assign'den perdeler)

çıktılar

Pitch_out (bir seferde bir adım, output_select ve seg_display için)

Bileşenler

  • MUX
  • D kaydı

Adım 10: Çıkış FSM'si

Çıkış FSM'si
Çıkış FSM'si

Adım 11: Not Atama

Not Ata
Not Ata

Not atama modülü, konumsal nota veya adıma fiilen bir adım atamaktan sorumludur. Bu modül aslında oldukça basittir. Önce devrenin "seçim" durumunda olup olmadığını ve bir kademe anahtarının (en soldaki) yüksek olup olmadığını kontrol eder. Bu doğruysa ve atama düğmesine basılırsa, modülün çıkışı frekans anahtarları (en sağda) tarafından temsil edilen ikili sayıya eşit olacaktır.

Başlangıçta, perde saati sinyallerinden birini gerçekten çıkışa kaydedecek bir modül yapmayı denedik, ancak çıkışın giriş saati sinyallerini takip edecek şekilde değişmesiyle ilgili sorunlar yaşadık. Bu, nihai tasarımda birden fazla kullanılan tek modüldür. Her adımın kendisiyle ilişkilendirilmiş bir note_assign modülü vardır ve bu nedenle, modülün her bir örneği Adım veri yolundan bir bit alır.

Girişler

  • P_state (PPS FSM'den mevcut durum)
  • Sel (sol tuş)
  • Anahtar (bir adım anahtarı)
  • Frekans (perde için en sağdaki anahtarlar)
  • Ata (alt düğme, bir not atar)

çıktılar

Adım (ikili sayı, output_FSM'ye)

Bileşenler

  • MUX
  • D kayıt

Adım 12: Çıktı Seçimi

Çıkış Seçimi
Çıkış Seçimi

Çıkış seçimi, bir adım için ikili sayıyı almaktan ve bunu ilgili saat sinyaline bağlamaktan sorumludur. Boyutuna rağmen, bu aynı zamanda nispeten basit bir modüldür. Çıktı_seçimi, esasen, belirli bir saat sinyaline bir adım için ikili sayının kodunu çözen bir ikili kod çözücüdür. Aslında çıkışı bir saat frekansına atamak burada note_assign modülüne kıyasla daha iyi çalıştı, çünkü bu modülün tek yapması gereken, kontrol girişini temsil eden ikili sayı ile saat sinyallerini MUX yapmaktı.

Garip yönlendirme için özür dileriz, Vivado perde sinyallerini clk_div_pitches dosyası için alfabetik olarak düzenledi, ancak bu dosya için onları artan ikili sayılarla düzenledi ve perdelerin farklı bir sırada olmasına neden oldu. Ayrıca output_FSM'den gelen ikili sayı "0000" veya "1100"den büyükse, MUX'un düz bir '0' sinyali ile gönderildiğini unutmayın.

Giriş

  • Adım (çıktı_FSM'den);
  • C, Db, D, Eb, E, F, Gb, G, Ab, A, Bb, B (adım saati sinyalleri)

Çıktı

Ton (seçilen saat sinyalini square_wave ile eşleştiren tek bir bit)

Bileşenler

MUX

Adım 13: Kare Dalga Geni

Kare Dalga Geni
Kare Dalga Geni

square_wave modülü, karttan DAC'ye gönderilen kare dalganın üretecidir. Önceki dosyadan gelen ton sinyalini kullanarak bu square_wave, Ton'un yükselen kenarında "0000" ile "1111" arasındaki 4 bitlik sayıyı tersine çevirir. Ton belirli bir perde frekansıdır, bu nedenle square_wave, output_FSM başka bir duruma geçtiğinde farklı frekansta bir dalga üretir. Bu modülden gelen 4 bitlik çıkış, mantığın bu veri yolunun PPS FSM'den gelen duruma göre çıkış verilip verilmeyeceğini belirlediği fin_sel modülüne gider.

Bu kare dalga üretecine bir alternatif sinüs dalgası üretmektir. Bu, büyük olasılıkla daha iyi bir son ton üretecek olsa da, uygulanması çok daha zordur, bu nedenle sadece kare bir dalga oluşturmayı seçtik.

Girişler

Ton (output_select'ten salınan bit)

çıktılar

DAC_input (aynı ton frekansında değişen salınımlı 4 bit veri yolu)

Bileşenler

  • Çevirici
  • D kaydı

Adım 14: 7 segmentli Ekran

7 segmentli Ekran
7 segmentli Ekran

seg_display modülü, basys kartımızdaki 7 segmentli ekranı kontrol eder. Modül içinde iki işlem gerçekleşir. İlk işlem, "seçim" durumundayken Freq kodunu veya "oynatma" modundayken Pitch'i çözer. "Duraklatma" modunda modül, duraklatma sembolünü göstermek için kodu çözer. VHDL koduna bakıldığında, ikili kod çözücünün girdinin kodunu katot1 ve katot2 olmak üzere iki farklı sinyale çözdüğünü görebilirsiniz. Katot1, görüntülenecek olan adıma karşılık gelen harfi temsil eder ve katot2, varsa düz sembol (b)'yi temsil eder. Bunun nedeni, seg_display modülü tarafından yapılan ikinci işlemle ilgilidir.

Bir basys3 kartında, segment ekranı ortak katotlara sahiptir. Anotlar hangi hanenin açık olduğunu kontrol ederken, katotlar hangi segmentlerin açık olduğunu kontrol eder. Ekranda ortak katotlar bulunduğundan, bu, aynı anda yalnızca bir dizi segmenti görüntüleyebileceğiniz anlamına gelir. Bu, bu proje için bir sorun teşkil ediyor çünkü ilk hanede bir harf ve gerekirse düz sembolü aynı anda görüntülemek istiyoruz. Şimdi 7seg saat sinyalini hatırlıyor musunuz? Bu sorunu aşmak için, 7seg saat sinyalinde anotları ve katotları ileri geri değiştiriyoruz. Saat sinyali 240 Hz olduğundan ve iki basamak kullandığımızdan, her basamak 60 Hz'de salınacaktır. İnsan gözüne, rakamlar hiç salınmıyormuş gibi görünecektir.

Ayrıca basys3 kart ekranının negatif mantık kullandığını unutmayın. Bu, bir anot veya katot '0' olarak ayarlanırsa, o rakam veya segmentin açık olacağı ve bunun tersi anlamına gelir.

Girişler

  • Pitch (oynatma durumunda kullanılan bir not için ikili sayı)
  • Frekans (seçim durumundayken kullanılan frekans anahtarları)
  • P_state (PPS FSM'den mevcut durum)
  • Clk_240Hz (Clk_div_7seg'den saat sinyali, çift 120 çünkü sadece yükselen kenarı kullanıyoruz)

çıktılar

  • Katot (ekrandaki segmentleri kontrol eden veri yolu, son çıkış)
  • Anot (ekrandaki rakamları kontrol eden veri yolu, son çıkış)

Bileşenler

  • mandal
  • MUX
  • D kaydı

Adım 15: Son Seçim

Son Seçim
Son Seçim

Nihai seçim, bu projede kullanılan son modüldür. Başka bir basit modül olan bu modül, DAC'ye gidecek olan son çıktıyı kontrol eder. "Seçim" veya "duraklatma" durumundayken, modül statik bir "0000" çıkışı verir, böylece hoparlörlerden müzik çalınmaz. "Oynat" durumunda modül, square_wave tarafından belirlendiği gibi salınan 4 bitlik çıktı verecektir.

Girişler

  • P_state (PPS FSM'den mevcut durum)
  • DAC_input (square_wave'den salınan 4 bit)

çıktılar

DAC (oynatma durumunda, son çıktıda DAC_input'a eşittir)

Bileşenler

MUX

Adım 16: Harici Aygıtlar: DAC

Harici Cihazlar: DAC
Harici Cihazlar: DAC

Dijitalden analoğa dönüştürücü (DAC), ayrı bir sinyali alır ve onu sürekli bir sinyale dönüştürür. DAC'ımızın dört biti vardır ve bir toplama amplifikatöründen yapılmıştır. Besleme ve geri besleme döngüsünde bir direnç oranı kullanarak, her dalın "toplanması" ile 16 farklı seviyede çıkış yapan bir sistem oluşturabildik. En üstteki dal olan Bit0, en az ağırlığı taşır ve yüksek olduğunda en küçük potansiyele katkıda bulunur, çünkü bu dallar daha yüksek direnç gösterir. Dallardan aşağı indikçe ağırlık artar. Bit girişlerini kullanarak ikili olarak yukarı ve sonra geri sayacak olsaydınız, çıkış voltajları adım adım sinüs dalgası gibi görünürdü. DAC'ye giriş, 4 bitlik sinyali aktarmak için karttaki PMOD'lardan birine bağlandı.

DAC, başlangıçta bir Elektrik Mühendisliği sınıfı için bir araya getirildi ve bir mağazadan satın alınmadı, tarafımızdan tasarlandı ve lehimlendi. Yukarıda, baskılı devre kartı oluşturmak için tasarım dosyasının bir görüntüsü bulunmaktadır.

Adım 17: Harici Aygıtlar: Hoparlör

Harici Cihazlar: Hoparlör
Harici Cihazlar: Hoparlör

Bu proje için süper güzel bir çift hoparlör almak istemeyeceksiniz. Anlayabileceğiniz gibi, ses oldukça basit. Gittik ve Best Buy'dan 8 dolarlık bir bilgisayar hoparlörü seti aldık. Kulaklık jakı olan her şey iyi çalışır. Monoton da iyi çalışıyor. Kulaklık bile kullanabilirsiniz, ancak onları patlatabilirsiniz!

DAC'nin çıkışını hoparlörlere bağlamak için atlama kabloları kullandık ve ardından çıkış kablosunu kulaklık jakının ucuna ve kabloyu tabana topraklamak için tuttuk. Kabloları yerinde tutmak için elektrik bandı kullanmayı denedik ama bu çok fazla parazite neden oldu. Farklı bir bant stili denemek bu sorunu çözebilir.

Hoparlörlerimiz için onları en yüksek ayara getirdik ve oldukça yüksek bir ses aldık.

Ve bu, bir FPGA kartından bir dijital sıralayıcı oluşturmanın son adımıdır! Tüm VHDL kodumuzu indirmek ve sıralayıcıyı çalışırken görmek için sonraki iki bölüme gidin.

Adım 18: Video Demosu

Bu video, anahtarları 4 farklı perdeye atama süreci ve ilgili notaları çalan konuşmacılar da dahil olmak üzere, çalışma projesinin son halini gösterir.

Adım 19: VHDL Kodu

Sıralayıcıyı oluştururken kullanılan kısıtlama ve sim dosyaları da dahil olmak üzere tüm projenin kodu. Kullanılmayan tasarım dosyalarının mimaride böyle söylediğine dikkat edin.

Önerilen: