BM_05.yapiFonksiyon-BilgisayarBilesenleri

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