Denne kompleksitet score er beregnet til at være nyttig for Verifikation at køre testplaner. Forhåbentlig kan RTL designere bruge dette værktøj som en måde at håndtere design kompleksitet og som en guide til effektivt at lære strukturen af eksisterende konstruktioner.
HDL Complexity Tool er et simpelt værktøj til at give måledata. Den drivende koncept er, at du ikke kan styre, hvad du ikke kan måle. Vi agter at bruge den eksisterende forskning for at udvikle et værktøj, der klarer sig godt på et sæt konkrete projekter.
Faktiske defekte data vil blive anvendt til at teste kompleksitet som en teknik til at identificere risikofyldte komponenter. Rigtige designs vil blive målt for at bestemme, hvad er de praktiske anvendelser af HCT. I sidste ende bør dette værktøj være praktisk anvendelig for alle, designe og / eller verificere en kompleks hardware projekt.
INSTALLATION
& Nbsp; 1. Hent nyeste kilder fra http://www.sourceforge.net/hct
& Nbsp; 2. Untar filerne i en mappe
& Nbsp; 3. Udfør: perl ./install.pl i denne mappe
& Nbsp; ** Hvis du ønsker at installere på en * nix boks hele systemet, skal du køre som root
& Nbsp; 4. Følg installatørens anvisninger
DESIGN
Den HCT konstant udvikling. Vi starter med McCabe cyklomatisk Kompleksitet analyse til at forstå gren kompleksitet. Så vi forbedre dette med mere avancerede kompleksitet scores, der er kalibreret med ægte defekte data.
En god baggrund på det er tilgængeligt. Se "Måling af kompleksitet HDL Models" af Michael Shaefers. Efter vi har et par uddrag, som vi bruger som designkriterier for HCT.
Der er et par HDL kompleksitet faktorer, der er defineret i dette dokument:
- Størrelse
- Nesting
- Kontrol flow
- Informationsstrømmen
- Hierarki
- Lokalitet
- Regelmæssighed
- Modularitet
- Kobling (af moduler eller forekomster)
- Samtidighed
- Timing
I dette papir, er ideen om psykologiske kompleksitet HDL indføres, og de fælles aspekter samt forskelle af softwaren versus hardware design kompleksitet analyseres. Pointen er, at en god kompleksitet score vil klæbe til seks regler:
1. Foranstaltningen skal være baseret på en formel fundament
2. Foranstaltningen skal være intuitive
3. Modeller under udvikling skal være målbare
4. En struktureret model skal måles som mindre kompleks end en ustruktureret udgave
5. Tilføjelse af nye dele til modellen har til at øge kompleksiteten
6. Udskiftning ene del af modellen med en mere kompleks del skal øge kompleksiteten
Det er seks høje mål, når du begynder at tænke på dem. Den transitivitet antydes af dem kommer til at være svært at opnå. Men vi skydning for dette, og skal bruge det som et ledende lys.
Vi har brug for brugere at korrelere med deres defekt historie at forfine vores forsøg. Iteration på en ren og enkel generisk parsing og beregning rammer er nøglen til effektiv iterative design. Vi skal fokusere på software-arkitektur en elegance af vores valgte sprog implementering.
Det endelige mål er at korrekt score den psykologiske kompleksitet hardware blokke i enhver HDL og bruge denne til at forudsige defekt satser og planlægge risici
Hvad er nyt i denne udgivelse:.
- Denne udgivelse er fuldt redesignet for præcise resultater måler McCabe cyklomatisk kompleksitet, bytes af kode, bytes af kommentarer, forskellige forhold og et ranking system, du kan bruge til at forstå complexit af alle moduler i et projekt.
- Det virker på både Verilog og cyclicity CDL og støtte kommandolinjen og CSV output formater.
Krav :
- Perl
Kommentarer ikke fundet