Vektör Genel - Vector General

Vektör Genel (VG) bir seriydi grafik terminalleri ve onları üreten Kaliforniyalı şirketin adı. İlk olarak 1969'da tanıtıldılar ve 1980'lerin başına kadar bilgisayar laboratuvarlarında kullanıldılar.

Terminaller, okuyan ortak bir platforma dayanıyordu vektörler bir ev sahibi tarafından sağlanan mini bilgisayar ve terminalde temel matematiksel dönüşümleri gerçekleştirebilecek donanım dahil. Bu, bir nesneyi döndürme veya yakınlaştırma gibi işlemlerin performansını büyük ölçüde iyileştirdi. Dönüştürülen vektörler daha sonra terminalin yerleşikinde görüntülendi vektör monitör.

Diğer satıcıların benzer terminallerinin aksine, Vector General sistemleri çok az dahili hafıza. Bunun yerine, vektörleri ana bilgisayarın belleğinde depoladılar ve bunlara erişim sağladılar. Doğrudan bellek erişimi (DMA). Tam donanımlı VG3D terminalleri, düşük seviye dahil yaklaşık 31.000 $ PDP-11 bilgisayar,[1] gibi makinelere kıyasla IBM 2250 sadece terminal için 100.000 dolara mal oldu.[2][a]

Bilgisayar grafik alanında bilinen bir dizi ünlü kullanım arasında, bir VG3D terminaline bağlı bir PDP-11/45 "Ölüm Yıldızına saldırmak kolay olmayacak" animasyonlarını üretmek için kullanılan Yıldız Savaşları.[4][5]

Açıklama

Donanım

1960'ların sonlarında, özellikle 3B'de grafik ekran performansını iyileştirmeye yönelik yaygın bir girişim, bir liste tutan özel terminaller kullanmaktı. vektörler dahili bellekte ve daha sonra kullanılan donanım veya yazılımda ekran denetleyicisi döndürme ve ölçekleme gibi temel dönüşümler sağlamak için. Bu dönüşümler nispeten basit olduğundan, nispeten düşük maliyetle terminalde uygulanabilir ve böylece bu işlemleri gerçekleştirmek için ana bilgisayar CPU'suna zaman harcamaktan kaçınabilir. Bu işlemlerden en azından bazılarını gerçekleştiren sistemler arasında IDI, Adage ve Imlac PDS-1.[6]

VG serisi terminallerdeki önemli bir yenilik, Doğrudan bellek erişimi (DMA) bir ana bilgisayarın belleğine erişmesine izin vermek için. Bu, terminallerin kendilerine ait çok fazla depolamaya ihtiyaç duymadığı anlamına geliyordu ve onlara seri tabanlı gibi daha yavaş bir bağlantı üzerinden kopyalanmadan verilere hızlı bir şekilde erişme yeteneği sağladı. Tektronix 4010 veya benzer sistemler.[7] Bu yaklaşımın dezavantajı, yalnızca DMA sunan makinelerde ve yalnızca nispeten pahalı bir adaptörle kullanılabilmesidir.[b]

Temel kavram, ana bilgisayarın 2B veya 3B model için bir dizi nokta üretmek için hesaplamalar yapması ve bunu normalde 16 bitlik kelimelerde ekstra olarak 16 bitlik doldurulmuş durum bitleri. Terminal daha sonra bilgisayarı saniyede 30 ila 60 kez periyodik olarak keser,[8] ve verileri hızla okuyun ve görüntüleyin.[9] Her nokta yerel olarak tek tek okundu hafıza kayıtları geçici depolama için bunlara matematiksel fonksiyonlar uygulanırken ölçekleme, tercüme etme ve (isteğe bağlı olarak) döndürme ve son değerler hesaplandığında bu noktalar katot ışınlı tüp (CRT) görüntüleme için.[9]

Koordinat dönüşüm donanımının üç farklı modeli vardı. En temel sistem, 2B görüntüleri kaydırmak ve yakınlaştırmak için gereken donanımı içeriyordu; bu durumda, onu içeren terminal, Vektör Genel 2B olarak bilinirdi. Başka bir sürüm, 2D resmi 2DR (Döndürme için) olarak bilinen rastgele bir nokta etrafında döndürme yeteneği ekledi. En pahalı seçenek, 3B vektörlerde döndürme, kaydırma ve yakınlaştırma sağlayan 3B idi. Bu modellerden herhangi birine eklenebilecek ve isme yansıtılmayan başka bir seçenek, bir karakter üreteci.[10]

Kare CRT'ler, geleneksel bir yöntem kullanılarak görüntülenmenin aksine, doğrudan dönüşüm donanımının çıktısından yönlendirildi. raster tarama yöntem.[9] Şirket bu tür bir işlemi "rastgele tarama" olarak adlandırdı.[8] evrensel olarak bir vektör monitör modern referanslarda. Çapraz olarak 17 inç (430 mm) ve 21 inç (530 mm) boyutlarında iki temel CRT modeli mevcuttu. 21 inçlik model, çekme oranlarını iyileştiren özel bir "yüksek hızlı" versiyonda da mevcuttu. CRT'ler, yüksek hızlı tarama performansı sağlamak için televizyonlardaki gibi manyetik değil elektromanyetik sapma kullandı.[11]

Sisteme birkaç farklı giriş cihazı bağlanabilir. En yaygın olanı 70 tuşlu tuş takımı diğerleri dahili kayıt kontrollü ışıklara sahip bir anlık butonlar bankası içerirken, grafik tableti, bir hafif kalem, bir arama kutusu ve bir oyun kolu.[12] Sistem bir bütün olarak oldukça büyüktü, yaklaşık olarak küçük bir buzdolabı.[13]

Çizim kavramları

Vektörler, mantıksal olarak uzayda iki uç nokta ile temsil edildi. Her nokta, iki veya üç 12 bitlik değerle tanımlandı, dolayısıyla X, Y ve (isteğe bağlı olarak) Z'de 0 ila 4,095 arasında bir boşluğu temsil ediyordu.[11] Terminal, manipüle edilirken değerleri tutmak için üç 12 bitlik yazmaçlara sahipti.[14]

Sistem, vektörlerin bellekte birkaç şekilde temsil edilmesine izin verdi. En basit mod olan "mutlak", vektörün her bir ucu için iki nokta gerektiriyordu.[15] "Göreli" vektörler, son değerler kümesinden ofsetler olarak ifade edildi, bu nedenle, bir vektörü tanımlamak için yalnızca bir noktaya ihtiyaç vardı, ilk nokta, son noktanın son noktasıydı. Bu, veriler bir çizim gibi sürekli olsaydı, tam bir çizimi tanımlamak için gereken nokta sayısını yarıya indirebilirdi. çizgi grafik. "Artımlı" vektörler, her nokta için yalnızca 6 bit kullanarak belleği daha da azaltarak verilerin paketlenmiş ana bilgisayarda daha az belleğe. Sistem, değerleri son değerin yüksek veya düşük sıralı 6 bitine ekleyerek büyük veya ince harekete izin verecek şekilde ayarlanabilir. Son olarak, "otomatik artırma" vektörleri, yalnızca bir değerin saklanmasını gerektirerek bellek gereksinimlerini daha da azalttı; diğerleri, her yeni nokta okundukça önceden belirlenmiş bir miktarda artırıldı. Bunlar, iki eksenden biri ile göreli vektörlere benzerdi. her zaman aynı göreli ofsete sahip.[16] Sistem ayrıca, bir dizi nokta göndermek zorunda kalmanın aksine, dairesel yaylar oluşturmak için ayrı bir devreye sahipti.[17]

Ekran 32 farklı yoğunluk seviyesi üretebiliyordu. Bu, doğrudan terminalde bir kayıt ayarlayarak programlanabilir, ancak daha yaygın olarak 3 boyutlu programlanmış modda kullanılırdı. Bu modda, vektör çizilirken yoğunluk otomatik olarak değiştirilirken, Z boyutlarında daha derin olan öğeler daha az yoğun çizilirdi. Bu, nesnenin ön tarafının ekranda daha parlak görünmesini sağlayan bir derinlik işareti oluşturdu. Bu değişikliğin hızı, ISR kaydı aracılığıyla belirlendi.[18]

Ayrı bir 12 bitlik PS yazmacı, ölçek çarpanını tuttu. Bu değer kullanılmadığında, koordinat sistemi ekranın yaklaşık iki katı büyüklüğünde fiziksel bir alanı temsil ediyordu ve görüntüyü kaydırma sağlamak için çevirmesine izin veriyordu. Bu sicile bir değer yerleştirildiğinde, vektör kayıtlarındaki ve karakter çizim sistemindeki koordinatlar bu değerle çarpılarak bir yakınlaştırma efekti oluşturuldu.[19]

İsteğe bağlı karakter üreteci, beş donanım tanımlı şekil seti, bir daire, ortada dikey çizgi olan bir kare, ortada yatay çizgi olan bir kare ve dikey olarak yönlendirilmiş kum saati şekilleri ve yatay olarak yönlendirilmiş benzer bir şekil kullanarak karakterler çizdi. . Bu şekillerin her biri donanım tarafından çizilirken kirişi açıp kapatarak, sistem gerekli herhangi bir karakteri çizebiliyordu. Örneğin, C harfi O şekli kullanılarak ve sağdayken kiriş kapatılarak çizildi. D harfi, O şekli kullanılarak ve sol taraftayken kapatılarak çizilir ve ardından yalnızca orta dikey çubuk çizilirken kiriş açıkken dikey çizgi kutusu çizilir. Tam bir karakter oluşturmak için bir ile üç arasında bu tür "çekilişler" gereklidir.[20] Sistem, normalin yanı sıra bir dizi Yunan harfi ve matematiksel sembol içeriyordu. ASCII karakterler.[21]

Programlama

Terminal, ekranı yenilemek için DMA kullanarak ana bilgisayarın ana belleğini düzenli olarak okur. Daha fazla iletişim tek bir çift yönlü G / Ç bağlantı noktası aracılığıyla gerçekleştirildi[9] PIR kaydındaki istek ayrıntılarıyla bir kesme isteği oluşturduktan sonra.[22] Ayarlar ve talimatlar, I / O portuna ve terminalin 85 kayıtlarından birine veri gönderilerek işlendi.[14]

Örneğin, ana bilgisayar PS kaydının değerini ayarlayarak görüntünün yakınlaştırılmasına neden olabilir. Bunu, 16 bitlik mesajı ayarlanacak kayıt numarası içeren bir interrupt'ı çağırarak yapar, bu durumda 17. Terminal, G / Ç kanalı üzerinden 16 bitlik bir mesaj göndererek yanıt verecektir. Yazılar benzer bir işlem kullanılarak işlendi, ancak uçbirim kesmeye bunun yerine bir değer okuyarak yanıt verdi.[23]

Vektör listesinin başlangıcı için temel adres ve içindeki uzaklık, kayıtlar 14 ve 15'teydi.[14] Bu, ekranın, bilgisayarın belleğinde ayrı nokta kümeleri yazarak ve daha sonra 14 kaydının değerini farklı bir temel adresi gösterecek şekilde değiştirerek görüntüyü bir defada değiştirerek bir tür "sayfa çevirme" gerçekleştirmesine izin verdi. Bu, ana bilgisayardaki kullanılabilir bellek miktarıyla sınırlıydı.[24]

Görüntüleme talimatları, sadece vektörlerin değil, aynı zamanda çeşitli komutların oluşturulmasına izin veren çeşitli formatlara sahipti. Örneğin, verili bir kayda veri yüklemek için, ilki kayıt ayrıntılarıyla ve diğeri değerle birlikte 16 bitlik iki kelimeden oluşan talimatlar vardı. Diğer talimatlar, kayıt değerleri üzerinde mantıksal VEYA veya VE gerçekleştirdi. Görüntüleme talimatları bu işlemlerle karıştırılabilir, böylece sistem, örneğin, bir dizi öğeyi görüntülemeye başlayabilir, bir lambanın yanmasına neden olabilir, görüntüyü döndürebilir ve ardından daha fazla vektör çizebilir.[25]

Önemli kullanımlar

VG3D, tarihsel olarak Yıldız Savaşları, ancak aynı zamanda gelişimindeki erken rolüyle de bilinir. Bilgisayar destekli tasarım.

Yıldız Savaşlarında

Animasyonun bir kısmı, filme yakalanan ve ardından filme alma sırasında sahneye geri yansıtılan Vektör Grafikleri çıktısını gösterir.

Larry Küba için iki bilgisayar animasyonu segmenti üretti Yıldız Savaşları VG3D terminalli bir PDP-11/45 üzerinde. Görüntüleri kare kare filme almak için, buton panelindeki ışıklardan biri ile kameradaki deklanşör tetiği arasına bir tel bağlandı. Bu, ana bilgisayar tarafından tetiklendi ve kameranın deklanşörü bir kez bırakmasına ve filmi tek bir kare ilerletmesine neden oldu.[26][27]

Dışını gösteren ilk segment Ölüm Yıldızı, tamamen VG3D'nin dahili ekran yeteneklerine dayanmaktadır. Model, PDP-11'in belleğinde tutulan istasyonun ana hatlarını temsil eden basit bir 3B nokta serisinden oluşuyordu ve ilgili GRASS programlama dili eğri oluşturma kodu. Görüntüyü filmde görüldüğü gibi hareket ettirmek ve döndürmek için, ilgili GRASS programı yeni döndürme ve yakınlaştırma rakamlarını terminalin kayıtlarına yükler ve ardından kamerayı tetikler.[26]

İkinci bölüm, son saldırıda önce yukarıdan ve sonra pilotun bakış açısıyla siperden aşağı uçan görünümü gösterir. Bunun yaratılması çok daha zordu çünkü uç birim, bu sırada gerekli olan perspektif hesaplamasını desteklemiyordu. Çekimler sırasında kullanılan hendeğin fiziksel modeli, birçok kez çoğaltılan ve daha sonra tek bir 40 fit (12 m) uzunluğunda model oluşturmak için farklı şekillerde bir araya getirilen altı özellikten oluşuyordu. Küba, bu altı özelliğin her birini fotoğraflardan sayısallaştırdı ve ardından bunları farklı konfigürasyonlarda 50'den fazla U-şekilli bölümde birleştirdi. Her çerçeve için, bu bölümlerden beşi derinlemesine istiflenmiş ve ardından perspektif hesaplamaları uygulanmıştır. Filmde animasyon ilerledikçe yeni bölümlerin eklenmesi görülebilir. Bu daha sonra terminale statik bir görüntü olarak gönderildi ve kamera tetiklendi. Her karenin işlenmesi yaklaşık iki dakika sürdü.[28]

Orduda

Mike Muuss (oturmuş) PDP-11 / 70 ve Vector General 3D burada görüldüğü gibi döndürülebilir bir görüntü oluşturmak için XM-1 tankı. Bu, önümüzdeki iki haftayı demolar talep ederek geçiren ordu mensupları arasında büyük bir heyecan yarattı.

Mike Muuss anlatıyor ki Amerikan ordusu 's Balistik Araştırma Laboratuvarı bir satın almıştı Siber 173 ve onu sürmek için bir VG3D terminali ve bir PDP-11/34 içeren üç iş istasyonu. Bunların birbirine bağlanması amaçlanıyordu, ancak kimse bunu çalıştırmayı başaramadı ve sonunda VG iş istasyonları kullanılmadan kaldı. Tüm bu donanımın boşa gittiğini görmekten rahatsız oldu, bu yüzden 1979'da iş istasyonlarından birini bağladı ve dönen bir 3B küp üreten bir program yarattı.[29]

Başka bir programcıya bir dizi 3B nokta verilmişti. XM1 tankı tasarımını yapıyordu ve çıktı almak için kod yazıyordu. Calcomp plotter. Muuss'a onu VG terminallerinde görüntüleyip görüntüleyemeyeceklerini sordu, böylece onu döndürebileceklerdi. Önce bunu bir statik görüntü olarak çıktı Tektronix 4014, ancak sonraki gece ekranı, dahili vektör donanımı kullanılarak kolayca döndürülebileceği VG3D'ye getirmeyi başardı.[30]

Orduda daha önce hiç kimse böyle bir şey görmemişti. Ertesi gün komutan generali ARRADCOM canlı görmek için uçtu. Önümüzdeki iki hafta boyunca Muuss, memurların geçit törenine sürekli olarak sistemin demolarını veriyordu.[30] Demo o kadar iyi biliniyordu ki Muuss, BRL-CAD.[31]

Notlar

  1. ^ IBM 2250 Model III gibi sonraki modeller, dört terminale kadar kontrol edebiliyordu, bu nedenle terminal başına maliyet 65.000 $ artı ana makineye yakındı.[3]
  2. ^ Kılavuz "herhangi" bir bilgisayarın uygun adaptörle kullanılabileceğini belirtmesine rağmen, tüm 3. taraf referansları yalnızca kullanılan PDP-11'den bahsetmektedir.

Referanslar

Alıntılar

  1. ^ Phillips 1978, s. C.24.
  2. ^ Weisberg 2008, s. 13-8–13-9.
  3. ^ Weisberg 2008, s. 13-9.
  4. ^ Tatlı 1981.
  5. ^ Borrelli 2017.
  6. ^ Peddie 2013, s. 316.
  7. ^ Referans 1972, s. 1-1, 1–3.
  8. ^ a b Referans 1972, s. 1-4.
  9. ^ a b c d Referans 1972, s. 1-3.
  10. ^ Referans 1972, s. 1-1.
  11. ^ a b Referans 1972, s. 1-7.
  12. ^ Referans 1972, s. 1-2.
  13. ^ Borrelli 2017, s. Görsellere bakın ..
  14. ^ a b c Referans 1972, s. 3-3.
  15. ^ Referans 1972, s. 1-14.
  16. ^ Referans 1972, s. 1-16.
  17. ^ Referans 1972, s. 2-12.
  18. ^ Referans 1972, s. 1-23.
  19. ^ Referans 1972, s. 1-9–1-14.
  20. ^ Referans 1972, s. 1-20.
  21. ^ Referans 1972, s. 2-13.
  22. ^ Referans 1972, s. 3-4.
  23. ^ Referans 1972, s. 3-4–3-6.
  24. ^ Referans 1972, s. Ek B.
  25. ^ Referans 1972, s. 3-14–3-35.
  26. ^ a b Tatlı 1981, s. 29.
  27. ^ DeFanti ve Sandin 1981, s. 50.
  28. ^ Tatlı 1981, s. 30.
  29. ^ Muuss 2000, s. 91.
  30. ^ a b Muuss 2000, s. 92.
  31. ^ "Genel Bakış". BRL-CAD.

Kaynakça

Dış bağlantılar