搜索
bottom↓
回复: 131

震撼!STM32F103VBT6最新超频记录:160MHz,STM32F107记录:400Mhz

[复制链接]

出0入0汤圆

发表于 2010-3-2 20:58:00 | 显示全部楼层 |阅读模式
STM32F103VBT6超到160MHz
    参数情况如下:
    1、CPU:STM32F103VBT6,Y版,09年23周生产
    2、晶振:16MHz
    3、PLL倍频:10
    4、FLASH等待周期:2
    5、PLL时钟源:HSE,不分频
    6、时钟情况:
       1> 系统时钟:16MHz*10   = 160MHz
       2> HCLK时钟:系统时钟/2 = 80MHz
       3> APB2时钟:HCLK       = 80MHz
       4> APB1时钟:HCLK/2     = 40MHz

    如果HCLK不分频(等于系统时钟),我测试的最高频率是144MHz。

    上述参数基本保护不变,PLL倍频设为11(达16MHz*11 = 176MHz),只能运行2~5秒。

    STM32F107VCT6超到400MHz
    参数情况如下:
    1、CPU:STM32F107VCT6,Z版,09年23周生产
    2、晶振:25MHz
    3、FLASH等待周期:2
    4、HSE第一级分频系数(PREDIV2):5,PREDIV2的输出:25MHz/5 = 5MHz
    5、PLL2的倍频:10,其输入为HSE的第一级分频,PLL2的输出:5MHz*10 = 50MHz
    6、PLL3的倍频:10,其输入为HSE的第一级分频,PLL3的输出:5MHz*10 = 50MHz,给以太网模块用
    7、HSE的第二级分频系数(PREDIV1):0,不分频,PREDIV2的输出:50MHz/1 = 50MHz
    8、PLL的倍频:8,其输入为HSE的第二级分频(即PREDIV1的输出,不分频),PLL的输出:50MHz*8 = 400MHz
    9、时钟情况:
        1> 系统时钟:50MHz*8 = 400MHz
        2> HCLK时钟:系统时钟/4 = 100MHz
       3> APB2时钟:HCLK       = 100MHz
       4> APB1时钟:HCLK/2     = 50MHz

    这种配置方式是稳定的。我用过其它的配置方式,都只能达到最高320MHz。

    107已经连续运行超过1周,103才连续运行了2小时(测试中......)。

出0入0汤圆

发表于 2010-3-2 21:33:58 | 显示全部楼层
价值很低

出0入0汤圆

发表于 2010-3-2 21:39:16 | 显示全部楼层
不是有400M的吗?

出0入0汤圆

 楼主| 发表于 2010-3-2 21:45:47 | 显示全部楼层
回复【2楼】hyz_avr  红尘
不是有400M的吗?
-----------------------------------------------------------------------

    那是STM32F107的,不是STM32F103的。107是新出的,应该是采用了新的工艺。

出0入31汤圆

发表于 2010-3-2 21:48:31 | 显示全部楼层
107超到400M?这个世界疯狂了,^_^

出0入0汤圆

 楼主| 发表于 2010-3-2 21:50:07 | 显示全部楼层
回复【4楼】zchong  
107超到400M?这个世界疯狂了,^_^
-----------------------------------------------------------------------

     请参见:http://www.ourdev.cn/bbs/bbs_content.jsp?bbs_sn=3554410&bbs_page_no=1&bbs_id=3020

出0入0汤圆

发表于 2010-3-2 21:54:29 | 显示全部楼层
楼主把107和103的超频记录整合到一起吧,不然还是有很多不明真相的群主啊

标题可以改为:   震撼!STM32F103VBT6最新超频记录:160MHz,STM32F107记录:400Mhz

这样子的话,感兴趣的,就进来了

出0入0汤圆

 楼主| 发表于 2010-3-2 22:19:20 | 显示全部楼层
回复【6楼】VERY  VERY低调
楼主把107和103的超频记录整合到一起吧,不然还是有很多不明真相的群主啊
标题可以改为:   震撼!STM32F103VBT6最新超频记录:160MHz,STM32F107记录:400Mhz
这样子的话,感兴趣的,就进来了
-----------------------------------------------------------------------

    谢谢你的建议,已经按你说的,改了。

出0入0汤圆

发表于 2010-3-2 23:02:53 | 显示全部楼层
赶上486了

出0入0汤圆

 楼主| 发表于 2010-3-2 23:05:53 | 显示全部楼层
不是486,是586.

出10入210汤圆

发表于 2010-3-3 00:13:31 | 显示全部楼层
486DX才100M,97年学校机房50多台,无盘工作站,是学校的宝贝啊!

出0入0汤圆

发表于 2010-3-3 00:33:21 | 显示全部楼层
107这么快,而且还稳定了一周.

请问您都用了那些外设?测试了什么功能.

出0入0汤圆

 楼主| 发表于 2010-3-3 01:00:45 | 显示全部楼层
回复【11楼】wisebaby  明君
107这么快,而且还稳定了一周.
请问您都用了那些外设?测试了什么功能.
-----------------------------------------------------------------------

    使用的外设有:LED灯、以太网、TFT屏显示。

    都正常。
   
    硬件是金牛107开发板,加了2.8寸的TFT。

    内核使用的从RL-RTX V4.05改造的实时操作系统,建了4个线程(1个空闲、1个LED、1个TFT、1个以太网(采用动态内存管理包)),线程调度使用了SysTick定时器。
    每天不定期的联网测试(开/关LED、刷新TFT,通过TCP/IP的web页面),LED以0.5秒的频率闪烁。

出0入0汤圆

发表于 2010-3-3 03:05:00 | 显示全部楼层
如何来测试超频成功? 也许PLL fault 而处于某个低频率下

这个方法如何?

用一个固定的大量计算代码,开始和完成的时候点与灭LED,看具体效能能有多少提高。

出0入0汤圆

 楼主| 发表于 2010-3-3 03:16:48 | 显示全部楼层
回复【13楼】tyou  
如何来测试超频成功? 也许PLL fault 而处于某个低频率下
-----------------------------------------------------------------------

    LED的闪烁时间是根据系统定时器来的。如果是PLL失败,而使用低频,现象是死机。

    不懂,不要瞎猜测。

出0入0汤圆

发表于 2010-3-3 08:24:24 | 显示全部楼层
打算做产品做实验?
否则没任何意义。
1周没问题,不代表一个月没问题,一年没问题。

出0入0汤圆

发表于 2010-3-3 08:48:27 | 显示全部楼层
至少有一点确定

stm32f107的超频性能很好,ST把频率设在72MHz比较保守

出0入0汤圆

发表于 2010-3-3 09:22:34 | 显示全部楼层
楼主您好.
不知可否将源代码发上来,大家下载观摩一下.谢谢.

出0入0汤圆

发表于 2010-3-3 09:40:15 | 显示全部楼层
mk

出0入0汤圆

发表于 2010-3-3 11:31:21 | 显示全部楼层
估计片子很烫了吧

出0入0汤圆

 楼主| 发表于 2010-3-3 11:53:14 | 显示全部楼层
回复【19楼】langley  
估计片子很烫了吧
-----------------------------------------------------------------------

    温度很低,没什么感觉。

出0入0汤圆

发表于 2010-3-3 12:02:18 | 显示全部楼层
回复【14楼】wuzhujian  吴助建
回复【13楼】tyou  
如何来测试超频成功? 也许PLL fault 而处于某个低频率下
-----------------------------------------------------------------------
    LED的闪烁时间是根据系统定时器来的。如果是PLL失败,而使用低频,现象是死机。
    不懂,不要瞎猜测。

=========================================

这种测试没意义

你只是 PLL 输出到 400MHz,实际上除定时器外几乎所有器件都是使用分频后的低频时钟源,同时还有 RTTOS 的空闲进程配合进入待机或休眠,超频等于没超

真要做测试,必须让 core 和 mem 在任何时候都跑到 400MHz,这至少做一套相对复杂的数值处理程序,同时还要对存储器有大量的读写操作

最底线的说,起码跑个圆周率计算程序吧,然后通过以太网接口向访问者提交运算结果,光亮个灯管鬼的用?

出0入0汤圆

 楼主| 发表于 2010-3-3 12:09:12 | 显示全部楼层
回复【21楼】watercat  
回复【14楼】wuzhujian  吴助建
回复【13楼】tyou  
如何来测试超频成功? 也许PLL fault 而处于某个低频率下
-----------------------------------------------------------------------
    LED的闪烁时间是根据系统定时器来的。如果是PLL失败,而使用低频,现象是死机。
    不懂,不要瞎猜测。
=========================================
这种测试没意义
你只是 PLL 输出到 400MHz,实际上除定时器外几乎所有器件都是使用分频后的低频时钟源,同时还有 RTTOS 的空闲进程配合进入待机或休眠,超频等于没超
真要做测试,必须让 core 和 mem 在任何时候都跑到 400MHz,这至少做一套相对复杂的数值处理程序,同时还要对存储器有大量的读写操......
-----------------------------------------------------------------------

    看清楚再说话,不说话,没人当你是哑巴。

    我是说有空闲线程,可我没说空闲在空闲线程中使用了待机或休眠。

    我是说LED闪烁,可我没说说keil自带的网络模块没运行,TFT模块没运行。

    有条件的话,你自己去做测试。

    说实话,如果测试正常,我还真准备用在以后的产品中。

出0入0汤圆

发表于 2010-3-3 12:22:28 | 显示全部楼层
【22楼】wuzhujian  吴助建

    看清楚再说话,不说话,没人当你是哑巴。

    我是说有空闲线程,可我没说空闲在空闲线程中使用了待机或休眠。

    我是说LED闪烁,可我没说说keil自带的网络模块没运行,TFT模块没运行。

    有条件的话,你自己去做测试。

    说实话,如果测试正常,我还真准备用在以后的产品中。

=============================================

1、你以为 NOP 指令会动用几个逻辑单元?

2、你以为 EMAC 和 LCDC 能够随便倍频么?就算你 PLL 输出开到 1GHz,供给这两个模块的也[必须]是分频后的正常工作频率,否则就算你片内外设真的能动起来,但以太网 PHY、对边机器网卡、液晶模块等等也完全不会鸟你的

3、大家都年轻过,也都火气盛过,但搞技术并不是靠着年轻火气盛就能做到一切的,你仔细动脑子想想,如果 STM32F107 真的能做到 400MHz 稳定工作,ST 难道就那么BC的会在数据手册上写最大工作频率 72MHz?就算扣一半频率,到 200MHz,这在 CM3 体系中也绝对是独一份了吧?别以为商人能跟雷锋混血……

4、说实话,你最好讲讲你到底是哪个公司的,我保证以后不会用你所在公司的[任何]产品

出0入4汤圆

发表于 2010-3-3 12:24:45 | 显示全部楼层
没什么意义,一个没问题,不表示100个没问题,100个没问题,不表示10K个没问题,这批没问题,不表示下一批没问题。做成产品,就会在不同的环境中工作,高温,低温,湿热,EMC。

出0入0汤圆

发表于 2010-3-3 12:29:13 | 显示全部楼层
core跑400M才算,你这个不错。

出0入0汤圆

 楼主| 发表于 2010-3-3 12:35:52 | 显示全部楼层
回复【23楼】watercat  
-----------------------------------------------------------------------

    我说过了,你不说话,没人当你是哑巴。

    在PC界,对CPU进行超频测试是常有的事,当年赛羊,就是在2.xG的基础上,超频到4.xG/5.xG的。

    对于一个电子产品,留有20%的超频余量,是很正常的。有的时候,为了市场占有率,甚至特意降低主频来销售也是常有的事,当年Intel和AMD公司都这么干过。只所以分不同频率来区分不同的产品,是市场的需要,非产品本身。

    看你积分有1000多了,在论坛里也混了不少时间了。在开发产品的过程中,主板不变,电路原理图不变,只是换一个PCB板,就说是升级产品,在电子产品界,也是有不老少的公司这么干过。看看手机的更新换代的速度,就很清楚了。

出0入0汤圆

发表于 2010-3-3 12:45:32 | 显示全部楼层
淡定,淡定.....

出0入0汤圆

发表于 2010-3-3 12:47:41 | 显示全部楼层
【26楼】wuzhujian  吴助建

    我说过了,你不说话,没人当你是哑巴。
    在PC界,对CPU进行超频测试是常有的事,当年赛羊,就是在2.xG的基础上,超频到4.xG/5.xG的。
    对于一个电子产品,留有20%的超频余量,是很正常的。有的时候,为了市场占有率,甚至特意降低主频来销售也是常有的事,当年Intel和AMD公司都这么干过。只所以分不同频率来区分不同的产品,是市场的需要,非产品本身。
    看你积分有1000多了,在论坛里也混了不少时间了。在开发产品的过程中,主板不变,电路图不变,只是换一个PCB板,就说是升级产品,在电子产品界,也是有不老少的公司这么干过。看看手机的更新换代的速度,就很清楚了。

=======================================

在技术论坛上讨论问题如果不能有正常的心态,最好就自己找个隐秘角落开个私人论坛独乐乐算了,省得跳出来丢人

1、你在 PC 上超十倍频也不会有人管你,因为就算烧了炸了也是你自己家,但在为工业级应用设计的工业级器件上搞超频,那就是变态

2、就算你要搞超频实验,好歹先证明你的实验设计是正确的啊,你听说过哪个地方做正式的 PC 超频测试的时候,不需要长期连续运行任何专用测试软件,只要显示器能亮、网卡能 ping 通就算完工的?

3、再说一遍,讨论问题应该懂得就事论事和对事不对人,所谓有理不在声高,拿不出有意义的实验设计和有价值的实验数据来,你就算再怎么东扯西扯,也丝毫无助于证明你的论点

出0入0汤圆

发表于 2010-3-3 12:52:11 | 显示全部楼层
不敢这样用

出0入0汤圆

发表于 2010-3-3 13:05:55 | 显示全部楼层
水猫别激动呀

其实他的意思就是2个
1.让 wuzhujian  吴助建 跑个重载程序,比如圆周率计算,而不是几乎空载运行
2.不要把超频用在产品上

我个人认为,别贪心,RAM和CPU内核跑到400MHz够了,外围低速没关系

出0入0汤圆

发表于 2010-3-3 13:14:58 | 显示全部楼层
看到这个标题,心理蹦出两个字:SB。估计LZ还没搞清楚什么叫400MHz。

出0入0汤圆

发表于 2010-3-3 13:39:35 | 显示全部楼层
回复:【22楼】 wuzhujian 吴助建
回复:【28楼】 watercat

    两位不要火气太大, 技术问题可以好好讨论,
    我同意这个观点: <1>  PLL 可以输出到 400MHz, 但实际上除定时器外,其他大部分器件都是使用分频后的低频时钟源
                     <2>  厂家标称 72MHz, 超频 20% 还有把握, 太高了就不保险

出0入0汤圆

 楼主| 发表于 2010-3-3 13:46:53 | 显示全部楼层
回复:【28楼】 watercat
    两位不要火气太大, 技术问题可以好好讨论,
    我同意这个观点: <1>  PLL 可以输出到 400MHz, 但实际上除定时器外,其他大部分器件都是使用分频后的低频时钟源
                     <2>  厂家标称 72MHz, 超频 20% 还有把握, 太高了就不保险

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

    谢谢你的好意。^_^

    没什么的,我只是不喜欢那些自己没搞明白,又喜欢瞎嚷嚷的人,尤其不喜欢是那些动不动就喜欢乱扣赗子的人。

出0入0汤圆

发表于 2010-3-3 13:55:55 | 显示全部楼层
对事不对人。
呵呵。
我反对超频(工业产品)。
仅仅是好玩,做产品还是算了吧。

出0入0汤圆

发表于 2010-3-3 15:13:08 | 显示全部楼层
我想楼主点到炮竹了。。。

顶一下再看

出0入0汤圆

发表于 2010-3-3 15:22:23 | 显示全部楼层
水猫是见几乎到什么批评什么的,这个不必在意,哈哈

出0入0汤圆

发表于 2010-3-3 15:34:49 | 显示全部楼层
建议用 ST 的 DSP 库测试,测试 1024 点 FFT 循环做 1000次;比较超频和不超频的速度.

出0入0汤圆

 楼主| 发表于 2010-3-3 15:37:32 | 显示全部楼层
回复【37楼】zf8848  
建议用 ST 的 DSP 库测试,测试 1024 点 FFT 循环做 1000次;比较超频和不超频的速度.
-----------------------------------------------------------------------

    等我搞明白了ST的DSP库,到时写个程序测试一下,可能的话,出比较结果。
    谢谢你的建议。

出0入0汤圆

发表于 2010-3-3 15:52:50 | 显示全部楼层
回复【楼主位】wuzhujian 吴助建
-----------------------------------------------------------------------

STM32F103VBT6超到160MHz
    参数情况如下:
    1、CPU:STM32F103VBT6,Y版,09年23周生产
    2、晶振:16MHz
    3、PLL倍频:10
    4、FLASH等待周期:2
    5、PLL时钟源:HSE,不分频
    6、时钟情况:
       1> 系统时钟:16MHz*10   = 160MHz
       2> HCLK时钟:系统时钟/2 = 80MHz
       3> APB2时钟:HCLK       = 80MHz
       4> APB1时钟:HCLK/2     = 40MHz

    如果HCLK不分频,我测试的最高频率是144MHz。

    上述参数基本保护不变,PLL倍频设为11(达16MHz*11 = 176MHz),只能运行2~5秒。

    STM32F107VCT6超到400MHz
    参数情况如下:
    1、CPU:STM32F107VCT6,Z版,09年23周生产
    2、晶振:25MHz
    3、FLASH等待周期:2
    4、HSE第一级分频系数(PREDIV2):5,PREDIV2的输出:25MHz/5 = 5MHz
    5、PLL2的倍频:10,其输入为HSE的第一级分频,PLL2的输出:5MHz*10 = 50MHz
    6、PLL3的倍频:10,其输入为HSE的第一级分频,PLL3的输出:5MHz*10 = 50MHz,给以太网模块用
    7、HSE的第二级分频系数(PREDIV1):0,不分频,PREDIV2的输出:50MHz/1 = 50MHz
    8、PLL的倍频:8,其输入为HSE的第二级分频(即PREDIV1的输出,不分频),PLL的输出:50MHz*8 = 400MHz
    9、时钟情况:
        1> 系统时钟:50MHz*8 = 400MHz
        2> HCLK时钟:系统时钟/4 = 100MHz
       3> APB2时钟:HCLK       = 100MHz
       4> APB1时钟:HCLK/2     = 50MHz

    这种配置方式是稳定的。我用过其它的配置方式,都只能达到最高320MHz。

    107已经连续运行超过1周,103才连续运行了2小时(测试中......)。

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


发现了一点问题,片内FLASH和RAM都挂在AHB总线上,就是说速度取决于HCLK

我觉得你的测试结果说明: STM32F103VBT6超到144MHz  STM32F107VCT6超到100MHz

出0入0汤圆

 楼主| 发表于 2010-3-3 16:04:17 | 显示全部楼层
回复【39楼】Clinging  
-----------------------------------------------------------------------

    你说的有一定道理的。

    其实,当STM32F107VCT6超到320MHz,HCLK的频率为系统时钟/2(160MHz)时,也是能正常运行的。

    也就是说,107的运行情况,应该是达不到400MHz,HCLK的速度是瓶颈。就跟PC机一样,以前的PCI总线的33MHz就是瓶颈。

出0入0汤圆

发表于 2010-3-3 16:06:07 | 显示全部楼层
瓶颈好像是FLASH的速度

出0入0汤圆

 楼主| 发表于 2010-3-3 16:06:56 | 显示全部楼层
另外,如果STM32带全速CACHE的话(不只现在的2个64位),运行速度应该能接近400MHz。如同PC机一样。

出0入0汤圆

发表于 2010-3-3 17:02:50 | 显示全部楼层
估计 HCLK=SYSCLK/2 的 160MHz 没有 HCLK=SYSCLK 的 144MHz 运算快了.
因为所有的总线存取包括 SRAM 都分频了. 得带个全速 Cache 才能发挥速度了

出0入0汤圆

发表于 2010-3-3 19:03:04 | 显示全部楼层
说来说去,还是楼主没看清楚STM32的数据手册。STM32的处理器核心使用的是HCLK,SYSCLK只是PLL的频率,就算是LPC2100的PLL也至少能工作在72×4=288MHz的频率上。在有就是楼主测试方式不可取,【21楼】 watercat说的很有道理。测试PC超频是否稳定通常要用测试软件把CPU占用率长期挤到100%,并同时且要有大量的数据交换才行的

(原文件名:stm32.jpg)

出0入0汤圆

 楼主| 发表于 2010-3-3 19:09:38 | 显示全部楼层
回复【44楼】fengpc  
说来说去,还是楼主没看清楚STM32的数据手册。STM32的处理器核心使用的是HCLK,SYSCLK只是PLL的频率,就算是LPC2100的PLL也至少能工作在72×4=288MHz的频率上。在有就是楼主测试方式不可取,【21楼】 watercat说的很有道理。测试PC超频是否稳定通常要用测试软件把CPU占用率长期挤到100%,并同时且要有大量的数据交换才行的

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

    又出现一个“专家”?

    __@

出0入0汤圆

发表于 2010-3-3 19:46:46 | 显示全部楼层
都是高手

出0入0汤圆

发表于 2010-3-3 20:14:58 | 显示全部楼层
【45楼】wuzhujian  吴助建

回复【44楼】fengpc  
说来说去,还是楼主没看清楚STM32的数据手册。STM32的处理器核心使用的是HCLK,SYSCLK只是PLL的频率,就算是LPC2100的PLL也至少能工作在72×4=288MHz的频率上。在有就是楼主测试方式不可取,【21楼】 watercat说的很有道理。测试PC超频是否稳定通常要用测试软件把CPU占用率长期挤到100%,并同时且要有大量的数据交换才行的
-----------------------------------------------------------------------
    又出现一个“专家”?
    __@

===================================================

砖家叫兽一类的帽子原样奉还,咱当不起

索性再把话说明白点:

CM3 的运行效率是多少 MIPS/MHz 来着?我记不太清了,好象是 1.2 吧?反正有差也不多

不如你设计个实验,证明用你的方法,能让 STM32F107 跑出 300MIPS 的效率来——这个要求绝对不高吧?当然 NOP 指令就别拿来说了,忒丢脸了点……

谁提议谁举证,这是科学研究的基本态度,先把你的实验数据摆出来,再来这里惊呼震撼会比较有说服力,真的

出0入0汤圆

发表于 2010-3-3 20:44:38 | 显示全部楼层
后来,水猫占便宜了……

出0入0汤圆

发表于 2010-3-3 20:46:20 | 显示全部楼层
回复【48楼】VERY  VERY低调
后来,水猫占便宜了……
-----------------------------------------------------------------------

呃……我占什么便宜了?

出0入0汤圆

发表于 2010-3-3 20:58:05 | 显示全部楼层
回复【49楼】watercat
回复【48楼】VERY  VERY低调
后来,水猫占便宜了……
-----------------------------------------------------------------------
呃……我占什么便宜了?
-----------------------------------------------------------------------

现在的情况是,肯定跑不了300MIPS,然后你拿来打赌,就是赚便宜了。

问个问题,水猫估计他这个400M,最大能跑多少Mips?

出0入0汤圆

发表于 2010-3-3 21:38:20 | 显示全部楼层
认真看看我发的图片,楼主说的400M系统时钟,只是时钟选择开关选择的PLLCLK而已,并不是真正的核心时钟,HCLK才是核心时钟。我上面发的图片是在103的数据手册上截的,107的结构应该也不会有很大改动。
CortexM3的3级流水线内核能跑到400M么?ARM9的5级流水线才刚刚到400M

出0入0汤圆

发表于 2010-3-3 21:39:42 | 显示全部楼层
发现楼主被保护了,哈哈

别问我怎么回事

出0入0汤圆

发表于 2010-3-3 21:51:25 | 显示全部楼层

(原文件名:1111.png)

完整一点的,
原来sysclock连 内核时钟 都不是,空欢喜一场啊

但是楼主的实验精神要支持一下!

出0入0汤圆

发表于 2010-3-4 08:53:17 | 显示全部楼层
Core 的频率果然是 HCLK, 不过不要紧, 这次让大家看仔细了这个细节.

希望得到楼主进一步的测试结果.
真 Core 的频率

出0入0汤圆

发表于 2010-3-4 09:04:00 | 显示全部楼层
我实验过STM32F103ZET,8MHZ外部晶体,128MHZ跑了20来分钟程序就飞了

出0入0汤圆

发表于 2010-3-4 09:29:21 | 显示全部楼层
学习了。。。

出0入0汤圆

发表于 2010-3-5 15:27:52 | 显示全部楼层
没有CACHE的话这样超意义不大~

出0入0汤圆

发表于 2010-3-5 18:14:30 | 显示全部楼层
回复【56楼】wangguanfu
我实验过STM32F103ZET,8MHZ外部晶体,128MHZ跑了20来分钟程序就飞了
-----------------------------------------------------------------------
我实验过STM32F103RCT,12MHz晶振,108MHz能稳定运行。
也很想试试STM32F103VCT在128M能否稳定,关键是flash你设了多少等待周期?如果你设了2个等待,那我就实验一下,如果你设了3个以上,那我就不试了。

楼主的超频方法,在107上和我在STM32F103RCT上的运行速度大致差不多吧。
所以我感觉flash2个周期时,恐怕108M也就是速度上限了。72M时Flash运行在24M,楼主的103主频为80M,Flash等效为26.67M,楼主的107主频100M等效Flash为33.33M。108M时等效Flash时钟为36M。
业界Flash频率33M是可以稳定运行的,我估计40M也许就是极限频率了,所以在2个等待时主频应该不能超过120M。
128M是如果是3个等待的话,Flash为32M,如果程序运行在Flash,速度恐怕还不如108M的主频。当然如果程序跑在SRAM中除外了

出0入0汤圆

 楼主| 发表于 2010-3-5 18:41:30 | 显示全部楼层
回复【59楼】henrei  
-----------------------------------------------------------------------

    STM32F103,FLASH在0等待周期时,可以运行在48MHz;在1等待周期时,可以运行在96MHz,在2等待周期,可以运行在144MHz。目前只验证了一片STM32F103VBT6,非常稳定,温度几乎没变化。这也许是个特例吧。

出0入0汤圆

发表于 2010-3-12 08:26:57 | 显示全部楼层
好久没有震撼的新进展了呀? 顶起来

出0入0汤圆

发表于 2010-3-14 22:54:35 | 显示全部楼层
MARK

出0入0汤圆

发表于 2010-3-14 23:21:28 | 显示全部楼层
mark,发现大家的火气都太大了一些

出0入0汤圆

发表于 2010-3-15 00:41:22 | 显示全部楼层
DSC 乱入........

DSPIC33 极限跑109MHZ(实际主频为54.5MHZ,RC+PLL).....112 20秒自动飞~~~~~

最近考虑加入STM32的CM3党

出0入0汤圆

发表于 2010-3-17 23:25:23 | 显示全部楼层
关注。。都是高手

出0入0汤圆

发表于 2010-3-18 00:37:11 | 显示全部楼层
呵呵,晚上试了,STM32F103VET6最高能超频到16*8=144MHZ

出0入0汤圆

 楼主| 发表于 2010-3-18 08:32:52 | 显示全部楼层
回复【66楼】hfl0215  
呵呵,晚上试了,STM32F103VET6最高能超频到16*8=144MHZ
-----------------------------------------------------------------------

    16*8=148,非144.

出0入0汤圆

发表于 2010-6-9 08:34:59 | 显示全部楼层
能不能用在产品上都不碍事。关键是实验,这个可以摸清楚STM的个性外设和总线的特性。中国现在之所以很多技术都不行主要就是因为缺乏这种实验的精神,都是到处找一个成熟的方案,连里面的电容和电阻数值都不愿意改。这样肯定不行的。
再次支持楼主。

出0入0汤圆

发表于 2010-6-13 15:12:33 | 显示全部楼层
高手啊,学习中

出0入0汤圆

发表于 2010-6-13 15:55:08 | 显示全部楼层
听课

出0入0汤圆

发表于 2010-6-13 16:55:34 | 显示全部楼层
回复【楼主位】wuzhujian 吴助建
-----------------------------------------------------------------------
能不能把你的超频代码发来看看,我的为什么不行?,我直接在STM32F107上修改的.
static void SetSysClockTo72(void)
{
  __IO uint32_t StartUpCounter = 0, HSEStatus = 0;
  
  /* SYSCLK, HCLK, PCLK2 and PCLK1 configuration ---------------------------*/   
  /* Enable HSE */   
  RCC->CR |= ((uint32_t)RCC_CR_HSEON);

  /* Wait till HSE is ready and if Time out is reached exit */
  do
  {
    HSEStatus = RCC->CR & RCC_CR_HSERDY;
    StartUpCounter++;  
  } while((HSEStatus == 0) && (StartUpCounter != HSEStartUp_TimeOut));

  if ((RCC->CR & RCC_CR_HSERDY) != RESET)
  {
    HSEStatus = (uint32_t)0x01;
  }
  else
  {
    HSEStatus = (uint32_t)0x00;
  }  

  if (HSEStatus == (uint32_t)0x01)
  {
    /* Enable Prefetch Buffer */
    FLASH->ACR |= FLASH_ACR_PRFTBE;

    //FLASH等待周期:2
    /* Flash 2 wait state */
    FLASH->ACR &= (uint32_t)((uint32_t)~FLASH_ACR_LATENCY);
    FLASH->ACR |= (uint32_t)FLASH_ACR_LATENCY_2;   

    //2> HCLK时钟:系统时钟/4 = 100MHz
    /* HCLK = SYSCLK */
    RCC->CFGR |= (uint32_t)RCC_CFGR_HPRE_DIV4; //400/4=100Mhz
     
     //APB2时钟:HCLK       = 100MHz
    /* PCLK2 = HCLK */
    RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE2_DIV1;//100Mhz
   
    //APB1时钟:HCLK/2     = 50MHz
    /* PCLK1 = HCLK */
    RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE1_DIV2;//50Mhz

#ifdef STM32F10X_CL
    /* Configure PLLs ------------------------------------------------------*/
    /* PLL2 configuration: PLL2CLK = (HSE / 5) * 8 = 40 MHz */
    /* PREDIV1 configuration: PREDIV1CLK = PLL2 / 5 = 8 MHz */
        
    RCC->CFGR2 &= (uint32_t)~(RCC_CFGR2_PREDIV2 | RCC_CFGR2_PLL2MUL |
                              RCC_CFGR2_PREDIV1 | RCC_CFGR2_PREDIV1SRC);
    //4.HSE第一级分频系数(PREDIV2):5,PREDIV2的输出:25MHz/5 = 5MHz
    //5.PLL2的倍频:10,其输入为HSE的第一级分频,PLL2的输出:5MHz*10 = 50MHz
    //6.PLL3的倍频:10,其输入为HSE的第一级分频,PLL3的输出:5MHz*10 = 50MHz,给以太网模块用 //ok
    //7.HSE的第二级分频系数(PREDIV1):0,不分频,PREDIV2的输出:50MHz/1 = 50MHz

    RCC->CFGR2 |= (uint32_t)(RCC_CFGR2_PREDIV2_DIV5 |
                             RCC_CFGR2_PLL2MUL10 |     //PLL2-50Mhz
                             RCC_CFGR2_PLL3MUL10|      //PLL3-50Mhz
                             RCC_CFGR2_PREDIV1SRC_PLL2 | RCC_CFGR2_PREDIV1_DIV1);  //不分频
  
    /* Enable PLL2 */
    RCC->CR |= RCC_CR_PLL2ON;
    /* Wait till PLL2 is ready */
    while((RCC->CR & RCC_CR_PLL2RDY) == 0)
    {
    }
   
    //50Mhz x8 =400Mhz
    /* PLL configuration: PLLCLK = PREDIV1 * 8 = 400 MHz */
    RCC->CFGR &= (uint32_t)~(RCC_CFGR_PLLXTPRE | RCC_CFGR_PLLSRC | RCC_CFGR_PLLMULL);
    RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLXTPRE_PREDIV1 | RCC_CFGR_PLLSRC_PREDIV1 |
                            RCC_CFGR_PLLMULL8);
#else   
    /*  PLL configuration: PLLCLK = HSE * 9 = 72 MHz */
    RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE |
                                        RCC_CFGR_PLLMULL));
    RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9);
#endif /* STM32F10X_CL */

    /* Enable PLL */
    RCC->CR |= RCC_CR_PLLON;

    /* Wait till PLL is ready */
    while((RCC->CR & RCC_CR_PLLRDY) == 0)
    {
    }
   
    /* Select PLL as system clock source */
    RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_SW));
    RCC->CFGR |= (uint32_t)RCC_CFGR_SW_PLL;   

    /* Wait till PLL is used as system clock source */
    while ((RCC->CFGR & (uint32_t)RCC_CFGR_SWS) != (uint32_t)0x08)
    {
    }
  }
  else
  { /* If HSE fails to start-up, the application will have wrong clock
         configuration. User can add here some code to deal with this error */   

    /* Go to infinite loop */
    while (1)
    {
    }
  }
}

出0入0汤圆

发表于 2010-6-24 15:09:31 | 显示全部楼层
都是牛人啊!学习了!

出0入0汤圆

发表于 2010-6-30 08:52:14 | 显示全部楼层
什么叫超频? 什么叫倍频?  个人感觉还是按datasheet来。TI的DSP标称160M,我倍最多倍到100M,超过100M就不行了,所以玩频率还是悠着点。

出0入0汤圆

发表于 2010-6-30 10:07:45 | 显示全部楼层
回复【75楼】xiubing65
-----------------------------------------------------------------------

PDF上标明能跑多少,就最少能跑多少。跑不到就检查一下自己的LAYOUT,或者你买到假货了

出0入0汤圆

发表于 2010-7-2 10:06:20 | 显示全部楼层
对400MHZ或200MHZ以上表示怀疑。

出0入0汤圆

发表于 2010-7-2 11:24:24 | 显示全部楼层
个人觉得超平验证是非常有必要的,特别是在工业设计上,当然我不是指最终的产品要超频上去.
超频验证的意义在于验证PCB+零件的稳定性.如果产品在超频10%之后任然能稳定的运行,之后以正常频率量产才不会出问题.
CPU的频率越高,周边外设的频率越高,越需要超频验证.
支持楼主的超频实验,但同时也要提醒楼主,前面的几位高人说的也有道理,楼主的超频验证还有些小问题,希望楼主能够继续研究下去,不要被大家的言语吓到,只要你的超频数据是OK的,大家也就没话说了,对吧.
PS.我接触STM32才半年多,主要是用STM32做一个测试工具,不涉及量产,也没做这方面的研究,我觉得至少研究完超频对STM32的内部时钟会有非常深刻的了解.

出0入0汤圆

发表于 2010-7-5 06:17:20 | 显示全部楼层
f101跑过144,led刷屏,效果很明显,芯片温度不高

出0入0汤圆

发表于 2010-7-6 10:40:42 | 显示全部楼层
淡定,淡定,我要淡定

出0入0汤圆

发表于 2010-8-16 23:54:46 | 显示全部楼层
我是新手,超频高的话,PCB设计会不会也有影响?

出0入0汤圆

发表于 2010-8-17 00:42:00 | 显示全部楼层
很牛

出0入0汤圆

发表于 2010-8-17 01:08:38 | 显示全部楼层
回复【78楼】miatiger  
个人觉得超平验证是非常有必要的,特别是在工业设计上,当然我不是指最终的产品要超频上去.
超频验证的意义在于验证pcb+零件的稳定性.如果产品在超频10%之后任然能稳定的运行,之后以正常频率量产才不会出问题.
cpu的频率越高,周边外设的频率越高,越需要超频验证.
支持楼主的超频实验,但同时也要提醒楼主,前面的几位高人说的也有道理,楼主的超频验证还有些小问题,希望楼主能够继续研究下去,不要被大家的言语吓到,只要你的超频数据是ok的,大家也就没话说了,对吧.
ps.我接触stm32才半年多,主要是用stm32做一个测试工具,不涉及量产,也没做这方面的研究,我觉得至少研究完超频对stm32的内部时钟会有非常深刻的了解.
-----------------------------------------------------------------------
其实,超频实践的意义要远远大于应用的意义
真正对系统可靠性要求高的行业,不仅不会超频,反而会降频使用
1GHz的PowerPC降到500MHz,200MHz的片子会降到100MHz。没有为什么,都是几十年来国外公司的使用经验

出0入0汤圆

发表于 2010-8-17 08:00:18 | 显示全部楼层

出0入4汤圆

发表于 2010-8-17 08:18:05 | 显示全部楼层
产品是有使用环境的,特别是工业产品,经常在高温、低温、温热、有强电磁辐射、传导骚扰之类的环境下工作。必须在芯片规定的环境条件下,取一定数量的样品,作各种环境下的正常运行试验,环境试验时间一般为8天左右,以及其它EMC试验,都确定没有问题,才能说超频成功。

出0入0汤圆

发表于 2010-8-17 08:35:27 | 显示全部楼层
MCU没想到过超频。

出0入0汤圆

发表于 2010-8-17 09:11:14 | 显示全部楼层
回复【45楼】wuzhujian 吴助建
-----------------------------------------------------------------------

你做了测试并把结果公布,大家感谢你,但你的火气是大了点,希望你仔细看论坛上给的系统时钟图,在你测试条件下,所谓的400M是伪400M,没有实际意义的!!

出0入0汤圆

发表于 2011-2-10 16:22:32 | 显示全部楼层
支持!!!!!!!

出0入0汤圆

发表于 2011-2-11 08:57:27 | 显示全部楼层
很有意思!!!!!!!!飘过

出0入0汤圆

发表于 2011-2-11 09:32:58 | 显示全部楼层
我一直把36M的F101超成72M的F103用,没发现什么问题
F103的超导过16倍频,8X16=148,刷屏是快多了,通讯也正常,但没在产品上用过

出0入0汤圆

发表于 2011-2-11 09:40:59 | 显示全部楼层
内核是可以的,可是没有高速缓存,速度还是上不去的,解码速度快了,存取数据和指令快不了

出0入0汤圆

发表于 2011-6-19 12:41:30 | 显示全部楼层
其实把stm32f100的好好超超频,那才是灰常值得的事情,特别是c8t6b才10rmb就带2dac,只要速度接近103系列的效果,那就值了

出0入0汤圆

发表于 2011-6-19 13:30:36 | 显示全部楼层
你们太牛逼了!

出0入0汤圆

发表于 2011-6-20 10:28:20 | 显示全部楼层
有什么意义呢?你如果在产品上用了超频,就意味着某些证无法拿到了.......

出0入0汤圆

发表于 2011-6-20 13:59:00 | 显示全部楼层
世界第九大奇迹

出0入0汤圆

发表于 2011-8-21 11:41:15 | 显示全部楼层
分享一个案例:
arm7 sam7s64,曾经不小心,flash等待设为0,运行在48MHz,cpu负荷在50%以上,产品出去了上百个都没有问题。
偶尔有1、2个产品,会动不动死掉,最终引起看门狗复位。后来换了芯片,又正常了。
直到出了B版本的芯片,发现一多半都会死,或者引起exception。
排查了软件和硬件好久,才发现flash等待的问题,因为最初的程序是在SRAM运行的,为了验证算法,flash是0等待。
改成1等待后,B版本也都没有问题了。datasheet里面是,0等待30M以下的速度。
又出去几百个产品,都没有过这种问题。
所以,超频,万万不能用在产品中。就算现在部分稳定,之后厂家改了制程,那就难说了。

出0入0汤圆

发表于 2011-8-21 16:41:08 | 显示全部楼层
悠着点....嘿嘿

出0入0汤圆

发表于 2011-8-22 07:44:23 | 显示全部楼层
mark

出0入0汤圆

发表于 2011-8-22 08:13:30 | 显示全部楼层
盲目提速的后果会如何,大家都看到了.

出0入0汤圆

发表于 2011-8-22 09:04:46 | 显示全部楼层
回复【99楼】mylogin
盲目提速的后果会如何,大家都看到了.
-----------------------------------------------------------------------

官方开始解释是碰上了ESD干扰

出0入0汤圆

发表于 2011-8-22 09:09:24 | 显示全部楼层
顶96楼。

出0入0汤圆

发表于 2011-8-22 09:19:40 | 显示全部楼层
lz,以前我也像你这样气盛,上次和阿莫吵AD超频的时候被骂啦,可能还是被封ID啦。


超频的东西是不能用于产品的,这是原则问题。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-19 05:12

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表