Page 82 - ITU Journal, Future and evolving technologies - Volume 1 (2020), Issue 1, Inaugural issue
P. 82

ITU Journal on Future and Evolving Technologies, Volume 1 (2020), Issue 1




          In this section, we present the API that grants access to  is parameterized by a discrete variable corresponding to
          the tile’s metamaterial applications by defining an ab-  the number of outgoing beams, their directivity ampli-
          stract representation of the metamaterial, its switch ele-  tudes, and an appropriate number of (θ, ϕ) pairs, in-
          ment configurations and their respective functionalities.  dicating the steering angles. The most complex func-
          Specifically, the API resides between a user, operating a  tionality can be generally described by a custom scat-
          common PC (desktop, smartphone, etc.) and a tile gate-  tering pattern and represented herein by a collection of
          way, linked to the network of switch element controllers.  variables that indicate the reflected power towards all
          The case diagram of the proposed concept, presented in  directions within the tile’s viewing area.
          Fig. 7(a), involves the following main entities:     It is, also, worth noting that the data objects being
                                                               passed as arguments in the callbacks are primarily de-
           ˆ A Configuration Database which stores all informa-
                                                               scriptions of wavefronts. A simplified data structure is
             tion regarding the tiles, the switch element config-
                                                               illustrated in Fig. 7(b). Hence, a wavefront is described
             urations, and their corresponding functionalities.
                                                               by a type (string identifier), such as “Planar”, “Elliptic”,
           ˆ A User which initiates all API callbacks though ei-  “Gaussian”, “Custom”, etc. For each type, a series of
             ther the source code or button click events in the  headers defines the location and attributes of the cre-
             Graphical User Interface (GUI).                   ating source (for impinging wavefronts only) as well as
                                                               the coordinate system origin with respect to which all
           ˆ The HyperSurface Gateway which represents the
                                                               distances are measured. Moreover, the direction of ar-
             electronic controller of the hardware.
                                                               rival and departure are arrays that can be used to define
           ˆ An Interrupt handling service which acts as a per-  multiple impinging or departing wavefronts at the same
             sistent daemon, receiving and dispatching com-    time. Notably, the information within the headers may
             mands to the Hypersurface Gateway.                be sufficient to produce any value of the wavefront via
                                                               simply analytical means. In such cases, the data part
          4.1 Data Structures of the Metamaterial API          can be left empty. In custom wavefronts, the data is
                                                               populated accordingly. A mechanism for defining peri-
          In the configuration Database (DB), each tile is associ-  odicity is supplied via the notion of ranges (i.e. coor-
          ated with an element array S that represents all possible  dinate ranges where the energy field is approximately
          arrangements of switch element states on the metama-  equal), to potentially limit the size of the overall data
          terial under study. Each switch element is represented  object.
          by either a discrete or a continuous variable, creating a
                                                               The parameters that represent the functionalities and
          mathematical space of V 1 × N × M + · · · + V n × N × M
                                                               configurations of a tile constitute the set of variables
          dimensions, where V i is the number of elements of the
                                                               that are exposed to the programmer through the meta-
          same type (e.g. capacitors) and N, M the number of
                                                               material API. They are organized in a unified manner
          unit cells towards the two perpendicular directions. Fur-
                                                               within the Database, as shown in Fig. 7(c) which pro-
          thermore, every object in this space corresponds to a dif-
                                                               vides an illustration of the unique association between
          ferent state of S and therefore a different configuration.
                                                               all primary tables. Particularly, the ¡Tile¿ table stores
          As an example, a tile with two controllable resistive and
                                                               all information of a tile’s hardware implementation, such
          one diode elements per unit cell is parameterized by a
                                                               as the number of variables per unit cell and the type of
          2×N ×M +1×N ×M array, where the first and second
                                                               switch elements. The ¡Functionality¿ table stores the
          sets span a continuous [R min , . . . , R max ] and a discrete
                                                               representation scheme described in subsection 2 for all
          [0, 1] range, respectively. In this case, 0 and 1 corre-
                                                               available metamaterial functionalities. Each parameter
          spond to the OFF and ON states of the diode. This
                                                               associated with a functionality is organized in a separate
          representation will then acquire the following form
                                                               table, including a table that stores an identification vari-
             F ←− [(d 1 , d 2 , i 1 ) n=1 , . . . , (d 1 , d 2 , i 1 ) n=N×M ]  (1)  able representing the type of functionality. This table
                                                               ID enumerates all possible operations supported by the
          where d 1 , d 2 are double-type variables, i 1 is an inte-  tile, including full power absorption, wavefront manipu-
          ger variable, and F is the appointed functionality. The  lation (steering, splitting, etc.), and wavefront sensing.
          primitive data types of all variables should be selected  Finally, the ¡Configuration¿ table combines, in an exclu-
          so as to minimize the total parameter space of com-  sive manner, both primary tables (¡Tile¿ and ¡Function-
          bined states without any loss of relevant information.  ality¿) to link each stored functionality with a specific
          This lays a better optimized communication and com-  set of switch element states, acquired from the pool of
          putational burden to both the API and the Compiler,  available entries in the secondary table ¡States¿.
          especially during the compilation process where a siz-
          able amount of mathematical computations is required.  4.2 API Callbacks and Event Handling
          Accordingly, all functionalities are, also, associated with
          their own representation and classified pertinent to their  Using the Database as a reference point, the API is re-
          own type and defining parameters. For instance, a com-  sponsible for interpreting a configuration array to the
          plex beam-splitting and polarization control operation  proper set of hardware commands, when a suitable call-





          62                                 © International Telecommunication Union, 2020
   77   78   79   80   81   82   83   84   85   86   87