当前位置:首页 > 单片机 > 单片机
[导读]以定点DSP为例,阐述DSP芯片在实时控制领域中如何高精度地计算时间,为准确测量一些物理量打下坚实的基础,具有较高的参考价值。

数字信号处理(DSP)是一门涉及许多学科而又广泛应用于许多领域的新兴学科。20世纪60年代以来,随着计算机技术和信息技术的飞速发展,数字信号处理技术应运而生,并得到迅速的发展。在过去的二十多年里,DSP已经在通信等领域得到极为广泛的应用,特别是在一些测量控制领域,应用更是越来越广泛。本文拟采用定点DSP——TMS320F206来测量一些物理量,如测交流信号的频率?相位,但这些物理量的测量都离不开信号时间的测量,所以采用定点DSP准确地测量时间直接关系到这些物理量测量是否精确,而且用定点DSP来准确定时并不是件容易的事。

1 TMS320F206的结构特点

  TMS320F206采用先进的哈佛结构,它不同于传统的冯·诺依曼(Von Neuman)结构的并行体系结构,其主要特点是将程序和数据存储在不同的存储空间中,即程序存储器和数据存储器是两个相互独立的存储器,每个存储器独立编址,独立访问。此外还具有如下特点:

  (1)32K×16字的FLASH EEPROM 大大降低了开发成本。   

  (2)采用100线TQFP的封装技术。

  (3)64K字的程序存储空间?64K字的数据存储空间和64K字的I/O空间通过三条并行总线(PBA?DRAB?DWAB)独立操作。所以可以同时访问程序空间和数据空间;在一个指定机器周期内,中央算术逻辑单元可执行多达三次的并行存储器操作。

  (4)片上4.5K的RAM 使得芯片可以实现快速的DSP计算,并使大部分运算能够在一个指令周期内完成。

  (5)具有丰富的指令集和灵活的寻址方式。

  (6)有四条流水线操作和九级中断,并且用户可以屏蔽大多数中断,且可通过软件方式灵活控制。

2 定点DSP的定时器

2.1 DSP定时器定时原理

  计数器每次减到0时,就在下一CLKOUT1周期产生借位(Borrow),计数器就用各自相应的周期寄存器内容重新加载。当TIM减到0时,或者在定时器控制寄存器(TCR)中重新加载位(TRB)写入1,则PRD(定时器周期寄存器)加载进TIM;同样,若PSC(预分频计数器)减到0,或者在TRB写入1,则TDDR(定时器除数寄存器)的值加载进PSC。当TIM减到0时,它便产生一个借位脉冲,持续时间等于CLKOUT1的周期(tc(c)),该脉冲发送到①外部定时器输出引脚(TOUT);②作为定时器中断信号(TINT)。

  定时器的功能框图如图1所示。

 

2.2 DSP定时器的寄存器

  4位的TDDR和4位的PSC包括在TCR中。而TIM和PRD是16位寄存器。可以通过读TCR、TIM、PRD得到该定时器和它的计数器的当前状态。

  需要注意的是读TIM可获得定时器的当前值,读TCR可获得PSC的值。由于读TIM和TCR需要两条指令,因而PSC在两次读之间可能有减操作,使读数不精确。如果要求有精确的定时,可以在读此两值之前停止定时器(设置TCR的TSS位为1,就停止定时器;清TSS为0,就重新启动定时器)。

定时器控制寄存器的格式如下:

3 定点DSP准确计算时间

  定时器时间的准确计算对高精度地测量一些物理量是非常重要的。当需要定时器计算的时间比较长时,也就是即使向PRD中置FFFFh时,定时器计数还不够,这时就需要利用定时器自身的中断,即TOUT每产生一个脉冲就进入定时器中断服务子程序,利用进入的次数来达到计时的目的。如果假设定时器的周期为0.001s(即PRD=1999,TDDR=9),在定时器中断服务子程序中设一个计数器,每进入一次加一个1,再把定时器周期乘以计数器计数就得出定时器的时间。但这种计算是粗糙的,不精确,达不到高精度要求。为此需要补充两点:

  (1)当停止定时器时,定时器计数寄存器还有剩余值,必须计算这部分的时间。方法是先停止定时器,再读TIM的值,然后读TCR的值,通过运算获取PSC的值。再按公式(1)计算定时器在最后一次所开销的时间。定时器最后一次开销时间为:

  

式中,20M为本文采用的晶振频率。

  (2)进入定时器中断服务子程序,程序执行本身要花费一定的时间;而进入中断服务子程序时,定时器就自动停止,那么所计算的时间自然就少了。TMS320F206每个指令周期的执行时间是50ns,通过计算中断服务子程序的指令周期数和进入中断的次数可以计算出这部分的时间。

  把这三部分时间加起来就得到准确的定时器时间,有了准确的时间,物理量的测量自然就准,精度就高。结果表明,通过这样准确计时,使得频率和相位的测量精度在万分之二以内。如果测量的是一个标准的50Hz频率,那么测量结果的范围在50~50.001Hz。

4 DSP程序实现

    splk #0412h,64h   

    out  64h,0fff8h                 ;停止DSP定时器

    in   65h,tim                    ;读tim寄存器的数值

    in   67h,tcr                    ;计算tcr中psc的值

    lacl  67h

    and  #03c0h                     ;与03c0h获得psc的值

    sacl  67h                       ;左移10位

    lacc  67h,10

    sach  67h

    lacl  #9

    sub  67h            

    sacl  67h                       ;存psc中剩下的值(即使用了的)

    lacl  #07cfh     

  sub   65h            

  sacl   68h                       ;存prd-tim的值

  lt     68h           

  mpy   #10                        ;TDDR+1

  pac   

  sacl   68h

  lacl   68h

  add   67h

  sacl   68h

  lt     68h                    ;*0.1  

  lar    ar1,#temptddr           ;temptddr=0.1

  mar    *,ar1

  mpy    * 

  pac

  add   #1,14

  sach  68h,1

  lacl  68h

  sfr

  sacl  68h                 ;存定时器最后一次的时间单位为μs

    lt    69h

    lar   ar2,#temptddr1       ;temptddr1=定时器的周期

    mar   *,ar2

    mpy   *

    pac

    add   68h                 ;加定时器最后一次的时间

    sacl   68h                ;存定时器总的所耗时间(占时间的多数)

    lt     69h

    lar  ar2,#temptddr2          ;temptddr2=0.5*32767

    mar    *,ar2

    mpy   *                  ;计算定时器中断服务程序执行时间

    pac              

    add   #1,14

    sach  67h,1

    lacl   68h 

    add   67h                ;加定时器中断服务程序执行时间

    sacl   68h                  ;存总的时间(结束)

 

参考文献

1 TMS320c1x/c2x/c2xx/c5x Assembly Language Tools User’s Guide. Texas Instruments,1999.7

2 TMS320c2xx User's Guide.Texas Instruments,1999.7

3 彭启棕,李玉柏.DSP技术.成都:电子科技大学出版社,1997

4 张雄伟,曹铁勇. DSP芯片的原理与开发应用.(第二版). 北京:电子工业出版社,2000

5 王念旭.DSP基础与应用系统设计.北京:北京航空航天大学出版社,2000

6 TMS320F/C240 DSP Controllers Reference Guide System And Peripherals. Texas Instruments, 1999.7

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

9月2日消息,不造车的华为或将催生出更大的独角兽公司,随着阿维塔和赛力斯的入局,华为引望愈发显得引人瞩目。

关键字: 阿维塔 塞力斯 华为

加利福尼亚州圣克拉拉县2024年8月30日 /美通社/ -- 数字化转型技术解决方案公司Trianz今天宣布,该公司与Amazon Web Services (AWS)签订了...

关键字: AWS AN BSP 数字化

伦敦2024年8月29日 /美通社/ -- 英国汽车技术公司SODA.Auto推出其旗舰产品SODA V,这是全球首款涵盖汽车工程师从创意到认证的所有需求的工具,可用于创建软件定义汽车。 SODA V工具的开发耗时1.5...

关键字: 汽车 人工智能 智能驱动 BSP

北京2024年8月28日 /美通社/ -- 越来越多用户希望企业业务能7×24不间断运行,同时企业却面临越来越多业务中断的风险,如企业系统复杂性的增加,频繁的功能更新和发布等。如何确保业务连续性,提升韧性,成...

关键字: 亚马逊 解密 控制平面 BSP

8月30日消息,据媒体报道,腾讯和网易近期正在缩减他们对日本游戏市场的投资。

关键字: 腾讯 编码器 CPU

8月28日消息,今天上午,2024中国国际大数据产业博览会开幕式在贵阳举行,华为董事、质量流程IT总裁陶景文发表了演讲。

关键字: 华为 12nm EDA 半导体

8月28日消息,在2024中国国际大数据产业博览会上,华为常务董事、华为云CEO张平安发表演讲称,数字世界的话语权最终是由生态的繁荣决定的。

关键字: 华为 12nm 手机 卫星通信

要点: 有效应对环境变化,经营业绩稳中有升 落实提质增效举措,毛利润率延续升势 战略布局成效显著,战新业务引领增长 以科技创新为引领,提升企业核心竞争力 坚持高质量发展策略,塑强核心竞争优势...

关键字: 通信 BSP 电信运营商 数字经济

北京2024年8月27日 /美通社/ -- 8月21日,由中央广播电视总台与中国电影电视技术学会联合牵头组建的NVI技术创新联盟在BIRTV2024超高清全产业链发展研讨会上宣布正式成立。 活动现场 NVI技术创新联...

关键字: VI 传输协议 音频 BSP

北京2024年8月27日 /美通社/ -- 在8月23日举办的2024年长三角生态绿色一体化发展示范区联合招商会上,软通动力信息技术(集团)股份有限公司(以下简称"软通动力")与长三角投资(上海)有限...

关键字: BSP 信息技术
关闭
关闭