|
sdram的时序问题 state_cntrl_sig 在非idl_cycle下每个时钟加1 哪位高手能告诉我下为什么下面的state_cntrl_sig要计到那时候才变为空闲周期 WHEN idl_cycle => IF (cmnd_cycle_req = '1') THEN sdram_cycle_sig <= cmd_cycle; ELSIF (sdram_cs_l = '0') THEN sdram_cycle_sig <= dat_cycle; ELSIF (rfrsh_req = '1') THEN sdram_cycle_sig <= rfr_cycle; ELSE sdram_cycle_sig <= idl_cycle; END IF ;
WHEN cmd_cycle => IF (state_cntr_sig(3) = '1') then sdram_cycle_sig <= idl_cycle; END IF ;
WHEN dat_cycle => IF (state_cntr_sig = "1101") THEN sdram_cycle_sig <= idl_cycle; END IF ;
WHEN rfr_cycle => IF (state_cntr_sig = "1100") THEN sdram_cycle_sig <= idl_cycle; END IF ;
WHEN others => sdram_cycle_sig <= "0000";
END CASE ;
|
|