打印

STR910常见问题解答

[复制链接]
4667|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
浪淘沙|  楼主 | 2007-1-10 16:30 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
2006年10月6日,我们在ST的英文网站上举行了一个有关STR91x系列芯片的网上研讨会,在这个研讨会中世界各地的工程师提出了很多问题,我们把大家最关心的一些问题集中起来,汇编成一个《STR910常见问题解答》,现将全文翻译转载如下,供国内同行参考:

问: 我需要在我的固件中做什么特别的设置,以利用ARM9中哈佛结构和五级流水线的优势吗?
答:不需要。首先,STR9的ARM966E核心在二进制代码上与ARM7兼容,即ARM7的代码可以不经修改地在STR9上运行。任何第三方的支持STR9的编译器,都可以产生ARM7或ARM966E的代码;当指定STR9(或ARM966E)时,编译器会自动地产生利用了ARM966E的哈佛结构和五级流水线优势的代码。固件工程师不需要为此做特别的操作。

问:CPU是从双Flash存储器中的哪一个Flash启动(自举)的?
答:CPU可以从任一个Flash存储器启动。CPU默认是从较大的Flash启动,但这可以用ST的CAPS工具软件或第三方工具商的IDE改变。指定从哪个Flash启动是通过JTAG编程实现,这一设置不会因掉电而改变,除非芯片被擦除。

问:Flash存储器可以当成数据存储器使用吗?
答:可以。任一个Flash存储器都可以作为数据存储器读写。较小的Flash存储器组织成四个扇区,每个扇区有8K字节。使用适当的软件技巧可以将这些Flash扇区模拟成EEPROM存储器,这样可以有效地通过模拟突破Flash的100K次擦写限制。这将有可能节省掉一个外部的EEPROM存储器。

问:USB接口是否有特定缓冲区?它可支持多少端点?
答:是的,USB接口(经USB.org认证及公示)有一个2K字节的双端口SRAM包缓冲区,可在同步和块传输中实现双缓冲器算法。USB接口有20个单向的或10个双向的端口;它还支持USB的待机/唤醒操作。

问:请用实例说明在产品中如何使用侵入检测管脚
答:例如,当STR9用在便携式销售终端上,SRAM中很可能保存了敏感信息,如信用*资料;侵入检测管脚可以通过一个开关检测到该设备的外壳是否被打开,当外壳被打开时SRAM中的敏感信息将即刻被销毁,同时RTC将这个事件发生的时间纪录在它的存储器中。

问:各种入门套件的程序代码限制是多少?
答:除了IAR套件的代码限制是32K字节外,其他所有套件的代码限制是16K字节。

问:ETM指令跟踪接口需要多少管脚?在结束调试后,这些管脚是否可用于其他用途?
答:ETM接口使用九个管脚。在不需要进行指令跟踪调试时,这9个脚可以用于其它功能。

问:在存储器中有特别的地方存放以太网的MAC地址吗?
答:有。在STR9中有一个30字节的一次编程存储器,数据只能写入一次并永远不能被擦除或被改写。CPU或JTAG都可以对这些字节编程。典型的用法是在这个30字节存储器中保存MAC地址、序列号、校准常数、产品ID号等信息。

问:STR9将有高达2兆字节的基本Flash存储器,为什么第二个Flash存储器也很大,达到128K字节?
答:较大的第二个Flash存储器可以容下复杂的自举启动程序,如进行远程Flash存储器的固件更新。在这么大的存储器中,也许您可以包含更多的功能,如纠错和重传、加密算法,甚至通过不同的通道(以太网、USB、CAN、UART或SPI)更新固件程序。另一方面,这个128K字节的存储器可以用于存放应用程序,而2兆字节存储器可以用于存放大量的数据,如在一个小型的打印机产品中存放中文字库。

问:USB中的DFU协议是什么?
答:DFU是一个完整的USB协议,DFU代表“Device Firmware Upgrade”(设备固件升级)。遵照这个协议,ST提供了一个PC程序,这个程序与STR9中第二个Flash存储器的DFU驱动协调,用户可以从PC向STR9的基本Flash存储器下载固件程序,或从STR9的基本Flash存储器读出二进制代码。

问:USB接口可以做USB主机吗?
答:这个USB接口是一个全速的设备,不可以做USB主机。

问:这个芯片中Flash存储器的最小擦除单位是多少?
答:Flash存储器的写入是以16bit为单位,但擦除只能以单独的扇区或整块Flash为单位。第二个Flash存储器有四个扇区,每个扇区的大小为8K字节。基本Flash存储器的每个扇区大小为64K字节,256K字节的产品中有八个64KB的扇区,512K字节的产品中有16个64KB的扇区。两块Flash存储区是独立的,CPU可以在擦除或写入一块Flash的同时读另一个Flash存储器。

问:扩展存储器的1MB和2MB的版本,是否同样出现在STR910和STR911?
答:1MB和2MB的版本会扩展到STR911,但不包括STR910。但STR911和STR912在各种封装上都有与STR910管脚兼容的产品,客户可以很方便地根据存储容量的需要选择产品。

问:程序可以在外部存储器上运行吗?
答:当然可以。如果你的Flash或SRAM接到外部存储器接口上,CPU可以直接运行这些外部存储器上的程序。

问:是否能用固件程序支持通过RS232的在程序中编程(IAP)?
答:因为芯片中有两块Flash存储器,您可以通过任何外设实现在程序中编程。请登陆ST的网站,我们有一个应用笔记解释了如何在STR9上通过UART实现IAP。

问:STR9有几个CAN接口?
答:所有STR9的芯片都有一个CAN 2.0B的接口。

问:0.7us的ADC转换时间,是每个通道的时间,还是片上所有通道的转换时间?
答:当ADC时钟为25MHz时,每个ADC通道需要0.7us的转换时间;这个时间包括在一个ADC输入通道上采样、转换和数据传送的时间。

问:尽管该芯片没有MMU,它能运行Linux吗?
答:uCLinux可以运行于没有MMU的环境,STR9上可以运行uCLinux。但ST不提供STR9的uCLinux板级支持包。

问:能否使用后备电池把STR9的SRAM当成不掉电的SRAM使用?
答:当然可以。如果在STR9初始化时,选择了SRAM后备电池的选项,所有SRAM的内容在CPU掉电的情况下都不会丢失。保存SRAM中所有96K字节的内容,在室温下只从后备电池消耗5uA的电流。

问:哪些是这个系列产品理想的应用领域?你们有具体实现的方向吗?你们认为哪些是最佳的应用?
答:这是一个非常通用的微控制器,在片上有许多精心配制的设备,使它成为许多应用领域的理想选择。同时我认为在某些领域它能做得很好,嵌入式网络控制就是一个很理想的应用领域,在很小的封装中集成了以太网MAC和巨大的SRAM,非常适合用于以较低的成本实现需要连到局域网的嵌入式产品,这样的需求在以前因为成本的原因几乎是不可能实现。其他我认为值得注意的特点还有低功耗模式和后备电池模式,非常适用于便携式产品,如手持销售终端和测试测量仪器等。众多的通信通道和大量的I/O端口,刚好满足楼宇与工业自动化设备的需求。如果考虑大容量的SRAM和Flash、ARM966E的DSP指令再加上高速的ADC,医疗和通讯设备又出现在我们的视野中。这款芯片可以适用于非常广泛的应用领域,但我认为最重要的特性是以太网MAC,将应用领域扩展到了嵌入式网络环境中。

问:片上GPIO的最大工作频率是多少?
答:GPIO的最大工作频率是12MHz。

问:是否所有套件具有相同的功能?
答:从硬件的角度讲,所有入门套件都具有近似的功能,因为在每个套件上STR9的主要通信通道都是能够访问的。不同的是一些附加的外设配置,如LCD,SD卡接口,音频接口等。不同套件的主要区别是所使用的集成开发环境与C编译器不同,他们由不同的厂商提供;有些套件使用开源的编译器,有些则使用他们自己特定的编译器。

问:CAPS软件使用哪种JTAG编程适配器?
答:CAPS支持Raisonance的RLINK JTAG接口和ST的FlashLINK JTAG接口,这两种接口的价钱都是59美元。这些编程接口适用于中小型生产线上对STR9编程的需要。

问:你们对STR9系列微控制器的生存周期有什么期望?
答:这些器件是针对工业应用领域,ST清楚地知道工业应用领域的产品具有相当长的生存周期,我们的产品满足这个需求。

问:如何有效地保护片上Flash中的程序不会被非法读出?
答:在开发完成后,有一个只能通过JTAG接口设置的保密位,一旦设置了该保密位后,通过外部JTAG接口将不能读出Flash存储器的任何内容,JTAG调试的功能也同时失效。清除保密位的唯一办法是通过JTAG接口擦除整个STR9的存储器,这样一个空的器件可以再次利用。

问:CPU可以将程序存储区的内容按数据读出,这是否意味着可以在系统上电时执行Flash存储器中代码的自检?
答:是的。实现这个功能的最好方法是从STR9中较小的Flash区启动,在这里有校验较大Flash存储区的代码,当代码校验成功,CPU可转去执行较大Flash存储区的代码;否则,CPU可以执行程序更新代码,同过任一STR9的通信通道刷新Flash存储区的代码。

问:在评估套件中是否包含汇编的支持,是否有代码大小的限制?
答:对汇编的支持是集成开发环境(IDE)的部分,我相信所有IDE都允许你用C或汇编写程序。对代码大小的限制上,汇编程序与C程序是一样的。

问:STR9的DSP是否可用在声波反相?
答:目前我们还没有太多经验,具体哪些应用比较适合,但STR9的DSP功能的评估结果给我们留下深刻印象;如STR9完成一个1024点的快速富力叶变换(FFT)只用了714us。

问:STR9是否可配置与SD存储卡或NAND闪存接口?
答:没有专门的接口,但可通过GPIO连接实现。

问:是否有单独的乘法模块存放DSP指令和参数?
答:DSP指令是在五级流水线中的两级由硬件实现。在我们进行评估时,我们发现哈佛结构的一个美妙的好处,DSP的算法代码存放在Flash中,而运算的数据存放在SRAM中,因为哈佛结构的特点,我们能够同时访问指令和数据,这显著地提高了运算的性能。

问:是否有将8051的代码转换到ARM代码的应用程序?
答:这个问题应从几方面回答,对于用C写的程序,当然可以通过适合ARM结构的编译器重新编译;但从另一角度看,通常这样的代码是为8051而写,尤其是专为8051的外设而写;因此代码的类型起很大的作用,如果是汇编代码或专为特定的8051外设写的代码,则必须在ARM上重新编写;如果是在8051上运行的纯粹C代码,且与硬件无关,则重编译后即可在ARM上运行。

结束语:
请将STR910系列芯片当成一个超级的ARM7芯片,当您需要比ARM7更大的存储器(FLASH和SRAM)、需要比ARM7更快的速度特别是DSP的性能,需要比ARM7更多的片上设备或连接特性,这时STR910系列芯片将是您的最佳候选芯片。
沙发
starm| | 2007-1-10 16:56 | 只看该作者

这样的帖子, 应当置顶, 不能沉下去了.

使用特权

评论回复
板凳
musich| | 2007-1-10 18:22 | 只看该作者

有个问题. 请教.

问:如何有效地保护片上Flash中的程序不会被非法读出?
答:在开发完成后,有一个只能通过JTAG接口设置的保密位...

清除保密位的唯一办法是通过JTAG接口擦除整个STR9的存储器,
这样一个空的器件可以再次利用....


我找了好久,没找到在哪可以设置 ( STR910产品设计中 ).

另外,清除保密位要特别的工具或软件吗? JLINK行不? 可以擦除多少次呢?

是否有代码可供参考, 谢谢.  

使用特权

评论回复
地板
老飞侠| | 2007-1-11 11:13 | 只看该作者

答:如何有效地保护片上Flash中的程序不会被非法读出

关于保密位的设置,可采用ST的免费软件工具CAPS + JTAG电缆(FLINK or RLINK)来置1或清0。可多次擦除。

使用特权

评论回复
5
arm_fans| | 2007-1-11 12:14 | 只看该作者

有关SRT9扩展版本

上面的一个问题:

问:扩展存储器的1MB和2MB的版本,是否同样出现在STR910和STR911?
答:1MB和2MB的版本会扩展到STR911,但不包括STR910。但STR911和STR912在各种封装上都有与STR910管脚兼容的产品,客户可以很方便地根据存储容量的需要选择产品。

  请问是啥意思,STR910没有1MB、2MB的扩展版本?那么为什么,选型报价表中会有1MB、2MB的STR910产品报价?晕。

使用特权

评论回复
6
香水城| | 2007-1-11 12:26 | 只看该作者

谢谢细心网友的疑问,我们尽快核实后给您一个答复

多谢五楼提醒。

使用特权

评论回复
7
starm| | 2007-1-11 14:42 | 只看该作者

扩展存储器的1MB和2MB的版本

和老版本相比较, 是否就是多了一些Flash, 其它没有变化?

使用特权

评论回复
8
John_light| | 2007-1-11 16:27 | 只看该作者

以太网,DSP

使用特权

评论回复
9
香水城| | 2007-1-11 18:21 | 只看该作者

STR9扩展存储器的1MB和2MB的版本,就是增大了Flash的容量

就目前得到的资料看没有其他变动,新版本与老版本兼容。

使用特权

评论回复
10
starm| | 2007-1-11 19:29 | 只看该作者

STR9...第二个Flash存储器也很大,达到128K字节

问:STR9将有高达2兆字节的基本Flash存储器,为什么第二个Flash存储器也很大,达到128K字节
答:较大的第二个Flash存储器可以容下复杂的自举启动程序,如进行远程Flash存储器的固件更新。在这么大的存储器中,也许您可以包含更多的功能,如纠错和重传、加密算法,甚至通过不同的通道(以太网、USB、CAN、UART或SPI)更新固件程序。另一方面,这个128K字节的存储器可以用于存放应用程序,而2兆字节存储器可以用于存放大量的数据,如在一个小型的打印机产品中存放中文字库。

是两块flash都增大了啊.

使用特权

评论回复
11
浪淘沙|  楼主 | 2007-1-12 15:50 | 只看该作者

经确认,STR911和STR912有大Flash的版本,但STR910没有

"选型报价表中会有1MB、2MB的STR910产品报价"是个错误,我们将尽快通知有关人员更正。

使用特权

评论回复
12
入迷其中| | 2007-1-19 23:32 | 只看该作者

不错....

不错....支持

使用特权

评论回复
13
gyt| | 2007-1-28 22:56 | 只看该作者

多谢!!!

非常好的资料。谢谢发表。

使用特权

评论回复
14
whwlxl| | 2007-1-30 15:58 | 只看该作者

STR910 是否不包含DSP?

使用特权

评论回复
15
浪淘沙|  楼主 | 2007-1-31 21:24 | 只看该作者

不知上面这个问题是什么意思?

“STR910是否不包含DSP?”——STR91x的指令系统中包含DSP指令。不知你对DSP的理解是什么?能解释一下你指的DSP是什么?

使用特权

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

本版积分规则

23

主题

698

帖子

0

粉丝