VHDL koden for CRC-5 Checksum kredsløb til USB Fejl korrekt

G

govandi999

Guest
Vi er nødt til at designe et modul, der er en simpel CRC-5 checksum kredsløb, der vil gennemføre polynomiet (1 + x2 + x5). Denne polynomium bruges til korrektion af fejl i USB. Blokdiagrammet er som følger:
54_1210664114.gif
Vi er nødt til at designe et kredsløb, der tager 32 bit input og efter 32 cyklusser producerer 5 bit CRC. Virkemåden af ​​kredsløbet er forklaret under 1) Start ← 1 2) DIN anvendes til at beregne CRC for de næste 32 CLK cykler. Ved hver cyklus Dout
 
Du bruger OLDCRC uden at sætte værdier i dem, og de er ikke indgange. Så skal du først tildele værdier til dem under drift. Vil du sende din algoritme nærmere, så vi kan hjælpe dig mere?
 
Den måde koden er skrevet, har du flere forskellige værdier går til single-bit DOUT samtidig. Ved hver clockcyklus, vil den mest betydende bit af CRC være DOUT. Du har kodet START som et enable signal. Er at starte et startsignal eller et aktiveringssignal? Hvis START er et startsignal, ville jeg forvente, at det at indlæse en seed-værdi i NewCRC. START vil derefter blive sat til 0 for at aktivere stueur. Du mangler en måde at overføre den NewCRC værdi til OLDCRC. Som et alternativ, efter (clk'event og CLK = '1 '), den signal opgave CRC (4)
 

Welcome to EDABoard.com

Sponsor

Back
Top