CN113590520A - Control method for automatically writing data into SPI system and SPI system - Google Patents

Control method for automatically writing data into SPI system and SPI system Download PDF

Info

Publication number
CN113590520A
CN113590520A CN202110659535.XA CN202110659535A CN113590520A CN 113590520 A CN113590520 A CN 113590520A CN 202110659535 A CN202110659535 A CN 202110659535A CN 113590520 A CN113590520 A CN 113590520A
Authority
CN
China
Prior art keywords
data
spi
fifo
spi system
data 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
Application number
CN202110659535.XA
Other languages
Chinese (zh)
Inventor
不公告发明人
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Amicro Semiconductor Co Ltd
Original Assignee
Zhuhai Amicro Semiconductor Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhuhai Amicro Semiconductor Co Ltd filed Critical Zhuhai Amicro Semiconductor Co Ltd
Priority to CN202110659535.XA priority Critical patent/CN113590520A/en
Publication of CN113590520A publication Critical patent/CN113590520A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus 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 writing data into an SPI system and the SPI system, wherein the method comprises the following steps: the SPI system starts to write the data of the data buffer area into the TX FIFO according to the enabling signal and sends the data in the TX FIFO; the SPI system determines whether to send data cache region refresh interrupt according to the relation between the total amount of written data and the capacity of the data cache region and the number of times of sending the data cache region refresh interrupt, the CPU responds to the data cache region refresh interrupt and fills the next batch of data to be sent to the data cache region, and the SPI system continues to execute the process after receiving a signal that the CPU refresh completes the interrupt; or the SPI system writes the data in the data buffer area into the TX FIFO and finishes the work after the data in the TX FIFO is sent. In the whole data writing process, the CPU only needs to respond to the data cache region with lower interrupt frequency to refresh the interrupt, thereby greatly reducing the occupancy rate of the CPU.

Description

Control method for automatically writing data into SPI system and SPI system
Technical Field
The invention relates to the technical field of data transmission, in particular to a control method for automatically writing data into an SPI system and the SPI system.
Background
The SPI protocol is a widely used peripheral interface protocol, and is used for reading/writing data of Flash devices, data of gyroscope devices, data exchange between master and slave SPI chips, and the like. Different from other applications, in the process of reading/writing data of the Flash device, the corresponding data volume is very large, and the consumed hardware resources are the most.
In the existing Flash device written in a hardware mode, after a CPU responds to an interrupt bit of an SPI controller, data is written to a TX FIFO or written to the TX FIFO by operating a DMA controller, and a command to be sent and data to be written are written into the TX FIFO together. The disadvantage of this method is obvious, when the data volume to be written into the Flash device is very large, but the TX FIFO depth of the SPI controller is very limited, the CPU or dma will frequently respond to the state interruption of the SPI controller to carry out data transfer, and the efficiency of the system will be greatly lost.
Disclosure of Invention
In order to solve the problems, the invention discloses a control method for automatically writing data into an SPI system and the SPI system, wherein the data to be written into the SPI system is cached by setting a data cache region, so that in the whole data writing process, a CPU only needs to respond to the data cache region with lower interrupt frequency to refresh interrupt, and the occupancy rate of the CPU is greatly reduced. The specific technical scheme is as follows:
a control method for automatically writing data in an SPI system comprises the following steps: s1: the SPI system starts to write the data of the data buffer area into the TX FIFO according to the enable signal, records the total amount of the written data, then sends the data in the TX FIFO, and proceeds to step S2; s2: the SPI system determines whether to send out the refresh interruption of the data cache area according to the relation between the total amount of written data and the capacity of the data cache area and the number of times of sending out the refresh interruption of the data cache area, if the data cache area meets the requirement, the SPI system goes to step S3, and if the data cache area does not meet the requirement, the SPI system goes to step S4; s3: the SPI system sends out the data buffer area to refresh and interrupt, makes the CPU respond to the data buffer area to refresh and interrupt, fills the data into the data buffer area, and enters step S1 after receiving the signal that the CPU finishes refreshing and finishes interrupting; s4: and if the data in the TX FIFO is not in line with the requirement, the SPI system writes the data in the data buffer area into the TX FIFO and finishes the work after the data in the TX FIFO is sent.
Compared with the prior art, the SPI system of this scheme is in data transmission process, constantly from the data buffer area transport data to TX FIFO that will send, because the capacity of data buffer area can greatly exceed the TX FIFO degree of depth of SPI system itself, in whole data write-in process, CPU only need respond to the lower data buffer area of interrupt frequency refresh interrupt can, the occupation rate of CPU that has significantly reduced alleviates CPU's burden, improves the operating efficiency of system.
Further, before the SPI system starts to write data, the CPU divides a data buffer, fills data to be transmitted into the data buffer, and configures the SPI system enable after configuring the read data start address, the data buffer capacity, and the number of times the data buffer needs to be refreshed of the SPI system through the ahb slave module. The size of the data cache area is divided by the CPU before the SPI system starts working, the size of the data cache area can be changed according to actual conditions, and the flexibility is high.
Further, the CPU fills the data to be transmitted into the data buffer area and configures the number of times of refreshing the data buffer area of the SPI system according to the relation between the total amount of the data to be transmitted and the capacity of the data buffer area.
Further, in step S1, the control module in the SPI system turns on the ahb master module enable according to the enable signal, so that the ahb master module reads the data in the data buffer according to the data start address and then writes the data into the TX FIFO, and records the total amount of the written data.
Further, in steps S1 and S4, during the process of transmitting the data of the TX FIFO, if the remaining data in the TX FIFO is less than or equal to the set value, the TX FIFO sends a water level trigger interrupt to trigger the ahb master module to continuously write the data in the data buffer into the TX FIFO. When the residual data in the TX FIFO is at a set value, the water level trigger interrupt is sent out, so that the SPI system writes data into the TX FIFO again, and the situation that the effective data are lost due to the fact that the capacity in the TX FIFO is small, all the effective data read by the ahb master module cannot be received is prevented.
Further, the SPI system converts the data in the TX FIFO into a corresponding SPI protocol stimulus through the SPI interface module to complete transmission.
Further, in step S2, when the total amount of the read data is equal to the capacity of the data buffer, the SPI determines the relationship between the number of times of the refresh interrupt of the sent data buffer and the number of times of the refresh interrupt of the data buffer, and if the number of times of the refresh interrupt of the sent data buffer is less than the number of times of the refresh interrupt of the data buffer, step S3 is performed; if the number of times of interruption for refreshing the data cache is equal to the number of times of interruption for refreshing the data cache, the process proceeds to step 4.
Further, in step S3, after the SPI system receives the signal of the refresh completion interrupt from the CPU, the recorded ahb master module reads the total amount of data and sets the total amount of data to zero, and then the process proceeds to step S1.
The SPI system executes the control method for the SPI system to automatically write in data, the SPI system comprises two SPI controllers, a CPU and a data cache region which are connected in pairs, the SPI controllers are used for converting the data in the data cache region into excitation conforming to an SPI protocol, the CPU is used for filling the data to be written in the data cache region, and the data cache region is used for storing the data. The SPI system caches the data to be written in by the SPI system through the data cache region, so that in the whole data writing process, a CPU only needs to respond to the data cache region with lower interrupt frequency to refresh interrupt, the occupancy rate of the CPU is greatly reduced, and the operating efficiency of the system is improved.
Further, the SPI controller comprises: the control module is connected with the ahb master module and the ahb slave module and used for controlling the SPI controller to read data in the cache region; the ahb master module is connected with the control module and the TX FIFO and is used for reading data in the data buffer area and writing the data into the TX FIFO; the ahb slave module is connected with the control module, the SPI interface module, the TX FIFO and the RX FIFO and is used for configuring an internal register of the SPI system; the SPI interface module is connected with the ahb slave module, the TX FIFO and the RX FIFO and is used for converting data in the TX FIFO into corresponding SPI protocol excitation and storing data received by the SPI interface module in the RX FIFO; the TX FIFO is used for storing data to be sent; the RX FIFO is used to store accepted data.
Drawings
Fig. 1 is a flowchart of a control method for automatically writing data in the SPI system according to an embodiment of the present invention;
FIG. 2 is a diagram illustrating the effect of the SPI system automatically writing data according to an embodiment of the present invention;
fig. 3 is a schematic structural diagram of an SPI controller according to an embodiment of the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application will be described and illustrated below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the present application. All other embodiments obtained by a person of ordinary skill in the art based on the embodiments provided in the present application without any inventive step are within the scope of protection of the present application.
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). MISO-Master Input Slave Output, the Master device data Input and the Slave device data Output; MOSI-Master Output Slave Input, Master device data Output, Slave device data Input; SCLK-Serial Clock, a Clock signal, generated by a master device; CS-Chip Select, slave enable signal, controlled by the master. 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 writing data in an SPI system includes the following steps: s1: the SPI system starts to write the data of the data buffer area into the TX FIFO according to the enable signal, records the total amount of the written data, then sends the data in the TX FIFO, and proceeds to step S2; s2: the SPI system determines whether to send out the refresh interruption of the data cache area according to the relation between the total amount of written data and the capacity of the data cache area and the number of times of sending out the refresh interruption of the data cache area, if the data cache area meets the requirement, the SPI system goes to step S3, and if the data cache area does not meet the requirement, the SPI system goes to step S4; s3: the SPI system sends out a data cache area refreshing interrupt, the CPU responds to the data cache area refreshing interrupt and fills the next batch of data to be sent to the data cache area, and the SPI system enters step S1 after receiving a signal that the CPU completes the refreshing interrupt; s4: and if the data in the TX FIFO is not in line with the requirement, the SPI system writes the data in the data buffer area into the TX FIFO and finishes the work after the data in the TX FIFO is sent. Compared with the prior art, the SPI system of this scheme constantly takes out the data that will send from the data buffer area and writes into and send at data transmission in-process, because the capacity of data buffer area can greatly surpass the TX FIFO degree of depth of SPI system itself, at whole data write-in-process, CPU only need respond the lower data buffer area of interrupt frequency refresh interrupt can, the occupation rate of CPU that has significantly reduced alleviates CPU's burden, improves the operating efficiency of system.
Further, before the SPI system starts to write data, the CPU divides a data buffer, fills data to be transmitted into the data buffer, and configures the SPI system enable after configuring the read data start address, the data buffer capacity, and the number of times the data buffer needs to be refreshed of the SPI system through the ahb slave module. The data buffer area is divided by the CPU before the SPI system starts working, the size of the data buffer area can be changed according to actual conditions, and the flexibility is high. And the CPU fills the data to be transmitted into the data cache region and configures the number of times of refreshing the data cache region of the SPI system according to the relationship between the total amount of the data to be transmitted and the capacity of the data cache region.
As one embodiment, in step S1, the control module in the SPI system turns on the ahb master module enable according to the enable signal, so that the ahb master module reads the data in the data buffer according to the data start address and then writes the data into the TX FIFO, and records the total amount of the written data. In steps S1 and S4, during the process of transmitting the data of the TX FIFO, if the remaining data in the TX FIFO is less than or equal to the set value, the TX FIFO sends a water level trigger interrupt to make the SPI system continuously write the data in the data buffer into the TX FIFO. When the residual data in the TX FIFO is at a set value, the water level trigger interrupt is sent out, so that the SPI system writes data into the TX FIFO again, and the situation that the effective data are lost due to the fact that the capacity in the TX FIFO is small, all the effective data read by the ahb master module cannot be received is prevented. And the SPI system converts the data in the TX FIFO into corresponding SPI protocol excitation through a SPI interface module to complete transmission.
As one embodiment, in step S2, when the total amount of written data is equal to the capacity of the data buffer, the SPI determines that the number of data buffer refresh interrupts has been issued, and if the number of data buffer refresh interrupts has been issued is less than the number of data buffer refresh interrupts, then step S3 is performed; if the number of times of interruption for refreshing the data cache is greater than or equal to the number of times of interruption for refreshing the data cache, the process proceeds to step 4. In step S3, after receiving the signal of the interrupt of completion of refresh from the CPU, the SPI system sets the total amount of data recorded as having been read by the ahb master module to zero, and then proceeds to step S1. In step S4, the SPI system may determine that the data in the data buffer has been completely read when the total amount of written data is equal to the capacity of the data buffer, or may determine whether the data in the data buffer has been completely read according to whether the SPI system can read data from the data buffer.
The SPI system executes the control method for automatically writing data into the SPI system, the SPI system comprises two SPI controllers, a CPU and a data cache region which are connected in pairs, the SPI controllers are used for converting the data in the data cache region into excitation conforming to an SPI protocol, the CPU is used for filling the data to be written into the data cache region, the data cache region is used for storing the data, and the CPU develops and refreshes a larger storage region from a ddr or sram region to serve as the data cache region. The SPI system caches the data to be written in by the SPI system through the data cache region, so that in the whole data writing process, a CPU only needs to respond to the data cache region with lower interrupt frequency to refresh interrupt, the occupancy rate of the CPU is greatly reduced, and the operating efficiency of the system is improved. The SPI controller comprises: the control module is connected with the ahb master module and the ahb slave module and used for controlling the SPI controller to read data in the cache region; the ahb master module is connected with the control module and the TX FIFO and is used for reading data in the data buffer area and writing the data into the TX FIFO; the ahb slave module is connected with the control module, the SPI interface module, the TX FIFO and the RX FIFO and is used for configuring an internal register of the SPI system; the SPI interface module is connected with the ahb slave module, the TX FIFO and the RX FIFO and is used for converting data in the TX FIFO into corresponding SPI protocol excitation and storing data received by the SPI interface in the RX FIFO; the TX FIFO is used for storing data to be sent; the RX FIFO is used to store accepted data.
As shown in fig. 2, the total amount of data to be transmitted is 4K, taking the TX FIFO depth as 64 layers. Assuming that the data to be written by the SPI system is 4K and the capacity of the data buffer is 2K, the number of times that the CPU needs to respond to the data buffer to refresh the interrupt is 4/2-1 in the process of writing the data. Before data writing is started, a CPU in the SPI system fills 2K of 4K data to be written into a data buffer area, then three variables of a read data starting address, the capacity of the data buffer area and the refreshing time of the data buffer area of the SPI system are configured, a water level trigger value of a TX FIFO is configured to be 32, and then SPI enabling is started. Firstly, a control module in an SPI system starts an ahb master module to enable, the ahb master module reads the first 64 data of a data cache area according to a data starting address and writes the data into a TX FIFO, and then starts an SPI interface module to enable, so that the SPI interface module converts 64 data in the TX FIFO into corresponding SPI protocol excitation according to a clock signal. When the data in the TX FIFO only has 32 or less than 32 frames, a watermark triggering interrupt is generated, in this process, the ahb master module records the total amount of the data read from the data buffer area, and when the control module judges that the total amount of the data read from the data buffer area by the ahb master module is not equal to the capacity of the data buffer area, it indicates that the ahb master module has not yet read all the data in the data buffer area, and at this time, the control module responds to the watermark triggering interrupt sent by the TX FIFO, so that the ahb master module reads 32 frames of data from the data buffer area and writes the data into the TX FIFO. When the control module judges that the total amount of data read from the data buffer by the ahb master module is equal to the capacity of the data buffer, it is indicated that the ahb master module has read all the data of the data buffer, at this time, the control module will determine whether the number of times of refreshing the data buffer is equal to the number of times of refreshing the configured data buffer, if the number of times of the data cache area refreshed does not reach the number of times of the data cache area required to be refreshed, namely the CPU needs to respond to the number of times of interruption of the data cache area required to be refreshed, the control module controls the ahb master module to send out interruption of a data cache area refreshing request, and the total counter of the read or written data in the ahb master module is cleared to enter the next cycle judgment, the refreshing time of the current data cache region is increased by 1, and after the data in the TX FIFO is completely converted by the spi interface module, waiting for the refresh interrupt of the CPU response data buffer area. And after receiving the interruption of the data cache region refreshing request, the CPU fills the remaining 2K data into the data cache region and sends a data cache region refreshing completion interruption to the SPI controller. The SPI receives the interrupt and then automatically enters the next round of data writing cycle. When the control module judges that the number of times of refreshing the data buffer area is equal to the number of times of refreshing the configured data buffer area, the control module indicates that the data to be transmitted is completely loaded into the data buffer area, and the residual data in the TX FIFO is the last data to be transmitted. And after the control module waits for the spi interface module to send the last data, the control module closes the enabling of the ahb master module and the spi interface module, and the automatic writing process is finished.
As shown in fig. 3, the ahb slave module is used for the CPU to configure internal registers of the SPI system, such as a read data start address, a data buffer capacity, and a data buffer refresh rate in the control module. The control module is used for judging whether the ahb master module reads the complete data cache region and whether the current data cache region refreshing frequency reaches the configured required refreshing frequency when the TX FIFO water level triggers the interrupt generation, and controlling the ahb master module to read data from the data cache region, or sending the data cache region refreshing interrupt, or ending the process and closing the enabling of each module; and the SPI interface module converts the data in the TX FIFO into corresponding SPI protocol excitation according to the configuration value in the ahb slave module.
The features of the above embodiments may be arbitrarily combined, and for the sake of brevity, all possible combinations of the above embodiments are not described, but should be considered as within the scope of the present specification as long as there is no contradiction between the combinations of the features.
The above embodiments only express a few embodiments of the present invention, and the description thereof is specific and detailed, but not construed as limiting the scope of the invention. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application.

Claims (10)

1. A control method for automatically writing data in an SPI system is characterized by comprising the following steps:
s1: the SPI system starts to write the data of the data buffer area into the TX FIFO according to the enable signal, records the total amount of the written data, then sends the data in the TX FIFO, and proceeds to step S2;
s2: the SPI system determines whether to send out the refresh interruption of the data cache area according to the relation between the total amount of written data and the capacity of the data cache area and the number of times of sending out the refresh interruption of the data cache area, if the data cache area meets the requirement, the SPI system goes to step S3, and if the data cache area does not meet the requirement, the SPI system goes to step S4;
s3: the SPI system sends out the data buffer area to refresh and interrupt, makes the CPU respond to the data buffer area to refresh and interrupt, fills the data into the data buffer area, and enters step S1 after receiving the signal that the CPU finishes refreshing and finishes interrupting;
s4: and if the data in the TX FIFO is not in line with the requirement, the SPI system writes the data in the data buffer area into the TX FIFO and finishes the work after the data in the TX FIFO is sent.
2. The method as claimed in claim 1, wherein before the SPI system starts writing data, the CPU divides the data buffer and fills the data buffer with data to be transmitted, and then configures the SPI system enable after configuring the read data start address, the data buffer capacity, and the number of times the data buffer needs to be refreshed of the SPI system through the ahb slave module.
3. The method as claimed in claim 2, wherein the CPU fills the data buffer with the data to be transmitted and configures the number of times the data buffer of the SPI system needs to be refreshed according to the relationship between the total amount of the data to be transmitted and the capacity of the data buffer.
4. The SPI system automatic write data control method according to claim 1, wherein in step S1, the control module in the SPI system turns on ahb master module enable according to the enable signal, causes the ahb master module to read data in the data buffer according to the data start address, then writes into the TX FIFO, and records the total amount of written data.
5. The SPI system automatic data writing control method according to claim 1, wherein in steps S1 and S4, during the process of transmitting the data of the TX FIFO, if the remaining data in the TX FIFO is less than or equal to the set value, the TX FIFO sends a water level trigger interrupt to trigger the ahb master module to continuously write the data of the data buffer into the TX FIFO.
6. The SPI system control method of automatically writing data according to claim 5, wherein the SPI system completes transmission by converting data in a TX FIFO into corresponding SPI protocol excitation through a SPI interface module.
7. The SPI system control method of automatically writing data of claim 1, wherein in step S2, when the total amount of data read equals the capacity of the data buffer, the SPI system determines the relationship between the number of data buffer refresh interrupts issued and the number of data buffer refresh interrupts required, and if the number of data buffer refresh interrupts issued is less than the number of data buffer refresh interrupts required, then step S3 is entered; if the number of times of interruption for refreshing the data cache is equal to the number of times of interruption for refreshing the data cache, the process proceeds to step 4.
8. The SPI system control method of automatic data writing according to claim 1, wherein in step S3, the SPI system resets the total amount of data recorded as read by the ahb master module to zero after receiving the signal that the CPU has completed the refresh completion interrupt, and then proceeds to step S1.
9. An SPI system, characterized in that it executes the control method of automatically writing data by the SPI system according to any one of claims 1 to 8, said SPI system comprising: the system comprises two SPI controllers, a CPU and a data cache region which are connected in pairs, wherein the SPI controllers are used for converting data in the data cache region into excitation conforming to an SPI protocol, the CPU is used for filling data to be written into the data cache region, and the data cache region is used for storing the data.
10. The SPI system according to claim 1, wherein the SPI controller comprises: a control module, an ahb master module, a spi interface module, a TX FIFO, an RX FIFO, and an ahb slave module, wherein,
the control module is connected with the ahb master module and the ahb slave module and is used for controlling the SPI controller to read data in the cache region;
the ahb master module is connected with the control module and the TX FIFO and is used for reading data in the data buffer area and writing the data into the TX FIFO;
the ahb slave module is connected with the control module, the SPI interface module, the TX FIFO and the RX FIFO and is used for configuring an internal register of the SPI system;
the SPI interface module is connected with the ahb slave module, the TX FIFO and the RX FIFO and is used for converting data in the TX FIFO into corresponding SPI protocol excitation and storing data received by the SPI interface module in the RX FIFO;
the TX FIFO is used for storing data to be sent;
the RX FIFO is used to store received data.
CN202110659535.XA 2021-06-15 2021-06-15 Control method for automatically writing data into SPI system and SPI system Pending CN113590520A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110659535.XA CN113590520A (en) 2021-06-15 2021-06-15 Control method for automatically writing data into SPI system and SPI system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110659535.XA CN113590520A (en) 2021-06-15 2021-06-15 Control method for automatically writing data into SPI system and SPI system

Publications (1)

Publication Number Publication Date
CN113590520A true CN113590520A (en) 2021-11-02

Family

ID=78243768

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110659535.XA Pending CN113590520A (en) 2021-06-15 2021-06-15 Control method for automatically writing data into SPI system and SPI system

Country Status (1)

Country Link
CN (1) CN113590520A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114637709A (en) * 2022-02-23 2022-06-17 杭州中科微电子有限公司 Method and module for directly executing serial FLASH program through SPI control interface

Citations (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4700330A (en) * 1985-10-30 1987-10-13 Digital Equipment Corporation Memory for a digital data processing system including circuit for controlling refresh operations during power-up and power-down conditions
US4958277A (en) * 1987-07-24 1990-09-18 Motorola, Inc. Queued serial peripheral interface for use in a data processing system
EP0665502A1 (en) * 1994-01-27 1995-08-02 Sun Microsystems, Inc. Asynchronous serial control circuit
WO1996016371A1 (en) * 1994-11-22 1996-05-30 Monolithic System Technology, Inc. Method and structure for utilizing a dram array as second level cache memory
US5568443A (en) * 1995-09-08 1996-10-22 Smithills Multimedia Systems, Inc. Combination dual-port random access memory and multiple first-in-first-out (FIFO) buffer memories
US5615355A (en) * 1992-10-22 1997-03-25 Ampex Corporation Method and apparatus for buffering a user application from the timing requirements of a DRAM
EP0828217A1 (en) * 1996-09-09 1998-03-11 Kabushiki Kaisha Toshiba Cache flush apparatus and computer system having the same
KR19990075990A (en) * 1998-03-26 1999-10-15 김영환 Data processing systems
KR20010019050A (en) * 1999-08-24 2001-03-15 서평원 Read/Write Cancelable and Variable Depth First In First Out Communication System
KR20010054137A (en) * 1999-12-03 2001-07-02 윤종용 Bus control method capable of improving system efficiency
KR20010062770A (en) * 1999-12-27 2001-07-07 모리시타 요이찌 Data transfer apparatus
JP2001216110A (en) * 2000-02-02 2001-08-10 Canon Inc Method for controlling cache, printing controller using the method, character processor, and its method
US20020133646A1 (en) * 2001-03-16 2002-09-19 Hugo Cheung Method and device for providing high data rate for a serial peripheral interface
US20040019743A1 (en) * 2000-11-22 2004-01-29 Mario Au FIFO memory devices having multi-port cache memory arrays therein that support hidden EDC latency and bus matching and methods of operating same
CN1474568A (en) * 2002-08-06 2004-02-11 华为技术有限公司 Direct internal storage access system and method of multiple path data
CN1512373A (en) * 2002-12-26 2004-07-14 华为技术有限公司 Method for multiple CPU communication
US20050214607A1 (en) * 2004-03-25 2005-09-29 Jinichi Imahashi Polymer electrolyte fuel cell power generation system and stationary co-generation system using the same
US20060061795A1 (en) * 2004-05-27 2006-03-23 Silverbrook Research Pty Ltd Storage of key in arbitrary locations in memory
US20060119604A1 (en) * 2004-12-03 2006-06-08 Shenzhen Mindray Bio-Medical Electronics Co. Ltd. Method and apparatus for accelerating the display of horizontal lines
US20060132518A1 (en) * 2004-05-27 2006-06-22 Silverbrook Research Pty Ltd Printhead module having interleaved shift registers
JP2006331134A (en) * 2005-05-26 2006-12-07 Matsushita Electric Ind Co Ltd Reproduction device
JP2006338194A (en) * 2005-05-31 2006-12-14 Kyocera Mita Corp Data processing system, data processing program, and data processing method
US20070033341A1 (en) * 2005-08-04 2007-02-08 Akiyoshi Hashimoto Storage system for controlling disk cache
US20070061342A1 (en) * 2005-09-09 2007-03-15 Thomas Magdeburger Data structures and circuit for multi-channel data transfers using a serial peripheral interface
KR20070056864A (en) * 2005-11-30 2007-06-04 삼성전자주식회사 Method and apparatus for reconfigurable tx/rx fifo using in a wide-band stereo codec interface
CN1983230A (en) * 2005-12-14 2007-06-20 联发科技股份有限公司 String peripheral interface device
CN101034384A (en) * 2007-04-26 2007-09-12 北京中星微电子有限公司 DMA controller and transmit method capable of simultaneously carrying out read-write operation
JP2007249667A (en) * 2006-03-16 2007-09-27 Sony Corp Data transfer device, and data transfer system
KR100787220B1 (en) * 2006-09-08 2007-12-21 삼성전자주식회사 Electronic apparatus with device possible to both read and write simultaneously and method thereof
US20080109582A1 (en) * 2006-11-06 2008-05-08 Elite Semiconductor Memory Technology Inc. Transmission method for serial periphery interface serial flash
KR20080066463A (en) * 2007-01-12 2008-07-16 엠텍비젼 주식회사 Multimedia storage device and control method of the same
US20080288675A1 (en) * 2007-05-18 2008-11-20 Seiko Epson Corporation Host device, information processor, electronic apparatus, program, and method for controlling reading
CN101446932A (en) * 2008-12-24 2009-06-03 北京中星微电子有限公司 Method and device for transmitting audio data
JP2009157549A (en) * 2007-12-26 2009-07-16 Yokogawa Electric Corp Sdram refresh control device
CN101702147A (en) * 2009-11-17 2010-05-05 华为技术有限公司 Data transmission method and high speed data transmission interface device
CN102097122A (en) * 2009-12-10 2011-06-15 上海华虹集成电路有限责任公司 NAND flash controller circuit of multi-channel shared data cache region
CN102103490A (en) * 2010-12-17 2011-06-22 曙光信息产业股份有限公司 Method for improving memory efficiency by using stream processing
US20130064321A1 (en) * 2011-09-14 2013-03-14 Vega Methods for asynchronous serial data transmission using a synchronous serial interface
CN103064805A (en) * 2012-12-25 2013-04-24 深圳先进技术研究院 Serial Peripheral Interface (SPI) controller and communication method
CN104050121A (en) * 2014-06-13 2014-09-17 四川亚美动力技术有限公司 Double-receiving double-emitting programmable ARINC 429 communication interface chip
CN104506379A (en) * 2014-12-12 2015-04-08 北京锐安科技有限公司 Method and system for capturing network data
KR20150039142A (en) * 2015-02-16 2015-04-09 주식회사 이노와이어리스 Serial peripheral interface with control logic for system performance improvement, and method therefor
CN104750433A (en) * 2015-03-26 2015-07-01 浪潮集团有限公司 Cache design method based on SCST
GB201510552D0 (en) * 2015-06-16 2015-07-29 Nordic Semiconductor Asa Data processing
CN104866438A (en) * 2014-02-20 2015-08-26 联想(北京)有限公司 Storage device, storage device control method and electronic equipment
CN205038640U (en) * 2015-09-25 2016-02-17 河南思维自动化设备股份有限公司 Solve SPI bus communication delayed SPI equipment
CN105393236A (en) * 2014-05-16 2016-03-09 华为技术有限公司 Fast data read/write method and apparatus
CN106528454A (en) * 2016-11-04 2017-03-22 中国人民解放军国防科学技术大学 Memory system cache mechanism based on flash memory
CN106873725A (en) * 2015-12-11 2017-06-20 广达电脑股份有限公司 Component carrying device, change-over panel and the method for refreshing memory cache
CN106874224A (en) * 2017-02-17 2017-06-20 杭州朔天科技有限公司 The multi-thread SPI Flash controllers of automatic transporting and adaptation device
CN107018087A (en) * 2016-01-28 2017-08-04 长城汽车股份有限公司 Data communications method and system
US20180024949A1 (en) * 2016-07-22 2018-01-25 Samsung Electronics Co., Ltd. Method of achieving low write latency in a data storage system
CN107704407A (en) * 2017-11-02 2018-02-16 郑州云海信息技术有限公司 A kind of system and method for being used for data processing between SPI and UART
CN107967227A (en) * 2017-12-22 2018-04-27 苏州国芯科技有限公司 A kind of communication means and SPI hosts, SPI slaves based on SPI
CN108427894A (en) * 2018-03-27 2018-08-21 中国农业银行股份有限公司 A kind of data communications method and device
CN108932207A (en) * 2017-05-23 2018-12-04 珠海全志科技股份有限公司 SDIO-WIFI data transmission method and system with buffer area
CN109344111A (en) * 2018-10-15 2019-02-15 北京电子工程总体研究所 A kind of data transmission system and method for the SOC based on double-core ARM
CN109597769A (en) * 2018-12-04 2019-04-09 郑州云海信息技术有限公司 A kind of data cached write-back method, system, device and readable storage medium storing program for executing
US20190129848A1 (en) * 2017-10-30 2019-05-02 EMC IP Holding Company LLC Throttling writes with asynchronous flushing
CN110765058A (en) * 2019-09-12 2020-02-07 深圳震有科技股份有限公司 Method, system, equipment and medium for realizing SPI slave function by GPIO
CN111124997A (en) * 2019-12-25 2020-05-08 海光信息技术有限公司 Data sending method, data receiving method, data sending device, data receiving device, processor chip and server
CN111143264A (en) * 2019-12-30 2020-05-12 山东方寸微电子科技有限公司 APB bridge for realizing synchronous mode, APB bridge for realizing asynchronous mode and control method thereof
CN111739569A (en) * 2020-06-19 2020-10-02 西安微电子技术研究所 SDRAM (synchronous dynamic random access memory) control system and control method for reading and writing simultaneously
CN111782400A (en) * 2020-07-09 2020-10-16 中车株洲电力机车有限公司 Rail transit vehicle display system and CPU load balancing optimization method thereof
CN111782578A (en) * 2020-05-29 2020-10-16 西安电子科技大学 Cache control method, system, storage medium, computer equipment and application
CN112131156A (en) * 2020-09-03 2020-12-25 山东云海国创云计算装备产业创新中心有限公司 Data transmission method, system, electronic equipment and storage medium
CN112199071A (en) * 2020-10-26 2021-01-08 中国兵器工业集团第二一四研究所苏州研发中心 Address-controllable asynchronous buffer and asynchronous buffering method
CN112328523A (en) * 2020-10-28 2021-02-05 深圳市宏旺微电子有限公司 Method, device and system for transmitting double-rate signal
CN112612740A (en) * 2020-12-21 2021-04-06 中国科学院微电子研究所 Serial data transparent transmission system based on SPI bus protocol
WO2021068567A1 (en) * 2019-10-12 2021-04-15 平安科技(深圳)有限公司 Blockchain block distribution method, apparatus, computer device and storage medium

Patent Citations (70)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4700330A (en) * 1985-10-30 1987-10-13 Digital Equipment Corporation Memory for a digital data processing system including circuit for controlling refresh operations during power-up and power-down conditions
US4958277A (en) * 1987-07-24 1990-09-18 Motorola, Inc. Queued serial peripheral interface for use in a data processing system
US5615355A (en) * 1992-10-22 1997-03-25 Ampex Corporation Method and apparatus for buffering a user application from the timing requirements of a DRAM
EP0665502A1 (en) * 1994-01-27 1995-08-02 Sun Microsystems, Inc. Asynchronous serial control circuit
WO1996016371A1 (en) * 1994-11-22 1996-05-30 Monolithic System Technology, Inc. Method and structure for utilizing a dram array as second level cache memory
US5568443A (en) * 1995-09-08 1996-10-22 Smithills Multimedia Systems, Inc. Combination dual-port random access memory and multiple first-in-first-out (FIFO) buffer memories
EP0828217A1 (en) * 1996-09-09 1998-03-11 Kabushiki Kaisha Toshiba Cache flush apparatus and computer system having the same
KR19990075990A (en) * 1998-03-26 1999-10-15 김영환 Data processing systems
KR20010019050A (en) * 1999-08-24 2001-03-15 서평원 Read/Write Cancelable and Variable Depth First In First Out Communication System
KR20010054137A (en) * 1999-12-03 2001-07-02 윤종용 Bus control method capable of improving system efficiency
KR20010062770A (en) * 1999-12-27 2001-07-07 모리시타 요이찌 Data transfer apparatus
JP2001216110A (en) * 2000-02-02 2001-08-10 Canon Inc Method for controlling cache, printing controller using the method, character processor, and its method
US20040019743A1 (en) * 2000-11-22 2004-01-29 Mario Au FIFO memory devices having multi-port cache memory arrays therein that support hidden EDC latency and bus matching and methods of operating same
US20020133646A1 (en) * 2001-03-16 2002-09-19 Hugo Cheung Method and device for providing high data rate for a serial peripheral interface
CN1474568A (en) * 2002-08-06 2004-02-11 华为技术有限公司 Direct internal storage access system and method of multiple path data
CN1512373A (en) * 2002-12-26 2004-07-14 华为技术有限公司 Method for multiple CPU communication
US20050214607A1 (en) * 2004-03-25 2005-09-29 Jinichi Imahashi Polymer electrolyte fuel cell power generation system and stationary co-generation system using the same
US20060061795A1 (en) * 2004-05-27 2006-03-23 Silverbrook Research Pty Ltd Storage of key in arbitrary locations in memory
US20060132518A1 (en) * 2004-05-27 2006-06-22 Silverbrook Research Pty Ltd Printhead module having interleaved shift registers
US20060119604A1 (en) * 2004-12-03 2006-06-08 Shenzhen Mindray Bio-Medical Electronics Co. Ltd. Method and apparatus for accelerating the display of horizontal lines
JP2006331134A (en) * 2005-05-26 2006-12-07 Matsushita Electric Ind Co Ltd Reproduction device
JP2006338194A (en) * 2005-05-31 2006-12-14 Kyocera Mita Corp Data processing system, data processing program, and data processing method
US20070033341A1 (en) * 2005-08-04 2007-02-08 Akiyoshi Hashimoto Storage system for controlling disk cache
US20070061342A1 (en) * 2005-09-09 2007-03-15 Thomas Magdeburger Data structures and circuit for multi-channel data transfers using a serial peripheral interface
KR20070056864A (en) * 2005-11-30 2007-06-04 삼성전자주식회사 Method and apparatus for reconfigurable tx/rx fifo using in a wide-band stereo codec interface
CN1983230A (en) * 2005-12-14 2007-06-20 联发科技股份有限公司 String peripheral interface device
JP2007249667A (en) * 2006-03-16 2007-09-27 Sony Corp Data transfer device, and data transfer system
KR100787220B1 (en) * 2006-09-08 2007-12-21 삼성전자주식회사 Electronic apparatus with device possible to both read and write simultaneously and method thereof
US20080109582A1 (en) * 2006-11-06 2008-05-08 Elite Semiconductor Memory Technology Inc. Transmission method for serial periphery interface serial flash
KR20080066463A (en) * 2007-01-12 2008-07-16 엠텍비젼 주식회사 Multimedia storage device and control method of the same
CN101034384A (en) * 2007-04-26 2007-09-12 北京中星微电子有限公司 DMA controller and transmit method capable of simultaneously carrying out read-write operation
US20080288675A1 (en) * 2007-05-18 2008-11-20 Seiko Epson Corporation Host device, information processor, electronic apparatus, program, and method for controlling reading
JP2009157549A (en) * 2007-12-26 2009-07-16 Yokogawa Electric Corp Sdram refresh control device
CN101446932A (en) * 2008-12-24 2009-06-03 北京中星微电子有限公司 Method and device for transmitting audio data
CN101702147A (en) * 2009-11-17 2010-05-05 华为技术有限公司 Data transmission method and high speed data transmission interface device
CN102097122A (en) * 2009-12-10 2011-06-15 上海华虹集成电路有限责任公司 NAND flash controller circuit of multi-channel shared data cache region
CN102103490A (en) * 2010-12-17 2011-06-22 曙光信息产业股份有限公司 Method for improving memory efficiency by using stream processing
US20130064321A1 (en) * 2011-09-14 2013-03-14 Vega Methods for asynchronous serial data transmission using a synchronous serial interface
CN103064805A (en) * 2012-12-25 2013-04-24 深圳先进技术研究院 Serial Peripheral Interface (SPI) controller and communication method
CN104866438A (en) * 2014-02-20 2015-08-26 联想(北京)有限公司 Storage device, storage device control method and electronic equipment
CN105393236A (en) * 2014-05-16 2016-03-09 华为技术有限公司 Fast data read/write method and apparatus
CN104050121A (en) * 2014-06-13 2014-09-17 四川亚美动力技术有限公司 Double-receiving double-emitting programmable ARINC 429 communication interface chip
CN104506379A (en) * 2014-12-12 2015-04-08 北京锐安科技有限公司 Method and system for capturing network data
KR20150039142A (en) * 2015-02-16 2015-04-09 주식회사 이노와이어리스 Serial peripheral interface with control logic for system performance improvement, and method therefor
CN104750433A (en) * 2015-03-26 2015-07-01 浪潮集团有限公司 Cache design method based on SCST
GB201510552D0 (en) * 2015-06-16 2015-07-29 Nordic Semiconductor Asa Data processing
CN205038640U (en) * 2015-09-25 2016-02-17 河南思维自动化设备股份有限公司 Solve SPI bus communication delayed SPI equipment
CN106873725A (en) * 2015-12-11 2017-06-20 广达电脑股份有限公司 Component carrying device, change-over panel and the method for refreshing memory cache
CN107018087A (en) * 2016-01-28 2017-08-04 长城汽车股份有限公司 Data communications method and system
US20180024949A1 (en) * 2016-07-22 2018-01-25 Samsung Electronics Co., Ltd. Method of achieving low write latency in a data storage system
CN106528454A (en) * 2016-11-04 2017-03-22 中国人民解放军国防科学技术大学 Memory system cache mechanism based on flash memory
CN106874224A (en) * 2017-02-17 2017-06-20 杭州朔天科技有限公司 The multi-thread SPI Flash controllers of automatic transporting and adaptation device
CN108932207A (en) * 2017-05-23 2018-12-04 珠海全志科技股份有限公司 SDIO-WIFI data transmission method and system with buffer area
US20190129848A1 (en) * 2017-10-30 2019-05-02 EMC IP Holding Company LLC Throttling writes with asynchronous flushing
CN107704407A (en) * 2017-11-02 2018-02-16 郑州云海信息技术有限公司 A kind of system and method for being used for data processing between SPI and UART
CN107967227A (en) * 2017-12-22 2018-04-27 苏州国芯科技有限公司 A kind of communication means and SPI hosts, SPI slaves based on SPI
CN108427894A (en) * 2018-03-27 2018-08-21 中国农业银行股份有限公司 A kind of data communications method and device
CN109344111A (en) * 2018-10-15 2019-02-15 北京电子工程总体研究所 A kind of data transmission system and method for the SOC based on double-core ARM
CN109597769A (en) * 2018-12-04 2019-04-09 郑州云海信息技术有限公司 A kind of data cached write-back method, system, device and readable storage medium storing program for executing
CN110765058A (en) * 2019-09-12 2020-02-07 深圳震有科技股份有限公司 Method, system, equipment and medium for realizing SPI slave function by GPIO
WO2021068567A1 (en) * 2019-10-12 2021-04-15 平安科技(深圳)有限公司 Blockchain block distribution method, apparatus, computer device and storage medium
CN111124997A (en) * 2019-12-25 2020-05-08 海光信息技术有限公司 Data sending method, data receiving method, data sending device, data receiving device, processor chip and server
CN111143264A (en) * 2019-12-30 2020-05-12 山东方寸微电子科技有限公司 APB bridge for realizing synchronous mode, APB bridge for realizing asynchronous mode and control method thereof
CN111782578A (en) * 2020-05-29 2020-10-16 西安电子科技大学 Cache control method, system, storage medium, computer equipment and application
CN111739569A (en) * 2020-06-19 2020-10-02 西安微电子技术研究所 SDRAM (synchronous dynamic random access memory) control system and control method for reading and writing simultaneously
CN111782400A (en) * 2020-07-09 2020-10-16 中车株洲电力机车有限公司 Rail transit vehicle display system and CPU load balancing optimization method thereof
CN112131156A (en) * 2020-09-03 2020-12-25 山东云海国创云计算装备产业创新中心有限公司 Data transmission method, system, electronic equipment and storage medium
CN112199071A (en) * 2020-10-26 2021-01-08 中国兵器工业集团第二一四研究所苏州研发中心 Address-controllable asynchronous buffer and asynchronous buffering method
CN112328523A (en) * 2020-10-28 2021-02-05 深圳市宏旺微电子有限公司 Method, device and system for transmitting double-rate signal
CN112612740A (en) * 2020-12-21 2021-04-06 中国科学院微电子研究所 Serial data transparent transmission system based on SPI bus protocol

Non-Patent Citations (10)

* Cited by examiner, † Cited by third party
Title
吴海旋;: "主机与存储器之间的缓存专利技术分析", 河南科技, no. 11 *
孙冬雪;王竹刚;: "基于DDR3 SDRAM的大容量异步FIFO缓存系统的设计与实现", 电子设计工程, no. 09 *
张娟娟;蒲南江;: "基于闪存阵列的缓存容量确定方法", 电子测试, no. 08 *
李丽斯;杨立杰;殷晔;安佰岳;刘康丽;: "基于SDRAM大容量缓存FIFO控制器的设计与实现", 计算机测量与控制, no. 08 *
李爱佳;崔建峰;邓泽平;刘慧丰;: "CH378主机方式USB存储设备写入速度提升方法研究", 电子器件, no. 02 *
杨凯乔;: "一种新的环形缓冲区设计与实现方法", 电脑知识与技术, no. 09 *
王丽平, 张钢: "缓存技术在管理信息系统中的应用", 河北建筑科技学院学报, no. 01 *
王红兵;强景;周珍龙;: "Xilinx MIG IP核的研究及大容量数据缓冲区的实现", 电子产品世界, no. 08 *
邓星星;王锋;焦国太;赵河明;: "基于CH378嵌入式存储系统设计", 计算机测量与控制, no. 02 *
马其琪;鲍爱达;: "基于DDR3 SDRAM的高速大容量数据缓存设计", 计算机测量与控制, no. 09 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114637709A (en) * 2022-02-23 2022-06-17 杭州中科微电子有限公司 Method and module for directly executing serial FLASH program through SPI control interface

Similar Documents

Publication Publication Date Title
US4016541A (en) Memory unit for connection to central processor unit and interconnecting bus
US7543114B2 (en) System and controller with reduced bus utilization time
KR101247247B1 (en) Controller for controlling output of clock signal and system having the same
KR102285749B1 (en) System on chip having semaphore function and emplementing method thereof
CN112802518B (en) Data writing method, system-on-chip and computer readable storage medium
US20230333773A1 (en) Memory controller
CN113590520A (en) Control method for automatically writing data into SPI system and SPI system
CN101944075A (en) Bus system and method and device for reading and writing low-speed bus device
US9015272B2 (en) Microcomputer
CN113760792A (en) AXI4 bus control circuit for image access based on FPGA and data transmission method thereof
US20150177816A1 (en) Semiconductor integrated circuit apparatus
KR100476895B1 (en) Interface device having variable data transfer mode and operating method thereof
CN116776781A (en) Register parameter management method, system, equipment and storage medium
US6671752B1 (en) Method and apparatus for bus optimization in a PLB system
JP2001282704A (en) Device, method and system for processing data
JPWO2007105376A1 (en) Integrated circuit and integrated circuit system
US20080320178A1 (en) DMA transfer apparatus
CN113419985A (en) Control method for SPI system to automatically read data and SPI system
US20070131767A1 (en) System and method for media card communication
JP4346506B2 (en) First-in first-out memory and storage medium control device using the same
US8462561B2 (en) System and method for interfacing burst mode devices and page mode devices
JP3206585B2 (en) Bus control device, master device, slave device, and bus control method
CN114896183B (en) ZYNQ-based serial port data transmission method
US6493775B2 (en) Control for timed access of devices to a system bus
CN113934671B (en) Interface control chip and network equipment

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