保存桌面快捷方式 - - 设为首页 - 手机版
凹丫丫旗下网站:四字成语大全 - 故事大全 - 范文大全
您现在的位置: 范文大全 >> 理工论文 >> 电子通信论文 >> 正文

双核DSP片TMS320VC5421的并行引导方案


  
  4.2Boot表的放置
  
  本系统用4Mbit(256k×16)FLASH器件SST39VF400A作为片外数据存储器。页选信号由DSP通过CPLD给出,并且映射到DSP中I/O空间的0000h地址单元的低5位(系统复位后5位均为0,即第0页)。如图4所示。另外,此地址单元的第5位(CFG位)是控制FLASH映射的配置位。当CFG为0时,FLASH被映射到DMA片外数据空间的0000h,此时,Bootloader程序可以以DMA方式从FLASH中搬移数据并进行自启动;当CFG为1时,FLASH被映射到CPU片外数据空间的8000h,在这种情况下,可以通过程序向FLASH中烧写数据。因此,这一位在系统上电或复位后将被设置成0,以使A核能够顺利启动。
  
  由于两个DSP核的Boot表内容不同,故应视Boot表的大小,将两个Boot表放到FLASH的不同页上,以便对两个核分别实行引导。本设计将A核的Boot表放到第0页,将B核的Boot表放到第1页。
  
  图5
  
  4.3外总线控制权的释放
  
  如图5所示,在GPIO控制寄存器(地址3Ch)中,XIO_GRANT位为1代表相应的DSP核取得了片外总线的控制权;而在还没有取得控制权(XIO_GRANT位为0)但在申请片外总线的控制权时,相应的XIO_REQ位应置为1;CORE_SEL位用于表示程序在哪个核上运行,当在CPUA上运行时,读A核的GPIO控制寄存器的CORE_SEL位将返回到“0”,而当同一个程序在CPUB上运行时,读B核的GPIO控制寄存器的CORE_SEL位将返回到“1”。有关GPIO控制寄存器的其它相关位,设计时可查阅有关的参考文献?1?。
  
  4.4FLASH的烧写
  
  笔者根据SST39VF400A的资料编写了一个DSP程序,该程序可同时将A核的Boot表烧写到FLASH的第0页,而将B核的Boot表烧写到第1页。
  
  在系统上电或复位后,A核首先运行它的Boot-loader程序(此时FLASH的第0页映射到DMA片外数据空间的0000h地址单元),A核启动后执行用户程序。用户程序首先将页选设置成第1页,这样,FLASH的第一页将被映射到DMA片外数据空间的0000h;然后,A核释放片外总线控制权,并给B核发出复位信号,此时由于只有B核复位,且A核已释放片外总线的控制权,因此,B核将申请到片外总线控制权,同时执行Bootloader程序的启动以完成整个DSP引导。完整的启动过程流程图如图6所示,下面是A核的启动测试程序代码:
  
  ·mmregs
  
  ·titlc″testLEDA″
  
  ·globalbegin
  
  ·text
  
  ?.............
  
  begin?stm#0x000,0x0061;设置页选信号
  
  portwox0061,00h
  
  callwait
  
  andm#0xffcf,3ch;释放片外总线
  
  callwait;控制权
  
  stm#0x0041?0x0061;给B核复位信号
  
  portw0x0061,00h
  
  callwait
  
 

《双核DSP片TMS320VC5421的并行引导方案(第3页)》
本文链接地址:http://www.oyaya.net/fanwen/view/174904.html

★温馨提示:你可以返回到 电子通信论文 也可以利用本站页顶的站内搜索功能查找你想要的文章。