This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Memory for XC167

First, I'm mostly an analog engineer just now getting into microcontroller design. I'll be using the XC167 and am have trouble finding external memory. I have 12MB of external memory area and am therefore looking for 12MB of memory. Ive been looking for synchronous DRAM but can only find 64MB and greater.
Does anybody have recommendations for external memory?

Parents
  • Yeah I'm starting to get a headache over this much memory.......Apparently the software engineer was told he may need upto 2MB just for fonts for multiple languages (Korean type fonts?). He wants all of it there for development though.
    Now I have a question based on your experience using this processor. Basically I'm not far enough along to know how fast you can actually access memory, i.e. how many instruction cycles? Is fast sram (10ns) much faster than standard sram with a 70ns response time? The XC167 is only 40Mhz. I know the memory itself is much faster, but is there really a big difference in this application?

    Im considering using Psuedo SRAM.......I know you have an opinion, dont be shy......LOL

Reply
  • Yeah I'm starting to get a headache over this much memory.......Apparently the software engineer was told he may need upto 2MB just for fonts for multiple languages (Korean type fonts?). He wants all of it there for development though.
    Now I have a question based on your experience using this processor. Basically I'm not far enough along to know how fast you can actually access memory, i.e. how many instruction cycles? Is fast sram (10ns) much faster than standard sram with a 70ns response time? The XC167 is only 40Mhz. I know the memory itself is much faster, but is there really a big difference in this application?

    Im considering using Psuedo SRAM.......I know you have an opinion, dont be shy......LOL

Children
  • Yeah I'm starting to get a headache over this much memory.......Apparently the software engineer was told he may need upto 2MB just for fonts for multiple languages (Korean type fonts?). He wants all of it there for development though.
    RE fonts; I have yet to see an app with fonts in SRAM, I have seen a plethora of apps with fonts in Flash. I have - among several others - done a limited Japanese which took about 400k.

    Now I have a question based on your experience using this processor. Basically I'm not far enough along to know how fast you can actually access memory, i.e. how many instruction cycles?
    I'm sorry, but here you will need to refer to the data sheet, so many factors influence this.

    Is fast sram (10ns) much faster than standard sram with a 70ns response time?
    Well, I'll take a guess that it is 7 times faster :)

    I know the memory itself is much faster, but is there really a big difference in this application? I do not recall if the 167 is one of the chips with a software programmable memory timing, if it is this will be a need vs cost decision

    Get at this "programmer"s butt and get it clear what (s)he need in flash (program, fonts and other permanent storage) and how much in SRAM. I would not be surprised if you end up with just one SRAM chip

    Erik

    PS in Flash you can get much more memory per chip than with SRAM (unless someone know about some chips I have not heard about)

  • Mike,

    I'm sorry your thread has been hijacked. I'd love to help but I'm not familiar with the XC167. Given that you are just starting out with microcontroller design I'd suggest that you spend a couple (more) days studying the datasheet and application notes for the device, all should become clear. I did have a quick look at the documentation for this part available on Keil's website and it looks pretty comprehensive.

  • "Basically I'm not far enough along to know how fast you can actually access memory, i.e. how many instruction cycles? Is fast sram (10ns) much faster than standard sram with a 70ns response time? The XC167 is only 40Mhz. I know the memory itself is much faster, but is there really a big difference in this application?"

    This really depends on many things, but I would guess that 70ns is fast enough. The fastest loop to copy data from one place to another I can think of looks something like this:

    ; R1 = source address
    ; R2 = destination address
    ; R3 = address of R0
    ; R4 = source data end address
    
    LOOP:  MOV  R0,[R1+]    ;read source word
           MOV  [R2+],[R3]  ;write to destination
           CMP  R1,R4       ;end of data?
           JMPR cc_ULT,LOOP ;jump if not
    

    The fastest execution time of this loop at 40MHz is 100ns if it executes from the XC167 Program RAM and the core doesn't have to wait for data read/write to complete. So this is too fast for 70ns RAM only if the source and destination are on the same RAM. If there is only one access to the RAM in the loop or the code executes from anywhere else than Program RAM, 70ns will do.

    If you really need as much RAM as you say, you will be using far, huge or xhuge memory type to access it, which adds to the loop execution time unless you go through the trouble of writing it in assembly using DPP addressing as in my example.

    This was my estimation which may well be wrong. Infineon has quite good documentation about the timing, but so many things affect it that it is difficult to calculate what the actual timing will be.

    Sauli

  • Mike, send me a ping at erikm@digrec.com, I have to critisize another techical post and do not want to continue discussing with Stefan how I do it.

    Erik