0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于μC/OS-II和Nios核结合实现EDSL Modem的软硬件设计

电子设计 来源:郭婷 作者:电子设计 2018-12-06 09:30 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1 引言

EDSL技术是基于IP交换的新型宽带接入技术,它结合了以太网技术和xDSL技术的优点,首次在接入网内实现IP端到端的传输,中间无协议转换,大大降低了信令处理的复杂性。EDSL独特的智能频谱管理技术和时分双工模式,大大简化了系统结构,同时也顺应了主干网IP化的趋势。与传统 xDSL技术比较,它不仅克服了 xDSL技术的许多局限性(如对线路的挑、串扰等),并且增大了传输距离,提高了传输效率,EDSL系统结构与ADSL类似,其核心部分是EDSL Modem.

在EDSL实现中,本文提出了可剥夺实时内核的实时操作系统μC/OS-II和32位精简指令集软核处理器 Nios核相结合的方法,构成一种基于可配置的软核处理器的嵌入式开发平台。该平台软、硬件均可按照用户需求进行剪裁配置,最大程度地提供了系统设计的灵活性,具有重要的应用价值。

2 EDSL系统结构和协议栈

EDSL 的主要技术特点:(1)IP端到端网络;(2)采用时分复用技术,双向带宽动态分配;(3)客户服务器模式,I P 包无碰撞机制;(4)数据突发技术。正是由于以上技术的采用,使得EDSL技术不仅克服了xDSL技术的许多局限性,并且增大了传输距离,提高了传输效率。EDSL的系统结构与ADSL类似,由位于用户端的EDSL Modem 和 局端的高密度接入复用设备DSLAM(DSL Access Multiplexer)构成,其结构如图1所示。

基于μC/OS-II和Nios核结合实现EDSL Modem的软硬件设计

与基于ATM的ADSL技术相比,EDSL技术拥有更为简单的协议结构,如图所示2。

3硬件平台的设计

EDSL Modem硬件平台的搭建主要使用了 Altera公司的 FPGA Cyclone EP1C6Q240C8芯片,它拥有充足的可编程逻辑资源内嵌32位Nios-II软核处理器来实现整个可编程嵌入式系统。系统的主要功能由FPGA实现,硬件电路除 FPGA外只需加上存储器件、以太网控制芯片和前端AD/DA转换芯片即可。本系统主要使用了一片 8M Byte Flash,一片16M Byte SDRAM,以及以太网接口控制芯片等作为FPGA的外围设备,硬件结构简单明了,极大提高了系统的可靠性。FPGA系统运行时钟为50MHz,充分保证了系统的运行速度。

在硬件平台的搭建中主要用到了Altera公司的Quartus-II与SOPC Builder软件,其中 Quartus-II能进行系统及各逻辑部件的设计输入、编译、仿真、综合、布局布线,并进行位流文件的下载和配置文件的烧录,以及使用片内逻辑分析仪进行分析和验证。 在SOPC Builder 中选取系统所需部件,并自动生成每个部件的系统级HDL文件以及支持部件所需的软件,如驱动程序、库文件和一些实用的应用程序等,以供软件开发 原型用。

通过SOPC Builder软件包可以定制32位 Nios-II软核处理器和基本的Nios-II外设模块,如 UART控制器定时器,FLASH控制器, SDRAM制器等。本文设计的硬件平台结构如图3所示。

基于μC/OS-II和Nios核结合实现EDSL Modem的软硬件设计

图 3所示虚线框内硬件部分均是在 FPGA内实现

该系统的嵌入式处理器 Nios-II是 Altera 公司推出的一个用户可配置的16 位或32 位精简指令集软核处理器。Nios-II处理器可以配置成最多支持 64个中断,包括外部硬件中断、内部中断以及 TRAP(调试中断)。Nios-II 处理器可以配置使用 32位内部定时器,通过软件控制写入控制寄存器的内容来获得定时工作,与一般的定时器工作原理相同,可以产生定时中断。

Nio-II嵌入式系统中采用 Avalon交换式总线在处理器、外围设备和接口电路之间实现网络连接,并提供高带宽数据路径、多路和实时处理能力。 Avalon交换式总线可以通过调用 SOPC Builder设计软件自动生成 。

EDSL Modem的核心部分即主收发器利用 FPGA中的逻辑单元编写自定义用户模块,并生成自定义 IP核,通过 Avalon总线接口与嵌入式处理器相连。该主收发器共包括了两个部分:EDSL成帧模块和 QAM调制模块。

4软件系统的设计

软件平台的开发是在 Altera公司为 Nios-II 系统定制的 Nios-II IDE系统上展开的, Nios-II IDE是基于 Eclipse IDE的集成开发环境,用户可以在 Nios-II IDE中为 Nios II 系统开发模块驱动程序、板级支持包( BSP),以及用户应用程序。考虑到 EDSL Modem 的系统控制和高速数据传输,在该嵌入式平台中嵌入了实时嵌入式系统 uC/OS-II,整个系统的软件体系结构如图4:

基于μC/OS-II和Nios核结合实现EDSL Modem的软硬件设计

其中位于 Nios-II硬件平台之上的是 EDSL Modem各部件的驱动程序。其上是硬件抽象层(HAL),它是位于应用程序和系统硬件之间的一个系统库( System Library),在软件开发时可以非常方便地使用这些系统库来与底层硬件通信,而无须关心的底层硬件实现细节。HAL API(Application Program InteRFace,应用程序接口)集成了 ANSIC 的标准库,它允许应用程序使用类似 C库函数的方式访问硬件和文件。

实时嵌入式操作系统 uC/OS-II 内核工作在 HAL的顶部,有了 HAL这一层,基于 uC/OS-II的程序具有更好的可移植性,而且不受底层硬件改变的影响。

本文介绍了我国拥有自主知识产权的宽带接入技术—— TDD-EDSL,并着重介绍了基于 SOPC的 EDSL Modem的软硬件实现。在商用 ASIC并不完善的情况下,本文使用了软硬件均可编程的 Nios-II嵌入式系统,缩短了研发周期,降低了研发成本。同时 SOPC也代表了以后产品设计的发展方向,具有积极的借鉴意义。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    5186

    文章

    20165

    浏览量

    329047
  • 以太网
    +关注

    关注

    41

    文章

    5929

    浏览量

    179582
  • 操作系统
    +关注

    关注

    37

    文章

    7331

    浏览量

    128666
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于μCOSII的μC/IP协议栈在ARM系统中的实现

    基于μCOSII的μC/IP协议栈在ARM系统中的实现深入分析了UC/IP协议栈,阐述了其移植原理和
    发表于 03-28 14:04

    μC/OS-II是什么?μC/OS-II有哪些应用?

    μC/OS-II的原理是什么?如何去改进μC/OS-II的调度算法?μC/OS-II有哪些应用?
    发表于 04-26 07:17

    如何实现μC/OS-II系统的移植?

    如何实现μC/OS-II系统的移植?
    发表于 04-28 06:01

    基于μC/OS-II的嵌入式音频系统设计

    基于μC/OS-II的嵌入式音频系统设计 Design of Embedded Audio Frequency System Based on μC/OS-II
    发表于 03-16 11:10 19次下载

    μC/OS-IINios上的移植

    首先介绍嵌入式实时操作系统μC/OS-IINios 嵌入式处理器, 分析μC/OS-II 移植对目标处理器的要求, 重点介绍
    发表于 03-08 09:31 90次下载

    μC OS-IINios 上的移植1

    首先介绍嵌入式实时操作系统μC/OS-IINios 嵌入式处理器, 分析μC/OS-II 移植对目标处理器的要求, 重点介绍μ
    发表于 05-16 14:32 28次下载

    轻型PPP协议在μC/OS-II操作系统中的实现

    针对实时操作系统μC/OS-II 没有自己的网络协议栈,提出了基于ARM7TDMI 处理器的μC/OS-II 操作系统上轻型PPP 协议的设计与实现
    发表于 08-13 09:05 15次下载

    基于μC/OS-II的无线调度策略分析与实现

    介绍了基于嵌入式实时操作系统μC/OS-II 的无线调度平台调度机制,根据μC/OS-II的特点对调度任务进行了合理划分,并对多任务优先级进行了有效裁决,从而解决了无线调度策略的
    发表于 08-31 10:42 12次下载

    μC/OS-II在PC机上移植的设计与实现

    本文介绍了μC/OS-II移植到PC机上的过程,使μC/OS-II应用系统程序在PC机上脱离DOS或Windows环境运行。着重介绍了Bootloader引导程序和EXE程序启动代码的
    发表于 09-02 08:51 14次下载

    基于μC/OS-II的无线监控终端设计与实现

    本终端利用ARM 单片机控制GSM 模块,依托GSM 网络,采集远程设备运行数据,响应监控中心的一系列遥控命令。 文中介绍了该终端软硬件的设计与实现,给出了一种使用μC/OS-II
    发表于 01-25 08:26 10次下载

    μC/OS-II任务栈处理的改进设计

    已经有不少的文章介绍了有关μC/OS-II这个实时内核及其应用。在很多的处理器上,μC/OS-II都得到了应用。μC/
    发表于 04-18 22:12 1319次阅读

    μC/OS-II实时性能测试与分析

    μC/OS-II实时性能测试与分析 任务切换时间和中断响应时间是嵌入式实时操作系统实时性能的重要指标。本文对μC/OS-II的上述指标进行
    发表于 03-29 15:14 1741次阅读
    μ<b class='flag-5'>C</b>/<b class='flag-5'>OS-II</b>实时性能测试与分析

    μC/OS-II在EP7312上的移植

    μC/OS-II在EP7312上的移植首先介绍μC/OS-II操作系统的特点,重点分析μC/OS-II
    发表于 06-16 11:24 1326次阅读
    μ<b class='flag-5'>C</b>/<b class='flag-5'>OS-II</b>在EP7312上的移植

    缩短实时操作系统μC/OS-II中断关闭时间的方法

    该方面的实现,提高了μC/OS-II的性能,扩大了μC/OS-II的应用范围,使得单边及工程师能更好的利用μ
    发表于 05-06 11:43 1325次阅读
    缩短实时操作系统μ<b class='flag-5'>C</b>/<b class='flag-5'>OS-II</b>中断关闭时间的方法

    μC/OS-II中缩短中断关闭时间方法

    笔者将以μC/OS-II实时内核为例,通过对μC/OS-II的改进,向读者描述一种缩短实时操作系统中断关闭时间的方法。
    发表于 05-23 11:15 1500次阅读
    μ<b class='flag-5'>C</b>/<b class='flag-5'>OS-II</b>中缩短中断关闭时间方法