Sayfa 1, toplam 2 12 SonSon
Results 1 to 10 of 15

işlemciler nasıl çalışır

Bu sayfada Donanım kategorisindeki İşlemciler forumunda işlemciler nasıl çalışır başlıklı konu tartışılıyor; CPU'nun (Central Processing Unit, Merkezi İşlem Birimi), bilgisayarlarımızın temel parçası olduğunu rahatlıkla söyleyebiliriz. Bir sistemdeki herhangibir parça ne işe yararsa ...

  1. #1
    Cool Member martech Avatar
    Katılım tarihi
    05.06.2006
    Nereden
    Yalova
    Mesaj
    408
    Like
    0 defa

    işlemciler nasıl çalışır

    CPU'nun (Central Processing Unit, Merkezi İşlem Birimi), bilgisayarlarımızın temel parçası olduğunu rahatlıkla söyleyebiliriz. Bir sistemdeki herhangibir parça ne işe yararsa yarasın mutlaka işlemciye (yazının daha başı ama kalan bölümde CPU yerine hepimizin kullandığı işlemci kelimesini kullanacağım) bağımlı olarak çalışır. Klavyedeki tuşlara her basışınız, yaptığınız her fare hareketi bile bir şekilde işlemciye uğrar. Kullandığınız işlemci, herşeyden önce sisteminizin performansını ve kullanabileceğiniz işletim sistemlerini belirler. Hatta çoğumuz bilgisayar alırken ilk önce işlemciyi belirleriz. Şimdi AMD - Intel savaşını (çok istediğinizi biliyorum ama bu yazının amacına pek uygun değil) bir yana bırakıp işlemcilerin nasıl çalıştığına bir göz atalım.




    Mantık Kapıları ve Boolean Mantığı
    Hangi işlemciyi kullanırsanız kullanın çalışma prensibi aynıdır: Bir işlemci elektriksel sinyalleri 0 ve 1 (ikili sistemle çalışan bilgisayarlarımız için anlamlı olan tek değerler) şeklinde alır ve verilen komuta göre bunları değiştirerek sonucu yine 0'lardan ve 1'lerden oluşan çıktılar halinde verir. Sinyal yollandığı zaman ilgili hatta bulunan voltaj o sinyalin değerini verir. Örneğin 3.3 voltla çalışan bir sistemde 3.3 voltluk bir sinyal 1, 0 voltluk bir sinyal de 0 değerini üretir.
    İşlemciler aldıkları sinyallere göre karar verip çıktı oluştururlar. Karar verme işlemi her biri en az bir transistörden oluşan mantık kapılarında yapılır. Transistörler, girişlerine uygulanan akım kombinasyolarına göre devreyi açıp kapayabilen ve bu sayede de elektronik bir anahtar görevi gören yarıiletken devre elemanlarıdır. Modern işlemcilerde bu transistörlerden milyonlarca tanesi aynı anda çalışarak çok karmaşık mantık hesaplarını yapabilirler. Mantık kapıları karar verirken (yani akımın geçip geçmeyeceğini belirlerken) Boolean Mantığı'nı kullanırlar. Temel Boolean operatörleri AND (ve), OR (veya) ve NOT'tır (değil). Bu temel operatörlerle birlikte bunların değişik kombinasyonları kullanılır, NAND (not AND) gibi.
    Bir AND kapısının 1 değerini verebilmesi (yani akımı iletebilmesi için) iki girişindeki değerin de 1 olması (yani iki girişinde de akım olması) gerekir. Aksi takdirde 0 değerini verecek; yani akımı iletmeyecektir. OR kapısında ise akımın iletilmesi için girişlerin ikisinde de akım olmalı veya ikisinde de akım olmamalıdır. NOT kapısı ise girşindeki değerin terisini çıkışına verir.
    Bunların yanında NOR (not OR), XOR (eXclusive OR) ve XNOR (eXclusive not OR) gibi değişik kapıların değişik kombinasyonlarından oluşan ve çok daha farklı aritmetik ve mantık işlemleri için kullanılan kapılar vardır.
    Bu mantık kapıları dijital anahtarlarla beraber çalışırlar. Oda boyutundaki bilgisayarların zamanında bunlar bildiğimiz fiziksel anahtarlardı fakat günümüzde MOSFET (Metal-Oxide Semiconductor Field-Effect Transistor) denen bir çeşit transistör kullanılır. Bu transistörün basit ama hayati öneme sahip bir görevi vardır: Voltaj uygulandığında devreyi açarak veya kapatarak tepki verir. Genel olarak kullanılan MOSFET türü, üst sınırda veya ona yakın voltaja sebep olan bir akım uygulandığında devreyi açar, uygulanan voltaj 0'a yaklaşınca da devreyi kapatır. Bir programın verdiği komutlara göre milyonlarca MOSFET aynı anda çalışarak gerekli sonucu bulmak için akımı gerekli mantık kapılarına yönlendirir. Her mantık kapısı bir veya daha fazla transistör içerir ve her transistör akımı öyle kontrol eder ki, sonuçta devre kapalıyken açılır, açıkken kapanır veya mevcut durumunu korur.

    AND ve OR kapılarının şemalarına bakarak nasıl çalıştıkları hakkında fikir sahibi olabiliriz. Bu iki kapıda iki sinyal alıp onlardan bir sinyal üretir. AND kapısından akım geçmesi için girişlerine uygulanan sinyallerinin ikisinin düşük de voltajlı (0) veya ikisinin de yüksek voltajlı (1) olması gerekir. OR kapısında ise giriş sinyallerinden birinin değerinin 1 olması yeterlidir akımın geçmesi için.
    Her girişteki elektrik akışını o girişin transistörü belirler. Bu transistörler devrelerden bağımsız ayrı elemanlar değillerdir. Çok miktarda transistör yarı-iletken bir maddenin (çoğu zaman silikonun) üzerine yerleştirilip kablolar ve dış bağlantılar olmadan birbirine bağlanır. Bu yapılara entegre devre denir ve ancak bu entegre devreler sayesinde karmaşık mikroişlemci tasarımları yapılabilir.
    Güncel işlemciler mikroskobik boyuttaki transistörlerin dirençler, kondansatörler ve diyotlarla bir araya getirilmesinden oluşan milyonlarca karmaşık mantık kapısından oluşur. Mantık kapıları entegre devreleri oluştururken entegre devreler de elektronik sistemleri oluşturur.

    CISC ve RISC Kavramları
    Yıllar geçtikçe iki işlemci ailesi piyasaya hakim olmaya başladı: Intel Pentium ve Motorola PowerPC. Bu iki işlemci aynı zamanda uzun yıllar boyunca kullanılacak ve günümüze kadar değişmeyecek iki farklı mimariye sahiplerdi.
    CISC (Complex Instruction Set Computer), geleneksel bilgisayar mimarisidir. İşlemci kendi üzerinde bulunan microcode adlı minyatür bir yazılımı kullanarak komut setlerini çalıştırır. Bu sayede komut setleri değişik uzunluklarda olabilir ve bütün adresleme modellerini kullanabilirler. Bunun dezavantajı çalışmak için daha karmaşık bir devre tasarımına ihtiyaç duyulmasıdır.
    İşlemci üreticileri daha komlpleks (ve güçlü) işlemciler üretmek için sürekli daha büyük komut setleri kullandılar. 1974 yılında IBM'den John Cocke bir çipin daha az komutla çalışabilmesi gerektiğini düşündü ve ortaya sadece sınırlı sayıda komut setleri kullanabilen RISC (Reduced Instruction Set Computer) mimarisi çıktı. Bu mimaride komutların uzunluğu sabittir ve bu yüzden de direk olmayan adresleme modu kullanılamaz. Sadece tek bir saat döngüsünde veya daha az sürede çalıştırabilecek komutlar işleme konabilir. RISC işlemcilerin en büyük avantajları komutları çok çabuk işleyebilmeleridir çünkü bu mimaride komutlar çok basittir. Bu sayede RISC işlemcileri tasarlayıp üretmek daha ucuzdur, çünkü bu basit komutlar için daha az transistör ve daha basit devreler gerekir.
    En Basit Haliyle Bir İşlemci



    • Execution Unit (Core=Çekirdek): Bu ünite komutları çalıştırır ve pipeline (işhattı) denen yollarla beslenip tamsayıları kullanarak okuma, değiştirme ve komut çalıştırma işlemlerini yapar. Artimetik hesaplamalar için ALU (Arithmetic and Logic Unit) denen aritmetik ve mantık üniteleri kullanılır, ALU için işlemcilerin yapıtaşıdır diyebiliriz.
    • Branch Predictor: Bu ünite bir program çalışırken başka bir satıra atlayacağı zaman hangi satırların işleme konacağını tahmin etmeye çalışarak Prefetch (komutların bellekten ne zaman çağrılacağına karar verir ve komutları Decode ünitesine doğru sırayla gönderir) ve Decode (bu ünite de kompleks makina dili komutlarını ALU'nun ve registerların kullanabileceği basit komutlara dönüştürür) ünitelerine hız kazandırmaya çalışır.
    • Floating Point Unit: Bu ünite tamsayı olmayan floating point (kayar nokta) hesaplamalarından sorumludur
    • L1 Cache: İşlemci için önbellek. Önemli kodlar ve veriler bellekten buraya kopyalanır ve işlemci bunlara daha hızlı ulaşabilir. Kodlar için olan Code ve veriler için olan Data cache olmak üzere ikiye ayrılır. Güncel işlemcilerde L2 (Level 2, 2. seviye) önbellek de bulunur. Önceleri L2 önbellek anakartta bulunurdu. Daha sonra slot işlemciler ortaya çıktı ve işlemci çekirdeğinin de üzerinde bulunduğu kartuj şeklindeki paketlerde önbellek çekirdeğin dışında ama işlemciyle aynı yapıda kullanılmaya başlandı. Bu kısa geçiş döneminden sonraysa önbellek işlemci çekirdeklerine entegre edildi.
    • BUS Interface: İşlemciye veri � kod karışımını geitirir, bunları ayırarak işlemcinin ünitelerinin kullanmasını sağlar ve sonuçları tekrar birleştirerek dışarı yollar. Bu arayüzün genişliği işlemcinin adresleyebileceği hafızayı belirler. Örneğin 32 bitlik hafıza genişliğine sahip bir işlemci 232 byte (4 GB) hafızayı adresleyebilir ve bu hafızadan aynı anda 32 bit üzerinde işlem yapabilir. Günümüzde masaüstü pazarına 32 bitlik işlemciler hakimken sunucu uygulamarı ve bilimsel çalışmalar için de 64 bitlik işlemciler yaygın olarak kullanılır.
    Bir işlemcideki bütün elemalar saat vuruşlarıyla çalışır. Saat hızı bir işlemcinin saniyede ne kadar çevrim yapabileceğini belirler. 200 MHz saat hızı 200 MHz olan bir işlemci kendi içinde saniyede 200 çevrim yapabilir. Her çevrimde işlemcinin ne kadar işlem yapabileceği işlemcinin yapısına göre değişir. Bu saat vuruşları anakart üzerindeki Clock Generator denen yongayla üretilir. Bu yonganın içinde çok hassas kristaller vardır. Bu kristallerin titreşimleri saat vuruşlarını oluşturur.
    Program Counter (PC) denen birim içinde çalıştırılacak bir sonraki komutun hafızadaki adresini bulundurur. Bu komutun çalıştırılma zamanı geldiğinde kontrol ünitesi komutu işlenmek üzere hafızadan alır ve işlemci üzerindeki Instruction Register denen bölüme işlenmek üzere aktarır. Yazmaç da diyebileceğimiz registerlar hafızadan verilerin veya kodların yazılabildiği geçici saklama alanlarıdır. İçindeki adresi gerekli yazmaca aktaran PC daha sonra bir arttırılır ve bir sonraki komutun zamanı geldiğinde Instruction Register'a aktarılmak üzere hazırda beklemesi sağlanır.
    Komut işlendikten sonra hesaplamayı yapan birim Status Register (SC) denen yazmacın değerini değiştirir, bu yazmaçta bir önceki işlemin sonucu saklıdır. Kontrol ünitesi bu yazmaçtaki değeri kullanarak sonuca göre gerekli komutları çalıştırabilir.
    Bu okuduklarınızın tamamı komutun uzunluğuna ve işlemcinin mimarisine göre bir veya daha fazla saat vuruşunda yapılabilir.
    Makina Dili
    Bir işlemcinin yaptığı işleri temelde üçe ayırabiliriz:
    - Bir işlemci ALU'sunu veya FPU'sunu kullanarak tamsayılarla ve ondalık sayılarla matematiksel işlemleri yapabilir
    - Verileri bir bellek alanından diğerine hareket ettirebilir.
    - Verdiği karara göre bir programın farklı bir satırına atlayıp yeni bir komut çalıştırabilir.
    Bir programcının rahatlıkla anlayabileceği gibi bu üç temel işlem bir programı çalıştırmak için yeterlidir. işlemciler komutları bizim yazdıklarımızdan çok daha farklı bir şekilde algılarlar. Bir komut bit (binary digit, 0 veya 1 değerini alabilen ikili sistemdeki basamaklar) dizilerinden oluşur fakat bu bit dizilerini akılda tutmak çok zordur. Bu yüzden komutlar bit dizileri yerine kısa kelimelerle ifade edilir ve bu kelimelerden oluşan dile Assembly Dili denir. Bir assembler bu kelimeleri bit dizilerine çevirerek işlemcinin anlayabileceği şekilde hafızaya yerleştirir. Komutlara örnek verelim:
    • LOADA mem � bellek adresini A yazmacına yükle
    • LOADB mem - bellek adresini B yazmacına yükle
    • CONB con � B yazmacına sabit bir değer ata
    • SAVEB mem � B yazmacını bellek adresine kaydet
    • SAVEC mem - C yazmacını bellek adresine kaydet
    • ADD � A ile B'yi toplayıp sonucu C'ye kaydet
    • SUB � A'dan B'yi çıkartıp sonucu C'ye kaydet
    • MUL � A ile B'yi çarpıp sonucu C'ye kaydet
    • DIV � A'yı B'ye bölüp sonucu C'ye kaydet
    • COM � A ile B'yi karşılaşıtırıp sonucu teste kaydet
    • JUMP addr � adrese atla
    • JEQ addr � eşitse adrese atla
    • JNEQ addr � eşit değilse adrese atla
    • JG addr � büyükse adrese atla
    • JGE addr � büyük veya eşitse adrese atla
    • JL addr � küçükse adrese atla
    • JLE addr � küçük veya eşitse adrese atla
    • STOP � işlemi durdur
    Şimdi aşağıdaki C kodlarının assembly diline derlendikten sonra neye benzediklerine bakalım.
    a=1;
    f=1;
    while (a <= 5)
    {
    f = f * a;
    a = a + 1;
    }
    C bilmeyenler için kısaca anlatmakta fayda var: a değişkeni 5 olana kadar her seferinde bir arttırılarak f değişkeninin değeriyle çarpılıyor ve f değişkeninin değeri 5 faktöryel oluyor. Küme parantezleri içindeki while döngüsü bittikten sonra parantez içindeki koşul tekrar kontrol ediliyor ve doğru olduğu sürece döngü tekrar tekrar işleme konuyor.
    Bir C derleyicisi bu kodları assembly diline çevirir. RAM'in 128, assembly programını barındıran ROM'un da 0 numaralı hafıza adresinden başladığını varsayarsak işemcimiz için yukarıdaki C kodları aşağıdaki şekilde görünür:
    // adres 128'deki a'yı al
    // adres 129'daki f'i al
    0 CONB 1 // a=1;
    1 SAVEB 128
    2 CONB 1 // f=1;
    3 SAVEB 129
    4 LOADA 128 // a>5 ise 17'ye atla
    5 CONB 5
    6 COM
    7 JG 17
    8 LOADA 129 // f=f*a;
    9 LOADB 128
    10 MUL
    11 SAVEC 129
    12 LOADA 128 // a=a+1;
    13 CONB 1
    14 ADD
    15 SAVEC 128
    16 JUMP 4 // 4. satırdaki if koşuluna geri dön
    17 STOP
    Şimdi bu komutların hafızada nasıl göründüğüne bakalım. Bütün komutlar ikili sistemdeki sayılarla gösterilmeli. Bunun için her komuta opcode denen bir numara verilir:
    • LOADA - 1
    • LOADB - 2
    • CONB - 3
    • SAVEB - 4
    • SAVEC mem - 5
    • ADD - 6
    • SUB - 7
    • MUL - 8
    • DIV - 9
    • COM - 10
    • JUMP addr - 11
    • JEQ addr - 12
    • JNEQ addr - 13
    • JG addr - 14
    • JGE addr - 15
    • JL addr - 16
    • JLE addr - 17
    • STOP - 18
    Programımız ROM'da şöyle gözükür:
    // adres 128'deki a'yı al
    // adres 129'daki f'i al
    Addr opcode/value
    0 3 // CONB 1
    1 1
    2 4 // SAVEB 128
    3 128
    4 3 // CONB 1
    5 1
    6 4 // SAVEB 129
    7 129
    8 1 // LOADA 128
    9 128
    10 3 // CONB 5
    11 5
    12 10 // COM
    13 14 // JG 17
    14 31
    15 1 // LOADA 129
    16 129
    17 2 // LOADB 128
    18 128
    19 8 // MUL
    20 5 // SAVEC 129
    21 129
    22 1 // LOADA 128
    23 128
    24 3 // CONB 1
    25 1
    26 6 // ADD
    27 5 // SAVEC 128
    28 128
    29 11 // JUMP 4
    30 8
    31 18 // STOP
    Gördüğünüz gibi C'de 7 satır tutan kod assemblyde 17 satıra çıktı ve ROM'da 31 byte kapladı. Instruction Decoder (komut çözücü, bir önceki başlıkta bahsettiğimiz Decode ünitesi), opcedeları alarak işlemcinin içindeki değişik bileşenleri harekte geçirecek elektriksel sinyallere dönüştürür.

  2. #2
    Cool Member martech Avatar
    Katılım tarihi
    05.06.2006
    Nereden
    Yalova
    Mesaj
    408
    Like
    0 defa
    Üretim
    İlk işlemciler valflar, ayrık transistörler ve çok kısıtlı bir şekilde entegre edilebilmiş devrelerden oluşuyordu fakat günümüz işlemcileri tek bir silikon yonga üzerine sığabiliyorlar. Çip üretiminde temel madde bir yarıiletken olan silikondur. Üretim sırasında çeşitli işlemler yapılır. Önce silicon ignot denen ilindirik bir yapı üretilir. Bunun hammaddesi saflaştırılmış silikondan elde edilen bir çeşit kristaldir. Daha sonra bu silindirik yapı ince ince dilimlenerek wafer denen dairesel tabakalar oluşturulur. Wafer tabakaları yüzeyleri ayna gibi olana kadar cilalanır. Çipler bu wafer tabakaları üzerinde oluşturulur. Aşağıdaki resimde bir wafer tabakasıyla üzerindeki çipleri görebilirsiniz


    Çipler üst üste katmanlardan oluşur ve bu katmanlar için değişik hammaddeler vardır. Örneğin yalıtkan yüzey olarak silikon dioksit kullanılırken iletken yollar ploisilikonla oluşturulabilir. Silikona iyon bombardımanı yapılarak silikondan transistörler üretilir ve bu işleme doping denir.
    Bir katman photoresist (ışığa duyarlı) bir maddeyle kaplanır ve bu katmana istenen şeklin görüntüsü projeksiyonla yansıtılır. Bu işlemden sonra ışığa maruz kalan yüzey maskelenir ve kalan madde bir çözücü yardımıyla temizlenir. Maskelenen bölümde transistörler ve yollar oluşturulduktan sonra etching denen kimyasal bir işlemle istenmeyen maddeler katmandan uzaklaştırılarak katmana son şekli verilir. Bu işlem bütün çip hazır olana kadar her katman için ayrı ayrı yapılır. Katmanlardaki yapılar bir metrenin milyonda birinden daha küçük olduğu için bir toz tanesi bile (toz tanelerinin boyutları 100 mikronluk ölçülere kadar çıkabilir ki bu da işlemcideki yapıların 300 katından daha büyüktür) çok büyük problemler çıkarabilir. Bunun için koruyucu giysilerle girilebilen tozsuz odalarda üretim yapılır.
    Başlarda yarı-iletken üretiminde hata payı %50 civarındaydı ve çoğu zaman üretilen çiplerin ancak yarıya yakını sağlam çıkıyordu. Bu oran %100 olamasa da geliştirilen üretim teknikleriyle günümüzde oldukça yükselmiştir. Wafera eklenen her katmandan sonra testler yapılır ve hatalar tesbit edilir. Die denen wafer üzerindeki �çıplak� çipler birbirinden ayrılır ve yapılan testlerden sonra sağlam olanlar kullanıma uygun şekilde paketlenir. Günümüzde işlemciler PGA(Pin Grid Arrays) formunda paketlenir. Bu paketlerde seramik bir dörtgenin altına dizilmiş pin denen bağlantı noktaları vardır. İşlemci çekirdekleri paketlendikten sonra aşağıdaki gibi görünür.



    Intel'in entegre çip tasarımıyla üretilen ilk işlemcisi olan 4004 10 mikronluk bir üretim tekniğiyle üretiliyordu. İşlemci içindeki en küçük yapı bir metrenin on milyonda biri kadardı. Günümüzdeyse 0,13 mikronluk üretim teknikleri kullanılıyor ve çok yakında 0,1 mikronun da altına inilecek. Bu arada yukarıdaki fotoğraflar için haber editörümüz Ahmet'e teşekkür ediyorum, bazı fotoğrafları aradığım zaman bir türlü bulamamak gibi ilginç bir yeteneğe sahip olduğumdan bu bölüm az daha fotoğrafsız kalıyordu
    Moore Yasası
    1965 yılında Intel'in kurucularından Gordon Moore'un ortaya attığı Moore Yasası'na göre işlemcilerdeki transistör sayısı 18 ayda bir ikiye katlanır. Moore, bu yasanın sonraki on yıl boyunca geçerliliğini koruyacağını tahmin etmişti ama Intel bu yasayı günümüze kadar çiğnemeden devam ettirmeyi aşağıdaki grafikte de görebileceğiniz gibi başardı.


    Fizik yasaları, mühendislerin saat hızlarını sonsuza kadar arttırabilmelerini engeller. Silikonun sınırlarına neredeyse ulaşılmak üzereyken saat hızlarının hala arttığını görüyoruz. Saat hızı her zaman performans anlamına gelmiyor, bu yüzden mühendisler işlemcilerin her saat vuruşunda daha fazla komutu işleyebilmeleri için de uğraşıyorlar aynı zamanda. 4 bitlik bir işlemci bile iki tane 32 bitlik sayıyı toplayabilir ama bunun için pek çok komutu işlemesi gerekir. 32 bitlik bir işlemci bu toplamayı tek bir komutla yapabilir.
    İşlemcilerin saat vuruşlarında işlem yaptıklarını söylemiştik. Normal yöntemlerle bir komutu yüklemek, çözmek, kullanacağı veriyi almak, çalıştırmak ve son olarak da sonucu yazmak için beş saat vuruşu gerekir. Bu sorunu çözmek için günümüz işlemcileri pipelining denen teknolojiyi kullanılır. Bu teknolojide bir işlemi yapmak için değişik aşamalar ard arda dizilir ve bir işlemin bir aşaması yapılırken boştaki kaynaklarla da başka bir işlemin herhangi bir aşaması yapılabilir. Bu teknolojiyle bir komutu tek bir saat vuruşunda bitirebilmek mümkün olur. Superscalar denen bir mamariyle paralel pipellinelar kullanılarak performans daha da arttırılabilir. Bu konudaki son gelişme Intel'in Hyperthreading teknolojisidir. Komutları paralel olarak çalıştırmak için çift işlemciye ihtiyaç duyulur. Bu teknolojideyse olaya şu şeklide yaklaşılır: Komutlar thread denen parçalardan oluşur ve çift işlemciyle komut seviyesinde paralellik yerine tek işlemciyle thread seviyeinde paralellik sağlanır. Komutlar threadlere ayrılır ve bu threadler paralel olarak işlenip çıkışta tekrar birleştirirler. Tek bir işlemci tam anlamıyla olmasa da belirli bir seviyede çift işlemci gibi çalışır. Bu yöntem sadece tek bir işlemcinin kaynakları kullanıldığı için çift işlemcinin yerini tutamasa da bazı uygulumalarda belirli bir performans artışı sağlar. En büyük dezavantajı komutların parçalanıp tekrar birleştirilmesi sırasında kaybedilen zaman yüzünden aynı anda birden çok komutun işlenmesine ihtiyaç duymayan programlarda az da olsa performans düşüşü yaşanmasıdır.

    Bir İşlemcinin Performansı
    Bir işlemcinin performansını belirleyenler arasında kullanıcıların en çok tartıştıkları aşağıdakilerdir:
    - İşlemci Mimarisi: Burayı çoğu kimse atlasa da en önemli etken budur. Bir işlemcinin bir saat döngüsünde ne kadar uzunlukta kaç tane komutu aynı anda işleyebildiğini saat hızı ya da önbelleği değil sadece mimarisi belirler.
    - Saat Hızı: İşlemcinin çalışma frekansıdır ve günümüzde GHz mertebesine kadar ulaşmıştır. Saat hızı ne kadar yüksek olursa saniyedeki saat vuruşu (ve işlemci çevrimi) sayısı da o kadar yüksek olacağından saat hızının performansa etkisi oldukça yüksektir. Yalnız burada yapılabilecek çok büyük bir hata farklı mimarideki işlemcileri saat hızlarına göre karşılaştırmaktır. Saat hızı kullanılarak ancak aynı işlemci ailesi içinde gerçekçi karşılaştırmalar yapılabilir. Bir işlemcinin saat hızını sistem hızıyla (FSB, Front Side Bus) işlemcinin çarpanının çarpımı belirler. Sistem hızı fazla yüksek olmasa da işlemci kendi içinde çarpanlarını kullanarak çok daha yüksek hızlara çıkabilir. Örneğin oldukça popüler olan 1.8 GHz hızında çalışan bir Pentium 4 işlemci 18x100 MHz'te çalışır.
    - L1/L2 Cache: Önemli veriler işlemcinin ihtiyaç anında onlara daha hızlı ulaşabilmesi için önbellekte tutulur. 1. seviye önbellek daha önceliklidir ve buradaki verileri işlemci daha çok kullanır. Önbellek miktarlarını karşılaştırırken işlemci mimarisi yine çok önemlidir. Mesela 16 KB L1 cache bir Pentium 4 için yeterliyken aynı performansta çalışan bir AMD Athlon işlemcide 128 KB L1 cache bulunur. Önemli olan önbelleğin ne şekilde kullanıldığıdır.
    Ham işlemci performansını ifade etmek için MIPS (Million Instructions Per Second, saniyede işlenebilen komut sayısı) ve MFLOPS (Million Floating Point Operations Per Second, saniyede yapılabilen kayar nokta hesabı) birimleri kullanılır ve performans konusunda evrensel geçerliliği olan tek kavramlar bunlardır.
    Yazılım Uyumluluğu
    Bilgisayarların ilk günlerinde herkes kendi yazılımını yazdığı için işlemci mimarisi biraz daha arkaplandaydı. Geçen zamanla birlikte yazılımlar da oldukça gelişti ve bugünse yazılım başlı başına bir sektör. Günümüzde her ihtiyacımız için oturup kendi yazılımlarımızı hazırlmamamız imkansız, bir o kadar da gereksiz. Belirli bir standartlaşmayla beraber işlemcilerin önemi de arttı.
    Günümüz PC'leri Intel 80x86 mimarisini kullanır. Bu mimari 70'li yıllardan bugüne kadar gelmiştir, güncel CISC işlemciler hala bu mimariyi kullanır. Bu standartlaşmanın sonucu olarak programlar işlemcilere göre değil komut setlerine göre yazılır ve 80x86 mimarisine göre yazılmış bir programın bir Intel işlemcide çalışıp da bir AMD işlemcide çalışmaması (ya da bunun tersi) mümkün değildir. İşlemcilere özel bazı ek komut setleri olsa da (SSE, 3D Now! gibi) bunlar sadece işlemciye yönelik optimizasyonlardır ve programlar temelde aynıdır. 80x86 miamarisine göre yazılmış 32 bitlik bir program aynı mimarideki 32 bitlik bütün işlemciler tarafından sorunsuzca çalıştırılabilir.



    not: konu alıntıdır sadece tarafımdan düzenlenmiştir

  3. #3
    Cool Member martech Avatar
    Katılım tarihi
    05.06.2006
    Nereden
    Yalova
    Mesaj
    408
    Like
    0 defa
    sağolun ya

  4. #4
    Cool Member HaRBi_Aspirin Avatar
    Katılım tarihi
    20.04.2005
    Nereden
    Mars için planlarım var
    Mesaj
    473
    Like
    0 defa
    gördüğün iyi oldu hep merak etmişimdir nasıl çalışır bu meret diye

  5. #5
    Silver Member sectoreXeN Avatar
    Katılım tarihi
    30.08.2005
    Nereden
    Şimdi NJ - Birazdan NY
    Mesaj
    879
    Like
    12 defa
    yorum yapmadan önce okumanızı tavsiye ederim arkadaşlar..
    3-5dk veripde var olan bilginizin üstüne yenilerini veya gözden kaçırdığınız bişeyleri eklemek size bişey kaybettirmez..
    @martech
    arkadaşım saolasın..

  6. #6
    New Member
    Katılım tarihi
    05.09.2005
    Nereden
    İstanbul
    Mesaj
    8
    Like
    0 defa
    İnsan zekası üretti değil mi bunu tek kelimeyle muhteşem.
    Dostum sağolasın çok güzel çalışma olmuş.
    Bunu arşiv yapıp saklamak lazım valla

  7. #7
    hARDWAREMANIAC TuVNeRa Avatar
    Katılım tarihi
    20.05.2004
    Nereden
    İstanbul
    Mesaj
    2.634
    Like
    0 defa
    Keşke yazıda daha fazla paragraf kullanılsaydı.
    Takip etmek zor.

  8. #8
    Power Member soulburner Avatar
    Katılım tarihi
    24.02.2005
    Nereden
    edirne
    Mesaj
    664
    Like
    0 defa
    Gerçekten çok aydınlatıcı bir yazı olmuş.Baya merak ettim bir konu idi.Çıktısını bile aldım

  9. #9
    Cool Member martech Avatar
    Katılım tarihi
    05.06.2006
    Nereden
    Yalova
    Mesaj
    408
    Like
    0 defa
    Alıntı TuVNeRa tarafından iletildi. Mesajı göster
    Keşke yazıda daha fazla paragraf kullanılsaydı.
    Takip etmek zor.
    kusura bakma bilader unutmuşuz yaşlılık işte

  10. #10
    Senior Member
    Katılım tarihi
    09.09.2006
    Nereden
    Antalya\İstanbul
    Mesaj
    152
    Like
    0 defa
    alkışlıyorum seni arkadaşım cok teşekkürler

    zahmet etmişsin paylaşmışsın

    :şak: :şak: :şak:

Sayfa 1, toplam 2 12 SonSon

Benzer Konular

  1. Cevap: 0
    Son Konu: 15-06-2005, 20:56
  2. Bin ve Iso dosyalarını nasıl acabilirim?
    By Arslan_M in forum Genel(OS)
    Cevap: 13
    Son Konu: 05-05-2005, 18:53
  3. Cevap: 1
    Son Konu: 18-04-2005, 15:44
  4. ADM Sempron işlemciler sizce nasıl?
    By HellMarch in forum İşlemciler
    Cevap: 3
    Son Konu: 02-04-2005, 17:27
  5. Nasıl TV-Video Capture kartı almalıyım?
    By drasil in forum Çokluortam
    Cevap: 5
    Son Konu: 25-02-2004, 18:26

Reklam