CN116166178A - Basic storage unit management circuit and basic storage unit management method - Google Patents
Basic storage unit management circuit and basic storage unit management method Download PDFInfo
- Publication number
- CN116166178A CN116166178A CN202111412802.XA CN202111412802A CN116166178A CN 116166178 A CN116166178 A CN 116166178A CN 202111412802 A CN202111412802 A CN 202111412802A CN 116166178 A CN116166178 A CN 116166178A
- Authority
- CN
- China
- Prior art keywords
- storage unit
- basic storage
- idle
- bit
- buffer
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- 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)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
一种基本存储单元管理电路以及一种基本存储单元管理方法。该基本存储单元管理电路包含有一接收电路、一传输电路、一第一缓冲器以及一闲置基本存储单元控制器。第一缓冲器用以存储一位元表,其中位元表包含有多个第一位元,其分别对应多个基本存储单元,以及多个第一位元中的每一第一位元用以标示一相对应的基本存储单元是否为一闲置基本存储单元。闲置基本存储单元控制器耦接于接收电路、传输电路以及第一缓冲器,并且用以管理第一缓冲器所存储的位元表,以及依据位元表来处理对应接收电路所接收或传输电路所传输的至少一封包的至少一基本存储单元。
A basic storage unit management circuit and a basic storage unit management method. The basic storage unit management circuit includes a receiving circuit, a transmission circuit, a first buffer and an idle basic storage unit controller. The first buffer is used to store a bit table, wherein the bit table includes a plurality of first bits, which respectively correspond to a plurality of basic storage units, and each first bit in the plurality of first bits is used for Indicating whether a corresponding basic storage unit is an idle basic storage unit. The idle basic storage unit controller is coupled to the receiving circuit, the transmitting circuit and the first buffer, and is used to manage the bit table stored in the first buffer, and process the corresponding receiving circuit or transmitting circuit according to the bit table At least one basic storage unit of at least one packet transmitted.
Description
技术领域technical field
本发明涉及数据管理,特别涉及针对闲置(idle)基本存储单元(basic storageunit)的基本存储单元管理电路以及基本存储单元管理方法。The invention relates to data management, in particular to a basic storage unit management circuit and a basic storage unit management method for idle basic storage units.
背景技术Background technique
在传统的交换器(switch)、路由器(router)或媒体存取控制(media accesscontrol,MAC)中,一存储器,诸如静态随机存取存储器(static random access memory,SRAM),通常会被划分为多个基本存储单元,并且可利用多位元(multi-bit)的闲置基本存储单元链结列表(link list)来管理多个基本存储单元中的闲置基本存储单元,然而,一些问题可能会发生。由于在多位元的闲置基本存储单元链结列表中的一闲置基本存储单元的位址是被存储在前一个闲置基本存储单元中,因此有着多位元的闲置基本存储单元链结列表的一存储器(例如静态随机存取存储器)的大小可能会因为基本存储单元数量而增加,其可能会增加成本以及读取时间,此外,取得/释放(get/release)闲置基本存储单元的流通量(throughput)可能会被该存储器的频宽限制,因此,极需一种新颖的架构来取代闲置基本存储单元链结列表。In a traditional switch, router or media access control (MAC), a memory, such as a static random access memory (SRAM), is usually divided into multiple A basic storage unit, and a multi-bit (multi-bit) free basic storage unit link list (link list) can be used to manage idle basic storage units in a plurality of basic storage units, however, some problems may occur. Since the address of a free basic storage unit in the multi-bit free basic storage unit linked list is stored in the previous free basic storage unit, there is one part of the multi-bit free basic storage unit linked list. The size of memory (such as SRAM) may increase due to the number of basic storage units, which may increase cost and read time. In addition, the throughput of get/release (get/release) idle basic storage units ) may be limited by the bandwidth of the memory, therefore, a novel architecture is highly desired to replace the linked list of idle basic storage units.
发明内容Contents of the invention
因此,本发明的目的之一在于提供一种基本存储单元管理电路以及相关基本存储单元管理方法,以解决上述问题。Therefore, one object of the present invention is to provide a basic storage unit management circuit and a related basic storage unit management method to solve the above problems.
本发明的至少一实施例提供了一种基本存储单元管理电路,其中该基本存储单元管理电路可包含有一接收电路、一传输电路、一第一缓冲器以及一闲置基本存储单元控制器。第一缓冲器可用以存储一位元表,其中位元表包含有多个第一位元,其分别对应多个基本存储单元,以及多个第一位元中的每一第一位元用以标示一相对应的基本存储单元是否为一闲置基本存储单元。闲置基本存储单元控制器可耦接于接收电路、传输电路以及第一缓冲器,并且可用以管理第一缓冲器所存储的位元表,以及依据位元表来处理对应接收电路所接收或传输电路所传输的至少一封包的至少一基本存储单元,其中当多个基本存储单元的一基本存储单元是一闲置基本存储单元时,闲置基本存储单元控制器将该基本存储单元所对应的一第一位元设为一第一逻辑值;以及当多个基本存储单元的该基本存储单元不是闲置基本存储单元时,闲置基本存储单元控制器将该基本存储单元所对应的第一位元设为一第二逻辑值。At least one embodiment of the present invention provides a basic storage unit management circuit, wherein the basic storage unit management circuit may include a receiving circuit, a transmission circuit, a first buffer and an idle basic storage unit controller. The first buffer can be used to store a bit table, wherein the bit table includes a plurality of first bits, which respectively correspond to a plurality of basic storage units, and each first bit in the plurality of first bits is used for To indicate whether a corresponding basic storage unit is an idle basic storage unit. The idle basic storage unit controller can be coupled to the receiving circuit, the transmitting circuit and the first buffer, and can be used to manage the bit table stored in the first buffer, and process the received or transmitted data received by the corresponding receiving circuit according to the bit table. At least one basic storage unit of at least one packet transmitted by the circuit, wherein when a basic storage unit of the plurality of basic storage units is an idle basic storage unit, the idle basic storage unit controller assigns a first basic storage unit corresponding to the basic storage unit One bit is set to a first logical value; and when the basic storage unit of the plurality of basic storage units is not an idle basic storage unit, the idle basic storage unit controller sets the first bit corresponding to the basic storage unit to a second logical value.
本发明的至少一实施例提供了一种基本存储单元管理方法。该基本存储单元管理方法可包含有:存储一位元表,其中位元表包含有多个第一位元,其分别对应多个基本存储单元,以及多个第一位元中的每一第一位元用以指示一相对应基本存储单元是否为一闲置基本存储单元;以及使用一闲置基本存储单元控制器来依据位元表处理对应一接收电路所接收或一传输电路所传输的至少一封包的至少一基本存储单元,并且管理位元表,其中当多个基本存储单元的一基本存储单元是一闲置基本存储单元时,闲置基本存储单元控制器将该基本存储单元所对应的一第一位元设为一第一逻辑值,以及当多个基本存储单元的该基本存储单元不是闲置基本存储单元时,闲置基本存储单元控制器将该基本存储单元所对应的第一位元设为一第二逻辑值。At least one embodiment of the present invention provides a basic storage unit management method. The basic storage unit management method may include: storing a bit table, wherein the bit table includes a plurality of first bits, which respectively correspond to a plurality of basic storage units, and each of the plurality of first bits One bit is used to indicate whether a corresponding basic storage unit is an idle basic storage unit; and using an idle basic storage unit controller to process at least one corresponding to a receiving circuit received or a transmitting circuit transmitted according to the bit table Packet at least one basic storage unit, and manage the bit table, wherein when a basic storage unit of the plurality of basic storage units is an idle basic storage unit, the idle basic storage unit controller sets a first corresponding to the basic storage unit One bit is set to a first logical value, and when the basic storage unit of the plurality of basic storage units is not an idle basic storage unit, the idle basic storage unit controller sets the first bit corresponding to the basic storage unit to a second logical value.
本发明的好处之一是,本发明所提供的基本存储单元管理电路可以利用存储着位元表的存储器缓冲器以及暂存器缓冲器来管理闲置基本存储单元,基本存储单元管理电路的闲置基本存储单元控制器先从暂存器缓冲器的多个第二位元中找出具有第一逻辑值(例如1)的一目标第二位元来取得一读取位址,且根据读取位址来读取存储器缓冲器的位元表中的一目标有效闲置存储单元标示栏位,并自目标有效闲置存储单元标示栏位中找出具有第一逻辑值(例如1)的至少一个目标第一位元来取得至少一个闲置基本存储单元,如此一来,可以大幅地减少读取存储器缓冲器的时间,此外,为了减少存储器缓冲器的功率消耗以及节省存储器缓冲器的频宽,本发明还提供了一种基本存储单元管理电路,其包含有一释放基本存储单元缓冲器,其中释放基本存储单元缓冲器可用以减少存储器缓冲器的存取次数。One of the benefits of the present invention is that the basic storage unit management circuit provided by the present invention can utilize the memory buffer and the temporary register buffer storing the bit table to manage idle basic storage units, and the idle basic storage unit of the basic storage unit management circuit The storage unit controller first finds out a target second bit with a first logic value (for example, 1) from a plurality of second bits of the register buffer to obtain a read address, and according to the read bit address to read a target effective free storage unit flag field in the bit table of the memory buffer, and find out at least one target No. One bit is used to obtain at least one idle basic storage unit. In this way, the time for reading the memory buffer can be greatly reduced. In addition, in order to reduce the power consumption of the memory buffer and save the bandwidth of the memory buffer, the present invention also A basic storage unit management circuit is provided, which includes a free basic storage unit buffer, wherein the free basic storage unit buffer can be used to reduce the access times of the memory buffer.
附图说明Description of drawings
图1为依据本发明一实施例的存储器缓冲器中的位元以及暂存器缓冲器中的位元之间的对应关系的示意图。FIG. 1 is a schematic diagram of the corresponding relationship between bits in a memory buffer and bits in a register buffer according to an embodiment of the invention.
图2为依据本发明一实施例的基本存储单元管理电路的示意图。FIG. 2 is a schematic diagram of a basic storage unit management circuit according to an embodiment of the invention.
图3为依据本发明另一实施例的基本存储单元管理电路的示意图。FIG. 3 is a schematic diagram of a basic storage unit management circuit according to another embodiment of the invention.
图4为依据本发明一实施例的基本存储单元管理方法的流程图。FIG. 4 is a flow chart of a basic storage unit management method according to an embodiment of the invention.
符号说明Symbol Description
100,200,300:静态随机存取存储器缓冲器100,200,300: SRAM buffers
101,201,301:位元表101,201,301: bit table
110,210,310:暂存器缓冲器110,210,310: scratchpad buffer
a~d:有效闲置存储单元标示栏位a~d: valid idle storage unit flag field
e~h:第二位元e~h: the second digit
20,30:基本存储单元管理电路20,30: Basic storage unit management circuit
220,320:闲置基本存储单元控制器220,320: idle basic storage unit controller
230,330:接收电路230,330: receiving circuit
240,340:传输电路240,340: transmission circuit
350:释放基本存储单元缓冲器350: Free basic storage unit buffer
B10,B21,B22,B27:第一位元B10,B21,B22,B27: the first digit
S400,S402:步骤S400, S402: steps
具体实施方式Detailed ways
图1为依据本发明一实施例的存储器缓冲器中的位元以及暂存器缓冲器中的位元之间的对应关系的示意图。如图1所示,一存储器缓冲器(例如静态随机存取存储器缓冲器100;为简洁起见,在图1中标记为“SRAM缓冲器”)可用以存储一位元表101,其中位元表101可包含有32个第一位元(其分别对应至32个基本存储单元),以及32个第一位元中的每一个第一位元可用以标示一相对应的基本存储单元是否为一闲置基本存储单元,举例来说,当32个基本存储单元中的一基本存储单元是一闲置基本存储单元时,则该基本存储单元所对应的一第一位元是第一逻辑值(例如1);以及当32个基本存储单元中的一基本存储单元不是闲置基本存储单元时,则该基本存储单元所对应的一第一位元是第二逻辑值(例如0)。此外,为了节省读取存储器缓冲器的时间并且能更快速地找出闲置基本存储单元,可以将位元表以多个位元为单位来划分为多个有效闲置存储单元标示栏位(field),举例来说,位元表101中的MxN(例如MxN=32)个第一位元可以M(例如M=8)个位元为单位来划分为N(例如N=4)个有效闲置存储单元标示栏位(例如有效闲置存储单元标示栏位a~有效闲置存储单元标示栏位d)。FIG. 1 is a schematic diagram of the corresponding relationship between bits in a memory buffer and bits in a register buffer according to an embodiment of the invention. As shown in FIG. 1, a memory buffer (such as a static random
暂存器缓冲器110可用以存储4个第二位元(例如第二位元e~第二位元h,其分别对应至位元表101中的有效闲置存储单元标示栏位a~有效闲置存储单元标示栏位d),其中4个第二位元中的每一个第二位元可用以指示一相对应的有效闲置存储单元标示栏位中是否包含具有第一逻辑值(例如1)的至少一个第一位元(亦即指示相对应的有效闲置存储单元标示栏位中的8个第一位元所对应的8个基本存储单元中是否包含至少一个闲置基本存储单元)。当4个有效闲置存储单元标示栏位中的一有效闲置存储单元标示栏位包含具有第一逻辑值(例如1)的至少一个第一位元时,则该有效闲置存储单元标示栏位所对应的第二位元是第一逻辑值(例如1);以及当4个有效闲置存储单元标示栏位中的一有效闲置存储单元标示栏位所包含的所有第一位元均具有第二逻辑值(例如0)时(亦即该有效闲置存储单元标示栏位中的8个第一位元所对应的8个基本存储单元中没有闲置基本存储单元),则该有效闲置存储单元标示栏位所对应的第二位元是第二逻辑值(例如0)。举例来说,由于位元表101中的有效闲置存储单元标示栏位a包含有4个具有第一逻辑值(例如1)的第一位元,因此有效闲置存储单元标示栏位a所对应的第二位元e是第一逻辑值(例如1)。又例如,由于位元表101中的有效闲置存储单元标示栏位c所包含的所有第一位元均具有第二逻辑值(例如0),因此有效闲置存储单元标示栏位c所对应的第二位元g是第二逻辑值(例如0)。The
图2为依据本发明一实施例的基本存储单元管理电路20的示意图。如图2所示,基本存储单元管理电路20可包含有一存储器缓冲器(例如静态随机存取存储器缓冲器200;为简洁起见,在图2中标记为“SRAM缓冲器”)、暂存器缓冲器210、闲置基本存储单元控制器220、接收电路230以及传输电路240,其中静态随机存取存储器缓冲器200以及暂存器缓冲器210可分别由图1所示的静态随机存取存储器缓冲器100以及暂存器缓冲器110来实现。静态随机存取存储器缓冲器200可用以存储一位元表201,本实施例中,位元表201可包含有32个第一位元(其分别对应至32个基本存储单元),以及位元表201中的32个第一位元可以8个位元为单位来划分为4个有效闲置存储单元标示栏位(例如有效闲置存储单元标示栏位a~有效闲置存储单元标示栏位d),然而,此仅作为范例说明,而非本发明的限制条件,实作上,位元表201的大小以及有效闲置存储单元标示栏位划分可根据需求来调整。暂存器缓冲器210可用以存储4个第二位元(例如第二位元e~第二位元h,其分别对应至位元表201中的有效闲置存储单元标示栏位a~有效闲置存储单元标示栏位d),然而,此仅作为范例说明,而非本发明的限制条件,实作上,暂存器缓冲器210所存储的第二位元的个数会取决于位元表201的有效闲置存储单元标示栏位个数。为简洁起见,于本实施例中针对静态随机存取存储器缓冲器200以及暂存器缓冲器210的类似内容在此不重复赘述。FIG. 2 is a schematic diagram of a basic storage
闲置基本存储单元控制器220可耦接于静态随机存取存储器缓冲器200、接收电路230以及传输电路240,并且可用以管理静态随机存取存储器缓冲器200所存储的位元表201,以及依据位元表201来处理对应接收电路230所接收或传输电路240所传输的至少一封包的至少一基本存储单元,其中当位元表201的32个第一位元所对应的32个基本存储单元中的一基本存储单元是闲置基本存储单元时,闲置基本存储单元控制器220可将该基本存储单元所对应的第一位元设为第一逻辑值(例如1);以及当位元表201的32个第一位元所对应的32个基本存储单元中的一基本存储单元不是闲置基本存储单元时,闲置基本存储单元控制器220可将该基本存储单元所对应的第一位元设为第二逻辑值(例如0)。此外,闲置基本存储单元控制器220另可耦接于暂存器缓冲器210,其中当位元表201的4个有效闲置存储单元标示栏位中的一有效闲置存储单元标示栏位包含具有第一逻辑值(例如1)的至少一个第一位元时,闲置基本存储单元控制器220可将该有效闲置存储单元标示栏位所对应的第二位元设为第一逻辑值(例如1);以及当位元表201的4个有效闲置存储单元标示栏位中的一有效闲置存储单元标示栏位所包含的所有第一位元均具有第二逻辑值(例如0)时,闲置基本存储单元控制器220可将该有效闲置存储单元标示栏位所对应的第二位元设为第二逻辑值(例如0)。The idle basic
当接收电路230接收到一接收封包时,闲置基本存储单元控制器220可通过静态随机存取存储器缓冲器200以及暂存器缓冲器210来取得至少一个闲置基本存储单元以供暂存该接收封包,举例来说,闲置基本存储单元控制器220会先自暂存器缓冲器210的4个第二位元(例如第二位元e~第二位元h)中找出具有第一逻辑值(例如1)的一目标第二位元(例如第二位元e、第二位元f或第二位元h)来取得一读取位址,并且根据该读取位址来读取静态随机存取存储器缓冲器200的位元表201中的一目标有效闲置存储单元标示栏位(例如对应于第二位元e的有效闲置存储单元标示栏位a、对应于第二位元f的有效闲置存储单元标示栏位b或对应于第二位元h的有效闲置存储单元标示栏位d),最后再自该目标有效闲置存储单元标示栏位中找出具有第一逻辑值(例如1)的至少一个目标第一位元来取得至少一个闲置基本存储单元。When the
应注意的是,在该至少一个闲置基本存储单元被用来暂存该接收封包之后,闲置基本存储单元控制器220还可用以将对应于该至少一个闲置基本存储单元的该至少一个目标第一位元从第一逻辑值(例如1)更新为第二逻辑值(例如0),此外,当闲置基本存储单元控制器220更新完对应于该至少一个闲置基本存储单元的该至少一个目标第一位元之后,包含有该至少一个目标第一位元的该目标有效闲置存储单元标示栏位内所有的第一位元均具有第二逻辑值(例如0)时,闲置基本存储单元控制器220还可用以将暂存器缓冲器210中对应于该目标有效闲置存储单元标示栏位的第二位元从第一逻辑值(例如1)更新为第二逻辑值(例如0),另一方面,当闲置基本存储单元控制器220更新完对应于该至少一个闲置基本存储单元的该至少一个目标第一位元之后,包含有该至少一个目标第一位元的该目标有效闲置存储单元标示栏位内仍包含具有第一逻辑值(例如1)的至少一个第一位元时,闲置基本存储单元控制器220可另用以将暂存器缓冲器210中对应于该目标有效闲置存储单元标示栏位的第二位元维持为第一逻辑值(例如1)。闲置基本存储单元控制器220可通过管线(pipeline)的方式来实现对于静态随机存取存储器缓冲器200的位元表中的32个第一位元以及暂存器缓冲器210的4个第二位元的更新,但是本发明不限于此。It should be noted that, after the at least one idle basic storage unit is used to temporarily store the received packet, the idle basic
当传输电路240传输一传输封包完毕时,传输电路240释放(release)对应于该传输封包的至少一个基本存储单元至闲置基本存储单元控制器220,闲置基本存储单元控制器220可用以根据该传输封包的该至少一个基本存储单元来将静态随机存取存储器缓冲器200的位元表201中的至少一个目标有效闲置存储单元标示栏位中的至少一个目标第一位元由第二逻辑值(例如0)更新为第一逻辑值(例如1),也就是说,对应于该至少一个目标第一位元的至少一个基本存储单元是至少一个闲置基本存储单元。此外,在原本的至少一个目标有效闲置存储单元标示栏位中的至少一个目标第一位元均具有第二逻辑值(例如0)的情况下(亦即原本的至少一个目标有效闲置存储单元标示栏位中不具有闲置基本存储单元),当闲置基本存储单元控制器220更新完该至少一个目标第一位元之后,包含有该至少一个目标第一位元的该至少一个目标有效闲置存储单元标示栏位内包含具有第一逻辑值(例如1)的至少一个第一位元时,闲置基本存储单元控制器220还可用以将暂存器缓冲器210中对应于该至少一个目标有效闲置存储单元标示栏位的至少一个第二位元从第二逻辑值(例如0)更新为第一逻辑值(例如1),另一方面,在原本的至少一个目标有效闲置存储单元标示栏位中已经包含具有第一逻辑值(例如1)的至少一个第一位元的情况下(亦即原本的至少一个目标有效闲置存储单元标示栏位中已经具有闲置基本存储单元),闲置基本存储单元控制器220可还用以将暂存器缓冲器210中对应于该至少一个目标有效闲置存储单元标示栏位的至少一个第二位元维持为第一逻辑值(例如1)。When the
此外,为了减少存储器缓冲器的功率消耗以及节省存储器缓冲器的频宽,可利用一释放基本存储单元缓冲器来减少存储器缓冲器的存取次数,图3为依据本发明另一实施例的基本存储单元管理电路30的示意图。如图3所示,基本存储单元管理电路30可包含有一存储器缓冲器(例如静态随机存取存储器缓冲器300;为简洁起见,在图3中标记为“SRAM缓冲器”)、暂存器缓冲器310、闲置基本存储单元控制器320、接收电路330、传输电路340以及释放基本存储单元缓冲器350,其中图3所示的基本存储单元管理电路30与图2所示的基本存储单元管理电路20的不同之处在于基本存储单元管理电路30可还包含有释放基本存储单元缓冲器350。释放基本存储单元缓冲器350可耦接于闲置基本存储单元控制器320以及传输电路340,并且可用以暂存传输电路340传输一传输封包完毕时所释放的对应于传输封包的至少一个基本存储单元,其中闲置基本存储单元控制器320可自释放基本存储单元缓冲器350取得对应于传输封包的至少一个基本存储单元来作为闲置基本存储单元。如此一来,当接收电路330接收一接收封包时,闲置基本存储单元控制器320可预先读取释放基本存储单元缓冲器350中所暂存的对应于传输封包的至少一个基本存储单元,以供接收封包使用,而无需通过静态随机存取存储器缓冲器300以及暂存器缓冲器310来取得闲置基本存储单元(其减少了静态随机存取存储器缓冲器300的存取次数)。In addition, in order to reduce the power consumption of the memory buffer and save the bandwidth of the memory buffer, a free basic storage unit buffer can be used to reduce the number of access times of the memory buffer. FIG. 3 is a basic memory buffer according to another embodiment of the present invention. A schematic diagram of the memory
在本实施例中,释放基本存储单元缓冲器350中暂存了静态随机存取存储器缓冲器300中对应于第一位元B10的闲置基本存储单元(其以十进制值为10的5位元来暂存至释放基本存储单元缓冲器350中,并且在图3中标记为“5’d10”)、对应于第一位元B21的闲置基本存储单元(其以十进制值为21的5位元来暂存至释放基本存储单元缓冲器350中,并且在图3中标记为“5’d21”)、对应于第一位元B22的闲置基本存储单元(其以十进制值为22的5位元来暂存至释放基本存储单元缓冲器350中,并且在图3中标记为“5’d22”)以及对应于第一位元B27的闲置基本存储单元(其以十进制值为27的5位元来暂存至释放基本存储单元缓冲器350中,并且在图3中标记为“5’d27”)。应注意的是,当释放基本存储单元缓冲器350中所暂存的对应于传输封包的至少一个基本存储单元皆被占用(亦即释放基本存储单元缓冲器350中没有闲置基本存储单元)时,闲置基本存储单元控制器320可自暂存器缓冲器310的4个第二位元中找出具有第一逻辑值(例如1)的一目标第二位元来取得一读取位址,且根据读取位址来读取静态随机存取存储器缓冲器300的位元表301中的一目标有效闲置存储单元标示栏位,并自目标有效闲置存储单元标示栏位中找出具有第一逻辑值(例如1)的至少一个目标第一位元来取得至少一个闲置基本存储单元,以供接收封包使用。换言之,若释放基本存储单元缓冲器350具有闲置基本存储单元可供使用,则闲置基本存储单元控制器320会优先读取释放基本存储单元缓冲器350,若无法自释放基本存储单元缓冲器350取得所要的闲置基本存储单元,闲置基本存储单元控制器320再通过暂存器缓冲器310以及静态随机存取存储器缓冲器300来取得闲置基本存储单元。In this embodiment, the idle basic storage unit corresponding to the first bit B10 in the SRAM buffer 300 (which is represented by 5 bits whose decimal value is 10) is temporarily stored in the basic
于上述实施例中,闲置基本存储单元控制器220(或闲置基本存储单元控制器320)可通过暂存器缓冲器210(或暂存器缓冲器310)所存储的第二位元来快速地自静态随机存取存储器缓冲器200(或静态随机存取存储器缓冲器300)的位元表中找到标示闲置基本存储单元的第一位元,然而,暂存器缓冲器可以是选择性(optional)元件,举例来说,于本发明的一些实施例中,数据管理电路20(或数据管理电路30)可省略暂存器缓冲器210(或暂存器缓冲器310),而直接于静态随机存取存储器缓冲器200(或静态随机存取存储器缓冲器300)的位元表中进行搜索来找到标示闲置基本存储单元的第一位元。综上所述,任何采用位元表所记录的位元来标示相对应基本存储单元是否为闲置基本存储单元的数据管理电路均落入本发明的范围。In the above-mentioned embodiment, the idle basic storage unit controller 220 (or the idle basic storage unit controller 320) can quickly use the second bit stored in the register buffer 210 (or the register buffer 310) From the bit table of the SRAM buffer 200 (or the SRAM buffer 300), find the first bit indicating a free basic storage unit, however, the scratchpad buffer may be optional ) components, for example, in some embodiments of the present invention, the data management circuit 20 (or the data management circuit 30) can omit the register buffer 210 (or the register buffer 310), and directly A search is performed in the bit table of the RAM buffer 200 (or the SRAM buffer 300 ) to find the first bit indicating a free basic memory unit. To sum up, any data management circuit that uses the bits recorded in the bit table to indicate whether the corresponding basic storage unit is an idle basic storage unit falls within the scope of the present invention.
图4为依据本发明一实施例的基本存储单元管理方法的流程图。假若可以得到相同的结果,则步骤不一定要完全遵照图4所示的流程来按序执行,举例来说,于图4所示的基本存储单元管理方法可由图2所示的数据管理电路20或图3所示的数据管理电路30来加以实现。FIG. 4 is a flow chart of a basic storage unit management method according to an embodiment of the invention. If the same result can be obtained, the steps do not have to be executed sequentially according to the flow shown in FIG. 4. For example, the basic storage unit management method shown in FIG. Or the
在步骤S400中,静态随机存取存储器缓冲器可存储一位元表,其中位元表可包含有多个第一位元,其分别对应于多个基本存储单元,以及多个第一位元中的每一个第一位元可用以标示相对应的基本存储单元是否为一闲置基本存储单元。In step S400, the static random access memory buffer can store a bit table, wherein the bit table can include a plurality of first bits, which respectively correspond to a plurality of basic storage units, and a plurality of first bits Each first bit in can be used to indicate whether the corresponding basic storage unit is an idle basic storage unit.
在步骤S402中,可使用一闲置基本存储单元控制器来管理位元表,并且依据位元表处理对应一接收电路所接收或一传输电路所传输的至少一封包的至少一基本存储单元,其中当多个基本存储单元的一基本存储单元是一闲置基本存储单元时,闲置基本存储单元控制器可将该基本存储单元所对应的一第一位元设为一第一逻辑值,以及当多个基本存储单元的该基本存储单元不是闲置基本存储单元时,闲置基本存储单元控制器可将该基本存储单元所对应的第一位元设为一第二逻辑值。In step S402, an idle basic storage unit controller may be used to manage the bit table, and at least one basic storage unit corresponding to at least one packet received by a receiving circuit or transmitted by a transmitting circuit is processed according to the bit table, wherein When a basic storage unit of the plurality of basic storage units is an idle basic storage unit, the idle basic storage unit controller may set a first bit corresponding to the basic storage unit to a first logic value, and when the plurality of basic storage units When the basic storage unit of the basic storage units is not an idle basic storage unit, the idle basic storage unit controller can set the first bit corresponding to the basic storage unit to a second logical value.
由于技术人员可通过上述说明书内容而轻易了解图4所示各步骤的操作,为了简洁起见,于本实施例中类似的内容在此不重复赘述。Since a skilled person can easily understand the operation of each step shown in FIG. 4 through the content of the above description, for the sake of brevity, the similar content in this embodiment will not be repeated here.
以上所述仅为本发明的优选实施例,凡依本发明权利要求所做的均等变化与修饰,皆应属本发明的涵盖范围。The above descriptions are only preferred embodiments of the present invention, and all equivalent changes and modifications made according to the claims of the present invention shall fall within the scope of the present invention.
Claims (10)
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202111412802.XA CN116166178A (en) | 2021-11-25 | 2021-11-25 | Basic storage unit management circuit and basic storage unit management method |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202111412802.XA CN116166178A (en) | 2021-11-25 | 2021-11-25 | Basic storage unit management circuit and basic storage unit management method |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN116166178A true CN116166178A (en) | 2023-05-26 |
Family
ID=86411874
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202111412802.XA Pending CN116166178A (en) | 2021-11-25 | 2021-11-25 | Basic storage unit management circuit and basic storage unit management method |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN116166178A (en) |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100211755A1 (en) * | 2009-02-13 | 2010-08-19 | Huawei Technologies Co., Ltd. | Method and apparatus for allocating storage addresses |
| US20120278530A1 (en) * | 2011-04-28 | 2012-11-01 | Seagate Technology Llc | Enforcing system intentions during memory scheduling |
| CN112825063A (en) * | 2019-11-20 | 2021-05-21 | 瑞昱半导体股份有限公司 | Joint test work group transmission system |
-
2021
- 2021-11-25 CN CN202111412802.XA patent/CN116166178A/en active Pending
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20100211755A1 (en) * | 2009-02-13 | 2010-08-19 | Huawei Technologies Co., Ltd. | Method and apparatus for allocating storage addresses |
| US20120278530A1 (en) * | 2011-04-28 | 2012-11-01 | Seagate Technology Llc | Enforcing system intentions during memory scheduling |
| CN112825063A (en) * | 2019-11-20 | 2021-05-21 | 瑞昱半导体股份有限公司 | Joint test work group transmission system |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI744457B (en) | Method for accessing metadata in hybrid memory module and hybrid memory module | |
| US6502163B1 (en) | Method and apparatus for ordering entries in a ternary content addressable memory | |
| US11563683B2 (en) | SRv6 with micro segment identifiers | |
| JP2013507022A (en) | Method for processing data packets within a flow-aware network node | |
| US7082499B2 (en) | External memory control device regularly reading ahead data from external memory for storage in cache memory, and data driven type information processing apparatus including the same | |
| JP2005198285A (en) | Apparatus and method for using hashing to efficiently implement an IP lookup solution in hardware | |
| US20070028033A1 (en) | Method for identifying data characteristics for flash memory | |
| JP2001216194A (en) | Arithmetic processing unit | |
| US7694068B1 (en) | Re-entrant processing in a content addressable memory | |
| US8694707B2 (en) | Memory data transfer method and system | |
| CN100487815C (en) | Method and system for maximizing DRAM memory bandwidth | |
| CN116166178A (en) | Basic storage unit management circuit and basic storage unit management method | |
| US8363653B2 (en) | Packet forwarding method and device | |
| US7154892B2 (en) | Method and apparatus for managing LPM-based CAM look-up table, and recording medium therefor | |
| US7555593B1 (en) | Simultaneous multi-threading in a content addressable memory | |
| TWI769111B (en) | Basic storage unit management circuit and basic storage unit management method | |
| CN104125169B (en) | Chain table processing device, chain table processing method and related network switch | |
| US20130235235A1 (en) | Data transfer apparatus and data transfer method | |
| CN101425962B (en) | Packet forwarding method and apparatus | |
| US20110179236A1 (en) | Memory Block Reclaiming Judging Apparatus and Memory Block Managing System | |
| US7818476B2 (en) | Direct memory access controller with dynamic data transfer width adjustment, method thereof, and computer accessible storage media | |
| JP2006246488A (en) | Network router, address processing method, and computer program | |
| US20190163640A1 (en) | Bandwidth efficient techniques for enabling tagged memories | |
| US7783796B2 (en) | Method for releasing data of storage apparatus | |
| US7167942B1 (en) | Dynamic random access memory controller |
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 |