Division Algorithm

Türkçe karşılığı: Donanımsal bölme algoritmalarıAlan: Bilgisayar Mimarisi

Tamsayı veya kayan nokta bölmeyi yinelemeli çıkarma, redundant digit seçimi ya da reciprocal yaklaşımıyla gerçekleştiren algoritma ailesi.

Bölme, işlemci tarafında tek bir algoritmaya karşılık gelmez. Restoring ve non-restoring yöntemler quotient bitlerini yinelemeli üretirken SRT daha yüksek radix ve redundant digit set kullanabilir. Newton-Raphson ve Goldschmidt ise problemi reciprocal yaklaşımına taşıyıp hızlı çarpma birimlerinden yararlanır.

Donanım Tarafı

Seçim yalnız latency değildir; divider alanı, pipeline derinliği, clock target, operand genişliği ve aynı anda kaç division kabul edilebildiği önemlidir. Küçük bir gömülü çekirdekte iteratif divider mantıklıyken yüksek throughput isteyen FPU farklı tasarım gerektirebilir.

Derleyici Tarafı

Sabit bir tamsayıya bölme çoğu zaman gerçek DIV instruction'ına dönüşmez. Derleyici uygun olduğunda magic multiplier ve shift dizisi üretebilir. Kaynak kod seviyesinde % veya / görmek bu nedenle instruction maliyetini tek başına göstermez.

İlgili Kavramlar

  • Integer Arithmetic
  • Reciprocal Approximation
  • Pipeline
  • Compiler Optimization