新闻中心

EEPW首页 > 手机与无线通信 > 设计应用 > 基于IP核的PSTN短消息终端SoC软硬件协同设计

基于IP核的PSTN短消息终端SoC软硬件协同设计

作者:时间:2010-11-25来源:网络收藏

摘要 介绍在基于微控制器IP核的PSTN短消息终端SoC设计当中,如何合理划分硬件和软件的功能;从对微控制器IP核的配置与扩展、片上外设在SFR总线上的映射、存储空间的划分与映射等三个方面,详细讲述SoC的软硬件协同设计。

本文引用地址:http://www.eepw.com.cn/article/156923.htm

关键词 软硬件协同设计 IP核 SoC DW8051_core

1 概述

  PSTN短消息终端SoC是为固定电话网短消息业务而设计的一种数字终端处理芯片。片上集成了微控制器、RAM、FSK/DTMF调制解调器、扩展页面寻址以及线路状态控制;可以完成FSK和DTMF格式的短消息上传、下传,CID(Calling Identity Delivery,主叫识别信息传送)号码的,振铃信号检测,话机状态控制等功能[1],提供了PSTN短消息终端的单芯片解决方案。其中,使用了DW8051_core IP核作为SoC的微控制器核心。

  SoC(System on chip,片上系统)不仅指它的硬件平台,还包括运行在其上的软件成分。如果系统采用全硬件设计的方案,优点是速度快、效率高,但是研制周期长,从而成本也高;用软件实现则更为灵活,研制周期短。缺点是速度慢,效率比较低。因此,SoC设计必须在硬件与软件功能划分上有一个合理的权衡,并进行协同设计[2]。

2 SoC系统任务的软硬件功能划分

  系统任务按功能可以分为通信、人机交互、Flash存储器管理和外设管理四部分。通信的物理层功能即DTMF/FSK信号的调制解调,涉及插值、加权、相关等DSP运算。考虑到通信的实时性要求和所使用8位微控制器的数据处理能力,这些运算由专门设计的Modem硬件逻辑实现;而在数据链路层,比如建立和释放与服务器的连接、超时控制、FSK数据帧、拆包、差错控制、提取返回消息层的信息和相应标志位的建立等,都交给微处理器由软件实现。人机交互中的要不断判断是否有按键动作发生,用软件实现效率低,这里也用专门的硬件逻辑实现。其他人机交互功能,如菜单操作、短信编辑等,则都由软件实现。Flash存储器管理和外设管理在硬件提供了接口寄存器的情况下,由软件实现。

  把实时性强、运算量大和重复性强的功能交给硬件去实现,然后在满足系统性能要求的情况下,把尽可能多的任务留给片上的微控制器用软件实现。这样降低了SoC的硬件复杂度以及制造成本,同时系统也可以获得最大的灵活性。

3 SoC的软硬件协同设计

3.1 对微控制器核的配置和扩展

  DW8051_core是Synopsys公司提供的一个与8051指令兼容的8位微控制器IP核。它采用4个时钟周期为1个指令周期的模式,在时钟周期相同的情况下,处理能力是标准8051的3倍。DW8051_core访问程序存储器和的MEM地址总线是16位总线,避免了传统8051结构中数据总线和地址总线低位的时分复用问题。

  由于DW8051_core是一个IP软核(soft core),所以可以对它进行配置和扩展。在综合(synthesis)的时候,通过对参数文件的设置,可以选择配置内部RAM是128字节还是256字节;可以选择是否使用定时/计数器2,使用1个串口还是2个串口等。用户还可以按照DW8051_core手册的要求使用硬件描述语言编写硬件逻辑,扩展SFR总线和中断系统(最多可以扩展到13级中断)[3]。

  在SoC设计中,只使用到了微控制器核的1个硬件定时器(Timer0),1个外部中断(Interrupt0),1个串行口(UART),并没有使用DW8051_core的全部功能。那些冗余的功能只会增加系统的硬件负担,所以按照最精简的原则配置DW8051_core:使用内部128字节RAM,不使用定时/计数器2,不使用内部ROM,只使用1个串口,不扩展中断。在DW8051_parameter.vhd文件中,作如下的参数设定[3]可以完成上述配置:

  package DW8051_parameter is
constant ram_256 : integer := 0;
constant timer2 : integer := 0;
constant rom_addr_size : integer := 0;
constant serial : integer := 0;
constant extd_intr : integer := 0;
end DW8051_parameter;


上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭