什么是OpenWrt
OpenWrt介绍:OpenWrt就是为嵌入式设备所研发的Linux发行版本。开发者使用简单的编译就可以将一套软件编译出不同芯片的版本,烧写在自己的路由器上就拥有了一台Linux服务器。OpenWrt还支持一种称为OPKG的增强型安装技术,OPKG是OpenWrt下的一款轻量级软件包管理工具,使用命令可以将已预编译好的软件安装到系统中。
OpenWrt是如何支持路由器CPU的:想要支持路由器CPU需要两方面支持。一是汇编层面让OpenWrt编译时支持所属路由器CPU的指令集,方便编译出软件,二是驱动程序,外围厂商也不容易写出驱动程序,所以大部分懂程序要么是芯片厂直接提供的,要么是厂商写的。
智能路由器硬件
MIPS架构
MIPS采用RISC精简指令集的简称,是芯片的一种设计模式相比于(CISC复杂指令集)具有更高的执行效率。
常见路由器配置
功能 | 配置 |
中央处理器架构 | MIPSEL(主流),ARM(少) |
处理器主频 | 300-800MHz |
内存类型 | SDRAM/DDR1(多)/DDR2(多)/DDR3 |
闪存类型 | Nor Flash/SPI Flash(多)/Nand Flash |
闪存容量 | 8-256MB |
网络交换机 | 芯片内置或外挂 |
WIFI | 芯片内置或外挂 |
操作系统 | Linux SDK、VxWorks、eCos、OpenWrt |
常见路由器芯片厂商
路由器芯片普遍采用SoC设计(RoC),现在主要的厂商包括:Atheros,Broadcom,Ralink
SoC:片载系统,表示在CPU内部集成了大量的其他芯片和功能,减少电路板外围芯片数量
RoC:片载路由器,表示一个CPU就可以满足路由器所需要的而最核心部分的硬件
QCA9531芯片
QCA9531是一款高度集成且功能丰富的IEEE 802.11n 2x2 2.4 GHz的WiFi芯片,采用的开发板是基于QCA9531芯片的。
模块QCA9531-ITM-AP16-M是一个完整的小尺寸802.11b/g/n Wi-Fi解决方案。
该模块针对低功耗、低成本、高度集成的AP和消费电子设备进行了优化集成了所有的Wi-Fi功能在一个封装友好的低成本PCB设计,只需要几个外部3.3V和天线连接。
该模块基于单芯片QCA9531,集成了带有内部PA和LNA的802.11n 2x2 MIMO MAC/BB/无线电。它支持802.11 n操作,最高可达150mbps (20MHZ)和300mbps (40MHZ),数据速率为802.11b/g。
该模块同时支持AP模式和客户端模式,并包含大量的服务应用软件,减少了客户的研究和设计工作。
硬件架构如下图所示:
功能包括:
1.MIPS R24k支持64KByte I-Cache和32Kbyte D-Cache,目标运行速度高达550Mh。
2.DD2 memory高达 1G
3.SPI NOR闪存高达128Mb。
4.4个lan口和1个WAN口。
5.支持高速UART的控制终端
6.支持USB 2.0主机/设备模式
7.GPIO/LED 支持
使用的开发板是
除了上述特点外,还有
其中带一个USB接口和miniPCIE接口(PCIE总线,非USB,不能插入EC20模块)
带TTL电平串口,方便链接控制台进行操作