积分规则 网站地图 帮助中心    
嵌入式软件 单 片 机 DSP 存储器 传感控制 光电显示
嵌入式硬件 CPLD/FPGA SOPC AD/DA 接口电路 模拟设计
I C设计 通信产品 汽车电子 电源产品 消费电子 数控系统
工业控制 军工/航天 安防产品 医疗电子 计算机外设 测试测量
供应 I C
求购 公司库

  IC 求购 销售 公司 论文 DATASHEET 参考设计 论坛
当前位置: 电子技术 >> SOPC >> 应用论文
  相关分类: 相关文章 | 应用论文 | 新产品 | 下载 |
基于NIOS软核CPU技术的多路电话计费系统的设计与实现
 
作者:魏毅,柯赓   来源:电子设计应用    点击数:150   更新时间:2008-6-13
您可以添加到网摘 让更多人关注此文章:

    摘 要:随着CPU性能的大幅提升,嵌入式系统的设计已经进入了更广范的领域,在单一芯片上采用更合理的设计工艺、集成更多的逻辑功能,已经成为技术发展趋势。介绍了一套基于Altera公司的NIOS嵌入式CPU 开发的多路电话计费系统。该系统充分体现了SOPC(System On Programmable Chip) 的设计理念,采用Altera公司的Cyclone 芯片实现了多路电话的计费、管理等功能,获得了最优的性价比。从硬件设计与软件设计2 个方面介绍了系统的开发流程,尤其是对片内资源的配置部分做了详细地说明。

关键词:片上可编程系统;知识产权;软核处理器;嵌入式系统

引言

  近几年来,随着CPU性能的大幅提升,嵌入式系统的设计渐渐进入了更广范的领域,在单一芯片上采用更合理的设计工艺、集成更多的逻辑功能,已经成为技术发展趋势,也对设计开发人员提出了更严峻的挑战。本文介绍的电话计费系统采用Altera公司的Cyclone芯片,结合NIOS 软核嵌入式CPU来设计开发。在此Cyclone芯片上,除串口、键盘等接口外,将实时显示部分也集成进去,同时通过标准的I/O口外接了1片CMX868的Modem芯片来实现远端拨号功能,最大限度地使用了Cyclone芯片的资源,同时降低了成本,达到了最优的性价比。

系统介绍

此多路电话计费系统是一种可实时计费,自动结算,并具备远程管理功能的电话计费系统。目前,在国内人口密集的地区,有人值守的计费电话发展很快,在中小企业、宾馆酒店和话吧使用此多路电话计费系统是较为理想的选择。因此,近几年多路电话计费系统的需求仍会增加,有着很好的市场前景。

采用NIOS 软核处理器的原因
该设计结合NIOS 软核处理器和Cyclone芯片来实现,采用NIOS 软核处理器主要有以下几个原因:

(1) 与传统的电话计费系统相比有着极好的性价比。目前,国内的计费系统的设计主要有2种: 一是使用PC机,配套计费软件;二是使用单片机,每片单片机负责一路电话,再另外使用一片做管理。前者成本太高,后者仅适用于1~4 路的小容量情况。在大容量的情况下,例如在16路电话业务的情况下,配合处理起来性能上很难达到商家的要求。而使用NIOS软核处理器来设计,利用SOPC在FPGA 上的高度集成性能,不但可以满足性能上的要求,最重要的是可以达到最好的性价比。

(2) 与其他同级别的CPU相比,NIOS有其明显的设计优势。从性能上来说,NIOS软核处理器与例如ARM、Intel等的CPU处于同一级别,都能够满足设计的需要,但是在系统逻辑复杂的情况下,使用一颗Cyclone或Stratix的NIOS CPU能够设计自己所需的逻辑。例如,本设计中需把显示部分用逻辑实现,此时选用NIOS CPU 的优势就体现出来:把NIOS和Cyclone 结合在一起,就产生了相对于其他CPU的更好的性价比。

(3) 产品的升级空间很大。Altera 公司的软件升级速度很快,使用NIOS 软核处理器,随着其软件的升级,仅需更改设计文件(部分代码) ,就可以实现系统的升级换代,这样,产品可以在今后有更多提高性能的可能。

(4) 本实验室一直跟踪使用Altera 的开发软件,从早期的Max+PLUS 到如今的Quartus ,NIOS 软核CPU的SOPC配置工具从第一代的命令行形式的SDK 到如今的基于Windows 界面的NIOSIDE,已经具备了较丰富的开发经验。

系统功能描述
该设备的主要功能有:话机状态实时显示;实时计费,自动结算;免费、禁打等电话设置;押金控制功能;详尽的话单查询及统计功能;远程实时管理功能,网管中心可通过Modem 对计费器进行费率更新等实时管理操作。

设备的实时显示部分,准备在Cyclone 芯片中做出一个显示逻辑,通过普通的AV 端外接一个监视器或小电视,显示各路话机的当前状态;计费结算、免费、禁打的设置、押金控制、话单查询及统计等功能在软件流程设计中给予充分考虑;远程实时管理部分,采用CMX868 调制解调器芯片编程实现,拨号与远端的Modem 互联,通过电话线进行费率的下载与更新。

系统性能参数
脉冲及双音频收号准确度> 99.99%;计费系统的计时误差< ±100 ms/话单;系统在满负荷工作情况下计费差错率< 0.05%。

接口空闲杂音电平:≤-70dBmp;谐波失真:300~3400 Hz 频带内,相对于800Hz,0dBm 的信号,其产生的谐波应比输入信号至少低45dB。

串音:计费系统满负荷工作情况下,在任意一条线路,串音防卫度不小于65dB。

费率更新: 通过软件更新费率,串口波特率为38.4kb/s。

系统设计

系统硬件设计
Altera 的NIOS 系统的突出优点表现在他的灵活性和可裁减上,系统提供大量免费的IP,设计者可以任意对IP 进行取舍,同时,用户也可根据需要定制自己的IP,选择自己所需的功能。图1 表示了本套系统设计中Cyclone芯片的内部配置情况。

整个Cyclone 芯片内部系统的结构如图1 所示。在本系统设计中,选用或设计了如下的Altera IP:UART (Avalon 总线) 通过UART可以在PC上下载、调试NIOS CPU所需的程序,并且通过监控程序GERMS对整个系统的运行进行控制。

图1 本系统中Cydon芯片内部结构

SPI(Avalon总线) NIOS CPU 通过这个接口控制系统中的SPI 总线器件。ASMI (Avalon总线)该IP是专门为Alerta公司EPCS4系列配置芯片设计的接口,通过这个接口NIOS CPU可以方便地访问串行配置芯片。

SRAM (Avalon Tri-BUS 总线)  该IP 是外部存储器SRAM 的控制接口,通过他完成SRAM 的时序控制。FLASH (Avalon TriBUS 总线)  该IP 是外部存储器FLASH 的控制接口,通过他完成对FLASH 的时序控制。

User_interface(Avalon 总线)作为用户自定义的显示接口,通过此口外接显示逻辑完成显示功能。设计带有汉字显示和字符显示的显示控制器及其与NIOS CPU 接口的逻辑电路。该显示控制器需要一个PLL 来产生电视显示必需的时基信号,因此选用Cyclone 系列的EPC1C3T144C8 芯片。

PIO (Avalon总线)CMX868、键盘、鸣叫等通过此总线控制,另外,利用PIO 产生一个500Ls 定时器。

TIMER(Avalon总线)  最后调CMX868拨号的程序时,为了不中断主程序和打扰其他中断程序的运行,添加此可任意设置时长的TIMER 来控制拨号过程。另外,用此定时器控制时钟芯片DS1511 的复位,实现看门狗的作用。

显示部分通过外接一个电视机或监视器来完成显示功能。内部的逻辑主要是对行、场同步信号的处理,这部分经过重复模拟仿真完成。

系统软件设计
在Nios SDK shell 的环境下,使用带Monitor的boot loader 程序,这样可以在程序Debug 的同时监控内部Memory 的变化,便于硬件设计的检查和程序的调试。软件的编写主要采用C语言,部分嵌入了汇编语言。整个系统的流程中的重点是以下3部分。

启动部分
设计上电加载程序,从E2PROM中读出应用程序,将其拷贝到RAM中,拷贝完成后将程序控制权转交到应用程序。这部分程序保证系统加电以后正常运行,而不是进入调试模式。分析POF 文件的特点,发现POF 文件中的数据与串行E2PROM中的储存位置之间的对应关系,找到将程序和配置结合成一个POF文件的方法,使用Programmer 用AS方式将程序和配置同时固化。

费率查询部分
在本系统中,多路电话同时工作时如果每秒查一次费率,则需要频繁的访问CPU ,大量的占用资源。我们做了一个设计,电话接通后一次查出24h 内的费率,记录下不同费率的时间段,通过时钟与这些时间段的比较决定当前费率。

费率文件放在串行FLASH 中,同时保留当前使用的与即将更新的2 个费率文件,当时钟与费率文件中的启用时间相符时,自动进行费率的更新。

远端管理部分
CMX868做为Modem芯片,完成远端与本地通信的功能。程序中主要是对其内部寄存器做读写操作,其中比较复杂的是超时的处理。由服务器发起呼叫,远端Modem与CMX868进行Modem之间的通信,完成费率文件的下载、话单纪录的上传等,实现了远端网管功能。管理也可在本地通过串口实现。

结 语

本系统的特点:
用SOPC 实现了将微处理器、AV 汉字字符显示逻辑、标准键盘接口、数字信号处理接口等集成在一颗芯片上的设计思想。

使用Cyclone 系列的EPC1C3T 144C8 芯片和Nios 16 位处理器,既满足了系统性能上的要求又使系统的成本最低。

将系统配置信息、Nios CPU 程序、话费费率表全部储存在一片EPCS1S 芯片中,充分利用了Cyclone 芯片的特性。使得系统并行FLASH 只用于存储用户话单。自行开发了上电加载程序,实现了从加载程序并且将控制权转交给应用程序。

[1]



相关文章
· 简易数字电压表的设计[13]
· 基于ARM的视频安全监控终端的设计与实现[7]
· 基于C8051F的OLED控制电路的设计[12]
· CPLD EPM570在视频采集中的设计与应用[11]
· 基于ARM9的1553B与CAN总线转换卡的设计与实现[9]
热门评论排行
·VHDL设计中电路简化问题的
·江苏嵌入式Linux教育培训
·锐极LINUX驱动培训班定于
·基于实时操作系统μC/OS-
·ARM处理器应用开发4步骤

文章评论
    没有任何评论
*只显示最新10条评论。评论内容只代表网友观点,与本站立场无关。更多评论
发表评论
  * 请先[登陆]再进行评论,谢谢。
评分: 1分 2分 3分 4分 5分
内容: *
发帖须知:
一.所发文章必须遵守《互联网电子公告服务管理规定》;
二.严禁发布供求代理信息,公司介绍,产品信息等广告宣传信息;
三.严禁恶意重复发帖;
四.严禁对个人,实体,民族,国家等进行漫骂,污蔑,诽谤。
 
热点新闻 [更多]
 
Camstar帮助中国医疗器械制造商
中华英才网将被全盘收购
破国外垄断 中国移动存储标
IC设计面临三重挑战 ED
手机电视芯片方案需求多变
北京德尔威科技有限公司与台湾佳营电子
全球手机芯片市场战局将出现重大变革
北京奥运安保系统首次成功运用射频识别
英特尔开发空气传电技术
IBM生产出首个22纳米工艺SRAM
 
热门下载 [更多]
 
[ ] 手把手学单片机20个例
[ ] 单片机做的智能台灯
[ ] 单片机入门书
[ ] linux系统移植开发文档
[ ] IC卡的读写程序
[ ] 8051单片机C语言彻底应用
[ 常用软件] 555定时器电路设计软件V1.2
[ 常用软件] 51定时器计算软件
[ ] ARM处理器应用开发4步骤
[ ] 实用电源电路集锦
 
论坛新帖 [更多]
 
液晶问题...
[原创]本公司长期批发各种滑冰...
[原创]本公司长期超低价批发各...
[原创]本公司长期超低价批发种...
[原创]本公司长期批发各种酒、...
[原创]本公司长期低价批发各种...
[原创]长期低价批发各种母婴用...
[原创]本公司长期批发各种饮料...
[推荐]通讯上通用的一个GSM...
用两个电容代替一个?...

 
赞助商 [更多]
 


ICP许可证号:[粤 05056597]
联系电话:010-82517432 82517615 传真: 010-82517615

版权所有 Copyright © 2006 嵌入式技术网