Forum: Mikrocontroller und Digitale Elektronik KEIL µVision4: Langsam und unkomfortabel?!


von Alexander I. (daedalus)


Lesenswert?

Hallo,

ich muss seit kurzem mit KEIL µVision4 auf einem NXP2387 arbeiten. 
Verbunden sind die zwei per ULINK2-USB-Debugger auf einem MCB2300-Board. 
Auf dem Teil läuft bereits ein zugekaufter USB-Stack in dem 
KEIL-RTX-Betriebssystem. Ansonsten muss er noch nicht viel machen außer 
eine Heartbeat-LED blinken zu lassen.

Nun hatte ich schon mit einigen Entwicklugnsumgebungen zu tun, aber 
bisher war keine dermaßen zäh und langsam wie µVision. Vielleicht gibt's 
hier ja ein paar alte Hasen, die ein paar wichtige Stellschrauben kennen 
um mehr Performance rauszukitzeln. Ich will µVision nicht schlecht 
machen, aber so wie es gerade bei mir läuft ist es absolut inakzeptabel.

Einige Beispiele:
- Der Codedownload (ca. 100kbyte) dauert 16-20 Sekunden bei 500 kHz JTAG 
Clock. Stelle ich mehr ein, kommt nur "JTAG Connection failed. Target 
ARM7TDMI not found.". Auch die Einstellung RTCK bringt keinen 
Performancegewinn. Das JTAG-Interface hängt ja scheinbar irgendwie vom 4 
MHz-RC-Oszillator ab, statt von der durch den PLL erzeugten CPU-Takt? 
War das wirklich alles, nur 500 kHz?
- Nach dem Klick auf das DEBUG-Icon dauert es ca. 25 Sekunden bis der PC 
endlich mal auf main() steht. Davor macht der ewig "Loading Object 
Code..." oder zeigt nur ne Sanduhr an. Muß er da jedes mal das Rad neu 
erfinden?!
- Das Single-Stepping (F10/F11) dauert selbst bei einfachen Befehlen 
mindestens 1 Sekunde.
- Die Variablenfenster "Watch", "Locals" usw. sind unglaublich zäh und 
reagieren manchmal gar nicht auf Mausklicks.
- Bei jedem Singlestep (F10/F11) werden "aufgeklappte" Variablen 
(Arrays, Strukturen) wieder zugeklappt und ich muß die erst wieder 
aufklappen! Das nervt einfach nur. Wenn man nach einer Veränderung im 17 
Byte eines 3fach dereferenzierten Arrays schauen will. Was soll denn 
das?

Der PC ist aktuell und gut ausgestattet, aber irgendwas frisst hier 
ziemlich Performance weg. Was sind eure Erfahrungen mit großen 
KEIL-Projekten (>100 KByte Code)? Was kann ich noch machen, um bessere 
Performance zu bekommen?

Ist es vielleicht auch möglich durch irgendwelche Intrinsics oder 
Pragma's dem Downloader zu sagen, dass er nicht jedes Mal das 
Betriebssystem und den USB-Stack komplett neu downloaden muss, obwohl 
sich gar nichts geändert hat?

Bin für jeden Tipp dankbar

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.