[CALU] Re: anti-synchroner Reset bei neg. Taktflanke

  • From: Martin Elshuber <e9825286@xxxxxxxxxxxxxxxxxxxx>
  • To: calu-ss2010-tuwien@xxxxxxxxxxxxx
  • Date: Wed, 19 May 2010 11:02:37 +0200

So wie ich das im modelsim lese, wird jetzt die 2te instruction übersprungen :(


probier mal das program

nop (p1)  ; iword = 0x010000
nop (p2)  ; iword = 0x020000
nop (p3)  ; iword = 0x030000
lbl:
 bp lbl

wenn du dir das id register ansiehst steht dort: 0x010000, 0x010000, 0x030000

grund:
takt x (reset 1->0): status: pc=0, imem.addresreg=0, imem.sreset=1, new-pc=1; -- am ende des cycles folgt: takt x+1 : status: pc=1, imem.addresreg=0, imem.sreset=0, new-pc=1; -- npc wird in das pc-reg geschrieben (reset is bereits 0), npc wird nicht in das imem.addresreg geschrieben (sreset ist 1) takt x+2 : status: pc=2, imem.addresreg=2, imem.sreset=0, new-pc=1; -- npc wird in das pc-reg imem.addresreg geschrieben,geschrieben (sreset ist 0)
es wird daher nie die 2te instruction gelesen

lg martin

Günther Wimpassinger wrote:
Zitat von Martin Elshuber <e9825286@xxxxxxxxxxxxxxxxxxxx>:

Hab gerade gesehen, daß du da was gändert hast?
löst das das problem?

lg martin

Zumindest im Quartus. Wir unterhalten uns heute Nachmittag, warum das so gelöst wurde.

lg
Günther




Other related posts: