COMPUTER SYSTEM AND METHOD OF OPERATING A COMPUTER SYSTEM
20210263881 · 2021-08-26
Assignee
Inventors
Cpc classification
G06F13/387
PHYSICS
G06F15/7803
PHYSICS
International classification
Abstract
A computer system, including a computing module, a communication module, and at least one I/O interface is described. The computing module includes a COM Express module and/or a COM HPC module. The communication module includes a SMARC module and/or a Qseven module. The communication module has an FPGA module which is connected in a signal-transmitting manner to the computing module and to the at least one I/O interface. The FPGA module is configured to communicate with the computing module based on at least one first communication standard, and to communicate with the at least one I/O interface based on at least one second communication standard. The FPGA module is configured to convert signals from the least one first communication standard to the at least one second communication standard and vice versa. The computing module is configured as a host, and the communication module is configured as a client. A method of operating a computer system is furthermore described.
Claims
1. A computer system, including a computing circuit, a communication circuit, and at least one I/O interface, wherein: the computing circuit comprises at least one of a COM Express circuit and a COM HPC circuit; the communication circuit comprises at least one of a SMARC circuit and a Qseven circuit; the communication circuit has an FPGA circuit which is connected in a signal-transmitting manner to the computing circuit and to the at least one I/O interface; the FPGA circuit is configured to communicate with the computing circuit based on at least one first communication standard, and to communicate with the at least one I/O interface based on at least one second communication standard; and the FPGA circuit is configured to convert signals from the least one first communication standard to the at least one second communication standard and vice versa.
2. The computer system according to claim 1, wherein the computing circuit and the communication circuit are each provided on a separate baseboard or in that the computing circuit and the communication circuit are provided on a common baseboard.
3. The computer system according to claim 1, wherein the at least one first communication standard comprises at least one of PCI, PCI Express, SPI and USB.
4. The computer system according to claim 1, wherein the at least one second communication standard is configured to enable communication with at least one of an m.2 interface, an Ethernet interface, a RS232 interface, a RS422 interface, a RS485 interface, a binary input/output, an odometer, a UART interface, a CAN interface and an EtherCAT interface and/or to communicate based on I2C.
5. The computer system according to claim 1, wherein at least two I/O interfaces are provided which communicate with the FPGA circuit based on different second communication standards.
6. The computer system according to claim 1, wherein the computer circuit has an x86 processor.
7. The computer system according to claim 1, wherein the communication circuit has at least one of an ARM processor and/or a x86 processor.
8. The computer system according to claim 7, wherein the processor is connected to at least one of an Ethernet interface and a USB interface.
9. The computer system according to claim 1, wherein the computer system has at least one wireless circuit which is configured to communicate wirelessly, wherein the computing circuit is connected in a signal-transmitting manner to the at least one wireless circuit.
10. The computer system according to claim 1, wherein the computer system has at least one wireless circuit which is configured to communicate wirelessly, wherein the computing circuit is directly connected in a signal-transmitting manner to the at least one wireless circuit.
11. The computer system according to claim 1, wherein the computer system has at least one data store, wherein the computing circuit is connected to the at least one data store.
12. The computer system according to claim 1, wherein the computer system has at least one data store, wherein the computing circuit is directly connected to the at least one data store.
13. The computer system according to claim 1, wherein at least one of the computing circuit and the communication circuit is heat-conductively connected to a housing of the computer system.
14. The computer system according to claim 1, wherein the computing circuit is configured as a host and the communication circuit is configured as a client.
15. A method of operating a computer system that includes a computing circuit, a communication circuit, and at least one I/O interface, wherein the computing circuit comprises at least one of a COM Express circuit and a COM HPC circuit, wherein the communication circuit comprises at least one of a SMARC circuit and a Qseven circuit, wherein the communication circuit has an FPGA circuit which is connected in a signal-transmitting manner to the computing circuit and the at least one I/O interface, wherein the FPGA circuit is configured to communicate with the computing circuit based on at least one first communication standard, and to communicate with the at least one I/O interface based on at least one second communication standard, the method comprising the following steps: generating at least one data signal by the computing circuit based on the at least one first communication standard and/or receiving at least one data signal by the at least one I/O interface based on the at least one second communication standard; transmitting the at least one data signal to the communication circuit; and converting the data signal from the at least one first communication standard to the at least one second communication standard or from the at least one second communication to the at least one first communication standard by the FPGA circuit, as a result of which a converted data signal is generated.
16. The method according to claim 16, wherein the computing circuit is a host and the communication circuit is a client.
17. The method according to claim 16, wherein the converted data signal is transmitted to the at least one I/O interface or to the computing circuit.
18. The method according to claim 16, wherein the data signal is transmitted between the computing circuit and the communication circuit by PCI Express.
19. The method according to claim 18, wherein the computing circuit and the communication circuit each generate a separate reference clock signal on the basis of which they respectively process data.
20. The method according to claim 19, wherein no separate clock signal is transmitted between the computing circuit and the communication circuit.
Description
DESCRIPTION OF THE DRAWINGS
[0047] The foregoing aspects and many of the attendant advantages of the claimed subject matter will become more readily appreciated as the same become better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein:
[0048]
[0049]
[0050]
[0051]
[0052]
[0053]
[0054]
DETAILED DESCRIPTION
[0055] The detailed description set forth below in connection with the appended drawings, where like numerals reference like elements, is intended as a description of various embodiments of the disclosed subject matter and is not intended to represent the only embodiments. Each embodiment described in this disclosure is provided merely as an example or illustration and should not be construed as preferred or advantageous over other embodiments. The illustrative examples provided herein are not intended to be exhaustive or to limit the claimed subject matter to the precise forms disclosed.
[0056]
[0057] The computer system 10 includes a housing 12 which, for example, entirely surrounds the electronic components of the computer system 10. In an embodiment, the housing has a front side 14 at which a plurality of I/O interfaces 16 and a power connection plug 18 are provided. In the example shown in
[0058] However, is should be noted that the configuration of I/O interfaces 16 shown in
[0059] Optionally, cooling ribs 30 which improve the heat exchange between the computer system 10 and the environment may be provided on a further side of the housing 12, for example on an upper side.
[0060]
[0061] The SIM modules 38 are respectively assigned to at least one of the wireless modules 36. The SIM modules 38 can each accommodate a SIM card to unambiguously identify the computer system 10 for mobile radio and/or GPS.
[0062] In the example embodiment shown in
[0063] The communication module 34 comprises a SMARC module 48 having an FPGA module 50. The FPGA module 50 comprises one or more FPGAs connected to the I/O interfaces 16. Optionally, the communication module 34 may have a processor 52 based on ARM or x86 which may be connected to further USB interfaces and/or Ethernet interfaces. Several processors which are respectively based on ARM or x86 may also be provided on the communication module 34. Alternatively or additionally, the communication module 34 may also comprise a Qseven module.
[0064] In the example embodiment shown in
[0065] The computing module 32 and the communication module 34 are connected to each other in a signal-transmitting manner, which is indicated by the arrows 54 in
[0066] The at least one first communication standard comprises, for example, PCI Express, SPI and/or USB. Alternatively or additionally, the at least one first communication standard may also include further suitable standards.
[0067] The communication module 34 is in turn connected in a signal-transmitting manner to the I/O interfaces 16, which is represented by the arrows 56 in
[0068] The at least one second communication standard is configured to enable communication of the FPGA module 50 with the specific I/O interfaces 16 of the computer system 10. As the computer system 10 has different I/O interfaces 16, the FPGA module 50 is configured to communicate with the respective I/O interface 16 based on the respectively appropriate second communication standard.
[0069] In the example embodiment shown in
[0070] The FPGA module 50 is thus configured to communicate with the computing module 32 based on the at least one first communication standard and with the I/O interfaces 16 based on the at least one second communication standard. To enable communication of the computing module 32 and the I/O interfaces 16, the FPGA module 50 is configured to convert signals from the at least one first communication standard to the at least one second communication standard, and vice versa.
[0071]
[0072]
[0073] The PCI Express connection is configured as described below to permit this configuration, i.e. COM Express module 44 as a host and SMARC module 48 as a client.
[0074] In an embodiment, the computing module 32 has a first reference oscillator 58 which is configured to generate a first reference clock signal 60 for the computing module 32, more specifically for the x86 processor 46. The communication module 34 has a second reference oscillator 62 which is configured to generate a second reference clock signal 64 for the communication module 34, more specifically for the FPGA module 50. The computing module 32 and the communication module 34 thus include clock signal paths which are separated from each other. Accordingly, no separate clock signal is transmitted between the computing module 32 and the communication module 34, at least for the PCI Express connection.
[0075] The frequencies of the first reference clock signal 60 and the second reference clock signal 64 are identical. “Identical” means that the frequency of the reference clock signals 60, 64 respectively deviates from a predefined clock frequency by a maximum of ±300 ppm, as is also defined in the PCI Express standard.
[0076] In the example shown in
[0077] At first, the computing module 32 receives a data signal from at least one of the wireless modules 36, from the first data store 40 and/or from the second data store 42 (step S1).
[0078] The data signal is processed by the x86 processor 46 based on the first reference clock signal 60, as a result of which a processed data signal is generated (step S2).
[0079] The processed data signal is then transferred to the communication module 34, more specifically to the FPGA module 50 based on the at least one first communication standard (step S3).
[0080] As already explained above, no separate clock signal is transmitted between the computing module 32 and the communication module 34. Therefore, the communication module 34, more specifically the FPGA module 50 performs a clock recovery to further process the data signal (step S4).
[0081] During the clock recovery, the clock, i.e. the symbol rate of the data signal is determined based on the data signal. The symbol rate may quite be different from the frequency of the first reference clock signal 60 and/or the frequency of the second reference clock signal 64.
[0082] The FPGA module 50 converts the received data signal based on the second reference clock signal 64 from the at least one first communication standard to the at least one second communication standard, as a result of which a converted data signal is generated (step S5).
[0083] More specifically, the FPGA module 50 converts the received data signal to that second communication standard which is related to that I/O interface 16 to which the data signal is to be transmitted.
[0084] The converted data signal is then transmitted to that one of the I/O interfaces 16 for which the data signal is intended (step S6). This information may for example be part of the data signal.
[0085] The data signal can then be transmitted to further external devices via the I/O interfaces 16.
[0086] The method described above corresponds to a signal path which leads from the wireless modules 36, the first data store 40 and/or the second data store 42 via the computing module 32 and the communication module 34 to the I/O interfaces 16.
[0087] However, the computer system 10 can of course also receive and process signals via the I/O interfaces 16, which is described below with reference to
[0088] At first, a data signal is received by the I/O interfaces 16 and is transferred to the communication module 34, more specifically to the FPGA module 50 based on the at least one second communication standard (step R1).
[0089] The FPGA module 50 converts the received data signal based on the second reference clock signal 64 from the at least one second communication standard to the at least one first communication standard, as a result of which a converted data signal is generated (step R2).
[0090] The converted data signal is transmitted to the computing module 32 based on the at least one first communication standard (step R3).
[0091] As already explained above, no separate clock signal is transmitted between the communication module 34 and the computing module 32. Therefore, the computing module 32, for example the x86 processor 46 performs a clock recovery to further process the converted data signal (step R4).
[0092] The converted data signal is then processed by the computing module 32, more specifically by the x86 processor based on the first reference clock signal 60, as a result of which a processed data signal is generated (step R5).
[0093] The processed data signal is then transmitted to at least one of the wireless modules 36, to the first data store 40, and/or to the second data store 42 (step R6).
[0094] The processed data signal can accordingly be transmitted to external devices using the wireless modules 36 and/or can be stored on the first data store 40 and/or the second data store 42.
[0095] The computing module 32 of the computer system 10 is therefore responsible for data processing, which is why the x86 processor 46 is provided on the computing module 32.
[0096] The communication module 34, along with the FPGA module 50, serves as a variable interface which converts data signals such that the computing module 32 can communicate with each of the I/O interfaces 16.
[0097] Accordingly, the computer system 10 can also easily be upgraded or retrofitted at a later date. For example, the computer module 32 may be equipped with more powerful hardware without much effort. It is also possible to add new I/O interfaces subsequently or to replace the I/O interfaces 16. In this case, the FPGA module 50 must simply be reprogrammed to adapt it to the new interface configuration.
[0098] The computer system 10 described above is therefore adapted to be backfitted or retrofitted in a very flexible way. To improve this flexibility, the housing 12 may be expandable as shown in
[0099] In the left upper part of
[0100] To expand the housing 12, it is possible to remove the cover 66 and to place an expansion module 68 onto the housing 12. Principally, the expansion module 68 may have any height. For example, the expansion module 68 has between 25 and 75 percent of the height of the housing 12, for example 50 percent of the height of the housing 12. The expansion module 68 is connected to the housing 12 by appropriate fastening means, for example by screws 70 and/or fixing pins 72. The cover 66 is then placed onto the expansion module 68 and is connected, for example screwed thereto.
[0101] Certain embodiments disclosed herein, for example the respective module(s), utilize circuitry (e.g., one or more circuits) in order to implement standards, protocols, methodologies or technologies disclosed herein, operably couple two or more components, generate information, process information, analyze information, generate signals, encode/decode signals, convert signals, transmit and/or receive signals, control other devices, etc. Circuitry of any type can be used. It will be appreciated that the term “information” can be use synonymously with the term “signals” in this paragraph. It will be further appreciated that the terms “circuitry,” “circuit,” “one or more circuits,” etc., can be used synonymously herein.
[0102] In an embodiment, circuitry includes, among other things, one or more computing devices such as a processor (e.g., a microprocessor), a central processing unit (CPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a system on a chip (SoC), or the like, or any combinations thereof, and can include discrete digital or analog circuit elements or electronics, or combinations thereof. In an embodiment, circuitry includes hardware circuit implementations (e.g., implementations in analog circuitry, implementations in digital circuitry, and the like, and combinations thereof).
[0103] In an embodiment, circuitry includes combinations of circuits and computer program products having software or firmware instructions stored on one or more computer readable memories that work together to cause a device to perform one or more protocols, methodologies or technologies described herein. In an embodiment, circuitry includes circuits, such as, for example, microprocessors or portions of microprocessor, that require software, firmware, and the like for operation. In an embodiment, circuitry includes one or more processors or portions thereof and accompanying software, firmware, hardware, and the like.
[0104] Various embodiments of the present disclosure or the functionality thereof may be implemented in various ways, including as non-transitory computer program products. A computer program product may include a non-transitory computer-readable storage medium storing applications, programs, program modules, scripts, source code, program code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, and/or the like (also referred to herein as executable instructions, instructions for execution, program code, computer program instructions, and/or similar terms used herein interchangeably). Such non-transitory computer-readable storage media include all computer-readable media (including volatile and non-volatile media).\
[0105] Embodiments of the present disclosure may also take the form of an apparatus, system, computing device, computing entity, and/or the like executing instructions stored on computer-readable storage media to perform certain steps or operations. The computer-readable media include cooperating or interconnected computer-readable media, which exist exclusively on a processing or processor system or distributed among multiple interconnected processing or processor systems that may be local to, or remote from, the processing or processor system. However, embodiments of the present disclosure may also take the form of an entirely hardware embodiment performing certain steps or operations.
[0106] Various embodiments are described above with reference to block diagrams and/or flowchart illustrations of apparatuses, methods, systems, and/or computer program instructions or program products. It should be understood that each block of any of the block diagrams and/or flowchart illustrations, respectively, or portions thereof, may be implemented in part by computer program instructions, e.g., as logical steps or operations executing on one or more computing devices. These computer program instructions may be loaded onto one or more computer or computing devices, such as special purpose computer(s) or computing device(s) or other programmable data processing apparatus(es) to produce a specifically-configured machine, such that the instructions which execute on one or more computer or computing devices or other programmable data processing apparatus implement the functions specified in the flowchart block or blocks and/or carry out the methods described herein.
[0107] These computer program instructions may also be stored in one or more computer-readable memory or portions thereof, such as the computer-readable storage media described above, that can direct one or more computers or computing devices or other programmable data processing apparatus(es) to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including computer-readable instructions for implementing the functionality specified in the flowchart block or blocks.
[0108] The computer program instructions may also be loaded onto one or more computers or computing devices or other programmable data processing apparatus(es) to cause a series of operational steps to be performed on the one or more computers or computing devices or other programmable data processing apparatus(es) to produce a computer-implemented process such that the instructions that execute on the one or more computers or computing devices or other programmable data processing apparatus(es) provide operations for implementing the functions specified in the flowchart block or blocks and/or carry out the methods described herein.
[0109] It will be appreciated that the term computer or computing device can include, for example, any computing device or processing structure, including but not limited to a processor (e.g., a microprocessor), a central processing unit (CPU), a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a system on a chip (SoC), or the like, or any combinations thereof.
[0110] Accordingly, blocks of the block diagrams and/or flowchart illustrations support various combinations for performing the specified functions, combinations of operations for performing the specified functions and program instructions for performing the specified functions. Again, it should also be understood that each block of the block diagrams and flowchart illustrations, and combinations of blocks in the block diagrams and/or flowchart illustrations, or portions thereof, could be implemented by special purpose hardware-based computer systems or circuits, etc., that perform the specified functions or operations, or combinations of special purpose hardware and computer instructions.
[0111] According to some embodiments, many individual steps of a process may or may not be carried out utilizing computer or computing based systems described herein, and the degree of computer implementation may vary, as may be desirable and/or beneficial for one or more particular applications.
[0112] The present application may reference quantities and numbers. Unless specifically stated, such quantities and numbers are not to be considered restrictive, but exemplary of the possible quantities or numbers associated with the present application. Also in this regard, the present application may use the term “plurality” to reference a quantity or number. In this regard, the term “plurality” is meant to be any number that is more than one, for example, two, three, four, five, etc. The terms “about,” “approximately,” “near,” etc., mean plus or minus 5% of the stated value. For the purposes of the present disclosure, the phrase “at least one of A and B” is equivalent to “A and/or B” or vice versa, namely “A” alone, “B” alone or “A and B.”. Similarly, the phrase “at least one of A, B, and C,” for example, means (A), (B), (C), (A and B), (A and C), (B and C), or (A, B, and C), including all further possible permutations when greater than three elements are listed.
[0113] The principles, representative embodiments, and modes of operation of the present disclosure have been described in the foregoing description. However, aspects of the present disclosure which are intended to be protected are not to be construed as limited to the particular embodiments disclosed. Further, the embodiments described herein are to be regarded as illustrative rather than restrictive. It will be appreciated that variations and changes may be made by others, and equivalents employed, without departing from the spirit of the present disclosure. Accordingly, it is expressly intended that all such variations, changes, and equivalents fall within the spirit and scope of the present disclosure, as claimed.