【第22期】观点:IT 行业加班,到底有没有价值?

第八期 RT3052F芯片分析 《路由器就是开发板》

原创 2016年08月30日 23:20:41
       这一期来了解一下Ralink的RT3052芯片,也许在做产品开发的人会不屑于这么陈旧的芯片,但是当你了解了MT7688或者MT7621之后就会发现,这些芯片的核心思想和开发方式都是不变的,差别就是各项参数的提高,细微的功能增加和删减。Ralink在被MTK收购前风格也和MTK很相近,都是基于Turnkey的原则设计芯片。SOC,Demoboard,SDK,各种一站式服务。所以可以看到,那些半路出道作路由器的厂家,比如360,小米,联想,都是清一色的MTK方案,Atheros,Broadcom,Realtek根本不考虑,原因就是MTK的芯片开发周期短。

        基于芯片级别的了解知识时,各种论坛博客和搜索就捉襟见肘了,最好的方法就是拿着芯片的Datasheet细细的读,在SDK的DataSheet目录下 RT3050_5x_V2_Bookmarked.pdf 就是RT3052的Datasheet,我在官方的版本上修改了目录结构,方便大家阅读。



     上图贴出了RT3052的Functional Block Diagram ,在理解这张图之前先来了解一些概念,其实路由器的架构都是相同的:RF(Radio Frequecy)、BBP(Base Band Processor)、AP(Application Processor)三部分,再加上外设(Peripheral),就这四个部分就可以把路由器说清楚。
        RF射频部分的功能主要是射频接收和发射,这部分性能好坏的区别主要是:路由器信号的好坏、会不会掉线、辐射这些。一个好的射频模块是可以根据信号的强弱调制辐射水平的,信号好的时候就降低发射功率来降低辐射,信号差的时候就提高发射功率来保证通信质量。国产路由器喜欢大天线,一个路由器恨不得8根天线,其实80%的比重在于RF芯片和电路设计的好坏。
        BBP基带模块就重要了,大家通常说的OFDM,CCK,DSSS,MIMO-OFDM这些的主要区别就在这里,大家常说调制解调方式都是指的BB模块。因为基带就是对RF射频模块接收到了信号进行处理,所以基带就和通信协议关系最大。通信协议里面就包括了调制方式、编码方式和其他协议。对于路由芯片厂商来说,从802.11g升级到802.11n,只需要更换BB基带模块就可以了。应该说BBP模块还是很重要的,直接关系到信号接收和发送的效率。
        AP应用程序处理器模块其实就是CPU模块,最老的路由器是比较忽视AP模块的,因为最老的路由器除了用来上网几乎没有什么其他功能。而现在刚好相反了,现在的路由器已经逐渐成为一台小型的家用服务器。AP模块的性能完全可以用描述CPU的方法来描述,路由器由于功耗的原因一般采用的都是MIPS内核的处理器(ARM也开始占领这方面市场了)。衡量AP模块的主要指标包括:架构、指令集、主频、CPU和内存交换信息的总线带宽等。现在高端路由器的普通路由器的主要区别在这个模块,毕竟1GHz的cpu和400MHz的cpu在性能上还是有很大区别的。其实这个模块最好理解,就是一台电脑的性能。
        外设就比较简单了,包括摄像头、GPS定位模块、蓝牙模块、重力感应模块、语音模块等等。路由器芯片提供IIC,IIS,SPI,URAT,USB,PCM,GPIO等标准的接口,各种信号的路由器根据这些接口添加各种外设,只有你想不到的,没有集成不到一块的,尤其现在IOT的概念兴起,将来的路由器会和各种各样你想不到的外设联系起来。
        路由器的控制就是通过机器指令对各种外设的控制和信号的收发,所有的控制单元在CPU这都被抽象成一段内存地址(或者叫寄存器地址),所有的操作几乎都是一个模式,就是对寄存器的操作(读或者写)。
        OK,返回说RT3052的Datasheet,整篇分为四个章节:
            1. Pin Description
            2 Maximum Ratings and Operating Conditions
            3. Function Description
            4. Package Physical Dimension
        对于软件开发主要看的就是第三章。
            3.1 Overview
            3.2 Memory Map Summary
            3.3 MIPS 24KEc Processor
            3.4 System Control
            3.5 Timer
            3.6 Interrupt Controller
            3.7 UART
            3.8 UART Lite
            3.9 Programmable I/O
            3.10 I2C Controller
            3.11 SPI Controller
            3.12 Generic DMA Controller
            3.13 PCM Controller
            3.14 I2S Controller
            3.15 Memory Controller
            3.16 NAND Flash Controller
            3.17 Frame Engine
            3.18 Ethernet Switch
            3.19 USB OTG Controller & PHY
            3.20 802.11n 2T2R MAC/BBP
        第三章的每一节的结构都是相同的,一般都分三个部分,第一节讲功能模块的特性,第二节讲功能模块的原理,第三节就是寄存器描述。
        限于篇幅原因,我只拿最简单的GPIO模块来进行分析,其他的可以触类旁通。RT3052最多可支持52个GPIO口,但大多数GPIO与SDRAM, PCI, MDIO, JTAG, UART-Lite, UART, SPI, PCM ,
I2C是复用的口,也就是说如果你启用了I2C,那对应引脚的GPIO功能就没有了。决定这个引脚是否用于GPIO在 3.4节 system control 中有说明。GPIO在这个芯片里被分成了三组:0-23;24-39;40-51;每组GPIO对应10个寄存器:
        0x00 _INTinterrupt status
            0x04 _EDGEedge status
            0x08 _RENArising edge interrupt enable
            0x0C _FENAfalling edge interrupt enable
            0x20 _DATAdata
            0x24 _DIRdirection
            0x28 _POLpin polarity
            0x2C _SETset PIO data bit
            0x30 _RESETclear PIO data bit
            0x34 _TOGtoggle PIO data bit
        举个例子,操作GPIO01,如果只想将GPIO置高或拉低,前4个寄存器都是中断相关这里用不到,需要将GPIO设置为输出口,将0x24 _DIR寄存器相应的位置1,然后通过对 0x2c,0x30,0x34相应的位置1来对GPIO进行置1,置0和反转操作。
        芯片的DataSheet就是这样,像本字典,不用都看,但要会查。当然想要游刃有余的看Datasheet还需要你对各种标准接口特性有一个熟练的掌握,大体说到这里,关键还是多实践。

---------------------------------------------------------------------------

SDK下载地址:   https://github.com/aggresss/RFDemo

版权声明:本文为aggresss原创文章,未经博主允许不得转载。 作者:aggresss@gmail.com 举报

相关文章推荐

RT5350原厂SDK编译(一)

RT5350原厂SDK编译(一) RT5350是台湾雷凌公司研发,专为路由器使用的MIPS架构嵌入式芯片,其路由器方案因性能出色,运行稳定、配置简便而广为称赞,被许多路由器厂商采用。最近找了RT535...

主流Wifi芯片简要介绍

802.11n其实可以达到600Mbps 其实,802.11n是可以达到最高600Mbps标准的,这得益于MIMO(多进多出)以及OFDM(正交频分复用)技术两项技术的应用,但是由于还存在路由器...

程序员升职加薪指南!还缺一个“证”!

CSDN出品,立即查看!

主流WiFi芯片与性能简介

随着“互联网+”时代的到来,网络越来越成为我们生活中不可缺少的一部分。作为家庭网络的核心——路由器特别是无线路由器是我们每天都离不开的。市场上的路由器品牌众多、方案不同、性能各异,一款路由器的好坏在很...

这半年来工作的一个总结

时光如梭,转眼间已经出来工作半年多了,在这半年时间里,我的工作和生活都发生了巨大的变化,我从一个懵懂的大学生变成了一个进入职场的社会人,生活上的变化就不会不说了,这不是我写这篇博客的用意,这篇博客主要...

TI 海思 安霸 智利普 等顶级摄像机芯片简要介绍

很多年以前业界就谈到安防视频监控领域的三个趋势:数字化、网络化、智能化。目前国内市场上安防视频监控系统的主流产品已经从十多年前的纯模拟视频监控系统,逐步转变成了纯数字的百万高清视频监控系统,即从视频采...

第二期 开发板选型 《路由器就是开发板》

首先说明一下我为什么要用路由器作开发板。 第一,路由器是一件成熟的商品,它经历了厂商和消费者的考验,其设计肯定是相对成熟的,我们用它作开发板是在这个路由器经历了完整的产业链流程最终到达消费者手里之后...

目录 《路由器就是开发板》

第一篇  准备工作 10     |--1.前言     |--2.路由器选型     |--3.约定     |--4.jtag接口和TTL接线     |--5.Jlink调试路由器      |...

第一期 前言 《路由器就是开发板》

大家好,路由器就是开发板这个提议最早是在2010年的时候在逛一个国外的论坛时看到有人提到的,那时我还处在一个从论坛上下载一个固件刷成功后兴奋不已的阶段。上大学时WIFI刚刚兴起,还是802.11b的年...

第二十五期 总结《路由器就是开发板》

在读《人人都是产品经理》这本书时,我最大的收获就是:不光要低头拉车,还要抬头看路。研究技术为了一个问题不吃不睡是经常的,但为了一个超出个人挑战能力的问题浪费时间而影响到团队的进度是万万不可取的。看到有...

第三期 约定 《路由器就是开发板》

在开始前一切之前,声明一下以后章节的约定,所有使用到的工具和开发环境都会在这里有一个说明。文章中所有提到的文件或者代码如果不做说明都可以在下面这个链接里找到:https://github.com/ag...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)