CN116049047A - 一种eeprom访问结构及访问方法 - Google Patents
一种eeprom访问结构及访问方法 Download PDFInfo
- Publication number
- CN116049047A CN116049047A CN202211719778.9A CN202211719778A CN116049047A CN 116049047 A CN116049047 A CN 116049047A CN 202211719778 A CN202211719778 A CN 202211719778A CN 116049047 A CN116049047 A CN 116049047A
- Authority
- CN
- China
- Prior art keywords
- eeprom
- access
- bus
- address space
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 22
- 238000004891 communication Methods 0.000 claims abstract description 3
- 230000005540 biological transmission Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 7
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000000977 initiatory effect Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- LHMQDVIHBXWNII-UHFFFAOYSA-N 3-amino-4-methoxy-n-phenylbenzamide Chemical compound C1=C(N)C(OC)=CC=C1C(=O)NC1=CC=CC=C1 LHMQDVIHBXWNII-UHFFFAOYSA-N 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1684—Details of memory controller using multiple buses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy 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访问结构,包括依次通信连接的上位机、AHB总线、AHB2APB Bridge、I2C、EEPROM,所述I2C包括I2C Decoder,所述I2C Decoder用以将上位机访问I2C的地址空间和访问EEPROM的地址空间分开。本发明解决了现有技术存在的访问过程繁琐且低效、对上位机的软件控制及其不友好等问题。
Description
技术领域
本发明涉及数据传输技术领域,具体是一种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的地址空间来直接访问存储空间,而不用通过访问I2CMaster的寄存器地址间接访问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 (10)
1.一种EEPROM访问结构,其特征在于,包括依次通信连接的上位机、AHB总线、AHB2APBBridge、I2C、EEPROM,所述I2C包括I2C Decoder,所述I2C Decoder用以将上位机访问I2C的地址空间和访问EEPROM的地址空间分开。
2.根据权利要求1所述的一种EEPROM访问结构,其特征在于,AHB2APB Bridge与I2C通过APB总线通信连接。
3.根据权利要求1或2所述的一种EEPROM访问结构,其特征在于,上位机为SMBUS或CPU。
4.一种EEPROM访问方法,其特征在于,采用权利要求1至3任一项所述的一种EEPROM访问结构。
5.根据权利要求4所述的一种EEPROM访问方法,其特征在于,当上位机发起访问时,根据APB总线的paddr[19:16]来识别上位机的访问是I2C内部的地址空间,还是EEPROM的地址空间。
6.根据权利要求5所述的一种EEPROM访问方法,其特征在于,若paddr[19:16]<5,上位机访问I2C;若5<=paddr[19:16]<9,上位机访问EEPROM。
7.根据权利要求6所述的一种EEPROM访问方法,其特征在于,如果访问的是I2C的地址空间,则直接把APB总线接到I2C Master的APB接口上。
8.根据权利要求6所述的一种EEPROM访问方法,其特征在于,如果访问的是EEPROM的地址空间,则执行以下操作:
S1,先获取真实访问的EEPROM的地址空间;
S2,在APB总线访问EEPROM期间,把总线pready拉低,在此期间,I2C Decoder模块需要重建多次访问I2C Master寄存器的APB时序;
S3,进行EEPROM写操作或EEPROM读操作;
S4,访问完成,再拉起pready信号,释放APB总线。
9.根据权利要求8所述的一种EEPROM访问方法,其特征在于,在EEPROM写操作时,根据paddr[17:16]的不同,写入不同的设备地址,再把总线地址paddr[15:0]当数据写进I2C的寄存器buff,需要写2次,再把32比特的pwdata[31:0]写入寄存器buff,需要写4次。
10.根据权利要求8所述的一种EEPROM访问方法,其特征在于,在EEPROM读操作时,只执行随机读取的方式,根据paddr[17:16]的不同,写入不同的设备地址,再把总线地址paddr[15:0]当数据写进I2C的寄存器buff,需要写2次,之后I2C发起restart,再次发起设备地址,之后等待接收数据,再把接收到的数据拼接成32位输出至prdata[31:0]。
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 true CN116049047A (zh) | 2023-05-02 |
CN116049047B 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 (13)
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时序桥接电路及其控制方法 |
US20180019006A1 (en) * | 2016-07-15 | 2018-01-18 | Advanced Micro Devices, Inc. | Memory controller with flexible address decoding |
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均衡配置方法、系统及装置 |
-
2022
- 2022-12-30 CN CN202211719778.9A patent/CN116049047B/zh active Active
Patent Citations (13)
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的高速桥装置及其工作方法 |
US20180019006A1 (en) * | 2016-07-15 | 2018-01-18 | Advanced Micro Devices, Inc. | Memory controller with flexible address decoding |
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 |
---|---|
CN116049047B (zh) | 2024-04-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101919903B1 (ko) | 임베디드 멀티미디어 카드, 이를 제어하는 호스트, 및 이들의 동작 방법 | |
CN103678193B (zh) | 控制非易失性存储卡的主机、包括主机的系统、操作方法 | |
KR101988260B1 (ko) | 임베디드 멀티미디어 카드, 및 이의 동작 방법 | |
CN108268414B (zh) | 基于spi模式的sd卡驱动器及其控制方法 | |
US5564114A (en) | Method and an arrangement for handshaking on a bus to transfer information between devices in a computer system | |
JP2019067417A (ja) | 最終レベルキャッシュシステム及び対応する方法 | |
US7263572B2 (en) | Bus bridge and data transfer method | |
US8015329B2 (en) | Data transfer coherency device and methods thereof | |
TWI507883B (zh) | 記憶卡存取裝置、其控制方法與記憶卡存取系統 | |
CN110765060B (zh) | Mdio总线到并行总线转换方法及装置、设备、介质 | |
CN116049047B (zh) | 一种eeprom访问方法 | |
US20080052424A1 (en) | Data access system, data access apparatus, data access integrated circuit, and data access method | |
CN107783927B (zh) | 用于连接axi接口和dma接口的电路转换系统及方法 | |
TW201344444A (zh) | 主機板及應用於該主機板的資料處理方法 | |
JP4972212B2 (ja) | ブリッジ回路 | |
CN110795373B (zh) | 一种i2c总线到并行总线的转换方法、终端及存储介质 | |
WO2009115058A1 (zh) | 提供闪存存储功能的主板及其存储方法 | |
CN110765065A (zh) | 片上系统 | |
JP3714420B2 (ja) | データ転送制御装置、電子機器、プログラム及び電子機器の製造方法 | |
CN110633225A (zh) | 实体存储对照表产生装置及方法 | |
CN114168503A (zh) | 一种接口ip核控制方法、接口ip核、装置及介质 | |
US10698786B2 (en) | Memory system using SRAM with flag information to identify unmapped addresses | |
US7412582B2 (en) | Method and device for burst reading/writing memory data | |
KR20200143922A (ko) | 메모리 카드 및 이를 이용한 데이터 처리 방법 | |
JP2944280B2 (ja) | インタフェース回路 |
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 |