Menu
Coddy logo textTech

Bit Sayacı

Coddy'nin Verilog Journey'sinin Temeller bölümünün bir parçası — ders 87 / 90.

challenge icon

Görev

Bu bölümde, adım adım bir UART vericisi (transmitter) oluşturacaksınız. UART, Universal Asynchronous Receiver-Transmitter (Evrensel Asenkron Alıcı-Verici) anlamına gelir. İki cihazın sadece bir kablo (iletim için) ve başka bir kablo (alım için) kullanarak iletişim kurmasını sağlayan basit bir donanım protokolüdür.

Bunu telefonda konuşan iki kişi gibi düşünebilirsiniz — biri konuşur (iletir), diğeri dinler (alır). UART, verileri her bir baytın başlangıcını ve sonunu işaretlemek için başlangıç ve durdurma bitleri kullanarak her seferinde bir bit şeklinde gönderir.

Bir UART vericisi 10 bit gönderir: başlangıç biti (1), veri bitleri (8), durdurma biti (1). Hangi biti gönderdiğimizi takip etmek için 0'dan 10'a kadar sayan bir bit sayacına ihtiyacımız var.
Bit Sayacı Nasıl Çalışır?

  • 0'dan başlar
  • Her saat döngüsünde 1 ekler
  • 10'a ulaştığında 0'a geri döner
  • Sonsuza kadar tekrarlar

Bu görevde, henüz sıfırlama yapmayacağız: sadece artıracağız.

Yapılması gerekenler:

  1. Şunlara sahip uart_tx adında bir modül oluşturun:
    • Bir giriş: clk
    • Bir çıkış: cnt (4 bit, reg tipinde)
  2. Modülün içinde:
    • Bir initial bloğu içinde başlangıçta cnt değerini 0 olarak ayarlayın
    • Bir always @(posedge clk) bloğu ekleyin
    • Her saat kenarında cnt değerinin 1 artmasını sağlayın

Kendin dene

// YAPILACAK: clk girişi ve cnt (4 bit) çıkışı olan uart_tx modülünü oluşturun

// YAPILACAK: Bir initial bloğu içinde başlangıçta cnt değerini 0 yapın

// YAPILACAK: always @(posedge clk) bloğu ekleyin

// YAPILACAK: cnt değerini artırın

Temeller bölümündeki tüm dersler