TR201816058T4 - Çok çekirdekli işlemcilere sahip aviyonik sistemlerde katı gerçek zamanlı, güvenlik açısından kritik uygulamalara yönelik belgelenebilir deterministik sistem yazılımı çerçevesi. - Google Patents

Çok çekirdekli işlemcilere sahip aviyonik sistemlerde katı gerçek zamanlı, güvenlik açısından kritik uygulamalara yönelik belgelenebilir deterministik sistem yazılımı çerçevesi. Download PDF

Info

Publication number
TR201816058T4
TR201816058T4 TR2018/16058T TR201816058T TR201816058T4 TR 201816058 T4 TR201816058 T4 TR 201816058T4 TR 2018/16058 T TR2018/16058 T TR 2018/16058T TR 201816058 T TR201816058 T TR 201816058T TR 201816058 T4 TR201816058 T4 TR 201816058T4
Authority
TR
Turkey
Prior art keywords
cores
memory
core
bus bandwidth
bus
Prior art date
Application number
TR2018/16058T
Other languages
English (en)
Inventor
Sozzi Marco
Traversone Massimo
Original Assignee
Leonardo Spa
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Leonardo Spa filed Critical Leonardo Spa
Publication of TR201816058T4 publication Critical patent/TR201816058T4/tr

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/368Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control
    • G06F13/372Handling requests for interconnection or transfer for access to common bus or bus system with decentralised access control using a time-dependent priority, e.g. individually loaded time counters or time slot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B64AIRCRAFT; AVIATION; COSMONAUTICS
    • B64CAEROPLANES; HELICOPTERS
    • B64C19/00Aircraft control not otherwise provided for
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • G06F9/3816Instruction alignment, e.g. cache line crossing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Stored Programmes (AREA)

Abstract

Bir veya daha fazla katı gerçek zamanlı, güvenlik açısından kritik uygulamanın uygulanması için bir merkezi işlem birimini (2) içeren, merkezi işlem biriminin (2) çok sayıda çekirdeğe (4) sahip çok çekirdekli bir işlemciyi (3), çok çekirdekli işlemci (3) tarafından çalıştırılabilir bir aviyonik sistem yazılımını, bir belleği (6) ve çok çekirdekli işlemcinin (3) belleğe (6) erişebileceği ortak bir veri yolunu (8) içerdiği bir aviyonik sistem (1) olup, aviyonik sistemin (1) özelliği aviyonik sistem yazılımının, çalıştırıldığında, çok çekirdekli işlemcideki (3) çekirdeklerin (4), atanmış veri yolu bant genişliği paylaşımlarına göre veri yolu bant genişliğini paylaşarak ortak veri yolu (8) üzerinden belleğe (6) erişmesini sağlayacak şekilde tasarlanmış olmasıdır.

Description

TARIFNAME ÇOK ÇEKIRDEKLI ISLEMCILERE SAHIP AVIYONIK SISTEMLERDE KATI GERÇEK ZAMANLI, GÜVENLIK AÇISINDAN KRITIK UYGULAMALARA YÖNELIK BELGELENEBILIR DETERMINISTIK SISTEM YAZILIMI ÇERÇEVESI Bulusun Teknik Alani Mevcut bulus, genel olarak aviyonik sistemler, yani havacilik ve uzay teknolojisinde uçaklar, yapay uydular ve uzay araçlarinda kullanilan elektronik sistemler ve özellikle de çok çekirdekli islemcilere sahip aviyonik sistemlerde kati gerçek zamanli, güvenlik açisindan kritik uygulamalara yönelik belgelenebilir deterministik sistem yazilimi çerçevesi ile ilgilidir.
Teknigin Bilinen Durumu Bilindigi gibi, aviyonik (havacilik ve elektronik) sistemler, uçak maliyetlerinin artan bir kismini temsil etmektedir ve navigasyon, rehberlik, stabilite, yakit yönetimi, hava/yer iletisimleri, yolcu eglenceleri, uçus kontrolü, uçus yönetimi vb. gibi çesitli uygulamalardan sorumludur.
Aviyonik sistemler, uçaklarin merkezi bilesenleri haline gelmistir ve güvenlik, ekipman arizalarina karsi dayaniklilik, determinizm ve gerçek zamanlilik gibi çok çesitli gereklilikleri saglamalari gerekmektedir.
Bu gerekliliklere cevap olarak, uçak üreticileri, en güncel uçaklari donatan yeni Entegre Modüler Aviyonik (EMA) sistem mimarisi de dahil olmak üzere farkli aviyonik sistem mimarilerini önermislerdir ve aviyonik sistemlerin kendi özel aviyonik kaynaklarina sahip oldugu geleneksel aviyonik mimarilerden farkli olarak, aviyonik kaynaklar birkaç aviyonik sistem tarafindan paylasilmaktadir. Genel olarak paylasilan aviyonik kaynaklar gerçek zamanli iletisim protokollerine sahip gerçek zamanli isletim sistemleri veya yerel alan agi olan bilgisayarlardir. 41 08/ E PITR Gelismekte olan IMA sistemi mimarisi, kablolu hareket (x-by-wire) olarak adlandirilan dagilimli uygulamalarin gelistirilmesine, yani farkli elektronik bilesenleri baglamak için gerçek zamanli iletisim agina güvenen direksiyon, frenleme, uçus kontrolü gibi güvenlikle ilgili aviyonik uygulamalarinin gelistirilmesine katkida bulunmustur.
Aviyonik sistemlerin karsilamasi gereken kisitlamalar arasinda gerçek zamanlilik kisitlamalari önemli bir rol oynamaktadir ve uçak ve sistem düzeyindeki mimari tasarim üzerinde ve onaylama/belgelendirme sürecinde dogrudan etkiye sahiptir. Bu nedenle uçak üreticileri, belgelendirme yetkilileri tarafindan kabul edilen araçlari kullanarak uluslararasi düzenlemelere uyum göstermek zorundadir. Bu, güvenlik gereksinimlerinin uygulandiginin gösterilmesini, iletisimin öngörülebilirliginin saglanmasini, gerçek zamanlilik performanslarinin hesaplanmasini ve siki gelistirme yönergelerine göre yazilim ve donanim gelistirilmesini içermektedir.
Paralel olarak, bilgi islem ve iletisim teknolojileri ile islemci üretim teknolojileri de gelismekte ve aviyonik sistemler Için yeni çözümler önerilmektedir. Özellikle son yillarda, aviyonik dahil olmak 'üzere tüm ticari alanlarda, tek çekirdekli islemcilerin asamali olarak yok olusu ve çok çekirdekli islemcilerin, yani birkaç çekirdegi entegre eden çiplerin asamali olarak ortaya çikisi tecrübe edilmistir. Çekirdekler arasinda kaynak paylasimi sayesinde yüksek entegrasyon ve watt basina iyi bir performansa sahiptirler. Bu nedenle, yüksek bilgi islem gücü nedeniyle ümit vaat eden firsatlar sunmaktadirlar. Uygun sekilde kontrol edilen çok çekirdekli sistemlerin, kisa tepki süreleri ve büyük hesaplamalara ihtiyaç duyan karmasik uçus kontrol sistemleri gibi karmasik uygulamalarin ihtiyaç duydugu hesaplama gücünde uygun bir artis saglayacagi beklenmektedir. Standart çok çekirdekli islemciler ortalama olarak çip ile bütünlesik 2 ila 8 çekirdek içermekte, ancak çekirdek sayisi 16 kadar yüksek olabilmektedir. Çekirdeklerin genellikle bir ya da iki seviyede özel talimatlari ve veri önbellekleri vardir ve ana bellege olan ortak bir veri yolunun yani sira ek bir seviyeyi paylasmaktadirlar. Bu tür mimariler genellikle, çok uygun paylasimli bellek programlama modelinde tasarlanan 41 08/ E PITR paralel uygulamalari çalistirmaya imkan veren donanim önbellek tutarlilik düzenleri uygulamaktadir.
Bununla birlikte, çok çekirdekli islemcileri aviyonik sistemlere yerlestirmek bir zorluktur.
Aslinda, çok çekirdekli islemciler, kaynak paylasimini yönetmek için yogun kaynak paylasimi ve önceden tahmin edilemeyen birçok mekanizmayi içermekte, bu da zamanin öngörülebilirligini saglamayi zorlastirmaktadir.
Kaynak paylasimi, güvenlik açisindan kritik olan sistemlerin zamanlama analizini, eger imkansiz degilse, çok karmasik hale getirmektedir. Bu, özellikle önbellek tutarlilik denetleyicisinin örtülü iletisim ürettigi durumlarda, tüm olasi görevler-arasi çatismalarin dikkate alinmasinin zorlugundan kaynaklanmaktadir. Özellikle, aviyonik güvenlik açisindan kritik sistem tasarimcilarinin karsilamasi gereken zorluklar, kati gerçek zamanlilik gerekliliklerinin her zaman karsilandigini dogrulamak için herhangi bir görev için en kötü durum yürütme zamanini (WCET), en kötü durum iletisim zamanini ve en kötü durum bellek erisim zamanini belirlemektir.
En kötü durum analizini gelistirmek için çesitli yaklasimlar mevcuttur veya önerilmistir.
Bir birinci yaklasim, güvenlik açisindan kritik uygulamalarin deterministik davranisinin, güvenlik açisindan kritik uygulamalarin sadece tek çekirdege uygulanmasi saglanarak garanti edildigi ve diger çekirdeklerin kullanilmadigi, belirli öngörülebilir çok çekirdekli islemci mimarileri tasarlamaktir.
Ikinci bir yaklasim, ilgili zaman araliklarindaki güvenlik açisindan kritik uygulamalarin davranisini kisitlayan ve öngörülemeyen davranislarin sayisini azaltan kurallarin tanimlandigi bir yürütme modelinin uygulandigi zaman odakli bir yaklasimdir.
Yukaridakilere ek olarak, ABD Federal Havacilik Idaresi (FAA) ve Avrupa Havacilik Güvenligi Ajansi (EASA) gibi havacilik belgelendirme kurumlari, çok çekirdekli islemcilerin potansiyel deterministik olmayan mimarileri ve bu islemcileri içine alan sistemlerin genel karmasikligi nedeniyle güvenlik açisindan kritik aviyonik sistemlerde (Tasarim Güvencesi 41 08/ E PITR Düzeyi (DAL) A, B veya C) Çok Çekirdekli islemcilerin (MCP'Ier) kullanimi konusunda endise duymaktadir.
Tüm bu nedenlerden ötürü, kati gerçek zamanli, güvenlik açisindan kritik aviyonik uygulamalarin hayata geçirilmesinin amaçlandigi aviyonik sistemlerde çok çekirdekli islemcilerin kullanilmasi su anda aviyonik sistem tasarimcilari için zor bir görevdir ve en önemli sorunlardan biri, risklerin azaltilmasinin, özellikle zaman ve maliyet olmak üzere farkli bakis açilarindan çok agir olabilecegi gerçeginden kaynaklanan en kötü durum öngörülebilirligidir. veri yoluna sahip olan çok çekirdekli bir aviyonik sistemde deterministik dbngüleri olan talimatlarin yüklenmesi ve yürütülmesi için bir yöntem ve bir cihazi açiklamaktadir. Bu aviyonik sistem, her bir çekirdegin özel bir bellek içerdigi en az iki çekirdek ve bir bellek denetleyicisi içeren çok çekirdekli bir islemci Içermektedir. Çok sayida talimat, bir birinci yürütme araligi sirasinda bir birinci çekirdegin, özel belleginde saklanan en az bir veri parçasini iletmek ve en az bir baslangiç noktasini ve özel belleginde bulunan çok sayida talimat arasindan bir talimati almak ve saklamak için bellek denetleyicisine erisimi varken ikinci çekirdegin bellek denetleyicisine erisiminin olmadigi ve özel belleginde önceden saklanmis olan en az bir talimati yürüttügü sekilde ve ikinci bir yürütme araligi sirasinda iki çekirdegin rollerinin tersine çevrildigi sekilde yüklenmekte ve yürütülmektedir.
Yukarida açiklanan önceki teknik yaklasimlari, temel olarak, ya çok çekirdekli islemcideki tek bir çekirdegin çalismasina izin verildigi çekirdek kisitlayici bir paradigmaya ya da çok çekirdekli islemcideki çekirdeklerin eszamanli olarak çalismalarinin engelledigi, ancak iliskili zaman araliklarinda çalismalarina izin verildigi ve böylece bir hesaplama kaynagi atigina yol açtigi zaman kisitlayici bir paradigmaya dayanmaktadir.
US 8,943,287 B1 sayili patent belgesi, bellekten erisim hizini sinirlamak üzere yapilandirilmis çok çekirdekli bir islemci sistemini açiklamaktadir. Çok çekirdekli islemci sistemi, bir dizi çekirdek, bir bellek sistemi ve çekirdekleri ve bellek sistemini birbirine baglayan ortak erisimli bir veri yolunu içermektedir. Her bir çekirdek, bir çekirdek islemcisi, çekirdek islemcisine islevsel olarak bagli özel bir çekirdek önbellegi ve özel çekirdek 41 08/ E PITR önbellegine islevsel olarak bagli bir çekirdek islemci hizi sinirlayicisi içermektedir. Bellek sistemi, fiziksel bellegi, tercihen bir çift veri orani (DDR) bellegi ve daha spesifik olarak DDR SDRAM bellegi, fiziksel bellege bagli bir bellek denetleyicisi ve bellek denetleyicisine bagli özel bir bellek önbellegi içermektedir. Çekirdek islemci hizi sinirlayicilari, bellek sisteminden her bir ilgili çekirdek islemcisinin veriye eristigi hizi sinirlayacagi, böylece her bir çekirdek islemci bellegi erisiminin beklenen bir degerle sinirlandirilabilecegi sekilde yapilandirilmistir. Hiz sinirlandirmasinin bir sonucu olarak, çok çekirdekli islemci sistemi, çekirdek islemcileri arasinda asenkron çalisma saglarken, islem sürelerini karsilamak için gereken DDR bant genisligi garanti edilmektedir.
Bulusun Konusu ve Kisa Açiklamasi Basvuru sahibi, US 8,943,287 B1 sayili patent belgesinde açiklanan, çok çekirdekli islemcideki çekirdeklerin asenkron çalismasina neden olan yaklasimin, US 8,943,287 B1 sayili patent belgesinde ele alinan ve güvenlik gereksinimlerini karsilamak için aviyonik sistemlerde çok çekirdekli islemci sistemlerinin çalismasina uygulanacak nispeten yüksek sayida kisitlamadan kaynaklanan önceki teknik yaklasimlarinin eksikliklerinin ortadan kaldirmayi amaçlandigini görmüs olup, burada US 8,943,287 B1sayili patent belgesinde islemci basina çekirdek sayisi arttikça kötülesen eksiklikler, çok çekirdekli islemcilerin aviyonik sistemlerde verimsiz veya düsük verimli kullaniminda ve istenmeyen ölü zamanlar, çok çekirdekli islemcilerdeki çekirdeklerin senkronize edilmesi gerekliligi ile sonuçlandiginda, nispeten karmasik tasarim yaklasiminda tanimlanmaktadir.
Mevcut bulusun amaci, kati gerçek zamanli, güvenlik açisindan kritik uygulamalarin gerçek-deterministik davranisini olumsuz yönde etkilemeden, gerçek zamanli, güvenlik açisindan kritik aviyonik uygulamalarinin uygulanmasini amaçlayan aviyonik sistemlere gömülü çok çekirdekli islemcilerin hesaplama kaynaklarinin kullanilmasina izin veren bir aviyonik sistem yazilimi çerçevesi saglamaktir.
Mevcut bulus, ekli istemlerde talep edildigi gibi bir aviyonik sistem, bir aviyonik sistem yazilimi, bir aviyonik sistemdeki veri yolu bant genisligini paylasma yöntemi ve bir aviyonik sistemdeki veri yolu bant genisligi paylasimlarini belirleme yöntemi ile ilgilidir. 41 08/ E PITR Sekillerin Kisa Açiklamasi Sekil 1, kati gerçek zamanli, güvenlik açisindan kritik bir aviyonik sisteme yerlesik çok çekirdekli bir merkezi islem biriminin bir blok diyagramini sematik olarak göstermektedir.
Sekil 2, çok çekirdekli merkezi islem birimindeki çekirdekler arasindaki büyük ve küçük zaman bölmeli senkronizasyonu sematik olarak göstermektedir.
Sekil 3, çekirdekler arasinda senkronize olarak, atanmis veri yolu bant genisligi paylasimlarina karsi çekirdekler tarafindan veri yolu bant genisligi kullanimlarinin periyodik kontrollerini sematik olarak göstermektedir.
Sekil 4, bir çekirdek tarafindan gerçeklestirilen bir bant genisligi kontrol islemini göstermektedir.
Bulusun Uvgulamalarinin Avrintili Açiklamasi Sekil 1, uçus kontrolü, uçus yönetimi, navigasyon, rehberlik, stabilite, yakit yönetimi, hava/yer iletisimi vb. gibi kati gerçek zamanli, güvenlik açisindan kritik uygulamalari uygulamak için çok çekirdekli bir merkezi islem birimi (CPU) (2) içeren bir aviyonik sistemin (1) bir blok diyagramini sematik olarak göstermektedir.
Merkezi islem birimi (2), uygun bir sekilde, bir ARM mimarisine (Advanced veya Acorn RISC Machine) sahiptir ve çok sayida çekirdege (4) sahip çok çekirdekli bir islemci (3), çok çekirdekli islemci (3) tarafindan çalistirilabilen bir aviyonik sistem yazilimi, çok çekirdekli islemciye (3) bir saat sinyali (CK) saglamak üzere tasarlanmis bir saat üreteci (5), bir ilgili bellek denetleyicisine (7) sahip bir bellek (8) ve çok çekirdekli islemcinin (3) ilgili bellek denetleyicisi (7) araciligiyla hem bellege (6) hem de gömülü çevre birimlerinin (9) yani sira ilgili I/ 0 arabirimleri (gösterilmemistir) araciligiyla harici aygitlara erisebildigi bir ortak veri yolu (8) içermektedir. 41 08/ E PITR Genis çerçevede, çok çekirdekli CPU (2) tarafindan yürütülen her bir kati gerçek zamanli, güvenlik açisindan kritik aviyonik uygulamanin belgelenebilir gerçek deterministik davranisi, çok çekirdekli islemcideki (3) çekirdeklerin (4), atanmis veri yolu bant genisligi paylasimlarina göre veri yolu bant genisligini paylasarak, ortak veri yolu (8) üzerinden bellege (6) erismesini saglamak için tasarlanmis bir aviyonik sistem yazilimi saglayarak elde edilmektedir.
Veri yolu bant genisligi, farkli kriterlere dayali olarak çok çekirdekli islemcideki (3) çekirdekler (4) arasinda paylasilabilmektedir. Tercih edilen bir uygulamada, veri yolu bant genisligi, çok çekirdekli islemcideki (3) çekirdekler (4) arasinda uygun bir sekilde esit olarak paylasilabilmektedir, böylece atanmis veri yolu bant genisligi paylasimlari, çekirdekler (4) arasinda esit olmaktadir. Bir baska uygulamada, veri yolu bant genisligi, çok çekirdekli islemcideki (3) çekirdekler (4) arasinda gerçek veri yolu bant genisligi kullanimina dayali olarak uygun bir sekilde paylasilabilmektedir.
Atanmis veri yolu bant genisligi paylasimlarinin çekirdekler (4) tarafindan karsilanmasini garantilemek için, aviyonik sistem yazilimi asagidakileri saglamak üzere tasarlanmistir: o çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan gerçek veri yolu bant genisligi faydalanimlarinin veya kullanimlarinin, atanmis veri yolu bant genisligi paylasimlarini eninde sonunda asan çekirdekleri (4) belirlemek için, atanmis veri yolu bant genisligi paylasimlarina karsi periyodik olarak kontrol edilmesi için programlanmasi, ve o atanmis veri yolu bant genisligi paylasimlarini astigi belirlenen çekirdeklerin (4), bu asimlari telafi etmek amaciyla bosta kalmasi için programlanmasi. Çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan veri yolu bant genisligi kullanimlari, ilgili çekirdekler (4) tarafindan yapilabilen aktivitelerin veya bunlarin çalismasi ile ilgili olaylarin sayilarini saymak ve depolamak için programlanabilir olan ve çekirdekler (4) içine yerlestirilmis olan, performans sayaçlari (10) olarak bilinen özel amaçli donanim yazmaçlarina basvurarak uygun sekilde belirlenmektedir.
Bu özelligi uygulamaya koymak için, aviyonik sistem yazilimi, çalistirildiginda asagidakileri saglayacak sekilde tasarlanmistir: 41 08/ E PITR . performans sayaçlarinin (10) çok çekirdekli islemcideki (3) çekirdeklerin (4) erisim sayilarini saymasi ve ortak veri yolu (8) araciligiyla bellege (6) depolamasi, böylece performans sayaçlarinda (10) depolanan sayilarin, diger sart/ar degismeden, özellikle çok çekirdekli islemcinin (3) çalisma frekansi ve ortak veri yolu (8) üzerinden aktarilan veri boyutuna göre, çok çekirdekli islemcideki (3) ilgili çekirdekler (4) tarafindan gerçek veri yolu bant genisligi kullanimlarinin göstergesi olmasi ile sonuçlanmaktadir, i programlanacak olan performans sayaçlarinin (10) periyodik olarak okunmasi ve programlanacak olan performans sayaçlarindan (10) okunan sayimlarin, atanmis veri yolu bant genisligi paylasimlarini eninde sonunda asan çekirdeklerin (4) belirlemek için çok çekirdekli islemcideki (3) çekirdeklere (4) atanmis veri yolu bant genisligi paylasimlarinin göstergesi olan karsilik gelen atanmis degerlere karsi periyodik olarak kontrol edilmesi, ve . atanmis veri yolu bant genisligi paylasimlarini astigi belirlenen çok çekirdekli islemcideki (3) çekirdeklerin (4), bu asimlari telafi etmek için sonraki programli kontroller arasinda bir veya daha fazla zaman araligi boyunca bosta kalmasi. Çok çekirdekli bir islemcideki (3) bir çekirdegin (4) tipik olarak, genellikle dört veya alti arasinda birden çok ilgili programlanabilir performans sayaci (10) ile saglandigi ve performans sayaçlarinin (10) kapasitelerinin merkezi islem biriminin (2) mimarisine bagli olarak degisebilecegi gerçegi dikkate alindiginda, aviyonik sistem yazilimi, bir çekirdegin (4) ortak veri yolu (8) araciligiyla bellege (6) olan erisim sayilarinin, ya çok çekirdekli islemcideki (3) çekirdekler (4), bir çekirdegin (4) ortak veri yolu (8) araciligiyla bellege (6) olan erisim sayisini dogrudan sayabilen performans sayaçlariyla (10) donatildiginda tek bir performans sayaci (10) vasitasiyla ya da çok çekirdekli islemcideki (3) çekirdekler (4), bir çekirdegin (4) ortak veri yolu (8) araciligiyla bellege (6) olan erisim sayisini dogrudan sayamayan performans sayaçlariyla (10) donatildiginda iki veya daha fazla performans sayacina (10) basvurarak sayilmasini saglayacak sekilde tasarlanabilmektedir.
Ikinci durumda, aviyonik sistem yazilimi bu nedenle, bir birinci performans sayacinin (10) veri önbellek satiri okuma ve yazma islemlerinin sayisini saymasina, bir ikinci performans sayacinin (10) talimat önbellegi satir okuma islemlerinin sayisini saymasina ve bir üçüncü performans sayaci (10) ve bir dördüncü performans sayacinin (10) TLB (Etkin Sayfalar 41 08/ E PITR Önbellegi) önbellek dolum islemlerinin sayisini saymasini saglayacak sekilde tasarlanabilmektedir.
Aviyonik sistem yazilimi ayrica, bir çekirdegin (4) ortak veri yolu (8) üzerinden bellege (6) erisim sayisinin, veri önbellek satiri okuma ve yazma islemleri, talimat önbellek satiri okuma islemleri ve TLB önbellek dolum islemlerinin sayilan sayisinin toplami olarak hesaplanmasini saglayacak sekilde tasarlanabilmektedir. Özellikle, bir çekirdegin (4) ortak veri yolu (8) üzerinden bellege (6) erisim sayisi, L10*CACH EHWB { veri onbellegi sonradan yazma ) + L15_CACHE_REFILL (talimat Onbellegi dolumu } + k . LlwTLßREFgLL (ven ve talimat TLB 'onbellegi dolumu } burada k, veri önbellek satiri boyutu ile TLB önbellek giris boyutu arasindaki orandir ve L1D_CACHE_WB performans sayacinin, çekirdek kontrol yazmacini “önbellek kirliligini önleyen optimizasyon mekanizmasini engelleme” seklinde programlayarak, veri önbellek okuma ve satir yazma islemlerinin sayisini dogru bir sekilde hesaplamasi saglanmaktadir. Bu sekilde tüm bellek erisimleri önbellekten geçmeye zorlanmaktadir.
Ayrica, performans sayaçlarinda (10) depolanan ve çok çekirdekli islemcideki (3) çekirdeklerin (4) ortak veri yolu (8) üzerinden bellege (6) erisim sayisini temsil eden sayimlarin çok çekirdekli islemcinin (3) gerçek kullanimi sirasinda sadik ve güvenilir en kötü veri yolu bant genisligi kullanimi olmasini garanti etmek için aviyonik sistem yazilimi, çalistirildiginda, çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan çevre birimlerine (9) erisimin, çekirdeklerden (4) sadece biri tarafindan uygun bir sekilde yönetilebilmesine, böylece çevre birimlere (9) erisim için bir ana çekirdek (4) olarak hareket etmesine ve bu nedenle, bunlara sadece ana çekirdek (4) tarafindan dogrudan erisilebilmesine ve diger çekirdekler (4) tarafindan dolayli olarak erisilebilmesine, dolayisiyla çevre birimlere (9) erisim için ana çekirdege göre ikincil çekirdekler (4) olarak hareket etmelerini saglayacak sekilde tasarlanmistir. 41 08/ E PITR Bu özelligin pratikte uygulanabilmesi için aviyonik sistem yazilimi, çalistirildiginda, çevre birimlerinin (9) sanallastirilmasina, böylece güvenlik açisindan kritik uygulamalarin, Uygulama Programlama Arabirimleri (APFIer) kullanilarak ilgili mantiksal portlar vasitasiyla dolayli olarak çevre birimlerine (9) erisim saglayan farkli çekirdekler (4) tarafindan yürütülmesini saglayacak sekilde tasarlanmistir. Port kimlikleri ve çevre birimleri (9) arasindaki iliskiler derleme zamaninda yapilmaktadir. Çevre birimlerinin (9) tek bir çekirdek (4) tarafindan yönetilmesinin saglanmasi, farkli çekirdekler (4) tarafindan çevre birimlerine (9) rakip/çelisen/eszamanli erisim nedeniyle çevre birimlerinde olusan uyusmazliklari ve yaniltici verileri önlemenin yani sira tasarim geregi çevre birimlerine (9) erismemesi gereken, güvenlik açisindan kritik uygulamalar tarafindan çevre birimlerine (9) beklenmedik erisimi de önlemekte, böylece çekirdekler (4) arasindaki uyusmazligin, bellege (6) erisim için ortak veri yoluna (8) erisimle sinirlandirilmasina sebep olmaktadir.
Ana çekirdegin (4), ya yalnizca ya da atanmis diger görevlere ek olarak çevre birimlerine (9) erisimi yönetmesi saglanabilmektedir. Ana çekirdegin (4) yalnizca çevre birimlerine (9) erisimi yönetmesi saglandiginda ve ana çekirdege (4) bagli performans sayaçlarinin (10) sadece bellege (6) olan erisim sayisini saymasi saglanabildiginde veya gerçekten saglandiginda, aviyonik sistem yazilimi, ana çekirdegin (4), ya buradan veri okumak için ya da buraya veri yazmak için çevre birimine (9) erisimini saglamak, sirasiyla bunu takiben ya da öncesinde, ya çevre biriminden (9) okunmus olan veriyi bellege (6) yazmak için ya da çevre birimine (9) yazilmis olan veriyi bellekten (6) okumak için ana çekirdegin (4) bellege (6) karsilik gelen bir erisimini saglamak için tasarlanabilmektedir. Çevre birimi erisimleri ve bellek erisimleri arasindaki bu iliski, bir çevre birimine (9) erismek için gereken veri yolu bant genisliginin bellege (6) erismek için gerekli olan veri yolu bant genisligine dayali olarak hesaplanabilir hale gelmesi ile sonuçlanmaktadir. Özellikle, ana çekirdegin (4) bir çevre birimine (9) erismesi için gereken sürenin, bellege (6) erismek için gerekli olandan daha uzun olabilecegi ve tipik olarak daha uzun oldugu, böylece ana çekirdege (4) atanmis veri yolu bant genisligi paylasiminin daha kötü sekilde kullanilmasi ile sonuçlandigi gerçegine bakildiginda, ana çekirdegin (4) bir çevre birimine (9) erisimine, ana çekirdegin (4) bellege (6) erisimine atanmis agirliga göre daha yüksek,10 41 08/ E PITR özellikle iki kat veya daha fazlasi bir agirlik atanabilmekte, böylece ana çekirdegin (4) çevre birimine (9) erismek için gerek duydugu veri yolu bant genisliginin, bellege (6) erismek için gereken veri yolu bant genisligi temelinde ve ana çekirdegin (4) çevre birimine (9) ve bellege (6) erisimlerine atanmis agirliklar temelinde hesaplanabilir olmasi ile sonuçlanmaktadir. Örnegin, seri bir hat gibi, ortak veri yolu (8) vasitasiyla bellege (6) otonom bir sekilde erisemeyen çevre birimleri (9) tarafindan gerçek veri yolu bant genisligi kullanimini hesaba katmak için, ana çekirdege (4) atanmis olan ve ana çekirdege (4) atanmis veri yolu bant genisligi paylasiminin göstergesi olan deger, ana çekirdege (4) bagli olan performans sayacindan (10) okunan sayinin bir çarpim faktörü ile çarpilmasiyla elde edilen bir degere karsi kontrol edilmekte, böylece çevre birimlerinin (9) gerçek veri yolu bant genisligi kullaniminin ana çekirdege (4) “borç kaydedilmesi” ile sonuçlanmaktadir ve burada, çevre birimine (9) erismek için gerekli olan süre ile bellege (6) erismek için gerekli olan süre arasindaki orana esit olan çarpim faktörü, bir arttirilmaktadir.
Ayrica, bir çevre birimine (9) erisim için atanan agirligin, erisilecek olan çevre biriminin (9) tipine bagimli olmasina saglanabilmektedir. Örnegin, ortak veri yolu (8) vasitasiyla bellege (6) otonom olarak, yani ana çekirdegin (4) katilimi gerekmeksizin erisecek sekilde programlanan ve bellege (6) erisim sayisini saymak için programlanabilir ilgili performans sayaçlari (10) ile donatilmamis olan bir Ethernet hatti gibi çevre birimleri (9) tarafindan gerçek veri yolu bant genisligi kullaniminin hesaba katilmasi için, ana çekirdege (4) atanmis olan ve ana çekirdege (4) atanmis veri yolu bant genisligi paylasiminin göstergesi olan deger, ana çekirdege (4) bagli performans sayacindan (10) okunan sayimlarla iki çarpilarak elde edilen bir degere karsi kontrol edilmekte, böylece Ethernet çevre birimi (9) tarafindan gerçek veri yolu bant genisligi kullaniminin ana çekirdege (4) “borç kaydedilmesi” ile sonuçlanmaktadir.
Ortak veri yolunun (8) bant genisliginin, çok çekirdekli islemcinin (3) ve kullanilan bellegin (6) yani sira, çok çekirdekli islemcinin (3) kullanim sirasinda çalistirilacagi çalisma frekansina bagli oldugu dikkate alindiginda, çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan en kötü durum veri yolu bant genisligi kullanimi, a priyori olarak, asagidakileri10 41 08/ E PITR içeren bir veri yolu bant genisligi karakterizasyon yönteminin uygulanmasiyla belirlenebilmektedir: . çok çekirdekli islemcinin (3), kullanim sirasinda çalistirilacagi sabit çalisma frekansinda çalismasinin saglanmasi, . çok çekirdekli islemcideki (3) çekirdeklerden (4) sadece birinin, bunlarin ortak veri yolu (8) üzerinden bellege (6) erisimi olmayan sonsuz kapali bir döngü içinde çalismasini saglayarak, sabit boyuttaki önbellek satirlarini aktarmak için ortak veri yolu (8) üzerinden bellege (6) tekrar tekrar erismesi saglanirken diger çekirdeklerin (4) ortak veri yoluna (8) erisiminin engellenmesi, . belirli bir sürede isletim çekirdeginin (4) ortak veri yolu (8) üzerinden bellege (6) erisim sayisinin belirlenmesi, ve . belirli bir sürede isletim çekirdeginin (4) ortak veri yolu (8) üzerinden bellege (6) erisim sayisina ve önbellek satirlarinin büyüklügüne bagli olarak çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan en kötü durum veri yolu bant genisligi kullaniminin belirlenmesi.
Isletim çekirdeginin (4) belirli bir sürede ortak veri yolu (8) üzerinden bellege (6) erisim sayisi, isletim çekirdeginin (4) performans sayacina (10) basvurarak ve özellikle bunun, performans sayacinin (10) tasmasini önlemek için uygun sekilde seçilen belirli bir sürede isletim çekirdeginin (4) ortak veri yolu (8) üzerinden bellege (6) erisim sayisini saymasini saglayarak ve ardindan isletim çekirdeginin (4) performans sayacinda (10) depolanan sayimi okuyarak uygun olarak belirlenebilmektedir.
Isletim çekirdeginin (4), ortak veri yolu (8) üzerinden bellege (6) erismesi saglanmaktadir, öyle ki ortak veri yoluna (8) erismeden verilerin okunmasini engellemek için her erisimdeki bellek adresi, önbellek satirlarinin boyutundan daha büyük olan bir miktardaki bir önceki bellek adresinden farkli olmaktadir.
Ayrica, bellek (6), çekirdeklerin (4) istenmeyen üst üste binme durumlarini önlemek için farkli atanmis bellek bölümlerine sahip olacagi sekilde çekirdekler (4) arasinda bblünmektedir. 41 08/ E PITR Sinirlayici olmayan bir örnek olarak, süre 100 mikro saniye olarak, çok çekirdekli islemcinin (3) kullanim sirasinda çalistirildigi çalisma frekansi 800 MHz olarak ve önbellek satirlarinin boyutu 32 Byte olarak seçildiginde, isletim çekirdeginin (4) ortak veri yolu (8) üzerinden bellege (6) erisim sayisi 100 mikro saniye içinde 1.500'dur ve en kötü durum veri yolu bant genisligi kullanimi, sonuçta, 480 Mbyte/sn'dir.
Sekil 2, 3 ve 4, aviyonik sistem operasyonunun büyük ve küçük olarak anilan unsurlara dayandigi tipik bir aviyonik ortamda yukarida açiklanan özelliklerin uygulamaya konulmus halini göstermektedir, burada bir büyük unsur, önceden belirlenmis bir sayidaki, örnegin 32 veya 64 küçük unsurun gerçeklestirildigi bir döngü iken bir küçük unsur ise, önceden belirlenmis aktivitelerin gerçeklestirildigi ve genellikle birkaç veya bir kaç on milisaniye kadar, örnegin 20 milisaniyelik büyüklügünün oldugu bir süredir. Takdir edilebilecegi gibi, bir büyük unsurdaki küçük unsurlar, ayni küçük unsur süresine sahiptir ve çekirdekler (4) arasinda senkronize edilmektedir.
Sekil 3, buna karsin, ikincil bir süre ile bunun geçilmesi sonrasinda, çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan gerçek veri yolu bant genisligi kullanimlarinin, atanmis veri yolu bant genisligi paylasimlarini eninde sonunda asan çekirdekleri (4) belirlemek üzere atanmis veri yolu bant genisligi paylasimlarina karsi periyodik olarak kontrol edildigi, veri yolu bant genisligi öge boyu (granularity) süreleri olarak adlandirilan süreler arasindaki iliskiyi karsilastirmali olarak göstermektedir.
Takdir edilebilecegi gibi periyodik kontroller, çekirdekler (4) arasinda senkronize edilmekte, böylece gerçek veri yolu bant genisligi kullanimlarinin çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan es zamanli olarak kontrol edilmesi ile sonuçlanmaktadir.
Ikincil bir sürede önemli sayida periyodik kontrol saglamak için, veri yolu bant genisligi öge boyu süresi, ikincil süreden önemli ölçüde daha düsük olacak sekilde, uygun bir biçimde büyüklük derecesi bakimindan ikincil süreden bir veya daha fazla derecede düsük olacak sekilde, daha uygun olarak, çok çekirdekli islemcideki (3) çekirdeklerin (4) sayisinin bir fonksiyonu olarak, örnegin çekirdeklerin (4) sayisinin en az on kati olarak seçilmelidir. 41 08/ E PITR Son olarak Sekil 4, çekirdeklerden (4) birine göre gerçeklestirilen bir periyodik kontrolü göstermektedir. Bir veri yolu bant genisligi öge boyu süresi geçtikten sonra, veri yolu bant genisligi öge boyu süresi içinde çekirdek (4) tarafindan kullanilan gerçek veri yolu bant genisligi, ilgili performans sayacinda (10) depolanan sayima göre belirlenmekte ve daha sonra atanmis veri yolu bant genisligi paylasimina karsi kontrol edilmektedir. Gerçek veri yolu bant genisligi kullaniminin, atanmis veri yolu bant genisligi paylasimindan daha düsük oldugu belirlenirse, çekirdegin (4), bir sonraki veri yolu bant genisligi öge boyu süresi boyunca normal olarak çalismasina izin verilmektedir. Bunun yerine, gerçek veri yolu bant genisligi kullaniminin, atanmis veri yolu bant genisligi paylasimindan daha yüksek oldugu ve dolayisiyla atanmis veri yolu bant genisligini astigi belirlenirse, çekirdek (4), bu asimi telafi etmek için sonraki veri yolu bant genisligi öge boyu sürelerinin bir veya daha fazlasi sirasinda bosta kalmaktadir, burada çekirdegin (4) bosta kaldigi sirada veri yolu bant genisligi öge boyu sürelerinin sayisi, asim miktarina baglidir ve özellikle de, atanmis veri yolu bant genisligi paylasimini asim hizina esittir.
Gayet açiktir ki, bir veri yolu bant genisligi öge boyu süresi içinde bir çekirdek (4) tarafindan bir gerçek veri yolu bant genisligi kullaniminin belirlenmesi için çekirdege (4) bagli performans sayacinin (10), her bir kontrolden sonra, performans sayacinda (10) depolanan sayimin sifirlanmasiyla sonuçlanacak sekilde sifirlanmasi gerekmektedir. Bu, bir veri yolu bant genisligi öge boyu süresi sirasinda kullanilmamis veri yolu bant genisliginin kaybolmasi ve dolayisiyla sonraki veri yolu bant genisligi öge boyu süresi boyunca kullanilamamasi ile sonuçlanmaktadir.
US 8,943,287 sayili patent belgesinde açiklanan çözüme kiyasla mevcut bulus, çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan gerçek veri yolu bant genisligi kullanimlarinin kontrollerinin, bir yandan, veri yolu bant genisligi öge boyu süresinin tersine esit bir frekansta periyodik olacagi ve diger yandan çekirdekler (4) arasinda senkronize olacagi sekilde programlanmasini saglamakta, böylece çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan gerçek veri yolu bant genisliginin kullanimlarinin, çok çekirdekli islemcideki (3) tüm çekirdekler (4) üzerinde es zamanli olarak kontrol 41 08/ E PITR Çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan gerçek veri yolu bant genisligi kullaniminin kontrollerinin senkronizasyonu, WCET'nin asagidaki formüle göre avantajli bir sekilde hesaplanabilir olmasiyla sonuçlanmaktadir: N'Fuîeplv alimi! wcm- = WCII-To + i himm-i. - ww ~ ii..) - (Ta WCETO tek bir isletim çekirdeginde tek basina çalisan test edilmis bir uygulamanin WCET'sidir Tstep bant genisligi öge boyu süresidir NTslepNoLimit WCETO ölçümü ile ilgili olan ve isletim çekirdeginin atanmis bir veri yolu bant genisligi paylasimini asmadigi bant genisligi öge boyu süresinin sayisidir Beq yukarida tarif edilen veri yolu bant genisligi karakterizasyon yöntemi sirasinda belirli bir sürede, isletim çekirdeginin (4) ortak veri yolu (8) üzerinden bellege (6) erisimlerinin sayisidir Ncore çok çekirdekli islemcilerdeki (3) çekirdek sayisidir (4) NiealAcci isletim çekirdeginin (4) i'inci bant genisligi öge boyu süresinde performans sayacinda depolanan sayimdir. 41 OB/EPITR 8632950 xw__wm 3.0› :m> xmtO HH \|c.n HH \|o.n MH \iio.n 41 OB/EPITR N @Sw isogx H @Bm %05& 2 %923 N 93 xagx H 93 %53_ N %228 N 9% %02 H 93 %0? H %22& 41 OB/EPITR 3>on mac 3>on ooo Z %923 3>on mon H %993 41 OB/EPITR 1 .:me 323 .:62 000 505.0. goc uno

Claims (1)

  1. ISTEM LER Bir veya daha fazla kati gerçek zamanli, güvenlik açisindan kritik uygulamanin uygulanmasi için bir merkezi islem birimini (2) Içeren, merkezi islem biriminin (2) çok sayida çekirdege (4) sahip bir çok çekirdekli islemciyi (3), bir bellegi (6), çok çekirdekli islemcinin (3) bellege (6) erisebilecegi bir ortak veri yolunu (8) ve çalistirildiginda, çok çekirdekli islemcideki (3) çekirdeklerin (4), atanmis veri yolu bant genisligi paylasimlarina göre veri yolu bant genisligini paylasarak ortak veri yolu (8) üzerinden bellege (6) erismesini saglamak için çok çekirdekli islemci (3) tarafindan çalistirilabilir bir aviyonik sistem yazilimini içerdigi bir aviyonik sistem (1) olup, özelligi aviyonik sistem yaziliminin, çalistirildiginda, çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan gerçek veri yolu bant genisligi kullanimlarinin, çok çekirdekli islemcideki (3), atanmis veri yolu bant genisligi paylasimlarini eninde sonunda asan çekirdekleri (4) belirlemek için atanmis veri yolu bant genisligi paylasimlarina karsi periyodik olarak kontrol edilecek sekilde programlanmasini ve atanmis veri yolu bant genisligi paylasimlarini astigi belirlenmis olan çekirdeklerin (4) bu asimlari telafi etmek için bosta kalacak sekilde programlanmasini saglayacak sekilde tasarlanmis olmasi ve aviyonik sistem yaziliminin ayrica, çalistirildiginda, çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan gerçek veri yolu bant genisligi kullanimlarinin, çok çekirdekli islemcideki (3) çekirdekler (4) tarafindan gerçek veri yolu bant genisligi kullanimlarinin es zamanli olarak kontrol edilmesi için, çekirdekler (4) arasinda senkronize olarak atanmis veri yolu bant genisligi paylasimlarina karsi kontrol edilecek sekilde programlanmasini saglayacak sekilde tasarlanmis olmasidir. Istem 1'e göre aviyonik sistem (1) olup, burada aviyonik sistem yazilimi, çalistirildiginda, atanmis veri yolu bant genisligi paylasimlarini astigi belirlenen, çok çekirdekli islemcideki (3) çekirdeklerin (4), bu asimlari telafi etmek için sonraki programli kontroller arasinda bir veya daha fazla zaman araligi boyunca bosta birakilmasini saglayacak sekilde tasarlanmistir. Onceki istemlerden herhangi birine göre aviyonik sistem (1) olup, burada çok çekirdekli islemcideki (3) çekirdekler (4), ilgili çekirdekler (4) tarafindan gerçeklestirilen aktiviteleri saymak için ilgili performans sayaçlarina (10) sahiptir;10 burada aviyonik sistem yazilimi, çalistirildiginda, performans sayaçlarinin (10), çok çekirdekli islemcideki (3) çekirdeklerin (4) ortak veri yolu (8) üzerinden bellege (6) erisim sayisini saymasini saglayacak, böylece performans sayaçlarindaki (10) sayimlarin, çok çekirdekli islemcideki (3) ilgili çekirdekler (4) tarafindan gerçek veri yolu bant genisligi kullanimlarinin göstergesi olmasini saglayacak sekilde tasarlanmistir; ve burada aviyonik sistem yazilimi ayrica, çalistirildiginda, programlanacak olan performans sayaçlarinin (10) periyodik olarak okunmasi ve programlanacak olan performans sayaçlarindan (10) okunan sayimlarin, atanmis veri yolu bant genisligi paylasimlarini eninde sonunda asan çekirdekleri (4) belirlemek için çok çekirdekli islemcideki (3) çekirdeklere (4) atanmis veri yolu bant genisligi paylasimlarinin göstergesi olan karsilik gelen atanmis degerlere karsi kontrol edilmesini saglayacak sekilde tasarlanmistir. . Istem 3'e göre aviyonik sistem (1) olup, burada aviyonik sistem yazilimi ayrica, çalistirildiginda, bir birinci performans sayacinin (10) veri önbellek satiri yazma ve okuma islemlerinin sayisini saymasini, bir ikinci performans sayacinin (10) talimat önbellegi satir okuma islemlerinin sayisini saymasini ve bir üçüncü performans sayaci (10) ve bir dördüncü performans sayacinin (10) TLB önbellek dolum islemlerinin sayisini saymasini saglayacak sekilde tasarlanmistir ve burada aviyonik sistem yazilimi ayrica, çalistirildiginda, bir çekirdegin (4) ortak veri yolu (8) üzerinden bellege (6) erisim sayisinin, veri önbellek satiri yazma ve okuma islemleri, talimat önbellek satiri okuma islemleri ve TLB önbellek dolum islemlerinin sayilari sayilarinin toplami olarak hesaplanmasini saglayacak sekilde tasarlanmistir. . Onceki istemlerden herhangi birine göre aviyonik sistem (1) olup, burada veri yolu bant genisligi, çok çekirdekli islemcideki (3) çekirdekler (4) arasinda esit olarak paylasilmaktadir. . Onceki istemlerden herhangi birine göre aviyonik sistem (1) olup, burada çok çekirdekli islemcinin (3) ortak veri yolu (8) üzerinde çevre birimlerine (9) erismesi amaçlanmistir ve aviyonik sistem yazilimi, çalistirildiginda, çok çekirdekli islemcideki (3) çekirdeklerden (4) sadece ana çekirdegin, çok çekirdekli islemcideki (3) tüm çekirdekler (4) tarafindan çevre birimlerine (9) erisimi yönetmesini saglayacagi,10 böylece çevre birimlerine (9) yalnizca ana çekirdek (4) tarafindan dogrudan erisilebilirken ikincil çekirdekler (4) tarafindan ana çekirdek üzerinden dolayli olarak erisilebilmesini saglayacak sekilde tasarlanmistir. Istem 6'ya göre aviyonik sistem (1) olup, burada aviyonik sistem yazilimi ayrica, çalistirildiginda, ana çekirdegin (4), buradan veri okumak ya da buraya veri yazmak için bir çevre birimine (9) erisimini, sirasiyla bunu takiben ya da öncesinde, ana çekirdegin (4) bellege (6), çevre biriminden (9) okunmus olan veriyi bellege (6) yazmak için ya da çevre birimine (9) yazilmis olan veriyi bellekten (6) okumak için karsilik gelen erisimini saglayacak, böylece çevre birimi erisimleri ve bellek erisimleri arasinda, bir çevre birimine (9) erismek için gerekli olan veri yolu bant genisliginin, bellege (6) erismek için gerekli olan veri yolu bant genisligine bagli olarak hesaplanabilir olmasi ile sonuçlanan bir iliski kurulmasini saglayacak sekilde tasarlanmistir. Istem 7'ye göre aviyonik sistem (1) olup, burada aviyonik sistem yazilimi ayrica, çalistirildiginda, ana çekirdegin (4) bir çevre birimine (9) erisimine, ana çekirdegin (4) bellege (6) erisimine atanmis agirliga göre daha yüksek bir agirlik atanmasini, böylece bir çevre birimine (9) erismek için gerekli olan veri yolu bant genisliginin, bellege (6) erismek için gerekli olan veri yolu bant genisligi temelinde ve ana çekirdegin (4) çevre birimine (9) ve bellege (6) erisimlerine atanmis agirliklar temelinde hesaplanabilir olmasini saglayacak sekilde tasarlanmistir. Istem 8'e göre aviyonik sistem (1) olup, burada ana çekirdegin (4) bir çevre birimine (9) erisimine atanan agirlik, erisilecek olan çevre biriminin (9) tipine baglidir. Çok çekirdekli islemcinin (3) kullanim sirasinda çalistirilacagi sabit çalisma frekansinda, önceki istemlerden herhangi birine göre olan aviyonik sistemde (1) veri yolu bant genisligini paylasma yöntemi olup, yöntem asagidakileri içermektedir: - çok çekirdekli islemcinin (3) sabit çalisma frekansinda çalismasinin saglanmasi, - çok çekirdekli islemcideki (3) çekirdeklerden (4) sadece ana çekirdegin, sabit boyuttaki önbellek satirlarini aktarmak için ortak veri yolu (8) üzerinden bellege (6) tekrar tekrar erismesinin saglanmasi, - belirli bir sürede ana çekirdeginin (4) ortak veri yolu (8) üzerinden bellege (6) erisim sayisinin belirlenmesi, ve - ana çekirdegin (4) belirli bir sürede ortak veri yolu (8) üzerinden bellege (6) erisim sayisina ve önbellek satirlarinin boyutuna bagli olarak veri yolu bant genisliginin belirlenmesi. Istem 10'a göre yöntem olup, burada çok çekirdekli islemcideki (3) çekirdekler (4), ilgili çekirdekler (4) tarafindan gerçeklestirilen aktiviteleri saymak için ilgili performans sayaçlarina (10) sahiptir; ve burada ana çekirdegin (4) belirli bir sürede ortak veri yolu (8) üzerinden bellege (6) erisim sayisinin belirlenmesi, asagidakileri içermektedir: - ana çekirdegin (4) bir veya daha fazla performans sayacinin (10), ana çekirdegin (4), belirli bir sürede ortak veri yolu (8) üzerinden bellege (6) erisim sayisini saymasinin saglanmasi, - ana çekirdegin (4) belirli bir sürede ortak veri yolu (8) üzerinden bellege (6) erisim sayisina dahil olan, ana çekirdegin (4) performans sayacindaki/sayaçlarindaki (10) sayimin/sayimlarin okunmasi, - performans sayacindan/sayaçlarindan (10) okunan sayima/sayimlara bagli olarak, ana çekirdegin (4) belirli bir sürede ortak veri yolu (8) üzerinde bellege (6) erisim sayisini belirlenmesi. Istemler 10 veya 11'e göre yöntem olup, ayrica asagidakileri içermektedir: - çok çekirdekli islemcideki (3) diger çekirdeklerin (4), ortak veri yolu (8) üzerinden bellege (6) erisim olmaksizin sonsuz kapali bir döngüde çalismasinin saglanmasi. Onceki istem 1 ila 9'dan herhangi birine g'ore olan aviyonik sisteminde (1) yer alan çok çekirdekli islemcideki (3) çekirdeklere (4) atanacak olan veri yolu bant genisligi paylasimlarini belirleme yöntemi olup, yöntem asagidakileri içermektedir: - önceki istem 10 ila 12'den herhangi birinde talep edilen veri yolu bant genisliginin paylasilmasi. Istem 13'e göre yöntem olup, burada veri yolu bant genisliginin çok çekirdekli islemcideki (3) çekirdekler (4) arasinda paylasilmasi asagidakileri içermektedir: - veri yolu bant genisliginin, çok çekirdekli islemcideki (3) çekirdekler (4) arasinda esit olarak paylasilmasi. Bir aviyonik sistemde (1) yer alan çok çekirdekli bir islemciye (3) yüklenebilen bir aviyonik sistem yazilimi olup, çalistirildiginda, aviyonik sistemin (1), istem 10-14`ten herhangi birinde talep edilen tüm yöntem adimlarini gerçeklestirmesini saglayacak sekilde tasarlanmistir.
TR2018/16058T 2016-10-31 2017-10-31 Çok çekirdekli işlemcilere sahip aviyonik sistemlerde katı gerçek zamanlı, güvenlik açısından kritik uygulamalara yönelik belgelenebilir deterministik sistem yazılımı çerçevesi. TR201816058T4 (tr)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
IT201600109768 2016-10-31

Publications (1)

Publication Number Publication Date
TR201816058T4 true TR201816058T4 (tr) 2018-11-21

Family

ID=58701677

Family Applications (1)

Application Number Title Priority Date Filing Date
TR2018/16058T TR201816058T4 (tr) 2016-10-31 2017-10-31 Çok çekirdekli işlemcilere sahip aviyonik sistemlerde katı gerçek zamanlı, güvenlik açısından kritik uygulamalara yönelik belgelenebilir deterministik sistem yazılımı çerçevesi.

Country Status (10)

Country Link
US (1) US10642761B2 (tr)
EP (1) EP3338196B1 (tr)
AU (1) AU2017349775B2 (tr)
BR (1) BR112019008825A2 (tr)
CA (1) CA3041597C (tr)
EA (1) EA035760B1 (tr)
ES (1) ES2689332T3 (tr)
PL (1) PL3338196T3 (tr)
TR (1) TR201816058T4 (tr)
WO (1) WO2018078610A1 (tr)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190243504A1 (en) * 2018-02-05 2019-08-08 Honeywell International Inc. Touch screen controller with data exchange and mining service
FR3084500B1 (fr) * 2018-07-26 2020-07-03 Thales Procede et dispositif electronique d'installation logicielles avioniques sur une plateforme comprenant un processeur multicoeurs, programme d'ordinateur et systeme electronique associes
FR3086780B1 (fr) 2018-09-27 2020-11-06 Thales Sa Systeme et procede d'acces a une ressource partagee
FR3096491A1 (fr) * 2019-05-22 2020-11-27 Airbus Operations gestion d’accès à une ressource partagée PAR une pluralité de cœurS D’UN PROCESSEUR MULTIcœur
US10719477B1 (en) * 2019-06-20 2020-07-21 Semiconductor Components Industries, Llc Methods and system for an integrated circuit
US11106594B2 (en) 2019-09-05 2021-08-31 Advanced Micro Devices, Inc. Quality of service dirty line tracking
DE102019128206B4 (de) 2019-10-18 2022-09-01 Iav Gmbh Ingenieurgesellschaft Auto Und Verkehr Verfahren und Vorrichtung zur statischen Speicherverwaltungsoptimierung bei integrierten Mehrkernprozessoren
US11409643B2 (en) * 2019-11-06 2022-08-09 Honeywell International Inc Systems and methods for simulating worst-case contention to determine worst-case execution time of applications executed on a processor
CN111045980A (zh) * 2019-12-24 2020-04-21 广东嘉泰智能技术有限公司 一种多核处理器
CN114090097A (zh) * 2020-06-30 2022-02-25 中国航发商用航空发动机有限责任公司 发动机控制***和控制软件启动方法
CN112416702B (zh) * 2020-11-05 2024-05-24 中国航空工业集团公司西安航空计算技术研究所 一种混合运行多安全等级任务的安全隔离***
CN116414723A (zh) * 2021-12-30 2023-07-11 中兴通讯股份有限公司 内存带宽的控制方法、装置、电子设备和存储介质

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7337255B2 (en) * 2002-06-12 2008-02-26 The Boeing Company Distributed data handling and processing resources system
FR2946442B1 (fr) 2009-06-05 2011-08-05 Airbus France Procede et dispositif de chargement et d'execution d'instructions a cycles deterministes dans un systeme avionique multi-coeurs ayant un bus dont le temps d'acces est non predictible
US8943287B1 (en) 2012-07-17 2015-01-27 Rockwell Collins, Inc. Multi-core processor system configured to constrain access rate from memory
US9081630B2 (en) * 2012-12-12 2015-07-14 Wind River Systems, Inc. Hardware-implemented semaphore for resource access based on presence of a memory buffer in a memory pool
US9298651B2 (en) * 2013-06-24 2016-03-29 International Business Machines Corporation Continuous in-memory accumulation of hardware performance counter data
US9542263B2 (en) * 2014-09-24 2017-01-10 Nxp Usa, Inc. Electronic device having a runtime integrity checker

Also Published As

Publication number Publication date
US10642761B2 (en) 2020-05-05
US20190340140A1 (en) 2019-11-07
EP3338196B1 (en) 2018-09-19
AU2017349775A1 (en) 2019-06-13
CA3041597C (en) 2020-07-07
EP3338196A1 (en) 2018-06-27
PL3338196T3 (pl) 2019-01-31
EA201990877A1 (ru) 2019-08-30
ES2689332T3 (es) 2018-11-13
EA035760B1 (ru) 2020-08-06
CA3041597A1 (en) 2018-05-03
BR112019008825A2 (pt) 2019-07-09
AU2017349775B2 (en) 2019-06-27
WO2018078610A1 (en) 2018-05-03

Similar Documents

Publication Publication Date Title
TR201816058T4 (tr) Çok çekirdekli işlemcilere sahip aviyonik sistemlerde katı gerçek zamanlı, güvenlik açısından kritik uygulamalara yönelik belgelenebilir deterministik sistem yazılımı çerçevesi.
Tabish et al. A real-time scratchpad-centric os for multi-core embedded systems
Nowotsch et al. Multi-core interference-sensitive WCET analysis leveraging runtime resource capacity enforcement
US4414624A (en) Multiple-microcomputer processing
Hassan et al. Bounding dram interference in cots heterogeneous mpsocs for mixed criticality systems
Sohal et al. E-warp: A system-wide framework for memory bandwidth profiling and management
Löfwenmark et al. Challenges in future avionic systems on multi-core platforms
Ecco et al. Minimizing DRAM rank switching overhead for improved timing bounds and performance
Orozco et al. Toward high-throughput algorithms on many-core architectures
Sohal et al. Profile-driven memory bandwidth management for accelerators and CPUs in QoS-enabled platforms
Boudjadar et al. Performance-aware scheduling of multicore time-critical systems
Panic et al. Enabling TDMA arbitration in the context of MBPTA
Rihani Many-Core Timing Analysis of Real-Time Systems
Bin Controlling execution time variability using COTS for Safety-critical systems
Mascareñas González et al. Heterogeneous multicore SDRAM interference analysis
Boudjadar et al. Schedulability and memory interference analysis of multicore preemptive real-time systems
Tabish Next-generation safety-critical systems using COTS based homogeneous multi-core processors and heterogeneous MPSoCS
Perret Predictable execution on many-core processors
Madl et al. A conservative approximation method for the verification of preemptive scheduling using timed automata
Nie et al. Holistic resource allocation under federated scheduling for parallel real-time tasks
Panić et al. Adapting TDMA arbitration for measurement-based probabilistic timing analysis
Gregorek et al. A transaction-level framework for design-space exploration of hardware-enhanced operating systems
Jamil et al. Measurement-based timing analysis on heterogeneous mpsocs: A practical approach
de Magalhaes et al. On the benchmarking of partitioned real-time systems
Agrawal Hardware Contention-Aware Real-Time Scheduling on Multi-Core Platforms in Safety-Critical Systems