打印
[其他ST产品]

STR710的CKOUT只能到33Mhz吗?这是一个BUG:

[复制链接]
3104|11
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
progrime|  楼主 | 2007-6-25 11:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
BUG, ST, hz, ck, RAM
手册上说可以66MHz来访问外部RAM,可是我外部RAM需要同步总线时钟,那不就是只能用33MHz来访问了吗?速度太慢了。因为手册上来说CKOUT由ABP2提供只能小于33MHz
沙发
ST_ARM| | 2007-6-25 15:35 | 只看该作者

关于外部RAM的速度的问题

手册上来说CKOUT由ABP2提供只能小于33MHz,那是说,所以连接在APB2总线上的外设的时钟最大可以为33MHz;而手册上说可以66MHz来访问外部RAM那是指当使用STR710的EMI扩展总线时,EMI总线的速度,EMI总线的速度时同步于你的ARM内核的速度,但是也是有一定的限制的,尤其是你的外部RAM/Flash的反映速度。
关于你所说的“我外部RAM需要同步总线时钟”,不是很清楚是什么样的?能否详细说明。

使用特权

评论回复
板凳
香水城| | 2007-6-25 15:54 | 只看该作者

访问外部RAM为什么要与总线时钟同步?难道楼主要用同步的SR

STR710不可以接同步的SRAM,新的STR91xFA可以接同步的SRAM。

使用特权

评论回复
地板
progrime|  楼主 | 2007-6-26 13:57 | 只看该作者

“我外部RAM需要同步总线时钟”如下:

我的STR710的EMI上接了三块片子,一块是FLASH,一块是RAM,另一块是LCD控制器,它们总线频率都可以到64MHz,也是用64MHz,Flash和Ram没有用到CKOUT的时钟,因为不需要,但是LCD控制器要这时钟,用于产生CPU访它时的同步时钟和扫描液晶的时钟,且必须等于、同步总线频率,于是要用到CKOUT,但是CKOUT受限于ABP2,最大只能是33MHz,那我只能把总线频率降到32MHz来用,速度太慢了!

使用特权

评论回复
5
浪淘沙| | 2007-6-26 14:02 | 只看该作者

请progrime把你的LCD控制器的接口时序发上来看看

也许我们可以帮你出点主意,根据你的描述还是不能确定它是如何工作的。也可以把LCD控制器的手册发到mcu.china@st.com

谢谢。

使用特权

评论回复
6
progrime|  楼主 | 2007-6-26 14:31 | 只看该作者

这是LCD控制器和CPU接口,pdf文件已发到邮箱

使用特权

评论回复
7
浪淘沙| | 2007-6-26 16:53 | 只看该作者

对不起,到现在还没有收到你的LCD控制器文档

但从你发上来的连接图看,你的LCD控制器是要求同步的SRAM接口,而STR710的EMI是个异步的SRAM接口,不能直接连接的。

新的STR91xFA可以接同步的SRAM,请下载新的手册作为参考:http://www.st.com/stonline/products/literature/um/13165.pdf

使用特权

评论回复
8
progrime|  楼主 | 2007-6-28 08:30 | 只看该作者

浪淘沙你给我的那个退了两了,我换个邮箱再发

使用特权

评论回复
9
浪淘沙| | 2007-6-28 13:56 | 只看该作者

关于progrime的LCD控制器的接口时序

你的问题稍微有点复杂,首先如同你在4楼讲的“Flash和Ram没有用到CKOUT的时钟,因为不需要,但是LCD控制器要这时钟”,这里可以清楚地看到这个时钟时给LCD控制器的而不是像一楼说的“可是我外部RAM需要同步总线时钟”。看了你发来的LCD控制器文档,也证实了这一点。同意你的观点,这个时钟需要快点为好。

但我们查了STR710的手册,STR710内部有这样的时钟,但没有办法输出这样高频率的时钟,如果要用只能使用那个33MHz的时钟了。

另一方面,STR710的外部存储器接口没有管脚可以通过外部时序控制等待(Wait)周期,等待周期只能通过内部寄存器设置,而不能由外部控制;由这点可以看出,这个外部存储器接口适用于连接外部的存储器,而不一定适用于连接外部的控制设备,比如像你这种LCD控制器。当然你可以通过外部中断来监视这个Wait信号,但控制相对比较复杂。

还有一点提请注意,即使你的外部设备不需插入等待周期,实际上程序也不能以66MHz的速度连续地输出/读出数据,CPU输出/读出数据的时钟基准为66MHz,但每次数据输出/读出的时间间隔不是零,这是因为你的程序中还有其他的非外部存储器访问的指令,这些指令(如循环指令、从缓冲区读/存数据指令等)造成了“每次数据输出/读出的时间间隔不是零”。

所以在不增加其他外部逻辑的情况下,你很难直接用STR710的外部存储器接口控制你的LCD控制器。

根据以上分析,这种情况是由于产品设计的定位不同而造成,而不是因为BUG。

谢谢。

使用特权

评论回复
10
progrime|  楼主 | 2007-6-28 15:37 | 只看该作者

谢谢,大虾!

谢谢,大虾,这个LCD控制器的Wait信号是可用可不用的,我就没有用,工作也是正常,LCD正常使用,现在我把CKOUT调到64MHz,系统也正常工作,我正在做高低温试验,看能不能用64MHz,32MHz太慢了!
谢谢浪淘沙大虾的热心帮助!!!

使用特权

评论回复
11
ARM白痴| | 2007-6-28 19:37 | 只看该作者

违反datasheet的规定是很危险的

1.CKOUT是连接在PCLK2上的,最大33MHz,而MCLK能到66MHz,奇怪为什么CKOUT不连接在MCLK上?
2.这块LCD控制器的所有时钟都是基于MCU的输入时钟,包括驱动LCD的时钟、与MCU进行数据传输的时钟,如果外接一个64MHz的有源晶振提供给这个LCD控制器不知道可以不?我想驱动LCD肯定是没有问题,而与MCU的数据传输不知道可以不?因为时钟可能不同步。还有MCU的CKOUT接个倍频的器件,然后倍频的器件2倍频输出64MHz,但是相位会滞后。
3.MCU和外部FLASH、RAM进行数据传输也没有用到CKOUT,这个LCD控制器和MCU的数据传输不知道需要CKOUT不?如果不需要,那么第2点有可能成功,关他不同步或者相位滞后。

使用特权

评论回复
12
浪淘沙| | 2007-6-29 07:48 | 只看该作者

11楼大虾的提醒非常好,请楼主三思

谢谢。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

100

主题

304

帖子

2

粉丝