5. Kesme (Interrupt)
|
|
- Özgür Özhan
- 7 yıl önce
- İzleme sayısı:
Transkript
1 Lisans: Donanım Kesmesi: 5. Kesme (Interrupt) Bir dış birimde (örneğin G/Ç arabirimi) belli bir koşul oluştuğunda bu birim MİB e kesme isteği gönderir. Tasarım problemleri: Kaynak: Bir MİB ne birden fazla kesme kaynağı bağlı olabilir. MİB kesme isteğinin hangi kaynaktan geldiğini nasıl belirler? Öncelik: Aynı anda birden fazla kaynak kesme isteğinde bulunabilir. MİB hangi isteği yerine getireceğine (öncelik) nasıl karar verir? Başlangıç adresi: Kesme isteği kabul edilen kaynağa ilişkin kesme hizmet programının (KHP) (interrupt service routine ISR) başlangıç adresi nasıl belirlenir? Vektörlü / otovektörlü Dr. Feza BUZLUCA 5. a) MİB'in sadece bir kesme isteği girişi var. Kesme kabul (interrupt acknowledgement) çıkışı yok. Örnek: MİB lerin Kesme düzenleri: V R Açık kolektörlü çıkışlar Tek bir kesme hizmet programı (KHP) (interrupt service routine - ISR) var. Kesme kaynağı, kesme hizmet programının içinde yoklama (polling) ile belirlenir. Öncelik sırası da yoklama sırası ile belirlenir. Kesme isteğinden vazgeçirme (kesme kabul) yazılım ile yapılır. Kaynak cihazın iskelesini okuma/yazma, denetim saklayıcısına yazma gibi PIA ACIA PTM Kesme Kaynakları: Parallel Interface Adapter Asynchronous Communication Interface Adapter Programmable Timer Module Dr. Feza BUZLUCA 5.2
2 2 5. MİB lerin Kesme düzenleri devamı: b) Bir kesme isteği girişi () var, bir kesme kabul çıkışı (Interrupt Acknowledge) (A) var, vektörlü çalışıyor. Kesme kaynakları MİB e kesme öncelik devreleri üzerinden bağlanırlar. Aynı anda birden fazla istek gelirse kesme kabul (A) işaretinin hangi kaynağa gönderileceğine kesme öncelik devresi karar verir. İsteği kabul edilen kaynak kendi hizmet programının başlangıç adresini (ya da başlangıç adresinin vektör tablosunda nereden alınacağını) veri yolu üzerinden MİB e bildirir. Veri Yolu MİB A Kesme Öncelik Devresi (Priority Interrupt Controller) A K A Vektör no K2 Kesme kaynakları Örnek: x86 işlemcileri A K Dr. Feza BUZLUCA Vektör adresi: MİB ler bir kesme isteği kabul edildiğinde hangi hizmet programının çalıştırılacağına ilişkin bilgileri bir kesme vektör tablosunda tutarlar. Bu bilgiler iki farklı şekilde tutulabilir:. Vektör tablosunda kesme hizmet programlarının başlangıç adresi bulunur. Kesme isteği kabul edilen kaynak, MİB e vektör numarasını yani hizmet programının başlangıç adresinin tablodaki satır numarasını gönderir. MİB ilgili satırdan hizmet programının başlangıç adresini alır ve PC'ye yazar. Örnek MC Tabloda kesme hizmet programlarının kendisi (ilk satırı) bulunur. Pratikte tüm programları tek tabloya sığdırmak mümkün olmayacağından bu satırlara asıl hizmet programına gitmeyi sağlayan "JMP hizmet_programi" komutları yerleştirilir Dr. Feza BUZLUCA 5.4
3 3 Vektörlü ve Otovektörlü Kesmeler: Vektörlü kesmede kesme isteği kabul edilen kaynak, MİB e vektör numarasını yani hizmet programının başlangıç adresi ile ilgili bilgiyi gönderir. Sabit vektörlü (otovektörlü) çalışmada vektör numarası kaynak birimden alınmaz. Her kesme kaynağı (veya düzeyi ) için önceden belirlenmiş sabit bir vektör numarası (tabloda belli bir satır) vardır. Örnek: 682 de, NMI, SWI kesmeleri için vektör adresleri sabittir. Tasarımcı ilgili kesme hizmet programlarının başlangıç adreslerini tablolardaki ilgili gözlere önceden yazar. MC68 her iki yönteme göre de (vektörlü ve otovektörlü) çalışabilmektedir Dr. Feza BUZLUCA 5.5 MC 68 Vektör Tablosu: Dr. Feza BUZLUCA 5.6
4 4 5.3 Kesme Öncelik Devreleri (Priority Interrupt Hardware) a) Seri Öncelik Devresi (Papatya Zinciri Daisy Chain ) Öncelik devresi (zincir) değişik önceliklere sahip halka lardan oluşur. Her kesme kaynağı bu halkalardan birine (Interrupt Request - ) bağlıdır. Zincirin başındaki halka (öncelik ) en yüksek önceliğe sahiptir. Tüm birimler işlemcinin tek bir kesme isteği hattını kullanır. Veri Yolu Kesme kaynağı vektör adresini üretebiliyor ve Kaynağı K Kaynağı K2 Kaynağı K3 VAD VAD VAD Kesme Kesme Kesme tutabiliyor. ACK ACK ACK Kesme öncelik devresi ACK Öncelik PI P ACK PI Öncelik 2 P ACK PI Öncelik 3 P Sonraki kaynak Veri Yolu Kesme İsteği Kesme Kabul ACK MİB Dr. Feza BUZLUCA 5.7 Öncelik zincirinin çalışması: MİB den çıkan kesme kabul işareti tüm halkalara seri olarak bağlıdır. MİB den kesme kabul işareti önce baştaki halkaya (Priority in: PI) gelir. a. Eğer bu halkaya bağlı olan cihaz istekte bulunduysa. Halka kendisine bağlı olan kesme kaynağına ACK işaretini gönderir. 2. Böylece halkaya bağlı olan kaynak vektör adresini (VAD) veri yoluna çıkartır. 3. Halka (Priority out: PO) çıkışını etkisiz yaparak bir sonraki halkaya (kaynağa) "kesme kabul" işaretinin gitmesini engeller. b. Eğer kesme kabul işaretini alan halkaya bağlı olan cihaz istekte bulunmadıysa. Halka (Priority out: PO) çıkışını etkin yaparak "kesme kabul" işaretinin bir sonraki halkaya geçmesini sağlar. Böylece sıradaki kaynağın kesme isteğinin olup olmadığına bakılır. Bu yönteme donanım yoklaması (hardware poll) da denir. Kesme isteği karşılanan cihaz isteğinden vazgeçer () etkisiz olur. Kesme kaynağı karşılanmayan cihaz çıkışını etkin tutarak isteğini sürdürür Dr. Feza BUZLUCA 5.8
5 5 Papatya Zincirinin bir halkasının iç yapısı: İstekte bulunan kaynağa MİB'den (ACK) PI Priority In Kesme kaynağından izin ACK PO Priority Out PI PO ACK Açık kolektörlü tümleme MİB e Bir sonraki halkaya Dr. Feza BUZLUCA 5.9 Seri Öncelik Devresi (Papatya Zinciri Daisy Chain ) 2 Önceki devrede kesme kaynakları kendi vektör numaralarına sahiptirler ve ACK işareti geldiğinde bu adresi veri yoluna çıkartabilmektedirler. Aşağıdaki devrede ise kesme kaynakları vektör numarasına sahip değildirler. Bu adresi tutma işi öncelik devresine verilmiştir. Ayrıca kesme kaynakları kesme isteğini kabul işareti gelinceye kadar sürdürmemektedirler. İsteği tutma (sürdürme) görevi de öncelik devresindedir. Kesme Kaynağı Kesme Kaynağı 2 Kesme Kaynağı 3 Kesme kaynaklarında vektör adresi tutulmuyor. Adresler öncelik devresinde tutuluyor. Veri Yolu VAD PI Öncelik P VAD PI Öncelik 2 P VAD PI Öncelik 3 P Sonraki kaynak Veri Yolu Kesme İsteği Kesme Kabul ACK MİB Dr. Feza BUZLUCA 5.
6 6 Papatya Zinciri 2'nin bir halkasının iç yapısı: PI Priority In Kesme kaynağından gelen kesme isteği Q S SR Tutucu R Vektör adresi saklayıcısı izin Veri Yolu VAD Vektör adresi PO Priority Out PI Q PO İzin Açık kolektörlü tümleme Gecikme MİB e Kaynaktan gelen kesme isteği SR tutucuyu yapar. MİB den kesme kabul işaretini alan halka (Priority in: PI) eğer kendisine bağlı cihaz istekte bulunduysa vektör adresi saklayıcısını etkin yaparak kendi vektör adresini (VAD) veri yoluna koyar Dr. Feza BUZLUCA 5. Kaynak (Disk) Kaynak 2 (Printer) Kaynak 3 Kaynak 4 Set: İstek Reset: İstek kabul edilince Kesme İstek Saklayıcısı Maske: : İstek kabul edilebilir : İstek engellenir (bloke) Maske Saklayıcısı Lisans: b) Paralel Öncelik Devresi Aşağıda örnek bir devre gösterilmiştir. Öncelik devreleri başka şekillerde de tasarlanabilir. Vektör Adresi I I I 2 I 3 Öncelik Kodlayıcısı Priority Encoder IEN Interrupt Enable Ana maske IST Y X İzin Veri Yolu Interrupt Status Kesme oluştu mu? (MİB e) ACK (MİB den) Dr. Feza BUZLUCA 5.2
7 7 Bu örnek sistemde kaynakların vektör adresleri: Kaynak : Kaynak 2: Kaynak 3: Kaynak 4: Öncelik Kodlayıcısının doğruluk tablosu: Girişler Çıkışlar I I I 2 I 3 x y IST Lojik ifadeler: x x x x x x x = I I y = I I + I I 2 (IST) = I + I + I 2 + I 3 Φ Φ Dr. Feza BUZLUCA 5.3 Önceki örnek sistemde (5.2) kaynakların vektör numaraları önceden belirlenmiştir ve sabittir (Örneğin, Kaynak (disk): ). Sistemi daha esnek yapmak için her kaynak için ayrı bir vektör adres saklayıcısı yerleştirilebilir. Böylece her kaynağın vektör numarası esnek olarak değiştirilebilir. 5.2'deki devre Veri Yolu OE VAD VAD2 VAD3 VAD4 Öncelik Kodlayıcısı Priority Encoder Y X I I 2X4 Kod Çözücü Z Z Z 2 Z 3 E Vektör saklayıcıları ACK (MİB ten) Kesme isteği kabul edilen kaynağa ilişkin vektör adresi saklayıcısına çıkış izni (Output enable OE) verilir. Bu saklayıcılar MİB tarafından yazma yapılabilecek şekilde sistemdeki uygun bir bellek bölgesine yerleştirilirler. Saklayıcılara sistem programlarında yazılır Dr. Feza BUZLUCA 5.4
8 8 5.4 Kesme Hizmet Programına gidilip dönülürken yapılan işler: Kesme Hizmet Programından (KHP) Önce: Hatırlatma; MİB Komut yürütme çevriminden sonra kesme isteklerini değerlendirir. Eğer bir kesme isteği kabul edilirse MİB kesme çevrimine girer (yansı.8). MİB kesme çevriminde aşağıdaki işleri gerçekleştirir: ( Bu işler MİB in denetim birimi tarafından iç işlem olarak yapılır; programı ile yapılmazlar. ) SP SP- (Yığın işaretçisi gerektiği kadar adres kaç sekizli ise- azaltılır) M[SP] PC (Geri dönüş adresi yığına) ACK (Kesme kabul) KHP başlangıç adresi PC VAD (Vektör adresi) ya da PC Tablo[VNo] (Vektör tablosundan) SP SP- M[SP] SR (Durum saklayıcısı yığına) IEN (Diğer kesmeler maskelendi, bu bayrak SR nin içindedir) Bundan sonraki komut alma çevriminde MİB KHP'nin ilk komutunu alır, çünkü PC bu komuta işaret etmektedir (PC VAD). Bazı MİB ler iç saklayıcılarını da yığında saklarlar. Bazıları bu işlemi programcıya bırakır Dr. Feza BUZLUCA 5.5 Kesme Hizmet Programından (KHP) Dönülürken: Hatırlatma Kesme hizmet programları özel bir komut ile sonlandırılır; "return from interrupt" (RTI). Bu komut KHP'den kesilen programa dönüşte yapılması gereken işeri gerçekleştirir. SR M[SP] SP SP+ PC M[SP] SP SP+ (Durum saklayıcısı geri alındı) (Geri dönüş adresi alındı) (Gerektiği kadar adres kaç sekizli ise- arttırılır) Kesme çevrimine sadece KHP'den önce girilir: Dönüşteki işlemler KHP'nin son komutu olan RTI içinde yapılır. Yorumlar: Kesme hazırlık ve geri dönüş işlemleri zaman alıcıdır (çok sayıda bellek erişimi). Bu nedenle çok sık gelen kesmeler sistemin performansını düşürür. Örneğin, çok sık veri aktarımı yapılan uygulamalarda (dosya aktarımı) kesmeli G/Ç yönteminin kullanılması uygun değildir Dr. Feza BUZLUCA 5.6
9 9 Problem: Örnek: Kesmeli G/Ç Bir MİB in komut çevrimi aşağıda süreleri verilen 4 adımdan oluşmaktadır:. Komut alma: 6 ns, 2. Komut çözme: 2 ns, 3. Operand alma: 6 ns, 3. Yürütme: 3 ns, 4. Kesme: 2 ns. MİB'in kesme çevrimindeki hazırlık işlemleri (geri dönüş adresini saklama, vektör adresini alma vb) 2 ns sürmektedir. G/Ç arabiriminde belleğe adet sözcüğün aktarılması için kesmeli yöntem kullanılmaktadır. Toplam 5ns süren kesme hizmet programı her çalıştığında sadece bir sözcük aktarmaktadır (Kesmeye gidilirken yapılan hazırlık işlemleri hariç). MİB programı koşmaya başladığı anda zamanı başlattığımızı varsayalım (Zaman=). MİB ilk komutun alma çevrimindeyken (Zaman=5ns) G/Ç arabiriminden ilk kesme isteğinin geldiğini varsayınız. a. G/Ç arabiriminden belleğe ilk sözcük ne zaman aktarılır (Zaman=?)? Neden? b. G/Ç arabiriminin her zaman aktarıma hazır olduğu varsayılırsa sözcüğün tamamının aktarımını ne zaman tamamlanır (Zaman=?)? Dr. Feza BUZLUCA 5.7 Örnek: Kesmeli G/Ç (devamı) Çözüm: Hatırlatma; MİB Komut yürütme çevriminden sonra kesme isteklerini değerlendirir. Eğer bir kesme isteği kabul edilirse MİB kesme çevrimine girer. Veri aktarımı KHP'de yapılır. Geri dönüş işlemleri KHP'nin bir parçası olan RTI komutunda yapılır. a. İlk sözcük: Zaman = = 87ns Komut alma + Çözme + Operand + Yürütme + Hazırlık + KHP b. sözcük: Her KHP'de tek sözcük aktarılıyor, Zaman = x 87 = 87ns (Uzun sürüyor. Hazırlık işlemlerinin bedeli yüksek.) Dr. Feza BUZLUCA 5.8
10 Lisans: Sıra Dışı Durumlar (Exceptions) Örnek: MC68 Dış Kaynaklı: Reset Yol Hatası (Bus Error - BERR) Kesme İstekleri (Interrupts) Vektörlü, otovektörlü İç Kaynaklı: İzleme (trace) Adım adım komut yürütme (hata ayıklama için) Adres hatası : Tek adreslere word/long erişimi Yazılım kesmesi (Trap -5), TRAPV (Trap on overflow), CHK Geçersiz komut: Makine dili karşılığı olmayan işlem kodu (op code) Komut benzetimi (emulation) ( ve ile başlayan komutlar) Yetkili komut çalıştırma Sıfıra bölme Dr. Feza BUZLUCA 5.9 Sıra dışı durum oluştuğunda yapılanlar: SR Temp (SR nin kopyası çıkartılır) S, T (İşlemci yönetici (supervisor) konumuna geçiyor, izleme kapatılıyor) PC (geri dönüş adresi) yığına yazılır. SR nin Temp teki kopyası yığına (S ve T nin değişmemiş önceki değerleri) yazılır. Hizmet programının adresi vektör tablosundan alınır. Saklayıcılar yığında işlemci tarafından saklanmaz. Programcı kullandığı saklayıcıları yığında kendisi korumalıdır. Geri dönüşte: Hizmet programları RTE (Return from Exception) komutu ile sonlandırılır. Durum saklayıcısı SR yığından alınır. Geri dönüş adresi yığından alınır. RESET durumunda bu işlemlerin hepsi yapılmaz. Bazı sıra dışı durumlarda ise (BERR, kesme gibi) ek işler de yapılır Dr. Feza BUZLUCA 5.2
11 5.5. Ayrıcalık Konumları (Privilege Modes) 68K iki ayrıcalık konumundan birinde bulunur: yönetici (supervisor) konumu veya kullanıcı (user) konumu. Ayrıcalık durumu o anda hangi komutların çalıştırılabileceğini belirler (kısıtlar). Konum bilgisi işlemcinin FCO (Function Codes Output) çıkışlarında da belirtilir ve gerek duyulduğunda bellek yönetim devresi tarafından belli bellek bölgelerine erişimi denetlemek için kullanılabilir (Yansılar ). İşlemci konumuna göre iki farklı yığın işaretçisi kullanır: "supervisor stack pointer" (SSP) ve "user stack pointer" (USP). Yönetici konumu (Supervisor mode): Yönetici konumu daha yüksek önceliklere sahiptir. İşlemcinin konumu durum saklayıcısındaki S biti ile belirlenir; S= : yönetici Yönetici konumundayken işlemci tüm komutları yürütebilir. Kullanıcı Konumu (User mode): Eğer durum saklayıcısındaki S biti sıfırlanırsa işlemci kullanıcı konumuna geçer. Sistemin çalışmasını etkileyen bazı ayrıcalıklı komutlar sadece yönetici konumunda çalışırlar. Örneğin: STOP, RESET. Kullanıcı programlarının denetim dışı işlemciyi yönetici konumuna geçirememesi için durum saklayıcısına yazma komutları da kullanıcı konumunda çalışmazlar Dr. Feza BUZLUCA 5.2 Ayrıcalık durumları arası geçişler İşlemci kullanıcı konumundayken sadece sıra dışı durum (exception) gerçekleşirse işlemci yönetici konumuna geçer. Sıra dışı durum oluştuğunda o andaki S değeri durum saklayıcının (SR) içinde yığına yazılır ve S yapılarak işlemci yönetici (supervisor) konumuna geçirilir. Bu nedenle hizmet programları yönetici (supervisor) konumunda yürütülür. Eğer sıra dışı durum işlemci kullanıcı (user) konumundayken oluştuysa hizmet programından geri dönüldüğünde tekrar kullanıcı konumuna geçilir, çünkü RTE komutu SR nin orijinal değerini (S bitini içerir) yığından çeker. Yönetici konumundan kullanıcı konumuna geçmek SR ye yazan komutlar ile de mümkündür. MOVE to SR, ANDI to SR, EORI to SR. Sadece sıra dışı durum (exception) gerçekleşirse (S ) Kullanıcı Konumu Yönetici Konumu (S ) RTE ya da durum saklayıcısına yazan komutlar ile MOVE, ANDI, EORI Dr. Feza BUZLUCA 5.22
12 Yol Hatası (BERR) ve Adres Hatası: 68 nin BERR girişi etkin (lojik ) yapıldığında yol hatası sıra dışı durumu oluşur. Bkz. yansı 4.9: Sonsuz Beklemeyi Önleme Bir program tek numaralı bir adrese word (6 bit) veya long (32 bit) erişimi yapmak isterse adres hatası sıra dışı durumu oluşur. Adres hatası işlemcinin içinden kaynaklanan yol hatası gibidir. Kesmelerden farklı olarak o andaki komutun tamamlanması beklenmez. Yol çevrimi (örneğin bellek erişimi) kesilerek sıra dışı durum işlemlerine geçilir. Diğer sıra dışı durumlardan farklı olarak yığında daha fazla bilgi saklanır. BERR, yol hatası veya RESET ile ilgili sıra dışı durum (exception) işlemleri yapılırken tekrar BERR oluşursa işlemci durur (HALT konumuna geçer) ve kendini sistemden yalıtır (yüksek empedans). HALT konumu bellekteki verilerin bozulmasını önler. Bu konumdan RESET ile çıkılır Dr. Feza BUZLUCA 5.23 Yol Hatası (BERR) veya Adres Hatası oluştuğunda sistem (yönetici) yığınına (supervisor stack) yazılanlar Bu hatalardan biri oluştuğunda işlemci komut ya da operand alma/yazma işlemlerinden birini yapmaktadır. Sistemin çalışmasını etkileyen bu hatalar ile daha fazla bilgi alabilmek için diğer sıra dışı durumlardan farklı olarak yığında daha fazla bilgi saklanır. SSP Artan Adresler Erişilen Adres H L Komut Saklayıcısı (op word) Durum Saklayıcısı (SR) R/W I/N FC2 FCFC Program Sayacı (PC) H L Dr. Feza BUZLUCA 5.24
13 MC68 de Kesmeler (Interrupts): 68 nin kesme istekleri için üç bitlik bir girişi vardır (IPL2, IPL, IPL). Bu girişlerden gelen üç bitlik değer (-7) kesme isteğinin düzeyini belirtir. Hepsi etkisizse kesme isteği yok demektir. Eğer kesme isteğinin düzeyi SR deki maskelerin düzeyinden büyükse kesme isteği kabul edilir ve sıra dışı durum hizmeti işlemleri başlar T S I 2 I X N Z V C Status Register (SR) Kesme Maskeleri (I I I 2 ) IPL2, IPL, IPL > I2, I, I ise kesme isteği kabul edilir. IPL2, IPL, IPL I2, I, I ise kesme isteği kabul edilmez. Bunun istisnası 7. düzeyden gelen kesmedir. 7. düzeyden gelen kesmeler maskelenemez. I Dr. Feza BUZLUCA 5.25 MC68 nin Kesmelerde kullanılan hatları: MC68 IPL IPL IPL2 FC FC FC2 Adres Yolu Veri Yolu A3-A D7-D Kesme isteği girişleri (Interrupt priority level) Kesme kabul: Hangi düzeyin kabul edildiği Vektör no okunur AS LDS DTACK R/W VPA Vektör no Asenkron Yol Erişimi ile okunur Otovektörlü çalışma Dr. Feza BUZLUCA 5.26
14 4 68 de kesme kabul edildiğinde yapılan işlemler: Lisans: SR Temp (SR nin kopyası çıkartılır) S, T PC yığına yazılır SR nin Temp teki kopyası yığına (S ve T nin değişmemiş önceki değerleri) yazılır. I2, I, I IPL2, IPL, IPL Kabul edilen düzey maskeye yazılır. Böylece eşit ve (Maske Kesme Düzeyi) daha düşük öncelikli kesmeler maskelenmiş olur. FC2, FC, FC (Kesme Kabul) A3, A2, A Kabul edilen kesme isteğinin düzeyi a) Vektörlü çalışma: Kesmesi kabul edilen cihaz vektör numarasını veri yoluna koyar ve DTACK' hattını etkin yaparak işlemciyi uyarır. 68 asenkron yol erişimi ile 8 bitlik vektör numarasını (D7-D)'den okur. Vektör numarası, hizmet programının başlangıç adresinin vektör tablosunun hangi satırında olduğunu gösterir. Vektör tablosunun her satırı 4 sekizli (byte) olduğundan vektör tablosunun ilgili satırını bulmak için vektör numarası 4 ile çarpılır (Satır adr. = vno x 4). 68 Vektör tablosu için bakınız yansı Dr. Feza BUZLUCA de kesme kabul edildiğinde yapılan işlemler: b) Otovektörlü çalışma: Kesme üreten birim kesme kabulü sırasında DTACK yerine 68 in VPA girişini etkin (sıfır) yaparsa dış birim vektör numarası göndermeyecek demektir. Bu durumda 68 hizmet programının başlangıç adresini kabul edilen düzeye göre vektör tablosunda belirli ve sabit bir yerden kesme alınır. 68'in vektör tablosunda 25-3 numaralı satırlar (7 adet) otovektörlü kesmeler için ayrılmıştır (her düzey için bir satır). (Bkz. 5.6) Programcının sorumlulukları: Kesme hizmet programında kullanılan saklayıcılar yığında saklanmalı. Geri dönmeden önce aynı saklayıcılar yığından çekilmeli. Bu yığın işlemleri için (MOVEM "move multiple") komutu kullanılabilir. Hizmet programını yazan programcı gerek duyarsa keseme maskelerinin değerini değiştirebilir. Hatırlatma; hizmet programları yönetici konumunda koşar. Böylece programcı o andaki hizmet programından daha düşük öncelikli kesmelere izin verebilir veya (7 hariç) daha yüksek düzeydekileri engelleyebilir. Kesme hizmet programının sonuna RTE (return from exception) komutu yazılmalıdır Dr. Feza BUZLUCA 5.28
15 5 İç içe gelen kesmeler (Nested Interrupts): Çalışan Düzey: 4: 4. Düzey hizmet programından. düzey programına dönülür. Maske olur. Bir komut yürütülür. 2. düzeyden kesme isteği beklediği için bir komut yürütüldükten sonra 2. düzey hizmet programına gidilir. : (Ana prog.) Kesme isteği düzeyi (IPL2 IPL IPL) : Maske: (I2 I I) 2: : Kabul edilmedi. Maske = 4 IPL2 IPL IPL < I2 I I 4 2 RTE RTE RTE Dr. Feza BUZLUCA 5.29 Kesme Kabul işaretinin üretilmesi: 68 IPL IPL IPL2 A3 A2 A FC FC FC2 AS 7448 Öncelik Kodlayıcısı 2 A B C E 7438 Kod Çözücü Y Y 2 Y 3 Y 4 Y 5 Y 6 Y 7 Vcc R c En yüksek öncelik Eğer kesme kaynaklarının istek çıkışları açık kolektörlü ise kolektör dirençleri bağlanmalıdır IACK IACK2 IACK3 IACK4 IACK5 IACK6 IACK Dr. Feza BUZLUCA 5.3
16 6 IPL IPL IPL2 68 FC FC FC2 AS A3-A Öncelik 2 Kodlayıcısı E Kod Çözücü D7-D (Kaynak ) Gecikme Kesme Kaynağı 2 ACK VNo vektörlü otovektörlü Kesme Kaynağı 3 ACK Kaynak 4 ACK girişi yok. İstekten yazlım ile vazgeçer. LDS DTACK VPA Dr. Feza BUZLUCA Yazılım Kesmeleri (Software Interrupts) MC68 de 6 farklı yazılım kesmesi oluşturmak mümkündür: TRAP # TRAP #5 Bu komutlar iç kesmeler yaratırlar ve sıra dışı durum (exception) işlemlerinin yapılmasını sağlarlar. Her TRAP komutu için vektör tablosunda bir satır vardır. Sistemi tasarlayanlar, kullanıcının gerek duyacağı işlemleri (örneğin PIA gibi sistem kaynaklarını kullanmak gibi), yazılım kesmesi hizmet programları şeklinde önceden hazırlarlar. Kullanıcı programlarını yazanlar ilgili TRAP komutunu çalıştırarak gerek duyduğu sistem kaynaklarına erişebilir. Hizmet programları yönetici (supervisor) konumunda çalıştığından, kullanıcı doğrudan erişemeyeceği sistem kaynaklarını gerek duyduğunda yazılım kesmeleri ile kontrollü olarak kullanmış olur. Örneğin sistemin tasarımında işlemci kullanıcı konumundayken PIA'ya erişim engellenmiş olur. Bu nedenle kullanıcı programları PIA'nın saklayıcılarına doğrudan erişemez Dr. Feza BUZLUCA 5.32
17 Komut Benzetimi (Öykünüm) (Instruction Emulation (Unimplemented instructions)) MC68 in makine dilinde $A () ve $F () ile başlayan komut yoktur. (Line A) ve (Line F) ile başlayan komut kodları (opcode) "henüz gerçeklenmemiş komutlar" (unimplemented) olarak değerlendirilirler ve sıra dışı durum oluşmasına neden olurlar. Her iki kodun vektör tablosunda ayrı satırları vardır. Tasarımcılar kendi makine dili komutlarını bu kodlarla başlayacak şekilde oluşturabilirler ve bunları programlarda diğer komutlar ile kullanabilirler. Sistemin belleğine bu değerler ile başlayan bir komut yerleştirilirse 68 bu komutu alıp çözmeye çalıştığında sıra dışı bir durum (exception) oluşur ve bir hizmet programı çalıştırılır. İlgili kod için yazılan hizmet programının içinde o komutun yapması gerekenler program ile gerçekleştirilir. Sıra dışı durum oluştuğunda hizmet programına gidilirken yığına yazılan PC değeri sıra dışı duruma neden olan komutun başına işaret eder Dr. Feza BUZLUCA 5.33 Örnek: MC68 tabanlı bir bilgisayar sisteminde komut benzetimi olanağından yararlanılarak aşağıda açıklanan komutlar gerçekleştirilecektir. ADD.B adres,adres2,adres3 (adres3)(adres)+(adres2) Bu komut adres deki ve adres2 deki 8 bitlik sayıları toplayarak sonucu adres3 e yazmaktadır. Adresler 32 bit uzunluğundadır. ADD.W adres,adres2,adres3 (adres3)(adres)+(adres2) Bu komut ise aynı işlemleri 6 bitlik sayılar üzerinde yapmaktadır. Burada da adresler 32 bit uzunluğundadır. Çözüm: Önce komutun makine dilindeki yapısını oluşturmak gerekir. Örnek bir yapı: ADD.B adres,adres2,adres3 ADD.W adres,adres2,adres3 $F adres,adres2,adres3 $F adres,adres2,adres3 Komut sözcüğünün (Op word) son biti boyut (size) için kullanılmıştır. :B, :W ADD.B : = $F ADD.W: = $F ADD.B : F adres adres2 adres Dr. Feza BUZLUCA 5.34
18 8 Komutlarda istenen işleri yapacak hizmet programını yazmak gerekir. Hizmet programından önce onu test etmek için kullanılacak bir ana program aşağıdaki gibi oluşturulur: main lea stack,a7 // Yığın işaretçisi başlangıç değeri adda.l #4,a7 // Yığın azalan adreslere doğru ilerler move.l #service,($2c) // Hizmet programının adresi tabloya dc.w $f,,$,,$,,$2 //ADD.B $,$,$2 dc.w $f,,$2,,$2,,$22 //ADD.W $2,$2,$22... org $5 stack ds.b 4 // Yığın için bellekte yer ayrılıyor Line F sıra dışı durumunun vektöror tablosundaki yeri. satırdır. Bu satırın adresi ($2C)'dir. Hizmet programının başlangıç adresinin bu satıra (adrese) yazılması gerekir. Hizmet programının başında, gerekli saklayıcıları yığına yazmak gerekir. Bunların hangi saklayıcılar olduğu program yazıldıktan sonra belli olur. service movem.l d/a-a3,-(a7) D, A, A, A2, A3 yığına yazılıyor Dr. Feza BUZLUCA 5.35 Hizmet programına gidilirken SR ve PC mikroişlemci tarafından yığına yazılmıştı. Hizmet programının başında ise beş adet saklayıcı programla yığına yazıldı. Buna göre yığındaki bilgiler yandaki gibidir: SP A3_H service movem.l d/a-a3,-(a7) +2 A3_L movea.l 22(a7),a Komuta işaret eden PC a +4 A2_H move.w (a)+,d Komutun ilk 6 biti OpCode ->d +6 A2_L movea.l (a)+,a Adres a +8 A_H movea.l (a)+,a2 Adres2 a2 Komut Alma + A_L movea.l (a)+,a3 Adres3 a3 +2 A_H tst.b d B/W? Komut çözme (Decoding) +4 A_L bne word +6 D_H move.b (a),d Byte işlemleri +8 D_L add.b (a2),d Operand Alma +2 SR move.b d,(a3) ve +22 PC_H bra ret Komut Yürütme PC_L word move.w (a),d Word işlemleri add.w (a2),d move.w d,(a3) ret move.l a,22(a7) Yığındaki PC güncelleniyor (update) movem.l (a7)+,d/a-a3 rte Yığındaki PC bir sonraki komuta işaret ettirilmeli Dr. Feza BUZLUCA 5.36
Bilgisayar Mimarisi. a) MİB'in sadece bir kesme isteği girişi var. Kesme kabul (interrupt acknowledgement) çıkışı yok. Örnek: 6802
Lisans: http://creativecommons.org/licenses/by-nc-nd/3./ Donanım si: 5. (Interrupt) Bir dış birimde (örneğin G/Ç arabirimi) belli bir koşul oluştuğunda bu birim MİB e kesme isteği gönderir. Tasarım problemleri:
Detaylı4. Giriş/Çıkış Organizasyonu (I/O Organization) ve Yol Erişimleri
4. Giriş/Çıkış Organizasyonu (I/O Organization) ve Yol Erişimleri Amaç, iç saklama birimleri (saklayıcılar, bellek) ile çevre birimler (tuş takımı, fare, modem, yazıcı, hard disk, ağ kartı) aktarımını
DetaylıBM-311 Bilgisayar Mimarisi
1 BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Bilgisayar Bileşenleri Bilgisayarın Fonksiyonu Instruction Cycle Kesmeler (Interrupt lar)
DetaylıBM-311 Bilgisayar Mimarisi. Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü
BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Bilgisayar Bileşenleri Bilgisayarın Fonksiyonu Instruction Cycle Kesmeler (Interrupt lar) Bus
Detaylıx86 Ailesi Mikroişlemciler ve Mikrobilgisayarlar
x86 Ailesi 1 8085A,8088 ve 8086 2 Temel Mikroişlemci Özellikleri Mikroişlemcinin bir defade işleyebileceği kelime uzunluğu Mikroişlemcinin tek bir komutu işleme hızı Mikroişlemcinin doğrudan adresleyebileceği
DetaylıBahar Dönemi. Öğr.Gör. Vedat MARTTİN
Bahar Dönemi Öğr.Gör. Vedat MARTTİN 8086/8088 MİKROİŞLEMCİSİ İÇ MİMARİSİ Şekilde x86 ailesinin 16-bit çekirdek mimarisinin basitleştirilmiş bir gösterimi verilmiştir. Mikroişlemci temel iki ayrı çalışma
DetaylıDr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü
1 BİLGİSAYAR MİMARİSİ Dr. Feza BUZLUCA İstanbul Teknik Üniversitesi Bilgisayar Mühendisliği Bölümü http:// http:// Ders Notlarının Creative Commons lisansı Feza BUZLUCA ya aittir. Lisans: http://creativecommons.org/licenses/by-nc-nd/3.0/
DetaylıMİKROBİLGİSAYAR SİSTEMLERİ VE ASSEMBLER
BÖLÜM 2 INTEL AİLESİNİN 8 BİTLİK MİKROİŞLEMCİLERİ 2.1 8080 MİKROİŞLEMCİSİ Intel 8080, I4004, I4040 ve I8008 in ardından üretilmiştir ve 8 bitlik mikroişlemcilerin ilkidir ve 1974 te kullanıma sunulmuştur.
DetaylıBM-311 Bilgisayar Mimarisi
1 BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Processor organization Register organization Instruction cycle 2 Processor organization İşlemci
DetaylıBÖLÜM 7 Kesmeler.
C ile 8051 Mikrodenetleyici Uygulamaları BÖLÜM 7 Kesmeler www.8051turk.com Amaçlar Kesme tanımını ve önemini kavramak 8051 mikrodenetleyicisinin kesme yapısını öğrenmek 8051 de kullanılan kesme türlerini
DetaylıBilgisayar İşletim Sistemleri BLG 312
Prosesler Bilgisayar İşletim Sistemleri BLG 312 Prosesler ve Proses Yönetimi bilgisayar sisteminde birden fazla iş aynı anda etkin olabilir kullanıcı programı diskten okuma işlemi yazıcıdan çıkış alma
DetaylıKomutların Yürütülmesi
Komutların Yürütülmesi Bilgisayar Bileşenleri: Genel Görünüm Program Sayacı Komut kaydedicisi Bellek Adres Kaydedicisi Ara Bellek kaydedicisi G/Ç Adres Kaydedicisi G/Ç ara bellek kaydedicisi 1 Sistem Yolu
DetaylıASENKRON (Eş Zamanlı Olmayan) HABERLEŞME ARA YÜZEYİ
ASENKRON (Eş Zamanlı Olmayan) HABERLEŞME ARA YÜZEYİ Arayüzey hem gönderici hem alıcı durumunda çalışır. Arayüzey kontrol register ına aktarılan bir kontrol byte ı ile başlangıç durumuna getirilir. Kontrol
DetaylıMerkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ. MİB Yapısı. MİB in İç Yapısı. MİB Altbirimleri. MİB in İç Yapısı
Merkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ Doç. Dr. Şule Gündüz Öğüdücü http://ninova.itu.edu.tr/tr/dersler/bilgisayar-bilisim-fakultesi/0/blg-1/ Merkezi İşlem Birimi (MİB): Bilgisayarın temel birimi
DetaylıVon Neumann Mimarisi. Mikroişlemciler ve Mikrobilgisayarlar 1
Von Neumann Mimarisi Mikroişlemciler ve Mikrobilgisayarlar 1 Sayısal Bilgisayarın Tarihsel Gelişim Süreci Babage in analitik makinası (1833) Vakumlu lambanın bulunuşu (1910) İlk elektronik sayısal bilgisayar
Detaylıİşletim Sistemlerine Giriş
İşletim Sistemlerine Giriş İşletim Sistemleri ve Donanım İşletim Sistemlerine Giriş/ Ders01 1 İşletim Sistemi? Yazılım olmadan bir bilgisayar METAL yığınıdır. Yazılım bilgiyi saklayabilir, işleyebilir
DetaylıMC6800. Veri yolu D3 A11. Adres yolu A7 A6 NMI HALT DBE +5V 1 2. adres onaltılık onluk 0000 0. 8 bit 07FF 2047 0800 2048. kullanıcının program alanı
GİRİŞ Günümüzde kullanılan bilgisayarların özelliklerinden bahsedilirken duyduğumuz 80386, 80486 Pentium-III birer mikroişlemcidir. Mikroişlemciler bilgisayar programlarının yapmak istediği tüm işlerin
DetaylıProses. Prosesler 2. İşletim Sistemleri
2 PROSESLER Proses Bir işlevi gerçeklemek üzere ardışıl bir program parçasının yürütülmesiyle ortaya çıkan işlemler dizisi Programın koşmakta olan hali Aynı programa ilişkinbirdenfazlaprosesolabilir. Görev
DetaylıDERS 12 PIC 16F84 ile KESME (INTERRUPT) KULLANIMI İÇERİK
DERS 12 PIC 16F84 ile KESME (INTERRUPT) KULLANIMI İÇERİK KESME NEDİR KESME ÇEŞİTLERİ INTCON SAKLAYICISI RBO/INT KESMESİ PORTB (RB4-RB7) LOJİK SEVİYE DEĞİŞİKLİK KESMESİ Ders 12, Slayt 2 1 KESME PIC in bazı
DetaylıMerkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ. MİB Yapısı. MİB Altbirimleri. Durum Kütüğü. Yardımcı Kütükler
Merkezi İşlem Birimi MİKROİŞLEMCİ SİSTEMLERİ Yrd. Doç. Dr. Şule Gündüz Öğüdücü Merkezi İşlem Birimi (MİB): Bilgisayarın temel birimi Hız Sözcük uzunluğu Buyruk kümesi Adresleme yeteneği Adresleme kapasitesi
DetaylıBİLGİSAYAR MİMARİSİ. Bilgisayar Bileşenleri Ve Programların Yürütülmesi. Özer Çelik Matematik-Bilgisayar Bölümü
BİLGİSAYAR MİMARİSİ Bilgisayar Bileşenleri Ve Programların Yürütülmesi Özer Çelik Matematik-Bilgisayar Bölümü Program Kavramı Bilgisayardan istenilen işlerin gerçekleştirilebilmesi için gereken işlem dizisi
DetaylıDERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ. İçerik
DERS 3 MİKROİŞLEMCİ SİSTEM MİMARİSİ İçerik Mikroişlemci Sistem Mimarisi Mikroişlemcinin yürüttüğü işlemler Mikroişlemci Yol (Bus) Yapısı Mikroişlemci İç Veri İşlemleri Çevresel Cihazlarca Yürütülen İşlemler
DetaylıPROSESLER. Proses. Proses
Proses 2 PROSESLER Bir işlevi gerçeklemek üzere ardışıl bir program parçasının yürütülmesiyle ortaya çıkan işlemler dizisi Programın koşmakta olan hali Aynı programa ilişkin birden fazla proses olabilir.
DetaylıBölüm 13: Giriş-Çıkış (I/O) Sistemleri
Bölüm 13: Giriş-Çıkış (I/O) Sistemleri Mehmet Demirci tarafından çevrilmiştir. Silberschatz, Galvin and Gagne 2013 Bölüm 13: Giriş-Çıkış (I/O) Sistemleri Genel bakış I/O donanımı Uygulama I/O arayüzü Çekirdek
DetaylıGörüntü Bellek. Ana Bellek. Fiziksel Adres. Belek Uzayı. Bellek hiyerarşisi. Hız Maliyet (+) Ana Bellek. Boyut (+) DISK. Görüntü Adres.
9 Yönetimi (Memory Management), Görüntü (Virtual Memory) Amaç Kullanıcılara/programlara fiziksel belleğin (ana ) boyutundan bağımsız olarak büyük boyutta ve lineer (sürekli) alanı sağlamak. Kullanıcılar/programlar,
DetaylıYığın MİKROİŞLEMCİ SİSTEMLERİ. Yığın. Örnek MİB için Yığın. Yığma İşlemi. Çekme İşlemi
Yığın MİKROİŞLEMCİ SİSTEMLERİ Yrd.Doç.Dr. Şule Öğüdücü Geçici olarak veri saklamak amacıyla kullanıcı tarafından bellek içinde ayrılmış bir alandır. Yığında en son saklanan veri yığından ilk olarak çekilir.
Detaylı9. MERKEZİ İŞLEM BİRİM MODÜLÜ TASARIMI
1 9. MERKEZİ İŞLEM BİRİM MODÜLÜ TASARIMI Mikroişlemci temelli sistem donanımının en önemli kısmı merkezi işlem birimi modülüdür. Bu modülü tasarlamak için mikroişlemcinin uç işlevlerinin çok iyi bilinmesi
DetaylıBM-311 Bilgisayar Mimarisi
1 BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Giriş Mikro işlemler Fetch cycle Indirect cycle Interrupt cycle Execute cycle Instruction
Detaylıİşletim Sistemlerine Giriş
İşletim Sistemlerine Giriş Girdi/Çıktı (I/O) İşletim Sistemlerine Giriş - Ders11 1 Girdi/Çıktı (I/O) İşletim sisteminin temel fonksiyonlarından biride bilgisayardaki tüm I/O aygıtlarını kontrol etmesidir.
DetaylıİSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUVARI KESMELİ GİRİŞ/ÇIKIŞ
İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUVARI KESMELİ GİRİŞ/ÇIKIŞ 8259 PIC (Programmable Interrupt Controller) ve 8086 CPU tümleşik devrelerin sinyal akışı
DetaylıBİLGİSAYAR MİMARİSİ. << Bus Yapısı >> Özer Çelik Matematik-Bilgisayar Bölümü
BİLGİSAYAR MİMARİSİ > Özer Çelik Matematik-Bilgisayar Bölümü Veri yolu (BUS), anakarttaki tüm aygıtlar arası veri iletişimini sağlayan devrelerdir. Yani bilgisayarın bir bileşeninden diğerine
DetaylıMikrobilgisayar Donanımı
KARADENĠZ TEKNĠK ÜNĠVERSĠTESĠ BĠLGĠSAYAR MÜHENDĠSLĠĞĠ BÖLÜMÜ MĠKROĠġLEMCĠ LABORATUARI Mikrobilgisayar Donanımı 1. GiriĢ Bu deneyde 16 bit işlemci mimarisine dayalı 80286 mikroişlemcisini kullanan DIGIAC
DetaylıŞekil. 64 Kelimelik Yığıtın Blok Şeması
1 YIĞIT (STACK) KURULUMU Çoğu bilgisayarın MİB de yığıt veya LIFO (Last In First Out) bulunur. Yığıt bir bellek parçasıdır ve son depolanan bilgi ilk geri dönen bilgi olur. Yığıta aktarılan son bilgi yığıtın
DetaylıProgram Kontrol Komutları. Mikroişlemciler ve Mikrobilgisayarlar 1
Program Kontrol Komutları Mikroişlemciler ve Mikrobilgisayarlar 1 Bu başlık, altında incelenecek olan komutlar program akışını oluşan bazı koşullara göre değiştirmektedirler Program akışında meydana gelen
DetaylıSistem Programlama. Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir.
Kesmeler(Interrupts): Kesme mikro işlemcinin üzerinde çalıştığı koda ara vererek başka bir kodu çalıştırması işlemidir. Kesmeler çağırılma kaynaklarına göre 3 kısma ayrılırlar: Yazılım kesmeleri Donanım
DetaylıBilgisayar İşletim Sistemleri BLG 312
Giriş Bilgisayar İşletim Sistemleri BLG 312 İplikler geleneksel işletim sistemlerinde her prosesin özel adres uzayı ve tek akış kontrolü vardır bazı durumlarda, aynı adres uzayında birden fazla akış kontrolü
DetaylıAdresleme Yöntemleri MİKROİŞLEMCİ SİSTEMLERİ. İşlenenin Yeri. Örnek MİB Buyruk Yapısı. İvedi Adresleme. Adresleme Yöntemleri. Bellek. Kütükler.
Adresleme Yöntemleri MİKROİŞLEMCİ SİSTEMLERİ Doç. Dr. Şule Gündüz Öğüdücü http://ninova.itu.edu.tr/tr/dersler/bilgisayar-bilisim-fakultesi/0/blg-/ Getirme Çevrimi Yürütme Çevrimi Çözme İşlenen Yürütme
DetaylıGiriş/Çıkış Arabirimi MİKROİŞLEMCİ SİSTEMLERİ. Arabirim Özellikleri. Giriş/Çıkış Adresleri. G/Ç Arabirimlerinin Bağlanması
Giriş/Çıkış Arabirimi MİKROİŞLEMCİ SİSTEMLERİ Doç.Dr. Şule Öğüdücü http://ninova.itu.edu.tr/tr/dersler/elektrik-elektronik-fakultesi/0/blg-1/ Giriş/Çıkış () arabirimi bilgisayar ve çevre birimleri arasında
DetaylıMikrobilgisayar Mimarisi ve Programlama
Mikrobilgisayar Mimarisi ve Programlama 2. Hafta Bellek Birimleri ve Programlamaya Giriş Doç. Dr. Akif KUTLU Ders web sitesi: http://www.8051turk.com/ http://microlab.sdu.edu.tr Bellekler Bellekler 0 veya
Detaylıİşletim Sistemlerine Giriş
İşletim Sistemlerine Giriş Bellek Yönetimi (Memory Management) İşletim Sistemlerine Giriş - Ders10_02 1 Yazılım ile LRU Benzetimi Donanım kullanmadan LRU algoritmasının yazılım ile gerçekleştirimidir.
DetaylıMikroişlemcili Sistemler ve Laboratuvarı 8.Hafta
SAKARYA ÜNİVERSİTESİ Bilgisayar ve Bilişim Bilimleri Fakültesi Bilgisayar Mühendisliği Bölümü Mikroişlemcili Sistemler ve Laboratuvarı 8.Hafta Doç.Dr. Ahmet Turan ÖZCERİT Doç.Dr. Cüneyt BAYILMIŞ Yrd.Doç.Dr.
DetaylıİÇİNDEKİLER 1. KLAVYE... 11 2. KLAVYE RB0... 19 3. KLAVYE RBHIGH... 27 4. 4 DİSPLAY... 31
İÇİNDEKİLER 1. KLAVYE... 11 Satır ve Sütunlar...11 Devre Şeması...14 Program...15 PIC 16F84 ile 4x4 klavye tasarımını gösterir. PORTA ya bağlı 4 adet LED ile tuş bilgisi gözlenir. Kendiniz Uygulayınız...18
DetaylıDENEY III RAPORU MİKROİŞLEMCİ UYGULAMALARI LABORATUVARI
MİKROİŞLEMCİ UYGULAMALARI LABORATUVARI DENEY III RAPORU Hazırlayan : Beycan Kahraman No (Beycan) : 040020337 Grup Arkadaşı : Hani İsmail No ( Hani ) : 040020925 Grup No : 3 Deney Adı : G/Ç (PIA) Uygulamaları
Detaylı27.10.2011 HAFTA 1 KALICI OLMAYAN HAFIZA RAM SRAM DRAM DDRAM KALICI HAFIZA ROM PROM EPROM EEPROM FLASH HARDDISK
Mikroişlemci HAFTA 1 HAFIZA BİRİMLERİ Program Kodları ve verinin saklandığı bölüm Kalıcı Hafıza ROM PROM EPROM EEPROM FLASH UÇUCU SRAM DRAM DRRAM... ALU Saklayıcılar Kod Çözücüler... GİRİŞ/ÇIKIŞ G/Ç I/O
DetaylıDeney 2. Kesme Uygulamaları
Deney 2 Kesme Uygulamaları Deneyin Amacı Kesme kavramının öğretilmesi Kesme, kesme isteği ve yazılım kesmesi kavramlarının anlaşılması Kesme hizmet programı geliştirme Titreşimsiz düğme kavramının irdelenmesi
DetaylıEEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ
EEM 306 Mikroişlemciler ve Lab. Doç.Dr. Mehmet SAĞBAŞ Alt Program Yapısı Alt programın çağrılması Alt program korunur alınır ;Argumanlar R12 R15 registerlarına atanir. call #SubroutineLabel SubroutineLabel:
DetaylıİŞLETİM SİSTEMİ İşletim sistemi kullanıcıyla bilgisayar donanımı arasında iletişim sağlayan programdır.
İŞLETİM SİSTEMİ İşletim sistemi kullanıcıyla bilgisayar donanımı arasında iletişim sağlayan programdır. Programların ve donanımların kullanılması için bir çalıştırılması platformu oluşturur. Sistemin yazılım
DetaylıMikrobilgisayarlar. Mikroişlemciler ve. Mikrobilgisayarlar
1 Sayısal Bilgisayarın Tarihsel Gelişim Süreci Babage in analitik makinası (1833) Vakumlu lambanın bulunuşu (1910) İlk elektronik sayısal bilgisayar (1946) Transistörün bulunuşu (1947) İlk transistörlü
DetaylıKOMUT TABLOSU İLE İLGİLİ AÇIKLAMALAR:
KOMUT TABLOSU İLE İLGİLİ AÇIKLAMALAR: 1) Etkilenen Bayraklar (E.B.) : Bazı komutlar koşturulurken PSW saklayacısındaki bayrakların değeri değişebilir. Herbir komut için etkilenen bayraklar belirtilmiştir.
DetaylıYrd.Doç.Dr. Celal Murat KANDEMİR
Bilgisayar Mimarisi Ara Bağlantı Yapıları ve Bus Kavramı Yrd.Doç.Dr. Celal Murat KANDEMİR ESOGÜ Eğitim Fakültesi - BÖTE twitter.com/cmkandemir Ara Bağlantı Yapıları Bir bilgisayar sistemi MİB, bellek ve
DetaylıGiriş. İplik Modeli. geleneksel işletim sistemlerinde her prosesin özel adres uzayı ve tek akış kontrolü var.
Giriş 3 İPLİKLER geleneksel işletim sistemlerinde her in özel adres uzayı ve tek akış kontrolü var. aynı adres uzayında birden fazla akış kontrolü gerekebilir aynı adres uzayında çalışan paralel ler gibi
DetaylıGİRİŞ-ÇIKIŞ (INPUT / OUTPUT) ORGANİZASYONU
GİRİŞ-ÇIKIŞ (INPUT / OUTPUT) ORGANİZASYONU GİRİŞ / ÇIKIŞ ARA YÜZEYİ (I/O ARA YÜZEYİ) G/Ç ara yüzeyi bilgisayarda bulunan bilgilerin dış G/Ç aletleri arasında aktarmanın yapılması için bir yöntem sunar.
DetaylıGiriş/Çıkış Arabirimi MİKROİŞLEMCİ SİSTEMLERİ. Giriş/Çıkış Adresleri. MİB ve G/Ç Arabirimi. Asenkron Veri Aktarımı. MİB ve Çevre Birimleri Bağlantısı
Giriş/Çıkış Arabirimi MİKROİŞLEMCİ SİSTEMLERİ Yrd.Doç.Dr. Şule Öğüdücü www.cs.itu.edu.tr/~gunduz/courses/mikroisl/ Giriş/Çıkış () arabirimi bilgisayar ve çevre birimleri arasında veri transferini sağlar.
DetaylıAdresleme Modları. Mikroişlemciler ve Mikrobilgisayarlar
Adresleme Modları 1 Adresleme Modları İşlenenin nerede olacağını belirtmek için kullanılırlar. Kod çözme aşamasında adresleme yöntemi belirlenir ve işlenenin nerede bulunacağı hesaplanır. Mikroişlemcide
DetaylıD Duplex : Alıcı + Verici Çalışma Debouching : DMA : Direct Memory Access Data-Bus : Data Veri Yolu Data Flow : Veri Akışı Data Processing : Veri
A: Access time : Erişim Zamanı Active High : Aktif Yüksek Active Low : Aktif Düşük Adress : Adres Address Bus : Adres Yolu Adress Decoding : Adres Kod Çözümü ALE : Adress Latch Enable Architecture : Mimari
DetaylıTBİL-405 Mikroişlemci Sistemleri Bölüm 2 1- % %01010 işleminin sonucu hangisidir? % %11000 %10001 %10101 %00011
TBİL-405 Mikroişlemci Sistemleri Bölüm 2 1- %11010 - %01010 işleminin sonucu hangisidir? % 10000 %11000 %10001 %10101 %00011 2- %0101 1100 sayısının 1 e tümleyeni hangisidir? % 1010 0111 %11010 0011 %1010
DetaylıDERS 13 PIC 16F84 ile DONANIM SAYICI KULLANIMI İÇERİK KESME
DERS 13 PIC 16F84 ile DONANIM SAYICI KULLANIMI İÇERİK KESME Ders 13, Slayt 2 1 TMR0 SAYICISI Ram belleğin h 01 adresi TMR0 adlı özel amaçlı bir saklayıcı olarak düzenlenmiştir. Bu saklayıcı bir sayıcıdır.
Detaylı8086 nın Bacak Bağlantısı ve İşlevleri. 8086, 16-bit veri yoluna (data bus) 8088 ise 8- bit veri yoluna sahip16-bit mikroişlemcilerdir.
Bölüm 9: 8086 nın Bacak Bağlantısı ve İşlevleri 8086 & 8088 her iki işlemci 40-pin dual in-line (DIP) paketinde üretilmişlerdir. 8086, 16-bit veri yoluna (data bus) 8088 ise 8- bit veri yoluna sahip16-bit
DetaylıBM 375 Bilgisayar Organizasyonu Dersi Vize Sınavı Cevapları 10 Nisan 2009
1-) Instruction Cycle State Diagram ı çizip herbir state için gerçekleştirilen işlemleri detaylı bir şekilde açıklayınız. Instruction state cycle da üstteki kısımlar CPU dışında alttaki kısımlar CPU içinde
Detaylı2011 Bahar Dönemi. Öğr.Gör. Vedat MARTTİN
2011 Bahar Dönemi Öğr.Gör. Vedat MARTTİN ADRESLEME YÖNTEMLERİ Komut yazımında en önemli konulardan biri, adresleme yöntemidir. Adresleme yöntemi, işlenenin nerede bulunacağını belirtmek için kullanılan
Detaylıİşletim Sistemlerine Giriş
İşletim Sistemlerine Giriş Süreçler ve İş Parçacıkları(Thread) İşletim Sistemlerine Giriş - Ders03 1 Süreç -Tüm modern bilgisayarlarda bir çok iş aynı anda yapılabilir. *kullanıcı programları çalışır *disk
DetaylıBölüm 3: Adresleme Modları. Chapter 3: Addressing Modes
Bölüm 3: Adresleme Modları Chapter 3: Addressing Modes 3 1 Veri Adresleme Modları MOV komutu veriyi bir bellek satırından diğer bellek satırına yada yazaca kopyalar Kaynak (source) verilin okunacağı belleğin
Detaylı8086 dan core2 ya yazaç yapısını tanımak. Bayrak yazacının içeriğinde yer alan bayrakların görevlerini tanımlamak. Real mod çalışmada bellek
8086 dan core2 ya yazaç yapısını tanımak. Bayrak yazacının içeriğinde yer alan bayrakların görevlerini tanımlamak. Real mod çalışmada bellek kullanımını tanımlamak. Korumalı modda belleğe erişim yöntemlerini
DetaylıMIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı
MIKRODENETLEYICILER Ege Üniversitesi Ege MYO Mekatronik Programı BÖLÜM 2 MSC-51 Ailesi MCS-51 Ailesi Ekim 2014 Yrd. Doç. Dr. Mustafa Engin 8051 in Blok Şeması 4 Denetim Hatları Veri Yolu DPTR P.C. 8051
DetaylıBilgisayar İşletim Sistemleri BLG 312
Bellek Yönetim Birimi Bilgisayar İşletim Sistemleri BLG 312 Bellek Yönetimi - 1 bellek kritik bir kaynaktır etkin kullanılmalı paylaşılmalı bellek yönetim birimi var Bellek Yönetim Biriminin Temel Amaçları
Detaylıİ.T.Ü. Eğitim Mikrobilgisayarının Tanıtımı
İ.T.Ü. Eğitim Mikrobilgisayarının Tanıtımı 1.1 Giriş İTÜ Eğitim Mikrobilgisayarı (İTÜ-Eğit) MC6802 mikroişlemcisini kullanan bir eğitim ve geliştirme bilgisayarıdır. İTÜ-Eğit, kullanıcıya, mikrobilgisayarın
DetaylıDIGIAC 2000 Deney Seti PAT 80286 İŞLEMCİ KARTI :
DIGIAC 2000 Deney Seti DIGIAC 2000 deney seti, çeşitli işlemler gerçekleştirmek üzere tasarlanmış üç adet kart ve hem program yazmak hem de kartlarla haberleşmeyi sağlamak için kullanılacak bir adet bilgisayardan
Detaylı(I) şimdiki. durum (S) belleği. saat. girşi
ers Notlarının Creative Commons lisansı Feza BUZLUCA ya aittir. Lisans: http://creativecommons.org/licenses/by-nc-nd/3.0/ Eşzamanlı (Senkron) Ardışıl evreler (Synchronous Sequential Circuits) Ardışıl (sequential)
DetaylıGiriş. geleneksel işletim sistemlerinde her prosesin. aynı adres uzayında birden fazla akış kontrolü gerekebilir
3 İPLİKLER Giriş geleneksel işletim sistemlerinde her prosesin özel adres uzayı ve tek akış kontrolü var. aynı adres uzayında birden fazla akış kontrolü gerekebilir aynı adres uzayında çalışan paralel
DetaylıDers Notlarının Creative Commons lisansı Feza BUZLUCA ya aittir. Lisans: http://creativecommons.org/licenses/by-nc-nd/3.0/
Eşzamanlı (Senkron) Ardışıl Devrelerin Tasarlanması (Design) Bir ardışıl devrenin tasarlanması, çözülecek olan problemin sözle anlatımıyla (senaryo) başlar. Bundan sonra aşağıda açıklanan aşamalardan geçilerek
DetaylıBahar Dönemi. Öğr.Gör. Vedat MARTTİN
Bahar Dönemi Öğr.Gör. Vedat MARTTİN MERKEZİ İŞLEM BİRİMİNİN YAPISI Merkezi işlem birimi beş temel birimden (MAR, MDR, ACC, ALU ve Kontrol birimi) oluşur. Ancak, daha ayrıntıya inildiğinde, CPU içinde daha
DetaylıMikroişlemcili Sistemler ve Laboratuvarı
SAKARYA ÜNİVERSİTESİ Bilgisayar ve Bilişim Bilimleri Fakültesi Bilgisayar Mühendisliği Bölümü Mikroişlemcili Sistemler ve Laboratuvarı Doç.Dr. Ahmet Turan ÖZCERİT Doç.Dr. Cüneyt BAYILMIŞ Yrd.Doç.Dr. Murat
DetaylıK uark projesi. Temel Özellikler :
K uark projesi Temel Özellikler : Kuark işlemcisi 16 bit kelime uzunluğuna sahip bir işlemcidir. Veri ve komut belleği aynıdır ve en fazla 4 Gigabyte bellek adresleyebilir. İşlemcimiz paralel çalışabilecek
DetaylıGiriş MİKROİŞLEMCİ SİSTEMLERİ. Elektronik Öncesi Kuşak. Bilgisayar Tarihi. Elektronik Kuşak. Elektronik Kuşak. Bilgisayar teknolojisindeki gelişme
Giriş MİKROİŞLEMCİ SİSTEMLERİ Bilgisayar teknolojisindeki gelişme Elektronik öncesi kuşak Elektronik kuşak Mikroişlemci kuşağı Yrd. Doç. Dr. Şule Gündüz Öğüdücü 1 Bilgisayar Tarihi Elektronik Öncesi Kuşak
DetaylıBM-311 Bilgisayar Mimarisi
1 BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Operand türleri Assembly dili 2 İşlemcinin yapacağı iş makine komutlarıyla belirlenir. İşlemcinin
DetaylıKonular MİKROİŞLEMCİ SİSTEMLERİ. Giriş. Bilgisayar Tarihi. Elektronik Kuşak. Elektronik Öncesi Kuşak
Konular MİKROİŞLEMCİ SİSTEMLERİ Giriş: Bilgisayar Tarihi Mikroişlemci Temelli Sistemler Sayı Sistemleri Doç. Dr. Şule Gündüz Öğüdücü http://ninova.itu.edu.tr/tr/dersler/bilgisayar-bilisim-fakultesi/30/blg-212/
DetaylıBölüm 12: UDP ve TCP. 12.1 UDP (User Datagram Protocol)
Bölüm 12: UDP ve TCP Türkçe (İngilizce) karşılıklar Bağlantısız (connectionless) Connection-oriented (bağlantı temelli) Veri dizisi (data stream) Soket (socket) Alındı (acknowledgment) Üç yollu el sıkışma
DetaylıMikroişlemcili Sistemler ve Laboratuvarı 6.Hafta
SAKARYA ÜNİVERSİTESİ Bilgisayar ve Bilişim Bilimleri Fakültesi Bilgisayar Mühendisliği Bölümü Mikroişlemcili Sistemler ve Laboratuvarı 6.Hafta Doç.Dr. Ahmet Turan ÖZCERİT Doç.Dr. Cüneyt BAYILMIŞ Yrd.Doç.Dr.
DetaylıBÖLÜM 7 XTAL2 XTAL1. Vss. Şekil Mikrodenetleyicisi osilatör bağlantı şekli. Bir Makine Çevrimi = 12 Osilatör Periyodu
BÖLÜM 7 7. ZAMANLAYICI/SAYICI YAPISI: 7.1. Sistem Saat üreteci ve Makine Çevrimi Bilgi: Saat üreteci bir mikrodenetleyicinin fonksiyonlarını yerine getirebilmesi için gerekli olan saat darbelerini üreten
DetaylıMİKROİŞLEMCİ SİSTEMLERİ
MİKROİŞLEMCİ SİSTEMLERİ Doç.Dr. Şule Öğüdücü http://ninova.itu.edu.tr/tr/dersler/bilgisayar-bilisim-fakultesi/30/blg-212/ Seri İletişim Verinin her biti aynı hat üzerinden arka arkaya gönderilir. Seri
DetaylıB.Ç. / E.B. MİKROİŞLEMCİLER
1 MİKROİŞLEMCİLER RESET Girişi ve DEVRESİ Program herhangi bir nedenle kilitlenirse ya da program yeniden (baştan) çalıştırılmak istenirse dışarıdan PIC i reset yapmak gerekir. Aslında PIC in içinde besleme
Detaylıİşletim Sistemlerine Giriş
İşletim Sistemlerine Giriş Bellek Yönetimi (Memory Management) İşletim Sistemlerine Giriş - Ders09 1 SANAL BELLEK(Virtual Memory) Yıllar önce insanlar kullanılabilir olan belleğe sığmayan programlar ile
DetaylıÇalışma Açısından Bilgisayarlar
Çalışma Açısından Bilgisayarlar Ölçme sistemi ile hesaplama sistemi birbiriyle ilgili olmasına rağmen aynı değillerdir. Suyun sıcaklığı ve gürültünün şiddeti ile evdeki lambaların ölçülmesi aynı değillerdir.
DetaylıQuiz:8086 Mikroişlemcisi Mimarisi ve Emirleri
Öğrenci No Ad-Soyad Puan Quiz:8086 Mikroişlemcisi Mimarisi ve Emirleri S1) 8086 mikroişlemcisi bitlik adres yoluna ve.. bitlik veri yoluna sahip bir işlemcidir. S2) 8086 Mikroişlemci mimarisinde paralel
DetaylıAdresleme Yöntemleri MİKROİŞLEMCİ SİSTEMLERİ. Örnek MİB ile Adresleme. Adresleme Yöntemleri. Doğal Adresleme. İvedi Adresleme
Adresleme Yöntemleri MİKROİŞLEMCİ SİSTEMLERİ Yrd. Doç. Dr. Şule Gündüz Öğüdücü www.cs.itu.edu.tr/~gunduz/courses/mikroisl/ İşlenenin nerde olacağını belirtmek için kullanılır. Buyruk çözme aşamasında adresleme
DetaylıDERS 11 PIC 16F84 ile ALT PROGRAMLARIN ve ÇEVRİM TABLOLARININ KULLANIMI İÇERİK. Alt Program Çevrim Tabloları Program Sayıcı ( Program Counter PC )
DERS 11 PIC 16F84 ile ALT PROGRAMLARIN ve ÇEVRİM TABLOLARININ KULLANIMI İÇERİK Alt Program Çevrim Tabloları Program Sayıcı ( Program Counter PC ) Ders 9, Slayt 2 1 ALT PROGRAM Bir program içerisinde sıkça
DetaylıBu deney çalışmasında kombinasyonel lojik devrelerden decoder incelenecektir.
4.1 Ön Çalışması Deney çalışmasında yapılacak uygulamaların benzetimlerini yaparak, sonuçlarını ön çalışma raporu olarak hazırlayınız. 4.2 Deneyin Amacı MSI lojik elemanları yardımıyla kombinasyonel lojik
DetaylıBM-311 Bilgisayar Mimarisi
BM-311 Bilgisayar Mimarisi Hazırlayan: M.Ali Akcayol Gazi Üniversitesi Bilgisayar Mühendisliği Bölümü Konular Adresleme modları Pentium ve PowerPC adresleme modları Komut formatları 1 Adresleme modları
DetaylıİSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUARI MİKROİŞLEMCİLİ A/D DÖNÜŞTÜRÜCÜ
İSTANBUL TİCARET ÜNİVERSİTESİ BİLGİSAYAR MÜHENDİSLİĞİ BÖLÜMÜ MİKROİŞLEMCİLİ SİSTEM LABORATUARI MİKROİŞLEMCİLİ A/D DÖNÜŞTÜRÜCÜ 1. Giriş Analog işaretler analog donanım kullanılarak işlenebilir. Ama analog
DetaylıMikroişlemci ve Yapısı. Mikroişlemciler ve Mikrobilgisayarlar
Mikroişlemci ve Yapısı 1 Katmanlı Sistem Yapısı (Machine Levels) Bu kısmın altındaki katmanlara programcı ve kullanıcının erişmesi söz konusu değildir. 2 Assembler Kaynak Kod Assembler Linker ADD D0,D1
DetaylıİLERI MIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı
İLERI MIKRODENETLEYICILER Ege Üniversitesi Ege MYO Mekatronik Programı BÖLÜM 3 LCD Gösterge Kullanımı +5 LCD Modülün Bağlantısı 8K2 1K +5 10 P0.5 P0.6 P0.7 P2.0 P2.1 P2.2 P2.3 P2.4 P2.5 P2.6 P2.7 1 2 3
Detaylıx86 Ailesi Mikroişlemciler ve Mikrobilgisayarlar
x86 Ailesi 1 8085A,8088 ve 8086 2 Temel Mikroişlemci Özellikleri Mikroişlemcinin bir defade işleyebileceği kelime uzunluğu Mikroişlemcinin tek bir komutu işleme hızı Mikroişlemcinin doğrudan adresleyebileceği
DetaylıBilgisayar Yapısı MİKROİŞLEMCİ SİSTEMLERİ. Bilgisayar Temel Birimleri. MİB Yapısı. Kütükler. Kütükler
Bilgisayar Yapısı MİKROİŞLEMCİ SİSTEMLERİ Yrd. oç. r. Şule ündüz Öğüdücü Bilgisayar verilen verileri, belirlenen bir programa göre işleyen, istenildiğinde saklayabilen, gerektiği zaman geriye verebilen
DetaylıXC8 ile PİC uygulamaları
XC8 ile PİC uygulamaları Modül tanıtımı : LCD kullanımı Öncelikle Lcd nedir ne değildir biraz tanımamız gerekiyor. LED göstergelerin fazla akım çekmesi ve kullanım zorluğu, son yıllarda LCD göstergelerin
DetaylıLCD (Liquid Crystal Display)
LCD (Liquid Crystal Display) LCD ekranlar bize birçok harfi, sayıları, sembolleri hatta Güney Asya ülkelerin kullandıkları Kana alfabesindeki karakterleri de görüntüleme imkanını verirler. LCD lerde hane
DetaylıBÖLÜM 6 Seri Port Đşlemleri
C ile 8051 Mikrodenetleyici Uygulamaları BÖLÜM 6 Seri Port Đşlemleri Amaçlar Seri haberleşmenin önemini kavramak 8051 seri port kontrol saklayıcılarını öğrenmek Seri port çalışma modları hakkında bilgi
Detaylıİşlem Buyrukları MİKROİŞLEMCİ SİSTEMLERİ. İşlem Buyrukları. İşlem Buyrukları. İşlem Buyrukları. İşlem Buyrukları
MİKROİŞLMCİ SİSTMLRİ Yrd. Doç. Dr. Şule Gündüz Öğüdücü www.cs.itu.edu.tr/~gunduz/courses/mikroisl/ Silme: Akümülatörün, yardımcı kütüğün, bir bellek gözünün içeriği veya durum kütüğü içindeki bayraklar
DetaylıBölüm Bazı Temel Konseptler
Bölüm 7 Bu ve bundan sonraki bölümde, makine komutlarını işleten ve diğer birimlerin faaliyetlerini düzenleyen işlem birimi üzerine yoğunlaşacağız. Bu birim genellikle Komut Seti Mimarisi (Instruction
DetaylıMIKRODENETLEYICILER. Ege Üniversitesi Ege MYO Mekatronik Programı
MIKRODENETLEYICILER Ege Üniversitesi Ege MYO Mekatronik Programı BÖLÜM 3 Assembler Programlama ve Program Geliştirme Program Geliştirme Problem Tanımlama Bağlantı Şekli Algoritma Akış Diyagramı Kaynak
DetaylıBilgisayarda Programlama. Temel Kavramlar
Bilgisayarda Programlama Temel Kavramlar KAVRAMLAR Programlama, yaşadığımız gerçek dünyadaki problemlere ilişkin çözümlerin bilgisayarın anlayabileceği bir biçime dönüştürülmesi / ifade edilmesidir. Bunu
Detaylı