Author Topic: Xilinx ISE -- Coregen DDR Controller IP problem -- Spartan 3e  (Read 3330 times)

0 Members and 1 Guest are viewing this topic.

Offline HarrkevTopic starter

  • Contributor
  • Posts: 38
  • Country: us
  • ASIC Design Engineer
Xilinx ISE -- Coregen DDR Controller IP problem -- Spartan 3e
« on: January 17, 2015, 05:36:15 pm »
OK.  This is driving me NUTS!  I am having problem with the DDR controller generator on Xilinx ISE.

I have the bog-standard Digilent Spartan-3E starter board with a Micron MT46V32M16 (8 Meg x 16 x 4 banks).  I am having trouble with the data lines.

Making a brand-new DDR Controller, I specify an 8-bit address width (keep in mind this part has 16 data lines).  I keep churning through and keeping the default options.  When I get to "Bank Selection" it wants to use 14 data lines!!!

Now, if I go back and choose a 16-bit data width, it wants to use 24 data lines!

Any idea what is going on here?

**EDIT**
According to the Digilent manual for the board, their example UCF file actually fits the entire DRAM IO on bank 3.  For some reason, even if I feed that same UCF file in for guidance, the coregen chokes and dies.

 Note that if I do not select the "right" bank selection, the generator will actually error out without telling me WHY it generated errors, and this is even WITH everything being green on the "Bank Selection" windows.  Any comments?

Thanks in advance.
« Last Edit: January 17, 2015, 11:23:28 pm by Harrkev »
 

Offline Scrts

  • Frequent Contributor
  • **
  • Posts: 797
  • Country: lt
Re: Xilinx ISE -- Coregen DDR Controller IP problem -- Spartan 3e
« Reply #1 on: January 20, 2015, 08:30:43 am »
Did you set up a number of columns and rows in your memory?
 

Offline HarrkevTopic starter

  • Contributor
  • Posts: 38
  • Country: us
  • ASIC Design Engineer
Re: Xilinx ISE -- Coregen DDR Controller IP problem -- Spartan 3e
« Reply #2 on: January 21, 2015, 10:18:58 pm »
Did you set up a number of columns and rows in your memory?
Well, DesignWare knew about the part number (not the speed grade, so I chose one that was slower).

I can choose either 8, 16, or 24 bits for the data width.  For a single DRAM chip, 16 should work perfectly.  Digilent managed to get all pins driven from bank 3 (I assume that they tested it and that it worked).  I, however, cannot convince DesignWare to make a 16-bit interface with just bank 3 without having it die.
 

Offline Scrts

  • Frequent Contributor
  • **
  • Posts: 797
  • Country: lt
Re: Xilinx ISE -- Coregen DDR Controller IP problem -- Spartan 3e
« Reply #3 on: January 22, 2015, 11:42:51 am »
Maybe there's a reference design for your board?
 

Offline David Spicer

  • Contributor
  • Posts: 28
  • Country: au
  • Multi functional carbon based lifeform
    • aec
Re: Xilinx ISE -- Coregen DDR Controller IP problem -- Spartan 3e
« Reply #4 on: January 25, 2015, 10:55:51 pm »
Ththere is a ref design but it dissappeared on new years day. I know because i was using it. You might find it by searching the avnet site. They keep an archive. I think its called design resource centre. Avnet/drc or something like that. Look for obsolete designs/xilinx etc.

The design i am using uses the mpmc ( multi port memory controller) which you can modify in EDK
You only have to put the part number in and it works the rest out. No need

Using old xilinx boards can be a nightmare. I suspect  it's intentional. An insurmountable obstacle tends to arise with licenses or deprecated pcores. I understand where they are coming from. After all, you aren't going to make anything in volume using ddr and a spartan 3e. But that won't make you feel better of course.
Nostalgia just ain't what it used to be
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf