Locale Icon
English
  • Forums

    Popular Forums

    • LTspice
    • Video
    • Power Management
    • RF & Microwave
    • Precision ADCs
    • FPGA Reference Designs

    Product Forums

    • Amplifiers
    • Clocks & Timers
    • Data Converters
    • Direct Digital Synthesis (DDS)
    • Energy
    • Interface and Isolation
    • MEMS Inertial Sensors
    • Power Management
    • Processors & DSP
    • Processors & Microcontrollers
    • Switches & Multiplexers
    • Sensors
    • Voltage References
    View All

    Application Forums

    • A2B Audio Bus
    • Audio
    • Automated Test Equipment (ATE)
    • Condition-Based Monitoring
    • Depth, Perception & Ranging Technologies
    • Embedded Vision Sensing Library
    • Motor Control Hardware Platforms
    • Precision Technology Signal Chains Library
    • Video
    • Wireless Sensor Networks Reference Library

    Design Center Forums

    • ACE Evaluation Software
    • ADEF System Platforms
    • Design Tools & Calculators
    • FPGA Reference Designs
    • Linux Software Drivers
    • Microcontroller no-OS Drivers
    • Power Studio Designer
    • Power Studio Planner
    • Reference Designs
    • Robot Operating System (ROS) SDK
    • Signal Chain Power (SCP)
    • Software Interface Tools
    • System Demonstration Platform (SDP) Support
  • Learn

    Highlighted Webinar

    Power Management Fundamentals II Session 5: Deeper Look into Power Protection

    When is the best time to discover your power circuit needs protection? Let's explore the use of some input protection and control options like ideal diodes...

    Places

    • ADI Academy
    • ADI Webinars
    • Video Annex
    • Virtual Classroom

    Libraries

    • 3D ToF Depth Sensing Library
    • Continuous-Wave CMOS Time of Flight (TOF) Library
    • Embedded Vision Sensing Library
    • Gigabit Multimedia Serial Link (GMSL) Library
    • Optical Sensing Library
    • Precision Technology Signal Chains Library
    • Software Modules and SDKs Library
    • Supervisory Circuits Library
    • Wireless Sensor Networks Library

    Latest Webinars

    • Design Smarter with Compact, Low-Power Precision Current Source Signal Chains
    • Power Management Fundamentals II Session 6: Key Layout Considerations for Power
    • A 16T/16R X-Band Direct Sampling Phased Array Subsystem using Apollo MxFE
    • Power Management Fundamentals II Session 5: Deeper Look into Power Protection
    • Power Management Fundamentals II Session 4: Isolated Converters Explained
    View All Webinars
  • Community Hub

    Challenge Yourself!

      KCC's Quizzes AQQ296 about repairing an equation in a digital display

      1. Quote of this month: " When I die, I want to die like my grandfather who died peacefully in his sleep. Not screaming like all the passengers in his...

    View All

    What's Brewing

      Read a Blog, Take this Quiz for Another Chance to Win a Gift Card!

      Important: Read the blog first . The quiz questions are all based on the content from the blog: Too Much Chatter and Not Enough Talk - Learn the Benefits...

    View All

    Places

    • Community Help
    • Analog Dialogue Quiz
    • Logic Lounge
    • Super User Program

    Resources

    • EZ Code of Conduct
    • EZ How To Help Articles
    • Getting Started Guide
    • ADI: Words Matter
    • Community Help Videos
    View All
  • Blogs

    Highlighted Blogs

    Achieving Power Over Data with RS-485 Transceivers

    By Bryson Barney What if a single wire could carry both energy and information seamlessly—without either getting in the way? The future of connectivity...

     

    ​​Functional Safety: A Driver of “Shift Left”​

    By Richard Obrien The key to faster, safer product development is to start smart - not catch up hard. In this blog, we’ll explore how the "Shift Left...

    Latest Blogs

    • The 5 Advantages of Hardware Fault Tolerance
    • The Power Problem Inside Every AI Breakthrough: Part 1 of 3
    • Simplifying Stability with EVAL-KW4503Z: Part 1 of 3
    • Energy Transfer Considerations in Isolated SMPS: Part 2 of 4
    • Automating LTspice .NOISE Measurements with .STEP and .MEAS Directives: Part 2 of 3
    Read All Blogs

    ADI Blogs

    • EZ Spotlight
    • The Engineering Mind
  • ContentZone

    Visit ContentZone

    ContentZone

    Technical articles. Blogs. Videos. Your ADI content, all in one place.

    View ContentZone

    Featured Content

    Featured Content Title

    Blurb About Content

    View Content By Industry

    • Aerospace and Defense Systems
    • Automotive Solutions
    • Consumer Technology Solutions
    • Data Center Solutions
    • Energy Solutions
    • Healthcare Solutions
    • Industrial Automation Technology Solutions
    • Instrumentation and Measurement Solutions
    • Intelligent Building Solutions
    • Wireless Communication Solutions

    View Content By Technology

    • A2B Audio Bus
    • ADI OtoSense Predictive Maintenance Solutions
    • Dynamic Speaker Management
    • Gallium Nitride (GaN) Technology
    • Gigabit Multimedia Serial Link (GMSL)
    • Industrial Vision
    • Power Solutions
    • Precision Technology
    • RF
    • Sensor Interfaces
    • SmartMesh
EngineerZone
EngineerZone
ADSP-BF70x
  • Log In
  • User
  • Site
  • Search
OR
Ask a Question
ADSP-BF70x
  • Processors & DSP
  • Blackfin Processors
  • ADSP-BF70x
  • Cancel
ADSP-BF70x
Documents How can I initialize DDR memory device connected to BF70x processor ?
  • Q&A
  • FAQs/Docs
  • Members
  • Tags
  • Cancel
  • +Documents
  • ADSP BF706 Ezkit Mini SPI1 cannot be done in master mode.
  • +ADSP-BF707: FAQ
  • -ADSP-BF70X: FAQ
    • Different Wake-up Sources on BF70x
    • ADSP-BF70x application cannot boot using Secure Boot
    • CPLB enhancements in Blackfin+ Core
    • FAQ: Different Wake-up Sources on BF70x
    • Digital watch code for RTC
    • Enhancements in Hardware Loop in Blackfin+ core
    • Enhancements in Supervisor Mode in Blackfin+ core
    • HADC maximum bandwidth
    • Highlights of MSI on BF70x
    • How can I initialize DDR memory device connected to BF70x processor ?
    • How do I access the full memory space of the SPI slave?
    • How L2CTL in BF70x is different than BF60x ?
    • How the System Cross Bar (SCB) in BF70x different than in BF60x ?
    • How to configure MSI IDMAC for Dual Buffer Descriptor Ring mode operation
    • FAQ: How to re-enable the Core clock on BF70x after gating it
    • How to send data using SPI READY signal
    • How to take the core out of reset on BF70x
    • How to use the Signtool Utility to encrypt and sign the unsigned bootstream (loader file generated for an application, example:bootstream.ldr)
    • Is INIT Code supported in Secure Boot in ADSP-BF707
    • Monitoring Cache Performance on the ADSP-BF70x
    • Performance Enhancements in Blackfin+ core
    • UART slave boot BF70x with Higher BAUD rate
    • Sample code for HADC on BF70x?
    • What are the salient features of SPI Host Port on BF70x?
    • What is the effect of bus disabling (RDEN bit) on RTC functionality?
    • What is the Encrypt-Hash and Hash-Decrypt mode in PKTE module
    • What is the purpose of the ownership bit when programming the PKTE module for encryption/hashing?
    • What modes of Encryption and Hashing are supported and how do they make an application secure
    • Getting Started with ADSP-BF70x Processors
    • How to re-enable the Core clock on BF70x after gating it
    • Known Errata Against ADSP-BF70x Blackfin+ Datasheet
    • the secret BF70x documentation
    • Where can I find power consumption data for BF70x processors?
    • What are the major differences between DMC module of BF60x and BF70x ?
    • Cache Enhancements in Blackfin+ core
    • Can I pass the output generated from PKA directly to the PKTE module for encryption/decryption
    • Configuring Timer in continuous/single pulse mode
    • DMA error interrupt
    • How to verify that the boot bytes are accurate in all boot modes for the ADSP-BF60x and ADSP-BF70x?
  • BF707 SPI Slave to Master loopback communication
  • Example for UART transmit and receive operation using Core Mode for BF707
  • GPIO example code for BF707
  • Hardware Reset using Watchdog in BF706
  • SPI example in Autobuffer mode on BF707

How can I initialize DDR memory device connected to BF70x processor ?

BF70x processor's Dynamic Memory Controller (DMC) supports interface to DDR2 and LPDDR memory devices.The DMC must be configured to perform an initialization sequence as per the memory device specifications and application requirements. There are two types of DMC Initializations which may be required by an application using DMC:

1. Initialization for loading static code/data: This is required to be able to load any static code and (or) data to the DDR memory. While loading the code/data in the IDDE, this is done with the help of an xml file. To enable this, the option "Target->Settings->Target Options->Use xml reset values" should be checked. By default the IDDE uses the CGU and DMC reset values as defined in the "ADSP-BF707-resets.xml" file available in the folder "<Installation directory>\CrossCore Embedded Studio 1.1.0\System\ArchDef".  The default clock settings used are: PLLCLK=800 MHz, CCLK=400 MHz, SYSCLK=200 MHz, SCLK0=100 MHz, SCLK1=200 MHz and the DMC settings are for the DDR2 memory device MT47H128M16RT-25E.  For any custom CGU/DMC settings, it is recommended to use the custom board support file which can be selected by enabling customizations in the debug configuration settings as shown in the below screenshot.

For example, the attached file "lpddr_custom_board_support.xml" overrides the default DMC settings in the ADSP-BF707-resets.xml and configures the controller for the LPDDR device MT46H128M16LFB7-5.

Similarly, when the code is booted standalone without using an emulator, the boot code does the job of configuring the DMC as per the DDR2/LPDDR memory device connected to the processor for initializing any static code/data. The init code which comes with CCES by default configures the DMC for the DDR2 memory device MT47H128M16RT-25E available on the BF707 EZ-Kit. This can be modified easily by changing the DDR2 parameters in the file "init_memory.h". For LPDDR init code, the attached files "init_memory.h" and "init_memory.c" should be used instead of the default files. Also, the following line in the init_code.c should be modified to call the function "DMC_Init_LPDDR" instead of  "DMC_Init_DDR2".

#if defined(__CONFIG_MEMORY__)

        DMC_Init_DDR2();

#endif

2. Initialization for dynamic accesses: Most of the times, the static initialization (performed with the help of xml file or  init code) can be used even for accessing the DDR2/LPDDR memory for accessing external code/data while executing application code. But in some cases where a different CGU/DMC settings are required in the application code, the DDR2 and LPDDR Initialization code supplied with the init code can be used as reference to write a custom DDR2/LPDDR Initialization code sequence.

Attachments:
8461.init_memory.c.zip
4705.init_code.c.zip
2043.init_memory.h.zip
4527.lpddr_custom_board_support.xml.zip
  • Share
  • History
  • More
  • Cancel
analog-devices logo

About Analog Devices

  • Who We Are
  • Careers
  • Newsroom
  • What We Do (Signals+)
  • Investor RelationsExternalLink
  • Quality & Reliability
  • Sales and Distribution
  • What's New on Analog.com
  • Contact Us

Find Help

  • Support
  • Resources
  • WikiExternalLink
  • Analog Dialogue
  • ADI Developer PortalExternalLink

myAnalog

Interested in the latest news and articles about ADI products, design tools, training, and events?

Go to myAnalog
  • Instagram page
  • Twitter page
  • Linkedin page
  • Youtube page
  • Facebook
  • Legal and Risk
  • Accessibility
  • Privacy Policy
  • Privacy Settings
  • Cookie Settings

©2026 Analog Devices, Inc. All Rights Reserved

analog-devices

About Analog Devices

Down Up
  • Who We Are
  • Careers
  • Newsroom
  • What We Do (Signals+)
  • Investor RelationsExternalLink
  • Quality & Reliability
  • Sales and Distribution
  • What's New on Analog.com
  • Contact Us

Find Help

Down Up
  • Support
  • Resources
  • WikiExternalLink
  • Analog Dialogue
  • ADI Developer PortalExternalLink

myAnalog

Interested in the latest news and articles about ADI products, design tools, training, and events?

Go to myAnalog
Instagram page Facebook Twitter page Linkedin page Youtube page
  • Legal and Risk
  • Accessibility
  • Privacy Policy
  • Privacy Settings
  • Cookie Settings

©2026 Analog Devices, Inc. All Rights Reserved