PSOC6 SPI clocl could not be 25Mwhen CM4 is 150MHZ

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Frank_vec
Level 4
Level 4
Distributor - Zenitron(GC)
50 replies posted First like received First comment on blog

Frank_vec_0-1670321774502.png

我想问的时在M4运行在150M的情况下,SPI是否可以运行到25M的最高速

 

谢谢

0 Likes
1 Solution
Vison_Zhang
Moderator
Moderator
Moderator
First comment on KBA 750 replies posted 250 sign-ins

SCB SPI 跑不到 25M 的速率,最大只能跑到 20M左右。UDB SPI 可以跑到 25M,但是只使用与支持 UDB 的 P6 芯片使用。

View solution in original post

0 Likes
6 Replies
YuZh
Moderator
Moderator
Moderator
100 replies posted 10 likes received 50 sign-ins

Hi:

按照手册上的说法,最高可以跑到25MHz,要注意引脚的分配。我截图了PSOC61的手册信息,您可以对应您的手册查看一下。

Capture.PNG最大速度.PNG

0 Likes
lock attach
Attachments are accessible only for community members.
Frank_vec
Level 4
Level 4
Distributor - Zenitron(GC)
50 replies posted First like received First comment on blog

Dear  Manager 

是这样的,当CM4 设置为150MHZ的时候,选择SPI 的时钟的,然后 

Frank_vec_0-1670507264269.png

Frank_vec_1-1670507278053.png

----------------------------------------------------------------------------------------------

 

 

 

 

 

Frank_vec_3-1670507303693.png

Frank_vec_1-1670552830019.png

 

 

 

 

2 为什么150MHZ 的时候 Data rates 是 18.75MHZ ,100MHZ时候  Data rates 是 25MHZ,,为什么CM4是 150MHZ 的时候达不到25MHZ反比比100MHZ的时候小 

主要是这个问题 

 

3 有两个 datarate 第一个是 最大 25MHZ,和后面这个有啥区别呢 ,哪个是实际的呢 

4 附件有design.modus文件,可以在任一例程替换此文件来观察现象

不胜感激

Thanks

0 Likes
lock attach
Attachments are accessible only for community members.
YuZh
Moderator
Moderator
Moderator
100 replies posted 10 likes received 50 sign-ins

Hi:

你所有问题的根源是没理解这个时钟系统:

1、在你通过外部时钟ECO选入一个时钟源进入系统之后,通过PLL来倍频,如果要跑到150MHz主频,不能同时使用FLL和PLL,这点你估计知道。

2、之后我可以选择使用那个频率作为整个外设源头,这个地方就是你错误设置频率的地方,你希望SPI进入的时钟是150MHz,时钟进入外设之前,还有一道分频器的,你这个地方没有设置,如果你希望进来150HHz,那么设置为1,并且同时要将SPI市中院设置为你要输入的时钟源。

3、你说的为啥150MHZ 的时候 Data rates 是 18.75MHZ ,100MHZ时候  Data rates 是 25MHZ,,为什么CM4是 150MHZ 的时候达不到25MHZ反比比100MHZ的时候小 :这个问题应该涉及到这是图形界面是自己动进行计算的,他不总是按照最高频率给你设置。

4、最高频率问题,你需要实际测试一下,并且也要根据你的所驱动的外设芯片对于SPI 要求来看。

附件是我的配置供你参考。CLCOK_PERI.PNGCLOCK.PNGSPI_INPUT_150MHZ.PNG

0 Likes
lock attach
Attachments are accessible only for community members.
Frank_vec
Level 4
Level 4
Distributor - Zenitron(GC)
50 replies posted First like received First comment on blog
Frank_vec_0-1670808408109.png

 

Dear Manager 

Frank_vec_1-1670808424291.png

 

按照您的方法是可行的,SPI data rates 是变大了 ,但是报错呀 

 

您可提供一份 设置好的design.modus文件吗 ?

非常感谢

Thanks

0 Likes
lock attach
Attachments are accessible only for community members.
YuZh
Moderator
Moderator
Moderator
100 replies posted 10 likes received 50 sign-ins

Hi:

我详细看了下,CLK_PERI进入的最大时钟只有100M,所以进入大SPI 最大时钟也就100MHz,所以我这里做了修改把PLL时钟降低到100MHz,直接把他输入CLK_PERI,这样子SPI就可以跑在100M,到到25MHz的datarates,我把我修改modus放在附件中,你看下是否满足你的要求。

0 Likes
Vison_Zhang
Moderator
Moderator
Moderator
First comment on KBA 750 replies posted 250 sign-ins

SCB SPI 跑不到 25M 的速率,最大只能跑到 20M左右。UDB SPI 可以跑到 25M,但是只使用与支持 UDB 的 P6 芯片使用。

0 Likes