Yanlış çalışan ARM komutları ve sık sık oluşan bus ve hard fault eventleri

Başlatan z, 16 Ekim 2014, 12:49:05

z

Dunden beri kafa yemekteyim. Uzun ugraslar sonucunda UDIV ve MUL komutlarinin yanlis calismaya basladigini farkedince en azindan bu bir ipucudur diyerek  debug yapmaktaydim.
Ancak elim kolum baglandi gercekten de bu iki komut bazen hatali sonuc uretiyordu.

Biraz once hatanin nedenini buldum.

72Mhz de kosan islemcinin clock rutinlerini 8Mhz Xtale gore yazmistim. Yeni dosedigim kartta ise yanlislikla 16Mhz xtal kullanmisim.

Bu durumda cipin butun clk frekanslari olmasi gereken degerlerin tam iki kati degerde olusuyor.

Programi daha once calisan dogru xtal takilmis kartta denememis olsaydim hala tirmaliyor olacaktim.

Bana e^st de diyebilirsiniz.   www.cncdesigner.com

X-Fi

Overclock yapmışsınız hocam işlemcinin 144 mhz de çalışıp debug yapması büyük başarı  :)
http://www.coskunergan.dev/    (Yürümekle varılmaz, lakin varanlar yürüyenlerdir.)

Tagli

Ben de dsPIC30F2010'a PLL ile 20 MHz kristal takınca saçmalamıştı. Hata LED yakıp söndürürken belli olmuyor tabi ama seri port ile yolladığım 5 paketten 4'ü checksum hatası veriyordu. Aslında 80 MHz'e çıkmak istiyordum ve 4x PLL seçmiştim. Bu da zaten hız sınırı dahilinde. Ama PLL girişi sınırlar içinde değilmiş, en fazla 10 MHz kristal takılabiliyormuş. 10 MHz kristal ile 8x PLL seçince sorun düzeldi.
Gökçe Tağlıoğlu

z

Alıntı yapılan: X-Fi - 16 Ekim 2014, 12:55:37
Overclock yapmışsınız hocam işlemcinin 144 mhz de çalışıp debug yapması büyük başarı  :)

ST'yi tebrik etmek lazim o zaman.
Bana e^st de diyebilirsiniz.   www.cncdesigner.com

Burak B

"... a healthy dose of paranoia leads to better systems." Jack Ganssle

Karamel

Alıntı yapılan: Burak BAYRAK - 17 Ekim 2014, 19:15:29
STM32F407 MCU 250Mhz ye kadar overclock edilebiliyor desem. :)

hocam bu hizda calistirinca sorunlar oluyormu? yani Z hocamin yasadigi sorunlara benzer yada microcontrollerin icersinde bir birimin duzgun calisamamasi gibi?  ???

ErsinErce

geçmiş olsun hocam,
bende bir ara benzer bir sıkıntı yaşıyordum sonradan interruptları çok kısa yapınca karşılaşılan bir sorun olduğu ortaya çıktı
bölme/çarpma işlemi için gerekli clock cycle dan daha düşük cycle da tamamlanan interrupt rutini oluşturunca işlemci yarı hesaplanmış sonuçla devam ediyor

arm'ın çekirdek hatası malesef

sizin işlemin sıkıntılı olmasıda overclock harici bundan kaynaklanıyor olabilir.
kısa interrupt rutinlerini uzatarak denerseniz sorunsuz kullanma ihtimaliniz var gibi =)

bu arada ufak bir düzeltme jtag arayüzündeki hızı kullanıcı belirliyor, JTAG bağlanan kristalden bağımsız çalışan bir yapı

Burak B

Alıntı yapılan: Karamel - 17 Ekim 2014, 21:10:34
hocam bu hizda calistirinca sorunlar oluyormu? yani Z hocamin yasadigi sorunlara benzer yada microcontrollerin icersinde bir birimin duzgun calisamamasi gibi?  ???

Kendim hiç test etmedim ancak bildiğim kadarıyla sorunsuz bir şekilde kullananlar var. Chipin çekirdek performansını %48 gibi bir oranda artırıyor. Ancak çevre birimleri için ne oranda stabil olur bilmiyorum.
"... a healthy dose of paranoia leads to better systems." Jack Ganssle

Karamel

burak hocam ben bu yaz pic microcontrollerlardan 18f serisini ogrendim. onceden arm ile baslamistim ve az bucuk stm microcontroller lardan da haberdarim. bu yaz pic mcu ile stm mcu dan daha cok hasir nesir oldum. 18f2525 pic microcontroller in voltage ini 3.3v yapinca icersindeki bazi modulleri sapitiyordu. mesela eeprom gibi. stm32 dede hizi asinca boyle seyler olurmu ki?

Burak B

STM32F4 Overclock

İyice test edip stabil olduğuna kanaat getirilirse kullanılabilir. Ancak benim tavsiyem bu tip overclock işlemlerini kritik uygulamalarda pek tercih etmeyin.
"... a healthy dose of paranoia leads to better systems." Jack Ganssle