0 卖盘信息
BOM询价
您现在的位置: 首页 > 技术方案 >无线互联 > 基于ATM9TDMI+Linux的SOHO 路由器设计方案

基于ATM9TDMI+Linux的SOHO 路由器设计方案

来源:
2024-11-05
类别:无线互联
eye 23
文章创建人 拍明芯城

基于ATM9TDMI+Linux的SOHO路由器设计方案

引言

随着信息技术的不断发展,SOHO(Small Office and Home Office)路由器在小型办公室和家庭网络中的应用越来越广泛。然而,当前SOHO路由器设计方案存在一些问题,如难以满足高速接入网用户的要求,系统稳定性较差等。为了解决这些问题,本文提出了一种基于ATM9TDMI+Linux的SOHO路由器设计方案,该方案不仅提高了系统的稳定性和安全性,还满足了高速接入网用户的需求。

image.png

1. 背景与现状分析

当前的SOHO路由器设计主要采用ARM7TDMI+μClinux架构。ARM7内核微处理器的工作频率大约在50MHz左右,而以太网控制芯片的工作频率一般为100MHz,处理器速度难以满足高速接入网用户的要求。此外,μClinux操作系统不具备内存保护机制,任何程序都有可能导致内核崩溃,系统稳定性较差。

为了解决这些问题,本文提出采用ARM920T内核微处理器和Linux操作系统。ARM920T内核微处理器的工作频率为200MHz,能够满足高速接入网用户的要求,并且具有先进的MMU(Memory Management Unit)体系结构,支持WinCE、EPOC32、Linux等多种操作系统。Linux操作系统具有内存保护机制和强大的网络控制功能,能够防止恶意程序对系统的破坏,并实现防火墙功能,有效地提高了系统的稳定性和安全性。

2. 系统硬件设计

2.1 主控芯片选择

本系统采用的主控芯片是S3C2410X,这是一款由SAMSUNG公司开发的低价、低功耗、高性能的微处理器,主要应用于PDA和Internet设备。S3C2410X的工作频率为200MHz,能够满足高速处理要求。

  • 详细型号:S3C2410X

  • 在设计中的作用

    • 核心处理器:S3C2410X作为系统的核心处理器,负责整个系统的控制和管理。

    • 系统总线:通过系统总线连接FLASH和SDRAM,构成存储系统。系统上电后,微处理器从FLASH中读取初始化程序,SDRAM为程序运行和数据处理提供临时存储空间。

    • 接口连接:S3C2410X的外部中断信号EINT14与DM9000芯片的引脚INT相连,用于处理中断请求。S3C2410X的片选信号nGCS4和地址线MA2分别连接DM9000的AEN引脚和CMD引脚,用于片选和数据传输。

2.2 以太网控制芯片

以太网控制芯片选用的是DM9000,这是一款高性价比的以太网控制芯片,具有通用处理接口以太网MAC控制器,能够与10Base-T的UTP3/4/5和100Base-T的UTP5接口连接,满足高速接入网的要求。同时,DM9000还支持通过MII接口与其他MII接口的收发器互联。

  • 详细型号:DM9000

  • 在设计中的作用

    • 数据传输:DM9000通过MII接口与交换控制芯片RTL8305S的PORT4口相连,实现数据传输。

    • 接口连接:DM9000的引脚INT与S3C2410X的外部中断信号EINT14相连,用于处理中断请求。DM9000的AEN引脚和CMD引脚分别与S3C2410X的片选信号nGCS4和地址线MA2相连,用于片选。DM9000的读引脚IOR#和写引脚IOW#分别与S3C2410X的nOE引脚和nWE引脚相连,实现数据传输。

2.3 交换控制芯片

交换控制芯片选用的是RTL8305S,这是台湾瑞昱公司最新设计的5端口10/100Mbps高速以太网络交换控制芯片。RTL8305S的五个端口分成三个组(X组、Y组、第五端口),可通过相关引脚灵活配置。RTL8305S集成了5个MAC(媒体存取控制器)、5个实体层收发器、1M SRAM和1K MAC地址记忆区,有效地减少了查表时间和转储时间,适用于高速局域网交换器。

  • 详细型号:RTL8305S

  • 在设计中的作用

    • 数据交换:RTL8305S通过四个端口与局域网集线器、交换机或电脑相连,进行数据交换。

    • 接口连接:RTL8305S的第五端口设定为MII接口,与DM9000的MII接口相连,实现数据交换。

2.4 存储器

系统扩展了1片64MB的NAND Flash芯片和2片SDRAM芯片。NAND Flash芯片中存储Bootloader引导程序和Linux内核,系统上电复位后从中执行初始化代码。SDRAM为程序运行和数据处理提供临时存储空间。

  • 详细型号

    • NAND Flash:64MB

    • SDRAM:2片

  • 在设计中的作用

    • 存储程序:NAND Flash芯片存储Bootloader引导程序和Linux内核,系统上电复位后从中执行初始化代码。

    • 数据存储:SDRAM为程序运行和数据处理提供临时存储空间,提高系统性能。

2.5 其他硬件

系统还配备了必要的调试接口、电源电路和时钟发生电路,以确保系统的正常运行和调试。

3. 系统软件设计

3.1 Bootloader移植

Bootloader是与系统硬件高度相关的初始化代码,担负着初始化硬件和引导操作系统的双重责任。本系统采用在嵌入式系统开发中应用最广的引导代码U-BOOT。

  • 移植步骤

    1. 针对目标平台对各配置文件做相应的修改。

    2. 建立相应的配置文件。

    3. 修改U-BOOT的makefile文件,在其中加入对目标系统的编译支持,并运行以下命令:$make clean$makesmdk2410-config$make all生成目标文件。

    4. 通过JTAG接口将u-boot.bin文件烧写到Flash的零地址,复位后就可以引导系统。

3.2 Linux操作系统移植

Linux操作系统移植主要包括内核配置、编译和根文件系统构建。

  • 内核配置

    1. 修改makefile文件。

    2. 使用make menuconfig命令来配置内核。

  • 内核编译
    使用
    make depmake zImage命令对内核进行编译,得到内核压缩镜像文件zImage。

  • 根文件系统构建
    Bootloader引导程序通过以太网接口把Linux内核移到目标系统的Flash上,然后构建根文件系统。

3.3 NAT技术实现

SOHO路由器采用NAT(Network Address Translation)转换技术,将局域网内部私用IP地址转换成一个合法的公网IP地址,使私有网络中多台主机共享一个合法的IP地址访问因特网。

  • 实现方式
    利用Linux内核支持IP Masquerade(IP伪装)技术实现NAT转换。客户机将实现IP Masquerade的Linux机器设置为缺省网关,当IP Masquerade的Linux机器收到客户机的数据包时,对其进行改写,将源地址替换为自己的IP地址,将源端口号换成一个新的端口号,并对该过程进行记录。当接收到响应数据包时,如果其端口号正是先前所指定的端口号,则再对该数据包进行改写,将其目的IP地址及目的端口号替换为原来记录的客户机IP地址和端口号,然后再发送给客户机。

3.4 数据包处理

Netfilter是Linux内核实现数据过滤、数据包处理和NAT功能的框架。它为每种网络协议(IPv4、IPv6等)定义一套钩子函数(IPv4有5个钩子函数),内核中任何模块可以对协议中的钩子函数进行注册与挂接。这些钩子函数在数据包流经协议栈时被调用,注册后的模块可以检查、修改、丢弃数据包及指示Netfilter将数据包传入用户空间队列,进行异步处理。

  • 数据包处理流程

    1. 数据包从左边进入系统,进行IP校验。

    2. 数据包经过第一个钩子函数NF_IP_PRE_ROUTING进行处理。

    3. 进入路由代码,决定该数据包是需要转发还是发给本机的。

    4. 若该数据包是发给本机的,则该数据经过钩子函数NF_IP_LOCAL_IN处理后传递给上层协议。

    5. 若该数据包应该被转发,则它被NF_IP_FORWARD处理。

    6. 经过转发的数据包经过最后一个钩子函数NF_IP_POST_ROUTING处理后,再传输到网络上。

    7. 本地产生的数据经过钩子函数NF_IP_LOCAL_OUT处理后,进行路由选择处理,然后经过NF_IP_POST_ROUTING处理以后发送到网络上。

4. 系统性能与优化

本系统采用ARM920T内核微处理器和Linux操作系统,具有高性能和高稳定性。同时,通过优化存储系统、提高数据传输速率、优化NAT技术和数据包处理流程等措施,进一步提高了系统的性能和稳定性。

5. 结论

本文提出了一种基于ATM9TDMI+Linux的SOHO路由器设计方案,采用ARM920T内核微处理器和Linux操作系统,有效地提高了系统的稳定性和安全性,满足了高速接入网用户的要求。通过优化硬件和软件设计,系统性能得到了进一步提升。未来,将继续优化系统性能,提高系统的可靠性和安全性,以满足更多用户的需求。

责任编辑:David

【免责声明】

1、本文内容、数据、图表等来源于网络引用或其他公开资料,版权归属原作者、原发表出处。若版权所有方对本文的引用持有异议,请联系拍明芯城(marketing@iczoom.com),本方将及时处理。

2、本文的引用仅供读者交流学习使用,不涉及商业目的。

3、本文内容仅代表作者观点,拍明芯城不对内容的准确性、可靠性或完整性提供明示或暗示的保证。读者阅读本文后做出的决定或行为,是基于自主意愿和独立判断做出的,请读者明确相关结果。

4、如需转载本方拥有版权的文章,请联系拍明芯城(marketing@iczoom.com)注明“转载原因”。未经允许私自转载拍明芯城将保留追究其法律责任的权利。

拍明芯城拥有对此声明的最终解释权。

相关资讯

拍明芯城微信图标

各大手机应用商城搜索“拍明芯城”

下载客户端,随时随地买卖元器件!

拍明芯城公众号
拍明芯城抖音
拍明芯城b站
拍明芯城头条
拍明芯城微博
拍明芯城视频号
拍明
广告
恒捷广告
广告
深亚广告
广告
原厂直供
广告