CN108958700A - A kind of first in first out data buffer and data cached method - Google Patents
A kind of first in first out data buffer and data cached method Download PDFInfo
- Publication number
- CN108958700A CN108958700A CN201710363495.8A CN201710363495A CN108958700A CN 108958700 A CN108958700 A CN 108958700A CN 201710363495 A CN201710363495 A CN 201710363495A CN 108958700 A CN108958700 A CN 108958700A
- Authority
- CN
- China
- Prior art keywords
- control unit
- data
- unit
- cache unit
- cache
- 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
- 239000000872 buffer Substances 0.000 title claims abstract description 56
- 238000000034 method Methods 0.000 title claims abstract description 15
- 238000000151 deposition Methods 0.000 claims description 3
- 102000054766 genetic haplotypes Human genes 0.000 abstract description 4
- 230000005540 biological transmission Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods 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/065—Partitioned 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)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
The invention discloses a kind of first in first out data buffer and data cached methods, including the first cache unit, the second cache unit, third cache unit, first control unit, the second control unit and switch unit;The second cache unit is written for reading the data of the first cache unit in first control unit;Third cache unit is written for reading the data of the first cache unit in second control unit;When the second cache unit is non-full, the data of third cache unit are read, the second cache unit is written;Switch unit, for obtaining state, the read-write state of the second control unit and the state data memory of the first cache unit and the second cache unit of input port;According to the state of acquisition, first control unit or the second control unit are opened/closed.The present invention realizes that third cache unit can effectively reduce the area of chip by switch unit switch data access by using the single port RAM of more haplotype data bit wides, reduces the cost of chip.
Description
Technical field
The present invention relates to Data cache technology field more particularly to a kind of first in first out data buffers and data cached
Method.
Background technique
First in first out (FIFO, First In First Out) data buffer is due to having first in first out, balance input
The characteristics such as processing speed are exported, are had a wide range of applications in Design of Digital Integrated Circuit, are mainly used to match different transmission speed
Data transmission between degree.
According to the clock domain that FIFO works, FIFO can be divided for synchronization fifo and asynchronous FIFO.When the reading of synchronization fifo
Clock is the same clock with clock is write, and comes interim on clock edge while read-write operation occurs;The read-write clock of asynchronous FIFO is different
It causes, read-write clock is independent of each other.
Currently, synchronization fifo is widely applied in the design of all kinds of chips, in the design of existing chip usually using register or
Pseudo-double port/dual-port random access memory (Ramdom Access Memory, RAM) realizes synchronization fifo, works as storage
When bit is less, realized using register advantageous on area;When stored bits are more, realize have on area with RAM
Advantage.As shown in Figure 1, a kind of existing large capacity synchronization fifo includes input port, output port, writes control unit, reads control
Unit and pseudo-double port ram cell processed, reads control unit and writes control unit to be written and read and produce for generating read/write address
Raw empty full signal is supplied to peripheral interface.FIFO shown in FIG. 1 is a typical synchronization fifo, due to needing while being read
It writes, this FIFO uses pseudo-double port RAM.
Summary of the invention
In order to solve the above-mentioned technical problems, the present invention provides a kind of first in first out data buffer and data cached sides
Method can reduce the area of synchronization fifo.
In order to reach the object of the invention, the technical solution of the embodiment of the present invention is achieved in that
The embodiment of the invention provides a kind of first in first out data buffers, including input port, output port, further include
First cache unit, the second cache unit, third cache unit, first control unit, the second control unit and switch unit,
In:
First cache unit, for storing the data inputted by input port;
Second cache unit, for storing the data exported by output port;
The third cache unit is the single port random access memory that data bit width is DW*n, passes through second for storing
The data of control unit input or output, the n are the natural number more than or equal to 2, and DW is first in first out data buffer
Data bit width;
The first control unit for reading the data of the first cache unit, and is written in the second cache unit;
Second control unit for reading the data of the first cache unit, and is written in third cache unit;When
When the state data memory of two cache units is non-full state, the data of third cache unit are read, and it is single that the second caching is written
In member;
The switch unit, for obtaining state, the reading and writing data state of the second control unit and of input port
The state data memory of one cache unit and the second cache unit;And according to the state of acquisition, opens first control unit and close
The second control unit is closed, or closes first control unit and opens the second control unit.
Further, the switch unit opens first control unit and closes the second control list according to the state of acquisition
Member, or close first control unit and open the second control unit, it specifically includes:
After the first in first out data buffer powers on, opens the first control unit and close the second control list
Member;
When the state data memory of first cache unit and second cache unit is full state and current defeated
When inbound port has data input, closes the first control unit and open second control unit;
When the data reading that the state data memory of second cache unit is non-full state and second control unit
When write state is dummy status, opens the first control unit and close second control unit.
Further, second control unit includes writing control unit, read-write arbitration unit and reading control unit,
In,
Described to write control unit, for generating write signal, the write signal is used to read the number of first cache unit
According to, and be written in the third cache unit;
The reading control unit, for obtaining the state data memory of second cache unit, when second caching
When the state data memory of unit is non-full state, read signal is generated, the read signal is for reading the third cache unit
Data, and be written in second cache unit;
The read-write arbitration unit, for generation read signal and write signal arbitrate.
Further, first cache unit is the register that data bit width is DW, storage depth is (n-1).
Further, the third cache unit is that the single port that data bit width is DW*2, storage depth is MD/2 is deposited at random
Access to memory, the MD are the storage depth of first in first out data buffer;First cache unit be data bit width be DW,
The register that storage depth is 1.
Further, second cache unit is the register that data bit width is DW, storage depth is 4.
The embodiment of the invention also provides a kind of data cached methods, include the following steps:
First in first out data buffer receives the data of input port write-in, stores to the first cache unit;
First in first out data buffer obtains the state of input port, the reading and writing data state of the second control unit and the
The state data memory of one cache unit and the second cache unit;According to the state of acquisition, opens first control unit and close
Second control unit, or close first control unit and open the second control unit;
When opening first control unit and closing the second control unit, first in first out data buffer reads the first caching
The data of unit, and be written in the second cache unit;
When closing first control unit and opening the second control unit, first in first out data buffer reads the first caching
The data of unit, and be written in third cache unit, the third cache unit is that the single port that data bit width is DW*n is deposited at random
Access to memory, the n are the natural number more than or equal to 2, and DW is the data bit width of first in first out data buffer;When second slow
When the state data memory of memory cell is non-full state, the data of third cache unit are read, and be written in the second cache unit;
The first in first out data buffer reads the data stored in the second cache unit by output port.
Further, the state according to acquisition opens first control unit and closes the second control unit, Huo Zheguan
The step of closing first control unit and opening the second control unit, specifically includes:
After the first in first out data buffer powers on, opens the first control unit and close the second control list
Member;
When the state data memory of first cache unit and second cache unit is full state and input terminal
When mouth has data input, closes the first control unit and open second control unit;
When the data reading that the state data memory of second cache unit is non-full state and second control unit
When write state is dummy status, opens the first control unit and close second control unit.
Further, the third cache unit is that the single port that data bit width is DW*2, storage depth is MD/2 is deposited at random
Access to memory, the MD are the storage depth of first in first out data buffer;First cache unit be data bit width be DW,
The register that storage depth is 1.
Further, second cache unit is the register that data bit width is DW, storage depth is 4.
Technical solution of the present invention has the following beneficial effects:
First in first out data buffer provided by the invention and data cached method, by using more haplotype data bit wides
Single port RAM time-sharing multiplex, and by the state of switch unit control first control unit and the second control unit, and then switch number
According to transmission channel, the area of chip is efficiently reduced, reduces the cost of chip, improves the competitiveness of chip.
Detailed description of the invention
The drawings described herein are used to provide a further understanding of the present invention, constitutes part of this application, this hair
Bright illustrative embodiments and their description are used to explain the present invention, and are not constituted improper limitations of the present invention.In the accompanying drawings:
Fig. 1 is traditional large capacity synchronization fifo structural schematic diagram;
Fig. 2 is a kind of structural schematic diagram of first in first out data buffer of first embodiment of the invention;
Fig. 3 is a kind of structural schematic diagram of first in first out data buffer of second embodiment of the invention;
Fig. 4 is the flow diagram of the data cached method of one kind of the embodiment of the present invention.
Specific embodiment
To make the objectives, technical solutions, and advantages of the present invention clearer, below in conjunction with attached drawing to the present invention
Embodiment be described in detail.It should be noted that in the absence of conflict, in the embodiment and embodiment in the application
Feature can mutual any combination.
As shown in Fig. 2, a kind of first in first out data buffer according to the present invention, including input port, output port, also
It is single including the first cache unit, the second cache unit, third cache unit, first control unit, the second control unit and switching
Member, in which:
First cache unit, for storing the data inputted by input port;
Second cache unit, for storing the data exported by output port;
The third cache unit is the single port random access memory that data bit width is DW*n, passes through second for storing
The data of control unit input or output, the n are the natural number more than or equal to 2, and DW is first in first out data buffer
Data bit width;
The first control unit for reading the data of the first cache unit, and is written in the second cache unit;
Second control unit for reading the data of the first cache unit, and is written in third cache unit;When
When the state data memory of two cache units is non-full state, the data of third cache unit are read, and it is single that the second caching is written
In member;
The switch unit, for obtaining state, the reading and writing data state of the second control unit and of input port
The state data memory of one cache unit and the second cache unit;And according to the state of acquisition, opens first control unit and close
The second control unit is closed, or closes first control unit and opens the second control unit.
It should be noted that the first control unit and the second control unit are in the data for reading the first cache unit
Before, first obtain the state data memory of the first cache unit, the data storage shape of the state of input port and the second cache unit
State, when switch unit opening first control unit and (i.e. data transmission path is input port, first to the second control unit of closing
Cache unit, first control unit, the second cache unit, output port) when, if the state data memory of the first cache unit is
Non-empty, and the state data memory of the second cache unit is non-full, generation read/write address and read-write reading the first caching list
The data of member are write in the second cache unit;It closes first control unit when switch unit and opens the second control unit and (count
It is input port, the first cache unit, the second control unit, third cache unit, the second control unit, second according to transmission channel
Cache unit, output port) when, if the state data memory of the first cache unit has data input for full, input port, produce
Raw read/write address and read-write read the data of the first cache unit, are written in third cache unit.First control is single
Member, the second control unit and switch unit can be realized by existing combination and sequential logical circuit.
Further, the switch unit opens first control unit and closes the second control list according to the state of acquisition
Member, or close first control unit and open the second control unit, it specifically includes:
After the first in first out data buffer powers on, opens the first control unit and close the second control list
Member;
When the state data memory of the first cache unit and the second cache unit is full state and input port has data
When input, closes first control unit and open the second control unit;
When the reading and writing data state that the state data memory of the second cache unit is non-full state and the second control unit is
When dummy status, opens first control unit and close the second control unit.
In an embodiment of the present invention, after first in first out data buffer electrification reset, switch unit opens the first control
Unit simultaneously closes the second control unit, the data of input is read from the first cache unit, and be written in the second cache unit, this
When output port may be dummy status, it is also possible to be non-null states, when the second cache unit do not write it is full before, all the time by the
One control unit reads and writes data;
After the second cache unit is write completely, the data newly inputted are first cached in the first cache unit;
If there are also data to input, switch unit generates channel switching signal, closes first control unit and opens
Second control unit, reads the data of the first cache unit, and is written in third cache unit;
The state data memory for obtaining the second cache unit, when having data space in the second cache unit, the
Two control units read data from third cache unit, and the data of reading are written in the second cache unit;
When the data in third cache unit are all run through and do not have data to write in third cache unit at this time, cut
Change unit generate channel switching signal, open first control unit simultaneously close the second control unit, then continue according to storage and
Input condition repeats above judgement and channel switching automatically.
Further, with reference to Fig. 3, second control unit includes writing control unit, read-write arbitration unit and reading to control
Unit, wherein
Control unit is write, for generating write signal, the write signal is used to read the data of the first cache unit, and is written
In third cache unit;
Control unit is read, for obtaining the state data memory of second cache unit, when the second state data memory
When for non-full state, read signal is generated, the read signal is used to read the data of third cache unit, and it is single that the second caching is written
In member;
Read and write arbitration unit, for generation read signal and write signal arbitrate, to avoid to third cache unit
Read/write conflict.
It is worth noting that third cache unit of the invention uses more times since single port RAM can not be written and read simultaneously
The single port RAM time-sharing multiplex of data bit width (data of the more haplotype data bit wides of 1 clock cycle Writing/Reading), is read and write using timeslice
Data exchange the time for bit wide, solve the problems, such as FIFO while needing to read and write.Two parts logic is read and write additionally, due to single port RAM
Be it is independent, can lead to the problem of read/write conflict, read-write arbitration unit is introduced in the present invention to solve the problems, such as read/write conflict.
Further read-write arbitration unit, which uses, writes preference strategy.
Further, the switch unit writes the reading and writing data state of control unit and reading control unit by acquisition to obtain
The reading and writing data state for taking second control unit, when the reading and writing data state for writing control unit is full state, the second control
The reading and writing data state of unit processed is full state (at this point, the state data memory of third cache unit is also full state);Work as reading
When the reading and writing data state of control unit is dummy status, the reading and writing data state of the second control unit is dummy status (at this point, third
The reading and writing data state of cache unit is also dummy status).
Further, it with reference to Fig. 3, is equipped between second cache unit and first control unit, the second control unit
Data selector, the data selector are used for the state according to first control unit and the second control unit, from the first control
The data of the second cache unit of selection write-in in unit or the second control unit.
Further, first cache unit is the register that data bit width is DW, storage depth is (n-1).
It should be noted that buffer memory capacity is equal to the product of data bit width and storage depth, the data bit width, storage are deep
Degree respectively refers to the number of bits of write-once or reading, can at most store the data volume of how many a data bit widths.
In an of the invention specific embodiment, the third cache unit be data bit width be DW*2, storage depth MD/
2 single port random access memory ram, the MD are the storage depth of first in first out data buffer;First cache unit is
The register that data bit width is DW, storage depth is 1.
In the of the invention specific embodiment, second cache unit be data bit width be DW, storage depth is 4 to post
Storage.
Specifically, due to the data bit width of the second cache unit is DW and the bit wide of third cache unit single port RAM is DW*
2, therefore can guarantee that at least one is used to read data from RAM in two clock cycle;Due to depositing for the second cache unit
Storing up depth is 4, and data can be read with the speed of 1 clock cycle, two DW data bit widths, and be write in the second cache unit,
In this way in the case where input terminal no data, data quickly removing from third cache unit to the second cache unit may be implemented
Fortune saves the time to guarantee access control unit in switch data circulation road, and the data of first in first out data buffer export
Continuity.
As shown in figure 4, the method that one kind according to the present invention is data cached, includes the following steps:
Step 401: first in first out data buffer receives the data of input port write-in, stores to the first cache unit;
Step 402: first in first out data buffer obtains the reading and writing data shape of the state of input port, the second control unit
The state data memory of state and the first cache unit and the second cache unit;
Step 403: according to the state of acquisition, opening first control unit and simultaneously close the second control unit, or close the
One control unit simultaneously opens the second control unit;
When opening first control unit and closing the second control unit, first in first out data buffer reads the first caching
The data of unit, and be written in the second cache unit;
When closing first control unit and opening the second control unit, first in first out data buffer reads the first caching
The data of unit, and be written in third cache unit, the third cache unit is that the single port that data bit width is DW*n is deposited at random
Access to memory, the n are the natural number more than or equal to 2, and DW is the data bit width of first in first out data buffer;When second slow
When the state data memory of memory cell is non-full state, the data of third cache unit are read, and be written in the second cache unit;
Step 404: first in first out data buffer reads the data stored in the second cache unit by output port.
Further, it according to the state of acquisition in the step 403, opens first control unit and closes the second control list
Member, or the step of closing first control unit and opening the second control unit, specifically include:
After the first in first out data buffer powers on, opens the first control unit and close the second control list
Member;
When the state data memory of the first cache unit and the second cache unit is full state and input port has data
When input, closes first control unit and open the second control unit;
When the reading and writing data state that the state data memory of the second cache unit is non-full state and the second control unit is
When dummy status, opens first control unit and close the second control unit.
In an embodiment of the present invention, after first in first out data buffer electrification reset, switch unit opens the first control
Unit simultaneously closes the second control unit, the data of input is read from the first cache unit, and be written in the second cache unit, this
When output port may be dummy status, it is also possible to be non-null states, when the second cache unit do not write it is full before, all the time by the
One control unit reads and writes data;
After the second cache unit is write completely, the data newly inputted are first cached in the first cache unit;
If there are also data to input, switch unit generates channel switching signal, closes first control unit and opens
Second control unit, reads the data of the first cache unit, and is written in third cache unit;
The state data memory for obtaining the second cache unit, when having data space in the second cache unit, the
Two control units read data from third cache unit, and the data of reading are written in the second cache unit;
When the data in third cache unit are all run through and do not have data to write in third cache unit at this time, cut
Change unit generate channel switching signal, open first control unit simultaneously close the second control unit, then continue according to storage and
Input condition repeats above judgement and channel switching automatically.
Further, first cache unit is the register that data bit width is DW, storage depth is (n-1).
Further, the third cache unit is that the single port that data bit width is DW*2, storage depth is MD/2 is deposited at random
Access to memory RAM, MD are the storage depth of first in first out data buffer;First cache unit is that data bit width is DW, stores
The register that depth is 1.
It should be noted that third cache unit of the invention uses the single port RAM time-sharing multiplex of more haplotype data bit wides, adopt
Data are read and write with timeslice, the time is exchanged for bit wide, FIFO is solved the problems, such as while needing to read and write, utilize read-write arbitration mechanism solution
Certainly read/write conflict problem.Read-write arbitration mechanism of the invention uses and writes preference strategy.
Further, second cache unit is the register that data bit width is DW, storage depth is 4.
Specifically, due to the data bit width of the second cache unit is DW and the bit wide of third cache unit single port RAM is DW*
2, therefore can guarantee that at least one is used to read data from RAM in two clock cycle;Due to depositing for the second cache unit
Storing up depth is 4, and data can be read with the speed of 1 clock cycle, two DW data bit widths, and be write in the second cache unit,
In this way in the case where input terminal no data, data quickly removing from third cache unit to the second cache unit may be implemented
Fortune saves the time to guarantee access control unit in switch data circulation road, and the data of first in first out data buffer export
Continuity.
First in first out data buffer according to the present invention, area have apparent compared to traditional high-capacity FIFO
Advantage, by taking storage depth * data width is the FIFO of 800x128 as an example, the storage depth * data width of the first cache unit is
1*128, the storage depth * data width of the second cache unit are 4*128, the storage depth * data width of third cache unit
For 400*256.If using pseudo-double port RAM, area 52145um2If can be used using the present invention
The single port RAM of 400x256 solves the problems, such as, area 22825um2, 56% area can be saved, it is contemplated that is newly increased is outer
Area (the 1405um of portion's logic2), it still is able to save 53.5% area, and then can reduce the cost of chip, improves core
The competitiveness of piece.
Those of ordinary skill in the art will appreciate that all or part of the steps in the above method can be instructed by program
Related hardware is completed, and described program can store in computer readable storage medium, such as read-only memory, disk or CD
Deng.Optionally, one or more integrated circuits also can be used to realize, accordingly in all or part of the steps of above-described embodiment
Ground, each module/unit in above-described embodiment can take the form of hardware realization, can also use the shape of software function module
Formula is realized.The present invention is not limited to the combinations of the hardware and software of any particular form.
The foregoing is only a preferred embodiment of the present invention, is not intended to restrict the invention, for the skill of this field
For art personnel, the invention may be variously modified and varied.All within the spirits and principles of the present invention, made any to repair
Change, equivalent replacement, improvement etc., should all be included in the protection scope of the present invention.
Claims (10)
1. a kind of first in first out data buffer, including input port, output port, which is characterized in that further include the first caching
Unit, the second cache unit, third cache unit, first control unit, the second control unit and switch unit, in which:
First cache unit, for storing the data inputted by input port;
Second cache unit, for storing the data exported by output port;
The third cache unit is the single port random access memory that data bit width is DW*n, for storing through the second control
The data of unit input or output, the n are the natural number more than or equal to 2, and DW is the data of first in first out data buffer
Bit wide;
The first control unit for reading the data of the first cache unit, and is written in the second cache unit;
Second control unit for reading the data of the first cache unit, and is written in third cache unit;When second slow
When the state data memory of memory cell is non-full state, the data of third cache unit are read, and be written in the second cache unit;
The switch unit, it is slow for obtaining the state of input port, the reading and writing data state of the second control unit and first
The state data memory of memory cell and the second cache unit;And according to the state of acquisition, opens first control unit and close the
Two control units, or close first control unit and open the second control unit.
2. first in first out data buffer according to claim 1, which is characterized in that the switch unit is according to acquisition
State, opening first control unit simultaneously close the second control unit, or close first control unit and open the second control list
Member specifically includes:
After the first in first out data buffer powers on, opens the first control unit and close second control unit;
When the state data memory of first cache unit and second cache unit is full state and current input terminal
When mouth has data input, closes the first control unit and open second control unit;
When the reading and writing data shape that the state data memory of second cache unit is non-full state and second control unit
When state is dummy status, opens the first control unit and close second control unit.
3. first in first out data buffer according to claim 1, which is characterized in that second control unit includes writing
Control unit, read-write arbitration unit and reading control unit, wherein
Described to write control unit, for generating write signal, the write signal is used to read the data of first cache unit, and
It is written in the third cache unit;
The reading control unit, for obtaining the state data memory of second cache unit, when second cache unit
State data memory when being non-full state, generate read signal, the read signal is used to read the number of the third cache unit
According to, and be written in second cache unit;
The read-write arbitration unit, for generation read signal and write signal arbitrate.
4. first in first out data buffer according to claim 1, which is characterized in that first cache unit is data
The register that bit wide is DW, storage depth is (n-1).
5. first in first out data buffer according to claim 1, which is characterized in that the third cache unit is data
The single port random access memory that bit wide is DW*2, storage depth is MD/2, the MD are depositing for first in first out data buffer
Store up depth;First cache unit is the register that data bit width is DW, storage depth is 1.
6. first in first out data buffer according to claim 1, which is characterized in that second cache unit is data
The register that bit wide is DW, storage depth is 4.
7. a kind of data cached method, which comprises the steps of:
First in first out data buffer receives the data of input port write-in, stores to the first cache unit;
It is slow that first in first out data buffer obtains the state of input port, the reading and writing data state of the second control unit and first
The state data memory of memory cell and the second cache unit;According to the state of acquisition, opens first control unit and close second
Control unit, or close first control unit and open the second control unit;
When opening first control unit and closing the second control unit, first in first out data buffer reads the first cache unit
Data, and be written the second cache unit in;
When closing first control unit and opening the second control unit, first in first out data buffer reads the first cache unit
Data, and be written in third cache unit, the third cache unit is that the single port arbitrary access that data bit width is DW*n is deposited
Reservoir, the n are the natural number more than or equal to 2, and DW is the data bit width of first in first out data buffer;When the second caching is single
When the state data memory of member is non-full state, the data of third cache unit are read, and be written in the second cache unit;
The first in first out data buffer reads the data stored in the second cache unit by output port.
8. the method according to the description of claim 7 is characterized in that the state according to acquisition, opens first control unit
And the second control unit is closed, or the step of closing first control unit and opening the second control unit, it specifically includes:
After the first in first out data buffer powers on, opens the first control unit and close second control unit;
When the state data memory of first cache unit and second cache unit is full state and input port has
When data input, closes the first control unit and open second control unit;
When the reading and writing data shape that the state data memory of second cache unit is non-full state and second control unit
When state is dummy status, opens the first control unit and close second control unit.
9. the method according to the description of claim 7 is characterized in that the third cache unit is that data bit width is DW*2, deposits
The single port random access memory that depth is MD/2 is stored up, the MD is the storage depth of first in first out data buffer;Described
One cache unit is the register that data bit width is DW, storage depth is 1.
10. the method according to the description of claim 7 is characterized in that second cache unit is that data bit width is DW, stores
The register that depth is 4.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710363495.8A CN108958700A (en) | 2017-05-22 | 2017-05-22 | A kind of first in first out data buffer and data cached method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710363495.8A CN108958700A (en) | 2017-05-22 | 2017-05-22 | A kind of first in first out data buffer and data cached method |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108958700A true CN108958700A (en) | 2018-12-07 |
Family
ID=64463060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710363495.8A Pending CN108958700A (en) | 2017-05-22 | 2017-05-22 | A kind of first in first out data buffer and data cached method |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108958700A (en) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111699468A (en) * | 2019-06-21 | 2020-09-22 | 深圳市大疆创新科技有限公司 | Data storage method, device and storage medium for first-in first-out memory |
CN112231241A (en) * | 2019-07-15 | 2021-01-15 | 深圳市中兴微电子技术有限公司 | Data reading method and device and computer readable storage medium |
CN113076061A (en) * | 2021-03-18 | 2021-07-06 | 四川和芯微电子股份有限公司 | Single RAM multi-module data caching method |
CN115604198A (en) * | 2022-11-29 | 2023-01-13 | 珠海星云智联科技有限公司(Cn) | Network card controller, network card control method, equipment and medium |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5841722A (en) * | 1996-02-14 | 1998-11-24 | Galileo Technologies Ltd. | First-in, first-out (FIFO) buffer |
US6798420B1 (en) * | 1998-11-09 | 2004-09-28 | Broadcom Corporation | Video and graphics system with a single-port RAM |
CN102736887A (en) * | 2011-04-01 | 2012-10-17 | 珠海全志科技股份有限公司 | FIFO memory and storage controlling device |
CN203720836U (en) * | 2014-01-20 | 2014-07-16 | 上海光维通信技术股份有限公司 | Data acquisition system based on source synchronous system |
CN104461971A (en) * | 2014-11-26 | 2015-03-25 | 深圳市开立科技有限公司 | Data collecting control system and method |
CN105094743A (en) * | 2014-05-23 | 2015-11-25 | 深圳市中兴微电子技术有限公司 | First input first output (FIFO) data cache and method thereof for performing time delay control |
-
2017
- 2017-05-22 CN CN201710363495.8A patent/CN108958700A/en active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5841722A (en) * | 1996-02-14 | 1998-11-24 | Galileo Technologies Ltd. | First-in, first-out (FIFO) buffer |
US6798420B1 (en) * | 1998-11-09 | 2004-09-28 | Broadcom Corporation | Video and graphics system with a single-port RAM |
CN102736887A (en) * | 2011-04-01 | 2012-10-17 | 珠海全志科技股份有限公司 | FIFO memory and storage controlling device |
CN203720836U (en) * | 2014-01-20 | 2014-07-16 | 上海光维通信技术股份有限公司 | Data acquisition system based on source synchronous system |
CN105094743A (en) * | 2014-05-23 | 2015-11-25 | 深圳市中兴微电子技术有限公司 | First input first output (FIFO) data cache and method thereof for performing time delay control |
CN104461971A (en) * | 2014-11-26 | 2015-03-25 | 深圳市开立科技有限公司 | Data collecting control system and method |
Non-Patent Citations (1)
Title |
---|
K BHARATH等: "Asynchronous 1R-1W Dual-Port Sram By using Single-Port SRAM", 《HTTPS://REPOSITORY.IIITD.EDU.IN/JSPUI/HANDLE/123456789/525》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111699468A (en) * | 2019-06-21 | 2020-09-22 | 深圳市大疆创新科技有限公司 | Data storage method, device and storage medium for first-in first-out memory |
WO2020252769A1 (en) * | 2019-06-21 | 2020-12-24 | 深圳市大疆创新科技有限公司 | Data storage method for first input first output memory, and device and storage medium |
CN112231241A (en) * | 2019-07-15 | 2021-01-15 | 深圳市中兴微电子技术有限公司 | Data reading method and device and computer readable storage medium |
WO2021008552A1 (en) * | 2019-07-15 | 2021-01-21 | 深圳市中兴微电子技术有限公司 | Data reading method and apparatus, and computer-readable storage medium |
CN112231241B (en) * | 2019-07-15 | 2023-02-17 | 深圳市中兴微电子技术有限公司 | Data reading method and device and computer readable storage medium |
CN113076061A (en) * | 2021-03-18 | 2021-07-06 | 四川和芯微电子股份有限公司 | Single RAM multi-module data caching method |
CN115604198A (en) * | 2022-11-29 | 2023-01-13 | 珠海星云智联科技有限公司(Cn) | Network card controller, network card control method, equipment and medium |
CN115604198B (en) * | 2022-11-29 | 2023-03-10 | 珠海星云智联科技有限公司 | Network card controller, network card control method, equipment and medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108958700A (en) | A kind of first in first out data buffer and data cached method | |
US7158440B2 (en) | FIFO memory devices having write and read control circuits that support x4N, x2N and xN data widths during DDR and SDR modes of operation | |
US6081478A (en) | Separate byte control on fully synchronous pipelined SRAM | |
CN101751980B (en) | Embedded programmable memory based on memory IP core | |
US11150686B2 (en) | Apparatuses for reducing clock path power consumption in low power dynamic random access memory | |
US6018478A (en) | Random access memory with separate row and column designation circuits for reading and writing | |
US7149139B1 (en) | Circuitry and methods for efficient FIFO memory | |
CN103730149B (en) | A kind of read-write control circuit of dual-ported memory | |
CN103559146B (en) | A kind of method improving NAND flash controller read or write speed | |
KR20070107163A (en) | Memory device and method having multiple internal data buses and memory bank interleaving | |
CN106250321B (en) | The data processing method and data processing system of 2R1W memory | |
CN109669888A (en) | A kind of configurable and efficient embedded Nor-Flash controller and control method | |
CN101233575A (en) | Memory control method and memory system | |
CN101770437A (en) | Structure and method for realizing concurrent reading and concurrent writing of IP of synchronous dual-port memory | |
KR20070019880A (en) | Wrapper circuit for interfacing between a memory controller and a memory | |
CN102610269B (en) | Write-once read-many disc internal memory | |
TWI533135B (en) | Methods for accessing memory and controlling access of memory, memory device and memory controller | |
CN106158012B (en) | Timing sequence process method, on-chip SRAM and the FPGA of FPGA on-chip SRAM | |
US7392354B1 (en) | Multi-queue FIFO memory devices that support a backed-off standard mode of operation and methods of operating same | |
TWI321793B (en) | ||
CN104683265B (en) | High-capacity accurate packet counting method for 100G interface | |
US9191002B2 (en) | Data processing apparatus and method in PLC system | |
CN112100098B (en) | DDR control system and DDR memory system | |
JP5499131B2 (en) | Dual port memory and method thereof | |
CN112286863A (en) | Processing and storage circuit |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Country or region after: China Address after: 518055, 2nd Floor, ZTE Industrial Park, No. 2 Chuangyan Road, Xili Community, Xili Street, Nanshan District, Shenzhen City, Guangdong Province, China Applicant after: SANECHIPS TECHNOLOGY Co.,Ltd. Address before: 518055 Zhongxing Industrial Park, Liuxian Avenue, Xili street, Nanshan District, Shenzhen City, Guangdong Province Applicant before: SANECHIPS TECHNOLOGY Co.,Ltd. Country or region before: China |