cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
marquis1973
Visitor
Visitor
6,345 Views
Registered: ‎05-04-2011

Using Master DCI in banks that do not require DCI

Hi, I am using DCI cascade in my design (Virtex-6) because I have a limited number of available IOs. In my design, I have two DDR3 interfaces, one RLDRAM and one CAM interface. I have four DCI cascade specified in my UCF. DCI_CASCADE 23 22 # DDR3 Interface 1 DCI_CASCADE 15 16 17 # DDR3 Interface 2 DCI_CASCADE 12 13 14 # RLDRAM Interface DCI_CASCADE 35 36 37 # CAM Interface I can see in PlanAhead that these DCI Cascades seem to be properly defined. I have attached a screenshot of the PlanAhead DCI Cascade Info. If I look in the Pinout Report, I do not see any "Termination" keyword in the Termination column for DCI Cascade Master Banks 23, 12 and 35. I assume that this is because those particular banks do not require DCI termination in my design. The VRP / VRN pins for those three banks are free and unused. I am able to compile right through BitGen without any errors or warnings. I could assume that this will work but is there a way to see if these pins are actually being used for DCI cascading or not (maybe using PlanAhead, FPGA Editor, etc.)? Also, another point that "worries" me is the fact that even if I use the VRP / VRN pins of these banks (the 3 that are used as "Master DCI" but do not require DCI in their respective bank) for regular IOs, I can still compile right through BitGen without any errors or warnings. (This is only true for DCI Master Banks that do not use DCI; if I do the same test in Master Bank 15 which uses DCI, I get an error.) So basically two questions: 1- Is there a way to see if the VRP / VRN pins are actually used for DCI cascading? 2- Can the VRP / VRN pins of a Master Bank that does not use DCI (itself) can be used as regular IOs? Thanks for your help, Marquis
Marquis
IF_FPGA_DCI_CASCADE.JPG
0 Kudos
6 Replies
austin
Scholar
Scholar
6,339 Views
Registered: ‎02-27-2008

m,

 

If a master bank has no DCI in it, but subsequent IO in other backs require it (DCI control), then that master bank must use the VRP, VRN pins to the appropriate resistors.


I doubt seriosly that nayone would do this, as it is better to use the first bank where DCI is used, as the master.  In fact, I doubt the first case (above) is supported (as it doesn't make any sense).

 

As for not trusting the tools to do what is required, I can't help you there.  In FPGA_Editor, it will be clear that the attributes are set properly (DCI, or not).  And, if there are no errors in bitgen (a bitstream results), you are done.

 

If I didn't trust the tools to do their job I would never complete a single project.  It is more than enough to deal with the occasional bug than to deal with every feature, to prove everything is perfect.  If you have the time to do that, wow!

 

If you need the IO pins in the subsequent backs (can not afford to use them as VRN, VRP), then use them.  Now that they are used as IO, if the cascade isn't properly implemented, an error will result (as those banks requiring DCI will either have to be slaves to the master bank, or those pins will be usurped for the resistors).

 

 

 

Austin Lesea
Principal Engineer
Xilinx San Jose
0 Kudos
marquis1973
Visitor
Visitor
6,337 Views
Registered: ‎05-04-2011

Thanks Austin for the quick reply.

 

In my design, the DDR3 interfaces were completely generated by the Xilinx Core Gen (MIG). In response to your comment : "I doubt seriosly that anyone would do this, as it is better to use the first bank where DCI is used, as the master.  In fact, I doubt the first case (above) is supported (as it doesn't make any sense)." For DDR3 Interface 1, the Xilinx MIG used bank 23 as the DCI Master bank eventhough this bank is not used at all by the DDR3 interface.

 

Thanks once again for your help,

 

Marquis

Marquis
0 Kudos
jschmitz
Xilinx Employee
Xilinx Employee
6,324 Views
Registered: ‎10-23-2007

two questions:

1- Is there a way to see if the VRP / VRN pins are actually used for DCI cascading?

 

If I recall correctly, one of the implementation tools will print out some information on the DCI cascade to let you know that is being used.  However, I'm unable to recall which one at the moment.

 

2- Can the VRP / VRN pins of a Master Bank that does not use DCI (itself) can be used as regular IOs?

 

No.  You need the reference resistors.  Note that at one time an input pin using DCI was required to enable the master so you'll see some old MIG designs with a dummy input pin.  Since then that restriction was removed and the dummy pin was removed.

 

Also note that this is a valid use case.  There are some scenarios in DDR3 in V6 that require every pin in the bank (either internally or externally) including the VRN/VRP to fit 3 bytes in one bank.  Utlizing the neighboring bank for the DCI master helps considerably with byte packing at the expense of requiring Vcco of that bank to be  1.5V.

0 Kudos
marquis1973
Visitor
Visitor
6,317 Views
Registered: ‎05-04-2011

Thanks for your reply.

 

As you mentioned for the DDR3 byte packing, this is my situation and I really do not want to try to move DDR3 critical signals out of the bank if I do not have too. There are a lot of pin allocation rules for the DDR3 mem controllers and I am trying to avoid modifying the pinout provided by the Xilinx MIG SW. Freeing up the VRP/VRN pins in the "slave" DDR3 banks may require moving out 10+ signals in each bank (8 data + related DQS + prohibited signal used for internal use).

 

I really need to find a way to validate that the DCI cascading is setup properly. The ISE SW seems to be "happy" with the DCI cascading that I have setup (using non-DCI Banks as the Master Bank). However, the ISE SW also does not pop-up an error or warning if I do use the VRP / VRN pins of the non-DCI Master Bank as regular IOs (and this is very strange).

 

Once again, thanks for your help.

 

 

Marquis
0 Kudos
marquis1973
Visitor
Visitor
6,261 Views
Registered: ‎05-04-2011

Hi all,

 

just for your information, I just received a response from the Xilinx support team that this is a DRC bug and a Pinout Report bug.

 

Thanks,

 

Marquis

Marquis
eteam00
Professor
Professor
6,258 Views
Registered: ‎07-21-2009

Marquis,  is this a show-stopper bug, or is there a workaround?

 

Thanks for pursuing this to its logical conclusion.

 

-- Bob Elkind

SIGNATURE:
README for newbies is here: http://forums.xilinx.com/t5/New-Users-Forum/README-first-Help-for-new-users/td-p/219369

Summary:
1. Read the manual or user guide. Have you read the manual? Can you find the manual?
2. Search the forums (and search the web) for similar topics.
3. Do not post the same question on multiple forums.
4. Do not post a new topic or question on someone else's thread, start a new thread!
5. Students: Copying code is not the same as learning to design.
6 "It does not work" is not a question which can be answered. Provide useful details (with webpage, datasheet links, please).
7. You are not charged extra fees for comments in your code.
8. I am not paid for forum posts. If I write a good post, then I have been good for nothing.
0 Kudos