İçeriğe atla

ARINC 429 yer test sistemlerinde zamanlama doğrulaması ve deterministik veri yolu testi

Yayın tarihi: 19 dk okuma14 kaynak

ARINC 429 zamanlama doğrulaması üç ölçeği kapsar: mikrosaniye mertebesinde bit ve kelime boşluğu, milisaniye mertebesinde etiket bazında iletim aralığı ve bunlara binen ölçüm belirsizliği. Bu not, fiziksel katman toleranslarını üretici belgelerinden derler; kelime süresi, doluluk ve en kötü durum gecikmesini türetir; yazılım ve donanım zamanlayıcılarını, hata enjeksiyonunu ve döngü geri beslemeyi bir belirsizlik bütçesiyle karşılaştırır.

Kapsam ve kaynak durumu

ARINC 429 spesifikasyonu ücretli ve telifli bir belgedir [1]. Bu notta madde numarası verilmez; değerler spesifikasyonu özetleyen üretici eğitim belgelerinden [1], [2] ve bu değerleri uygulayan bileşen belgelerinden [3], [4] alınmıştır. “Yer test sistemi”, test edilen birimi (device under test, DUT) veri yolu üzerinden uyaran, dinleyen ve zamanlamasını ölçen düzenektir: arayüz kartları, zaman referansı, bağımsız izleyici ve kayıt yazılımı.

Fiziksel katman: zamanlamayı belirleyen parametreler

ARINC 429 tek yönlüdür: bir ekranlı bükümlü çift üzerinde tek verici ve en fazla 20 alıcı bulunur [1], [2]. Kodlama iki kutuplu sıfıra dönüşlüdür (bipolar return-to-zero, RZ): mantıksal 1, bit süresinin ilk yarısında yaklaşık +10 V'a çıkıp NULL'a dönen darbe, mantıksal 0 ise −10 V'a inen darbedir. Her bit NULL'da bittiği için ayrı saat hattı gerekmez; kelime sınırı kelimeler arasındaki NULL boşluğundan çıkarılır [1].

Verici çıkışında diferansiyel seviyeler HIGH +10 V ± 1 V, NULL 0 V ± 0,5 V, LOW −10 V ± 1 V; alıcı kabul bantları ONE +6,5…+13 V, NULL ±2,5 V, ZERO −6,5…−13 V'tur [1], [3]. Kaynak empedansı 75 Ω ± 5 Ω, alıcı giriş empedansı en az 8 kΩ'dur; alıcıdaki gerilim hat uzunluğuna, saplamalara ve alıcı sayısına bağlıdır [1].

Tablo 1. ARINC 429 zamanlama parametreleri
ParametreYüksek hızDüşük hızKaynak
Bit hızı100 kbit/s ± %112…14,5 kbit/s[1], [3]
Bit süresi Y10 μs ± %2,5(1/bit hızı) ± %2,5[1], [2]
Darbe süresi X5 μs ± %5Y/2 ± %5[1], [2]
Yükselme/düşme (%10–%90)1,5 μs ± 0,5 μs10 μs ± 5 μs[2], [3]
En küçük kelime boşluğu4 bit (40 μs)4 bit (276…333 μs)[1], [4]
Alınan darbe genişliği5 μs ± %534,5…41,7 μs[3]

Düşük hız satırlarının tutarlılığı denetlenebilir. Bit süresi

Tb = 1 / fb(1)

olduğundan 12 kbit/s için 83,3 μs, 14,5 kbit/s için 69,0 μs, yarım bitler 41,7 μs ve 34,5 μs'dir; bu, veri sayfasındaki 34,5…41,7 μs aralığıyla birebir örtüşür [3]. Düşük hızda kaynaklar nominal etrafında yüzde yerine %16…21 genişliğinde bir hız aralığı verir, ancak aralığın kendisi kaynaktan kaynağa değişir: 12…14,5 kbit/s [1], [3], 12,5…14,5 kbit/s [2]. Bir osiloskop maske uygulaması ise 12,5 kbit/s için yarım bit genişliğini 38,0…42,0 μs alır [8]; bu sınır 14,5 kbit/s'deki 34,5 μs'lik yarım biti reddeder. Test planı hangi tanımı kullandığını yazmalı, hız aralığını her iki uçta ayrı sınamalıdır. Yüksek hızda bit hızı toleransı ±%1 [1], [3], tekil bit süresininki ±%2,5'tir [1], [2]. İkincil kaynaklar ikisinin ilişkisini açıklamaz; olası yorum ortalama hızın dar, tekil periyodun daha geniş tutulmasıdır. Bu yorum spesifikasyondan teyit edilmediği için iki ölçüt ayrı ayrı uygulanmalıdır.

+10 V 0 V −10 V +6,5 V: ONE alt sınırı +2,5 V: NULL üst sınırı Tb Tb/2 ≥ 4 Tb kelime boşluğu kelime N: bit 30, 31, 32 (P) kelime N+1: ilk üç bit
Şekil 1. İki kutuplu RZ kodlama ve kelime boşluğu (ölçeksiz). Son bitin NULL yarısı o bite aittir; boşluk bit süresinin bitiminden sayılırsa (iki verici veri sayfasındaki uygulama [3], [14]) hatta görünen NULL yaklaşık 4,5 Tb olur. Kesikli çizgiler alıcı kabul sınırlarıdır [1], [3].

Kelime yapısı

Kelime 32 bittir: bit 1–8 etiket (label, sekizlik gösterim), 9–10 kaynak/hedef tanımlayıcısı (source/destination identifier, SDI), 11–29 veri, 30–31 işaret/durum matrisi (sign/status matrix, SSM), 32 tek eşlik [1], [2]. Önce etiket en anlamlı bitinden başlayarak (bit 8…1), sonra bit 9'dan 32'ye gönderilir [1]. BNR'de bit 29 işarettir ve değer ikiye tümleyenli kesirdir; BCD'de her basamak dört bittir; BNR'de SSM 11 “normal çalışma”, 00 “arıza uyarısı”dır [1], [2].

Zamanlama için iki sonuç çıkar. Alıcı etiketi ilk 8 bitte öğrenir, eşliği ise ancak 32. bitten sonra. Ayrıca zaman damgasının kelimenin neresine vurulduğu tanımlanmalıdır. IRIG 106 Bölüm 10, ARINC 429 mesajı için önceki kelimenin başlangıcından bu kelimenin başlangıcına geçen süreyi 0,1 μs adımlı 20 bitlik bir alanda tutar [7]. Başlangıç tanımı hızdan bağımsızdır; kelime sonuna vurulan damga ise düşük hızda 12 ile 14,5 kbit/s arasında (32 bit: 2,667 ms ile 2,207 ms) 460 μs kayar.

Zamanlama doğrulaması neyi kapsar

Bit hızı ve bit süresi

Bit hızı, tekil bit periyodu, darbe genişliği ve kenar süreleri yalnızca dalga biçiminden ölçülebilir. Bir kartın kelimeyi hatasız alması uyumluluk kanıtı değildir: örnek bir alıcı, 1 MHz saatle bitleri 8…12 örnek aralığında kabul ettiğini ve bunun yüksek hızda 83…125 kbit/s, düşük hızda 10,4…15,6 kbit/s penceresi olduğunu belirtir [3]. Bu, ±%1'lik toleransın 17–25 katıdır; aynı belgenin özet cümlesi ise tolerans dışı sinyallerin reddedildiğini söyler. Gerçek kabul sınırı ölçümle belirlenmelidir. Aynı alıcı 1 MHz ± %1 referans ister [3]; bit zamanlaması bu saatten türetilirse saat hatası doğrudan bit hızı hatasıdır ve yüksek hızdaki ±%1 bütçesi tamamen tükenir. Bir FPGA çekirdeği aynı iş için ±%0,01 saat toleransı ister [4].

Ortalama hız, ilk ve son bitin başlangıç kenarları arasındaki 31 Tb üzerinden ölçülürse q = 10 ns kuantalamada bit başına çözünürlük 2q/31 ≈ 0,65 ns olur; sınırlayıcı etken kenar algılamasıdır.

Kelime boşluğu

Kelimeler arasında en az 4 bit süresi NULL bulunmalıdır [1], [4]. Gereksinim bit süresi cinsindendir: 4 Tb, 12 kbit/s'de 333 μs, 12,5'te 320 μs, 14,5'te 276 μs'dir. Boşluğu sabit 330 μs'lik zamanlayıcıyla üreten bir verici 12,5 kbit/s'de 4,1 bit bırakıp geçer, 12 kbit/s'de 3,96 bit bırakıp kalır. Boşluğu mutlak 320 μs bekleyen bir alıcı ise 14,5 kbit/s'deki geçerli trafiği reddeder. İki hata da nominal hızda görünmez.

Ölçüm tanımı da yazılmalıdır. İki bağımsız verici veri sayfası boşluğu aynı biçimde uygular: biri biti 10 saat, NULL yarısını 5 saat, boşluğu 40 saat (1 MHz'de 40 μs) olarak verir [3]; diğeri 100 kbit/s'de 5 μs'lik NULL yarısından sonra 39,6…40,4 μs boşluk ve kelime başına 36 bit süresi tanımlar [14]. İkisinde de hatta görünen kesintisiz NULL yaklaşık 45 μs'dir (4,5 Tb). Spesifikasyonun boşluğu dalga biçiminin neresinden ölçtüğü bu belgelerde yazmaz; tam 4 Tb'lik görünen NULL'ın uyumlu olup olmadığı ikincil kaynaklardan belirlenemez. Osiloskop testi sınırı 4 mü 4,5 Tb mi aldığını belirtmelidir. İlk belgeye göre alıcı, son bitten sonra NULL'ı her bit süresinde örnekler ve sayaç 3'e ulaşınca yeni alımı etkinleştirir [3]; buradan 4 bitten kısa boşlukları kabul edebileceği çıkarılır, ancak bu ölçümle doğrulanmalıdır. Boşluk ihlali DUT alıcısını sınamak için enjekte edilir; DUT vericisinin boşluğu bağımsız ölçümle doğrulanır.

Etiket bazında iletim aralığı

Spesifikasyonun veri standardı tabloları her parametre için en küçük/en büyük iletim aralığını ve bazı etiketler için en büyük taşıma gecikmesini (transport delay) listeler [1], [2]. Örneklerde hava hızı 100…200 ms, BCD enlem (etiket 010) 250…500 ms aralıklarla gönderilir [2]. Test sınırları ise DUT'un arayüz kontrol dokümanından (interface control document, ICD) alınmalıdır. Bir çalışmada bir cihazın standartta kendisine atanandan fazla mesaj yayımladığı gözlenmiştir [9]; ICD ile gerçek trafik farkı da doğrulamanın konusudur.

Etiketin k. yayınının damgası tk, ideal çizelgeden sapması ek ise:

Δk = tk − tk−1 = T + ek − ek−1, |ek| ≤ J ⇒ T − 2J ≤ Δk ≤ T + 2J(2)

Kabul ölçütü Tmin ≤ min Δk ve max Δk ≤ Tmax'tır; uçlar tüm gözlem üzerinden alınır. Eksik bir yayın Δ'yı yaklaşık 2T'ye çıkarır; ortalamada kaybolur, en büyük değerde kalır. (2), çizelgeye göre ±J içinde kalan bir vericinin 4J genişliğinde aralık dağılımı üretebileceğini de gösterir.

t T (planlanan) Δ_k e_(k−1) [Tmin, Tmax] (ICD) kesikli: çizelgedeki anlar · dolu: hattaki gerçek kelime
Şekil 2. Etiket bazında iletim aralığı (ölçeksiz). Kırmızı bant, önceki yayına göre sonrakinin düşmesi gereken ICD penceresidir; karar tüm gözlemdeki en küçük ve en büyük Δk üzerinden verilir.

Zaman damgası: çözünürlük, belirsizlik, taşma

Çözünürlük sayacın bir adımıdır; belirsizlik buna saatin frekans hatasını, damganın vurulduğu olayın değişkenliğini ve damganın donanımda mı yazılımda mı alındığını ekler. Örnek bir kartta damga, 66 MHz saatten türetilen 32 bitlik sayaçtır; varsayılan adım 10 μs'dir, 1 μs ile 1 s arasında ayarlanır [5]. Başka bir kartta aralık ve çözünürlük seçilebilir [6]. 32 bitlik sayaç 1 μs adımda 71,6 dakikada, 10 μs'de 11,9 saatte taşar; gece boyu süren testte sarma düzeltmesi zorunludur. IRIG 106'daki boşluk alanı en fazla 220 × 0,1 μs = 104,86 ms gösterir [7]; daha uzun sessizlikte aralık paket başlığı zamanıyla birleştirilmelidir. Aralıklar ardışık boşluklar toplanarak kurulursa yuvarlama hataları birikir; sürekli sayaçtan alınan mutlak damgalarda birikme olmaz.

Türetmeler: kelime süresi, doluluk, gecikme

Tkelime = (32 + 4) · Tb = 36 Tb(3)

En küçük boşlukla bir kelime yüksek hızda 360 μs, 12,5 kbit/s'de 2,88 ms sürer; bir kart kılavuzu aynı değerleri verir [5]. En yüksek kelime hızı yüksek hızda 2778, düşük hızda 333…403 kelime/s'dir. Periyodik bir çizelgenin doluluğu:

U = Σi ni · 36 Tb / Ti(4)

ni, Ti periyotlu etiket sayısıdır; Ti ICD penceresinin içinde, iki uçtan pay bırakacak biçimde seçilen planlanan periyottur.

Tablo 2. Varsayımsal bir tazeleme planında doluluk
GrupEtiketPeriyot (ms)Kelime/s100 kbit/s12,5 kbit/s
A1250240%8,6%69,1
B30100300%10,8%86,4
C40250160%5,8%46,1
Toplam82—700%25,2%201,6

Aynı plan yüksek hızda veri yolunun dörtte birini kullanır, düşük hızda (14,5 kbit/s'de bile %174) iletilemez. Verici bir kelimeyi yarıda kesemediği için, çizelgedeki kelime o anda gönderilen ve önündeki Nö kelimenin bitmesini bekler:

Dmax = 36 Tb · (1 + Nö)(5)

Yüksek hızda tek kelimelik engelleme 360 μs, önünde 20 kelime olan kuyrukta 7,56 ms'dir. Bir kartın öncelikli asenkron gönderimi “o anki kelime bitince” iletir [5]; en yüksek öncelikte bile 36 Tb'ye kadar engelleme vardır. Gecikme tek yönlü (0…Dmax) olduğundan bu terim tek başına Δmin = T − Dmax, Δmax = T + Dmax verir; bu, (2)'de J = Dmax/2 almaya eşdeğerdir, diğer titreşim kaynakları buna eklenir. 10 ms'lik bir küçük çerçeve (minor frame) yüksek hızda en fazla ⌊10 ms / 360 μs⌋ = 27 kelime taşır; fazlası sonraki çerçeveye kayar ve aralığı sistematik olarak bozar.

Deterministik test: yazılım ve donanım zamanlayıcı

Yazılım zamanlayıcıda titreşim kaynakları

Genel amaçlı işletim sisteminde “her 50 ms'de kelime yaz” döngüsü üç kaynaktan titreşim alır. Zamanlayıcı ayrıntısı: Windows'ta periyodik zamanlayıcı çözünürlüğü milisaniye cinsinden istenir; Windows 11'de pencereye sahip süreç görünmez olursa varsayılandan yüksek çözünürlük garanti edilmez [11], yani pencereyi küçültmek zamanlamayı değiştirebilir. Zamanlama gecikmesi: 24 izole çekirdekli bir sunucuda, diğer çekirdeklere girişim yükü bindirildiğinde cyclictest ile en büyük gecikme standart Linux'ta 104 μs, PREEMPT_RT'de 48 μs raporlanmıştır [10]. Sürücü yolu: verici FIFO'da kelime görür görmez gönderir [3], [4]; hat zamanlaması yazılımın yazma anının titreşimini birebir taşır.

Aynı çalışma, uyanma periyodu uzadıkça girişimin uyanma anına denk gelme olasılığının düştüğünü, bu yüzden uzun periyotla ölçülen en kötü değerin gerçek en kötü durumu göstermediğini not eder [10]. Bir aralıkta olay olasılığı p ise N aralıkta en az bir kez görülme olasılığı:

P = 1 − (1 − p)N ⇒ N = ln(1 − P) / ln(1 − p)(6)

p = 10−5, P = 0,95 için N ≈ 3,0 × 105; 100 ms periyotlu etiket için 8,3 saat. Birkaç dakikalık kabul testi bu sıklıktaki ihlali büyük olasılıkla görmez.

Donanım (FPGA) zamanlayıcı ve zaman damgası

Donanım zamanlayıcıda iletim anı osilatörden türetilen sayaçla belirlenir; yazılım yalnız çizelgeyi ve veriyi günceller. Örnek bir kartta çizelge çözünürlüğü 100 μs, kanal başına 256 etiket ve çift tamponlu 16 küçük çerçevedir [5]. Deterministik olmak, aynı girdiyle aynı bit düzeyinde zaman çizgisinin tekrar üretilmesidir; ince çözünürlük ayrı bir özelliktir. Tekrar üretilebilirlik doğrudan test edilir: aynı çizelge aynı tetikle iki kez koşturulur ve bağımsız izleyicinin damgaları kelime kelime karşılaştırılır. Farklar yalnız kuantalama ve saat farkını yansıtmalıdır.

Alıcı tarafında damga, ilk bitin eşik geçişine donanımda vurulmalı ve sayaç harici bir referanstan (ör. 10 MHz) sürülmelidir; böylece kuantalama ve frekans hatası bilinen büyüklükler olur. Yazılımın FIFO'yu okuduğu anda alınan damga kesme, okuma gecikmesi ve FIFO doluluğunu içerir; iletim aralığı ölçümü olarak kullanılamaz.

Tekrar üretilebilir hata enjeksiyonu

DUT alıcısını sınamak için hatanın zamanı ve biçimi donanım çizelgesinde tanımlanmalı, hattaki gerçekleşmesi bağımsız izleyiciyle kaydedilmelidir; aksi hâlde “DUT algılamadı” ile “hata üretilmedi” ayırt edilemez.

Tablo 3. Hata türleri, üretim ve bağımsız doğrulama
HataÜretimDoğrulama
EşlikEşlik üretecini atlayıp 32. biti veri olarak göndermek [3]; kart özelliği [5], [6]İzleyicide eşlik bayrağı [7]
Boşluk ihlali0–3 bit boşluk [6]Osiloskopta NULL süresi; izleyicide en küçük boşluk algısı [6]
Bit sayısıDestekleyen üreteç veya FPGA vericiİzleyicide bit sayısı hatası [6]
Hız sapmasıProgramlanabilir hız, 10–200 kbit/s [5]31 Tb üzerinden ortalama hız
Yavaş kenarYavaş eğim seçeneği [5]; sürekli tarama için diferansiyel keyfi dalga üreteci%10–%90 süre ölçümü [8]
Düşük genlikSeri direnç veya genliği ayarlı üreteçTepe değeri; ör. 5,4 V'luk ONE darbesi 6,5 V sınırını geçemez [8]

Ticari kartlar hız ve eşlik gibi sayısal hataları kolayca üretir; kenar süresi ve genlik ise çoğunlukla birkaç sabit değerle sınırlıdır. Tarama gerekiyorsa dalga biçimi keyfi dalga üreteciyle bit düzeyinde sentezlenir; bu kez üretecin 75 Ω kaynak koşulunu temsil edip etmediği doğrulanmalıdır.

Geri döngü (loopback) ile öz-doğrulama

İç döngüde (loopback) bir alıcı/verici entegresi verici çıkışını içeride alıcılara bağlar ve hat sürücüsünü NULL'da tutar [3]; mantık ve FIFO sınanır, hat sürücüsü, analog giriş, kablo ve konnektör sınanmaz. Harici döngüde verici kabloyla alıcıya bağlanır; bazı kartlar gönderilen ve okunan kelimeleri donanımda karşılaştırır [5]. Ancak verici zamanlaması ve alıcı damgası aynı osilatörden geliyorsa frekans hatası ölçülen aralıkta sadeleşir: 100 ppm hızlı bir kart kendi 100 ms'sini kendi sayacıyla tam 100 ms ölçer. Döngü, işlevselliğin ve tekrar üretilebilirliğin kanıtıdır; mutlak zamanlama için ayrı referanslı bağımsız ölçüm gerekir.

Alıcı yükü ve kablo etkisi

20 alıcının her biri 8 kΩ ise Rp = 400 Ω ve alıcıdaki diferansiyel gerilim:

Valıcı = VS · Rp / (Rp + RS) = 10 V · 400 / 475 ≈ 8,4 V(7)

Bir verici veri sayfası yüksek hız besleme akımını 400 Ω diferansiyel yük altında verir [3]. Kablo direnci hariç, 6,5 V alt sınırına 1,9 V pay kalır; verici 9 V'ta ise alıcıdaki gerilim 7,6 V'a iner. Alıcı başına 20 pF [3] ile 20 alıcı 400 pF, 75 Ω ile zaman sabiti 30 ns'dir ve 1,5 μs'lik kenar yanında ihmal edilir; hesaba girecek terim kablo kapasitesidir:

tr,top ≈ √(tr02 + (2,2 RS C)2)(8)

C kablo ve alıcıların toplam diferansiyel kapasitesidir, kablo değeri veri sayfasından alınır. Bu birinci dereceden yaklaşımdır; uzun hatta yansımalar ayrıca ölçülür. Sistemlerin çoğu 150 ft'in altında tasarlanır, koşullar uygunsa 300 ft'in üzerine çıkılabilir [1].

Donanım-döngüde (hardware-in-the-loop) bir simülatörde iki vericinin NULL→HIGH eğimleri 5,05 V/μs ve 0,937 V/μs ölçülmüş, ikisi de alıcılarca geçerli sayılmıştır; yazarlar elektriksel karakteristiğin kablo uzunluğu ve alıcı sayısıyla her konfigürasyonda farklı olduğunu vurgular [9]. 10 V salınım ve %10–%90 tanımı varsayılırsa bu yaklaşık 1,6 μs ve 8,5 μs yükselme süresidir; hız belirtilmediği için hangi toleransa karşı değerlendirileceği açık değildir.

Hata ve belirsizlik bütçesi

Her iki damganın kuantalama hatası q genişliğinde düzgünse farkları yarı genişliği q olan üçgen dağılıma uyar [12]:

uq = q / √6(9)

Frekans hatası ±ε olan zaman tabanında Δ aralığının hatası ±εΔ, düzgün varsayımla uf = εΔ/√3'tür [12]. Doğrusal kenarda eşik geçiş gecikmesi (%10–%90 süresi salınımın %80'idir):

teşik = (Veşik / VA) · tr / 0,8(10)

Yüksek hızda tr = 1,5 μs, VA = 10 V için eşik 2,5…6,5 V'ta geçiş 0,47…1,22 μs; genlik 8,4 V'ta üst değer 1,45 μs; düşük hızda (tr = 5…15 μs) 1,6…12,2 μs. Aynı vericinin ardışık kelimelerinde bu gecikme büyük ölçüde sadeleşir; kalıntı gürültü/eğim oranıdır: 5,3 V/μs eğim ve 50 mV rms gürültü varsayımıyla geçiş başına yaklaşık 9 ns, iki damganın farkında √2 katıyla 13 ns. Farklı kaynaklar karşılaştırılırken terim tamamen belirsizliğe girer. Birleşik belirsizlik uc = √(Σui2), genişletilmiş U = kuc (k = 2) [12].

Tablo 4. 100 ms'lik etiket aralığı için belirsizlik bütçesi (aynı kaynak, yüksek hız)
TerimModelFPGA, 100 MHz, referansa kilitli (μs)Kart, 10 μs damga, 100 ppm (μs)Yazılım damgası, 1 μs sayaç, 100 ppm (μs)
Kuantalamaq/√60,0044,080,41
Frekans hatasıεΔ/√30,058 (ε = 1 ppm varsayımı)5,775,77
Eşik kalıntısı√2 σv/eğim0,0130,0130,013
İşletim sistemi gecikmesi±104 μs, düzgün——60
uc√Σui20,0597,1≥ 60
U (k = 2)0,1214≥ 120

100 ppm, bir FPGA çekirdeğinin ±%0,01 saat toleransından örnek olarak alınmıştır [4]; kartın gerçek toleransı kendi belgesinden okunmalıdır. Yazılım sütunundaki sınır yük altında standart Linux için raporlanan en büyük değerdir [10]; sürücü ve USB/PCIe gecikmeleri dahil değildir, bu yüzden alt sınırdır.

Sonuç açıktır: milisaniye mertebesindeki aralık sınırlarında 14 μs, hatta 120 μs belirsizlik kararı nadiren değiştirir; sınırlayıcı olan en kötü durumun yakalanmasıdır. Mikrosaniye mertebesinde tablo tersine döner: 40 μs'lik boşluğu 10 μs damgayla ölçmek ±10 μs, yani %25 hatadır. Boşluk ve bit zamanlaması osiloskop veya onlarca MHz'de örnekleyen FPGA yakalayıcıyla doğrulanır. Karşılaştırma için, bir çalışmada osiloskop 12,5 MHz'de örneklemiştir [9]; 1,5 μs'lik kenarda bu yaklaşık 19 örnektir. Sınıra yakın sonuçlarda karar kuralı yazılmalıdır. Yalın kabulde (simple acceptance) sınırdaki bir ölçümde yanlış karar olasılığı %50'ye varabilir; koruma bantlı kabulde (guarded acceptance, bant genişliği w = U) ölçülen en küçük aralık Tmin + U'nun üstünde, en büyük aralık Tmax − U'nun altında olmalıdır [13].

Doğrulama ekipmanı ve izlenebilirlik

ARINC 429 çözümlemeli osiloskop. Hat diferansiyel aktif probla ölçülür [8]. Göz diyagramı ve darbe maskeleri genlik, aşma, çınlama ve kenar zamanlamasını tek görüntüde gösterir; “1”, “0” ve NULL için ayrı maskeler uygulanır [8]. Bellek derinliği sınırlı olduğundan saatlerce aralık istatistiği için uygun değildir.

Bağımsız izleyici. Uyarıcıdan farklı, tercihen farklı saatli bir donanım yalnız dinler; her kelimeyi donanım damgası, eşlik ve biçim bayraklarıyla kaydeder. IRIG 106 Bölüm 10 kaydı kelime başına boşluk süresi, hız, eşlik ve biçim hatası ile veri yolu numarası taşır [7].

Referans saat. Uyarıcı, izleyici ve osiloskop ortak 10 MHz referansa ve mümkünse ortak zaman koduna bağlanırsa damgalar aynı ölçekte karşılaştırılır. Taşıma gecikmesi ancak böyle ölçülür: uyarının anı ile etiketin yeni değeri ilk taşıdığı an aynı saatle damgalanır.

Rapor izlenebilirliği. Cihaz seri numaraları ve kalibrasyon sertifikaları, referansın kaynağı ve doğruluğu, yazılım ve donanım yazılımı sürümleri, çizelge tablosu, kablo uzunluğu ve alıcı sayısı, ham kayıtlar ve özet değerleri (hash), her ölçümün belirsizlik bütçesi ve karar kuralı rapora girer. Spesifikasyonun elektriksel özelliklerin laboratuvar doğrulamasına ilişkin bir eki bulunduğu belirtilir [1]; prosedür bu eke ve ICD'ye izlenebilir yazılmalıdır.

Yaygın hatalar

  • Ortalama tazeleme periyoduna bakmak. Ortalama planı doğrular, ICD sınırını değil; eksik yayın yalnız en büyük Δ'da görünür.
  • Yazılım zaman damgasına güvenmek. Yük altında yüzlerce mikrosaniyelik kuyruk raporlanmıştır [10].
  • Kelime boşluğunu yalnız nominal hızda test etmek. Sabit süreli zamanlayıcı hataları düşük hız aralığının uçlarında ortaya çıkar.
  • Ticari alıcının kabulünü uyumluluk saymak. Kabul pencereleri geniştir [3], [9].
  • İç döngüyü fiziksel katman testi saymak [3] ve ortak saatli döngüyle zamanlama doğruluğu iddia etmek.
  • Kısa gözlem. (6)'ya göre seyrek ihlal saatlerce kayıt gerektirebilir.
  • Yalnız verici terminalinde ölçmek ve damga tanımını yazmamak; düşük hızda kelime başı/sonu farkı yüzlerce mikrosaniyedir.

Pratikte zorlaşan noktalar

Zorluk yöntemde değil düzenekte çıkar. Kenar ve genliği sürekli tarayabilen ARINC 429 üreteci azdır; keyfi dalga üreteci ise çıkış empedansı ve diferansiyel simetri doğrulaması getirir. İzleyici ile uyarıcı aynı üreticidense ortak bir yorum hatası iki tarafta birden bulunabilir. Uzun kayıtta sayaç taşması ve senkronizasyonun korunması ayrıca doğrulanmalıdır. Bu nottaki değerler ikincil kaynaklardan derlenmiştir; kabul testinde spesifikasyonun güncel sürümünün yerini tutmaz.

Kaynaklar

  1. AIM GmbH, “ARINC 429 Specification Tutorial,” sürüm 2.2, 2019. https://www.aim-online.com/wp-content/uploads/2019/07/aim-tutorial-oview429-190712-u.pdf
  2. GE Intelligent Platforms, “ARINC Protocol Tutorial,” GFT-639A, 2010. https://www.psirep.com/system/files/arinc_protocol_tutorial_wp_gft639a_16.pdf
  3. Holt Integrated Circuits, “HI-3593 3.3V ARINC 429 Dual Receiver, Single Transmitter with SPI Interface,” DS3593 Rev. F, Mart 2018. Üreticinin sitesindeki güncel revizyon üyelik gerektirdiğinden TI E2E forumunda barındırılan Rev. F kopyası kullanılmıştır: https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/908/3593_5F00_F.pdf; ürün sayfası: https://www.holtic.com/products/3026-hi-3593.aspx
  4. Microsemi (Microchip Technology), “HB0088: Core429 v3.12 Handbook,” Rev. 6, Nisan 2016. https://ww1.microchip.com/downloads/aemdocuments/documents/fpga/ProductDocuments/SupportingCollateral/core429_hb.pdf
  5. United Electronic Industries, “DNx-429-516 ARINC 429 Board User Manual,” 2019. https://www.ueidaq.com/uploads/dnx-429-516-manual.pdf
  6. Pickering Interfaces, “41-429 ARINC 429 Interface Module,” veri sayfası, 2012. https://www.pickeringtest.com/portal/web/256/content/downloads/datasheets/41-429D.pdf
  7. IRIG 106 Chapter 10 Handbook, “ARINC 429 Data,” 2014. https://www.irig106.org/wiki/ch10_handbook:arinc_429_data
  8. Keysight Technologies, “ARINC 429 Eye-diagram and Pulse-shape Mask Testing,” 5990-9325EN, 2018. https://www.keysight.com/content/dam/keysight/en/doc/gate/application-notes/5990-9325.pdf
  9. C. Trask ve diğ., “ARINC 429 Cyber-vulnerabilities and Voltage Data in a Hardware-in-the-Loop Simulator,” arXiv:2408.16714, 2024. https://arxiv.org/abs/2408.16714
  10. Z. Deng ve diğ., “Interference-free Operating System: A 6 Years' Experience in Mitigating Cross-Core Interference in Linux,” arXiv:2412.18104, 2024. https://arxiv.org/abs/2412.18104
  11. Microsoft, “timeBeginPeriod function (timeapi.h),” Microsoft Learn. https://learn.microsoft.com/en-us/windows/win32/api/timeapi/nf-timeapi-timebeginperiod
  12. JCGM 100:2008, “Guide to the expression of uncertainty in measurement,” BIPM, 4.3.7, 4.3.9, 5.1.2, 6.2.1. https://www.bipm.org/documents/20126/2071204/JCGM_100_2008_E.pdf
  13. JCGM 106:2012, “The role of measurement uncertainty in conformity assessment,” BIPM, 8.3. https://www.bipm.org/documents/20126/2071204/JCGM_106_2012_E.pdf
  14. Renesas Electronics, “HS-3282 CMOS ARINC Bus Interface Circuit,” FN2964 Rev. 2.02, 2022. https://www.renesas.com/en/document/dst/hs-3282-datasheet

İlgili yetkinlik alanı: Aviyonik test ve entegrasyon

Bu konudaki bir ihtiyacınız ya da bu notla ilgili bir düzeltme için bize yazın.

İletişime geçin