Carrier board, mezzanine card, carrier board rewrite system, and carrier board rewrite method

The carrier board reconfigures its interface based on mezzanine card identifiers to match specifications, eliminating the need for programmable circuits on the mezzanine cards, thus reducing costs and enhancing flexibility in communication.

JP2025106671APending Publication Date: 2025-07-16MITSUBISHI ELECTRIC CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024000079
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-04
Publication Date
2025-07-16

AI Technical Summary

Technical Problem

Existing technologies require programmable circuits like FPGAs on mezzanine cards to match interface specifications with carrier boards, increasing costs, and there is a need for a cost-effective solution that allows the carrier board to reconfigure its interface without such programmable circuits.

Method used

A carrier board with a programmable circuit, memory storing settings, and a connector to communicate with mezzanine cards, which includes an interface circuit that reconfigures based on an identifier received from the mezzanine card to match specifications, eliminating the need for programmable circuits on the mezzanine cards.

Benefits of technology

Enables cost-effective communication with various mezzanine cards by dynamically reconfiguring the interface without stopping the entire programmable circuit, reducing costs and enhancing flexibility.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025106671000001_ABST
    Figure 2025106671000001_ABST
Patent Text Reader

Abstract

To reconfigure an interface circuit of a carrier board in accordance with the specifications of a mezzanine card having no programmable circuit.SOLUTION: A carrier board 100 includes a programmable circuit 120, a memory 110 storing a plurality of settings for rewriting the programmable circuit 120, and a connector 130 for communicating with a mezzanine card 150. The programmable circuit 120 includes an interface circuit 126 for communicating with the mezzanine card 150 via the connector 130, and a memory processing unit 124 for acquiring, from the mezzanine card 150, a first identifier indicating the type of the mezzanine card 150, selecting a setting corresponding to the first identifier from among the plurality of settings, and executing a process of rewriting the interface circuit 126 in accordance with the setting corresponding to the first identifier.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to a technology for rewriting a carrier board, and more specifically, to a technology for making a carrier board communicable with various mezzanine cards.

Background Art

[0002] When developing a unique circuit according to the purpose, a carrier board having general-purpose functions may be used. The carrier board is sometimes called a carrier card. The carrier board is configured to be connectable to one or more function expansion cards called mezzanine cards. By combining the carrier board and the mezzanine card, a developer can develop a desired circuit.

[0003] As an example, assume that an integrated circuit having functions such as a broadband ADC (analog-digital conversion) or DAC (digital-analog conversion) is developed. In this case, when implementing these functions on a carrier board having digital functions, the number of components of the carrier board increases and the circuit becomes complicated. In such a case, the developer designs or prepares a mezzanine card having the necessary analog functions. Then, the developer can develop a desired circuit by connecting the mezzanine card to the carrier card.

[0004] The carrier board may communicate with various mezzanine cards having different specifications. Usually, for each specification of the mezzanine card, the specification of the interface of each mezzanine card is different. Therefore, when the mezzanine card connected to the carrier board is changed, it is necessary to match the specifications of the interfaces of the carrier board and the mezzanine card.

[0005] Regarding a technique for enabling a carrier board to communicate with a plurality of mezzanine cards having different specifications, for example, Japanese Patent Application Laid-Open No. 2019-213121 (Patent Document 1) discloses an optical transceiver function control system. The optical transceiver function control system is such that "each of the parent board and the daughter board includes a connection variable structure that variably sets the signal standard of the interface connecting them, and includes a reconfigurable device such as an FPGA chip. The signal standard of the interface includes PCI Express that enables high-speed configuration rewriting of the FPGA chip and 10GBase-R corresponding to the steady operation of the system. When power is turned on, when the system is started up, or when the system specification is changed, the system control unit such as a CPU selects PCI Express, communicates between the parent board and the daughter board, rewrites the configuration of the FPGA chip, and then switches to 10GBase-R to shift to the steady operation" (see [Summary]).

Prior Art Documents

Patent Documents

[0006]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0007] Suppose it is necessary to match the specifications of the carrier board and the mezzanine card interfaces. In this case, according to the technology disclosed in Patent Document 1, it is necessary to change the settings of the FPGA (Field Programmable Gate Array) implemented in each circuit. That is, in the technology disclosed in Patent Document 1, it is necessary to mount an FPGA on the mezzanine card. As a result, the cost of the mezzanine card increases. In order to suppress the cost of the mezzanine card, it is desirable not to mount a programmable circuit such as an FPGA on the mezzanine card. Therefore, a technology for making the interface circuit of the carrier board reconfigurable according to the specifications of the mezzanine card without a programmable circuit is required.

[0008] The present disclosure has been made in view of the above background, and an object in one aspect is to provide a technology for making the interface circuit of the carrier board reconfigurable according to the specifications of the mezzanine card without a programmable circuit.

Means for Solving the Problems

[0009] According to an embodiment, a carrier board is provided. The carrier board includes a programmable circuit, a memory storing a plurality of settings for reconfiguring the programmable circuit, and a connector for communicating with the mezzanine card. The programmable circuit includes an interface circuit for communicating with the mezzanine card via the connector, and a memory processing unit that acquires a first identifier indicating the type of the mezzanine card from the mezzanine card, selects a setting corresponding to the first identifier from among the plurality of settings, and executes a process of reconfiguring the interface circuit according to the setting corresponding to the first identifier.

[0010] According to an embodiment, the interface circuit of the carrier board can be made reconfigurable according to the specifications of the mezzanine card without a programmable circuit.

[0011] The above and other objects, features, aspects and advantages of this disclosure will become apparent from the following detailed description of the disclosure, which is to be understood in conjunction with the accompanying drawings.

Brief Description of the Drawings

[0012]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Modes for Carrying Out the Invention

[0013] Hereinafter, embodiments of the technical idea according to the present disclosure will be described with reference to the drawings. In the following description, the same components are denoted by the same reference numerals. Their names and functions are also the same. Therefore, detailed descriptions thereof will not be repeated. Also, each embodiment, each modification, each software configuration, each hardware configuration, each function, and each process, etc. may be selectively combined as appropriate.

[0014] <A. System Configuration> FIG. 1 is a diagram showing an example of the configuration of the system 10 according to the present embodiment. Referring to FIG. 1, the outlines of the carrier board 100 and the mezzanine card 150 will be described. Also, the configurations included in each of the carrier board 100 and the mezzanine card 150 will be described. Furthermore, the terms used in this specification will also be described.

[0015] (a. Overview of Carrier Board and Mezzanine Card) In recent years, a computer called a Computer on Module (CoM) has been developed. A CoM is a computer developed by combining multiple modules. A CoM may also be called a System on Module (SoM).

[0016] The carrier board 100 is the central board of the CoM. The carrier board 100 includes one or more connectors. The carrier board 100 can be connected to one or more mezzanine cards 150 via one or more connectors. The carrier board 100 may be read as a carrier card or a base board.

[0017] The mezzanine card 150 is a board with various functions and expands the functions of the carrier board 100. As an example, the mezzanine card 150 can mount any circuit such as an analog circuit for wireless. A designer can design a desired CoM by connecting one or more mezzanine cards 150 to the carrier board 100.

[0018] (b. Names and Roles of Each Component) The configuration of the system 10 according to this embodiment will be described. The system 10 includes a carrier board 100 and a mezzanine card 150. The system 10 may be read as a CoM or a SoM. In the example of FIG. 1, the carrier board 100 is connected only to one mezzanine card 150, but this is only an example. In some aspects, the carrier board 100 can be connected to any number of two or more mezzanine cards 150. In this case, the carrier board 100 may include multiple connectors.

[0019] The carrier board 100 mainly includes a memory 110, a programmable circuit 120, and a connector 130. As an example, the carrier board 100 may be a board having digital functions such as a signal demodulation / modulation function or a digital signal processing function. In a certain aspect, the carrier board 100 may include any configuration other than the configuration shown in FIG. 1. Also, the carrier board 100 may include two or more connectors 130 and an interface circuit 126. Hereinafter, the memory 110 may also be referred to as the first memory.

[0020] The memory 110 stores the settings of the programmable circuit 120. The settings include the settings 112 of the system common functions and the settings 114 of the interface circuit 126.

[0021] The settings 112 are the settings of functions common regardless of the type of the mezzanine card 150. More specifically, the settings 112 are the settings for configuring the memory processing unit 124 and the digital function unit 122. The settings for configuring the memory processing unit 124 and the digital function unit 122 may be codes in a hardware description language.

[0022] The setting 114 includes settings for configuring the interface circuit 126 according to the mezzanine card 150. The settings for configuring the interface circuit 126 may be in the form of hardware description language code. As an example, assume that there are mezzanine cards 150A, 150B, 150C, and 150D. And assume that the carrier board 100 corresponds to these mezzanine cards. In this case, the setting 114 includes the settings of each of the interface circuits A, B, C, and D corresponding to the mezzanine cards 150A, 150B, 150C, and 150D respectively. Also, the settings of each interface circuit are associated with each of the identifiers 162 prepared for each mezzanine card 150. For example, assume that each of the mezzanine cards 150A, 150B, 150C, and 150D corresponds to each of the identifiers 162A, 162B, 162C, and 162D respectively. In this case, the setting of the interface circuit A is associated with the identifier 162A. Similarly, each of the settings of the interface circuits B, C, and D is associated with each of the identifiers 162B, 162C, and 162D respectively. That is, the setting 114 is data that associates the settings of each interface circuit with each identifier 162.

[0023] The programmable circuit 120 can communicate with any mezzanine card 150 by reading an appropriate setting from the settings 114. That is, based on the setting 114, the carrier board 100 reconfigures the interface circuit 126 into any one of the interface circuits A, B, C, and D. Thereby, the carrier board 100 can communicate with any of the mezzanine cards 150A, 150B, 150C, and 150D. In the previous description, the setting 114 includes the settings of the four interface circuits A, B, C, and D, but this is just an example. In a certain situation, the setting 114 may include the settings of any number of interface circuits.

[0024] The programmable circuit 120 is a circuit whose circuit configuration can be rewritten by a hardware description language or the like. In a certain aspect, the programmable circuit 120 may be an FPGA. Also, the programmable circuit 120 supports partial reconfiguration. Partial reconfiguration is a function of rewriting a part of the functions of the programmable circuit 120. In partial reconfiguration, parts other than the functions to be rewritten in the programmable circuit 120 can operate without stopping.

[0025] The programmable circuit 120 is reconfigured based on various settings stored in the memory 110. Or, it can be said that the programmable circuit 120 is rewritten based on various settings stored in the memory 110. More specifically, the digital function unit 122 and the memory processing unit 124 are configured by the setting 112. Similarly, the interface circuit 126 is configured by the setting 114. In a certain aspect, the carrier board 100 may include a circuit or chip for rewriting the programmable circuit 120 based on the settings in the memory 110.

[0026] The digital function unit 122 is always configured on the programmable circuit 120 regardless of the type of the mezzanine card 150. The digital function unit 122 realizes the digital processing function provided by the carrier board 100.

[0027] The memory processing unit 124 is always configured on the programmable circuit 120 regardless of the type of the mezzanine card 150. The memory processing unit 124 reads data in the memory 160 of the mezzanine card 150. The detailed operation of the memory processing unit 124 will be described later.

[0028] The interface circuit 126 is a circuit for communicating with the application circuit 170 on the mezzanine card 150. The interface circuit 126 is reconfigured according to the specifications of the mezzanine card 150 connected to the carrier board 100. Thereby, the interface circuit 126 can support various mezzanine cards 150.

[0029] The connector 130 is configured to be communicable with the connector 180 of the mezzanine card 150 via a plurality of communication lines 140. In one aspect, one of the connector 130 and the connector 180 may be configured as a plug and the other may be configured as a socket. In other aspects, the connector 130 and the connector 180 may be connected via a cable. In yet other aspects, the connector 130 and the connector 180 may have any shape as long as they can communicate.

[0030] The mezzanine card 150 mainly includes a memory 160, an application circuit 170, and a connector 180. As an example, the mezzanine card 150 may have analog-digital conversion functions such as DAC and ADC, and RF (Radio Frequency) circuits. In one aspect, the mezzanine card 150 may include any configuration other than the configuration shown in FIG. 1.

[0031] Memory 160 stores an identifier 162 and settings 164 for one or more control data formats. The identifier 162 indicates the type of the mezzanine card 150. The identifier 162 can be represented in binary, text, numerical, or any other format. The carrier board 100 acquires the identifier 162 from the mezzanine card 150 via the memory processing unit 124. That is, the identifier 162 is used in the reconfiguration determination of the interface circuit 126 in the carrier board 100. The carrier board 100 reads out the setting associated with the acquired identifier 162 from among the settings 114. Then, the carrier board 100 reconfigures the interface circuit 126 based on the read setting. At this time, the carrier board 100 may perform partial reconfiguration of the interface circuit 126.

[0032] The settings 164 for one or more control data formats include information on the control data format and communication format used by the mezzanine card 150. More specifically, the settings 164 for one or more control data formats include information on the control data format for controlling the application circuit 170. Further, the settings 164 for one or more control data formats include information on the communication format for communication between the interface circuit 126 and the application circuit 170. The carrier board 100 acquires the settings 164 from the mezzanine card 150 via the memory processing unit 124. The carrier board 100 rewrites the registers of the interface circuit 126 based on the settings 164.

[0033] The application circuit 170 is a circuit for realizing the functions provided by the mezzanine card 150. As an example, assume that the mezzanine card 150 is a wireless card. In this case, the application circuit 170 is a circuit for realizing the wireless function. The connector 180 is configured to be communicable with the connector 130 of the carrier board 100 via a plurality of communication lines 140.

[0034] (c. System operation example) Next, the operation of system 10 will be described. Assume that the mezzanine card 150 is the mezzanine card 150B. And assume that the interface circuit corresponding to the mezzanine card 150B is the interface circuit B.

[0035] First, the carrier board 100 receives the identifier 162 and the setting 164 from the memory 160 via the memory processing unit 124. Next, the carrier board 100 selects the setting corresponding to the identifier 162 from among the settings 114. In this case, the identifier 162 is the identifier 162B indicating the mezzanine card 150B. Therefore, the carrier board 100 acquires the setting of the interface circuit B associated with the identifier 162B. The carrier board 100 reconfigures the interface circuit 126 based on the setting of the interface circuit B. Next, the carrier board 100 writes the setting 164 to the register of the reconfigured interface circuit 126.

[0036] Through the above series of processes, the carrier board 100 can reconfigure the interface circuit 126 to match the mezzanine card 150. Also, the carrier board 100 can write the settings necessary for communication with the mezzanine card 150 to the register of the interface circuit 126. In a certain aspect, the above series of processes may be executed by the memory processing unit 124. In other aspects, the above series of processes may be executed by any circuit other than the memory processing unit 124.

[0037] As described above, the carrier board 100 includes a programmable circuit 120. The carrier board 100 also includes a memory 110 that stores a plurality of settings for rewriting the programmable circuit 120. Further, the carrier board 100 includes a connector 130 for communicating with the mezzanine card 150. The programmable circuit 120 includes an interface circuit 126 for communicating with the mezzanine card 150 via the connector 130. The programmable circuit 120 also includes a memory processing unit 124 that acquires a first identifier indicating the type of the mezzanine card 150 from the mezzanine card 150, selects a setting corresponding to the first identifier from among the plurality of settings, and executes a process of reconfiguring the interface circuit 126 according to the setting corresponding to the first identifier. Here, the first identifier is, for example, the identifier 162B indicating the mezzanine card 150B shown in FIG. 4.

[0038] The carrier board 100 can communicate with any mezzanine card 150 simply by rewriting the interface circuit 126. As a result, the mezzanine card 150 does not need to include a programmable circuit, and the cost can be reduced. Further, the carrier board 100 can reconfigure the interface circuit 126 by partial reconfiguration. With this function, the carrier board 100 can dynamically change the interface circuit 126 without stopping the entire programmable circuit 120.

[0039] (d. Terms) In this specification, a "carrier board" is a central board that constitutes a CoM or SoM. The carrier board includes at least one or more connectors for connecting to a mezzanine card. The carrier board may have its own function. Further, the carrier board may include one or more programmable circuits for realizing various functions. The carrier board may be read as a carrier card. The carrier board is a type of circuit. The carrier board is also a type of substrate.

[0040] In this specification, a "mezzanine card" is a card connected to a carrier board. The mezzanine card is used for expanding the functions of the carrier board. The mezzanine card may be interchangeably referred to as an expansion card or a module. The mezzanine card is a type of circuit. Also, the mezzanine card is a type of substrate.

[0041] In this specification, a "system" is composed of a plurality of devices, circuits, or substrates. For example, a CoM or SoM developed by combining a carrier board and one or more mezzanine cards is a system. Therefore, the system may be interchangeably referred to as a CoM or SoM.

[0042] In this specification, a "connector" is a component for connecting a plurality of substrates. As an example, the connector is realized in the form of a plug or a socket, etc. In one aspect, the connector can be mounted as a component on a substrate. In another aspect, the connector can be realized by forming a part of the substrate in the shape of a connector and further performing a plating process.

[0043] In this specification, an "interface" indicates a function or configuration for data transfer between two different substrates or circuits. A circuit having the function of an interface is called an interface circuit. As an example, the application circuit 170 and the interface circuit 126 in FIG. 1 transmit and receive data via the communication line 140. Therefore, it can be said that the application circuit 170 and the interface circuit 126 have the function of an interface.

[0044] In this specification, various "settings" stored in the memory 110 include codes in a hardware description language for rewriting the programmable circuit 120. Also, the code may include compiled code. Further, the various settings may include setting values of registers of the programmable circuit 120. Also, the setting values of the registers may include settings of a control data format, a communication format, a communication protocol, and any other settings. Also, at least a part of the various settings is associated with the identifier 162. For example, the settings of each of the interface circuits A to D included in the setting 114 are associated with the identifier 162 for each of the mezzanine cards 150.

[0045] <B. Configuration Example of Each Circuit> FIG. 2 is a diagram showing an example of communication lines constituting the connector 130 of the carrier board 100. The connector 130 is connected to the interface circuit 126 via the communication line 210. Also, the connector 130 is connected to the memory processing unit 124 via the communication line 220. The combination of the communication line 210 and the communication line 220 corresponds to the communication line 140.

[0046] The communication line 220 is a communication line for the memory processing unit 124 to receive the identifier 162 and the setting 164 from the mezzanine card 150. The communication format in the communication line 220 is fixed. Therefore, the memory processing unit 124 can receive the identifier 162 and the setting 164 from any mezzanine card 150 via the communication line 220.

[0047] The communication line 210 is a communication line used for communication between the interface circuit 126 and the application circuit 170. The communication format in the communication line 210 varies depending on the mezzanine card 150. More specifically, the communication format in the communication line 210 varies depending on the application circuit 170. Therefore, the carrier board 100 reconfigures the interface circuit 126 based on the identifier 162. Also, the carrier board 100 writes the setting 164 to the register of the interface circuit 126. By doing so, the carrier board 100 can communicate with any mezzanine card 150 via the communication line 210.

[0048] As described above, the connector 130 includes a plurality of communication lines. Also, the communication line 220, which is part of the plurality of communication lines, is a communication line for the memory processing unit 124 to obtain the identifier 162 from the mezzanine card 150.

[0049] Furthermore, the memory processing unit 124 obtains the setting 164 of one or more control data formats from the mezzanine card 150. Furthermore, the memory processing unit 124 writes the setting 164 of one or more control data formats to the register of the interface circuit 126 after the process of reconfiguring the interface circuit 126. Each of the settings 164 of one or more control data formats includes information regarding a control data format for controlling the application circuit 170 that realizes the functions provided in the mezzanine card 150. Also, each of the settings 164 of one or more control data formats includes information regarding a communication format for communication between the interface circuit 126 and the application circuit 170. The communication format is the communication format in the communication line 210. Furthermore, each of the settings 164 of one or more control data formats may include the communication format in the communication line 210, information on the pin arrangement of the connector 130, and information on the pin arrangement of the connector 180.

[0050] As described above, the carrier board 100 receives the identifier 162 and the setting 164 via the communication line 220. Then, the carrier board 100 reconfigures the interface circuit 126 and writes the setting to its register. By doing so, the carrier board 100 can communicate with any mezzanine card 150 via the communication line 210.

[0051] Next, an example of the mezzanine card 150 will be described with reference to FIGS. 3 to 5. The mezzanine cards 150A, 150B, and 150C described later are all variations of the mezzanine card 150. Also, the memories 160A, 160B, and 160C are memories 160 that store different settings. The application circuits 170A, 170B, and 170C are variations of the application circuit 170. In the examples of FIGS. 3 to 5, the application circuits 170A, 170B, and 170C are RF circuits, but this is merely an example. The application circuit 170 may include any configuration other than the configurations shown in FIGS. 3 to 5. Hereinafter, the memory 160 may also be referred to as the second memory.

[0052] FIG. 3 is a diagram showing a first example of the configuration of the mezzanine card. The mezzanine card 150A includes a memory 160A, an application circuit 170A, and a connector 180. The connector 180 is connected to the application circuit 170A via the communication line 310. Also, the connector 180 is connected to the memory 160A via the communication line 320. The combination of the communication line 310 and the communication line 320 corresponds to the communication line 140. Also, when the carrier board 100 and the mezzanine card 150A are connected, the communication line 210 and the communication line 310 are connected. Similarly, the communication line 220 and the communication line 320 are connected. Any mezzanine card 150 has communication lines 310 and 320 with the same specifications.

[0053] Memory 160A stores an identifier 162 indicating the mezzanine card 150A and settings 164 used in the mezzanine card 150A. As a configuration with a communication function, the application circuit 170A includes two amplifiers 301, two tunable filters 302, two variable attenuators 303, a DAC-IC (Integrated Circuit) 304, and an ADC-IC 305. The amplifier 301 is configured to be able to control the ON and OFF of communication by a single communication line. The tunable filter 302 is controlled by 4-wire SPI (Serial Peripheral Interface) communication. The variable attenuator 303, DAC-IC 304, and ADC-IC 305 are controlled by individual SPI communication.

[0054] Suppose the mezzanine card 150A is connected to the carrier board 100. In this case, the carrier board 100 requires an interface circuit for two amplifiers 301. Also, the carrier board 100 requires an SPI interface circuit for two tunable filters 302. Also, the carrier board 100 requires an SPI interface circuit for two variable attenuators 303. Further, the carrier board 100 requires an SPI interface circuit for the DAC-IC 304 and the ADC-IC 305.

[0055] The mezzanine card 150A transmits the identifier 162 and the settings 164 to the memory processing unit 124. In a certain aspect, the mezzanine card 150A may transmit the identifier 162 and the settings 164 to the memory processing unit 124 in response to a request from the memory processing unit 124. In another aspect, the mezzanine card 150A may transmit the identifier 162 and the settings 164 to the memory processing unit 124 based on being powered on. The carrier board 100 reconfigures the interface circuit 126 based on the received identifier 162. That is, the interface circuit 126 becomes interface circuit A. Then, the carrier board 100 writes the settings 164 for communicating with the mezzanine card 150A to the register of the reconfigured interface circuit 126.

[0056] Through the above series of operations, the interface circuit 126 is configured to be communicable with the application circuit 170A. More specifically, an interface circuit for two amplifiers 301 is generated in the interface circuit 126. Also, an SPI interface circuit for two tunable filters 302 is generated in the interface circuit 126. Also, an SPI interface circuit for two variable attenuators 303 is generated in the interface circuit 126. Also, an SPI interface circuit for the DAC-IC 304 and the ADC-IC 305 is generated in the interface circuit 126. Furthermore, the communication format settings for each of these interface circuits are written into the registers of the interface circuit 126.

[0057] FIG. 4 is a diagram showing a second example of the configuration of the mezzanine card. The mezzanine card 150B includes a memory 160B, an application circuit 170B, and a connector 180. The connector 180 is connected to the application circuit 170B via a communication line 310. Also, the connector 180 is connected to the memory 160B via a communication line 320. The memory 160B stores an identifier 162 indicating the mezzanine card 150B and settings 164 used in the mezzanine card 150B. The application circuit 170B includes four amplifiers 301, four tunable filters 302, four variable attenuators 303, a DAC-IC 304, and an ADC-IC 305 as a configuration having a communication function.

[0058] Assume that the mezzanine card 150B is connected to the carrier board 100. In this case, the carrier board 100 requires an interface circuit for communicating with four amplifiers 301, four tunable filters 302, four variable attenuators 303, a DAC-IC 304, and an ADC-IC 305. Similar to the description of FIG. 3, the carrier board 100 acquires an identifier 162 and settings 164 corresponding to the mezzanine card 150B from the memory 160B. Then, based on the received identifier 162, the carrier board 100 reconfigures the interface circuit 126. That is, the interface circuit 126 becomes the interface circuit B. And the carrier board 100 writes the settings 164 for communicating with the mezzanine card 150B to the registers of the reconfigured interface circuit 126.

[0059] FIG. 5 is a diagram showing a third example of the configuration of the mezzanine card. The mezzanine card 150C includes a memory 160C, an application circuit 170C, and a connector 180. The connector 180 is connected to the application circuit 170C via a communication line 310. Also, the connector 180 is connected to the memory 160C via a communication line 320. The memory 160C stores an identifier 162 indicating the mezzanine card 150C and settings 164 used in the mezzanine card 150C. The application circuit 170C includes four amplifiers 301, four tunable filters 302, a DAC-IC 304, and an ADC-IC 305 as a configuration having a communication function. Different from the application circuit 170B, the application circuit 170C includes a fixed attenuator instead of a variable attenuator.

[0060] Assume that the mezzanine card 150C is connected to the carrier board 100. In this case, the carrier board 100 requires an interface circuit for communicating with four amplifiers 301, four tunable filters 302, DAC-IC 304, and ADC-IC 305. Similar to the description of FIG. 3, the carrier board 100 acquires, from the memory 160C, an identifier 162 and settings 164 corresponding to the mezzanine card 150C. Then, based on the received identifier 162, the carrier board 100 reconfigures the interface circuit 126. That is, the interface circuit 126 becomes the interface circuit C. And the carrier board 100 writes the settings 164 for communicating with the mezzanine card 150C into the registers of the reconfigured interface circuit 126.

[0061] As described with reference to FIGS. 3 to 5, the mezzanine card 150 includes a memory 160 that stores an identifier 162 indicating the type of the mezzanine card 150 and settings 164 of one or more control data formats used in the mezzanine card 150. The identifier 162 is used in the carrier board 100 for determining the reconfiguration of the interface circuit 126. Also, the mezzanine card 150 includes a connector 180 for communicating with the carrier board 100. Further, the carrier board 100 sends a request for the identifier 162 and the settings 164 of one or more control data formats to the mezzanine card 150 in order to determine whether to execute the process of reconfiguring the interface circuit 126. The mezzanine card 150 sends the identifier 162 and the settings 164 to the carrier board 100 based on the request from the carrier board 100. In one aspect, the mezzanine card 150 may continuously send the identifier 162 and the settings 164 to the carrier board 100. In another aspect, the mezzanine card 150 may send the identifier 162 and the settings 164 to the carrier board 100 individually.

[0062] In addition, the connector 180 includes a plurality of communication lines. Some of the plurality of communication lines, the communication line 320, is a communication line for transmitting the identifier 162 and the setting 164 of one or more control data formats to the carrier board 100.

[0063] <Examples of Identifiers and Formats for Each Interface> FIG. 6 is a diagram showing an example of a data configuration stored in the memory 160 of the mezzanine card 150. The memory 160 stores the identifier 162 and the setting 164 of one or more control data formats.

[0064] The identifier 162 indicates the type of the mezzanine card 150. As an example, the memory 160A included in the mezzanine card 150A stores an identifier 162A indicating the mezzanine card 150A. Similarly, the memory 160B included in the mezzanine card 150B stores an identifier 162B indicating the mezzanine card 150B. The memory 160C included in the mezzanine card 150C stores an identifier 162C indicating the mezzanine card 150C.

[0065] The carrier board 100 acquires the identifier 162 from the mezzanine card 150 connected to the carrier board 100. Thereby, the carrier board 100 can identify the type of the mezzanine card 150 connected to the carrier board 100. The carrier board 100 reads out the setting corresponding to the identified mezzanine card 150 from the memory 110. Further, the carrier board 100 partially reconfigures the interface circuit 126 based on the read setting. In this way, the carrier board 100 can correspond to any mezzanine card 150 by reconfiguring the interface circuit 126 based on the identifier 162.

[0066] The settings 164 of one or more control data formats are the settings necessary for communicating with the mezzanine card 150 and for controlling the application circuit 170A. In one aspect, the settings 164 may include information on any communication protocol such as SPI and I2C (Inter-Integrated Circuit). Also, the settings 164 may include information on the format of the data transmitted on each protocol. The format of the data may be a format defined by the user. As an example, the settings 164 may include the format of the data exchanged between the interface circuit 126 and the tunable filter 302 via SPI.

[0067] As an example, the memory 160A included in the mezzanine card 150A stores the settings 164A for controlling the application circuit 170A. The application circuit 170A includes an amplifier 301, a tunable filter 302, a variable attenuator 303, a DAC-IC 304, and an ADC-IC 305. Therefore, the settings 164A include the settings of the control data format for controlling the amplifier 301. Also, the settings 164A include the settings of the control data format for controlling the tunable filter 302. Also, the settings 164A include the settings of the control data format for controlling the variable attenuator 303. Also, the settings 164A include the settings of the control data format for controlling the DAC-IC 304. Further, the settings 164A include the settings of the control data format for controlling the ADC-IC 305.

[0068] As another example, the memory 160B included in the mezzanine card 150B stores the settings 164B for controlling the application circuit 170B. The application circuit 170B includes an amplifier 301, a tunable filter 302, a variable attenuator 303, a DAC-IC 304, and an ADC-IC 305. Therefore, the settings 164B include the settings of the communication format and the control data format similar to those of the settings 164A.

[0069] Furthermore, as another example, the memory 160C included in the mezzanine card 150C stores settings 164C for controlling the application circuit 170C. The application circuit 170C includes an amplifier 301, a tunable filter 302, a DAC-IC 304, and an ADC-IC 305. However, the application circuit 170C does not include a variable attenuator 303. Therefore, unlike the settings 164A and 164B, the settings 164C do not include settings in a control data format for controlling the variable attenuator 303.

[0070] The carrier board 100 acquires the settings 164 from the mezzanine card 150 connected to the carrier board 100. Then, the carrier board 100 writes the settings 164 to the register of the interface circuit 126. Thereby, the carrier board 100 can communicate with the mezzanine card 150 using any protocol and format.

[0071] <D. Processing Procedure> FIG. 7 is a diagram showing an example of the processing procedure of the carrier board 100. In one aspect, the programmable circuit 120 may read a program for performing the processing of FIG. 7 from the memory 110 or a ROM (Read Only Memory) or the like (not shown) and execute the program. In other aspects, part or all of the processing may also be realized as a combination of circuit elements configured to execute the processing.

[0072] In step S710, the carrier board 100 executes the initial setting of the programmable circuit 120. More specifically, the carrier board 100 configures the digital function unit 122 and the memory processing unit 124 on the programmable circuit 120 by the system common function setting 112. Also, the carrier board 100 configures the interface circuit 126 as the default interface circuit. The default interface circuit can be determined in any way. As an example, assume that the default interface circuit is interface circuit A. In this case, the carrier board 100 configures interface circuit A on the programmable circuit 120 by the initial setting. That is, at this stage, the interface circuit 126 is interface circuit A. Further, the identifier 162A is stored in the register of the interface circuit 126. The identifier 162 stored in the register of the interface circuit 126 indicates the type of the mezzanine card 150 corresponding to the current interface circuit 126.

[0073] In step S720, the carrier board 100 acquires the identifier 162 from the memory 160 of the mezzanine card 150. More specifically, the memory processing unit 124 receives the identifier 162 from the mezzanine card 150 via the communication line 220.

[0074] In step S730, the carrier board 100 determines whether the received identifier 162 matches the identifier 162 stored in the register of the interface circuit 126. The fact that these identifiers 162 match indicates that the interface circuit 126 corresponds to the mezzanine card 150 connected to the carrier board 100. Conversely, the fact that these identifiers 162 do not match indicates that the interface circuit 126 does not correspond to the mezzanine card 150 connected to the carrier board 100. If the carrier board 100 determines that the received identifier 162 matches the identifier 162 stored in the register of the interface circuit 126 (YES in step S730), it transfers control to step S760. Otherwise (NO in step S730), the carrier board 100 transfers control to step S740.

[0075] In step S740, the carrier board 100 obtains, from the memory 110, the settings corresponding to the identifier 162 read from the mezzanine card 150. As an example, assume that the carrier board 100 obtains the identifier 162B from the mezzanine card 150. In this case, the carrier board 100 obtains the settings of the interface circuit B corresponding to the identifier 162B.

[0076] In step S750, the carrier board 100 reconfigures the interface circuit 126 based on the obtained settings. In a certain aspect, the carrier board 100 may perform a partial reconfiguration of the interface circuit 126. By doing so, the carrier board 100 can reconfigure the interface circuit 126 without stopping the functions of the entire programmable circuit 120.

[0077] In step S760, the carrier board 100 acquires, from the memory 160 of the mezzanine card 150, the setting 164 of one or more control data formats. Then, the carrier board 100 writes the acquired setting 164 into the register of the interface circuit 126. In a certain situation, the carrier board 100 may acquire the identifier 162 and the setting 164 simultaneously. That is, the carrier board 100 may acquire the identifier 162 and the setting 164 through a series of consecutive communications.

[0078] In step S770, the carrier board 100 determines whether the writing of the setting 164 into the register is completed. If the carrier board 100 determines that the writing of the setting 164 into the register is completed (YES in step S770), it transfers the control to step S780. Otherwise, the carrier board 100 transfers the control to step S770.

[0079] In step S780, the carrier board 100 completes the setting change regarding the control data format. In a certain situation, the said setting change may include the change of at least one of the software and hardware settings of the interface circuit 126. Further, in other situations, the said setting change may include the change of at least one of the software and hardware settings of the digital function unit 122.

[0080] In a certain situation, the processing from step S710 to S780 may be executed by swapping the order. Also, some of the processing from step S710 to S780 may be executed simultaneously. Further, assuming that the carrier board 100 is connected to a plurality of mezzanine cards 150. In this case, the processing from step S710 to S780 may be executed in parallel for each mezzanine card 150.

[0081] By executing a program or the like, the carrier board 100 can execute the method for rewriting the carrier board 100 shown in FIG. 7. The method includes obtaining a first identifier indicating the type of the mezzanine card 150 from the mezzanine card 150. The method also includes comparing the first identifier with a second identifier currently stored in the interface circuit 126. The method further includes obtaining settings corresponding to the first identifier from the memory 110 in the carrier board 100 based on the first identifier and the second identifier being different. Furthermore, the method includes reconfiguring the interface circuit 126 based on the settings corresponding to the first identifier.

[0082] As shown in the processes of steps S730 to S750, the memory processing unit 124 includes a register for storing an identifier 162 indicating the type of the mezzanine card 150. The carrier board 100 compares the first identifier obtained from the mezzanine card 150 with the second identifier currently stored in the register. Also, based on the first identifier and the second identifier being different, the carrier board 100 reads the settings corresponding to the first identifier from the memory 110. Then, the carrier board 100 reconfigures the interface circuit 126 based on the first identifier. Here, the first identifier is, for example, the identifier 162B indicating the mezzanine card 150B shown in FIG. 4. Also, the second identifier here is, for example, the identifier 162A indicating the mezzanine card 150A shown in FIG. 3.

[0083] As described above, the carrier board 100 executes the series of processes shown in FIG. 7. As a result, the interface circuit 126 is reconfigured and can correspond to any mezzanine card 150. Also, the interface circuit 126 has the setting 164 written to a register in the interface circuit 126 and can correspond to any communication format and control data format.

[0084] In a certain situation, the register in which the identifier 162 and the setting 164 are written may be external to the interface circuit 126. That is, the identifier 162 and the setting 164 may be written to a register provided at any position on the programmable circuit 120. As an example, the identifier 162 and the setting 164 may be written to a register included in the digital function unit 122 or a register included in the memory processing unit 124. As another example, the identifier 162 and the setting 164 may be written to a register of the system common function setting 112 configured on the programmable circuit 120.

[0085] <E. Summary> As described above, the rewriting system for the carrier board 100 according to the present embodiment includes a carrier board 100 and a mezzanine card 150. The carrier board 100 has a programmable circuit 120 including an interface circuit 126 for communicating with the mezzanine card 150. Further, the carrier board 100 has a first memory storing a plurality of settings for reconfiguring the programmable circuit 120. The mezzanine card 150 has a second memory storing an identifier indicating the type of the mezzanine card 150 and settings of one or more control data formats used in the mezzanine card 150. The mezzanine card 150 transmits the identifier and the settings of one or more control data formats to the carrier board 100 based on a request from the carrier board 100. The carrier board 100 selects a setting corresponding to the identifier received from the mezzanine card 150 from among the plurality of settings. Further, the carrier board 100 reconfigures the interface circuit 126 based on the setting corresponding to the identifier. The carrier board 100 can communicate with any mezzanine card 150 by rewriting the interface circuit 126. As a result, the mezzanine card 150 does not need to reconfigure a circuit to communicate with the carrier board 100, does not require a programmable circuit, and can be manufactured at low cost. Further, the carrier board 100 can be shared among all the mezzanine cards 150. Furthermore, the carrier board 100 and the programmable circuit 120 have a partial reconfiguration function. Thereby, the interface circuit 126 can be dynamically reconfigured without stopping the operation of the entire programmable circuit 120.

[0086] <F. Addendum> As described above, the present embodiment includes the following disclosure.

[0087] [Configuration 1] A programmable circuit (120); A memory (110) storing a plurality of settings for reconfiguring the programmable circuit (120); A connector (130) for communicating with a mezzanine card (150), The programmable circuit (120) described above an interface circuit (126) for communicating with the mezzanine card (150) via the connector (130); a carrier board (100) including a memory processing unit (124) that obtains a first identifier indicating the type of the mezzanine card (150) from the mezzanine card (150), selects a setting corresponding to the first identifier from among the plurality of settings, and executes a process of reconfiguring the interface circuit (126) according to the setting corresponding to the first identifier. [Configuration 2] The interface circuit (126) includes a register for storing an identifier indicating the type of the mezzanine card (150). Selecting the setting corresponding to the first identifier includes reading, from the memory (110), the setting corresponding to the first identifier based on the fact that the first identifier is different from a second identifier stored in the register. The carrier board (100) according to Configuration 1. [Configuration 3] The connector (130) includes a plurality of communication lines. A part of the plurality of communication lines is a communication line for obtaining the first identifier from the mezzanine card (150) by the memory processing unit (124). The carrier board (100) according to Configuration 1 or 2. [Configuration 4] The memory processing unit (124) obtains settings of one or more control data formats from the mezzanine card (150), and writes the settings of the one or more control data formats to the register of the interface circuit (126) after the process of reconfiguring the interface circuit (126). The carrier board (100) according to any one of Configurations 1 to 3. [Configuration 5] Each of the settings of the one or more control data formats Information regarding a control data format for controlling an application circuit (170) that realizes the functions provided by the above-mentioned mezzanine card (150), and The carrier board (100) according to Configuration 4, including information regarding a communication format for communication between the above-mentioned interface circuit (126) and the above-mentioned application circuit (170). [Configuration 6] A memory (160) that stores an identifier indicating the type of the mezzanine card (150) used for determining the reconfiguration of the interface circuit (126) in the carrier board (100), and settings of one or more control data formats used by the above-mentioned mezzanine card (150), and A connector (130) for communicating with the carrier board (100), The mezzanine card (150) that transmits the above-mentioned identifier and the settings of the one or more control data formats to the above-mentioned carrier board (100) based on a request for the above-mentioned identifier from the above-mentioned carrier board (100). [Configuration 7] The above-mentioned connector (130) includes a plurality of communication lines, The mezzanine card (150) according to Configuration 6, wherein a part of the plurality of communication lines is a communication line for transmitting the above-mentioned identifier and the settings of the one or more control data formats to the above-mentioned carrier board (100). [Configuration 8] The above-mentioned mezzanine card (150) further includes an application circuit (170) that realizes the functions provided by the above-mentioned mezzanine card (150), Each of the settings of the one or more control data formats includes information regarding a control data format for controlling the above-mentioned application circuit (170), and information regarding a communication format for communication between the above-mentioned interface circuit (126) and the above-mentioned application circuit (170), and is the mezzanine card (150) according to Configuration 6 or 7. [Configuration 9] A rewriting system for the carrier board (100), It includes the above carrier board (100) and the mezzanine card (150). The above carrier board (100) A programmable circuit (120) including an interface circuit (126) for communicating with the above mezzanine card (150), And a first memory (110) storing a plurality of settings for reconfiguring the above programmable circuit (120). The above mezzanine card (150) has a second memory (160) storing an identifier indicating the type of the above mezzanine card (150) and settings of one or more control data formats used by the above mezzanine card (150). The above mezzanine card (150) transmits the above identifier and the settings of the one or more control data formats to the above carrier board (100) based on a request from the above carrier board (100). The above carrier board (100) Selects a setting corresponding to the above identifier received from the above mezzanine card (150) from among the above plurality of settings, A system that reconfigures the above interface circuit (126) based on the setting corresponding to the above identifier. [Configuration 10] A method for rewriting the carrier board (100), Obtaining a first identifier indicating the type of the above mezzanine card (150) from the mezzanine card (150), Comparing the above first identifier with a second identifier stored in an interface circuit (126) for communicating with the above mezzanine card (150), Based on the fact that the above first identifier and the above second identifier are different, obtaining a setting corresponding to the above first identifier from a memory (110) within the above carrier board (100), A method including reconfiguring the above interface circuit (126) based on the setting corresponding to the above first identifier.

[0088] The embodiments disclosed this time should be considered illustrative in all respects and not restrictive. The scope of the present disclosure is shown not by the above description but by the claims, and all modifications within the meaning and scope equivalent to the claims are intended to be included. Also, the disclosed content described in the embodiments and each modification example is intended to be implemented, as much as possible, either alone or in combination.

Explanation of Signs

[0089] 10 System, 100 Carrier board, 110, 160, 160A, 160B, 160C Memory, 112, 114, 164, 164A, 164B, 164C Setting, 120 Programmable circuit, 122 Digital functional unit, 124 Memory processing unit, 126 Interface circuit, 130, 180 Connector, 140, 210, 220, 310, 320 Communication line, 150, 150A, 150B, 150C, 150D, B Mezzanine card, 162, 162A, 162B, 162C, 162D Identifier, 170, 170A, 170B, 170C Application circuit, 301 Amplifier, 302 Tunable filter, 303 Variable attenuator, 304 DAC-IC, 305 ADC-IC.

Claims

1. A programmable circuit, a memory storing a plurality of settings for reconfiguring the programmable circuit, and a connector for communicating with a mezzanine card, wherein the programmable circuit includes an interface circuit for communicating with the mezzanine card via the connector, and a memory processing unit that acquires a first identifier indicating the type of the mezzanine card from the mezzanine card, selects a setting corresponding to the first identifier from the plurality of settings, and executes a process of reconfiguring the interface circuit according to the setting corresponding to the first identifier. A carrier board.

2. The interface circuit includes a register for storing an identifier indicating the type of the mezzanine card, and selecting the setting corresponding to the first identifier includes reading out, from the memory, the setting corresponding to the first identifier based on that the first identifier is different from a second identifier stored in the register. The carrier board according to Claim 1.

3. The connector includes a plurality of communication lines, wherein a part of the plurality of communication lines is a communication line for the memory processing unit to acquire the first identifier from the mezzanine card. The carrier board according to Claim 1 or 2.

4. The memory processing unit acquires settings of one or more control data formats from the mezzanine card, and writes the settings of the one or more control data formats to the register of the interface circuit after the process of reconfiguring the interface circuit. The carrier board according to Claim 2.

5. Each of the settings of the one or more control data formats includes information regarding a control data format for controlling an application circuit that realizes a function provided in the mezzanine card, and information regarding a communication format for communication between the interface circuit and the application circuit. The carrier board according to Claim 4.

6. A memory storing an identifier indicating the type of a mezzanine card used for determining reconfiguration of an interface circuit in a carrier board and settings of one or more control data formats used in the mezzanine card, and a connector for communicating with the carrier board. A mezzanine card that transmits the identifier and the setting of the one or more control data formats to the carrier board based on the request for the identifier from the carrier board.

7. The connector includes a plurality of communication lines, The mezzanine card according to claim 6, wherein a part of the plurality of communication lines is a communication line for transmitting the identifier and the setting of the one or more control data formats to the carrier board.

8. The mezzanine card further includes an application circuit that realizes functions provided by the mezzanine card, Each of the settings of the one or more control data formats, information regarding a control data format for controlling the application circuit, and information regarding a communication format for communicating between the interface circuit and the application circuit. The mezzanine card according to claim 6 or 7.

9. A rewriting system for a carrier board, comprising: the carrier board and a mezzanine card; The carrier board includes: a programmable circuit including an interface circuit for communicating with the mezzanine card; and a first memory storing a plurality of settings for reconfiguring the programmable circuit; The mezzanine card has a second memory storing an identifier indicating the type of the mezzanine card and settings of one or more control data formats used in the mezzanine card; The mezzanine card transmits the identifier and the settings of the one or more control data formats to the carrier board based on a request from the carrier board; The carrier board: selects a setting corresponding to the identifier received from the mezzanine card from among the plurality of settings; and reconfigures the interface circuit based on the setting corresponding to the identifier.

10. A method for rewriting a carrier board, comprising: obtaining a first identifier indicating the type of the mezzanine card from the mezzanine card; comparing the first identifier with a second identifier stored in an interface circuit for communicating with the mezzanine card; obtaining a setting corresponding to the first identifier from a memory in the carrier board based on the first identifier and the second identifier being different; A method comprising reconfiguring the interface circuit based on a setting corresponding to the first identifier.

Citation Information

Patent Citations

  • Optical transceiver function control system and communication system control method

    JP2019213121A