- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
When I program a PSoC 4 device, the programmer shows:
** Silicon: 0x1901, Family: 0xA9, Rev.: 0x21 (B0)
** Detected Device: CY8C4045AZI-S413
I would like to grab this data into my application so I can send it to another device via I2C. I've been able to find that the silicon ID is here:
#define CYREG_SFLASH_SILICON_ID 0x0ffff144u
...and I do read out 0x1901 from this location
Poking around, I'm able to find the A9 here
#define CYREG_ROMTABLE_PID0 0xf0000fe0u
However, I'm unable to find any information on the silicon revision noted in the Registers TRM, and poking around I'm unable to find the "0x21" in any memory locations.
At what register location in the part can I find the Revision information?
Are the other locations I noted the proper locations for Silicon ID and Family?
Thank you.
Solved! Go to Solution.
- Labels:
-
PSoC 4 MCU
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @CoreyW_81 ,
The locations you have mentioned are correct, but you can also find the all 3 sets of data, including the revision ID, by using system calls as mentioned in section 19.5.1 of the PSoC 4000 Architecture TRM.
I am attaching here a firmware source code which you can use as reference for implementing the system calls. I referred section 19.4.1, Performing a system call, of the PSoC 4000 Architecture TRM for implementing this.
Hope this helps
Regards
Alen
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello.
You can verify this data with that stored in Metadata area of the generated hex file.
Metadata starts at 0x9050 0000.
The format of Metadata is described in the PSoC 4xxx Programming Specification document. See Sections 2.3 and 4.5.
https://www.infineon.com/dgdl/Infineon-CY8C4xxx_CYBLxxxx_Programming_Specifications-Programming+Spec...
I'm not aware of any published database for device ID numbering.
BTW, there is also a UniqueSiliconID which relates to the silicon wafer during manufacturing. Not all that useful, but is often confused with Silicon Device ID.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
You missed the main point of my query. I want to gather this information FROM MY APPLICATION running on the PSOC 4. I can find 3 of the 4 bytes in the memory space.
1) I wanted to know if those locations are correct.
2) I want to know where I can find the Revision byte in the memory space.
Thanks.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi.
Section 4.5 of the programming spec has code to read all the data you're looking for. Write a small project, compile the code, read the output listing to find the absolute SROM memory locations and compare to what you have.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @CoreyW_81 ,
The locations you have mentioned are correct, but you can also find the all 3 sets of data, including the revision ID, by using system calls as mentioned in section 19.5.1 of the PSoC 4000 Architecture TRM.
I am attaching here a firmware source code which you can use as reference for implementing the system calls. I referred section 19.4.1, Performing a system call, of the PSoC 4000 Architecture TRM for implementing this.
Hope this helps
Regards
Alen
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi @CoreyW_81 ,
Glad your query is resolved.
Please feel free to post any queries or issues you may face on Infineon products in the community and we will be happy to help.
Warm Regards
Alen