vhdl optimering

Hejsa,

jeg har efterhånden skrevet nogle projekter med VHDL til Xilinx FPGA'ere; men jeg er i tvivl om hvor vidt jeg laver en optimal løsning, eller noget dårlig kode, der (let) kan optimeres.

Er der nogen, der kender en bog, website eller andet, hvor man fx kan finde eksempler på god og dårlig kode - og kode der er optimeret mht hastighed hhv antallet af gates?

//michael

--
Instead of email, use this: http://mtech.dk/thomsen/contact.php
Reply to
Michael Thomsen
Loading thread data ...

Kender ikke til nogen bøger/websites som kan hjælpe med dette. Jeg bruger (1) hovedet (kan jeg visualisere det som FF+gates?) og (2) spørger værktøjet (prøve-synteser med udvalgte blokke/konstruktioner).

Det skal dog siges at min erfaring de sidste ~10år er med Synopsys Design Compiler.

En af klassikerne er mux'en. I specielt de ældre udgaver af DC, vil en simpel Y

Reply to
Kai Harrekilde-Petersen

Ok, det er (2) jeg gerne ville undgå, hvis det var muligt ;) men det lyder som om alle programmerne har deres egne særheder, så der ikke er nogen vej udenom...

Det kan jeg så ikke gennemskue :(

Ok, det er der folk holder til - tak for info!

//michael

--
Instead of email, use this: http://mtech.dk/thomsen/contact.php
Reply to
Michael Thomsen

Det er min erfaring - og specielt at særhederne ændrer sig fra version til version af værkstøjet :-(

Med en exit-statement kan compileren gennemskue at der kun kan være netop én værdi af loop-variablen som giver en assignment til Y. Udfra det laver DC så en N:1 mux (af en given bredde).

Hvis der ikke er nogen exit, vil DC lave N 2:1 mux'e som er lagt i forlængelse af hinanden. Dette vil selvfølgelig blive løst under timing optimerings fasen, men det bliver bare ikke lige så hurtigt og effektivt, som hvis man havde skrevet den sk*de exit statement.

Kai

--
Kai Harrekilde-Petersen
Reply to
Kai Harrekilde-Petersen

Det er jo super..

Ok derfor. Jeg begynder at forstå, at VHDL er en hel kunstart!

Iøvrigt tak for tippet med comp.lang.vhdl - jeg har lige nydt at læse deres beretninger om Z8000 og dens konkurrenter :-D

//michael

--
Instead of email, use this: http://mtech.dk/thomsen/contact.php
Reply to
Michael Thomsen

"Michael Thomsen" skrev i en meddelelse news:op.s2s1nwolhrxo93@mtpc...

I et kursus, skulle vi ligeledes programmere FPGA'er, og eftersom der var forskellige konkurrencer a'la "hurtigste", "mindste" (processor), gik vi meget op i, hvad de forskellige kodestumper blev oversat til. Eneste overordnede råd jeg kan give, er at læse databladene for FPGA'erne (jeg orker ikke at finde et link lige nu.., men det burde ikke være så svært). Hvis den enkelte FPGA supporterer specielle skifteregistre, RAM etc., så kræver det i nogle tilfælde specielle - mere eller mindre indlysende - VHDL-implementeringer. Derudover er der det generelle råd, som du sikkert har hørt før: tænk hardware - og ikke software

/Kenneth

Reply to
Kenneth Brun Nielsen

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.