[source]

Entity ddr2_mem2mig_adapter_Spartan6

D_BITSMEM_A_BITSAPP_A_BITSmem_reqstd_logicmem_writestd_logicmem_addr[MEM_A_BITS - 1 downto 0]unsignedmem_wdata[D_BITS - 1 downto 0]std_logic_vectormem_wmask[D_BITS / 8 - 1 downto 0]std_logic_vectormig_calib_donestd_logicmig_cmd_fullstd_logicmig_wr_fullstd_logicmig_rd_emptystd_logicmig_rd_data[( D_BITS ) - 1 downto 0]std_logic_vectormem_rdystd_logicmem_rstbstd_logicmem_rdatastd_logic_vector[D_BITS - 1 downto 0]mig_cmd_instrstd_logic_vector[2 downto 0]mig_cmd_enstd_logicmig_cmd_blstd_logic_vector[5 downto 0]mig_cmd_byte_addrstd_logic_vector[APP_A_BITS - 1 downto 0]mig_wr_datastd_logic_vector[( D_BITS ) - 1 downto 0]mig_wr_maskstd_logic_vector[( D_BITS ) / 8 - 1 downto 0]mig_wr_enstd_logicmig_rd_enstd_logic

Block Diagram of ddr2_mem2mig_adapter_Spartan6

Spartan-6 FPGA Memory Controller Block (MCB). The MCB can be configured to have multiple ports. One instance of this adapter is required for every port. The control signals for one port of the MIG IP core are prefixed by "cX_pY", meaning port Y on controller X.

Simplifies the User Interface ("user") of the Xilinx MIG IP core (UG388). The PoC.Mem interface provides single-cycle fully pipelined read/write access to the memory. All accesses are word-aligned. Always all bytes of a word are written to the memory. More details can be found here.

Generic parameters:

  • D_BITS: Data bus width of the PoC.Mem and MIG / MCBinterface. Also size of one word in bits.

  • MEM_A_BITS: Address bus width of the PoC.Mem interface.

  • APP_A_BTIS: Address bus width of the MIG / MCB interface.

Containts only combinational logic.

Generics

Name

Type

Default

Description

D_BITS

positive

MEM_A_BITS

positive

APP_A_BITS

positive

Ports

Name

Type

Direction

Description

mem_req

std_logic

in

PoC.Mem interface

mem_write

std_logic

in

mem_addr

unsigned

in

mem_wdata

std_logic_vector

in

mem_wmask

std_logic_vector

in

mem_rdy

std_logic

out

mem_rstb

std_logic

out

mem_rdata

std_logic_vector

out

mig_calib_done

std_logic

in

Xilinx MIG IP Core interface

mig_cmd_full

std_logic

in

mig_wr_full

std_logic

in

mig_rd_empty

std_logic

in

mig_rd_data

std_logic_vector

in

mig_cmd_instr

std_logic_vector

out

mig_cmd_en

std_logic

out

mig_cmd_bl

std_logic_vector

out

mig_cmd_byte_addr

std_logic_vector

out

mig_wr_data

std_logic_vector

out

mig_wr_mask

std_logic_vector

out

mig_wr_en

std_logic

out

mig_rd_en

std_logic

out