Hierdie kompleksiteit telling is bedoel om bruikbaar te wees vir verifikasie te toets planne te ry. Hopelik kan RTL ontwerpers hierdie instrument gebruik as 'n manier om die kompleksiteit ontwerp bestuur en as 'n gids om doeltreffend te leer van die struktuur van bestaande ontwerpe.
Die HDL Kompleksiteit Tool is 'n eenvoudige instrument om meting data verskaf. Die bestuur konsep is dat jy nie kan beheer wat jy nie kan meet. Ons beoog om bestaande navorsing te gebruik om 'n instrument wat goed presteer op 'n stel van die werklike projekte te ontwikkel.
Werklike defek data sal gebruik word om die kompleksiteit te toets as 'n tegniek om riskante komponente te identifiseer. Real ontwerpe sal gemeet word om te bepaal wat die praktiese gebruike van hct. In die einde, moet hierdie hulpmiddel prakties nuttig om iemand ontwerp en / of verifikasie van 'n komplekse hardeware projek.
INSTALLASIE
& Nbsp; 1. Aflaai nuutste bronne http://www.sourceforge.net/hct
& Nbsp; 2. Untar die lêers in 'n gids
& Nbsp; 3. Voer: Perl ./install.pl in daardie gids
& Nbsp; ** As jy wil installeer op 'n wye * nix box stelsel, kan u 'n as root
& Nbsp; 4. Volg die installeerder se
Design
Die HCT is voortdurend in beweging. Ons begin met McCabe Cyclomatic Kompleksiteit analise tak kompleksiteit te verstaan. Dan is ons die verbetering van hierdie met meer gesofistikeerde kompleksiteit tellings wat gekalibreer is met werklike defek data.
'N goeie agtergrond hieroor is beskikbaar. Verwys asseblief na "Meet die kompleksiteit van HDL Models" deur Michael Shaefers. Volgende het ons 'n paar uittreksels wat ons gebruik as ontwerp kriteria vir HCT.
Daar is 'n paar HDL kompleksiteit faktore wat gedefinieer in daardie vraestel:
- Grootte
- Nes
- Beheer vloei
- Vloei van inligting
- Hiërargie
- Lokaliteit
- Reëlmaat
- Modulariteit
- Skakel (modules of gevalle)
- Concurrency
- Tydsberekening
In daardie vraestel, is die idee van die sielkundige kompleksiteit van HDL bekendgestel en die gemeenskaplike aspekte sowel as die verskille van die sagteware versus hardeware kompleksiteit ontwerp word ontleed. Die punt is dat 'n goeie kompleksiteit telling sal voldoen aan ses reëls:
1. Die maatreël moet gebaseer wees op 'n formele grondslag
2. Die maatreël het intuïtief
3. Models onder ontwikkeling het meetbaar wees
4. 'n gestruktureerde model gemeet moet word as minder kompleks as 'n ongestruktureerde weergawe
5. Voeg nuwe dele van die model het die kompleksiteit verhoog
6. Vervang een deel van die model deur 'n meer komplekse deel moet kompleksiteit verhoog
Dit is ses verhewe doelwitte wanneer jy begin om te dink oor hulle. Die transitiwiteit geïmpliseer deur hulle gaan taai om te bereik te wees. Ons is egter skiet vir hierdie en moet dit gebruik as 'n leidende lig.
Ons sal gebruikers moet korreleer met hul gebrek geskiedenis aan ons pogings te verfyn. Iterasie op 'n suiwer en eenvoudig generiese parsing en berekening raamwerk is die sleutel tot effektiewe iteratiewe ontwerp. Ons moet fokus op die sagteware-argitektuur 'n elegansie van ons gekose taal van implementering.
Die einddoel om behoorlik die telling wat die sielkundige kompleksiteit van hardeware blokke in enige HDL en gebruik dit om defek tariewe en skedule's voorspel
Wat is nuut in hierdie release:.
- Hierdie vrystelling is ten volle herontwerp vir die presiese resultate meet McCabe Cyclomatic kompleksiteit, grepe van die kode, grepe van die kommentaar, verskeie verhoudings en 'n posisie stelsel wat jy kan gebruik om die complexit van al die modules verstaan 'n projek.
- Dit werk op beide Verilog en cycliciteit CDL en ondersteuning command line en CSV uitvoer formate.
Vereistes :
- Perl
Kommentaar nie gevind