CN116049047B - 一种eeprom访问方法 - Google Patents

一种eeprom访问方法 Download PDF

Info

Publication number
CN116049047B
CN116049047B CN202211719778.9A CN202211719778A CN116049047B CN 116049047 B CN116049047 B CN 116049047B CN 202211719778 A CN202211719778 A CN 202211719778A CN 116049047 B CN116049047 B CN 116049047B
Authority
CN
China
Prior art keywords
eeprom
bus
address space
upper computer
address
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
Application number
CN202211719778.9A
Other languages
English (en)
Other versions
CN116049047A (zh
Inventor
邓文彬
秦思林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chengdu Cetc Xingtuo Technology Co ltd
Original Assignee
Chengdu Cetc Xingtuo Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Chengdu Cetc Xingtuo Technology Co ltd filed Critical Chengdu Cetc Xingtuo Technology Co ltd
Priority to CN202211719778.9A priority Critical patent/CN116049047B/zh
Publication of CN116049047A publication Critical patent/CN116049047A/zh
Application granted granted Critical
Publication of CN116049047B publication Critical patent/CN116049047B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1684Details of memory controller using multiple buses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)

Abstract

本发明涉及数据传输技术领域,公开了一种EEPROM访问方法,采用一种EEPROM访问结构,该EEPROM访问结构包括包括依次通信连接的上位机、AHB总线、AHB2APB Bridge、I2C、EEPROM,所述I2C包括I2C Decoder,所述I2C Decoder用以将上位机访问I2C的地址空间和访问EEPROM的地址空间分开。本发明解决了现有技术存在的访问过程繁琐且低效、对上位机的软件控制及其不友好等问题。

Description

一种EEPROM访问方法
技术领域
本发明涉及数据传输技术领域,具体是一种EEPROM访问方法。
背景技术
现如今,绝大部分的SOC系统的外设I2C接口都是基于AMBA总线APB接口设计的,这样方便CPU的访问,如图1所示,这是一个比较简单的SOC系统框架,从图中可以看到,CPU通过AHB总线去访问EEPROM时,会经过AHB2APB Bridge转成APB接口的I2C去访问EEPROM,其实,本质上,CPU去访问EEPROM时,CPU访问的地址是外设I2C的地址,通过向I2C的寄存器进行读写访问,来控制I2C的传输,这样就可以间接地访问EEPROM的存储地址,而又因为I2C每一次只传输1字节,所以CPU要通过APB总线多次访问I2C的寄存器地址才能完成对EEPROM的一笔访问,访问过程繁琐且低效,对上位机的软件控制及其不友好。
发明内容
为克服现有技术的不足,本发明提供了一种EEPROM访问方法,解决现有技术存在的访问过程繁琐且低效、对上位机的软件控制及其不友好等问题。
本发明解决上述问题所采用的技术方案是:
一种EEPROM访问结构,包括依次通信连接的上位机、AHB总线、AHB2APB Bridge、I2C、EEPROM,所述I2C包括I2C Decoder,所述I2C Decoder用以将上位机访问I2C的地址空间和访问EEPROM的地址空间分开。
作为一种优选的技术方案,AHB2APB Bridge与I2C通过APB总线通信连接。
作为一种优选的技术方案,上位机为SMBUS或CPU。
一种EEPROM访问方法,采用所述的一种EEPROM访问结构。
作为一种优选的技术方案,当上位机发起访问时,根据APB总线的paddr[19:16]来识别上位机的访问是I2C内部的地址空间,还是EEPROM的地址空间。
作为一种优选的技术方案,若paddr[19:16]<5,上位机访问I2C;若5<=paddr[19:16]<9,上位机访问EEPROM。
作为一种优选的技术方案,如果访问的是I2C的地址空间,则直接把APB总线接到I2C Master的APB接口上。
作为一种优选的技术方案,如果访问的是EEPROM的地址空间,则执行以下操作:
S1,先获取真实访问的EEPROM的地址空间;
S2,在APB总线访问EEPROM期间,把总线pready拉低,在此期间,I2C Decoder模块需要重建多次访问I2C Master寄存器的APB时序;
S3,进行EEPROM写操作或EEPROM读操作;
S4,访问完成,再拉起pready信号,释放APB总线。
作为一种优选的技术方案,在EEPROM写操作时,根据paddr[17:16]的不同,写入不同的设备地址,再把总线地址paddr[15:0]当数据写进I2C的寄存器buff,需要写2次,再把32比特的pwdata[31:0]写入寄存器buff,需要写4次。
作为一种优选的技术方案,在EEPROM读操作时,只执行随机读取的方式,根据paddr[17:16]的不同,写入不同的设备地址,再把总线地址paddr[15:0]当数据写进I2C的寄存器buff,需要写2次,之后I2C发起restart,再次发起设备地址,之后等待接收数据,再把接收到的数据拼接成32位输出至prdata[31:0]。
本发明相比于现有技术,具有以下有益效果:
本发明解决了用户需要通过APB总线多次访问I2C Master的内部寄存器来读写EEPROM的繁杂过程,现在只需要直接APB总线上发起EEPROM的地址访问就能直接进行存储空间的读写,这让用户会有一个更好的体验,也能让用户的软件设计更加简洁明了。
附图说明
图1为现有技术的一个SOC系统框架示意图;
图2为本发明涉及的多主机SOC系统框图;
图3为本发明所述的I2C Master与EEPROM的地址映射示意图;
图4为EEPROM页写的数据格式图;
图5为EEPROM随机读的数据格式图;
图6为利用本发明I2C Decoder进行访问的步骤示意图。
具体实施方式
下面结合实施例及附图,对本发明作进一步的详细说明,但本发明的实施方式不限于此。
实施例1
如图1至图6所示,本发明旨在解决上位机访问EEPROM时,能直接通过访问EEPROM的地址就能直接读写存储单元,通过简化APB总线多次访问I2C的操作,让用户有更加好的体验,并且不影响I2C内部寄存器的访问,所以本发明做了一个地址译码的功能,能让用户通过访问不同的地址去实现访问不同的器件。
为了方便用户设备,如SMBUS,CPU等访问EEPROM的存储空间时,能通过直接访问EEPROM的地址空间来直接访问存储空间,而不用通过访问I2C Master的寄存器地址间接访问EEPROM存储空间。如图2所示,这是本发明所涉及的比较简单的SOC系统的结构,AHB总线上挂有2个主机,用户可以通过SMBUS烧录软件程序至EEPROM,用户可以通过CPU读取EEPROM的初始化数据和一些配置程序,不论如何,AHB总线上的地址和数据带宽都是32比特,其对应的低速外设总线APB的地址和数据的带宽也是32比特,而EEPROM又是挂载在I2C Master外设模块上,所以需要把EEPROM的地址空间映射到系统总线的一段地址空间,这样就方便SMBUS和CPU等设备的直接访问了,由图所示,I2C Decoder模块就是把访问I2C Master和访问EEPROM的地址空间分开,当访问EEPROM时,APB总线上看就直接是EEPROM的地址和数据,而不是通过APB总线去访问I2C Master内部寄存器来间接读写EEPROM,对用户来说,简洁而方便,省去了多次访问I2C Master的过程。
如图3所示,为本发明设计的I2C Master和EEPROM在系统中的地址映射关系,分别为4KB和2MB的大小。
如图4和图5所示,为EEPROM页写的数据格式和随机读的数据格式,其他方式的读写详情请查阅EEPROM的数据手册,这里不赘述。
如图6所示是利用本发明I2C Decoder进行访问的步骤示意图,由图6可知,当SMBUS或者CPU发起访问时,需要根据APB总线的paddr[19:16]来识别主机的访问是I2C(paddr[19:16]<5)内部的地址空间,还是EEPROM(5<=paddr[19:16]<9)的存储空间。如果访问的是I2C的地址空间,则直接把APB总线的直接接到I2C Master的APB接口上;如果访问的是EEPROM的地址空间,则会由以下操作:
先获取真实访问的EEPROM的地址空间(总线地址-基址);
在APB总线访问EEPROM期间,需要把总线pready拉低,在此期间,I2C Decoder模块需要重建多次访问I2C Master寄存器的APB时序;
在EEPROM写操作时,可根据paddr[17:16]的不同,写入不同的Device address(设备地址),再把总线地址paddr[15:0]当数据写进I2C Master的寄存器buff,需要写2次,再把32比特的pwdata[31:0]写入寄存器buff,需要写4次;
在EEPROM读操作时,这里只执行了随机读取的方式,可根据paddr[17:16]的不同,写入不同的Device address,再把总线地址paddr[15:0]当数据写进I2C Master的寄存器buff,需要写2次,之后I2C发起restart,再次发起Device address,之后等待接收数据,再把接收到的数据拼接成32位输出至prdata[31:0];
访问完成,再拉起pready信号,释放APB总线。
综上,本发明解决了用户需要通过APB总线多次访问I2C Master的内部寄存器来读写EEPROM的繁杂过程,现在只需要直接APB总线上发起EEPROM的地址访问就能直接进行存储空间的读写,这让用户会有一个更好的体验,也能让用户的软件设计更加简洁明了。
本发明直接把SOC系统APB接口的I2C Master透明化了,省去了用户需要通过多次访问I2C Master的寄存器地址来间接读写EEPROM的存储单元,现在用户可以直接通过访问EEPROM的地址就能读写存储单元,对用户来说,省去了繁杂的流水线过程,也能使用户的软件设计更加高效和简洁。
如上所述,可较好地实现本发明。
本说明书中所有实施例公开的所有特征,或隐含公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合和/或扩展、替换。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,依据本发明的技术实质,在本发明的精神和原则之内,对以上实施例所作的任何简单的修改、等同替换与改进等,均仍属于本发明技术方案的保护范围之内。

Claims (1)

1.一种EEPROM访问方法,其特征在于,采用一种EEPROM访问结构,该EEPROM访问结构包括依次通信连接的上位机、AHB总线、AHB2APB Bridge、I2C、EEPROM,所述I2C包括I2CDecoder,所述I2C Decoder用以将上位机访问I2C的地址空间和访问EEPROM的地址空间分开,AHB2APB Bridge与I2C通过APB总线通信连接;
根据APB总线的paddr[19:16]来识别上位机的访问是I2C内部的地址空间,还是EEPROM的地址空间;
若paddr[19:16]<5,上位机访问I2C;若5<=paddr[19:16]<9,上位机访问EEPROM;
上位机为SMBUS或CPU;
如果访问的是I2C的地址空间,则直接把APB总线接到I2C Master的APB接口上;
如果访问的是EEPROM的地址空间,则执行以下操作:
S1,先获取真实访问的EEPROM的地址空间;
S2,在APB总线访问EEPROM期间,把总线pready拉低,在此期间,I2C Decoder模块需要重建多次访问I2C Master寄存器的APB时序;
S3,进行EEPROM写操作或EEPROM读操作;
S4,访问完成,再拉起pready信号,释放APB总线;
在EEPROM写操作时,根据paddr[17:16]的不同,写入不同的设备地址,再把总线地址paddr[15:0]当数据写进I2C的寄存器buff,需要写2次,再把32比特的pwdata[31:0]写入寄存器buff,需要写4次;
在EEPROM读操作时,只执行随机读取的方式,根据paddr[17:16]的不同,写入不同的设备地址,再把总线地址paddr[15:0]当数据写进I2C的寄存器buff,需要写2次,之后I2C发起restart,再次发起设备地址,之后等待接收数据,再把接收到的数据拼接成32位输出至prdata[31:0]。
CN202211719778.9A 2022-12-30 2022-12-30 一种eeprom访问方法 Active CN116049047B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211719778.9A CN116049047B (zh) 2022-12-30 2022-12-30 一种eeprom访问方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211719778.9A CN116049047B (zh) 2022-12-30 2022-12-30 一种eeprom访问方法

Publications (2)

Publication Number Publication Date
CN116049047A CN116049047A (zh) 2023-05-02
CN116049047B true CN116049047B (zh) 2024-04-12

Family

ID=86123117

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211719778.9A Active CN116049047B (zh) 2022-12-30 2022-12-30 一种eeprom访问方法

Country Status (1)

Country Link
CN (1) CN116049047B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1763734A (zh) * 2005-11-10 2006-04-26 苏州国芯科技有限公司 一种基于amba总线的8051系列微处理器应用系统
CN103412829A (zh) * 2013-08-16 2013-11-27 深圳市汇顶科技股份有限公司 扩大mcu程序地址空间的方法及装置
CN104679681A (zh) * 2015-03-18 2015-06-03 山东华芯半导体有限公司 Ahb总线访问片上sram的高速桥装置及其工作方法
CN107085560A (zh) * 2017-04-28 2017-08-22 西安微电子技术研究所 一种emif接口与ahb/apb时序桥接电路及其控制方法
CN109308283A (zh) * 2018-08-31 2019-02-05 西安微电子技术研究所 一种SoC片上系统及其外设总线切换方法
CN209640846U (zh) * 2019-03-28 2019-11-15 上海磐启微电子有限公司 一种串行总线转ahb总线的转换电路
CN110765052A (zh) * 2019-10-22 2020-02-07 广东高云半导体科技股份有限公司 一种ahb/apb扩展总线接口、片上系统
CN110795373A (zh) * 2019-09-27 2020-02-14 深圳震有科技股份有限公司 一种i2c总线到并行总线的转换方法、终端及存储介质
CN114564427A (zh) * 2022-03-01 2022-05-31 四川创安微电子有限公司 一种ahb总线到i2c总线的总线桥、系统及方法
CN114880250A (zh) * 2022-04-29 2022-08-09 Oppo广东移动通信有限公司 处理访问请求的方法、译码器及总线系统
CN115098164A (zh) * 2022-06-30 2022-09-23 东风汽车集团股份有限公司 基于risc-v指令集架构的车用微处理器芯片架构
CN115296965A (zh) * 2022-09-28 2022-11-04 成都电科星拓科技有限公司 降低延时的Retimer均衡配置方法、系统及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10403333B2 (en) * 2016-07-15 2019-09-03 Advanced Micro Devices, Inc. Memory controller with flexible address decoding

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1763734A (zh) * 2005-11-10 2006-04-26 苏州国芯科技有限公司 一种基于amba总线的8051系列微处理器应用系统
CN103412829A (zh) * 2013-08-16 2013-11-27 深圳市汇顶科技股份有限公司 扩大mcu程序地址空间的方法及装置
CN104679681A (zh) * 2015-03-18 2015-06-03 山东华芯半导体有限公司 Ahb总线访问片上sram的高速桥装置及其工作方法
CN107085560A (zh) * 2017-04-28 2017-08-22 西安微电子技术研究所 一种emif接口与ahb/apb时序桥接电路及其控制方法
CN109308283A (zh) * 2018-08-31 2019-02-05 西安微电子技术研究所 一种SoC片上系统及其外设总线切换方法
CN209640846U (zh) * 2019-03-28 2019-11-15 上海磐启微电子有限公司 一种串行总线转ahb总线的转换电路
CN110795373A (zh) * 2019-09-27 2020-02-14 深圳震有科技股份有限公司 一种i2c总线到并行总线的转换方法、终端及存储介质
CN110765052A (zh) * 2019-10-22 2020-02-07 广东高云半导体科技股份有限公司 一种ahb/apb扩展总线接口、片上系统
CN114564427A (zh) * 2022-03-01 2022-05-31 四川创安微电子有限公司 一种ahb总线到i2c总线的总线桥、系统及方法
CN114880250A (zh) * 2022-04-29 2022-08-09 Oppo广东移动通信有限公司 处理访问请求的方法、译码器及总线系统
CN115098164A (zh) * 2022-06-30 2022-09-23 东风汽车集团股份有限公司 基于risc-v指令集架构的车用微处理器芯片架构
CN115296965A (zh) * 2022-09-28 2022-11-04 成都电科星拓科技有限公司 降低延时的Retimer均衡配置方法、系统及装置

Also Published As

Publication number Publication date
CN116049047A (zh) 2023-05-02

Similar Documents

Publication Publication Date Title
KR101919903B1 (ko) 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들의 동작 방법
KR101932920B1 (ko) 비휘발성 메모리 카드를 제어하는 호스트, 이를 포함하는 시스템 및 이의 동작 방법
KR101988260B1 (ko) 임베디드 멀티미디어 카드, 및 이의 동작 방법
JP2019067417A (ja) 最終レベルキャッシュシステム及び対応する方法
US5564114A (en) Method and an arrangement for handshaking on a bus to transfer information between devices in a computer system
CN108268414B (zh) 基于spi模式的sd卡驱动器及其控制方法
US20060080489A1 (en) Bus bridge and data transfer method
CN114153779B (zh) 一种i2c通信方法、系统、设备、及存储介质
KR20200025184A (ko) 불휘발성 메모리 장치, 이를 포함하는 데이터 저장 장치 및 그 동작 방법
US8015329B2 (en) Data transfer coherency device and methods thereof
CN113868039A (zh) 一种测试方法、装置及相关设备
CN116049047B (zh) 一种eeprom访问方法
CN110765060B (zh) Mdio总线到并行总线转换方法及装置、设备、介质
US20080052424A1 (en) Data access system, data access apparatus, data access integrated circuit, and data access method
JP4972212B2 (ja) ブリッジ回路
CN107783927B (zh) 用于连接axi接口和dma接口的电路转换系统及方法
CN110795373B (zh) 一种i2c总线到并行总线的转换方法、终端及存储介质
TW201344444A (zh) 主機板及應用於該主機板的資料處理方法
WO2009115058A1 (zh) 提供闪存存储功能的主板及其存储方法
CN110765065A (zh) 片上系统
JP3714420B2 (ja) データ転送制御装置、電子機器、プログラム及び電子機器の製造方法
CN110633225A (zh) 实体存储对照表产生装置及方法
US11366736B2 (en) Memory system using SRAM with flag information to identify unmapped addresses
KR20200143922A (ko) 메모리 카드 및 이를 이용한 데이터 처리 방법
CN110750476A (zh) 一种spi总线与并行总线的桥接方法、设备、系统及介质

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