HVORDAN at rette denne fejl

S

simu

Guest
hej,
Jeg har skrevet koder for et modulopbygget division algoritme og jeg fik den næste fejl.Siden er en nybegynder i verilog, er ude af stand til at rette min fejl.Jeg også nødt til at rette koden så hurtigt som muligt.
kan nogen hjælpe mig?

Fejl
Loop har itereret 64 gange.Brug "set-loop_iteration_limit XX" for at gentage mere.

Jeg har også vedlagt min algoritme og dens kode med dette ...
Beklager, men du skal logge ind for at se denne vedhæftede fil

 
Hej,

fra fejlrapport jeg se, at det er dybest set det samme problem, som vi drøftede en uge siden: Brug af en iterativ loop uden en betingelsesløs opsigelse.Af denne grund, kan koden ikke være enten simulerede eller syntetiseres.

Inden vi ser ind i koden, kan jeg først gentage mit seneste spørgsmål: Kan vi få en kort beskrivelse af algoritmen eller en litteratur reference?

Hilsen,
Frank

PS: Kan du opgive en af de overflødige tråde?

 
Wow alle at kode i en 'oprindelig' erklæring?

Prøv at sætte $ display () udtalelser i ', mens' loop, så du kan se, hvad der sker og identificere fejl.Noget som dette:
$ display ( "r =", r, "a =", a, "b =", b, "s =", s, "l =", L, "p =", p);

Jeg kan se forskellige sproglige oversættelse problemer såsom:
"if (l> = 0)" altid vil være sandt, fordi 'l' er usigneret.
"p =-p" vil sandsynligvis gøre dårlige ting, fordi p ikke er signeret.

 
Den underskrevne arithmetics Problemet blev allerede nævnt, dybest set Verilog antager unsigned type for reg og redskaber, medmindre undertegnede nøgleordet er eksplicit givet.Desuden kan jeg ikke se ækvivalens vist algoritme og Verilog kode.
F.eks: boolean expresion en ≡ 0 (mod 2) er forskellig fra (a <<2 == 0 <<2).

Jeg kan heller ikke se let, at den iteration bruges i algoritmen er begrænset, selv om jeg antager, at dette er tilfældet, er årsagen til problemet er kendt for at kunne løses.Et andet spørgsmål er, hvis det er også velegnet til en fuldstændig parallel gennemførelse, men det kunne være muligt i det mindste for en lille wordlength.

Lignende implementeringer af modulopbyggede division, jeg har fundet beskrevet i litteraturen (jeg kunne ikke se HDL-kode endnu, ellers ville jeg vise det her) er generelt opererer serie.
som et eksempel: http://www.dice.ucl.ac.be/crypto/files/publications/pdf194.pdf

Hilsen,
Frank

 

Welcome to EDABoard.com

Sponsor

Back
Top