CN113419985A - Control method for SPI system to automatically read data and SPI system - Google Patents
Control method for SPI system to automatically read data and SPI system Download PDFInfo
- Publication number
- CN113419985A CN113419985A CN202110659540.0A CN202110659540A CN113419985A CN 113419985 A CN113419985 A CN 113419985A CN 202110659540 A CN202110659540 A CN 202110659540A CN 113419985 A CN113419985 A CN 113419985A
- Authority
- CN
- China
- Prior art keywords
- data
- fifo
- spi
- spi system
- total amount
- 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
- 238000000034 method Methods 0.000 title claims abstract description 31
- 238000012546 transfer Methods 0.000 claims description 5
- 238000004891 communication Methods 0.000 description 5
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 235000015429 Mirabilis expansa Nutrition 0.000 description 1
- 244000294411 Mirabilis expansa Species 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 235000013536 miso Nutrition 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
Abstract
The invention discloses a control method for automatically reading data by an SPI system and the SPI system, and the method comprises the following steps: s1: the SPI system judges that the SPI total enabling position is opened and the total quantity of the configured received data meets the requirement, and then data reading is carried out; s2: the SPI system fills data into the TX FIFO to read the data into the RX FIFO and records the total amount of the received data; s3: the SPI system compares the total amount of received data and the total amount of configuration received data to determine whether to continue to perform step S2 or to end the operation. According to the method, data are filled into the TX FIFO through SPI system hardware, a CPU only needs to respond to RX FIFO interruption and move the data, and the data do not need to be filled into the TX FIFO, so that the load of the CPU is reduced; data can be continuously read according to the total amount of received data and the total amount of configured received data, and the CPU only needs to respond to the interruption of the RX FIFO, so that the occupancy rate of the CPU is reduced.
Description
Technical Field
The invention particularly relates to a control method for automatically reading data by an SPI system and the SPI system.
Background
The SPI protocol is used as a peripheral interface protocol with wide application, and is applied to reading data of a Flash device, data of a gyroscope, data exchange between a master SPI chip and a slave SPI chip and the like. Compared with other application scenarios, the data read by the SPI system is very huge in amount.
In a conventional method for reading large data volume, a cpu initially fills up a TX FIFO, and then when a water level trigger of the TX FIFO is interrupted, the cpu not only needs to timely carry data of the RX FIFO, but also needs to continuously fill data into the TX FIFO to trigger an SPI controller to read the data when the cpu judges that the data to be read is not completely read. The disadvantage of this method is that the cpu needs to respond to the SPI interrupt continuously and fill the TX FIFO to start the SPI to receive data during the SPI reading of a large amount of data, and the efficiency of the cpu is lost.
Disclosure of Invention
In order to solve the problems, the invention provides a control method for automatically reading data by an SPI system and the SPI system, the size of the data volume to be read is configured only at the initial configuration stage, and the SPI system can always read the data before the specified data volume is not read, so that the automation is high; and a data protection mechanism is set, when the CPU is busy and can not take the RX FIFO data in time, so that the RX FIFO is fully written, the automatic reading process is automatically suspended, and after the CPU is free to take the data, the automatic reading is automatically started again, so that the loss of effective data in the reading process is prevented. The specific technical scheme of the invention is as follows:
a control method for automatically reading data by an SPI system comprises the following steps: s1: the SPI system judges that the SPI total enabling position is opened and the total quantity of the configured received data meets the requirement, and then data reading is carried out; s2: the SPI system fills data into the TX FIFO to read the data into the RX FIFO and records the total amount of the received data; s3: the SPI system compares the total amount of received data and the total amount of configuration received data to determine whether to continue to perform step S2 or to end the operation. According to the method, data are automatically filled into the TX FIFO through SPI system hardware, a CPU only needs to respond to RX FIFO interruption and move the data, and the data do not need to be filled into the TX FIFO, so that the load of the CPU is reduced; the SPI system can judge the relation between the total amount of received data and the total amount of configured received data, continuously reads the data, and the CPU only needs to respond to the interruption of the RX FIFO, so that the occupancy rate of the CPU is reduced.
Further, in step S1, the SPI system configures the RX FIFO level interrupt trigger value and the total amount of received data in advance before reading the data. The RX FIFO water level interruption trigger value can be set and the total amount of received data can be configured according to actual conditions, and the flexibility is high.
Further, in step S1, the total amount of configured received data meets the requirement: the total amount of configuration received data is not zero.
Further, in step S2, after the SPI system automatically fills the TX FIFO with data, it sends a set of clock signals to enable the SPI system to read the data into the RX FIFO.
Further, after the SPI system reads the data of the set capacity into the RX FIFO, an RX FIFO level trigger interrupt is generated to notify the CPU to transfer the data in the RX FIFO.
Further, in step S2, after the SPI system reads the data, it determines whether the RX FIFO is full of data, and triggers a protection mechanism if the RX FIFO is full of data.
Further, the protection mechanism comprises the steps of: the SPI system suspends the automatic reading function and enters a wait state until the RX FIFO is in a non-full state after the data in the RX FIFO is carried by the CPU, and executes step S2 again. In the process of reading the mass data, if the CPU is in a busy state and cannot take the received data away in time, the SPI system is automatically suspended, the SPI system is started again after the CPU waits for the data away, and the phenomenon that the RX FIFO is written and exploded due to the fact that the CPU is busy and cannot read the data away in time is avoided.
Further, in step S2, the step of the SPI system recording the total amount of received data includes the following steps: the total amount of received data is increased by one each time the SPI system receives data.
Further, in step S3, if the total amount of received data is less than the configured total amount of received data, the SPI system performs step S2 again; and if the total amount of the received data is equal to the total amount of the configured received data, the SPI system finishes working.
The SPI system executes the control method for automatically reading data by the SPI system, and comprises an SPI controller and a CPU which are in communication connection, wherein the SPI controller comprises an RX FIFO and a TX FIFO, the RX FIFO is used for storing read data, the TX FIFO is used for storing sent data, and the CPU is used for carrying the data in the RX FIFO. The SPI system triggers the SPI controller to receive data in a hardware automatic filling mode, so that the burden of a CPU is reduced; and a data protection mechanism is set, when the RX FIFO is full, the SPI system is suspended and enters a waiting state, and the phenomenon that the RX FIFO is written and exploded to cause data loss due to the fact that the CPU is busy and cannot read data in time is avoided.
Drawings
Fig. 1 is a flowchart of a control method for automatically reading data by an SPI system according to an embodiment of the present invention;
FIG. 2 is a diagram illustrating an effect of an SPI system to automatically read data according to an embodiment of the present invention;
fig. 3 is a diagram illustrating an operation effect of the SPI system data read protection mechanism according to an embodiment of the present invention.
Detailed Description
The technical solutions in the embodiments of the present invention will be described in detail below with reference to the accompanying drawings in the embodiments of the present invention. It should be understood that the following specific examples are illustrative only and are not intended to limit the invention.
SPI is an abbreviation for Serial Peripheral Interface (Serial Peripheral Interface). The SPI is a high-speed, full-duplex and synchronous communication bus, only four wires are occupied on pins of a chip, the pins of the chip are saved, and meanwhile, the space is saved on the layout of a PCB, and convenience is provided. The communication principle of SPI is simple and it works in a master-slave mode, which usually has a master device and one or more slave devices, requiring at least 4 wires, and in fact 3 wires (in case of unidirectional transmission). Also common to all SPI-based devices are MISO (master data in), MOSI (master data out), SCLK (clock), CS (chip select). The system comprises a MISO-Master Input Slave Output, a MOSI-Master Output Slave Input, a Master device data Output, a Slave device data Input, an SCLK-Serial Clock, a Clock signal and a CS-Chip Select, wherein the MISO-Master Input Slave Output is used for inputting Master device data, the Slave device data Output is used for outputting Slave device data, the MOSI-Master Output Slave Input is used for inputting Slave device data, the SCLK-Serial Clock is used for generating a Clock signal, and the CS-Chip Select is used for enabling a Slave device to be controlled by the Master device. CS is a control signal indicating whether the slave chip is selected by the master chip, that is, only when the chip select signal is a predetermined enable signal (high or low), the master chip is enabled to operate the slave chip. This makes it possible to connect multiple SPI devices on the same bus. Data transmission between SPI devices is also referred to as data exchange because the SPI protocol specifies that an SPI device cannot act as only a "sender" or "Receiver" during data communication. In each Clock cycle, the SPI device sends and receives data of one bit size, which is equivalent to the device having one bit size exchanged. FIFO is the abbreviation of English First In First Out, is a First In First Out data buffer, and the difference with the ordinary memory is that there is no external read-write address line, so the use is very simple, but the disadvantage is that only data can be written In sequence, the data address of the data read Out In sequence is completed by adding 1 to the internal read-write pointer automatically, and the address line can not be used to read or write a certain designated address as the ordinary memory. The TX FIFO is a transmission first-in-first-out queue, and the RX FIFO is a receiving first-in-first-out queue.
As shown in fig. 1, a control method for automatically reading data by an SPI system includes the following steps: s1: the SPI system judges that the SPI total enabling position is opened and the total quantity of the configured received data meets the requirement, and then data reading is carried out; s2: the SPI system fills data into the TX FIFO to read the data into the RX FIFO, records the total amount of the received data and judges whether the automatic reading function is suspended or not according to the state of the RX FIFO; s3: the SPI system compares the total amount of received data and the total amount of configuration received data to determine whether to continue to perform step S2 or to end the operation. According to the method, data are filled into the TX FIFO through SPI system hardware, a CPU only needs to respond to RX FIFO interruption and move the data, and the data do not need to be filled into the TX FIFO, so that the load of the CPU is reduced; data can be continuously read according to the total amount of received data and the total amount of configured received data, and the CPU only needs to respond to the interruption of the RX FIFO, so that the occupancy rate of the CPU is reduced.
In one embodiment, in step S1, the SPI system sets the RX FIFO level interrupt trigger value and configures the total amount of received data in advance before reading the data. The RX FIFO water level interruption trigger value can be set and the total amount of received data can be configured according to actual conditions, and the flexibility is high. In step S1, the total amount of received data is configured as follows: the total amount of configuration received data is not zero.
In one embodiment, in step S2, after the SPI system fills the TX FIFO with data, it sends a set of clock signals to enable the SPI system to read the data into the RX FIFO. After the SPI system reads data with set capacity into the RX FIFO, an RX FIFO water level trigger interrupt is generated, and the CPU is informed to carry the data in the RX FIFO. In step S2, after the SPI system reads the data, it determines whether the RX FIFO is full of data, and triggers a protection mechanism if the RX FIFO is full of data. The protection mechanism comprises the following steps: the SPI system suspends the automatic reading function and enters a wait state until the data in the RX FIFO is carried by the CPU, i.e., after the RX FIFO is not full, step S2 is executed again. In the process of reading mass data, the protection mechanism ensures that if the CPU is in a busy state and cannot take the received data away in time, the SPI system is automatically suspended, the SPI system is started again after the CPU waits for the data away, and the phenomenon that the RX FIFO is written and exploded due to the fact that the CPU is busy and cannot read the data away in time is avoided. In step S2, the step of recording the total amount of received data by the SPI system includes the following steps: the total amount of received data is increased by one each time the SPI system receives data.
As one embodiment, in step S3, if the total amount of received data is less than the total amount of configuration received data, the SPI system performs step S2 again; and if the total amount of the received data is greater than or equal to the total amount of the configuration received data, the SPI system finishes working.
The SPI system executes the control method for automatically reading data by the SPI system, and comprises an SPI controller and a CPU which are in communication connection, wherein the SPI controller comprises an RX FIFO and a TX FIFO, the RX FIFO is used for storing read data, the TX FIFO is used for storing sent data, and the CPU is used for carrying the data in the RX FIFO. The SPI system triggers the SPI controller to receive data in a hardware automatic filling mode, so that the burden of a CPU is reduced; and a data protection mechanism is set, when the RX FIFO is full, the SPI system is suspended and enters a waiting state, and the phenomenon that the RX FIFO is written and exploded to cause data loss due to the fact that the CPU is busy and cannot read data in time is avoided.
As shown in fig. 2, the TX/RX FIFOs are 64 layers, the RX FIFO level interrupt trigger value is 32, the SPI system fills data into the TX FIFO according to the clock signal, reads a corresponding data into the RX FIFO every time a data is filled into the TX FIFO, and generates the RX FIFO level interrupt whenever the RX FIFO is filled with 32 data, and notifies the CPU to transfer the data in the RX FIFO.
As shown in fig. 3, after the first RX FIFO level trigger interrupt occurs, if the CPU is busy and cannot timely transfer data in the RX FIFO, when the RX FIFO level trigger interrupt occurs again, if the CPU is still busy and cannot transfer data in the RX FIFO, at this time, the RX FIFO is full, the SPI system starts a data protection mechanism, enters a wait state, and automatically suspends the data filling into the TX FIFO. When the RX FIFO is detected to be not full after the CPU is idle and takes data from the RX FIFO, the SPI continues to fill the TX FIFO with data to fill the RX FIFO with data.
Obviously, the above-mentioned embodiments are only a part of embodiments of the present invention, not all embodiments, and the technical solutions of the embodiments may be combined with each other. Furthermore, if terms such as "center", "upper", "lower", "left", "right", "vertical", "horizontal", "inner", "outer", etc., appear in the embodiments, their indicated orientations or positional relationships are based on those shown in the drawings only for convenience of describing the present invention and simplifying the description, but do not indicate or imply that the referred devices or elements must have a specific orientation or be constructed and operated in a specific orientation, and thus, should not be construed as limiting the present invention. If the terms "first", "second", "third", etc. appear in the embodiments, they are for convenience of distinguishing between related features, and they are not to be construed as indicating or implying any relative importance, order or number of features.
Those of ordinary skill in the art will understand that: all or a portion of the steps of implementing the above-described method embodiments may be performed by hardware associated with program instructions. These programs may be stored in a computer-readable storage medium (such as a ROM, a RAM, a magnetic or optical disk, or various other media that can store program codes). Which when executed performs steps comprising the method embodiments described above.
Finally, it should be noted that: the above embodiments are only used to illustrate the technical solution of the present invention, and not to limit the same; while the invention has been described in detail and with reference to the foregoing embodiments, it will be understood by those skilled in the art that: the technical solutions described in the foregoing embodiments may still be modified, or some or all of the technical features may be equivalently replaced; and the modifications or the substitutions do not make the essence of the corresponding technical solutions depart from the scope of the technical solutions of the embodiments of the present invention.
Claims (10)
1. A control method for automatically reading data by an SPI system is characterized by comprising the following steps:
s1: the SPI system judges that the SPI total enabling position is opened and the total quantity of the configured received data meets the requirement, and then data reading is carried out;
s2: the SPI system fills data into the TX FIFO to read the data into the RX FIFO and records the total amount of the received data;
s3: the SPI system compares the total amount of received data and the total amount of configuration received data to determine whether to continue to perform step S2 or to end the operation.
2. The SPI system control method for automatically reading data according to claim 1, wherein in step S1, the SPI system configures the RX FIFO level interrupt trigger value and the total amount of received data in advance before reading data.
3. The SPI system automatic data reading control method according to claim 1, wherein in step S1, the total amount of received data is configured as follows: the total amount of configuration received data is not zero.
4. The method as claimed in claim 1, wherein in step S2, after the SPI system automatically fills the TX FIFO with data, the SPI system sends a set of clock signals to enable the SPI system to read the data to the RX FIFO.
5. The SPI system control method of automatically reading data of claim 4, wherein each time the SPI system reads data with a set capacity into the RX FIFO, an RX FIFO level trigger interrupt is generated to notify the CPU to transfer the data in the RX FIFO.
6. The SPI system control method according to claim 1, wherein in step S2, after the SPI system reads the data, it determines whether the RX FIFO is full of data, and if so, triggers a protection mechanism.
7. The SPI system control method for automatically reading data according to claim 5 or 6, wherein the protection mechanism comprises the steps of: the SPI system suspends the automatic reading function and enters a wait state until the RX FIFO is in a non-full state after the data in the RX FIFO is carried by the CPU, and executes step S2 again.
8. The SPI system automatic data reading control method according to claim 1, wherein in step S2, the SPI system recording the total amount of received data comprises the steps of: the total amount of received data is increased by one each time the SPI system receives data.
9. The SPI system automatic data reading control method of claim 1, wherein in step S3, if the total amount of received data is less than the total amount of configuration received data, the SPI system again performs step S2; and if the total amount of the received data is equal to the total amount of the configured received data, the SPI system finishes working.
10. An SPI system, characterized in that it executes the control method of automatically reading data by the SPI system according to any one of claims 1 to 9, said SPI system comprising an SPI controller and a CPU which are communicatively connected, said SPI controller comprising an RX FIFO for storing read data and a TX FIFO for storing transmitted data, said CPU for carrying data in the RX FIFO.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110659540.0A CN113419985A (en) | 2021-06-15 | 2021-06-15 | Control method for SPI system to automatically read data and SPI system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110659540.0A CN113419985A (en) | 2021-06-15 | 2021-06-15 | Control method for SPI system to automatically read data and SPI system |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113419985A true CN113419985A (en) | 2021-09-21 |
Family
ID=77788456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110659540.0A Pending CN113419985A (en) | 2021-06-15 | 2021-06-15 | Control method for SPI system to automatically read data and SPI system |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113419985A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114461564A (en) * | 2021-12-22 | 2022-05-10 | 中国电子科技集团公司第五十八研究所 | SJA 1000-based RXA FIFO reading method |
Citations (36)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5455907A (en) * | 1993-09-10 | 1995-10-03 | Compaq Computer Corp. | Buffering digitizer data in a first-in first-out memory |
US5640515A (en) * | 1993-10-28 | 1997-06-17 | Daewoo Electronics Co., Ltd. | FIFO buffer system having enhanced controllability |
US5842044A (en) * | 1994-06-29 | 1998-11-24 | Hyundai Electronics Co. Ltd. | Input buffer device for a printer using an FIFO and data input method |
US5931926A (en) * | 1995-07-07 | 1999-08-03 | Sun Microsystems, Inc. | Method and apparatus for dynamically calculating degrees of fullness of a synchronous FIFO |
JP2000299716A (en) * | 1999-04-14 | 2000-10-24 | Toshiba Corp | Data receiver and data receiving method |
KR20010019050A (en) * | 1999-08-24 | 2001-03-15 | 서평원 | Read/Write Cancelable and Variable Depth First In First Out Communication System |
US6226698B1 (en) * | 1997-11-10 | 2001-05-01 | Sun Microsystems, Inc. | Method and apparatus for dynamically calculating degrees of fullness of a synchronous FIFO |
KR20020021475A (en) * | 2000-09-15 | 2002-03-21 | 윤종용 | Common i/o part controll apparatus and method capable of decreasing load of cpu in a radio communication terminal |
US20020133646A1 (en) * | 2001-03-16 | 2002-09-19 | Hugo Cheung | Method and device for providing high data rate for a serial peripheral interface |
US20030041199A1 (en) * | 2001-07-09 | 2003-02-27 | Hiroshi Kume | Communication terminal increasing effective data rate on asynchronous transmission and a data transmission method therefor |
US20040098519A1 (en) * | 2001-03-16 | 2004-05-20 | Hugo Cheung | Method and device for providing high data rate for a serial peripheral interface |
US20050188125A1 (en) * | 2004-02-20 | 2005-08-25 | Lim Ricardo T. | Method and apparatus for burst mode data transfers between a CPU and a FIFO |
CN101034384A (en) * | 2007-04-26 | 2007-09-12 | 北京中星微电子有限公司 | DMA controller and transmit method capable of simultaneously carrying out read-write operation |
US20100257208A1 (en) * | 2009-04-03 | 2010-10-07 | Hon Hai Precision Industry Co., Ltd. | System and method for structuring data in a storage device |
CN102053937A (en) * | 2009-10-30 | 2011-05-11 | 上海研祥智能科技有限公司 | Method and system for calling flash memory of SPI (serial peripheral interface) in LPC (low pin count) bus |
CN103064815A (en) * | 2012-12-29 | 2013-04-24 | 广东志成冠军集团有限公司 | Method for controlling multiple controller area network (CAN) interfaces through single program initiation (SPI) bus |
CN103064805A (en) * | 2012-12-25 | 2013-04-24 | 深圳先进技术研究院 | Serial Peripheral Interface (SPI) controller and communication method |
WO2014139466A2 (en) * | 2013-03-15 | 2014-09-18 | Shanghai Xinhao Microelectronics Co. Ltd. | Data cache system and method |
US20160035399A1 (en) * | 2014-07-31 | 2016-02-04 | Texas Instruments Incorporated | Method and apparatus for asynchronous fifo circuit |
US20160124878A1 (en) * | 2014-11-04 | 2016-05-05 | Atmel Corporationi | Data transfer |
CN106874224A (en) * | 2017-02-17 | 2017-06-20 | 杭州朔天科技有限公司 | The multi-thread SPI Flash controllers of automatic transporting and adaptation device |
US20170235692A1 (en) * | 2016-02-17 | 2017-08-17 | Analog Devices Global | Data communication interface for processing data in low power systems |
CN107436857A (en) * | 2017-07-31 | 2017-12-05 | 郑州云海信息技术有限公司 | A kind of Enhanced SPI device and the method carried out data transmission using the device |
CN108052750A (en) * | 2017-12-19 | 2018-05-18 | 郑州云海信息技术有限公司 | SPI FLASH controllers and its design method based on FPGA |
CN108268414A (en) * | 2018-03-26 | 2018-07-10 | 福州大学 | SD card driver and its control method based on SPI mode |
CN108959136A (en) * | 2018-06-26 | 2018-12-07 | 豪威科技(上海)有限公司 | Data delivery acceleration device, system and data transmission method based on SPI |
CN110399099A (en) * | 2019-06-28 | 2019-11-01 | 苏州浪潮智能科技有限公司 | Data mover system and method |
CN110765058A (en) * | 2019-09-12 | 2020-02-07 | 深圳震有科技股份有限公司 | Method, system, equipment and medium for realizing SPI slave function by GPIO |
CN111427828A (en) * | 2020-03-02 | 2020-07-17 | 深圳震有科技股份有限公司 | SPI flow control method, system, master device, slave device and storage medium |
CN111444123A (en) * | 2020-03-28 | 2020-07-24 | 珠海市一微半导体有限公司 | Automatic reading control system and method of SPI (Serial peripheral interface) based on hardware acceleration |
CN111739569A (en) * | 2020-06-19 | 2020-10-02 | 西安微电子技术研究所 | SDRAM (synchronous dynamic random access memory) control system and control method for reading and writing simultaneously |
CN111737175A (en) * | 2020-06-12 | 2020-10-02 | 明见(厦门)技术有限公司 | High-speed SPI master-slave machine communication method, terminal equipment and storage medium |
CN111880749A (en) * | 2020-08-04 | 2020-11-03 | 群联电子股份有限公司 | Data reading method, memory storage device and memory control circuit unit |
CN112711550A (en) * | 2021-01-07 | 2021-04-27 | 无锡沐创集成电路设计有限公司 | DMA automatic configuration module and SOC |
CN112765079A (en) * | 2021-01-20 | 2021-05-07 | 四川长虹电器股份有限公司 | SPI bus control method suitable for various different devices |
CN112905150A (en) * | 2021-02-18 | 2021-06-04 | 袁本翔 | Processing circuit based on asynchronous FIFO chip and reconfigurable working method |
-
2021
- 2021-06-15 CN CN202110659540.0A patent/CN113419985A/en active Pending
Patent Citations (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5455907A (en) * | 1993-09-10 | 1995-10-03 | Compaq Computer Corp. | Buffering digitizer data in a first-in first-out memory |
US5640515A (en) * | 1993-10-28 | 1997-06-17 | Daewoo Electronics Co., Ltd. | FIFO buffer system having enhanced controllability |
US5842044A (en) * | 1994-06-29 | 1998-11-24 | Hyundai Electronics Co. Ltd. | Input buffer device for a printer using an FIFO and data input method |
US5931926A (en) * | 1995-07-07 | 1999-08-03 | Sun Microsystems, Inc. | Method and apparatus for dynamically calculating degrees of fullness of a synchronous FIFO |
US6226698B1 (en) * | 1997-11-10 | 2001-05-01 | Sun Microsystems, Inc. | Method and apparatus for dynamically calculating degrees of fullness of a synchronous FIFO |
JP2000299716A (en) * | 1999-04-14 | 2000-10-24 | Toshiba Corp | Data receiver and data receiving method |
KR20010019050A (en) * | 1999-08-24 | 2001-03-15 | 서평원 | Read/Write Cancelable and Variable Depth First In First Out Communication System |
KR20020021475A (en) * | 2000-09-15 | 2002-03-21 | 윤종용 | Common i/o part controll apparatus and method capable of decreasing load of cpu in a radio communication terminal |
US20020133646A1 (en) * | 2001-03-16 | 2002-09-19 | Hugo Cheung | Method and device for providing high data rate for a serial peripheral interface |
US20040098519A1 (en) * | 2001-03-16 | 2004-05-20 | Hugo Cheung | Method and device for providing high data rate for a serial peripheral interface |
US20030041199A1 (en) * | 2001-07-09 | 2003-02-27 | Hiroshi Kume | Communication terminal increasing effective data rate on asynchronous transmission and a data transmission method therefor |
US20050188125A1 (en) * | 2004-02-20 | 2005-08-25 | Lim Ricardo T. | Method and apparatus for burst mode data transfers between a CPU and a FIFO |
CN101034384A (en) * | 2007-04-26 | 2007-09-12 | 北京中星微电子有限公司 | DMA controller and transmit method capable of simultaneously carrying out read-write operation |
US20100257208A1 (en) * | 2009-04-03 | 2010-10-07 | Hon Hai Precision Industry Co., Ltd. | System and method for structuring data in a storage device |
CN102053937A (en) * | 2009-10-30 | 2011-05-11 | 上海研祥智能科技有限公司 | Method and system for calling flash memory of SPI (serial peripheral interface) in LPC (low pin count) bus |
CN103064805A (en) * | 2012-12-25 | 2013-04-24 | 深圳先进技术研究院 | Serial Peripheral Interface (SPI) controller and communication method |
US20150089104A1 (en) * | 2012-12-29 | 2015-03-26 | Guangdong Zhicheng Cahmapiona Group Co., LTD. | Method for controlling multiple can interfaces through single spi bus |
CN103064815A (en) * | 2012-12-29 | 2013-04-24 | 广东志成冠军集团有限公司 | Method for controlling multiple controller area network (CAN) interfaces through single program initiation (SPI) bus |
WO2014139466A2 (en) * | 2013-03-15 | 2014-09-18 | Shanghai Xinhao Microelectronics Co. Ltd. | Data cache system and method |
US20160035399A1 (en) * | 2014-07-31 | 2016-02-04 | Texas Instruments Incorporated | Method and apparatus for asynchronous fifo circuit |
US20160124878A1 (en) * | 2014-11-04 | 2016-05-05 | Atmel Corporationi | Data transfer |
US20170235692A1 (en) * | 2016-02-17 | 2017-08-17 | Analog Devices Global | Data communication interface for processing data in low power systems |
CN106874224A (en) * | 2017-02-17 | 2017-06-20 | 杭州朔天科技有限公司 | The multi-thread SPI Flash controllers of automatic transporting and adaptation device |
CN107436857A (en) * | 2017-07-31 | 2017-12-05 | 郑州云海信息技术有限公司 | A kind of Enhanced SPI device and the method carried out data transmission using the device |
CN108052750A (en) * | 2017-12-19 | 2018-05-18 | 郑州云海信息技术有限公司 | SPI FLASH controllers and its design method based on FPGA |
CN108268414A (en) * | 2018-03-26 | 2018-07-10 | 福州大学 | SD card driver and its control method based on SPI mode |
CN108959136A (en) * | 2018-06-26 | 2018-12-07 | 豪威科技(上海)有限公司 | Data delivery acceleration device, system and data transmission method based on SPI |
CN110399099A (en) * | 2019-06-28 | 2019-11-01 | 苏州浪潮智能科技有限公司 | Data mover system and method |
CN110765058A (en) * | 2019-09-12 | 2020-02-07 | 深圳震有科技股份有限公司 | Method, system, equipment and medium for realizing SPI slave function by GPIO |
CN111427828A (en) * | 2020-03-02 | 2020-07-17 | 深圳震有科技股份有限公司 | SPI flow control method, system, master device, slave device and storage medium |
CN111444123A (en) * | 2020-03-28 | 2020-07-24 | 珠海市一微半导体有限公司 | Automatic reading control system and method of SPI (Serial peripheral interface) based on hardware acceleration |
CN111737175A (en) * | 2020-06-12 | 2020-10-02 | 明见(厦门)技术有限公司 | High-speed SPI master-slave machine communication method, terminal equipment and storage medium |
CN111739569A (en) * | 2020-06-19 | 2020-10-02 | 西安微电子技术研究所 | SDRAM (synchronous dynamic random access memory) control system and control method for reading and writing simultaneously |
CN111880749A (en) * | 2020-08-04 | 2020-11-03 | 群联电子股份有限公司 | Data reading method, memory storage device and memory control circuit unit |
CN112711550A (en) * | 2021-01-07 | 2021-04-27 | 无锡沐创集成电路设计有限公司 | DMA automatic configuration module and SOC |
CN112765079A (en) * | 2021-01-20 | 2021-05-07 | 四川长虹电器股份有限公司 | SPI bus control method suitable for various different devices |
CN112905150A (en) * | 2021-02-18 | 2021-06-04 | 袁本翔 | Processing circuit based on asynchronous FIFO chip and reconfigurable working method |
Non-Patent Citations (4)
Title |
---|
刘梦影;傅建军;刘云晶;: "一种改进的SPI接口设计与实现", 电子与封装, no. 12 * |
李嘉琛;杨光;: "基于FPGA的SPI FLASH数据存储系统设计", 仪器仪表用户, no. 06, 8 June 2017 (2017-06-08) * |
李白燕;: "TMS320LF2407 SPI存储器的扩展设计", 计量与测试技术, no. 05, 30 May 2010 (2010-05-30) * |
陈富龙;汪一鸣;: "基于FLASH的FIFO读写", 计算机工程与设计, no. 03, 16 February 2009 (2009-02-16) * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114461564A (en) * | 2021-12-22 | 2022-05-10 | 中国电子科技集团公司第五十八研究所 | SJA 1000-based RXA FIFO reading method |
CN114461564B (en) * | 2021-12-22 | 2023-09-26 | 中国电子科技集团公司第五十八研究所 | SJA 1000-based RXFIFO reading method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5175818A (en) | Communication interface for independently generating frame information that is subsequently stored in host memory and sent out to transmitting fifo by dma | |
US4071887A (en) | Synchronous serial data adaptor | |
US5619544A (en) | Universal asynchronous receive/transmit circuit with flow control | |
EP0239937A2 (en) | Serial communications controller | |
EP1820110B1 (en) | Multimedia card interface method, computer program product and apparatus | |
CN112802518B (en) | Data writing method, system-on-chip and computer readable storage medium | |
US20060236001A1 (en) | Direct memory access controller | |
CN108280041A (en) | A kind of communication means and device of internal integrated circuit host | |
US7334061B2 (en) | Burst-capable interface buses for device-to-device communications | |
CN113419985A (en) | Control method for SPI system to automatically read data and SPI system | |
US5898889A (en) | Qualified burst cache for transfer of data between disparate clock domains | |
CN113342717A (en) | FIFO read-write control method and control circuit | |
CN112947857A (en) | Data moving method, device, equipment and computer readable storage medium | |
JP5456434B2 (en) | Pipe arbitration circuit, pipe arbitration method | |
CN103888375A (en) | Communication method based on ARINC 429, device thereof and expansion interface | |
US20070131767A1 (en) | System and method for media card communication | |
CN113590520A (en) | Control method for automatically writing data into SPI system and SPI system | |
JPS6138510B2 (en) | ||
CN113961496A (en) | Communication circuit system, method, chip and storage medium | |
CN111752525A (en) | Inter-module communication method and system | |
US7921238B2 (en) | USB host system and method for transferring transfer data | |
EP0571683A1 (en) | High performance data re-alignment mechanism with multiple buffers in a memory access control device | |
CN110362526A (en) | SPI slave devices, storage and adaptation method and computer storage medium | |
CN115794701A (en) | BMC chip and method of DMA function virtual serial port | |
CN103079094B (en) | The communication means of set top box main chip and front panel and Set Top Box |
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 |
Address after: 519000 2706, No. 3000, Huandao East Road, Hengqin new area, Zhuhai, Guangdong Applicant after: Zhuhai Yiwei Semiconductor Co.,Ltd. Address before: Room 105-514, No.6 Baohua Road, Hengqin New District, Zhuhai City, Guangdong Province Applicant before: AMICRO SEMICONDUCTOR Co.,Ltd. |
|
CB02 | Change of applicant information |