Yapı ve Fonksiyon Structure and Function Modern bilgisayarlar milyonlarca elektronik bileşen içermektedirler. Bu gibi sitemleri tanımlamanın anahtarı hiyerarşik doğalarının anlaşılmasından geçmektedir. Hiyerarşik sistem, birbiriyle ilişkili alt sistem katmanları veya düzeylerinden oluşmuş bir yapıdır. 1 Yapı ve Fonksiyon Tasarımcı herhangi bir anda sistemin sadece belirli bir seviyesiyle ilgilenmek zorundadır. Herbir seviyede, sisteme ait bileşenler ve birbirleriyle olan ilişkiler tanımlıdır. Birbirinden ayrı her bir seviyenin davranışı sadece, basitleştirilmiş ve soyutlandırılmış bir sonraki alt seviye karekteristiğine bağlıdır. Yapı ve Fonksiyon Herbir farklı seviyede tasarımcı aşağıdaki kavramlar ile ilgilenir: • Yapı (structure): Hangi bileşenlerin birbiriyle bağlantılı olduğunu belirtir. • Fonksiyon (Function). Yapının parçası herbir tekil bileşenin çalışması ile ilgili bir kavramdır. Bir bilgisayar sistemi, daha anlaşılır ve verimli olmaması sebebiyle genellikle aşağıdanyukarı(bottom-up) değil yukarıdan-aşağı (top-down) tanımlanır. 2 Fonksiyon Bir bilgisayarın gerçekleştirdiği sadece dört temel fonksiyon bulunmaktadır. – Veri işleme – Veri saklama – Veri taşıma – Kontrol Fonksiyon • Veri İşleme (Data processing). Veri çok geniş bir yelpazede farklı formlarda bulunabilmektedir. Bununla birlikte veri işlemenin belli başlı sadece birkaç temel metod ve tipi bulunmaktadır. • Veri Saklama (Data storage). Uzun süreli (longterm) veya kısa süreli (short-term) saklama işlemi gerçekleştirilebilir. 3 Fonksiyon • Veri taşıma (Data movement) Giriş/Çıkış(Input/Output). Veri bir çevre cihaza gönderileceği zaman veya cihazdan bir veri alınacağı zaman, bilgisayar ile cihaz arasında doğrudan bir bağlantı kurulur. Veri İletimi (Data communication). Veri uzaktaki bir cihaza çok uzun mesafeler üzerinden iletilebilir. • Kontrol (Control). Yukarıdaki fonksiyonların gerçekleştirilebilmesi için bilgisayar kullanıcısı tarafından bazı talimatların sağlanması gerekmektedir. (yazılımlar yardımıyla). Bilgisayarın Fonsiyonel Gösterimi İşletim Ortamı (verinin kaynak ve hedefi) Veri Taşıma Aparatları Kontrol Mekanizmaları Veri Saklama Araçları Veri İşleme Araçları 4 Fonksiyon Bilgisayar içinde bulunan kontrol birimi bilgisayar kaynakları yönetir ve kullanıcının talimatlarına bağlı olarak fonksiyonel parçaların performanslarını yönetir. İşlemler: Veri Taşıma Dört farklı tipte gerçekleştirilebilir. • Bilgisayar veri taşıma cihazı gibi davranır, basit bir şekilde veriyi bir cihazdan veya iletim hattından diğerine transfer eder. Taşıma Kontrol Saklama İşleme 5 İşlemler: Saklama • Bilgisayar bir veri saklama cihazı gibi işlev görür. Harici bir ortamdan bilgisayar saklama birimine veri transferi (okuma) gerçekleşir. Aynı zamanda tersi işlem de (yazma) gerçekleştirilebilir. Taşıma Kontrol Saklama İşleme Saklama Birimine veye Saklama Biriminden Veri İşleme • Bilgisayar depolama birimindeki veriler üzerinde işlemler gerçekleştirebilir. Taşıma Kontrol Saklama İşleme 6 Giriş/çıkış Birimlerinden Veri İşleme • Bilgisayar saklama birimi ile harici ortamlar arasında veri işleme gerçekleştirebilir. Taşıma Kontrol İşleme Saklama Yapı Bir bilgisayarın mümkün olan en basit şekilde ifade edilmesi. BİLGİSAYAR Saklama İşleme Bilgisayarlar harici ortamlarla etkileşim halindedir. Bu dönem boyunca daha çok bilgisayarın iç yapısıyla ilgileneceğimizi ilk dersimizde de belirtmiştik. 7 Yapısal Bileşenler Bilgisayar iç yapısında belli başlı dört ana bölüm bulunmaktadır. • Merkezi İşlem Birimi (MİB). Bilgisayarın çalışmasını kontrol eder ve veri işleme işlemlerini gerçekleştirir. Genellikle sadece işlemci olarak da isimlendirilebilir. • Ana Bellek. Verileri saklar. • Giriş/Çıkış(I/O). Bilgisayar ile harici cihazlar arasında veri taşınması için kullanılır. • Sistem iç bağlantı yolu. MİB, ana bellek ve G/Ç birimleri arasında iletişim sağlamak amacıyla bir takım mekanizmalar sağlar. Yapısal Bileşenler Bilgisayar Çevre Birimleri MİB Bilgisayar Ana Bellek Sistem İç Bağlantı Yolu Giriş Çıkış İletim Hatları 8 Yapı - MİB MİB'nin en önemli yapısal bileşenlşeri: • Kontrol Birimi. MİB işleyişini dolayısıyla bilgisayarı kontrol eder. • Aritmetik Mantık Birimi (ALU). Bilgisayarın veri işleme işlemlerini gerçekleştirir. • Kaydediciler (Registers). MİB içinde saklama ortamı sağlarlar. • MİB iç bağlantı yolları. Kontrol birimi, ALU ve kaydediciler arasında veri transferi için bir takım mekanizmalar sağlar. Yapı - MİB MİB Bilgisayar Kaydediciler ALU G/Ç Sistem Yolu Bellek MİB İç MİB Bağlantı Yapısı Kontrol Birimi 9 Kontrol Birimi Kontrol birimini gerçekleştirmek için çok sayıda farklı yol bulunmaktadır. En çok tercih edilen yol mikprogramlama yoluyla gerçeklemedir. (microprogrammed). Komutları çalıştırmak suretiyle gerçekleştirilen işlemler sayesinde kontrol biriminin fonksiyonalitesi tanımlanır. Kontrol Birimi Kontrol Birimi CPU Sıralı Mantık ALU İç Yol Kayde diciler Kontrol Birimi Kontrol Birimi Kaydedici ve Kodçözücüleri Bellek Kontrolu 10 Bilgisayar Mimarisi Bilgisayar Bileşenleri Ve Programların (Talimatların) Yürütülmesi Program Kavramı • İki veri temel mantıksal bileşenleri kullanılarak yüklenebilir ve bu veriler üzerinde aritmetik ve lojik işlemler gerçekleştirilebilir. İstenen konfigürasyonda değişik bileşenler bir araya getirilerek bir programlama formu oluşturulabilir. Yeni program donanımsal bir formdadır ve donanımsal program (hardwired program) olarak ifade edilir. • Donanımsal sistemler esnek değillerdir. • Genel amaçlı donanım, doğru kontrol sinyalleri yardımıyla farklı işlemleri yerine getirebilmelidir. • Donanımı tekrar düzenlemek yerine yeni bir kontrol sinyali kümesi sağlamak daha avantajlıdır. 11 Program Nedir? • Sıralı talimat adımlarıdır • Her bir adımda aritmetik veya mantık işlemleri gerçekleştirilir. • Her bir işlem için farklı kontrol sinyali kümesine ihtiyaç vardır. (Komut, Talimat) Komut Yapısı ve Komut Seti • Komut Seti: Belirli bir merkezi işlem birimine ait farklı tipte talimatların (komutların) bir araya gelmesinden oluşmuş komut topluluğudur. • Komut Yapısı: MİB’in işlemi gerçekleştirebilmesi için her komutun içermesi gereken bilgiler vardır. • Bu bilgiler iki ana bileşen içinde toplanır: —İşlem kodu - Opcode (Operation code) : gerçekleştirilecek işlemin ne olduğunu tanımlar. —İşlenen - Operand : İşlem kodu ile bildirilen işlemin işleyeceği verinin nerede olduğunu gösteren talimat bölümüdür. – Kaynak işlenenkaydedici, bellek, G/Ç – Sonuç işlenenkaydedici, bellek, G/Ç – Bir sonraki komut kontrol sonucu program akışının değişmesi gerektiği durumlarda yürütülecek bir sonraki talimatın adresidir. 12 von Neumann Mimarisi • Program ve data bellek bölgesine yüklenmiş, daha sonra bilgisayarın komutlarını bellekten okuması sağlanmıştır. • Bir program girilecekse veya değiştirilecekse bellekte gerekli değişikliğin yapılması yeterli olacaktır. • Bu fikir depolanmış program (stored program) konsepti olarak bilinir. Bu model günümüz bilgisayarlarında baskındır. • Ardışıl şekilde komut işleme yeteneğine sahiptir. • Ana bellek ve CPU’nun kontrol ünitesi arasında tek bir yol içerir. Von-Neuman mimarisi için dezavantajdır. von Neumann Mimari Yapısı • Veri ve talimatları saklayan bir ana bellek • İkilik kodlanmış üzerinde işlem yapabilme yeteneğine sahip bir Aritmetik Mantık Birimi (ALU) • Ana bellekteki talimatları yorumlayarak çalıştırılmasını sağlayan bir Kontrol Birimi • Kontrol birimi tarafından çalıştırılan Giriş ve Çıkış (I/O) birimleri 13 Bileşenler • Kontrol birimi, program sayacı, kaydediciler ve aritmetik mantık birimi birlikte merkezi işlem birimini (MİB) meydana getirirler. • Veri ve talimatların sistem içerisine getirilmesine ve işlendikten sonra sonuçların geri dönülmesine ihtiyaç vardır: —Giriş/Çıkış (Input/output) • Program kodlarının (talimatların makine kodu) geçici olarak saklanacağı bir saklama alanına ihtiyaç vardır —Ana Bellek (Main memory) Von Neumann Mimarisi Sistem Yolu Kavramı • Bu yapı genişletilerek, program ve verilerin işletiminin öncesinde disk ortamından, ana bellek ortamına aktarılması sağlanmıştır. • Ayrıca verimliliği arttırmak için sistem sistem yolu modeli geliştirilmiştir. Adres kontrol ve data yollarından oluşur. 14 von Neumann Mimarisi Genel Çalışma Yapısı • Kontrol ünitesi PC (program couınter) aracılığıyla bir sonraki komutu alır. • Komut ALU’nun anlayabileceği bir dile çevrilir. • Operand söz konusu ise bellekten CPU registerlerine alınır. • ALU komutu işletir ve sonucu registera ya da belleğe koyar. MİB (CPU) Bileşenleri • Aritmetik Mantık birimi (ALU) — Tümleyici — Toplayıcı — Kaydırıcı • Kontrol Birimi — Donanımsal/Programsal • Geçici saklama (kısa süreli) — Genel amaçlı kaydediciler — Özel amaçlı kaydediciler 30 15 Kaydedici Organizasyonu • Kaydediciler bellek hiyerarşisinde en üst seviye düzeydedirler. — Az sayıda fakat yüksek hızda saklama alanlarıdır. — Veri ve kontrol bilgileri (talimatlar) için geçici saklama alanlarıdır. • İki kategoride toplanırlar: — Genel amaçlı (Kullanıcı görünür) Assembly programlama seviyesinde, talimatlar sayesinde kullanıcıya kullanma imkanı verilen kaydediciler. — Özel amaçlı (Kontrol ve durum) MİB’in işleyişini kontrol etmek için kullanılırlar. Çoğu kullanıcıya görünür değildir. Kullanıcı tarafından programlamada doğrudan kullanılmaz. 31 Genel ve Özel Amaçlı Kaydediciler • Genel Amaçlı Kaydediciler — Farklı işlevleri yerine getirmek amacıyla kullanılabilirler. — Gerçekleştirecekleri işlemler talimat içinde tanımlanmıştır. — Adresleme fonksiyonu için de kullanılabilirler. • Özel Amaçlı Kaydediciler — Veri Kaydedicileri – Veriyi saklar ve operand adresinin hesaplanmasında kullanılmaz. – Örneğin Akümlatör — Adres Kaydedicileri – Adres bilgisini tutarlar. – Örnekler: genel amaçlı adres kaydedicileri, segment göstericiler, stack göstericiler, index kaydedicileri. 32 16 Özel Amaçlı Kaydediciler • Durum kodları veya Bayraklar (Flags) — Gerçekleştirilen işlem sonucuna bağlı olarak işlemci tarafından ayarlanan bit kümesidir. — Program tarafından erişilebilir fakat doğrudan değiştirilemez. — Örnekler: – İşaret bayrağı (sign flag) – Sıfır bayrağı (zero flag) – Taşma bayrağı (overflow flag) — Bit değerleri, bir koşula bağlı olarak programı yönlendiren talimatlar içinde kullanılırlar. 33 Kaç tane Kaydedici yeterlidir? • Kaydedici sayısının fazla olması MİB içinde daha fazla işlemin gerçekleştirilmesine imkan sağlar. Böylelikle bellek bant genişliği ihtiyacını düşürür. • Kaydedici sayısı artışı talimat kelimesi (makine kodu) içinde kaydedici bilgisinin saklanacağı alan büyüklüğünü arttırır. • Çoğu makine 8-64 bitlik kaydedici yapısı kullanırlar. 34 17 Kaydedici Kelime Büyüklüğü? • Adres kaydedicisi en büyük adresi tutacak kadar geniş olmalıdır! • Veri kaydedicileri, çok farklı tipteki verileri saklayabilecek büyüklükte olmalıdır. • Eğer çoğu gerçekleştirilecek işlem 16 veya 32 bit ise 64-bitlik kaydediciler kullanılmak istenilmez. • Bellek veri yolu genişliğine de bağlıdır. • Daha büyük biçimdeki veri tipleri için kaydediciler birleştirilebilir olmalıdır. 35 Kontrol ve Durum (Status) Kaydedicileri • Bu kaydediciler, komutların getirme (fetching), kod çözme (decoding) ve yürütme (execute) çevrimlerinde kullanılırlar. • Çoğu programcıya görünür değildir. • Bazıları görünür olmakla birlikte içerikleri kolaylıkla değiştirilemezler. 36 18
© Copyright 2024 Paperzz