CS karmaşıklık teorisi tarafından kullanılan devre karmaşıklık sınıflarının VLSI topluluğundan farklı tahminler yapması ve farklı metrikler kullanması çok daha ilginçtir. Gönderen Boole fonksiyonlarının VLSI karmaşıklığı :
değişkeninin tüm Boolean fonksiyonlarının O ( 2 n / n ) geçidi (Lupanov teoremi) olan bir mantık devresi ile hesaplanabileceği ve bu boyutta mantık devreleri gerektiren n değişkenlerin Boolean fonksiyonlarının mevcut olduğu iyi bilinmektedir. teoremi). Thompson'ın VLSI çip modelini kullanarak VLSI devreleri tarafından hesaplanan Boole fonksiyonları için karşılık gelen sonuçları sunuyoruz. N değişkeninin tüm Boolean fonksiyonlarının O ( 2 n ) alanı ve periyod 1'in bir VLSI devresi ile hesaplanabileceğini kanıtlıyoruz ve n'nin Boolean fonksiyonları olduğunu kanıtlıyoruznO(2n/n)nO(2n)nher (dışbükey) VLSI yongasının alana sahip olması gereken değişkenler .Ω(2n)
İlginç bir şekilde, VLSI devre karmaşıklığı, önemli olan tek bir "derinlik" olduğu için derinliği "alakasız" olarak görme eğilimindedir: kritik yol. En pratik amaçlar için, keyfi olarak karmaşık bir devre n gecikmesi ile olarak ele alınabilir .O(1)n
Aslında, / N L o g T i m e kavramının doğrudan VLSI devre karmaşıklığına dönüştüğünden emin değilim . Shannons 2 n / n sonucu bile kolayca tercüme edilmez: Shannons sonuçları yalnızca ≤ 2 {{OR, OR, NOT} derecesinden oluşan bir boole temeli için geçerlidir . Bu tek temel değildir ve gittikçe daha fazla kapı tipine izin verdiğiniz için gereken "kapı" sayısı önemli ölçüde düşer. Aşağıda a r e a 2DLogTimeNLogTime2n/n≤2area2 2 girişli NAND geçidinin boyutuna normalize edilmiş ticari bir VLSI standart hücre kütüphanesinden:
2 3 4 <- Arity
ve 1.14 1.28 1.41
nand 1.00 1.14 1.28
veya 1.14 1.41 1.41
ne de 1.00 1.14 1.41
xor 1.62 2.44
xnor 1.62 2.44
buf 1.14
inv 0.80
aoi22 1.28
aoi222 1.62
aoi33 1.62
oai22 1.41
oai222 1.72
oai33 1.62
addf 2.64
Spesifik olarak, birinci fonksiyon kapılarının sayısının, artitenin kaç kez göründüğüne eşit olduğu, ikinci fonksiyonu besleyen, boyut olarak boyutlandırılmış birinci fonksiyondan oluşan / oluşan aoi
/ oai
kapıları not edin . Örneğin, "Bir NOR geçidini besleyen iki 2 giriş VE geçidi" temsil eder.And Or Invert
Or And Invert
aoi22
Benim açımdan: Ayrı ayrı ele alındığında, bir oai222
bağlantı için kullanılan herhangi bir alan hariç olmak üzere toplam ~ 4.56 alan için üç 2 girişli OR geçidi ve 3 girişli NAND geçidi kullanılarak bir fonksiyon oluşturulabilir. Yine de bu ilkel sadece 1.72 bir alanda gerçekleştirilebilir, yani aynı boole fonksiyonunun ayrı bir tezahürü 2.65 kat daha fazla alan tüketir.
nn≥2n
Daha karmaşık ilkellerin yayılma özellikleri, ayrı kapılarla elde edilebileceklerden önemli ölçüde daha iyidir.
PNP
P≠NPNPf:{0,1}n→{0,1}f2n/nNP.
f:{0,1}n→{0,1}NP{0,1}n2n/nnnNPNP2n/n
VLSI Uygulamalarının Karmaşıklığı ve Tamsayı Çarpımına Uygulanan Boole İşlevlerinin Grafik Gösterimleri Üzerine Bir OBDD modeli kullanarak devre karmaşıklığının tahmin edilmesinin, gerçek devre karmaşıklığını fazla tahmin ettiğini gösterir:
AT2=Ω(n2)Ω(cn)c<1AT2=O(n1+c)
n2n−1i−12n−i−11≤i≤nAT2=Ω(i2)Ω(1.09i)