CN110888601B - 一种基于ram ip核的移位寄存器实现方法 - Google Patents

一种基于ram ip核的移位寄存器实现方法 Download PDF

Info

Publication number
CN110888601B
CN110888601B CN201911111757.7A CN201911111757A CN110888601B CN 110888601 B CN110888601 B CN 110888601B CN 201911111757 A CN201911111757 A CN 201911111757A CN 110888601 B CN110888601 B CN 110888601B
Authority
CN
China
Prior art keywords
register
data
bit
space
ram
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
CN201911111757.7A
Other languages
English (en)
Other versions
CN110888601A (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.)
CETC 54 Research Institute
Original Assignee
CETC 54 Research Institute
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 CETC 54 Research Institute filed Critical CETC 54 Research Institute
Priority to CN201911111757.7A priority Critical patent/CN110888601B/zh
Publication of CN110888601A publication Critical patent/CN110888601A/zh
Application granted granted Critical
Publication of CN110888601B publication Critical patent/CN110888601B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • 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)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Shift Register Type Memory (AREA)
  • Logic Circuits (AREA)

Abstract

本发明公开了一种基于RAM IP核的移位寄存器及其实现方法,它涉及到移位寄存器实现方法,尤其涉及基于RAM IP核实现的移位寄存器方法;所述N*M bit数据长度的移位寄存器包含1个N*(M‑1)的RAM存储器,1个(N+1)*1的寄存器和2个1*(M‑1)的寄存器。通过N+2个时钟实现N*M bit寄存器空间的1bit数据移位寄存操作。本发明基于资源转移和时间换空间的设计理念,有效解决了FPGA设计中大规模移位寄存器占用逻辑资源和寄存器资源过多的问题。本发明的实现方法具有新颖性、创造性和简单实用的特点。

Description

一种基于RAM IP核的移位寄存器实现方法
技术领域
本发明涉及到移位寄存器实现方法,尤其涉及基于RAM IP核实现的移位寄存器方法。
背景技术
一个N*M bit的移位寄存器简单的直观设计为采用1个N*M bit的寄存器,每个时钟周期将1bit新数据移入寄存器第N*M bit空间,原移位寄存器第1bit空间数据移出,第2至N*M bit空间数据移至第1至N*M-1bit空间。在N*M较大时,该方法实现的移位寄存器消耗太多的逻辑资源和寄存器资源。FPGA设计中逻辑资源和寄存器资源通常比较紧张,而存储资源相对充足。
发明内容
有鉴于此,本发明的目的在于避免上述背景技术中的不足而提供一种基于RAM IP核的移位寄存器实现方法。本发明基于资源转移和时间换空间的设计理念,利用FPGA设计中资源相对充裕的存储资源实现移位寄存器功能,利用多个时钟周期实现1bit数据移位寄存操作。
一种基于RAM IP核的移位寄存器实现方法,用于实现N*M bit数据移位寄存,包含1个RAM存储器和3个寄存器,RAM存储器大小为N*(M-1),寄存器1大小为(N+1)*1,寄存器2和寄存器3的大小分别为1*(M-1);具体包括以下步骤:
(1)第1个时钟周期将RAM存储器中第1行数据读入寄存器2,将新的1bit数据存入寄存器1第N+1bit空间;
(2)第2个时钟周期将RAM存储器中第2行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第1bit数据存入寄存器3第M-1bit空间,将RAM存储器中第2行第1bit数据存入寄存器1第1bit空间;
(3)从第3个时钟周期开始依次到第N个时钟周期,每个时钟周期分别执行以下操作:第n个时钟周期将寄存器3中的数据存入RAM存储器第n-2行,将RAM存储器中第n行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第n-1bit数据存入寄存器3第M-1bit空间,将RAM存储器中第n行第1bit数据存入寄存器1第n-1bit空间;其中,3≤n≤N;
(4)第N+1个时钟周期将寄存器3中的数据存入RAM存储器第N-1行,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第N bit数据存入寄存器3第M-1bit空间,将寄存器1第N+1bit数据存入寄存器1第N bit空间;
(5)第N+2个时钟周期将寄存器3中的数据存入RAM存储器第N行;
至此完成N*M bit长度的移位寄存器一次移位。
本发明相比背景技术有如下优点:
(i)本发明提出的基于RAM IP核的移位寄存器实现方法,基于资源转移和时间换空间的设计理念,有效解决了FPGA设计中大规模移位寄存器占用逻辑资源和寄存器资源过多的问题,具有新颖性和创造性的特点。
(ii)本发明提出的基于RAM IP核的移位寄存器实现方法,实现架构简单,逻辑原理通俗易懂,具有简单、实用性强的特点。
附图说明
图1是本发明实现的移位寄存器基本结构;
图2是本发明实现步骤中第1个时钟周期后的数据状态;
图3是本发明实现步骤中第2个时钟周期后的数据状态;
图4是本发明实现步骤中第3个时钟周期后的数据状态;
图5是本发明实现步骤中第N个时钟周期后的数据状态;
图6是本发明实现步骤中第N+1个时钟周期后的数据状态;
图7是本发明实现步骤中第N+2个时钟周期后的数据状态。
具体实施方式
本发明设计的移位寄存器用于实现N*M bit数据移位寄存,利用N+2个时钟周期实现1bit数据的移位寄存。该移位寄存器包含1个N*(M-1)的RAM存储器,1个(N+1)*1的寄存器和2个1*(M-1)的寄存器,如图1所示。原移位寄存器中N*M bit数据为n,n+1,…,n+N*M-1,共N*M个,新的数据为n+N*M,经过N+2个时钟周期实现将数据n+N*M移入移位寄存器,将数据n移出移位寄存器,具体实现步骤如下:
1)第1个时钟周期将RAM中第1行数据读入寄存器2,将新的1bit数据存入寄存器1第N+1bit空间,如图2所示;
2)第2个时钟周期将RAM中第2行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第1bit数据存入寄存器3第M-1bit空间,将RAM中第2行第1bit数据存入寄存器1第1bit空间,如图3所示;
3)第3个时钟周期将寄存器3中的数据存入RAM第1行,将RAM中第3行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第2bit数据存入寄存器3第M-1bit空间,将RAM中第3行第1bit数据存入寄存器1第2bit空间,如图4所示;
4)依次类推,第N个时钟周期将寄存器3中的数据存入RAM第N-2行,将RAM中第N行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第N-1bit数据存入寄存器3第M-1bit空间,将RAM中第N行第1bit数据存入寄存器1第N-1bit空间,如图5所示;
5)第N+1个时钟周期将寄存器3中的数据存入RAM第N-1行,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第N bit数据存入寄存器3第M-1bit空间,将寄存器1第N+1bit数据存入寄存器1第N bit空间,如图6所示;
6)第N+2个时钟周期将寄存器3中的数据存入RAM第N行,至此完成N*M bit长度的移位寄存器一次移位,如图7所示。
本发明实现原理:本发明利用N+2个时钟实现N*M bit寄存器空间的1bit数据移位操作。新移入的1bit数据首先占用寄存器1第N+1bit空间,存储器RAM中第1行最左侧1bit数据为移出数据。存储器RAM和寄存器1共同实现N*M bit数据寄存,利用寄存器2和寄存器3实现N*M bit空间的1bit移位操作。
除上述实施步骤外,本发明还可以有其他实施方式。凡采用等同替换或等效变换形式的技术方案,均落在本发明要求的保护范围。

Claims (1)

1.一种基于RAM IP核的移位寄存器实现方法,用于实现N*M bit数据移位寄存,其特征在于,包含1个RAM存储器和3个寄存器,RAM存储器大小为N*(M-1),寄存器1大小为(N+1)*1,寄存器2和寄存器3的大小分别为1*(M-1);具体包括以下步骤:
(1)第1个时钟周期将RAM存储器中第1行数据读入寄存器2,将新的1bit数据存入寄存器1第N+1bit空间;
(2)第2个时钟周期将RAM存储器中第2行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第1bit数据存入寄存器3第M-1bit空间,将RAM存储器中第2行第1bit数据存入寄存器1第1bit空间;
(3)从第3个时钟周期开始依次到第N个时钟周期,每个时钟周期分别执行以下操作:第n个时钟周期将寄存器3中的数据存入RAM存储器第n-2行,将RAM存储器中第n行数据读入寄存器2,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第n-1bit数据存入寄存器3第M-1bit空间,将RAM存储器中第n行第1bit数据存入寄存器1第n-1bit空间;其中,3≤n≤N;
(4)第N+1个时钟周期将寄存器3中的数据存入RAM存储器第N-1行,将寄存器2中数据向左侧移一位存入寄存器3前M-2bit空间,寄存器1中第N bit数据存入寄存器3第M-1bit空间,将寄存器1第N+1bit数据存入寄存器1第N bit空间;
(5)第N+2个时钟周期将寄存器3中的数据存入RAM存储器第N行;
至此完成N*M bit长度的移位寄存器一次移位。
CN201911111757.7A 2019-11-14 2019-11-14 一种基于ram ip核的移位寄存器实现方法 Active CN110888601B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911111757.7A CN110888601B (zh) 2019-11-14 2019-11-14 一种基于ram ip核的移位寄存器实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911111757.7A CN110888601B (zh) 2019-11-14 2019-11-14 一种基于ram ip核的移位寄存器实现方法

Publications (2)

Publication Number Publication Date
CN110888601A CN110888601A (zh) 2020-03-17
CN110888601B true CN110888601B (zh) 2023-05-19

Family

ID=69747482

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911111757.7A Active CN110888601B (zh) 2019-11-14 2019-11-14 一种基于ram ip核的移位寄存器实现方法

Country Status (1)

Country Link
CN (1) CN110888601B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0006804A1 (fr) * 1978-06-26 1980-01-09 Lmt Radio Professionnelle Décodeur de précision sur la première impulsion d'une paire
SU1619254A1 (ru) * 1988-06-22 1991-01-07 Институт кибернетики им.В.М.Глушкова Скал рный умножитель векторов
CN1281559A (zh) * 1997-10-09 2001-01-24 英芬能技术公司 利用ram仿真移位寄存器的方法
CN1499758A (zh) * 2002-11-11 2004-05-26 华为技术有限公司 数据流锁存装置及其方法
CN1945489A (zh) * 2005-10-06 2007-04-11 三洋电机株式会社 串行数据输入系统
CN102117193A (zh) * 2010-01-04 2011-07-06 杭州华三通信技术有限公司 一种实现预读式fifo的方法和预读式fifo
CN102510329A (zh) * 2011-09-29 2012-06-20 中国人民解放军信息工程大学 一种乘法器及其控制方法
CN102867181A (zh) * 2012-07-27 2013-01-09 华南理工大学 一种用于数字图像处理的特征提取模块及遍历方法
CN104716954A (zh) * 2015-03-17 2015-06-17 广东高云半导体科技股份有限公司 带有片上用户非易失性存储器的可编程逻辑器件
CN104733049A (zh) * 2015-03-27 2015-06-24 中国电子科技集团公司第二十研究所 使用ram单元实现的移位寄存器
CN108681513A (zh) * 2018-07-19 2018-10-19 上海艾为电子技术股份有限公司 I2c从地址生成装置及芯片
CN110221807A (zh) * 2019-06-06 2019-09-10 龙芯中科(合肥)技术有限公司 数据移位方法、装置、设备及计算机可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107766031B (zh) * 2017-11-14 2020-06-19 京东方科技集团股份有限公司 分段式除法器、分段式除法运算方法、以及电子设备

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0006804A1 (fr) * 1978-06-26 1980-01-09 Lmt Radio Professionnelle Décodeur de précision sur la première impulsion d'une paire
SU1619254A1 (ru) * 1988-06-22 1991-01-07 Институт кибернетики им.В.М.Глушкова Скал рный умножитель векторов
CN1281559A (zh) * 1997-10-09 2001-01-24 英芬能技术公司 利用ram仿真移位寄存器的方法
CN1499758A (zh) * 2002-11-11 2004-05-26 华为技术有限公司 数据流锁存装置及其方法
CN1945489A (zh) * 2005-10-06 2007-04-11 三洋电机株式会社 串行数据输入系统
CN102117193A (zh) * 2010-01-04 2011-07-06 杭州华三通信技术有限公司 一种实现预读式fifo的方法和预读式fifo
CN102510329A (zh) * 2011-09-29 2012-06-20 中国人民解放军信息工程大学 一种乘法器及其控制方法
CN102867181A (zh) * 2012-07-27 2013-01-09 华南理工大学 一种用于数字图像处理的特征提取模块及遍历方法
CN104716954A (zh) * 2015-03-17 2015-06-17 广东高云半导体科技股份有限公司 带有片上用户非易失性存储器的可编程逻辑器件
CN104733049A (zh) * 2015-03-27 2015-06-24 中国电子科技集团公司第二十研究所 使用ram单元实现的移位寄存器
CN108681513A (zh) * 2018-07-19 2018-10-19 上海艾为电子技术股份有限公司 I2c从地址生成装置及芯片
CN110221807A (zh) * 2019-06-06 2019-09-10 龙芯中科(合肥)技术有限公司 数据移位方法、装置、设备及计算机可读存储介质

Also Published As

Publication number Publication date
CN110888601A (zh) 2020-03-17

Similar Documents

Publication Publication Date Title
CN104407809A (zh) 多通道fifo缓冲器及其控制方法
CN103279309A (zh) 基于fpga的ddr控制装置及方法
CN102592665A (zh) 一种相变存储器的高速数据写入结构及写入方法
CN103309626A (zh) 实现网络芯片多读写端口存储器的方法及相应存储器
US5619514A (en) In-place present state/next state registers
CN102520902B (zh) 基于单片块ram的并行写入多fifo实现方法
CN110888601B (zh) 一种基于ram ip核的移位寄存器实现方法
CN101825997A (zh) 一种异步先入先出存储器
US7840885B2 (en) Distributed ring control circuits for Viterbi traceback
KR100840030B1 (ko) 프로그래머블 논리 회로
CN112949229A (zh) 超导高速存储器
CN103701450B (zh) 一种支持多值逻辑的三稳态rs触发器
CN103746940B (zh) 一种网络设备以及解包输出报文的方法
CN110837354B (zh) 基于三值逻辑运算器的msd并行加法器及其构造方法
CN102789424A (zh) 基于fpga的外扩ddr2的读写方法及基于fpga的外扩ddr2颗粒存储器
CN102510286B (zh) 变频采样方法
CN110097902B (zh) 针对同一端口的读写控制模块及方法、双端口存储器
CN103607207A (zh) 一种即插即用的多接口数据压缩设备
JP5499131B2 (ja) デュアルポートメモリおよびその方法
CN218100209U (zh) 多比特异步接口电路
RU2474871C1 (ru) Высокопараллельный спецпроцессор для решения задачи о выполнимости булевых формул
CN100571092C (zh) 扰码相位偏移中伪掩码寄存器生成方法
CN102684651A (zh) 用于数字电路的信号延迟方法、装置及数字电路系统
US5978295A (en) Sequential access memories
CN104733049A (zh) 使用ram单元实现的移位寄存器

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