F1aSh存储器在TMS320C3X系统中的应用

品牌创意型网站建设

访问网站
  • 服务热线:020-0000000
  • 点击这里给我发消息点击这里给我发消息

采用TI公司的TMS320C32的DSP,AMD公司坐蓐的8位Am29F040动作Flash存储器,这里行使了4片Am29F040。编写时必需留意: ①标的字宽度,也便是执掌器的操作码长度。选好DSP后,该长度也就确定了。遵循咱们的例子为32位。 ②数据宽度。由-datawidth 设定,为32位

TIME:2019-06-21 18:06  READ:

  采用TI公司的TMS320C32的DSP,AMD公司坐蓐的8位Am29F040动作Flash存储器,这里行使了4片Am29F040。编写时必需留意: ①标的字宽度,也便是执掌器的操作码长度。选好DSP后,该长度也就确定了。遵循咱们的例子为32位。 ②数据宽度。由-datawidth 设定,为32位。 ③存储器宽度。由-Memwidth 设定,本例中为32位。 ④ROM宽度。由-romwidth设定,为8位,由Flash存储器确定。 次序如下: C3XCHECK.OUT -MAP 29f040.MAP -i /*输出文献为Intel格局*/ -datawidth 32 -Memwidth 32 -romwidth 8 ROMS{FLASHROM:org=000000h,len=80000h,romwidth=8,○▲ /*512K X 8*/files={f040.bo f040.b1 f040.b2 f040.b3}}SECTIONS{ .text :paddr=00000040h .ffttxt :paddr=000008dlh .data :paddr=0000000h .sintab :paddr=000009eeh .paras :paddr=00000a2eh} 下令文献遵循上述编写,天生了4个文献,分散为f040.b0、f040.bl、f040.b2及f040.b3,然后能够直接用编程器烧写至4片Am29F040即可。 操纵上面的步骤依然能够已毕管事,可是咱们还能够操纵TMS320C32的boot loader(上电加载)性能直接调入到存储器中。 D S P芯片复位往后,将自愿地运转固化0H~0FFH空间内的辅导装载次序,实行辅导次序装 载性能。进入辅导装载次序往后,DSP将平昔恭候隔绝INT0-INT3的隔绝形态,依照区其它隔绝,肯定是以BOOTl-BOOT3的存储空间装载次序到指定的急迅闪存,仍然以从串口将次序辅导装载到指定的急迅闪存。TI公司的辅导装载次序是公然的(假设必要,可由其网站下载获得)。达成辅导装载性能时,★▽…◇必要自身策画次序头,此中必需描摹: ① 待装载次序的存储器宽度为8位/16位/32位; ②S W W 恭候形态发作器的体例; ③装载到急迅R A M 的次序巨细; ④装载的方针所在。 假设正在现实编造中方针所在不止一个,其操作 流程也是雷同的。当一个模块装载完毕往后,假设另有一个此表的模块,那么它将一连实行。与上面的步骤雷同,正在次序头加上须要的新闻就能够了。 如将辅导表动作次序的一个初始化段,正在运转次序的时间将该段的实质也直接写到F1ash存储器内中。★△◁◁▽▼的确来说,起初编写一段C措辞次序,将上面由HEX30天生的文献转化为.dat数据文献 (使得DSP能够识别,DSP不行识别.bO文献)。然后,正在编程次序中筑一个段,此中包括这个数据文献。末了,正在直接运转次序时,将此中的实质烧写到存储器内中。采用这种步骤,比采用EPROM编程器编程速率更速,况且省时省力,必要修正时不必取出 F1ash存储器,能够正在线 结 论

  通过现实的电途仿真测试,阐明这种策画思思大略、次序语法无误,数据传输结果高,△充满操纵了TMS320C32编程措辞特性。这种步骤可能达成F1ash存储器正在编造编程和正在DSP编造上电后的用户次序的自愿辅导。同时,由对Flash存储器Am29F040使用的商讨可知,其不只能够操纵编程器编程,况且能够通过TMS320C32正在线实行擦除、读写及编程。

  正在对电力编造断途器的形态监测流程中,必要对障碍数据实行存在,以便于查看;而正在障碍时刻不免会产生停机的征象,是以,若何正在断电的形态下存在数据,就成为一个环节题目。看待障碍产生的监测装备必需餍足两个基础的性情--及时性和急迅性。这两种性情都必要以急迅执掌洪量的数据新闻为根柢,于是咱们采用数据信号执掌Memory)依然成为DSP编造的一个基础的摆设。 这里Flash存储器要紧用来存放用户次序代码。普通来说,将用户必要的次序代码装入F1ash存储器有三种步骤:一种是正在存储器出厂前将数据写入;一种是用户行使编程器自身编程;末了一种是将存储器安置正在用户电途板后实行编程。跟着芯片成立工艺的抬高,芯片的集成度也越来越高,使Flash存储器正正在向幼型化、贴片式宗旨开展。本文贯串TMS320C3x系列的DSP上电辅导表发生步骤,商讨AMD公司坐蓐的Am29F040闪存正在编造中的编程步骤。

  A0~A18:所在线供应存储区所在, 行所在确定所正在扇区;A0~A7选定某扇区的一 个字节,扇区容量是256字节。DQ0-DQ7:数据输入/输出。口▲=○▼正在读周期输出数据; 正在写周期汲取数据。写流程中写入的数据被内 部锁存。CE:输入,芯片使能, 低电常日选中该器件。OE:输入,输出使能, 低电常日翻开数据输出缓冲 区,答允读操作WE:输入,写使能,低电常日答允写操作。Vcc为5V电源。Vss为地。 管事体例有读体例、待机体例、输出禁止及算法选取。 比如,看待写操作的编程下令,如表1所列。 此中:RA为被读出的存储单位所在; PA为被编程的存储单位所在; RD为所选所在单位被读出的数据; PD为所选所在单位被编程的数据。 除编程所在、区段所在和读所在以表的完全总线为高或低。 下面以下令表的编程下令为例,扼要先容字节编程。表1所列下令是一个4总线周期指令。起初,正在所在5555H写入数据0AAH,所在2AAAH写入数据055H,再正在所在5555H写入数据AOH,末了是编程的所在和数据。 看待芯片擦除性能,自愿地供应编程和电擦除之前,▼▼▽●▽●校验完全存储单位所需的电压和时序,然后自愿擦除并校验单位鸿沟。操纵数据轮询(data-polling)性情,能够监督自愿芯片擦除操作时刻器件的形态,以查验操作是否已毕。◆▼ 次序如下:int Chip-Erase (){*(int*)0x00005555=0xAAAAAAAA; /*写芯片擦除下令个别*/*(int*)0x00002AAA=0x55555555;*(int*)0x00005555=0x80808080;*(int)0x00005555=0xAAAAAAAA:*(int*)0x00002AAA=0x55555555;*(int*)0x00005555=0x10101010;while((*(int)0x000055550x80808080)!=0x80808080) /*数据轮询*/ 看待区段擦除暂停,正在区段擦除时刻擦除暂停有用,数据值为BOH,不管所在值。区段擦除光复,仅正在擦除暂停之后擦除有用,数据值为30H,不管所在值。下面是扼要的次序代码:int Sector- Erase(sectadd) int * sectadd;{ *(int*)0x00005555=0xAAAAAAAA; /*写区段擦除下令个别*/ *(int*)0x00002AAA=0x55555555; *(int*)0x00005555=0x80808080; *(int*)0x00005555=0xAAAAAAAA; *(int*)0x00002AAA=0x55555555; *sectadd=0x30303030; 看待数据珍惜,此性情禁止正在1-8个区段的任何组合实行编程和擦除操作。实行编程和擦除被珍惜区段的下令时,不转移区段内的数据。数据轮询位和跳转位管事正在2~100s,•●然后返回到有用数据。正在所在引脚A9和限度引脚E,行使11.5~12.5 V高电压VID且正在限度引脚E上行使VIL将使此性情起效力。其的确操动作:当W为VIHE为VIL且所在引脚G为VID时,区段珍惜体例被激活,所在引脚A18、A17、A16用来选取被珍惜的区段。一朝所在安祥,W处于脉冲低电平,操作发轫于W的降落沿。

  Am29F040是AMD公司坐蓐的Flash存储器,要紧效力是固化次序和存在史册数据,也便是开机后实行闪存的次序,并正在次序实行的流程中及时地存在或修正其内部的数据单位。 下面起初先容Am29F040的特性和操作。 Am29F040是采用5 V单电源供电的可编程只读存储器,是一种电可擦除与从头编程的器件。该器件由8个独立的64 K字节块构成,访候速率为55~150 ns。片内的形态机限度编程和擦除器件、嵌入式字节编程与区段/芯片擦除性能是全自愿的。内部组织框图如图1所示。

  TMS320C3x支撑32位或16位宽度的次序表部存储器。▲●因为Am29F040的数据宽度是8位,而从RAM单位中取出的数据宽度为32位,于是还要采用移位的步骤写入Am29F040。 辅导表的格局要紧由下面几个别构成:起初,是蕴涵辅导表数据宽度和其它数据总线寄存器值的头文献。接着,是COFF文献中各个段的数据,此中每个段都包括一个该段的文献头来注释该段的代码长度和所在。末了是已毕段。☆△◆▲■ 这里,采用COFF格局天生辅导表对照繁难。TI公司供应了一个很有效的转换东西HEX30,只须编写一个下令文献,就可行使这个转化东西自愿天生辅导表。F1ash存储器烧写流程如图2所示。

咨询热线020-0000000