《ADSP2189M在船舶自动识别系统开发中的应用》由会员分享,可在线阅读,更多相关《ADSP2189M在船舶自动识别系统开发中的应用(5页珍藏版)》请在金锄头文库上搜索。
1、ADSP2189M在船舶自动识别系统开发中的应用摘要:本文介绍了ADSP2189M芯片在AIS船舶自动识别系统开发中的应用。分析了ADSP2189M芯片的外部硬件连接和内部软件的设置,以及各种片上资源的应用,针对不同的通讯方式采用不同的连接模式,并实现了IDMA方式与上位机完成启动和通讯。引言 AIS 系统是海上移动VHF波段采用TDMA技术交换数据的一种避碰系统,是国际海事组织规定每条船只必须安装的设备之一,产品开发基于国际海事组织颁布的 ITU-R M1371协议。在开发中采用ADSP2189M作为其数据处理平台,完成各种数据处理,转换,时隙的划分,网络登陆和维护等算法,实现其大部分的主要
2、功能。系统的模式如图1所示。由电台在161.975MHz和162.025MHz的两个频点上接收GMSK信号,经GMSK调制解调芯片把模拟数据转换成数字信号,数据流通过上位机完成对正确数据的判定,并且删去数据段的起始、填充和结束位,把数据通过并行口发往DSP,DSP完成对接收到数据的处理与分析,建立整个海域的时隙表,完成TDMA的网络登陆、维护,把相关的数据再以不同格式发送到不同的串口输出,按照ITU-R M.1371协议,以ITDMA(增量时分多址)方式接入网络,以SOTDMA(自控时分多址)方式连续运行,从而达到整个网络的TDMA完整性。因此, 信号处理单元在系统中处于重要的位置。图1 DS
3、P与外部设备接口ADSP2189M芯片ADSP2189M芯片是一种定点DSP,其指令周期为13.3ns,运行速度可达75MIPS。处理器包括算术/ 逻辑单元(ALU),乘法/累加器(MAC)和桶状移位器。存储器采用哈佛结构,有48K的PRAM和32K的DRAM。两个SPORT同步串口,一个定时器以及主机接口可以和主机处理器直接相连。DMA接口包括内部DMA接口(IDMA)和字节DMA接口(BDMA)。AIS系统中2189M的硬件设计部分电路如图2所示。芯片外接33M的晶体,其内部自动倍频到66M;一个同步串口SPORT与外部的MCU相连,引脚要接上拉电阻;把SPORT1设置成第二种工作模式,并
4、用软件把I/O口模拟UART,与MAX232芯片连接,数据送往简易显示;采用IDMA方式与MCU相连,16条并口线连接,启动模式设置为IDMA方式,其4个MODEAD设置分别为1,0,1,0;完成IDMA引导装载的步骤如下;PWD、EBR、BR、ERSET四个调试引脚必须外接上拉电阻;最后写PM(0X0000)的值,程序开始自动执行。图2 AIS系统的部分电路图图3 串口接收时序图图4 时隙划分图ADSP2189M接口的软件设计Sport0的设置采用同步串口与MCU通讯DM(0X3FF6)串口控制寄存器设置如表1所示。表1 中03:接收发送字长,我们定义为16位字长,设置为1111。67:帧同
5、步信号电平,为0,高电平有效。89:帧同步信号源,为1,内部产生帧同步信号。1011:成帧方式,为1,第二成帧方式。1213:帧同步,为0,发起通讯必须要帧同步信号,以后不再考虑帧同步信号。14:SCLK的产生方式,为1,内部产生串行时钟。DM(0X3FF5)串口时钟分频系数寄存器dm(sclkdiv)在ADSP2189芯片中,采样率与分频数之间的关系如下式F(sclk)=f(clkout)/(sclkdiv+1)/2其中,F(sclk)表示运行时钟,F(clkout)表示外接晶振的输出时钟,sclkdiv表示分频数,即存储器应该赋予的值。当控制寄存器设置好以后,串口接收时序如图3所示,接收到
6、的数据放在接收缓存区,每接收完一组数据,写一次接收标志位,主程序定期检测标志位,当检测到标志位变化时,调用接收处理子程序。Sport1和timer的设置由于DSP要输出数据到简易显示,通过UART口相连接,因此把Sport1设置为第二种工作模式(如表2所示)。DM(0X3FFF)系统控制寄存器(如表3所示)。表3中,12:SPORT0的使能,设置为1。11:SPORT1的使能,设置为1。10:SPOER1的功能选择,设置为0。用I/O口模拟UART,以9600波特率采样,内部定时中断产生速率为39600,在一个电平跳变中产生3次采样,取中间的采样值有效。DM(0X3FFD)定时周期寄存器DM(
7、0X3FFC)定时计数寄存器外接33M晶体,寄存器存放的数值为:period=frequence2/(39600)-1=2314芯片以28800波特率产生中断,每次中断程序检测UART的标志位,当标志位有变化时,每3次中断设置一次I/O的输出,直到发送数据结束。部分代码设置如下:ax0 = 2314; /定时器设置dm(0x3ffc) = ax0;dm(0x3ffd) = ax0;ax0 = 0;dm(0x3ffb) = ax0;/控制寄存器的设置ax0 = b#0001100000000000;ax0=b#0111111000001111;dm(0x3ff6)=ax0;/sport0设置ax
8、0=0x001f;dm(0x3ff5)=ax0;/SCLKDIV0mstat = 0x10; / 乘法器设置 ifc=b#0000000001100001;imask=b#0000100001;/中断开启ena timer; /开启定时主体软件流程系统采用自主式时分复用,把时间分成周期性的帧,每一帧再分割成若干时隙(无论帧或时隙都是互不重叠的),每个时隙就是一个通信信道,分配给一个用户。系统根据一定的时隙分配原则,使各个移动台在每帧内只能按指定的时隙向对方发射信号(突发信号),在满足定时和同步的条件下,基站可以在各时隙中接收到各移动台的信号而互不干扰。 在寄存器中划分两个信道的空间作为海域的时
9、隙表,如图4所示。网络登陆采用概率持续算法(当发现一个候选时间段时,台站在0到100之间随机选取一个概率值LME.RTP1,该值与一个0到10的概率LME.RTP2比较,如果 LME.RTP1小于或等于LME.RTP2,则选择这个时间段,反之,LME.RTP2加上一个概率增量与下一个候选时间段比较)。在2250个时间段上随机选择一个空闲时隙作为网络的接入点,然后以ITDMA方式接入。这种方式是一种先报告先占用的形式,在当前发射的数据中指明下一个需要发送数据的时隙号,从而达到预先通知其它台站自身所占用的时隙号,确定在60秒中需要占用的空间。在以后的连续阶段,移动台以SOTDMA方式完成网络的维护和时隙的重新划分。由于协议规定的数据格式中最大只能预知到7分钟的占用情况,所以每隔7分钟,需要在一定范围内重新选择一个新的空闲时隙发送,以次类推,一直以这种连续的状态运行下去。当速度发生改变的时候,系统重新以ITDMA的方式完成新的速率下的网络登陆。结语本文提出的设计方案,充分利用了DSP的高性能数据处理功能和嵌入式操作系统的实时稳定的特点,采用时分复用的算法,进行一个海域内的网络划分和联接功能。这种DSP信号处理与嵌入式操作系统相结合的模式,可以广泛应用于通讯领域,具有广泛的应用前景。