欢迎光临112期刊网!
网站首页 > 论文范文 > 计算机论文 > 计算机应用 > 基于FPGA与DSP的通用控制系统设计

基于FPGA与DSP的通用控制系统设计

日期:2023-01-24 阅读量:0 所属栏目:计算机应用


摘 要:本文采用FPGA与DSP构架设计通用化的控制系统,实现外部控制接口数据的接收、解析处理和传输。该系统已应用于多个工程项目,其性能得到充分验证。

关键词:FPGA;DSP;控制系统
  随着电子信息技术的发展和用户需求的日益增长,现代电子信息系统变得越来越复杂,控制系统作为电子信息系统不可或缺的一部分,对其接口功能、处理速度、稳定性、造价、体积、存储容量等都提出了更高的要求。基于FPGA与DSP设计的通用控制系统造价小,性能稳定可靠,处理速度快,能满足不同工程的性能需求,可运用于汽车控制,语音识别等各种不同系统。本文采用Xilinx公司的Virtex-Ⅳ系列芯片XC4VLX40-10FF668I与TI公司的TMS320LC549-120 DSP实现控制系统。
1 系统设计方案
  系统主要分为控制信息接收、控制信息分析处理以及控制信息处理结果上报三部分。FPGA主要负责DSP与外部的接口管理,以及时序控制;DSP主要负责控制信息的解析及处理。系统原理框图如图1所示。
  控制系统接收外部控制设备的控制命令,对接收到的信息进行解析,发送给外部被控制设备,对外部被控设备的反馈信息进行处理后将控制结果发送给外部控制设备。
  
    
  图 1 系统原理框图
2 硬件设计
2.1 器件选择
  本控制系统选择的XC4VLX40-10FF668I与TMS320LC549-120 DSP器件具有的性能如下所示。在实际应用时可以根据对具体控制系统的性能要求进行器件更换。
a) TMS320LC549-120 DSP
采用了先进的修正哈佛结构和8总线结构,具有高度并行和带有专用硬件逻辑的CPU设计、高度专业化的指令系统以及低功耗和抗干扰能力,使处理器的性能大大提高。它是一种低价格、高性能的DSP芯片,3.3V工作电压(2.5V内核电压),具有高速运算能力,能完成较强的通信功能和复杂的管理控制功能。
其具体特性如下。
1) 具有32KB内部RAM,作为加载程序存储空间和内部数据存储空间;
2) 最高120MHz工作时钟,10ns定点单指令周期,运算能力达10MIPS;
3) 各64KW的程序、数据和I/O寻址空间;
4) 32位长操作数指令,并行存储、并行加载算术指令;
5) CCS开发平台,C语言,高代码优化率,可移植性强,可读性强。
b) XC4VLX40-10FF668I
  Xilinx公司的Virtex-Ⅳ系列芯片XC4VLX40-10FF668I,共有4万门、18432个SLICE,内部最大可用1728Kbits的RAM和96个BlockRAM作数据缓冲用。I/O端口多,端口功能可编程自定义;内核采用2.5V供电,端口供电电压为3.3V。
2.2 控制系统与外部接口
  控制系统与外部设备的接口主要分为与外部控制设备接口、与外部被控设备接口两部分。外部设备与控制系统之间可以通过各种数据传输方式传输数据,比如以太网方式,SPI方式,SLIP串行数据传输方式等等,视控制系统运用的具体环境选择。
2.3 FPGA与DSP之间信息传输
  FPGA与DSP之间传输的信息主要包括时钟信息和与外部设备下发的控制信息以及因此产生的中断信息。
  时钟是整个系统运行的基准,在控制系统中时钟信号的来源是晶振,FPGA对晶振输出的时钟信号进行分频或者倍频处理以进行各种时序控制。DSP的输入
时钟就是经过FPGA分频或倍频了的晶振输出的时钟信号,DSP的运行时钟CLKOUT需对输入时钟CLKIN进行倍频处理,FPGA也会根据DSP输出时钟进行收发数据的处理。
  DSP与FPGA之间控制信息以及其它相关信息的传输均使用I/O端口实现。当FPGA接收到控制信息后产生中断信号通知DSP接收信息,并将DSP输出给控制设备以及被控设备的信息传递给相应设备。
3 软件设计
3.1 DSP软件设计方案
  DSP软件是在CCS3.1开发系统下使用C语言设计,使用C语言实现功能,实现高代码优化率,代码的可移植性强,可读性强。
3.1.1 系统初始化
  在DSP能正常工作之前,必须通过设置DSP寄存器值进行系统初始化。
a) 设置处理器工作方式状态寄存器PMST
  使用DSP的RAM作为程序的程序存储空间和数据存储空间,通过设置MP/MC位、OVLY位和DROM位实现。设置MP/MC位为1,不能利用片内ROM,OVLY位为1,片内RAM可以映像到程序空间和数据空间,但是数据页(0h~7Fh)不能映像到程序空间,DROM位为0,片内ROM不能映像到数据空间。
b) 设置DSP定时器以及时钟工作方式
  设置定时器控制寄存器TCR的free位为1,以便用高级程序语言调试程序遇到断点时,定时器继续运行。
  DSP使用PLL,通过设置时钟方式寄存器CLKMD设置DSP的工作时钟频率。DSP工作时钟频率等于外部时钟源频率乘以系数N,比如设置CLKMD为1110000101001111b,DSP工作时钟频率为15×外部时钟频率。在设置倍频数量时要确保倍频后的时钟没有超过DSP最大的运行时钟频率。
c) 中断设置
  由于控制系统中DSP使用中断来接收控制信息,因此在初始化的最后要开放使用的可屏蔽中断,通过设置imr寄存器来实现。
  在系统初始化完成之后,控制系统的DSP芯片能正常运行起来。
3.1.2 控制信息接收及分析处理
  在系统工作时,DSP通过中断接收各种控制信息,对信息进行解析,将控制信息通过FPGA发送给被控制设备,将处理控制信息的结果通过FPGA发送给控制设备。
  在DSP通过中断接收控制信息之前,需要设置中断向量表,编写中断服务程序,以便DSP能实时接收到控制信息。首先在文件中添加中断相关信息,如下所示。
  .ref _c_int00
  .ref _int0ISR  ;新增的int0中断服务程序名称
  .align 0x80
  …
  int0: B _int0ISR  ;将中断服务程序关联到对应中断上
      NOP
      NOP
  …
  增加了中断向量的相关信息后,可以在程序中编写中断服务程序了,使用C语言实现的DSP程序中,实现中断服务程序时必须以下面的格式编写函数,必须使用关键字interrupt。
  interrupt int0ISR(void)
  {
   …
  }
  在使用I/O端口与FPGA通信时,在C程序中以ioport unsigned int portXXXX方式定义与FPGA通信的I/O端口,XXXX表示端口地址,使用16进制表示,其范围为0x0000~0xFFFF。比如定义port1从FPGA接收数据,port2向FPGA发送数据,其书写方式如下所示。
  ReceiveData = port1;//从端口1读取数据
  port2 = SendData;  // 向端口2发送数据
  DSP的主程序和中断服务程序流程图如图2、图3所示。
3.2 FPGA程序设计
  FPGA程序是在XILINX的软件开发系统下,用VHDL语言设计实现的。假设本控制系统与外部控制设备通信使用的是异步串行通信方式(SCI),与被控设备通信使用的是串行异步通信总线方式(RS485总线)。下面主要介绍FPGA怎样实现外部数据与DSP能够识别的信息之间的转换。 本文链接:http://www.qk112.com/lwfw/jsjlw/jisuanjiyingyong/242308.html

论文中心更多

发表指导
期刊知识
职称指导
论文百科
写作指导
论文指导
论文格式 论文题目 论文开题 参考文献 论文致谢 论文前言
教育论文
美术教育 小学教育 学前教育 高等教育 职业教育 体育教育 英语教育 数学教育 初等教育 音乐教育 幼儿园教育 中教教育 教育理论 教育管理 中等教育 教育教学 成人教育 艺术教育 影视教育 特殊教育 心理学教育 师范教育 语文教育 研究生论文 化学教育 图书馆论文 文教资料 其他教育
医学论文
医学护理 医学检验 药学论文 畜牧兽医 中医学 临床医学 外科学 内科学 生物制药 基础医学 预防卫生 肿瘤论文 儿科学论文 妇产科 遗传学 其他医学
经济论文
国际贸易 市场营销 财政金融 农业经济 工业经济 财务审计 产业经济 交通运输 房地产经济 微观经济学 政治经济学 宏观经济学 西方经济学 其他经济 发展战略论文 国际经济 行业经济 证券投资论文 保险经济论文
法学论文
民法 国际法 刑法 行政法 经济法 宪法 司法制度 法学理论 其他法学
计算机论文
计算机网络 软件技术 计算机应用 信息安全 信息管理 智能科技 应用电子技术 通讯论文
会计论文
预算会计 财务会计 成本会计 会计电算化 管理会计 国际会计 会计理论 会计控制 审计会计
文学论文
中国哲学 艺术理论 心理学 伦理学 新闻 美学 逻辑学 音乐舞蹈 喜剧表演 广告学 电视电影 哲学理论 世界哲学 文史论文 美术论文
管理论文
行政管理论文 工商管理论文 市场营销论文 企业管理论文 成本管理论文 人力资源论文 项目管理论文 旅游管理论文 电子商务管理论文 公共管理论文 质量管理论文 物流管理论文 经济管理论文 财务管理论文 管理学论文 秘书文秘 档案管理
社科论文
三农问题 环境保护 伦理道德 城镇建设 人口生育 资本主义 科技论文 社会论文 工程论文 环境科学