9 Replies Latest reply on Jun 6, 2018 10:16 AM by bob.jones_2019166

    Is the EMIF supposed to work on cy8c5888lti-lp097?

    bob.jones_2019166

      I am attempting to incorporate the EMIF into a design.  I chose asynchronous mode as I needed a chip select (cen), a write enable (wen) and read enable (oen... It should

      work for this case).  Originally I set the bus clock to 33 MHz (it was the default), but then I decided to slow it down, so currently it is at 11MHz.  I've even slowed down the external memory speed (175ns).  In the project I start the EMIF component with EMIF start, but monitoring the cen, wen, and oen signals with an O-scope show that the lines remain high even during memory accesses to 0x60000000.  Unfortunately, I can't easily post the project here as the machine I'm running it from isn't internet connected and isn't readily available.  But, my main question is: does the Cy8c5888lti-lp097 have an EMIF?  I haven't seen anything that indicates it wouldn't.  and PSoC Creator 4.1 (I'm not using 4.2 here) doesn't indicate any issues.

       

      One other question:  I saw in a post from March 2017 that the 8 bit data bus width doesn't work with EMIF.  Is this still the case?  The post referred to debugging specifically, but I was wondering if that was a deeper issue because I need 8 bit data bus width.

       

      One correction:  It appears that the OEN, WEN, and CEN go high (well, I should say "higher" because it goes to about 4V from 3.3 or 3.4).  It is as if the documentation on the signals is wrong (it says they are active low) or at least that the component is trying to do something else.

        • 1. Re: Is the EMIF supposed to work on cy8c5888lti-lp097?
          bob.marlowe

          The EMIF component is available for all PSoC5s and it is error-free and may runs with 8 bit wide memories.

          Your shown address of 0x60000000 is out of the 24-bit address range and the results I cannot predict.

          There is absolutely no need to reduce the bus clock (except for power saving) and you may run (see AC/DC specs of EMIF) at 33MHz.

          Furthermore I would suggest you to upgrade to Creator 4.2 and to update the project's components.

           

          Bob

          • 2. Re: Is the EMIF supposed to work on cy8c5888lti-lp097?
            bob.jones_2019166

            Looking at the documentation, as well as the code, the EMIF is supposed to "live" at the 0x60000000 address range (PSoC 5LP EMIF Memory Address Map).  Access to this range should trigger the component.  If you look at the address pointed to by CYDEV_EXTMEM_BASE, this is what you should find.  So I would expect any access to this memory range would trigger the write/read and chip enables.  Additionally, the one example I could find of using the EMIF looks like it originally just accessed 0x60000000 (from 0-255).  Currently I'm trying to test with that code to see if I can even get the signals to register appropriately to access my device.

             

            Unfortunately, either my board is bad, or something else is going wrong because accesses to this memory address do appear to trigger the signals, but they go from 3.3V to 4.0V.  They don't seem to be active low.  I even tried switching modes to "custom", but the best that seems to do is trigger the write enable to go high (which *IS* appropriate for a write in the mode, but it never goes low after that.  I don't know if I need to do something other than looping it around from read/write enable into a nor gate.  There wasn't a whole lot of documentation on udb_ready, so I didn't really know what else to do with it.).  However, the read never seems to do anything in that mode.

             

            I only changed the speeds to see if I was missing something on the scope, but after playing around with it more, I don't think I was.  It just wasn't behaving as expected.

            • 3. Re: Is the EMIF supposed to work on cy8c5888lti-lp097?
              bob.marlowe

              Which board are you using? CY8CKIT-???

              Can you please post your complete project or a shortened version that shows the error so that we all can have a look at all of your settings. To do so, use

              Creator->File->Create Workspace Bundle (minimal)

              and attach the resulting file.

               

              Bob

              • 4. Re: Is the EMIF supposed to work on cy8c5888lti-lp097?
                bob.jones_2019166

                As I said, I don't have direct internet access on the machine that I'm developing on and don't currently have access to it.

                 

                I have since taken a different tack as far as analysis.  I put a probe on address line 0.  As expected, I see it toggling nicely as the address space is being accessed.  Additionally, NOW I'm seeing the OEN line working as I would expect (90ns, since I switched back to 30ns, and 33MHz default).  I haven't checked the chip enable, but I'm less worried about this as I can probably just tie this low.  However, WRITES don't seem to produce anything on the WEN line.  I can't see where this would be going wrong unless there are certain pins I cannot use for WEN, but I don't think this is the case.

                 

                I'm using the el-cheapo c8ckit-059 (the cy8c5888lti-lp097).  Which has been a pretty good piece of kit, and if it pulls this off, a GREAT piece of kit.

                • 5. Re: Is the EMIF supposed to work on cy8c5888lti-lp097?
                  user_78878863

                  Verify, with thwe -059 schematics, that there isn't any other component connected to the WEN line (or any other EMIF line). The dev kits are known to sometimes have components connected to shared pins

                  • 6. Re: Is the EMIF supposed to work on cy8c5888lti-lp097?
                    bob.jones_2019166

                    Looks like I've got some sleuthing to do on my connectors because I was able to "connect" each of the different signals (OEN, WEN, and CEN) to the same pin in turn.  I could see on the scope what I expected, but just *NOT* on the OTHER PINS.  So I think there is something wrong with those connections.  But I'm happy to see things are apparently working, just not on the pins I need to use.

                     

                    As far as I know, the kit doesn't have ANYTHING connected to those pins (I'm having to use the "analog" pins for these because my actual project requires an analog component and using port 0 for this is MUCH better than others (especially after you look at the analog wiring)).  But, as far as I can tell, it doesn't really have anything connected to the pins, unless you count the LED on P2[1].

                    • 7. Re: Is the EMIF supposed to work on cy8c5888lti-lp097?
                      bob.marlowe

                      There are a few pins in use on a -059 kit which may disturb your signals:

                      P0_2,3 and 4 Caps

                      P3_2 Caps

                      P2_1 LED

                      P2_2 Switch

                      and some pins on P12 and P15

                      The pins bypassed with caps will not work on high frequencies.

                       

                      Bob

                      • 8. Re: Is the EMIF supposed to work on cy8c5888lti-lp097?
                        bob.jones_2019166

                        Yeah, I ran into the cap issue when I was doing some analog stuff.  But these signals just weren't showing up.  It seems the P15 lines will be okay.  The only problem I have with using them is that my target is a 3.3V thing and these are the lines they use for SIO, so they are the high current lines and are also the ones that are pretty much running at your input voltage (which in my case is USB).  So 5V.  But at least my tests all show that I see the lines.  The signals appear just as stated in the sheets.  My only issue now will be figuring out how fast my target is really running.  And hoping it doesn't burn at 5V.

                        • 9. Re: Is the EMIF supposed to work on cy8c5888lti-lp097?
                          bob.jones_2019166

                          Thanks, btw.  I was really pulling my hair out last week and it wasn't until I was talking it out a bit that I finally hit on using my address lines to find what I was looking for.  Should have done that in the first place.