S549 · R1 ekran: RP1 DSI host register haritası ve D-PHY zamanlama modeli
S549 kaynak kapısı PASS'tir: RP1 (Raspberry Pi 5 southbridge) MIPI DSI host bring-up'ı veri olarak modellendi; 17 girişli sembolik register haritası (DSI_CTRL, DSI_HS_CLK, DSI_LANE_CFG, DSI_PKT_HDR, DSI_VID_TIMING_*), piksel saati / lane / bpp'den checked aritmetikle byte clock ve HS bit hızı üreten hesaplayıcı, min/max kodlanmış D-PHY spec tablosundan UI biriminde T_LPX/T_HS_*/T_CLK_* türetimi ve 16 yazımla sınırlı register programı encoder'ı tek fail-closed modülde toplandı. 720x1280@60 RGB888 2-lane telefon profili 760492800 bps/lane, 1200x1920@60 RGB888 4-lane 10.1 inç tablet profili 947433600 bps/lane verir; 1-lane telefon modu 1.5 Gbps tavanını aştığı için, düşük hızlı 81.6 Mbps modu ise T_CLK_PREPARE maksimumunu ihlal ettiği için reddedilir. Register offset'leri RP1 datasheet'ine sonradan bağlanacak model placeholder'larıdır ve donanımda doğrulanmamıştır. Focused 25/25 PASS'tir. S540 ve S543 fiziksel RED immutable kalır, hiçbir panel/DSI host/board yoktur, physical observation=0 ve RUNBOOK_EXECUTED_IN_S549=NO'dur. S550 aynı kaynak/host sınırında R1 aşama 2'yi sürdüren bir sonraki kapıdır.
Doğrulanan kanıt
- S549, S548'den ayrı kaynak model modülü, 25-test focused binary, proof, status manifest, Operations kaydı ve complete Code kartına sahiptir; hiçbir üretim çağrı noktasına, boot/IRQ/scheduler/driver yoluna bağlanmamıştır.
- Dar S549 source-model status=PASS; R1 umbrella=PARTIAL, S540 ve S543 physical gate status=RED olarak ayrı tutulur ve S546 üçüncü fiziksel koşunun kararı varsayılmaz.
- Register haritası 17 sembolik 32-bit girişten oluşur: DSI_CTRL 0x000 RW, DSI_STATUS 0x004 RO, DSI_INT_STATUS 0x008 W1C, DSI_INT_ENABLE 0x00C RW, DSI_HS_CLK 0x010 RW, DSI_LANE_CFG 0x014 RW, DSI_PHY_TIMING_HS/CLK/CLK2 0x018-0x020 RW, DSI_PKT_HDR 0x024 WO, DSI_PKT_PAYLOAD 0x028 WO, DSI_VID_TIMING_HACTIVE/HBLANK/VACTIVE/VBLANK 0x030-0x03C RW, DSI_VID_MODE_CFG 0x040 RW ve DSI_ID 0x0FC RO (reset 0x44534931).
- Offset, genişlik, reset ve erişim sınıfları RP1 datasheet'ine sonradan bağlanacak model placeholder'larıdır; donanımda doğrulanmamıştır ve S549_REGISTER_OFFSETS_HARDWARE_VALIDATED=false her receipt'te taşınır.
- Harita doğrulayıcı boş tablo, 32-bit dışı genişlik, 4-byte hizasız veya artmayan/çakışan offset ve tekrarlanan isimleri RegisterMapMalformed ile reddeder.
- Saat hesaplayıcı pixel_clock=htotal*vtotal*refresh, hs_bit_rate=pixel_clock*bpp/lanes (tam bölünme zorunlu), byte_clock=hs_bit_rate/8 ve ui_ps=1e12/hs_bit_rate değerlerini yalnız checked u64 aritmetikle üretir; taşma ArithmeticOverflow ile fail-closed döner.
- Desteklenen lane sayıları 1/2/4, bpp 16/18/24, HS bit hızı aralığı 80 Mbps-1.5 Gbps, aktif piksel ≤4096 ve blanking 1..=1023'tür; bunların dışı UnsupportedLaneCount, UnsupportedBitsPerPixel, ZeroDimension, ActiveOutOfRange, BlankingOutOfRange, HsBitRateBelowMinimum veya HsBitRateAboveMaximum ile reddedilir.
- Telefon profili 720x1280@60 RGB888 2-lane (htotal 810, vtotal 1304) pixel clock 63374400 Hz, HS bit hızı 760492800 bps/lane, byte clock 95061600 Hz ve UI 1314 ps verir.
- Tablet profili 1200x1920@60 RGB888 4-lane (htotal 1340, vtotal 1964) pixel clock 157905600 Hz, HS bit hızı 947433600 bps/lane, byte clock 118429200 Hz ve UI 1055 ps verir.
- D-PHY spec tablosu 10 satırda min (ns+UI) ve varsa max (ns+UI) kodlar: T_LPX≥50ns, T_HS_PREPARE 40ns+4UI..85ns+6UI, T_HS_PREPARE+T_HS_ZERO≥145ns+10UI, T_HS_TRAIL≥60ns+4UI, T_HS_EXIT≥100ns, T_CLK_PREPARE 38..95ns, T_CLK_PREPARE+T_CLK_ZERO≥300ns, T_CLK_PRE≥8UI, T_CLK_POST≥60ns+52UI, T_CLK_TRAIL≥60ns.
- Türetilen zamanlamalar spec minimumunun byte-clock (8 UI) katına yuvarlanmasıdır; yuvarlanmış değer bir spec maksimumunu aşarsa kırpılmaz, TimingAboveSpecMaximum ile reddedilir. Telefon profili T_LPX=40, T_HS_PREPARE=40, T_HS_ZERO=88, T_HS_TRAIL=56, T_HS_EXIT=80, T_CLK_PREPARE=32, T_CLK_ZERO=200, T_CLK_PRE=8, T_CLK_POST=104, T_CLK_TRAIL=48 UI üretir.
- Bağımsız doğrulayıcı elle kurulan zamanlamalarda spec minimum altını, maksimum üstünü, bileşik toplam ihlalini ve 8 UI hizasız değerleri ayrı diagnostic kodlarıyla reddeder.
- Register programı en fazla 16 yazımla sınırlıdır ve kanonik program 13 yazımdır: önce DSI_CTRL=0, sonra lane/bpp, HS clock (MHz), üç paketlenmiş PHY timing sözcüğü, dört video timing sözcüğü, INT_ENABLE, VID_MODE_CFG ve en son DSI_CTRL=ENABLE|VIDEO_MODE.
- Bilinmeyen register, salt-okunur register yazımı, genişliği aşan değer, 8-bit/10-bit alan taşması ve sınırı aşan program uzunluğu RegisterUnknown, RegisterNotWritable, RegisterValueExceedsWidth, RegisterFieldOverflow ve ProgramBufferOverflow ile fail-closed döner.
- 1-lane telefon modu 1520985600 bps ile 1.5 Gbps tavanını aştığından, 320x240 16-bpp 1-lane 81.6 Mbps modu ise byte-clock yuvarlanmış T_CLK_PREPARE değeri 95 ns maksimumunu aştığından reddedilir; her iki durumda state receipt'i boş kalır.
- Exact replay aynı receipt ile Retained döner; yayından sonra farklı profil veya tek alanı değişmiş mode PublishedStateDrift ile reddedilir. 19 diagnostic kodu sıfırdan farklı ve benzersizdir.
- Kaynakta unsafe, asm!, write_volatile, crate::uart, crate::arch, #[no_mangle], spin:: ve std:: yoktur; focused test bunu kaynak metni üzerinden doğrular.
- Focused target 1 grup / 25 passed / 0 failed / 0 ignored / 0 filtered verdi.
- Implementation 28348 B / 5588fe963747f3f560d92284aadb040a0d76bb414f9d84a51d493d2b528b5e15; focused test 22477 B / 85b60528562819fb4b6456cdbc1ebd36dac8c5bdaf61657032c60d99ae25533c SHA-256'dır.
- Proof 6624 B'dir.
- S540 immutable raw 20525 B ve S543 immutable raw 20509 B fiziksel RED olarak byte-exact korunur; automatic promotion=false ve S543 rerun=false'dur.
- S549 sırasında panel, DSI host, D-PHY, board, SD write/read-back/eject, UART open/capture, power transition, fiziksel koşu veya yeni immutable raw üretimi yapılmadı.
- RUNBOOK_EXECUTED_IN_S549=NO; supported-profile runtime observations=0, physical observations=0, hardware present=false, Boot-to-UI physically observed=false ve R1 acceptance=false'dur.
- S550 aynı kaynak/host sınırında R1 aşama 2'yi sürdürür; register offset'lerinin RP1 datasheet'ine bağlanması ayrı ve açıkça belgelenecek bir adımdır, aygıt veya fiziksel koşu yetkisi değildir.
Sınır / bekleyen kanıt
- S549 yalnız kaynak/host modelidir; hiçbir donanım/panel/modem/board gözlemi yoktur ve modül hiçbir üretim boot/IRQ/scheduler/driver yoluna bağlanmamıştır.
- Register offset, genişlik, reset ve erişim sınıfları RP1 datasheet'ine bağlanmamış model placeholder'larıdır; donanımda doğrulanmamıştır.
- D-PHY spec aralıkları modelde kodlanmış tablo değerleridir; gerçek D-PHY veya panel zamanlaması ölçülmemiştir.
- S540 ve S543 fiziksel RED immutable kalır; S546 üçüncü fiziksel koşunun kararı bu kapıda varsayılmaz ve otomatik yükseltme yoktur.
- BOOT_TO_UI_READY gerçek UART'ta görülmedi; Boot-to-UI ve R1 acceptance false kalır.
- S550 aynı kaynak/host sınırında R1 aşama 2'yi sürdürür; yeni SD/UART/power koşusu ayrı kapı, fresh target revalidation, açık operatör yetkisi ve yeni immutable raw ister.
Terminal komutları ve gerçek yanıtlar
S549 kaynak/host model PASS'tir; supported-profile runtime veya fiziksel PASS değildir. S540 ve S543 RED raw ve kararları değişmez.
$ CARGO_INCREMENTAL=0 cargo test -p aselsan_microkernel_simulation --test g8l_target_dispatch_scheduler_owner_scheduler_mutation_production_migration_lifecycle_s549_r1_rp1_dsi_host_register_map_dphy_timing_model -- --test-threads=1test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
S549 focused=1 group / 25 passed / 0 failed
hardware=none physical=0 runbook=NO