Hallo,
Ich würde gerne eine Determinante einer 4*4 Matrix lösen mit möglichst
wenig Resourcen.
Ich hab das folgendermassen geschreiben (Teil des Codes) allerdings hat
der Code viele Resourcen verbraucht (mit 6 Multiplizierer und 3
subtrahierer).
könnt ihr mit Tipps geben wie das noch verbessert werden kann ?
Ich hab Igloo nano FPGA.
when "0001"=> -- erste Steigende Flanke
Mult1 := a03 * a12;
Mult2 := a02 * a13;
Mult3 := a01 * a13;
Mult4 := a03 * a11;
Mult5 := a02 * a11;
Mult6 := a01 * a12;
detM11_res <= Mult1 - Mult2;
detM12_res <= Mult3 - Mult4;
detM13_res <= Mult5 - Mult6;
when "0010"=> -- zweite Steigende Flanke
Mult1 := a03 * a12;
Mult2 := a02 * a13;
Mult3 := a03 * a10;
Mult4 := a00 * a13;
Mult5 := a00 * a12;
Mult6 := a02 * a10;
detM21_res <= Mult2 - Mult1;
detM22_res <= Mult3 - Mult4;
detM23_res <= Mult5 - Mult6;
Wenn Du die Koeffizienten ein wenig kennst und weisst, dass viele ähnlich sind und zudem viele Nullbits vorkommen, kann man das in einem Takt kombinatorisch lösen und auf das Zusammenfallen der Gleichungen bauen. Die Frage ist natürlich: Muss das in einem Takt laufen? Das Resourcensparendste ist natürlich vollsequenziell.
Bitte Fragen in deutscher Sprache im mikrocontroller.net stellen.
Guest
#3083008
??? Wo sind wir denn hier, wenn nicht im Mikrocontroller.Net?
Guest
#3083019
Ahhhhhhh! Es ist die englische Unterabteilung. Ok! Das ist dann halt der Nachteil der Einbinderei ins MCNET Forum :-) Vorschlag: 1) Lothar, als Moderator kannst Du das doch verschieben? Oder nicht? 2) Wie wäre es , wenn man der englischen Seite eine andere Farbe im Design gabe, damit man jederzeit sieht, wo man gelandet ist und nicht falsch frägt?
Reply
Please log in before posting.

