- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于μClinux的IP电话.doc
基于μClinux的IP电话|第1
lunp; Sullivan调研公司的报告中预计,到2007年VoIP的通话量将占全部通话量的75%,甚至更高一些。
Nios CPU 是一种采用流水线技术、单指令流的RISC处理器,又是一种软核CPU,专门针对可编程逻辑器件进行了优化,因此是一种可配置的通用RISC处理器,可以与用户自定义逻辑结合,构成完整、功能强大的SOC系统,在嵌入式系统的设计中已成为趋势。
嵌入式操作系统是嵌入式系统的灵魂,可以显著提高软件开发效率和进行软件复用。针对当前日益复杂的嵌入式系统开发,应用操作系统是保证产品面市时间的关键。嵌入式μClinux操作系统是一种性能优良、源码公开且被广泛应用的的嵌入式操作系统,具有高度灵活的可定制内核。
目前尚无Nios CPU的移植版本,为了完成参赛作品,我们自行移植了μClinux操作系统的Nios CPU版本,继而在μClinux操作系统上完成了IP的设计开发。
二、功能说明
基于μClinux的IP分为服务端(接受方)和客户端(呼叫方)。发起通话请求的一端称为客户端,另一端则为服务端。根据不同应用场景,服务端和客户端可以调换角色,也就是说,任意一端都可以发起通话请求。
客户端发起通话请求,输入服务端IP地址,两端通过网络连接成功后,利用麦克风和听筒,就可以进行通话了。
本作品的实现分为硬件和软件两个部分。
硬件部分进行A/D、D/A板的开发设计,以实现语音的数/模和模/数转换功能。采用AD7811、AD7305等芯片,实现了A/D,D/A的控制时序逻辑以及采样率的设置等功能。
软件实现主要包含以下四个步骤:
第一,将嵌入式操作系统μClinux移植到Nios处理器上。
第二,移植μClinux下的smc lan9111c1网卡驱动程序,实现IP连接。
第三,开发μClinux下语音板(自行开发设计)的驱动程序。
第四开发μClinux下的应用程序,实现IP功能,分别为服务端和客户端应用程序,提供IP的呼叫和等待通话功能。
三、性能参数
语音板AD7811采用的是Analog公司的一款A/D转换器,它具有如下一些关键特性:
* 4个模拟输入通道;
* 1个数字输出通道;
* 分辨率为10位;
* 串行接口;
* 2.5 V内部参考电压;
* 外部参考电压范围为1.2 V_VDD;
* 模拟输入范围为0_Vref;
* 可通过控制寄存器进行软件控制;
* 电源供电范围为2.7_5 V。
在本系统中用到2个模拟输入通道,分辨率采用10位中的8位。
AD7305是Analog公司的一款D/A转换器,它具有如下一些关键特性:
* 4个模拟输出通道;
* 8个数字输入通道;
* 分辨率为8位;
* 并行接口;
* 外部参考电压范围为VSS_VDD;
* 模拟输出范围为VSS_VDD;
* 电源供电范围为2.7_5 V。
四、系统构成
本作品的体系结构框架如图1所示,软件流程图如图2所示。
服务端应用程序
客户端应用程序
网卡驱动程序
A/D D/A驱动程序
μClinux内核
Altera Stratix 1S10
Nios CPU A/D D/A的接口逻辑
语音板
500)this.style.ouseg(this)
图1 体系结构
500)this.style.ouseg(this)
图2 软件流程图
五、设计描述
本系统的设计分为硬件和软件两部分,硬件主要是在ALTERA的Stratix板上扩充了一块语音板,用来接受语音的输入并实现模/数的转换;软件部分是移植μClinux操作系统,编写A/D板的驱动及上层应用程序的开发。
1.硬件部分
在实现语音模/数转换时主要应控制AD7811、AD7305的时序,在模拟信号输入时用运放调整电压至AD7811能接受的范围。图3是语音板时序控制状态转换图。
500)this.style.ouseg(this)
图3 语音板的序控制状态转换
在这里我们用SOPC Builder提供的用户自定义接口来实现以下功能:到avalon总线的接口,对A/D、D/A芯片的控制时序;按特定采样率进行采样,利用可读/写寄存器任意更改采样率;采用内置缓冲存储采样数据,每采样32次才发出一次中断,从而减少CPU中断的次数。
SOPC Builder设置如图4所示。
图4 SOPC Builder设置
部分接口逻辑如下:
od 4 = 1 then
data0(i) lt;= DOUT;
end if;
if st=0 then
state lt;= set1;
st lt;= 39;
else
st lt;= st - 1;
end if;
p,buf+i);
kbuf_p;
}
}else //分两次写完
{
if(e:count=%d/n,coun
您可能关注的文档
最近下载
- 成人失禁性皮炎的预防与护理团标解读课件.pptx VIP
- 义务教育法课件.pptx VIP
- 义务教育数学课程标准(2022年版)重点.pdf VIP
- 高校辅导员招聘考试《基础知识》试题汇编(含答案).pdf VIP
- 第十四章烧伤冷伤咬蛰伤.pptx VIP
- FLOEFD 2021(Standalone 版)软件教程-第8章高级模块示例(管内燃烧).pdf VIP
- 未来之路 比尔盖茨.pdf VIP
- 物流园区绩效指标体系.pdf VIP
- 迅达电梯SMLCD人机界面培训5400主板按键操作培训.pptx
- FLOEFD 2021(Standalone 版)软件教程-第7章参数化研究示例.pdf VIP
文档评论(0)