CN111124961A - 一种连续读写模式下的单口ram转伪双口ram的实现方法 - Google Patents

一种连续读写模式下的单口ram转伪双口ram的实现方法 Download PDF

Info

Publication number
CN111124961A
CN111124961A CN201911388652.6A CN201911388652A CN111124961A CN 111124961 A CN111124961 A CN 111124961A CN 201911388652 A CN201911388652 A CN 201911388652A CN 111124961 A CN111124961 A CN 111124961A
Authority
CN
China
Prior art keywords
read
write
port ram
module
fifo module
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.)
Pending
Application number
CN201911388652.6A
Other languages
English (en)
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.)
Wuhan Xiantong Technology Co ltd
Original Assignee
Wuhan Xiantong 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 Wuhan Xiantong Technology Co ltd filed Critical Wuhan Xiantong Technology Co ltd
Priority to CN201911388652.6A priority Critical patent/CN111124961A/zh
Publication of CN111124961A publication Critical patent/CN111124961A/zh
Pending legal-status Critical Current

Links

Images

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/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • 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/1673Details of memory controller using buffers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • G06F5/065Partitioned buffers, e.g. allowing multiple independent queues, bidirectional FIFO's

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Static Random-Access Memory (AREA)

Abstract

本发明提供一种连续读写模式下的单口RAM转伪双口RAM的实现方法,所述实现方法由一片FPGA芯片和一片单口RAM实现,所述单口RAM选用IS61WV102416BLL,所述FPGA芯片选用EP4CE15F17C8,所述FPGA芯片内设置有读驱动模块、写驱动模块、仲裁模块、读取FIFO模块和写入FIFO模块,该连续读写模式下的单口RAM转伪双口RAM的实现方法设计合理,利用一片单口RAM,通过FPGA芯片的读取FIFO模块和写入FIFO模块进行读写数据的缓存,并加入仲裁机制进行数据线和地址线的分时复用,实现伪双口RAM的目的。

Description

一种连续读写模式下的单口RAM转伪双口RAM的实现方法
技术领域
本发明属于电子技术领域,特别涉及一种连续读写模式下的单口RAM转伪双口RAM的实现方法。
背景技术
随着电子技术的迅速发展,大量的高速数据采集和在线测试对现代工业测控系统和仪器仪表的功能和性能提更高要求,CPU并行工作方式得到了广泛应用,为了使2个控制器能够快速有效的交换信息,充分利用系统资源,采用双口RAM实现存储器共享是目前较为流行的方法,双口RAM可以很好的解决并行性和速度的问题。
双口RAM是在1个单口RAM存储器上具有两套完全独立的数据线、地址线和读写控制线,并允许两个独立的系统同时对其进行随机性访问的存储器,即共享式多端口存储器。目前,大容量的双口RAM成本较高,目前市面上大容量的双口RAM由于生产成本和工艺的原因,价格一般都比较高。单口RAM价格相对便宜,但是只有一套数据总线和地址总线,只能连接单个处理器,并且读写必须分开操作,对数据的存取速度有极大的限制,为此,本发明提出一种连续读写模式下的单口RAM转伪双口RAM的实现方法。
发明内容
为了解决现有技术存在的问题,本发明提供了一种连续读写模式下的单口RAM转伪双口RAM的实现方法,该连续读写模式下的单口RAM转伪双口RAM的实现方法设计合理,利用一片单口RAM,通过FPGA芯片的读取FIFO模块和写入FIFO模块进行读写数据的缓存,并加入仲裁机制进行数据线和地址线的分时复用,充分利用总线资源,实现伪双口RAM的目的。
为了实现上述目的,本发明是通过如下的技术方案来实现:一种连续读写模式下的单口RAM转伪双口RAM的实现方法,所述实现方法由一片FPGA芯片和一片单口RAM实现,所述单口RAM选用IS61WV102416BLL,所述FPGA芯片选用EP4CE15F17C8,所述FPGA芯片内设置有读驱动模块、写驱动模块、仲裁模块、读取FIFO模块和写入FIFO模块,利用一片单口RAM,通过FPGA芯片的读取FIFO模块和写入FIFO模块进行读写数据的缓存,并加入仲裁机制进行数据线和地址线的分时复用,实现伪双口RAM的目的,具体实现方法如下:
①读写驱动模块:读写驱动模块直连IS61WV102416BLL,实现单口RAM的读写时序,完成底层驱动;
②仲裁模块:仲裁模块的主要功能是根据读取FIFO模块和写入FIFO模块的读写需求和读写总线的占用情况,合理调度分配单口RAM的总线资源,进行分时复用,其工作原理如下:在读取FIFO模块和写入FIFO模块中设置多个近空和近满阈值,读取FIFO模块随着外部接口将数据读出,读取FIFO模块内部的缓存数据越来越少,缓存数据量低于不同的阈值时向仲裁模块发送不同优先等级的读请求信号,同理,写入FIFO模块随着外部接口将数据写入,写入FIFO模块内部的缓存数据越来越多,缓存数据量高于不同的阈值时向仲裁模块发送不同优先等级的写请求信号,仲裁模块根据读写请求信号的优先等级,分配不同的时间片资源去读写单口RAM;
③读取FIFO模块和写入FIFO模块:读取FIFO模块和写入FIFO模块对外扩展了一套数据总线和地址总线,实现了伪双口RAM的接口,可以满足两个处理器分别对它进行读和写,并且,读取FIFO模块和写入FIFO模块能够对外部的读写数据进行缓冲,保证数据读写的实时性和并行性,这两个模块会监测内部缓存的数据量,并向仲裁模块发送不同优先级的请求,保证读写过程不被阻塞。
作为本发明的一种优选实施方式,所述单口RAM的读写共用一套数据、地址总线,读写必须分时操作。
作为本发明的一种优选实施方式,所述IS61WV102416BLL是一款1M*16Bits的高速异步单口RAM,它采用CMOS技术,具有可靠性高、低功耗等优点。
作为本发明的一种优选实施方式,所述②中,高优先级的请求信号可以打断分配给低优先级请求信号的时间片,低优先级的请求信号不能打断分配给高优先级的请求信号的时间片。
本发明的有益效果:
1、此连续读写模式下的单口RAM转伪双口RAM的实现方法利用成本更低的单口RAM,通过FPGA芯片的读取FIFO模块和写入FIFO模块进行读写数据的缓存,并加入仲裁机制进行数据线和地址线的分时复用,充分利用总线资源,实现伪双口RAM的目的。
2、此连续读写模式下的单口RAM转伪双口RAM的实现方法设计合理,在需要严格考虑成本的电子产品设计中,或者没有合适的双口RAM供使用,能够使用本发明方法用单口RAM去替代双口RAM,实用性强。
附图说明
图1为一种连续读写模式下的单口RAM转伪双口RAM的实现方法的总体技术框图;
图2为一种连续读写模式下的单口RAM转伪双口RAM的实现方法的单口RAM引脚功能示意图;
图3为一种连续读写模式下的单口RAM转伪双口RAM的实现方法的单口RAM读取时序图;
图4为一种连续读写模式下的单口RAM转伪双口RAM的实现方法的单口RAM写入时序图;
图5为一种连续读写模式下的单口RAM转伪双口RAM的实现方法的读写驱动模块接口信息示意图;
图6为一种连续读写模式下的单口RAM转伪双口RAM的实现方法的仲裁模块接口信息示意图。
具体实施方式
为使本发明实现的技术手段、创作特征、达成目的与功效易于明白了解,下面结合具体实施方式,进一步阐述本发明。
请参阅图1至图6,本发明提供一种技术方案:一种连续读写模式下的单口RAM转伪双口RAM的实现方法,所述实现方法由一片FPGA芯片和一片单口RAM实现,所述单口RAM选用IS61WV102416BLL,所述FPGA芯片选用EP4CE15F17C8,所述FPGA芯片内设置有读驱动模块、写驱动模块、仲裁模块、读取FIFO模块和写入FIFO模块,利用一片单口RAM,通过FPGA芯片的读取FIFO模块和写入FIFO模块进行读写数据的缓存,并加入仲裁机制进行数据线和地址线的分时复用,实现伪双口RAM的目的,具体实现方法如下:
①读写驱动模块:读写驱动模块直连IS61WV102416BLL,实现单口RAM的读写时序,完成底层驱动;
②仲裁模块:仲裁模块的主要功能是根据读取FIFO模块和写入FIFO模块的读写需求和读写总线的占用情况,合理调度分配单口RAM的总线资源,进行分时复用,其工作原理如下:在读取FIFO模块和写入FIFO模块中设置多个近空和近满阈值,读取FIFO模块随着外部接口将数据读出,读取FIFO模块内部的缓存数据越来越少,缓存数据量低于不同的阈值时向仲裁模块发送不同优先等级的读请求信号,同理,写入FIFO模块随着外部接口将数据写入,写入FIFO模块内部的缓存数据越来越多,缓存数据量高于不同的阈值时向仲裁模块发送不同优先等级的写请求信号,仲裁模块根据读写请求信号的优先等级,分配不同的时间片资源去读写单口RAM;
③读取FIFO模块和写入FIFO模块:读取FIFO模块和写入FIFO模块对外扩展了一套数据总线和地址总线,实现了伪双口RAM的接口,可以满足两个处理器分别对它进行读和写,并且,读取FIFO模块和写入FIFO模块能够对外部的读写数据进行缓冲,保证数据读写的实时性和并行性,这两个模块会监测内部缓存的数据量,并向仲裁模块发送不同优先级的请求,保证读写过程不被阻塞。
作为本发明的一种优选实施方式,所述单口RAM的读写共用一套数据、地址总线,读写必须分时操作。
作为本发明的一种优选实施方式,所述IS61WV102416BLL是一款1M*16Bits的高速异步单口RAM,它采用CMOS技术,具有可靠性高、低功耗等优点。
作为本发明的一种优选实施方式,所述②中,高优先级的请求信号可以打断分配给低优先级请求信号的时间片,低优先级的请求信号不能打断分配给高优先级的请求信号的时间片。
以上显示和描述了本发明的基本原理和主要特征和本发明的优点,对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

Claims (4)

1.一种连续读写模式下的单口RAM转伪双口RAM的实现方法,其特征在于,所述实现方法由一片FPGA芯片和一片单口RAM实现,所述单口RAM选用IS61WV102416BLL,所述FPGA芯片选用EP4CE15F17C8,所述FPGA芯片内设置有读驱动模块、写驱动模块、仲裁模块、读取FIFO模块和写入FIFO模块,利用一片单口RAM,通过FPGA芯片的读取FIFO模块和写入FIFO模块进行读写数据的缓存,并加入仲裁机制进行数据线和地址线的分时复用,实现伪双口RAM的目的,具体实现方法如下:
①读写驱动模块:读写驱动模块直连IS61WV102416BLL,实现单口RAM的读写时序,完成底层驱动;
②仲裁模块:仲裁模块的主要功能是根据读取FIFO模块和写入FIFO模块的读写需求和读写总线的占用情况,合理调度分配单口RAM的总线资源,进行分时复用,其工作原理如下:在读取FIFO模块和写入FIFO模块中设置多个近空和近满阈值,读取FIFO模块随着外部接口将数据读出,读取FIFO模块内部的缓存数据越来越少,缓存数据量低于不同的阈值时向仲裁模块发送不同优先等级的读请求信号,同理,写入FIFO模块随着外部接口将数据写入,写入FIFO模块内部的缓存数据越来越多,缓存数据量高于不同的阈值时向仲裁模块发送不同优先等级的写请求信号,仲裁模块根据读写请求信号的优先等级,分配不同的时间片资源去读写单口RAM;
③读取FIFO模块和写入FIFO模块:读取FIFO模块和写入FIFO模块对外扩展了一套数据总线和地址总线,实现了伪双口RAM的接口,可以满足两个处理器分别对它进行读和写,并且,读取FIFO模块和写入FIFO模块能够对外部的读写数据进行缓冲,保证数据读写的实时性和并行性,这两个模块会监测内部缓存的数据量,并向仲裁模块发送不同优先级的请求,保证读写过程不被阻塞。
2.根据权利要求1所述的一种连续读写模式下的单口RAM转伪双口RAM的实现方法,其特征在于:所述单口RAM的读写共用一套数据、地址总线,读写必须分时操作。
3.根据权利要求1所述的一种连续读写模式下的单口RAM转伪双口RAM的实现方法,其特征在于:所述IS61WV102416BLL是一款1M*16Bits的高速异步单口RAM,它采用CMOS技术,具有可靠性高、低功耗等优点。
4.根据权利要求1所述的一种连续读写模式下的单口RAM转伪双口RAM的实现方法,其特征在于:所述②中,高优先级的请求信号可以打断分配给低优先级请求信号的时间片,低优先级的请求信号不能打断分配给高优先级的请求信号的时间片。
CN201911388652.6A 2019-12-30 2019-12-30 一种连续读写模式下的单口ram转伪双口ram的实现方法 Pending CN111124961A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911388652.6A CN111124961A (zh) 2019-12-30 2019-12-30 一种连续读写模式下的单口ram转伪双口ram的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911388652.6A CN111124961A (zh) 2019-12-30 2019-12-30 一种连续读写模式下的单口ram转伪双口ram的实现方法

Publications (1)

Publication Number Publication Date
CN111124961A true CN111124961A (zh) 2020-05-08

Family

ID=70504440

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911388652.6A Pending CN111124961A (zh) 2019-12-30 2019-12-30 一种连续读写模式下的单口ram转伪双口ram的实现方法

Country Status (1)

Country Link
CN (1) CN111124961A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112817885A (zh) * 2021-01-29 2021-05-18 联想(北京)信息技术有限公司 一种数据访问控制方法、可编程逻辑器件及电子设备
CN112948322A (zh) * 2021-02-26 2021-06-11 西安微电子技术研究所 一种基于弹性缓存的虚通道及实现方法
CN113076061A (zh) * 2021-03-18 2021-07-06 四川和芯微电子股份有限公司 单ram多模块数据的缓存方法
CN113177009A (zh) * 2021-05-24 2021-07-27 上海航天计算机技术研究所 一种用于深空探测器的多接口复用方法及系统
CN114489502A (zh) * 2021-03-26 2022-05-13 井芯微电子技术(天津)有限公司 一种基于并行ram的数据阵列管理方法、装置和存储设备
WO2024017337A1 (zh) * 2022-07-22 2024-01-25 芯海科技(深圳)股份有限公司 一种fifo存储控制电路、方法、芯片及电子设备
CN117917735A (zh) * 2024-03-20 2024-04-23 北京微核芯科技有限公司 伪双端口sram的读写控制方法及装置
CN117917735B (zh) * 2024-03-20 2024-05-31 北京微核芯科技有限公司 伪双端口sram的读写控制方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102004626A (zh) * 2010-11-17 2011-04-06 华亚微电子(上海)有限公司 双口存储器
CN102096648A (zh) * 2010-12-09 2011-06-15 深圳中兴力维技术有限公司 基于fpga的实现多路突发数据业务缓存的系统及方法
CN109741774A (zh) * 2018-11-23 2019-05-10 成都汇蓉国科微系统技术有限公司 一种基于fpga片上ram模拟实现ddr3突发的控制器以及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102004626A (zh) * 2010-11-17 2011-04-06 华亚微电子(上海)有限公司 双口存储器
CN102096648A (zh) * 2010-12-09 2011-06-15 深圳中兴力维技术有限公司 基于fpga的实现多路突发数据业务缓存的系统及方法
CN109741774A (zh) * 2018-11-23 2019-05-10 成都汇蓉国科微系统技术有限公司 一种基于fpga片上ram模拟实现ddr3突发的控制器以及方法

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112817885A (zh) * 2021-01-29 2021-05-18 联想(北京)信息技术有限公司 一种数据访问控制方法、可编程逻辑器件及电子设备
CN112948322A (zh) * 2021-02-26 2021-06-11 西安微电子技术研究所 一种基于弹性缓存的虚通道及实现方法
CN112948322B (zh) * 2021-02-26 2023-05-16 西安微电子技术研究所 一种基于弹性缓存的虚通道及实现方法
CN113076061A (zh) * 2021-03-18 2021-07-06 四川和芯微电子股份有限公司 单ram多模块数据的缓存方法
CN114489502A (zh) * 2021-03-26 2022-05-13 井芯微电子技术(天津)有限公司 一种基于并行ram的数据阵列管理方法、装置和存储设备
CN114489502B (zh) * 2021-03-26 2024-04-12 井芯微电子技术(天津)有限公司 一种基于并行ram的数据阵列管理方法、装置和存储设备
CN113177009A (zh) * 2021-05-24 2021-07-27 上海航天计算机技术研究所 一种用于深空探测器的多接口复用方法及系统
WO2024017337A1 (zh) * 2022-07-22 2024-01-25 芯海科技(深圳)股份有限公司 一种fifo存储控制电路、方法、芯片及电子设备
CN117917735A (zh) * 2024-03-20 2024-04-23 北京微核芯科技有限公司 伪双端口sram的读写控制方法及装置
CN117917735B (zh) * 2024-03-20 2024-05-31 北京微核芯科技有限公司 伪双端口sram的读写控制方法及装置

Similar Documents

Publication Publication Date Title
CN111124961A (zh) 一种连续读写模式下的单口ram转伪双口ram的实现方法
CN103198856B (zh) 一种ddr控制器及请求调度方法
CN105117360B (zh) 基于fpga的接口信号重映射方法
US20140132611A1 (en) System and method for data transmission
CN102841869B (zh) 一种基于fpga的多通道i2c控制器
US20130103917A1 (en) Efficient command mapping scheme for short data burst length memory devices
US20140068125A1 (en) Memory throughput improvement using address interleaving
CN204203964U (zh) 一种多路数据存储的便携式地面测试设备
US20180174624A1 (en) Memory component with adjustable core-to-interface data rate ratio
CN116225990A (zh) 基于fpga的多通道ddr读写仲裁装置
US20240021239A1 (en) Hardware Acceleration System for Data Processing, and Chip
KR20160046883A (ko) 듀얼 전압 데이터 전송을 이용한 메시 성능 향상
CN103412847B (zh) 基于fpga的usb转多路链路接口电路
US20230195368A1 (en) Write Request Buffer
CN103106177A (zh) 多核网络处理器的片上互联结构及其方法
US7114019B2 (en) System and method for data transmission
CN109840241A (zh) 一种异构双核处理器核间通讯电路
CN111045980A (zh) 一种多核处理器
CN113220608A (zh) 一种NVMe命令处理器及其处理方法
CN113740851A (zh) 一种分时复用单ddr的sar成像数据处理系统
CN113342724A (zh) 一种基于fpga的数据传输方法与装置
CN111221754A (zh) 一种自带防读写冲突功能的存储装置
US20240070093A1 (en) Asymmetric Read-Write Sequence for Interconnected Dies
CN108763116B (zh) 一种基于贪婪式算法的多通道ddr控制器
CN115617722B (zh) 实现多pcie设备共享dma链表的系统及方法

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200508