Hi! Bin zur Zeit an der Auswahl eines Mikrocontrollers für ein Steuergerät für einen Umrichter (Projektarbeit). Da darauf eine eher komplexe Regelung implementiert werden soll, wird mir ein XMega nicht ausreichen und ich bin daher im Momemt am überlegen einen STM32 (Cortex M3) zu verwenden. In den Datenblättern steht auch immer schön drin, dass eine Multiplikation nur einen Takt dauert und das es "Hardware-Division" gibt. Leider konnte ich aber weder bei ARM noch bei ST eine genaue Angabe finden wie lange (in Takten) eine Division denn jetzt (maximal) dauert. Gibt es dafür irgendeine Angabe? Die Regelung muss mindestens alle 20us einen neuen Wert erzeugen und wird vom Aufwand wohl im Bereich einer Feldorientierten Regelung liegen. Da der Regelungsalgorithmus allerdings noch nicht fertig ist, muss ich erstmal vom worst-case ausgehen, dass da einiges dividiert werden könnte. Danke, Johannes
Gast
#1441294
Ausm Netz: CorteCortex-M3 Processor Overview Hardware Division UDIV & SDIV (Unsigned or Signed divide) Instruction takes between 2 & 12 cycles depending on dividend and devisor Closer the dividend and division the faster the instruction comp letes Instruction is interruptible (abandoned/restarted)
Gast
#1441299
Also Worst Case sind 12 Zyklen für eine Division.
Johannes Schmid schrieb: > Leider konnte ich aber weder bei ARM noch bei ST eine genaue > Angabe finden wie lange (in Takten) eine Division denn jetzt (maximal) > dauert. Gibt es dafür irgendeine Angabe? Cortex-M3 TRM: http://infocenter.arm.com/help/topic/com.arm.doc.ddi0337g/BABBCJII.html#id7100577 Gruß Marcus http://www.doulos.com/arm/
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.