2 poin oleh GN⁺ 2025-12-21 | Belum ada komentar. | Bagikan ke WhatsApp
  • Dalam kompetisi demo Tiny Tapeout 8, dibuat dua demo ASIC yang menghasilkan grafik VGA dan audio 1-bit hanya dengan sekitar 4 ribu logic gate
  • Karya pertama adalah intro bergaya demoscene tradisional yang mencakup checkerboard 3D, latar bintang, teks scroll, dan musik, diimplementasikan sebagai state machine murni tanpa CPU maupun RAM
  • Karya kedua adalah animasi Nyan Cat, memakai VGA 640x480 dan audio yang tersinkron dengan video, dengan hampir seluruh rangkaian dipadatkan ke dalam satu tile
  • Semua efek visual dan audio dihasilkan langsung oleh rangkaian logika berbasis Verilog, dengan reproduksi musik memakai sumber daya minimum seperti sintesis gelombang segitiga dan pulsa, noise LFSR, serta DAC sigma-delta
  • Produksi sempat terhenti akibat kebangkrutan Efabless, tetapi chip kemudian dipulihkan dan dipastikan berjalan sempurna pada perangkat keras nyata

Demo intro TT08

  • Komposisi grafis mencakup starfield latar, checkerboard 3D, teks scroll bergelombang dan efek bayangan
    • Resolusi VGA 1220x480, memakai clock 48MHz
    • Video dihasilkan dengan merender hasil konversi C++ dari simulasi Verilator ke jendela SDL
  • Menggunakan 293 flip-flop dan total 3374 sel, nyaris mencapai batas area
    • Encoding font memakan banyak area gate sehingga nilai warna dikorbankan dan diganti dengan pola garis diagonal
  • Untuk encoding data tanpa ROM, pola direpresentasikan langsung dengan logic gate
    • Pipeline sintesis Yosys mengubah truth table menjadi standard cell
    • Dibanding kompleksitas data, kesederhanaan algoritmik berdasarkan alamat lebih menguntungkan untuk penghematan area
  • Scroller sinus diimplementasikan dengan rotasi vektor tanpa tabel
    • Menggunakan metode symplectic integrator dari Minsky untuk menghasilkan lintasan melingkar
  • Proyeksi bidang checkerboard diimplementasikan dengan operasi fixed-point
    • Modul recip16 menghitung invers koordinat y untuk melakukan transformasi perspektif
    • Pola warna dibuat dengan operasi XOR, dan tinggi bidang berubah mengikuti beat drum

Detail grafis

  • Efek bayangan dibuat dengan memproyeksikan teks scroll ke sistem koordinat bidang lalu menggeser bit warna
  • Latar bintang (Starfield) menghasilkan bilangan acak per scanline menggunakan LFSR
    • Dikombinasikan dengan frame counter untuk menentukan posisi dan kecepatan bintang, dengan panjang ekor berubah mengikuti timing snare drum

Sintesis musik

  • Struktur pola berulang ABACABAD dipakai untuk meminimalkan duplikasi logic gate
  • Terdiri dari tiga channel
    • Noise + exponential decay (snare)
    • Arpeggio gelombang kotak (melodi/chord)
    • Gelombang segitiga + exponential decay (kick/bass)
  • Output audio memakai DAC sigma-delta
    • Implementasi dibuat sederhana dengan mengeluarkan carry bit akumulator alih-alih PWM
  • Mengadopsi progresi chord dari lagu Crooner (C64 SID)
    • Berbasis tangga nada 8 nada, rentang 2 oktaf, arpeggio per bit
    • Ritme swing diimplementasikan dengan mengalihkan tempo antara 15 dan 25 tick

Retrospektif

  • Desain yang memisahkan clock audio dan video menyebabkan ketidaksesuaian sinkronisasi musik dan video
  • Pemilihan resolusi nonstandar 1220x480 menurunkan kualitas tampilan pada LCD
  • Pada CRT muncul efek dithering yang alami, tetapi pada capture digital terjadi distorsi

Demo Nyan Cat

  • Dibuat tepat sebelum tenggat Tiny Tapeout 8, memakai VGA 640x480 dan audio sinkron 60Hz
    • Frame dan palet diekstrak dari GIF asli lalu dikonversi dengan dithering ke RGB222
    • Latar bintang berbasis LFSR digunakan kembali
  • Data musik dibuat dengan mem-parsing file MIDI lalu dipetakan ulang ke tangga nada 8 nada
    • Hanya memakai dua channel: bass/kick dan melodi
    • Envelope exponential decay diterapkan pada awal setiap frame (60Hz)
  • Melodi dihasilkan dengan pulse wave duty cycle 25%
    • Frekuensi disesuaikan dengan memilih bit-bit atas per oktaf
    • Ditambahkan low-pass filter untuk mengatur timbre

Manufaktur dan hasil

  • Tiny Tapeout 8 mulai diproduksi pada September 2024 lalu terhenti akibat kebangkrutan Efabless
    • Pada paruh kedua 2025, tim operasi baru mengambil kembali chip dan mendistribusikannya
  • Dalam pengujian chip nyata, semua desain berjalan normal
    • Hanya demo Donut yang perlu menurunkan clock ke 45MHz agar stabil
  • Demo Nyan Cat diputar sempurna di LCD maupun CRT
    • Didemonstrasikan dalam siaran langsung YouTube milik Bitluni

Penutup

  • Setelah menunggu lebih dari setahun, akhirnya terkonfirmasi ada demo yang berjalan sempurna di silikon nyata
  • Ini merupakan contoh implementasi efek visual dan audio di lingkungan Tiny Tapeout dengan rangkaian logika murni tanpa CPU maupun RAM
  • Disebutkan pula rencana pengembangan teknik demo hardware low-level yang lebih maju ke depan

Belum ada komentar.

Belum ada komentar.