OpenEdv-开源电子网

标题: s3c2440用“SRAM接口”驱动“MCU接口屏”的问题 [打印本页]

作者: 疯狂者    时间: 2017-6-12 08:52
标题: s3c2440用“SRAM接口”驱动“MCU接口屏”的问题
我昨晚试玩了s3c2440裸机,用BANK1区外接一个“MCU接口的TFT屏”,(其实就跟stm32用FSMC接口驱动tft屏一样),但是s3c2440驱动成功后,速度非常慢,可以看到刷屏过程,约0.5s一屏,按照设置各个接口的速度应该是:HCLK约133MHz左右,PCLK约为HCLK的二分之一66MHz,我用串口设置波特率打印数据正确,说明这两个频率应该没错了。但是刷屏起来非常慢呢?

我改用stm32刷,72MHz的频率,刷得特快。

这不科学,频率快的反而慢,频率慢的反而快..?

本来昨晚就只想调试玩一下,然后调出来就上linux编驱动练手,结果搞出个奇怪的问题来纠结自己,真惨。有没有人这样驱动试过呢?

为啥慢了?

谢谢!

作者: 疯狂者    时间: 2017-6-12 08:52
我知道了,这芯片里面有  数据cache和指令cache 要把这两个打开,才能发挥正常速度。
作者: zhsyghhz    时间: 2017-6-12 15:36
用示波器看看波形吧
作者: 正点原子    时间: 2017-6-12 20:46
帮顶
作者: 疯狂者    时间: 2017-6-13 08:42
谢谢楼上两位回复。。。宿舍没网络,只能跑到公司来查资料了。

我昨天晚上下班回去马上就去调试一下,我发现了,敢情不关这个FSMC事了,我之前上面那程序是刷到s3c2440的norflash里运行的,昨晚我改成了刷到SDRAM里运行,快了不少,但还是没STM32刷的快。

(整个过程:我是把s3c2440的时钟调到60MHz,比stm32慢个10来MHz,用逻辑分析仪看时钟输出是对的了。)

我就再做了一个实验,纯C语言,一个简单的for循环,向一个u16 Arr[480*320]的数组里写数据。我发现stm32刷6次这个函数竟然比s3c2440刷6次这个函数快?!...我大概估算假如stm32是500ms,那s3c2440竟然要2s多才完成。(把s3c2440的频率改成400M,运行在sdram里,就稍微慢一点点的感觉。)

奇怪了,stm32不是约等于arm7吗?我用的是stm32f103zet。

难道同个频率下stm32的运算速度比arm9还快?就算不同频率,stm32的72M也比ARM9的400M快?
作者: wlq19911021    时间: 2017-8-3 13:31
不是ARM7是Cortex-A7,  ARM11-9好像都是A5, 比32要低很多的
作者: wlq19911021    时间: 2017-8-3 13:32
ARM7比 M0好不到哪去
作者: wlq19911021    时间: 2017-8-3 13:33
F4-F7,  性能是高于ARM9的
作者: wlq19911021    时间: 2017-8-3 13:37
F4不考虑外设,可以稳定300多M
作者: 你的蓝朋友    时间: 2023-12-10 11:10
疯狂者 发表于 2017-6-13 08:42
谢谢楼上两位回复。。。宿舍没网络,只能跑到公司来查资料了。

我昨天晚上下班回去马上就去调试一下,我 ...


我知道了,这芯片里面有  数据cache和指令cache 要把这两个打开,才能发挥正常速度。




欢迎光临 OpenEdv-开源电子网 (https://www.openedv.com/) Powered by Discuz! X3.4