• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Microcontrollers » Stellaris® ARM® Microcontrollers » Stellaris® ARM® LM3S Microcontrollers Forum » Interfacing with external memory
Share
Stellaris® ARM® Microcontrollers
  • Forum
Options
  • Subscribe via RSS

Forums

Interfacing with external memory

  • christopholous
    Posted by christopholous
    on Jan 16 2007 00:31 AM
    Prodigy30 points
    Hello, im using the 811 eval kit. One part of my project involves interfacing with some external memory.

    I was wondering if there is a simple way to assign a number of GPIOs to represent a binary number based off values inside a variable (ie memory address). I can think of a way to do this but its a rather inefficient approach, so im wondering if there is a simple way that this might be accomplished.

    Id appreciate you suggestions.
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • tinroofrusty
    Posted by tinroofrusty
    on Jan 16 2007 02:21 AM
    Intellectual370 points
    Since this product has no external memory bus (as you already know), creating a bus is going to take a few port pins and maybe some inefficiency. Efficiency is relative - this cpu can run near 50mips, we're not talking about a 8051 executing 1mip.

    You have some choices depending on what it is you're actually trying to achieve - serially interfaced memory is the easiest, but the slowest. You can get FRAM devices up to 512kbits (maybe more now) that read a write reasonably fast and are non-volatile.

    Assuming you want something like a standard 8bit bus - I'd suggest something like:

    8port bits for the bus itself.
    1 port bit for address latch low
    1 port bit for address latch high
    1 port bit for /wr
    1 port bit for /rd
    This involves outputting the address low(8bits) onto the bus port, then toggling the address latch low. You'll need something like a 74hc574 latch.

    The high address is the same as above.

    Then for a read, /rd = 0, wait,read the data from the port pins,then /rd = high

    For a write, write the write data to the bus port, /wr =0, wait,/wr = 1.

    This cpu can run at 50mhz, so the bus can be executed as fast as the old ibm XT bus. The code would execute in less than 1uS, so unless you're needing super speed, I think this may suffice. If you want to cut more cycles, write the bus code in assembler, but I think the 'c' compiler wont have too much trouble doing what you want fairly efficiently.

    If you wanted to get a bit smarter, you could use a cpld and/or have an address counter so you can access the memory sequentially if required.

    I'd have to question the economics of such a solution - you're tacking a lot of bits and bobs onto a little processor just for some external memory. The obvious solution is to choose a different cpu that has the external mem interface or more internal memory.
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • christopholous
    Posted by christopholous
    on Jan 16 2007 17:16 PM
    Prodigy30 points
    alrighty thanks for your input, i guess ill do it the only way I can think of :P
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • steve8pi
    Posted by steve8pi
    on Jan 18 2007 14:21 PM
    Prodigy100 points
    If you want non-volatile memory, another option is Serial Flash, with the SPI interface. Should be able to connect it directly to the Luminary SPI port without any logic. I've seen parts advertised up to 128 Mbit (16 MByte). Nice small packages, too.

    Mouser has several listed, from as low as $1.30 for single quantity of 64KByte.
    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use