- generate CKE from SDRAM CMD fsm. Simplified interfaces

git-svn-id: http://moon:8086/svn/vhdl/trunk@1233 cc03376c-175c-47c8-b038-4cd826a8556b
This commit is contained in:
2015-05-25 12:13:27 +00:00
parent ce79902c62
commit 1bc700a041
3 changed files with 22 additions and 23 deletions
+20 -15
View File
@@ -38,7 +38,6 @@ entity sdram_cmd is
(
rst : in STD_LOGIC;
clk : in STD_LOGIC;
enable : in STD_LOGIC;
tag : in user_tag_t;
col_addr : in col_addr_t;
mode_word : in mode_word_t;
@@ -84,11 +83,11 @@ begin
------------------------------------------------------------------------------------------
fsm_sdr_state:
process (st_sdr, cmd, cmd_we, cycle_finished, burst_finished, mode_word, enable, col_addr, tag)
process (st_sdr, cmd, cmd_we, cycle_finished, burst_finished, mode_word, col_addr, tag)
begin
st_sdr_next <= st_sdr;
phy_ctrl.part.cmd <= COMMAND(SD_NOP);
phy_ctrl.part.cke <= enable;
phy_ctrl.part.cke <= '1';
phy_ctrl.u_tag <= tag;
cc_load_en <= '0';
burst_load_en <= '0';
@@ -101,21 +100,18 @@ fsm_sdr_state:
phy_ctrl.part.ba <= mode_word(mode_word_t'left downto mode_word_t'left-1);
case st_sdr is
when PWR_DOWN =>
phy_ctrl.part.cke <= '0';
phy_ctrl.part.cmd <= COMMAND(SD_DESELECT);
if enable = '1' then
st_sdr_next <= IDLE;
end if;
if cmd_we = '1' then
cmd_ack <= '1';
cc_load_en <= '1';
if cmd = SD_NOP then
st_sdr_next <= IDLE_WAIT;
end if;
end if;
when PRECHARGE =>
st_sdr_next <= IDLE_WAIT;
when MODE =>
st_sdr_next <= IDLE_WAIT;
when ROW_ACT =>
st_sdr_next <= IDLE_WAIT;
when IDLE_WAIT =>
if cycle_finished = '1' then
st_sdr_next <= IDLE;
@@ -183,6 +179,15 @@ fsm_sdr_state:
st_sdr_next <= IDLE_WAIT;
end if;
when PRECHARGE =>
st_sdr_next <= IDLE_WAIT;
when MODE =>
st_sdr_next <= IDLE_WAIT;
when ROW_ACT =>
st_sdr_next <= IDLE_WAIT;
when WRITE_A => -- not implemented yet
st_sdr_next <= IDLE_WAIT;