Statik İkili Kod Analiz Araçları
En Kötü Durum Yürütme Süresi (WCET) hesaplaması
Araç: aiT
Bu ne için?
1.
Çok hassas WCET limitlerini hesaplar ve bu hedefin belgelendirilmesine ilişkin kanıt oluşturmak için kullanılabilir.
2.
Fonksiyonel güvenlik standartlarının gerektirdiği şekilde bir yeterlilik paketine sahiptir.
3.
En kötü yürütme süresine sahip yürütme yolunu belirler ve kullanılan belirli işlemcinin boru hattı ve önbellek gibi düşük seviyeli yönlerini dikkate alır. Bu amaçla, biçimsel boru hattı ve önbellek modelleri ile birlikte biçimsel"Soyut Yorumlama" yöntemini kullanır.
4.
Analizi gerçekleştirmek için yalnızca çalıştırılabilir nesne koduna ihtiyaç duyar, ancak kaynak kodu sağlanmışsa, oluşturulan montaj koduyla birlikte çıktıya dahil edilir.
5.
Bir programın veya görevin her bir yolunun yürütme süresini hesaplar ve WCET'e karşılık gelen kritik yolu kırmızıyla işaretler.
6.
İşlemci mimarisi, saat frekansı ve yürütme süresi hesaplaması için gerekli diğer parametrelerle ilgili ek açıklama dosyalarını kullanır.
7.
WCET'in gelişimini izlemek için aracın farklı çalıştırmalarının sonuçlarını grafiksel olarak karşılaştırmaya olanak tanır.
8.
XML tabanlı bir API aracılığıyla modelleme aracı kod oluşturucuları ve sistem düzeyinde planlama araçları ile kullanılabilir.
9.
Bununla birlikte, günümüzün çok çekirdekli işlemcileri, farklı çekirdeklerin birbirleriyle etkileşime girdiği karmaşık yürütme ortamlarında boru hattı ve önbellek etkilerini analiz etmeyi zorlaştıran bir karmaşıklık düzeyine sahiptir. Çekirdekler arası etkileşim aiT içinde resmi olarak modellenemez.
10.
Çok çekirdekli işlemciler için TimeWeaver aracı gereklidir.
Desteklenen İşlemci ve Derleyici Aileleri
- ARM Derleyici
- GCC Derleyici
- Diab C veya Ada
- Green Hills C/C++ veya Ada
- IAR
- Keil ARM
- HighTec LLVM/Clang
- Görevlendirme
- Texas Instruments
- CompCert (INRIA, AbsInt)
- Diab C
- Green Hills C/C
- GCC Derleyici
- Diab C
- Green Hills C/C++ veya Ada
- HighTec GCC
- Görevlendirme
- Code Warrior Derleyici
- GCC Derleyici
- GNAT Pro C++ veya Ada
- Diab C veya Ada
- Green Hills C/C++ veya Ada
- HighTec GCC
- Keil ARM
- CompCert (INRIA, AbsInt)
- GCC Derleyici
- GNAT Pro C++ veya Ada
- Diab C veya Ada
- Green Hills C/C++ veya Ada
- HighTec GCC
- Keil ARM
- CompCert (INRIA, AbsInt)
Diğer işlemciler
- ERC32
- Leon2, Leon3
- Am486, IntelDX4
- i386DX
- C16x, ST10
- HCS 12
- C28X
- C33
- M68020, MCF5307, M68020, MCF5307