🔌 Modül 5 · Çip Donanımı · Bölüm 5.6 · 12 dk okuma

TDC — Zaman-Alanlı Okuma

Akımı zamana çevir — ADC'nin alan ve enerji devriminin anahtarı.

Bu bölümde öğreneceklerin

  • TDC (Time-to-Digital Converter) prensibini ve neden ADC'ye alternatif olduğunu açıkla
  • RC entegratör + komparatör ile akım-zaman dönüşümünü matematiksel yaz
  • Y10 hedefi olan TDC'nin Y1 ADC'sine kıyasla alan/güç tasarrufunu hesapla
  • TDC'nin gürültü, dinamik aralık, hız zorluklarını söyle
  • TDC + sayıcı kombinasyonunun hassas okuma için nasıl çalıştığını göster

Açılış: ADC'nin Sorununa Akıllı Çözüm

Modül 5.4’te gördük: SIDRA Y1 die alanının %25’i ADC, gücünün %33’ü ADC. Çok pahalı. Klasik ADC tasarımı bu skala için optimal değil.

Çözüm: TDC (Time-to-Digital Converter). Akımı doğrudan dijitale çevirmek yerine zamana çevir. Zaman ölçmek ucuz (sayıcı + saat). Akım ölçmek pahalı (yüksek-bit ADC).

Mantık: bir kapasitörü sabit voltaja şarj etmek için gereken süre = akıma ters orantılıdır. Yüksek akım → kısa süre. Düşük akım → uzun süre. Sayıcı bu süreyi sayar → dijital sonuç.

Y10 hedefi: ADC yerine TDC ile alan %60 azalır + güç %50 azalır. Bu modülde TDC’nin matematiği, devresi, ve SIDRA için pratik tasarımı.

Sezgi: Kapasitör Doldurma Yarışı

Klasik ADC: akımı 256 referansla karşılaştır → 8-bit dijital. Hızlı ama büyük + güçlü.

TDC alternatifi:

  1. Crossbar sütun çıkışı akımı bir kapasitöre akıt.
  2. Kapasitör voltajı lineer artar (V=It/CV = I \cdot t / C).
  3. Voltaj eşik V_th seviyesini aştığında durdur.
  4. Geçen süre t=VthC/It = V_{th} \cdot C / Iakıma ters orantılı.
  5. Sayıcı (dijital) bu süreyi count_max ile sınırlı sayar.

Pratik dönüşüm:

  • C=100C = 100 fF, Vth=0.5V_{th} = 0.5 V.
  • I=1I = 1 µA → t=0.5V100t = 0.5 V \cdot 100 fF / 1 µA = 5050 ns.
  • I=10I = 10 µA → t=5t = 5 ns. (10× akım, 10× kısa.)
  • I=100I = 100 nA → t=500t = 500 ns.

Sayıcı (1 GHz saat): her ns’de bir sayım. 5-500 ns aralığı = 5-500 sayım. ~9 bit etkin.

Avantaj:

  • ADC: ~25 mm² Y1’de.
  • TDC: ~10 mm² (Y10’da).
  • Güç: 1 pJ/conv (ADC) → 0.3 pJ/conv (TDC).

Dezavantaj:

  • Süre değişken (akıma bağlı). Sabit-saat sistemine uygun değil.
  • Düşük akım = uzun süre = yavaş okuma.
  • Sayıcı sınırlı bit (10-12 bit pratik).

SIDRA için uygun mu? Evet, çünkü sınıflandırma için hızdan çok enerji önemli. Y3’te prototip, Y10’da standart.

Formalizm: TDC Matematiği ve Devre

L1 · Başlangıç

Temel TDC denklemi:

t=VthCIt = \frac{V_{th} \cdot C}{I}
  • VthV_{th}: komparatör eşiği (sabit, örn. 0.5 V).
  • CC: entegratör kapasitör (sabit, örn. 100 fF).
  • II: ölçülen akım (crossbar çıkışı).
  • tt: sayıcı çıkışı (saat çevrimi cinsinden).

Akım aralığı vs zaman:

AkımZaman1 GHz sayım
100 nA500 ns500
1 µA50 ns50
10 µA5 ns5
100 µA0.5 ns1 altı (sınır altı)

Düşük akım iyi çözünürlük; yüksek akım sınır.

Tipik SIDRA sütun akımı: 1-10 µA → TDC süresi 5-50 ns.

Sayıcı bit derinliği:

500 sayım = 9 bit. Daha fazla sayı için ya kapasitör büyüt (yavaşla) ya saat hızlandır.

L2 · Tam

TDC devre şeması:

crossbar sütun (I_in)

   [─── (kapı)

   ────┼──── ↑ V_C (kapasitör voltajı)
       │     |
       C   [Komparatör] ── eşik V_th
       │     |
   ────┼──── ↓

   (toprak)

   [Sayıcı] ←── 1 GHz saat

   dijital sonuç

Çalışma adımları:

  1. Reset: anahtar açık, kapasitör boşalt.
  2. Start: anahtar kapan, IinI_{in} kapasitöre akmaya başlar. Sayıcı 0’dan sayar.
  3. Wait: VCV_C artar lineer.
  4. Stop: VCVthV_C \geq V_{th} → komparatör tetiklenir → sayıcı durur.
  5. Read: sayıcı değeri tt = akımın inverse’ü.

Sayıcı çıkışı dijital sayıdır. ADC’nin yerine geçer.

Hız:

  • Min süre (max akım): 1 ns.
  • Max süre (min akım): 1 µs.
  • Tipik MVM: 10-50 ns.

ADC tipik 5 ns. TDC 1-1000 ns değişken. Yavaş ama esnek.

Çoklu kanal:

Bir TDC bir sütun ölçer. 256 sütun için 256 TDC mı? Hayır — paylaşımlı:

  • Hızlı pipelining: bir TDC saniyede 100M ölçüm.
  • 256 sütun / TDC sayısı = paylaşım faktörü.
  • Y10 hedef: 32 TDC/CU (4× sütun başı paylaşım) → alanı %75 düşür.

Doğruluk:

Sayıcı ayrımı: 1 ns (1 GHz). Akım için: ΔI=VthC/t\Delta I = V_{th} C / t → resolution tt ile artar (yavaş okuma daha hassas).

SIDRA pratik: ~8 bit etkin (sayıcı 256 sayım), Y1 ADC ile aynı.

L3 · Derin

TDC + sigma-delta hibrit:

TDC tek başına 8-9 bit. Daha hassas için sigma-delta loop:

  1. TDC ölç → coarse okuma.
  2. Hata (akım rezidü) tahmin et.
  3. Rezidü için ikinci TDC ölç.
  4. İki ölçümü birleştir → 12-14 bit etkin.

Y10 hedefi: hibrit TDC, 12 bit.

Termal etkiler:

Kapasitör değeri C(T)C(T) küçük sıcaklık bağlı (~30 ppm/°C). Komparatör eşiği daha hassas (~100 µV/°C).

Düzeltme: sıcaklık-aware kalibrasyon. Her cluster’da referans TDC ölçer, diğerlerini düzeltir.

Saat jitter:

Sayıcı 1 GHz saatten gelir. Saat jitter ~10 ps RMS. 1 ns sayım için %1 hata. Pratikte tolere edilir.

Düşük-akım sorunu:

HRS hücreler (1 µS @ 0.25 V → 250 nA) çok yavaş okunur (~200 ns TDC). MVM throughput düşer.

Çözüm: voltaj artır (HRS’de 0.5 V kullan) veya akım amplify (TIA, Modül 5.7).

TDC vs ADC karşılaştırma:

ÖzellikADC (Y1)TDC (Y10)
Alan25 mm² (%25 die)10 mm² (%10)
Güç1 W0.5 W
Hız5 ns5-500 ns değişken
Bit derinliği88 (12 hibrit)
KarmaşıklıkYüksekOrta
OlgunlukStandartYenilik (SIDRA Y10)

TDC’nin fizik temeli:

Aslında TDC bir integrating ADC varyantıdır. Akım entegrasyonu = doğal alçak-geçiren filtre (gürültü düşer). ADC daha çok “anlık örnek” → daha çok gürültü.

Bu yüzden TDC SNR doğal olarak biraz iyi (~2-3 dB).

Modern uygulamalar:

  • IBM Telum (2021): TDC tabanlı analog compute-in-memory test.
  • Mythic AI: ADC tabanlı (TDC’ye geçmedi).
  • Loihi 2: dijital, TDC değil.
  • SIDRA Y10: akademik araştırma + ürün hibrid TDC ilk büyük kullanım.

Deney: TDC Çalışma Örneği

Crossbar sütunu MVM çıkışı: I = 5 µA.

TDC parametreleri: C = 100 fF, V_th = 0.5 V, sayıcı 1 GHz.

Adım 1: reset, VC=0V_C = 0.

Adım 2: akım entegrasyonu başlar. VC(t)=It/C=5×106t/1013=5×107tV_C(t) = I \cdot t / C = 5 \times 10^{-6} \cdot t / 10^{-13} = 5 \times 10^7 \cdot t V (t saniye).

Adım 3: VC=VthV_C = V_{th}: 5×107t=0.55 \times 10^7 \cdot t = 0.5 t=108t = 10^{-8} s = 10 ns.

Adım 4: sayıcı 10 sayım okur.

Sayıcıdan akıma: I=VthC/t=0.51013/108=5×106I = V_{th} \cdot C / t = 0.5 \cdot 10^{-13} / 10^{-8} = 5 \times 10^{-6} A = 5 µA. Doğru.

Farklı akımlarda:

ItSayı
100 nA500 ns500
500 nA100 ns100
1 µA50 ns50
5 µA10 ns10
10 µA5 ns5
50 µA1 ns1

Sayı 1-500 → ~9 bit etkin. Düşük akımda yüksek hassasiyet.

Sınır: 50 µA üstü akımda sayım < 1 → TDC fail. Çözüm: ya kapasitör büyüt ya akım scale-down.

Y10 SIDRA tipik:

  • Ortalama akım 5 µA → 10 ns ölçüm.
  • 256 sütun, paylaşımlı 32 TDC → her TDC 8 sütun ölçer = 80 ns.
  • ADC alternatifi 5 ns × 256 sütun (paralel ADC) = 5 ns.

TDC paylaşımlı 16× yavaş ama 16× az TDC → alan + güç kazanç ağır basar.

Kısa Sınav

1/6TDC'nin temel ilkesi nedir?

Laboratuvar Görevi

Y10 TDC tasarım optimizasyonu.

Y10 specs:

  • Crossbar 1024×1024 (Y1’in 4×).
  • 1 cluster = 16 CU × 16 crossbar.
  • Hedef: ADC alan %25 → %10.

TDC parametreleri:

  • C = 200 fF (dinamik aralık için).
  • V_th = 0.5 V.
  • Saat = 2 GHz (Y10’da artış).

Sorular:

(a) C = 200 fF için tipik 5 µA akımda TDC süresi? (b) 1024 sütun için kaç TDC paylaşımı (32 TDC × 32 sütun) ile MVM süresi? (c) Y1 ADC alanı 25 mm² → Y10 TDC alan tahmini? (d) TDC enerji ADC’den ne kadar az? (e) Y10 toplam ADC+TDC alan tasarrufu?

Çözümler

(a) t=VthC/I=0.52×1013/5×106=2×108t = V_{th} \cdot C / I = 0.5 \cdot 2 \times 10^{-13} / 5 \times 10^{-6} = 2 \times 10^{-8} s = 20 ns.

(b) Paylaşımlı: 32 TDC × 32 sütun = 1024. Her TDC sıralı 32 sütun → 32 × 20 ns = 640 ns/MVM. Y1’in 5 ns’sinden 128× yavaş! Ama:

  • Y10’da paralel cluster sayısı 4×.
  • TDC sayısı düşük → daha çok crossbar paralel çalışabilir.
  • Net throughput: aynı 30 TOPS → 300 TOPS Y10’da.

(c) Y10 = 4× crossbar (Y1’e göre). Aynı ADC alanı kullanılırsa: 100 mm². TDC ile %25 → ~25 mm². Y10 TDC = 25 mm² hedef (%10 die alanı, 1 cm² die’da).

(d) TDC: 0.3 pJ/conv. ADC: 1 pJ/conv. 3× az enerji. 1024 sütun × 50M conv/s × 0.3 pJ = 15 W → paylaşımlı 32 TDC: 15 / 32 = 0.5 W TDC payı. ADC alternatif 1.5 W. Tasarruf 1 W.

(e) Toplam Y10 (4× Y1 crossbar): ADC tahmini 100 mm² → TDC ile 30 mm² (%70 tasarruf). Bu yer compute engine + memory için açılır → Y10 gerçek değeri.

Özet Kart

  • TDC: akım → kapasitör doldurma süresi → sayıcı → dijital. ADC alternatifi.
  • Denklem: t=VthC/It = V_{th} \cdot C / I. Akım inverse’ü.
  • Y1: ADC kullanıyor (25% alan, 33% güç).
  • Y10 hedefi: TDC ile alan %60 az + güç %50 az.
  • Bit derinliği: ~9 etkin tek aşama, 12-14 hibrit.
  • Süre: akıma bağlı 1 ns - 1 µs (5-50 ns tipik).
  • Paylaşım: 1 TDC × 8-32 sütun (alan tasarrufu).
  • Avantaj: doğal entegrasyon → SNR ~2-3 dB iyi.

Vizyon: Time-Domain Hesaplamanın Yaygınlaşması

TDC sadece okuma için değil — tüm hesaplama time-domain’de yapılabilir:

  • Y1 (bugün): ADC kullanır, TDC araştırma.
  • Y3 (2027): TDC prototip CU’larında (1-2 cluster).
  • Y10 (2029): TDC standart. Hibrit sigma-delta ile 12-bit.
  • Y100 (2031+): Tüm sinyal zinciri time-domain — DAC, MVM, ADC her şey zaman-kodlu. Spike-based.
  • Y1000 (uzun vade): Optik time-domain (fotonik puls). Tek-foton hassasiyeti.

Türkiye için anlam: Time-domain analog circuit design akademik araştırma odağı. SIDRA’nın Y10 prototipinde TDC kullanması Türkiye’nin araştırma cephesi yatırımına dönüşü — patentleyebilir, yayımlayabilir, ürünleştirebiliriz.

Beklenmedik: Astrofizik ile bağlantı. Photomultiplier’lar (foton dedektörü) zaten TDC kullanır (tek-foton zamanı ölçmek için). SIDRA’nın TDC tasarımı bu birikimden öğreniyor. Türkiye’nin gözlemevi (TÜBİTAK Ulusal Gözlemevi) deneyimi nöromorfik için kullanılabilir.

Daha İleri

  • Bir sonraki bölüm: 5.7 — TIA: Transempedans Algılama
  • Önceki: 5.5 — DAC: SAR + ISPP
  • TDC tasarım: Henzler, Time-to-Digital Converters, Springer 2010.
  • Integrating ADC: Razavi, Principles of Data Conversion System Design, Wiley 1995.
  • Compute-in-memory + TDC: Ambrogio et al., An analog-AI chip for energy-efficient deep learning inference, Nature 2023.
  • Sigma-Delta hibrit: Schreier & Temes, Understanding Delta-Sigma Data Converters.