GIC, karmaşık kesme kontrolü elde etmek için kolla tanımlanan bir dizi mimaridir. Sürüm ayrıca orijinal GICv1'den en son GICv4'e kadar birçok değişikliğe uğradı. Her yeni sürüm bazı yeni işlevler ekler.
En yeni GIC-600 IP, GICv4'ü destekler.
Bununla birlikte, GICv3'ten başlayarak, mimari önceki mimariden önemli ölçüde değişti.
Bir, birini değiştir: cpu arayüzü
Aşağıdaki şekil GICv2 mimarisini göstermektedir.Cpu arayüzü gic içinde uygulanmaktadır ve gic'in kayıtlarının tümüne bellek eşlemeli modda erişilmektedir.
Aşağıdaki şekil GICv3 mimarisini göstermektedir.Cpu arayüzü gic'ten çıkarılmış ve PE'nin içinde uygulanmıştır. Ve cpu arayüzünün kaydı, kesmeye hızlı bir yanıt gerçekleştirmek için sistem kayıtlarına erişmenin bir yolunu sağlar.
İki, ikiyi değiştir: ana logo
GICv3'te çekirdeklerin tanımlanması için, daha fazla çekirdeği destekleyebilen tanımlama için bir öznitelik hiyerarşisi kullanılır.
GICv2'de maksimum 8 çekirdek desteklenir.
Üç, üç değiştir: haber kesintisi
GICv3'te, mesaj kesintisini gerçekleştirmek için LPI kesinti türü eklenir. Ve ITS'nin kesme dönüşümünü gerçekleştirmesini sağlar.
Dört, dört değiştir: SGI işleme
SGI işleme için aşağıdaki değişiklikler vardır.
Beş, özet
Gicv3 / v4 mimarisi, gicv2 mimarisiyle karşılaştırıldığında, daha karmaşık kesme yönetimini desteklemek ve daha fazla CPU'yu desteklemek için birçok özellik ekler.
O zamandan beri, bu blog yazıları dizisi sona ermek üzere, Temel olarak, sanal kesinti ile ilgili içerik dışında, GIC içeriğini tanıttım. Umarım bu blog yazılarını okuduktan sonra GIC'i tanıyabilirsiniz. Başlangıçta birçok belge okudum ve bunu anlamak için kod ekledim.
Daha sonra, sanal kesintiler hakkında bir şeyler öğrendiysem, sanal kesintileri tanıtmak için bir dizi blog yazısı yazacağım.
İş teklifleri