CN110673894B - 一种家庭网关bob模块ed自动加载方法 - Google Patents
一种家庭网关bob模块ed自动加载方法 Download PDFInfo
- Publication number
- CN110673894B CN110673894B CN201910920247.8A CN201910920247A CN110673894B CN 110673894 B CN110673894 B CN 110673894B CN 201910920247 A CN201910920247 A CN 201910920247A CN 110673894 B CN110673894 B CN 110673894B
- Authority
- CN
- China
- Prior art keywords
- eeprom
- bob
- writing
- chip
- reading
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Abstract
本发明公开了一种家庭网关BOB模块ED自动加载方法,包括如下步骤:步骤一:EEPROM通过挂在BUS上接入ONU系统;步骤二:ONU系统的驱动程序通过I2C接口对EEPROM实现读取和写入;步骤三:自动加载应用程序再通过驱动程序提供的IO接口对EEPROM写入、读取和保存;步骤四:BOB芯片通过读取EEPROM完成对寄存器的配置。根据本发明,可以省掉写EEPROM生产工序并节省生产时间。
Description
技术领域
本发明涉及通信设备领域,具体是一种家庭网关BOB模块ED自动加载方法。
背景技术
家庭网关在生产过程中,有着很多不同的工序,完成每道工序都需要一定的时间。然而在生产过程中总会想办法提高生产效率并提高产品质量,这样才能给产品带来更多的竞争优势。读写BOB EEPROM DATA作为工厂生产的一环,以前都是在线上将BOB正常工作所需要的参数写入EEPROM,然后再根据需要进行调试,它的缺点是耗费一定时间并且还要占用一道工序。
发明内容
本发明的目的在于克服现有技术的不足,提供一种家庭网关BOB模块ED自动加载方法,包括如下步骤:
步骤一:EEPROM通过挂在BUS上接入ONU系统;
步骤二:ONU系统的驱动程序通过I2C接口对EEPROM实现读取和写入;
步骤三:自动加载应用程序再通过驱动程序提供的IO接口对EEPROM写入、读取和保存;
步骤四:BOB芯片通过读取EEPROM完成对寄存器的配置。
进一步的,所述步骤一中的EEPROM通过挂在BUS上接入ONU系统,接入系统后先判断EEPROM是否已经写过配置,通过判断EEPROM标志位上是否全是0xFF,若是,则未写过配置;否则,不对该EEPROM进行配置写入。
进一步的,所述步骤二中驱动程序用于分别连接自动加载应用程序和EEPROM,用于对EEPROM同时进行多字节的读或写。
进一步的,在两次读或写之间设有延时,所述的延时用于驱动程序完成对EEPROM的多字节读或写。
进一步的,所述的多字节的写入长度不能超过32字节。
进一步的,所述步骤三中的自动加载应用程序再通过驱动程序提供的IO接口对EEPROM写入、读取和保存,具体的是通过宏控制来选择BOB芯片的型号,加载对应BOB芯片型号的配置信息到EEPROM。
进一步的,自动加载应用程序在对EEPROM进行BOB芯片的配置信息写入时,需先获取对EEPROM的读写权限,包括如下过程,首先判断EEPROM是否是第一次写入,若是,则其默认读写权限密码为默认密码,通过默认密码获取读写权限,并将BOB芯片的配置信息写入,同时更改EEPROM的读写权限密码为写入的BOB芯片的配置信息的密码;否则,自动加载应用程序无法获取对EEPROM的读写权限。
本发明的有益效果是:将写EEPROM的工序放在ONU初次启动完成后自动加载,因为ONU系统启动完成后一段时间都是空闲时间,ONU利用这段时间加载配置,省掉写EEPROM生产工序并节省生产时间。
附图说明
图1为一种家庭网关BOB模块ED自动加载方法的流程图;
图2为一种家庭网关BOB模块ED自动加载的加载示意图。
具体实施方式
下面结合附图进一步详细描述本发明的技术方案,但本发明的保护范围不局限于以下所述。
如图1所示,为了省掉写EEPROM生产工序节省生产时间,将写EEPROM的工序放在ONU初次启动完成后自动加载,因为ONU系统启动完成后一段时间都是空闲时间,ONU利用这段时间加载配置,然后在进入产线之前还可以根据指示灯的提示来预先判断ONU的PON部分是否存在问题。
EEPROM通过挂在BUS上接入系统,ONU的驱动程序会通过I2C接口对EEPROM实现读取和写入,自动加载应用程序再通过驱动程序提供的IO接口对EEPROM写入、读取和保存,最后BOB芯片通过读取EEPROM完成对寄存器的配置。
驱动程序是实现自动加载的关键,它是自动加载应用程序和EEPROM的中间桥梁,驱动需实现对EEPROM同时多字节的读写,在两次读或写之间需有一定延时保证每次读写都能成功。但多字节写入也存在失败问题,当写入的长度大于32字节时可能会出现只能写进一部分数据,所以在实际使用中时要求写入的长度不能超过32字节。
驱动程序对挂入BUS上的EEPROM可以通用,应用层程序只需要传入设备的基地址及偏移地址就可以实现对不同EEPROM的访问。
自动加载程序也有一个缺点,不同BOB驱动芯片它可能需要的配置不一样,但EEPROM里原始信息为空,所以无法判断所使用的BOB驱动芯片型号,而在现实应用中驱动芯片会有多种方案。在这种情况下,软件不能通用,在编译软件时候可以通过一个宏控制选择相应的芯片型号,在软件自动命名上并将其型号加以区分。
在判断是否已经对EEPROM写过配置时,方法是在EEPROM相应的位置写入标志位,在系统启动的时候读取它的值是否一致来判断。但这种判断方法会存在问题,当EEPROM中的数据因为某种原因可能导致标志位发生改变,这样在系统启动后会不断的向EEPROM写入默认配置,这种情况会将已经调试通过的BOB配置全部打乱。为了避免这种问题发生,由于EEPROM的初始值都是0xFF,所以通过判断标志位上是否全是0xFF来判断,把这种情况发生的机率降到最低。
在应用层可以向驱动程序传入两次对EEPROM操作之间的时延,一般来说如果两次操作间隔太短有可能会出现操作失败,加以适当的时延可以有效避免问题发生。但时延也不能太长,当写入的参数比较多时这会很费时,所以选择适当的时延很重要,可以选择50ms~100ms。
为了保护EEPROM数据不受外界影响,需先获取读写权限。不同的BOB方案的所需要的配置存在一定的差异,如果所有的BOB方案使用同一套密码的话在实际中可能会出现误操作,就是将其它BOB方案的配置误写入。采用不同的密码的话,由于密码不正确就没有读写权限。
具体的,本发明包括如下、EEPROM通过挂在BUS上接入ONU系统;ONU系统的驱动程序通过I2C接口对EEPROM实现读取和写入;自动加载应用程序再通过驱动程序提供的IO接口对EEPROM写入、读取和保存;BOB芯片通过读取EEPROM完成对寄存器的配置。
EEPROM通过挂在BUS上接入ONU系统,接入系统后先判断EEPROM是否已经写过配置,通过判断EEPROM标志位上是否全是0xFF,若是,则未写过配置;否则,不对该EEPROM进行配置写入。
驱动程序用于分别连接自动加载应用程序和EEPROM,用于对EEPROM同时进行多字节的读或写。在两次读或写之间设有延时,所述的延时用于驱动程序完成对EEPROM的多字节读或写。多字节的写入长度不能超过32字节。
自动加载应用程序再通过驱动程序提供的IO接口对EEPROM写入、读取和保存,具体的是通过宏控制来选择BOB芯片的型号,加载对应BOB芯片型号的配置信息到EEPROM。自动加载应用程序在对EEPROM进行BOB芯片的配置信息写入时,需先获取对EEPROM的读写权限,包括如下过程,EEPROM如果是第一次写入时,其默认密码都是0xFF 0xFF 0xFF 0xFF,通过该密码获取写入权限,并将BOB芯片的所有配置信息写入,其中包括对BOB设置新的密码,如果没有获取写入权限,自动加载应用程序将会返回失败。
实际应用中用得最多的BOB驱动芯片型号是semtech的25L95,25L95在自动加载程序中的特点是读写简单,所需代码较少。在程序编译的时候会把可能使用的芯片型号罗列出来,比如:25L95_EPON、25L95_GPON、UX3320_EPON、UX3320_GPON,选定一个型号后会根据选定的型号定义一个宏比如DMP_25L95_EPON或者DMP_25L95_GPON或者DMP_UX3320_EPON或者DMP_UX3320_GPON,编译的时候只会编译其中一个已定义宏控制的代码,这样实现根据编译选择芯片型号编译适应不同型号芯片的软件。
软件启动后,会启动一个定时器,根据需要决定自动加载在什么时间开始。比如设定在系统启动完成后将定时器设置成60S,它将在启动完成后60S去加载所有配置。在加载之前通过去读取25L95的已写标志(该标志存是放在table0的0x14到0x17的四个字符,比如SCTY)来判断EEPROM是否已写过,由于EEPROM在初始状态读出来的0x14~0x17都是0xFF,所以我们通过判断读出来的标志是否全是0xFF来判断是否已经写过,如果全是0xFF则说明EEPROM未写过,则开始将配置写入EEPROM。通过比较是否全是0xFF而不是其它方式比较的原因是BOB可能会受到外界影响,那么标志位读出来可能会有不是全0xFF的情况,不同BOB方案采用不同密码也是出于这个原因,避免在实际操作中误操作,使已经调试好的设备再次自动加载。
不管是25L95或者是UX3320,都需要在每一个读写操作之间做适当延时,比如25L95在写入的时候是通过一个for循环每8字节不间断的写入,如果不加延时两次写入间隔会非常的短,每一次写入都需要消耗一定时间,如果不加以延时,第二次写入可能失败,所以在保证加载时间在合适范围的情况下加以适当延时。
在写之前25L95有写保护需要将写保护关闭,待配置写入完成后关掉写保护以防误操作。
以上所述仅是本发明的优选实施方式,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
Claims (3)
1.一种家庭网关BOB模块ED自动加载方法,其特征在于,包括如下步骤:
步骤一:EEPROM通过挂在BUS上接入ONU系统;接入系统后先判断EEPROM是否已经写过配置,通过判断EEPROM标志位上是否是0xFF,若是,则未写过配置;否则,不对该EEPROM进行配置写入;
步骤二:ONU系统的驱动程序通过I2C接口对EEPROM实现读取和写入;驱动程序用于分别连接自动加载应用程序和EEPROM,用于对EEPROM同时进行多字节的读或写;
步骤三:自动加载应用程序再通过驱动程序提供的IO接口对EEPROM写入、读取和保存;通过宏控制来选择BOB芯片的型号,加载对应BOB芯片型号的配置信息到EEPROM;自动加载应用程序在对EEPROM进行BOB芯片的配置信息写入时,需先获取对EEPROM的读写权限,包括如下过程,首先判断EEPROM是否是第一次写入,若是,则其默认读写权限密码为默认密码,通过默认密码获取读写权限,并将BOB芯片的配置信息写入,同时更改EEPROM的读写权限密码为写入的BOB芯片的配置信息的密码;否则,自动加载应用程序无法获取对EEPROM的读写权限;
步骤四:BOB芯片通过读取EEPROM完成对寄存器的配置。
2.根据权利要求1所述的一种家庭网关BOB模块ED自动加载方法,其特征在于,在两次读或写之间设有延时,所述的延时用于驱动程序完成对EEPROM的多字节读或写。
3.根据权利要求1所述的一种家庭网关BOB模块ED自动加载方法,其特征在于,所述的多字节的写入长度不超过32字节。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910920247.8A CN110673894B (zh) | 2019-09-26 | 2019-09-26 | 一种家庭网关bob模块ed自动加载方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910920247.8A CN110673894B (zh) | 2019-09-26 | 2019-09-26 | 一种家庭网关bob模块ed自动加载方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110673894A CN110673894A (zh) | 2020-01-10 |
CN110673894B true CN110673894B (zh) | 2021-03-26 |
Family
ID=69079476
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910920247.8A Active CN110673894B (zh) | 2019-09-26 | 2019-09-26 | 一种家庭网关bob模块ed自动加载方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110673894B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111399945B (zh) * | 2020-03-20 | 2023-08-18 | 太仓市同维电子有限公司 | 一种基于10g pon bob设备的校准及配置管理方法 |
CN116801143B (zh) * | 2023-08-23 | 2023-12-01 | 宜宾市华迅光通信有限公司 | 一种fttr主网关下行光口使用bob的方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103108262A (zh) * | 2013-03-07 | 2013-05-15 | 烽火通信科技股份有限公司 | Gpon系统中光网络单元配置文件升级的方法 |
US8938166B2 (en) * | 2012-12-19 | 2015-01-20 | Alcatel Lucent | Smart small form-factor pluggable transceiver for data networks |
CN204242180U (zh) * | 2014-07-22 | 2015-04-01 | 杭州晟元芯片技术有限公司 | 一种基于安全触控屏控制芯片的安全密码输入系统 |
US10021000B2 (en) * | 2015-06-05 | 2018-07-10 | Arris Enterprises Llc | Provisioning in support of an embedded cable modem MAC address |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5773387B2 (ja) * | 2011-10-06 | 2015-09-02 | 沖電気工業株式会社 | 伝送制御装置、伝送制御プログラム及び終端装置 |
CN102833794A (zh) * | 2012-08-02 | 2012-12-19 | 广州市花都区中山大学国光电子与通信研究院 | 利用智能终端配置瘦客户机设备无线网络设置的方法 |
CN107306151A (zh) * | 2017-02-14 | 2017-10-31 | 深圳市双翼科技股份有限公司 | 一种bob设备的校准方法及其装置 |
CN109698981A (zh) * | 2017-10-23 | 2019-04-30 | 深圳市中兴微电子技术有限公司 | 无源光网络的配置方法、设备及存储介质 |
-
2019
- 2019-09-26 CN CN201910920247.8A patent/CN110673894B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8938166B2 (en) * | 2012-12-19 | 2015-01-20 | Alcatel Lucent | Smart small form-factor pluggable transceiver for data networks |
CN103108262A (zh) * | 2013-03-07 | 2013-05-15 | 烽火通信科技股份有限公司 | Gpon系统中光网络单元配置文件升级的方法 |
CN204242180U (zh) * | 2014-07-22 | 2015-04-01 | 杭州晟元芯片技术有限公司 | 一种基于安全触控屏控制芯片的安全密码输入系统 |
US10021000B2 (en) * | 2015-06-05 | 2018-07-10 | Arris Enterprises Llc | Provisioning in support of an embedded cable modem MAC address |
Also Published As
Publication number | Publication date |
---|---|
CN110673894A (zh) | 2020-01-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101699402B (zh) | 一种多模式启动的嵌入式系统 | |
CN111737173B (zh) | I2c总线通信控制方法、装置、系统及可读存储介质 | |
CN110673894B (zh) | 一种家庭网关bob模块ed自动加载方法 | |
CN104658612A (zh) | 存取快闪存储器中储存单元的方法以及使用该方法的装置 | |
CN110765032A (zh) | 基于系统管理总线接口对i2c存储器进行读写的方法 | |
US5819108A (en) | Programming of software into programmable memory within a peripheral device | |
CN102169463A (zh) | 一种基于iic总线的制造信息的获取方法和设备 | |
US10387361B2 (en) | Serial device with configuration mode for changing device behavior | |
CN104184454A (zh) | 适用多种类型存储的sfp芯片电路连接及其检测方法 | |
US7788454B2 (en) | Controller including electrically rewritable nonvolatile memory | |
CN101667133A (zh) | 固件更新方法和使用该方法更新固件的芯片 | |
JP3681323B2 (ja) | メモリカード | |
US7043597B2 (en) | System and method for updating firmware in a non-volatile memory without using a processor | |
JPH0320778B2 (zh) | ||
US20050099833A1 (en) | Memory device accessible with different communication protocols | |
CN107168650B (zh) | 一种对bios的存储器中的数据的处理方法及装置 | |
CN110209433B (zh) | 一种识别不同型号集中器的方法 | |
CN110990260B (zh) | 一种Extended APIC选项功能的自动化验证方法及系统 | |
CN112331252A (zh) | Nand闪存自动坏块标记方法、装置、存储介质和终端 | |
CN113326215B (zh) | 一种spi nor及nand闪存传输模式识别方法 | |
EP3557422A1 (en) | Method for accessing code sram, and electronic device | |
KR100316584B1 (ko) | 시스템에서 부팅 및 수행 프로그램을 공유하는 플래시메모리 및 그 메모리 갱신 방법 | |
CN113641595A (zh) | 独立块保护模式的spi flash在brom阶段的类型识别方法及系统 | |
CN113467842B (zh) | 适用于工业级应用场景的嵌入式设备的启动方法、嵌入式设备和计算机可读存储介质 | |
CN117573155B (zh) | 产品信息处理方法及芯片 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |