VHDL eerste voorbeeld ... neem een kijkje plz ... tnx

P

pini_1

Guest
Hoi
Ik ging over je code en zag een groot probleem.Je moet de relatie tussen de twee klokken weten te overwegen: SSCLK en SSICLK.

Ik heb compileren en uitgewerkt uw ontwerp met behulp van de gratis VHDL simulator (ghdl: http://ghdl.free.fr).Zij loopt okay:

Hier is mijn script (voor linux machine - voor Windows de laatste regel is een beetje anders):#! / bin / bash
ghdl-a - Workdir = werk - IEEE = Synopsys par2ser.vhdghdl-a - Workdir = werk - IEEE = Synopsys ser2par.vhdghdl-a - Workdir = werk - IEEE = Synopsys SSI.vhd
ghdl-e - Workdir = werk - IEEE = Synopsys SSIU wilt misschien een testbank te maken en visueel uw ontwerp met golven te inspecteren.

Meer VHDL / verilog / compilatie scripts etc ...
op http://bknpk.no-ip.biz/

 
uw ontwerp is differe'nt van de gemodelleerd ICs in twee aspecten:

- HC595 heeft een voorsprong leverde in plaats van een niveau leverde output latch

- Je hebt toegevoegd een 9e register HC165, die waarschijnlijk onbedoelde gedrag veroorzaakt.De oorspronkelijke logica is als volgt:
Code:

indien PLN = '0 'dan

Idata (7 Downto 0) <= DATAIN; - load operatie

- Activiteiten veroorzaakt door stijgende flank van de klok

elsif CP'event en CP = '1 'dan

for i in 6 Downto 0 lus

Idata (i 1) <= idata (i);

end loop;

Idata (0) <= DS;

end if;

QHH <= idata (7);

QHN <= niet idata (7);
 
@ pini_1
Bedankt voor uw tijd, natuurlijk een groot probleem gaat over de klok synchronisatie tussen deze twee signaal.Als een eerste idee kan ik denken aan een externe klok synchronisatie te gebruiken met een hogere frequentie over de frequentie waarde voor elk van deze twee signalen en gebruik deze externe klok aan alle andere signalen sychronize, kan een oplossing?Mag ik zie wat metastabiliteit probleem en dan heb ik het syncro podium doen met twee FF voor elk signaal?

@ FVM
Dankzij de twee voorstellen, over de parallel belasting Ik denk dat ik op een lijn als deze PL'event en PL = '1 ', net voor de klok, gebruik heeft gelijk?
Dank ook voor de voorstellen over de verschuiving.

Natuurlijk in de uiteindelijke uitvoering zal ik proberen om een enkele SIPO en PISO gebruik met een bus van 16 bit in plaats daarvan twee SIPO en twee PISO van 8 bit.

Heeft u hebt een aantal andere voorstellen over mijn codering, is schoon, begrijpelijk en zo verder?

Nogmaals dank aan iedereen.

Dag
Pow

 

Welcome to EDABoard.com

Sponsor

Back
Top