CN113204763A - Method, system, storage medium and device for receiving data by CPLD - Google Patents
Method, system, storage medium and device for receiving data by CPLD Download PDFInfo
- Publication number
- CN113204763A CN113204763A CN202110436662.3A CN202110436662A CN113204763A CN 113204763 A CN113204763 A CN 113204763A CN 202110436662 A CN202110436662 A CN 202110436662A CN 113204763 A CN113204763 A CN 113204763A
- Authority
- CN
- China
- Prior art keywords
- data
- cpld
- transmission medium
- data transmission
- receiving
- 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 51
- 230000005540 biological transmission Effects 0.000 claims abstract description 108
- 230000004044 response Effects 0.000 claims abstract description 25
- 230000000903 blocking effect Effects 0.000 claims abstract description 14
- 238000004590 computer program Methods 0.000 claims description 9
- 238000010586 diagram Methods 0.000 description 10
- 238000012546 transfer Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 230000009545 invasion Effects 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 230000005856 abnormality Effects 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000005538 encapsulation Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/552—Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3476—Data logging
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
The invention provides a method, a system, a storage medium and equipment for receiving data by a CPLD, wherein the method comprises the following steps: transmitting data to the CPLD of the server system through the data transmission medium in response to the server system starting; responding to the CPLD receiving data, and judging whether the received data is correct; in response to the received data being wrong, clearing the received data, updating the numerical value of the receiving error record to be plus one, and judging whether the updated numerical value of the receiving error record reaches a preset threshold value or not; and in response to reaching the preset threshold, blocking the connection of the CPLD and the data transmission medium to enable the CPLD to refuse to receive the data transmitted by the data transmission medium. The invention can record the times of continuously receiving error data; when the number of times of continuously receiving the error data reaches a preset threshold value, the CPLD is blocked from being connected with the data transmission medium, so that the CPLD can prevent external illegal data intrusion, and the safety of receiving the data by the CPLD is effectively ensured.
Description
Technical Field
The present invention relates to the field of CPLD technologies, and in particular, to a method, a system, a storage medium, and a device for receiving data by a CPLD.
Background
In the server system of the present invention, CPLDs are commonly used, such as a motherboard, a fan board, a backplane, and the like, wherein the CPLDs include CPLDs, and the CPLDs of each board have respective functions. In the prior art, data verification is usually used for protecting data, the data sent by the BMC is verified through the CPLDs, and when a verification result is wrong, the data is discarded.
The above method still has insecurity, and if an external intruder wants to modify or destroy the data, the data can be cracked by multiple attempts. Therefore, the CPLD of the server system still has the problem that the received data is not safe.
Disclosure of Invention
In view of the above, the present invention provides a method, a system, a storage medium, and a device for receiving data by a CPLD, so as to solve the problem in the prior art that the data received by the CPLD is not secure.
Based on the above purpose, the present invention provides a method for receiving data by a CPLD, which comprises the following steps:
transmitting data to the CPLD of the server system through the data transmission medium in response to the server system starting;
responding to the CPLD receiving data, and judging whether the received data is correct;
in response to the received data being wrong, clearing the received data, updating the numerical value of the receiving error record to be plus one, and judging whether the updated numerical value of the receiving error record reaches a preset threshold value or not;
and in response to reaching the preset threshold, blocking the connection of the CPLD and the data transmission medium to enable the CPLD to refuse to receive the data transmitted by the data transmission medium.
In some embodiments, the method further comprises: in response to the received data being correct, the CPLD continues to receive data transmitted by the data transmission medium and zeroes out the value of the reception error record.
In some embodiments, the step of determining whether the received data is correct comprises: the authentication bit in the received data is authenticated by the CPLD to determine whether it is correct.
In some embodiments, the step of blocking the connection of the CPLD to the data transmission medium such that it rejects receiving data transmitted by the data transmission medium comprises: and closing a connection port between the CPLD and the data transmission medium through the CPLD to refuse to receive the data transmitted by the data transmission medium.
In some embodiments, the step of transmitting the data to the CPLD of the server system over the data transmission medium comprises: and transmitting the data to the CPLD of the server system by the BMC through the data transmission medium.
In some embodiments, the method further comprises: and returning to the step of transmitting the data to the CPLD of the server system through the data transmission medium in response to the preset threshold value not being reached.
In some embodiments, the data transfer medium is an I2C bus.
In another aspect of the present invention, a system for receiving data by a CPLD is further provided, including:
the data transmission module is configured for responding to the starting of the server system and transmitting data to the CPLD of the server system through the data transmission medium;
the data judgment module is configured for responding to the data received by the CPLD and judging whether the received data is correct or not;
a receiving error record judging module configured to respond to the received data being erroneous, clear the received data and update the value of the receiving error record to be incremented by one, and judge whether the updated value of the receiving error record reaches a preset threshold value; and
and the data receiving refusing module is configured for responding to the preset threshold value, and blocking the connection between the CPLD and the data transmission medium so as to refuse to receive the data transmitted by the data transmission medium.
In yet another aspect of the present invention, there is also provided a computer readable storage medium storing computer program instructions which, when executed, implement any one of the methods described above.
In yet another aspect of the present invention, a computer device is provided, which includes a memory and a processor, the memory storing a computer program, the computer program executing any one of the above methods when executed by the processor.
The invention has at least the following beneficial technical effects:
according to the invention, the receiving error record is set in the CPLD, so that the frequency of continuously receiving error data can be recorded; by judging whether the frequency of continuously receiving the error data reaches a preset threshold value or not and blocking the connection between the CPLD and the data transmission medium after the frequency reaches the preset threshold value, the CPLD can be prevented from external illegal data invasion, so that the safety of receiving data by the CPLD is effectively ensured.
Drawings
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings used in the description of the embodiments or the prior art will be briefly described below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art that other embodiments can be obtained by using the drawings without creative efforts.
Fig. 1 is a schematic diagram of a method for receiving data by a CPLD according to an embodiment of the present invention;
FIG. 2 is a schematic illustration of an encapsulation of a set of data transmitted in a data transmission medium according to an embodiment of the present invention;
fig. 3 is a schematic diagram of a system for receiving data by a CPLD according to an embodiment of the present invention;
fig. 4 is a schematic diagram of a computer-readable storage medium for implementing a method for receiving data by a CPLD according to an embodiment of the present invention;
fig. 5 is a schematic hardware structure diagram of an embodiment of a computer device for executing the method for receiving data by a CPLD according to the present invention.
Detailed Description
In order to make the objects, technical solutions and advantages of the present invention more apparent, the following embodiments of the present invention are described in further detail with reference to the accompanying drawings.
It should be noted that all expressions using "first" and "second" in the embodiments of the present invention are used for distinguishing two non-identical entities with the same name or different parameters, and it is understood that "first" and "second" are only used for convenience of expression and should not be construed as limiting the embodiments of the present invention. Furthermore, the terms "comprises" and "comprising," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or apparatus that comprises a list of steps or elements does not include all of the other steps or elements inherent in the list.
In view of the above objects, a first aspect of the embodiments of the present invention proposes an embodiment of a method for receiving data by a CPLD. Fig. 1 is a schematic diagram illustrating an embodiment of a method for receiving data by a CPLD according to the present invention. As shown in fig. 1, the embodiment of the present invention includes the following steps:
step S10, responding to the starting of the server system, transmitting data to the CPLD of the server system through the data transmission medium;
step S20, responding to the CPLD receiving data, and judging whether the received data is correct;
step S30, in response to the received data being wrong, clearing the received data and updating the numerical value of the receiving error record to be plus one, and judging whether the updated numerical value of the receiving error record reaches a preset threshold value;
and step S40, in response to the preset threshold value being reached, blocking the connection between the CPLD and the data transmission medium to enable the CPLD to refuse to receive the data transmitted by the data transmission medium.
The CPLD (Complex Programming Logic Device) adopts Programming technologies such as CMOS EPROM, EEPROM (electrically erasable and programmable read only memory), flash memory, and SRAM (static random access memory), thereby forming a programmable Logic Device with high density, high speed, and low power consumption. The digital integrated circuit is a digital integrated circuit whose logic function is self-constructed by user according to their respective requirements, and its basic design method is characterized by that it utilizes integrated development software platform, and uses the methods of schematic diagram and hardware description language to produce correspondent target file, and utilizes download cable to transfer the code into target chip to implement designed digital system.
The embodiment of the invention can record the times of continuously receiving error data by setting the receiving error record in the CPLD; by judging whether the frequency of continuously receiving the error data reaches a preset threshold value or not and blocking the connection between the CPLD and the data transmission medium after the frequency reaches the preset threshold value, the CPLD can be prevented from external illegal data invasion, so that the safety of receiving data by the CPLD is effectively ensured. Since it is possible that the CPLD tries to break with the illegal data externally when the CPLD receives the wrong data several times in succession, the threshold value can be set appropriately in consideration of the safety of the data in practice in order to avoid such a dangerous situation. The smaller the threshold design is, the lower the tolerance of the CPLD to the frequency of continuously receiving error data is, so that in case that the CPLD is tried to be cracked by the outside, the data can not be input into the CPLD after the trial frequency reaches the threshold, the CPLD is enabled to avoid the invasion of external bad data, and the safety of receiving the data by the CPLD is improved.
In some embodiments, the method further comprises: in response to the received data being correct, the CPLD continues to receive data transmitted by the data transmission medium and zeroes out the value of the reception error record. Specifically, when the server system is started, data are transmitted to the CPLD of the server system through the data transmission medium; after receiving the data, the CPLD judges whether the received data is correct; if the received data is correct, the CPLD continues to receive the data transmitted by the data transmission medium and returns the value of the number of times of receiving error records to zero. When the data received by the CPLD this time is correct, it is possible that the last error data received is due to a temporary abnormality of the data transmission medium or a temporary abnormality of the data transmitting end, and the correct data received this time indicates that all data is normal, and then the CPLD can continue to receive the data transmitted by the data transmission medium.
In some embodiments, the step of determining whether the received data is correct comprises: the authentication bit in the received data is authenticated by the CPLD to determine whether it is correct. Fig. 2 shows a schematic illustration of an encapsulation of a set of data transmitted in a data transmission medium. As shown in fig. 2, a set of data transmitted in a data transmission medium includes four parts, which are: CPLD address, instruction address, data bits, and authentication bits. The CPLD address is used for corresponding to the address identifier of the data transmitting end and identifying the data transmitting end, and the data transmitting end can be BMC or other chips or electronic devices capable of communicating with the CPLD. The instruction address corresponds to the set of action instructions to be performed. The data bits have 8 bits, from Bit0 to Bit7, for storing the specific content corresponding to the command, which is also the main content of the group of data. In order to achieve basic data protection, a group of authentication data is added behind the group of data to be communicated, the authentication bit is used for storing the authentication data, and the data in the data bit can be authenticated through the authentication data, so that whether the communicated data is trusted data or not is confirmed. There are many ways of authenticating data, where the authenticated data is inverted from the communicated data to the authenticated data, i.e., the data to be communicated to the CPLD over the data transmission medium is inverted as a set of authenticated data. For example, if the data to be transmitted to the CPLD via the data transmission medium is 8 bits of 1, the subsequent authentication data must be transmitted to the CPLD by 8 bits of 0, and as long as the CPLD detects that the transmitted authentication data is not the inverse of the data in the data bits (i.e., 8 bits of 0), the CPLD discards the 8 bits of 1 data transmitted by the data transmission medium.
In some embodiments, the step of blocking the connection of the CPLD to the data transmission medium such that it rejects receiving data transmitted by the data transmission medium comprises: and closing a connection port between the CPLD and the data transmission medium through the CPLD to refuse to receive the data transmitted by the data transmission medium. In this embodiment, it is the simplest method to reject the data transmitted by the data transmission medium by closing the connection port between the CPLD and the data transmission medium, but the method is not limited to this, and the connection between the CPLD and the data transmission medium may be blocked by another method to reject the data transmitted by the data transmission medium.
In some embodiments, the step of transmitting the data to the CPLD of the server system over the data transmission medium comprises: and transmitting the data to the CPLD of the server system by the BMC through the data transmission medium. BMC (baseboard Management controller) represents a baseboard Management controller, which is an independent system, and is not dependent on other hardware (such as CPU, memory, etc.) on the system, nor on BIOS, OS (operating system), etc., but BMC may interact with BIOS and OS, and may play a better role in platform Management, and may also individually process some jobs because BMC itself is a small system with an out-of-band processor, and thus, it mainly plays a role in Management and maintenance in a server system by monitoring power supply, temperature, etc. of the system. In this embodiment, other chips or electronic devices that can communicate with the CPLD may transmit data to the CPLD of the server system via a data transmission medium.
In some embodiments, the method further comprises: and returning to the step of transmitting the data to the CPLD of the server system through the data transmission medium in response to the preset threshold value not being reached. Specifically, when the server system is started, data are transmitted to the CPLD of the server system through the data transmission medium; after receiving the data, the CPLD judges whether the received data is correct; if the received data is wrong, clearing the received data, updating the numerical value of the receiving error record to be plus one, and judging whether the updated numerical value of the receiving error record reaches a preset threshold value or not; and if the updated numerical value of the receiving error record does not reach the preset threshold value, returning to the step of transmitting the data to the CPLD of the server system through the data transmission medium.
In some embodiments, the data transfer medium is an I2C bus. I2C (Inter-Integrated Circuit) represents an Integrated Circuit bus, which is a bidirectional binary synchronous serial bus, and in terms of hardware, the I2C bus only needs one data line and two clock lines, and does not need special interface circuits. In this embodiment, the data transmission medium may be other bus, as long as the data transmission medium is in normal communication with the CPLD. If the data transmitting end is considered, a data transmission medium which can be communicated with the CPLD and the data transmitting end needs to be selected. When the data sender is the BMC, the I2C bus is the preferred medium for data transfer between the CPLD and the BMC.
In a second aspect of the embodiments of the present invention, a system for receiving data by a CPLD is also provided. Fig. 2 is a schematic diagram of an embodiment of a system for receiving data by a CPLD according to the present invention. A system for receiving data by a CPLD includes: a data transmission module 10 configured to transmit data to the CPLD of the server system through a data transmission medium in response to the server system starting; a data judgment module 20 configured to respond to the CPLD receiving the data and judge whether the received data is correct; a reception error record judging module 30 configured to respond that the received data is erroneous, clear the received data, update the value of the reception error record to be incremented by one, and judge whether the updated value of the reception error record reaches a preset threshold; and a data reception refusal module 40 configured to block the connection of the CPLD and the data transmission medium to refuse to receive the data transmitted by the data transmission medium in response to reaching a preset threshold.
The embodiment of the invention can record the times of continuously receiving error data by setting the receiving error record in the CPLD; by judging whether the frequency of continuously receiving the error data reaches a preset threshold value or not and blocking the connection between the CPLD and the data transmission medium after the frequency reaches the preset threshold value, the CPLD can be prevented from external illegal data invasion, so that the safety of receiving data by the CPLD is effectively ensured. The CPLD is a digital integrated circuit with logic function built by users according to their own needs, and the basic design method is to generate corresponding target files by means of integrated development software platform and methods such as schematic diagram and hardware description language, and to transmit codes to target chip by means of download cable to realize the designed digital system. When the CPLD receives the error data several times in succession, it may be that the external party tries to break the error data with the incorrect data, so that in order to avoid such a dangerous situation, the threshold value can be set reasonably in consideration of the safety degree of the data in practice. The smaller the threshold design is, the lower the tolerance of the CPLD to the frequency of continuously receiving error data is, so that in case that the CPLD is tried to be cracked by the outside, the data can not be input into the CPLD after the trial frequency reaches the threshold, the CPLD is enabled to avoid the invasion of external bad data, and the safety of receiving the data by the CPLD is improved.
In some embodiments, the system further includes a receive error log zeroing module configured to continue receiving data transmitted by the data transmission medium by the CPLD in response to the received data being correct and to zero the value of the receive error log. Specifically, when the server system is started, data are transmitted to the CPLD of the server system through the data transmission medium; after receiving the data, the CPLD judges whether the received data is correct; if the received data is correct, the CPLD continues to receive the data transmitted by the data transmission medium and returns the value of the number of times of receiving error records to zero. When the data received by the CPLD this time is correct, it is possible that the last error data received is due to a temporary abnormality of the data transmission medium or a temporary abnormality of the data transmitting end, and the correct data received this time indicates that all data is normal, and then the CPLD can continue to receive the data transmitted by the data transmission medium.
In some embodiments, the data determination module 20 is further configured to authenticate the authentication bit in the received data by the CPLD to determine whether it is correct. A set of data transmitted in a data transmission medium comprises four parts, respectively: CPLD address, instruction address, data bits, and authentication bits. The CPLD address is used for corresponding to the address identifier of the data transmitting end and identifying the data transmitting end, and the data transmitting end can be BMC or other chips or electronic devices capable of communicating with the CPLD. The instruction address corresponds to the set of action instructions to be performed. The data bits have 8 bits, from Bit0 to Bit7, for storing the specific content corresponding to the command, which is also the main content of the group of data. In order to achieve basic data protection, a group of authentication data is added behind the group of data to be communicated, the authentication bit is used for storing the authentication data, and the data in the data bit can be authenticated through the authentication data, so that whether the communicated data is trusted data or not is confirmed. There are many ways of authenticating data, where the authenticated data is inverted from the communicated data to the authenticated data, i.e., the data to be communicated to the CPLD over the data transmission medium is inverted as a set of authenticated data. For example, if the data to be transmitted to the CPLD via the data transmission medium is 8 bits of 1, the subsequent authentication data must be transmitted to the CPLD by 8 bits of 0, and as long as the CPLD detects that the transmitted authentication data is not the inverse of the data in the data bits (i.e., 8 bits of 0), the CPLD discards the 8 bits of 1 data transmitted by the data transmission medium.
In some embodiments, the receive rejection data module 40 is further configured to close its connection to the data transmission medium via the CPLD to reject data transmitted by the data transmission medium. The CPLD is the simplest method to close its connection port with the data transmission medium to reject the data transmitted by the data transmission medium, but the method is not limited to this, and the connection between the CPLD and the data transmission medium may be blocked by another method to reject the data transmitted by the data transmission medium.
In some embodiments, the data transmission module 10 is further configured to transmit data by the BMC to the CPLD of the server system over a data transmission medium. The BMC is an independent system, does not depend on other hardware (such as a CPU, a memory and the like) on the system, does not depend on the BIOS, an OS (operating system) and the like, can interact with the BIOS and the OS to play a better platform management role, and can also independently process certain work because the BMC is a small system with an out-of-band processor. In this embodiment, other chips or electronic devices that can communicate with the CPLD may transmit data to the CPLD of the server system via a data transmission medium.
In some embodiments, the system further comprises a return module configured to return the data transmission module 10 in response to the preset threshold not being reached. Specifically, when the server system is started, data are transmitted to the CPLD of the server system through the data transmission medium; after receiving the data, the CPLD judges whether the received data is correct; if the received data is wrong, clearing the received data, updating the numerical value of the receiving error record to be plus one, and judging whether the updated numerical value of the receiving error record reaches a preset threshold value or not; and if the updated numerical value of the receiving error record does not reach the preset threshold value, returning to the step of transmitting the data to the CPLD of the server system through the data transmission medium.
In some embodiments, the data transfer medium is an I2C bus. In this embodiment, the data transmission medium may be other bus, as long as the data transmission medium is in normal communication with the CPLD. If the data transmitting end is considered, a data transmission medium which can be communicated with the CPLD and the data transmitting end needs to be selected. When the data sender is the BMC, the I2C bus is the preferred medium for data transfer between the CPLD and the BMC.
In a third aspect of the embodiment of the present invention, a computer-readable storage medium is further provided, and fig. 4 is a schematic diagram of a computer-readable storage medium implementing a method for receiving data by a CPLD according to an embodiment of the present invention. As shown in fig. 4, the computer-readable storage medium 3 stores computer program instructions 31, the computer program instructions 31 when executed implement the steps of: s1, responding to the starting of the server system, and transmitting data to the CPLD of the server system through the data transmission medium; s2, responding to the CPLD received data, and judging whether the received data is correct; s3, in response to the fact that the received data is wrong, clearing the received data, updating the numerical value of the receiving error record to be plus one, and judging whether the updated numerical value of the receiving error record reaches a preset threshold value; and S4, in response to the preset threshold value being reached, blocking the connection between the CPLD and the data transmission medium to enable the CPLD to refuse to receive the data transmitted by the data transmission medium.
In some embodiments, the steps further comprise: in response to the received data being correct, the CPLD continues to receive data transmitted by the data transmission medium and zeroes out the value of the reception error record.
In some embodiments, the step of determining whether the received data is correct comprises: the authentication bit in the received data is authenticated by the CPLD to determine whether it is correct.
In some embodiments, the step of blocking the connection of the CPLD to the data transmission medium such that it rejects receiving data transmitted by the data transmission medium comprises: and closing a connection port between the CPLD and the data transmission medium through the CPLD to refuse to receive the data transmitted by the data transmission medium.
In some embodiments, the step of transmitting the data to the CPLD of the server system over the data transmission medium comprises: and transmitting the data to the CPLD of the server system by the BMC through the data transmission medium.
In some embodiments, the steps further comprise: and returning to the step of transmitting the data to the CPLD of the server system through the data transmission medium in response to the preset threshold value not being reached.
In some embodiments, the data transfer medium is an I2C bus.
It is to be understood that all of the embodiments, features and advantages set forth above with respect to the method of receiving data by a CPLD according to the present invention are equally applicable, without conflict with one another, to a system and storage medium for receiving data by a CPLD according to the present invention.
In a fourth aspect of the embodiments of the present invention, there is further provided a computer device, including a memory 402 and a processor 401, where the memory stores a computer program, and the computer program, when executed by the processor, implements the method of any one of the above embodiments.
Fig. 5 is a schematic hardware structure diagram of an embodiment of a computer device for executing the method for receiving data by a CPLD according to the present invention. Taking the computer device shown in fig. 5 as an example, the computer device includes a processor 401 and a memory 402, and may further include: an input device 403 and an output device 404. The processor 401, the memory 402, the input device 403 and the output device 404 may be connected by a bus or other means, and fig. 5 illustrates an example of a connection by a bus. The input device 403 may receive input numeric or character information and generate key signal inputs, such as a keyboard, mouse, etc., related to user settings and function control of the system in which the CPLD receives data. Output device 404 may include various types of displays, speakers, and the like.
The memory 402, which is a non-volatile computer-readable storage medium, can be used to store non-volatile software programs, non-volatile computer-executable programs, and modules, such as program instructions/modules corresponding to the method for receiving data by the CPLD in the embodiment of the present application. The memory 402 may include a storage program area and a storage data area, wherein the storage program area may store an operating system, an application program required for at least one function; the storage data area may store data created by use of a method of receiving data by the CPLD, and the like. Further, the memory 402 may include high speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, or other non-volatile solid state storage device. In some embodiments, memory 402 may optionally include memory located remotely from processor 401, which may be connected to local modules via a network. Examples of such networks include, but are not limited to, the internet, intranets, local area networks, mobile communication networks, and combinations thereof.
The processor 401 executes various functional applications of the server and data processing, namely, a method for receiving data by the CPLD, which implements the above-described method embodiments, by executing the nonvolatile software programs, instructions, and modules stored in the memory 402.
Finally, it should be noted that the computer-readable storage medium (e.g., memory) herein can be either volatile memory or nonvolatile memory, or can include both volatile and nonvolatile memory. By way of example, and not limitation, nonvolatile memory can include Read Only Memory (ROM), Programmable ROM (PROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), or flash memory. Volatile memory can include Random Access Memory (RAM), which can act as external cache memory. By way of example and not limitation, RAM is available in a variety of forms such as synchronous RAM (DRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), double data rate SDRAM (DDR SDRAM), Enhanced SDRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), and Direct Rambus RAM (DRRAM). The storage devices of the disclosed aspects are intended to comprise, without being limited to, these and other suitable types of memory.
Those of skill would further appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the disclosure herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as software or hardware depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the disclosed embodiments of the present invention.
The foregoing is an exemplary embodiment of the present disclosure, but it should be noted that various changes and modifications could be made herein without departing from the scope of the present disclosure as defined by the appended claims. The functions, steps and/or actions of the method claims in accordance with the disclosed embodiments described herein need not be performed in any particular order. Furthermore, although elements of the disclosed embodiments of the invention may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated.
It should be understood that, as used herein, the singular forms "a", "an" and "the" are intended to include the plural forms as well, unless the context clearly supports the exception. It should also be understood that "and/or" as used herein is meant to include any and all possible combinations of one or more of the associated listed items. The numbers of the embodiments disclosed in the embodiments of the present invention are merely for description, and do not represent the merits of the embodiments.
Those of ordinary skill in the art will understand that: the discussion of any embodiment above is meant to be exemplary only, and is not intended to intimate that the scope of the disclosure, including the claims, of embodiments of the invention is limited to these examples; within the idea of an embodiment of the invention, also technical features in the above embodiment or in different embodiments may be combined and there are many other variations of the different aspects of the embodiments of the invention as described above, which are not provided in detail for the sake of brevity. Therefore, any omissions, modifications, substitutions, improvements, and the like that may be made without departing from the spirit and principles of the embodiments of the present invention are intended to be included within the scope of the embodiments of the present invention.
Claims (10)
1. A method for receiving data by a CPLD, comprising the steps of:
transmitting data to the CPLD of the server system through a data transmission medium in response to the server system starting;
responding to the CPLD receiving data, and judging whether the received data is correct;
in response to the received data being wrong, clearing the received data, updating the numerical value of the receiving error record to be plus one, and judging whether the updated numerical value of the receiving error record reaches a preset threshold value;
and in response to reaching the preset threshold value, blocking the connection between the CPLD and the data transmission medium to enable the CPLD to refuse to receive the data transmitted by the data transmission medium.
2. The method of claim 1, further comprising:
in response to the received data being correct, the CPLD continues to receive the data transmitted by the data transmission medium and zeros the value recorded in the reception error.
3. The method of claim 1, wherein the step of determining whether the received data is correct comprises:
the authentication bit in the received data is authenticated by the CPLD to determine whether it is correct.
4. The method of claim 1, wherein the step of blocking the connection of the CPLD to the data transmission medium so that it rejects receiving the data transmitted by the data transmission medium comprises:
and closing a connection port between the CPLD and the data transmission medium through the CPLD to refuse to receive the data transmitted by the data transmission medium.
5. The method of claim 1, wherein the step of transmitting data to the CPLD of the server system over a data transmission medium comprises:
and transmitting the data to the CPLD of the server system by the BMC through a data transmission medium.
6. The method of claim 1, further comprising:
and returning to the step of transmitting the data to the CPLD of the server system through the data transmission medium in response to the preset threshold value not being reached.
7. The method of claim 1, wherein the data transmission medium is an I2C bus.
8. A system for receiving data by a CPLD, comprising:
the data transmission module is configured for responding to the starting of the server system and transmitting data to the CPLD of the server system through a data transmission medium;
the data judgment module is configured for responding to the data received by the CPLD and judging whether the received data is correct or not;
a receiving error record judging module configured to respond to a received data error, clear the received data and update a value of a receiving error record to be incremented, and judge whether the updated value of the receiving error record reaches a preset threshold; and
and the data receiving refusing module is configured for responding to the reaching of a preset threshold value, and blocking the connection between the CPLD and the data transmission medium so as to refuse to receive the data transmitted by the data transmission medium.
9. A computer-readable storage medium, characterized in that computer program instructions are stored which, when executed, implement the method according to any one of claims 1-7.
10. A computer device comprising a memory and a processor, characterized in that the memory has stored therein a computer program which, when executed by the processor, performs the method according to any one of claims 1-7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110436662.3A CN113204763A (en) | 2021-04-22 | 2021-04-22 | Method, system, storage medium and device for receiving data by CPLD |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110436662.3A CN113204763A (en) | 2021-04-22 | 2021-04-22 | Method, system, storage medium and device for receiving data by CPLD |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113204763A true CN113204763A (en) | 2021-08-03 |
Family
ID=77027972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110436662.3A Pending CN113204763A (en) | 2021-04-22 | 2021-04-22 | Method, system, storage medium and device for receiving data by CPLD |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113204763A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113783762A (en) * | 2021-09-30 | 2021-12-10 | 山东云海国创云计算装备产业创新中心有限公司 | Data transmission method, system, storage medium and equipment |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101477504A (en) * | 2009-02-19 | 2009-07-08 | 浙江中控技术股份有限公司 | System and method for transmission of data |
CN105786753A (en) * | 2016-02-22 | 2016-07-20 | 上海斐讯数据通信技术有限公司 | Method and device for data transmission between master and slave devices on I2C bus |
CN107590094A (en) * | 2017-09-28 | 2018-01-16 | 深圳市道通科技股份有限公司 | A kind of serial duplex signaling method, apparatus and computer-readable recording medium |
WO2018120243A1 (en) * | 2016-12-31 | 2018-07-05 | 深圳配天智能技术研究院有限公司 | Digital control system based on field-programmable gate array, and data transmission method thereof |
CN109213722A (en) * | 2018-09-10 | 2019-01-15 | 郑州云海信息技术有限公司 | A kind of internal memory control method based on FPGA, device, equipment and medium |
US20190332468A1 (en) * | 2018-04-25 | 2019-10-31 | Dell Products L.P. | Systems And Methods For Detecting Errors And/Or Restoring Non-Volatile Random Access Memory Using Error Correction Code |
CN110674005A (en) * | 2019-08-30 | 2020-01-10 | 苏州浪潮智能科技有限公司 | Method and device for monitoring server memory and readable medium |
CN111104673A (en) * | 2019-10-30 | 2020-05-05 | 苏州浪潮智能科技有限公司 | System data monitoring and protecting method and device |
CN112688759A (en) * | 2019-10-18 | 2021-04-20 | 青岛海尔空调电子有限公司 | Data receiving and processing method and device |
-
2021
- 2021-04-22 CN CN202110436662.3A patent/CN113204763A/en active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101477504A (en) * | 2009-02-19 | 2009-07-08 | 浙江中控技术股份有限公司 | System and method for transmission of data |
CN105786753A (en) * | 2016-02-22 | 2016-07-20 | 上海斐讯数据通信技术有限公司 | Method and device for data transmission between master and slave devices on I2C bus |
WO2018120243A1 (en) * | 2016-12-31 | 2018-07-05 | 深圳配天智能技术研究院有限公司 | Digital control system based on field-programmable gate array, and data transmission method thereof |
CN109511275A (en) * | 2016-12-31 | 2019-03-22 | 深圳配天智能技术研究院有限公司 | A kind of numerical control system and its data transmission method based on field programmable gate array |
CN107590094A (en) * | 2017-09-28 | 2018-01-16 | 深圳市道通科技股份有限公司 | A kind of serial duplex signaling method, apparatus and computer-readable recording medium |
US20190332468A1 (en) * | 2018-04-25 | 2019-10-31 | Dell Products L.P. | Systems And Methods For Detecting Errors And/Or Restoring Non-Volatile Random Access Memory Using Error Correction Code |
CN109213722A (en) * | 2018-09-10 | 2019-01-15 | 郑州云海信息技术有限公司 | A kind of internal memory control method based on FPGA, device, equipment and medium |
CN110674005A (en) * | 2019-08-30 | 2020-01-10 | 苏州浪潮智能科技有限公司 | Method and device for monitoring server memory and readable medium |
CN112688759A (en) * | 2019-10-18 | 2021-04-20 | 青岛海尔空调电子有限公司 | Data receiving and processing method and device |
CN111104673A (en) * | 2019-10-30 | 2020-05-05 | 苏州浪潮智能科技有限公司 | System data monitoring and protecting method and device |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113783762A (en) * | 2021-09-30 | 2021-12-10 | 山东云海国创云计算装备产业创新中心有限公司 | Data transmission method, system, storage medium and equipment |
CN113783762B (en) * | 2021-09-30 | 2023-04-07 | 山东云海国创云计算装备产业创新中心有限公司 | Data transmission method, system, storage medium and equipment |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2690887C2 (en) | Modular safety control device | |
EP2078272B1 (en) | Protecting secret information in a programmed electronic device | |
US10867048B2 (en) | Dynamic security module server device and method of operating same | |
CN110825401B (en) | Method and device for setting input document by authentication firmware | |
CN110445633B (en) | Method for providing authenticated updates in a distributed network | |
US20190318131A1 (en) | Methods and system for high volume provisioning programmable logic devices with common and unique data portions | |
CN112398824A (en) | Authority verification method, storage medium and electronic equipment | |
US7263617B2 (en) | Method and system for detecting a security violation using an error correction code | |
CN111414605A (en) | Unlocking method and device of embedded security unit, electronic equipment and storage medium | |
CN108777691B (en) | Network security protection method and device | |
CN113204763A (en) | Method, system, storage medium and device for receiving data by CPLD | |
EP4348469A1 (en) | Firmware policy enforcement via a security processor | |
WO2020055567A1 (en) | Storing and using multipurpose secret data | |
US11909746B2 (en) | Multi-path user authentication and threat detection system and related methods | |
US20060080580A1 (en) | Method and system for detecting a security violation using an error correction code | |
US11216593B2 (en) | Data protection circuit of chip, chip, and electronic device | |
CN111063061A (en) | Method, equipment and storage medium for using temporary password for intelligent door lock | |
CN115981274A (en) | Safety protection system of industrial control system | |
CN111914311B (en) | Hard disk password management method and device, electronic equipment and storage medium | |
US11070372B2 (en) | Storing and using multipurpose secret data | |
CN112398791B (en) | Method and device for protecting website from tampering, system, storage medium and electronic device | |
CN110781527B (en) | Control register protection method and device | |
CN112380506A (en) | Method, system, storage medium and electronic device for automatically logging in browser | |
JP2018019218A (en) | Electronic control device | |
CN104834872A (en) | Mobile terminal antitheft control system and method |
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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20210803 |
|
RJ01 | Rejection of invention patent application after publication |