Lewati ke konten
chip.peruri.co.id

Bab 3: Analisis Waktu Statis (Static Timing Analysis - STA)

Kinerja sirkuit terpadu digital dievaluasi berdasarkan tiga metrik fundamental yang dikenal sebagai PPA (Power, Performance, and Area). Metrik performance ditentukan oleh frekuensi detak maksimum (f_max) yang dapat dicapai sirkuit tanpa mengalami kegagalan fungsional.

Menemukan frekuensi kerja maksimum melalui simulasi dinamik berbasis vektor uji (test vectors) tidak memiliki skalabilitas pada sirkuit terpadu berskala besar (VLSI). Simulasi tidak pernah dapat menjamin bahwa pola uji yang diinjeksikan berhasil mengeksitasi jalur kritis terpanjang (critical path). Oleh karena itu, industri semikonduktor menggunakan metodologi Analisis Waktu Statis (Static Timing Analysis - STA).

Prinsip Dasar Static Timing Analysis (STA)

STA memeriksa seluruh kemungkinan jalur sinyal (lintasan logika dari register ke register, masukan ke register, dan register ke keluaran) secara matematis tanpa memerlukan vektor simulasi dinamis. Perangkat analisis waktu terbuka yang terintegrasi di dalam LibreLane dan OpenROAD adalah OpenSTA.


3.1 Konstrain Detak & Karakteristik Waktu Register

Section titled “3.1 Konstrain Detak & Karakteristik Waktu Register”

Dalam perancangan sirkuit sinkron berdetak, konfigurasi waktu didefinisikan melalui periode detak target. Pada berkas konfigurasi LibreLane, parameter ini dituliskan sebagai berikut:

CLOCK_PERIOD: 20

Nilai 20 menetapkan periode detak T_clk = 20 ns (ekuivalen dengan frekuensi 50 MHz).

Dua aturan waktu paling mendasar yang harus dipenuhi oleh setiap elemen penyimpan (seperti D-Flip-Flop) adalah:

  1. Waktu Ancang (Setup Time - t_setup): Durasi minimum sinyal data pada masukan D harus telah stabil sebelum tepi aktif sinyal detak tiba.
  2. Waktu Tahan (Hold Time - t_hold): Durasi minimum sinyal data pada masukan D harus tetap dipertahankan stabil setelah tepi aktif sinyal detak tiba.

T_clk >= t_cq + t_comb(max) + t_setup + t_skew

Di mana:

  • t_cq adalah waktu rambat dari tepi detak ke keluaran Q (clock-to-Q delay).
  • t_comb(max) adalah penundaan propagasi maksimum melintasi jaringan gerbang logika kombinatorial.
  • t_skew adalah deviasi waktu kedatangan sinyal detak antar-register (clock skew).

3.2 Pelanggaran Waktu: Setup vs. Hold Violation

Section titled “3.2 Pelanggaran Waktu: Setup vs. Hold Violation”

Perbedaan sifat antara pelanggaran setup dan hold sangat kritikal bagi seorang perancang sirkuit terpadu:

1. Pelanggaran Waktu Ancang (Setup Time Violation)

Section titled “1. Pelanggaran Waktu Ancang (Setup Time Violation)”

Terjadi ketika data tiba terlalu lambat di register tujuan. Sinyal belum stabil saat batas waktu ancang tercapai.

  • Dampak: Sirkuit gagal beroperasi pada frekuensi yang ditargetkan.
  • Solusi Operasional: Pelanggaran setup dapat diatasi cukup dengan menurunkan frekuensi detak (memperpanjang periode detak T_clk).

2. Pelanggaran Waktu Tahan (Hold Time Violation)

Section titled “2. Pelanggaran Waktu Tahan (Hold Time Violation)”

Terjadi ketika sinyal data baru tiba terlalu cepat di register tujuan dan menimpa sinyal data lama sebelum register selesai mengaitnya secara stabil. Sering disebut sebagai kondisi balapan (race condition).

  • Dampak: Sirkuit mengalami kegagalan fungsi fatal (catastrophic failure) permanen pada frekuensi berapapun!
  • Karakteristik Kritis: Pelanggaran hold TIDAK DAPAT diperbaiki dengan memperlambat detak sirkuit, karena kedua tepi detak yang memicu register pemancar dan penerima terjadi pada siklus yang sama.
  • Solusi Fisik: Perangkat EDA (seperti OpenROAD) harus menyisipkan sel penyangga (delay buffers) secara otomatis pada jalur data cepat untuk memperlambat sinyal data hingga melewati jendela hold time.

3.3 Sudut Proses Fabrikasi (Process Corners)

Section titled “3.3 Sudut Proses Fabrikasi (Process Corners)”

Karakteristik kelistrikan transistor silikon bervariasi akibat fluktuasi ketebalan oksida gerbang, konsentrasi doping atom pada wafer, suhu operasional, dan fluktuasi tegangan catu daya (PVT: Process, Voltage, Temperature).

Pada PDK SkyWater SKY130, pustaka sel standar dikarakterisasi ke dalam tiga sudut proses (process corners) utama:

Sudut Proses Kondisi Lingkungan & Parameter Silikon Fokus Pemeriksaan STA
Typical (TT) Tegangan nominal (1.8 V), suhu ruang standar (25°C), silikon nominal. Digunakan sebagai garis dasar (baseline evaluation) dan estimasi rata-rata kinerja sirkuit.
Slow / Worst-Case (SS) Suhu tinggi (100°C / 125°C), tegangan catu minimum (1.6 V), kecepatan hantar transistor lambat. Pemeriksaan Setup Time: Pada sudut ini, sinyal merambat paling lambat; jika sirkuit lolos setup time pada sudut SS, sirkuit dijamin aman di seluruh kondisi termal.
Fast / Best-Case (FF) Suhu rendah (-40°C / 0°C), tegangan catu maksimum (1.98 V), kecepatan hantar transistor cepat. Pemeriksaan Hold Time: Pada sudut ini, sinyal data merambat paling cepat mendahului tibanya detak; sudut FF digunakan untuk memverifikasi ketiadaan pelanggaran hold.

3.4 Titik Analisis STA dalam Alur LibreLane

Section titled “3.4 Titik Analisis STA dalam Alur LibreLane”

LibreLane tidak hanya menjalankan STA sekali di akhir, melainkan di beberapa titik krusial:

  1. Pasca-Sintesis (Pre-PnR): Mengevaluasi netlist logika gerbang menggunakan model beban kawat ideal (wire load models).
  2. Pasca-Penempatan & CTS: Mengevaluasi jalur kritis setelah lokasi sel ditetapkan dan pohon detak dibangun.
  3. Pasca-Perutean Final (Post-PnR): Mengevaluasi netlist akhir dengan memperhitungkan resistansi dan kapasitansi parasitik riil hasil ekstraksi tata letak kawat logam (RCX). Ini adalah analisis waktu paling presisi.

Laporan summary.rpt menyajikan rekapitulasi nilai selisih waktu (slack):

  • Slack Positif ($+S$): Sirkuit memenuhi target waktu dengan cadangan margin keamanan.
  • Slack Negatif ($-S$): Terjadi pelanggaran waktu (timing violation); sirkuit belum mencapai kondisi timing closure.

Evaluasi Bab
Kuis Evaluasi Pemahaman Bab 3: Analisis Waktu Statis & Karakterisasi PVT
Belum selesai
1. Mengapa pelanggaran waktu tahan (hold time violation) dianggap jauh lebih berbahaya dibandingkan pelanggaran waktu ancang (setup time violation)?
2. Pada kondisi sudut proses (process corner) manakah analisis waktu ancang (setup time) dan waktu tahan (hold time) masing-masing harus diuji secara ketat?
3. Apa arti dari nilai slack waktu sebesar +2.45 ns dalam laporan akhir OpenSTA?