element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet & Tria Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • About Us
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      • Japan
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Vietnam
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Avnet Boards Forums
  • Products
  • Dev Tools
  • Avnet & Tria Boards Community
  • Avnet Boards Forums
  • More
  • Cancel
Avnet Boards Forums
ZedBoard Hardware Design ZedBoard DDR3 interface address space?
  • Forum
  • Documents
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Avnet Boards Forums to participate - click to join for free!
Actions
  • Share
  • More
  • Cancel
Forum Thread Details
  • State Not Answered
  • Replies 5 replies
  • Subscribers 342 subscribers
  • Views 477 views
  • Users 0 members are here
Related

ZedBoard DDR3 interface address space?

Former Member
Former Member over 12 years ago

Hi,
According to ZedBoard user guide, The multi-protocol DDR memory controller is configured for 32-bit wide accesses to a 512 MB address space.

But I was wondering, how would I be able to target only ONE of the Micron MT41K128M16HA-15E components?

In other words, for my specific application, I have two VDMAs that are streaming to DDR. But I would prefer to know that the data from one VDMA is streamed into only one of the Micron memory components, and my data from the second VDMA targets ONLY the second memory component!!

Thanks in advance,
--Rudy


  • Sign in to reply
  • Cancel
  • bhfletcher
    0 bhfletcher over 12 years ago

    I don't think it is possible to do what you want. There is only one memory controller inside the Zynq, and it shares the address control signals between the two chips.

     

    It is possible to do byte writes. You could try writing exclusively bytes 0 and 1 for one set of data and bytes 2 and 3 for the other set. That would segregate the data between the two chips, but that seems really confusing to me.

     

    Bryan

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 12 years ago

    Bryan,
    Thanks for the reply. But, is this how usually what happens when you write a 32-bit wide data into a two sets of 16-bit wide memory?

    Is that right that the first 16-bit gets stored in one RAM, and the other 16-bit gets stored in the second RAM?

    Because if this is the case, I can do this for my application, since in this specific application I don't really care about what I am writing into the DDRs !!

    But how do I know this is how the data is getting managed in the DDRs?
    Why not Byte-0 and Byte-1 getting stored in one DDR, and Byte-2 & Byte-3 is also in the subsequent address of the same DDR ?!
    I am sorry that if this is an obvious question, but I just didn't know how the 32-bit data is stored in two 16-bit SDRAM !
    Is this true for all sorts of board, which uses SDRAMs in parallel, or is this only true for the ZedBoard case?

    Thanks,
    --Rudy

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • bhfletcher
    0 bhfletcher over 12 years ago in reply to Former Member

    Rudy,

    Yes, that is definitely the case here. The ZedBoard was designed to have a 32-bit wide interface between the memory and the Zynq. The schematic and layout connect the configuration with bits 0 through 15 going to one chip and 16 through 31 going to another. This is the fastest, most efficient way. For every 32-bit word that you read or write, 1/2 is associated with one chip and 1/2 with the other.

     

    I believe this would be the case for every 32-bit processor that you see with 2 x16 chips attached to it.

     

    Bryan

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 12 years ago

    Thanks a lot Bryan. This really helped.

    --Rudy

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
  • Former Member
    0 Former Member over 12 years ago

    Will there be a way for me to verify that I performed this correctly?

    Because I am afraid if try to read back from memory with the processor (in software), I will always get a 32-bit wide data back, since the processor only communicate with SDRAM on 32-bit wide boundary, correct?

    So, could you recommend any method for verification?
    Will there be anyway to temporarily disable one of the DDRs, and when I am reading back a 32-bit wide data, I would only see that 16-bit of this data is valid, which would correspond to either (Byte-0 & Byte-1), or (Byte-2, and Byte-3) !
    Or, maybe there is an easier way to verify this, but I just cannot see it?

    Thanks,
    --Rudy

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • Verify Answer
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2026 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube