Cypress Perform

Home > Design Support > Cypress Developer CommunityTM > Cypress Forums > Memory > CY14B256Q2A access methodology problem

Cypress Developer CommunityTM
Forums | Videos | Blogs | Training | Rewards Program | Community Components



CY14B256Q2A access methodology problem
Moderator:
PRIT

Post Reply
Follow this topic



CY14B256Q2A access methodology problem

brucle posted on 25 Jan 2012 4:28 PM PST
Member
2 Forum Posts

Hi,

I'm running linux on an MPC8308, trying to access a CY14B256Q2A SPI nvSRM and I'm having dificulties.  To avoid having to write my own driver, I'm utilizing an existing Freescale driver for the SPI controller in the 8308 (spi_fsl_spi), and an existing interface driver that sits on top of that (spidev specifically if it matters) and I'm unable to even read the status register of the nvSRAM.  I'm pretty sure the problem is in the way these two drivers work but I want to confirm it with you since the datasheet for the nvSRAM isn't explicit either way.

To read the status register the device needs to have CS asserted, SPICLK started, and 0x5 clocked onto MOSI.  On the first clock following the read status reg command the MSB of the status register gets clocked out on MISO.  My question is, what happens if the clock stops for a period of time between the LSB of the commnd and the MSB of the result?  I've scoped the signals and what I see is eight clock pulses with the read status reg command, then clock goes silent for about 20msec and then starts back up (CS is held low the entire time), but it appears no data is clocked out of the nvSRAM when the clock starts back up.  Does the part require that clock be continuous for the entire transaction?

The fact that burst reads are possible as long as CS is held low implies that the clock can start and stop without impacting the part, but it's not totally clear.

Thanks.

Bruce




Re: CY14B256Q2A access methodology problem

brucle posted on 26 Jan 2012 10:34 PM PST
Member
2 Forum Posts

Well this is embarassing.  I've answered my own question.  Yes the part is fully static and can tolerate the clock stopping between ending a command and reading the results.  I had it in my head that there was a non-zero value in the status register at powerup.  Wrong.  I was indead reading the status register and it's value was zero.  As soon as I wrote a WREN command (write enable) and read the status register I got back a value of two.

After that everything works fine.  Thanks for the time and sorry about the noise.

Bruce






ALL CONTENT AND MATERIALS ON THIS SITE ARE PROVIDED "AS IS". CYPRESS SEMICONDUCTOR AND ITS RESPECTIVE SUPPLIERS 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. NO LICENSE, EITHER EXPRESS OR IMPLIED, BY ESTOPPEL OR OTHERWISE, IS GRANTED BY CYPRESS SEMICONDUCTOR. USE OF THE INFORMATION ON THIS SITE MAY REQUIRE A LICENSE FROM A THIRD PARTY, OR A LICENSE FROM CYPRESS SEMICONDUCTOR.

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 and Conditions of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms and Conditions of this site. Cypress Semiconductor and its suppliers 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.

Spec No: None; Sunset Owner: GRAA; Secondary Owner: RAIK; Sunset Date: 06/15/20