Next Article in Journal
Generalized Orthopair Fuzzy Weighted Power Bonferroni Mean Operator and Its Application in Decision Making
Previous Article in Journal
Effective Two-Phase Heuristic and Lower Bounds for Multi-Stage Flexible Flow Shop Scheduling Problem with Unloading Times
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Symmetry in the Bit-Stream Converter Design

Department of Computer Science and Engineering, Saint Petersburg Electrotechnical University “LETI”, 197022 Saint Petersburg, Russia
*
Author to whom correspondence should be addressed.
Symmetry 2023, 15(11), 2006; https://doi.org/10.3390/sym15112006
Submission received: 15 September 2023 / Revised: 22 October 2023 / Accepted: 26 October 2023 / Published: 31 October 2023
(This article belongs to the Section Computer)

Abstract

:
The paper presents the results of the study of the influence of symmetry in the design of bit-stream digital converters. We have shown realizations of the symmetry-based approach at different levels: at the level of basic elements, functional converters, and at the level of processes occurring in bit-streaming devices. Using symmetry in design, we have developed basic bit-stream elements that realize frequently used transformations with good technical performance. As a research result, we present descriptions and implementation results of the designed symmetric bit-stream devices in FPGA chips. Using the proposed elements and the concept of symmetric bit-stream device design, we designed and presented a specialized computing module for a temperature sensor controller.

1. Introduction

In the last few years, the paradigm of cyber-physical systems has been actively developing. Such systems support the optimal integration of digital and physical components, which maximizes the synergies between the two and allows achieving significant benefits both in terms of cost, performance, and reliability [1]. The development of cyber-physical systems is due not only to new technologies of data transmission, but also to the possibility of creating integrated elements that simultaneously perform the following functions: primary processing of information about a physical object or phenomenon of various natures into an electrical signal; intermediate transformation to obtain the necessary form of data representation; and computational conversions providing the formation of the output signal transmitted to the core located on the next level of cyber-physical architecture. Due to this integration, part of the computational processing is moved from the processing core closer to the sensing element, realizing the computation and analytics “next to the sensor” paradigm [2,3]. Within the “computation near the sensor” paradigm, there is a need to develop special devices that will provide computation near the sensors. These should be compact, energy-efficient, and fault-tolerant modules that can be manufactured as separate chips or integrated with sensitive elements in a single crystal [4,5].
The hardware implementation of data conversion near the sensor is available in analog, digital, pulse, and mixed formats. Obviously, performing calculations in the formats that are obtained at the sensing outputs will avoid additional operations related to data format conversions. Many sensing elements generate a frequency output signal represented as pulse streams or PWM (pulse-width modulated) signal streams [6,7,8]. In both cases, the amplitude of the signals is the same and can be considered a logical value of 1. Moreover, the frequency signals near the sensor can be obtained by converting analog signals into the time parameters of single-amplitude pulses using universal micromodules [9] or specialized converters oriented to specific types of sensor elements [10,11]. The listed pulse forms of signal representation, also called bit-stream, allow the use of digital logic elements for primary data processing [12]. In this case, programmable logic devices of various levels of complexity can be used as the element base for the implementation of near-sensor computing modules [13]. In some cases, it is economically feasible to perform the primary transducers of sensor signals in the form of ASICs [14].
The purpose of our research was to find a formal way to construct bit-stream converters on a digital element basis using the concepts of structural symmetry in the architecture of the converters and functional symmetry in the conversion processes. We have shown the realization of the approach based on structural symmetry at different levels: at the level of basic elements, functional converters, as well as at the level of processes occurring in bit-stream converters.
Using symmetric structures, we have developed the following basic elements: binary rate multiplier, bit-stream multiplier-divider, and bit-stream quadratic converter. We used the proposed elements to design a controller for a temperature sensor that generates an output as a stream of PWM signals. The importance of our study is due to the fact that the proposed approach to the construction of bit-stream converters can be used in the design of compact, specialized controllers placed near the sensors. When implemented as ASICs, such controllers can be placed on the same chip as the sensing element. This will allow us to perform transformations at the point of measurement of physical parameters. The novelty of our study is determined by the use of an original approach to the organization of computations: arithmetic transformations are performed not by sequential calculation of complex functions, but by tracking the input signals with the help of a symmetric dynamical system tending to a dynamic equilibrium mode. The parameters of this mode can be used to obtain the result of computations.
The paper is organized as follows. We first briefly review typical related works on non-algorithmic computation in Section 2. In Section 3, we present the proposed symmetric bit-stream circuits and mathematically describe the processes occurring in them. Section 4 shows the results of the implementation of the developed devices in FPGAs, summarizes the hardware costs required for this, and shows the simulation results. Section 5 analyzes the obtained results. Conclusion and future research directions are given in Section 6. The appendices show the traditional calculators for comparison with the proposed solutions.

2. Related Work

The principle of symmetry in any field of natural science allows us to create new solutions and find new laws. Special attention is paid to electronic circuits because the efficiency of their design is often determined by the symmetry/asymmetry of their architecture, their topological implementation, and the processes occurring in them. The application of the symmetry principle in the design of hardware converters is shown in many sources at different levels: at the level of analog components, and at the level of digital elements, at the level of system modules. The symmetry of device architectures as well as symmetry in layout can be considered.
For example, the authors of [15] showed both theoretically and experimentally the application of symmetry rules at the level of inductively coupled active LRC circuits. The authors have developed the basis of PT (parity-time) symmetric electronics, which allows using the apparatus of PT-symmetric Hamiltonians to obtain important information for understanding the behavior of the system at the level of RLC components. In Ref. [16], it is shown that symmetry constraints in an analog circuit have a significant influence on its performance. This paper proposes an effective way to detect the symmetry pairs of analog devices from the circuit netlist and analyze the symmetry constraints in these pairs. Correction of the detected irregularities can improve the performance of the implementation. Victor K. Tamba et al. [17] present an oscillator with different special features and symmetry. The features and oscillator dynamics are discovered through different tools of nonlinear dynamics. An electronic circuit is designed to mimic the oscillator’s dynamics. Moreover, the combined synchronization of two drives and one response oscillator is reported.
The authors of the paper [18] presented the results of a study on the creation of symmetry constraints at the system level. They proposed a new method for detecting system symmetry constraints for analog circuits based on graph similarity. Using graph spectral analysis and graph centrality, the proposed method can be applied to circuits and systems of large scale and different architectures. Pijush Kanti Bhattacharjee [19] has shown that with proper application of symmetric functions, it is possible to easily solve design problems of computing devices and complex control systems with different parameters or variables, as well as problems with a large number of variables consisting of functions. The author also proposed a way to simplify Boolean functions of any kind using symmetric functions. Thus, he developed an approach to simplifying the implementation of the hardware devices based on symmetries. The paper [20] shows a variant in-memory calculation implemented on the basis of eight-transistor (8T) static random-access memory (SRAM). This approach provides execution of multibit relocatable operations. The article shows the architecture of a weighting block with diagonal symmetry and the results of an experiment confirming a 54.4% increase in the performance of the computator compared to traditional computations.
In the paper [21], a new structure of symmetry constraint extraction based on graph learning for analog/mixed circuits is presented. An efficient heterogeneous multigraph representation was proposed to model interconnections in a circuit. It was shown that the algorithm for embedding circuit elements represents the circuit with the most representative substructures. Thanks to the teacherless inductive learning method, the proposed structure can be generalized to any schematic project. Experimental results demonstrated the effectiveness of the proposed structure in detecting symmetry constraints at both system and device levels. The authors of the paper [22] revisited the notion of symmetry in Boolean functions, with a special emphasis on group theory. They proposed a new algorithm that searches for symmetries of Boolean functions under permutations of inputs and outputs. This allows us to use the advantages of functional symmetry in solving problems of synthesis and verification of digital circuits. The authors of the paper [23] show methods for constructing symmetric arithmetic schemes that compute polynomials. In doing so, he proves that the symmetric scheme is provided by the symmetric form of the realized polynomial. An example of the efficiency of symmetry in structure-level design is shown in the example of digital filter design [24]. The authors studied the architecture of a two-dimensional (2-D) IIR filter and showed that new structures of a two-dimensional IIR filter with diagonal and four-fold rotational symmetries. The critical paths in the proposed filters are shorter, which allows for more efficient hardware implementations.
Thus, we can note the relevance of studies related to the application of various types of symmetries in the design and analysis of digital circuits. In this case, various symmetries at the functional and structural levels are considered. It can also refer to the symmetry of the processes occurring in the devices. This type of symmetry corresponds to symmetry with respect to time transfer and is provided by the physical equivalence of different time moments and their homogeneity. The concept of dynamic functional symmetry is also used; under such symmetry, we understand the processes occurring in symmetrical parts of the circuit, with some unequal activity at the same averaged characteristics. Our research focuses on identifying symmetries in bit-stream devices [12] and determining the effectiveness of incorporating symmetry principles into their design.

3. Materials and Methods

The types of symmetry observed in electronic devices can be divided into two types. The first type is related to the architecture and can be considered as symmetry in the device, manifested at the level of modules. The second type is observed at the level of processes occurring in different branches (channels) of the devices. The symmetry of processes is relevant for devices performing the processing of continuous information flows. In this case, the stream can be considered at different levels: it can be a stream of single pulse signals, a stream of codewords, or a stream of frames or files. In considering bit-stream devices, we will concentrate on analyzing streams of pulse signals with the unit amplitude.
The basic elements of bit-stream devices are logic primitives (OR, AND, NOT), registers, reversible counters, and binary rate multipliers. The architecture of registers and reversible counters is quite well researched, and there are both classical implementations and original devices [25]. Binary rate multipliers can also be designed using different approaches [26,27,28]. The binary rate multiplier was proposed and actively modified in the 1970s of the last century, but no principal changes in the structure have been proposed so far. Modern integrated circuits, for example [29], are produced according to the ideas shown in the first articles.

3.1. Binary Rate Multiplier

The binary rate multiplier generates a pulse stream of average frequency proportional to the value of the decimal equivalent of the binary code D according to the following formula:
F out = F ref   D 2 n  
where   F ref   is input clock frequency of the multiplier;   D = i = 0 n 1 D i 2 i   is the decimal equivalent of the input binary code,   D i = 0 ; 1   is logic state of the i-th bit of the code D; and n is multiplier bit capacity.
The classical structure of the multiplier implemented in accordance with the approach proposed in [26] is realized in the form of an integrated circuit and has a sequential organization [29]. This structure of a binary rate multiplier has the following disadvantages:
  • speed limitations, due to the need to synchronize the triggering of AND components and the organization of a group transfer circuit by the OR component;
  • dependence of the number of inputs of AND elements on the multiplier digit capacity, leading to the usage of multi-input AND circuits;
  • nonlinear deterioration of the topological characteristics of the circuit with increasing bit capacity, which leads to a large number of traces going to the AND circuits from lower to higher digits along the entire structure, and these traces intersect with synchronization traces.
We propose a new architectural solution based on symmetric representation. The schematic of the symmetric binary rate multiplier is presented in Figure 1. The multiplier consists of two n-bit binary counters, an inverter, n three-input AND elements, and an OR element. The device has a clock frequency input   F ref   and a reset input R.
The symmetric rate multiplier structure is implemented by using two symmetric branches organized with binary counters. The first counter is controlled by the input clock frequency, and the second counter is controlled by this frequency shifted by half a clock. In this way, symmetrical branches with processes shifted by half a clock cycle are formed. Such a displacement provides a shift in time for the processes occurring in different branches. As a result, in the device there is a simultaneous formation of two states of the counting process: the current one, shown by counter 1 (top counter in the figure), and the previous one, shown by counter 2 (lower counter in the figure).
The operation of the multiplier is based on the principle of simultaneous formation of two identical counting processes, with the second one shifted relative to the first one by moving the start of the second counter by half a clock cycle. This type of symmetry relies on the physical equivalence of different moments of time and its homogeneity. The comparison of streams allows us to identify a bit that changes state from zero to one during the counting process, i.e., in the code at the counter 1 output, this bit is already equal to 1, but in the code at the counter 2 output, it is still equal to 0. If the corresponding digit of the bus D expanded in reverse order holds one signal, the output will form a single pulse. The algorithm for output bit-stream formation is presented by us in [30].
The logical expression for the pulse stream at the output has the following form:
F out = L 0 v   L 1 v v   L n 1
where   L i = Q 1 i   Q 2 i ¯   D n i 1   ; and   i = 0 ,   n 1 ¯   is the digit number of the D bus.
Obviously, for any i, the equality   Q 1 i 1   Q 2 i 1 ¯ = 1   is achieved when   Q 1 i 1 = 1   and   Q 2 i 1 = 0 . This situation occurs for each output state   Q 1 i   equal to a logical one. This is due to the fact that the moment of transition of the output state   Q 2 i ¯   from 1 to 0 ( Q 2 i   from 0 to 1) is shifted by the time τ relative to the moment of transition of the output   Q 1 i   from 0 to 1, and is ensured by the clocking of counter 2 by the signal from the inverter output, i.e., signal   F ref ¯ .
Thus, a pulse sequence will be formed at the output of any AND element; its frequency is defined as follows:
F i = F ref 2 i + 1   D n 1 i
Impulses in these streams are separated by time, so at the output of the OR element, the cumulated stream is formed, i.e., the average value of the output frequency   F out   of the multiplier is determined by the following expression:
F out = F 0 + F 1 + + F n 2 + F n 1
or
F out = F ref 2 1   D n 1 + F ref 2 2   D n 2 + + F ref 2 n 1   D 1 + F ref 2 n   D 0
taking   F ref   and   2 n   out of brackets, we have the following expression:
F out = F ref   2 n D n 1 2 n 1 + D n 2 2 n 2 + + D 1 2 1 + D 0 2 0 .
Here, the expression in brackets corresponds to the expanded record of the binary code D. Thus, the average value of the output frequency of the pulse stream has the form:
F out = F ref   D 2 n .
This formula corresponds to the original expression for a binary rate multiplier.
The timing diagrams of the three-bit binary rate multiplier operation are shown in Figure 1b. The counters are set to 0 by the signal R. At the same time, the inverse outputs of the second counter     Q 2 i ¯ will be set to 1. After completion of the reset signal R, the operation is as follows: The conjunctions of the direct outputs of the first counter and the inverse outputs of the second counter produce pulse streams with an average frequency defined by the following formula:
F Q 1 Q 2   ¯ i = F ref 2 i .
When the input code D = 1112, all of these streams can be observed at the outputs of the AND elements. The duration of the three-bit multiplier operation period T corresponds to 8 pulses of the   F ref   stream. During one period T, 4 pulses can be observed on the line AND1, 2 pulses on the line AND2, and one pulse on the line AND3. The number of pulses in all streams (AND1, AND2, AND3) during the period is 7, which is shown in the diagram   F out   and corresponds to the value of the code D. When the code D = 1012 is applied, only the streams from the outputs of AND1 and AND3 will be summarized at the OR element; the stream at the AND3 element output is not formed due to the zero value of D1. The number of pulses in the output stream   F out   is 5, which corresponds to the code D.
The structure of the binary rate multiplier is built bit by bit without increasing the number of input elements from bit to bit and is free from the disadvantages of the classical realization.

3.2. Bit-Stream Multiplier-Divider

To perform multiplication and division operations on bit-stream signals, the method of converting the streaming data into binary codes and then performing the necessary operations using traditional digital arithmetic converters (adders, multipliers, divisors, etc.) has traditionally been used. We propose an approach to continuous tracking computational transformations in which no change in the data form is required and the computation is performed in a streaming mode. Figure 2 shows the bit-stream multiplier-divider (BSMD) that performs an operation on input bit-stream signals (PWM signals and frequency streams) and binary codes, with the computational results represented as binary code and frequency stream.
The BSMD circuit contains two binary rate multipliers (D/f), two AND elements, a reversible binary counter (CT) and a register (RG). In this unit, there is a symmetry at the level of modules, providing the formation of positive (Θ1, Nin, F1, D/f1, AND1) and negative (Θ2, Nout, F2, D/f2, AND2) branches of the unit. The process of result formation is based on the symmetry of the processes occurring in the corresponding branches.
At the initial moment, the counter and the register are reset to zero. The input binary code (Nin), PWM signals (Θ1 and Θ2), and pulse streams (F1 and F2), are fed to the inputs of the unit. Under the influence of the input code, pulses are generated at the output of the first binary rate multiplier; when the signal Θ1 is active, these pulses pass through the element AND to the summing input of the reversible counter. No pulses are input to the subtracting input of the reversible counter because the code Nout at the input of the second binary rate multiplier is zero. At the beginning of the next period of PWM signals, by raising of the signal Θ2, the code from the output of the reversible counter is written into the register. As in the previous period, under the influence of the code Nin, frequency F1, and PWM signal Θ1 pulse stream, F+ is formed and arrives at the summing input of the counter. The output code Nout has become non-zero, so under its influence, taking into account the frequency F2 and the PWM signal Θ2, a pulse stream F_ is formed and fed to the subtracting input of the reversible counter.
The negative feedback in the unit provides an exit to the established equilibrium mode characterized by the functional symmetry of the streams in the positive and negative branches of the unit. In this case, the number of impulses N+ coming to the summing input of the reversible counter and the number of impulses N coming to the subtracting input of the counter during the period T of pulse-width modulation are equal:
N + = N   or     F + ¯ = F ¯ ,
where   F + ¯   and   F ¯   are the average frequencies of pulse streams at the summing and subtracting inputs of the reversible counter. The average frequencies of the pulse streams at the outputs of binary rate multipliers are determined by the following expression:
F Df 1 ¯ = F 1 N in 2 n     and   F Df 2 ¯ = F 2 N out 2 n .  
Taking into account the conjunction operation performed by AND elements, the inputs of the reversible counter receive width-modulated pulse streams with frequencies defined as follows:
F + t ,   Θ 1 = F 1   N in 2 n when   kT t kT + τ 1 0 when   kT + τ 1 < t < k + 1 T
F t ,   Θ 1 = F 2 N out   2 n when   kT t kT + τ 2 0 when   kT + τ 2 < t < k + 1 T  
where k = 0, 1, 2, …, and   τ 1   and   τ 2   are the durations of the values 1 of the PWM signals Θ1 and Θ2 with period T, correspondingly.
The number of pulses coming to the summing and subtracting inputs of the reversible counter during one period of pulse-width modulation is determined by the following equations:
N + =   N in Θ 1 F 1   2 n ,   N =   N out   Θ 2 F 2 2 n .
The contents of the reversible counter are written to the register at the beginning of each period on the rising edge of the modulated signal. The code stored in the register is present at the BSMD output during the whole period.
After the first operating period of the BSMD, the reversible counter will generate the following code:
N out 1 = N out 0 + N in Θ 1 F 1   2 n   N out 0   Θ 2 F 2 2 n = N out 0   N out 0   Θ 2 k 2 + N in Θ 1 k 1 = = N out 0 1 Θ 2 k 2 + N in Θ 1 k 1
where   N out 0   is the initial value of the output code stored in the register; k 1 = F 1   2 n ,   k 2 = F 2   2 n .
After the second period of operation, the code at the register output will be calculated as follows:
N out 2 = N out 1   N out 1   Θ 2 k 2 + N in Θ 1 k 1 = N out 0 1 Θ 2 k 2 2 + N in Θ 1 k 1 1 + 1 Θ 2 k 2 N out 3 = N out 2   N out 2   Θ 2 k 2 + N in Θ 1 k 1 = = N out 0 1 Θ 2 k 2 3 + N in Θ 1 k 1 1 + 1 Θ 2 k 2 + 1 Θ 2 k 2 2
After the i-th period of the multiplier-divider operation, the reversible counter will generate the following code:
N outi = N out 0 1 Θ 2 k 2 i + N in Θ 1 k 1 1 + 1 Θ 2 k 2 + 1 Θ 2 k 2 2 + + 1 Θ 2 k 2 i 1
The second summand of this expression is a geometric progression with the common ratio   q = 1 Θ 2 k 2   and can be represented by the sum calculated as follows:
q i 1 1 q 1 = 1 Θ 2 k 2 i 1 1 1 Θ 2 k 2 1 = 1 1 Θ 2 k 2 i 1 Θ 2 k 2
Using the expression of the geometric progression sum, we obtain the following expression:
N out   m = N out 0 1 Θ 2 k 2 m + N in Θ 1 k 1 Θ 2 k 2 N in Θ 1 k 1 1 Θ 2 k 2 m 1 Θ 2 k 2
Since the values of   Θ 2   and   k 2   are in the following ranges:   0 < Θ 2 1 ,   0 < k 2 1     , then   0 < Θ 2 k 2 1 ; hence, the following applies:
lim t 1 Θ 2 k 2 m 1 = 0 .
Thus, in the dynamic equilibrium mode, the characteristic of the BSMD will have the following form:
N out   = N in Θ 1 k 1 Θ 2 k 2 .
The time for the BSMD to reach dynamic equilibrium mode depends on how fast the value   1 Θ 2 k 2 i 1   tends to zero and is therefore inversely proportional to the bit depth of the unit. The dynamic equilibrium mode corresponds to the symmetry of the processes in the positive and negative branches of the unit. It is in this mode that the code at the output   N out , and, accordingly, the pulse flow at the output   F out   correspond to the result of the multiplicative-divisive operation.

3.3. Bit-Stream Quadratic Converter

A frequently used operation in near-sensor calculations is raising to a power. It is interesting both as an independent operation and as an operation for forming approximate polynomials. Similar to the multiplicative-divisive conversion, the raising to a power can be performed by converting bit-stream data into digital codes, followed by traditional computation using typical arithmetic modules. Also, power functions can be computed directly in pulse form without transforming the form of the data. We will consider this in the example of squaring.
The input signals of the converter are represented in the form of pulse streams with frequencies   F 1   and   F 2 , and   F 1 >   F 2 . Two negative feedback branches are used in the converter. After the initial transients are completed, the converter reaches a dynamic equilibrium mode and further realizes the tracking mode. When the input signal changes slightly, the result at the output of the device will be obtained with the minimum delay. And two memory feedback loops provide increased accuracy in calculations and increased speed.
The schematic of the converter is shown in Figure 3.
It consists of an RS flip-flop and counter creating an internal PWM signal with variable period and constant pulse duration on the basis of frequency   F 1 ; binary rate multipliers D/f performing the multiplication of codes   N out   and   N out 1   by frequency   F 1 ; elements AND modulating pulse streams by PWM signals. Two reversible counters are used simultaneously to obtain the difference in frequencies of the summing and subtracting inputs, integrate these differences over time, and present the results as binary codes. These codes are stored in the corresponding registers at the end of the converter operation period. The converter operation is based on modulation of the bit stream by a stream of PWM signals with a constant width and a variable period dependent on the input signal. The PWM signals also determine the moments when the feedback is triggered. Due to negative feedback during operation, the device reaches the dynamic equilibrium mode. In this mode, the processes in the positive and negative branches of the device are symmetrical, and the codes recorded in the registers are the result of calculations. Violation of the symmetry of processes in the device is characterized by the occurrence of mismatches. Negative feedback provides compensation for mismatches and returns to the equilibrium mode. When the equilibrium in the device is violated, the time interval T is not constant; when the equilibrium is reached, the interval T is constant. In equilibrium mode, the number of pulses arriving at the summing (+) and subtracting (−) inputs of the reversible counters CT1 and CT2 during the time interval T are equal to each other:
N CT 2 + = N CT 2 or     F CT 2 + ¯ = F CT 2 ¯ ,
N CT 1 + = N CT 1 or     F CT 1 + ¯ = F CT 1 ¯ ,
where   F CT + ¯   and   F CT ¯   are the average values of pulse stream frequencies at the summing and subtracting inputs of the reversible counters. The average value of the frequency at the «+» input of the counter CT2 for the period T of the pulse stream   F CT 2 + ¯   is determined as follows:
F CT 2 + ¯ = F 1 Θ ,
where   Θ   is the relative duration of the logical one level at the RSff output during the period T. The subtraction input (−) of this reversible counter receives a pulse sequence from the output of the binary frequency multiplier D/f 6:
F CT 2 ¯ = N out 1 F 1   2 n ,
where   N out 1   is the code stored in register RG4.
The average value of the pulse stream frequency at the summing input of the reversible counters CT1 during the period T is determined as follows:   F CT 1 + ¯ = F CT 2 ¯ Θ .   Substituting (4) into the last expression, we obtain the following:
F CT 1 + ¯ = Θ N out 1 F 1   2 n .  
The pulse sequence from the output D/f 5 is transferred to the subtraction input of the reversible counter CT1. Its average frequency is described as follows:
F CT 1 ¯ = N out F 1   2 n
where   N out   is the code stored in register RG3.
When the transients are completed, the equality of the number of pulses received at the summing and subtracting inputs of the reversible counters during the period T of the input frequency   F 2   is achieved. Thus, the following expressions are derived:
  • for the counter CT2 from (1), taking into account (3) and (4), we can write as follows:
F 1 Θ   = N out 1 F 1   2 n or     N out 1 = Θ 2 n   ;
  • for the counter CT1 from (2), taking into account (5) and (6), we can write as follows:
Θ N out 1 F 1   2 n = N out F 1   2 n or   N out = Θ N out 1 .
By substituting the value of   N out 1   from expression (7) into (8), we obtain the following:
N out = Θ 2 2 n .
The relative duration   Θ   of the signal formed by the CT and RSff can be expressed as follows:
Θ = τ F 2 ,
where   τ = k F 1 , k is the division factor of the CT counter.
From Equations (9) and (10), the functional characteristic of the converter is derived:
N out = k F 1 F 2 2 2 n = 2 n 2 k F 1 F 2 2 .
Time diagrams of the converter operation are shown in Figure 3b.
Registers in feedback improve functional symmetry by fixing codes in the device branches during   T i   intervals, which also improves the dynamic properties of the converter. Internal pulse streams formed by the elements of the converter are characterized by a large nonuniformity due to the width modulation by the AND components. Consequently, in order to reduce non-uniformities without data fixation in feedback loops, it is necessary to perform averaging over a much longer conversion time interval T than   T i , i.e., T >> 1/ F 2 . The specific values of T are determined by the allowable errors. Registers in feedback loops improve other characteristics of the converter. For example, the codes at the inputs of the D/f frequency multipliers become more stable, and this improves the uniformity of the pulse streams at their outputs, thus stabilizing the   N out 1   and   N out   codes, reducing the time to reach the dynamic equilibrium state.
By introducing additional feedback loops, it is possible to modify this converter to realize higher power conversion.

4. Results

The elements proposed in Section 3 were realized on a digital basis using the Cyclone 10 LP FPGA family company Intel FPGA. Simulation of the devices was performed with ModelSimAltera Starter Edition 10.1, and implementation was performed using CAD Quartus Prime 18.0.0. Parameterized VerilogHDL descriptions of devices were prepared for the investigation, which allowed them to easily change the parameters of the devices and perform their research.

4.1. Binary Rate Multiplier

The RTL of the symmetrical 8-bit binary rate multiplier, obtained by compiling the VerilogHDL description, and the timing diagram of its operation are shown in Figure 4.
The pairs Add0 and rg0 and Add1 and rg1 represent counters symmetrically placed in the device branches. The first counter is driven by the rising edge of the clock signal, and the second by the falling edge of the clock signal. In the timing diagram Figure 4b, the input code D = 255 corresponds to passing 2n − 1 pulses of the F_ref stream to the F_out output during the device period, which is observed in the diagram in the range from 2140.36 ns to 2150.6 ns. The specified range for the frequency F_ref = 1/40 ns corresponds to the device operating frequency of 97.656 MHz. On the time diagram Figure 4c, input code D = 15 corresponds to the formation of 15 pulses at the output F_out during the period of operation of the device, which is observed on the line F_out. The characteristics of the designed device are shown in Table 1.
Analysis of Table 1 shows an almost linear increase in the total number of logic elements required to implement the device. The maximum possible frequency for the input F_ref was estimated using the slow 1200 mV 85 °C model.

4.2. Bit-Stream Multiplier-Divider

The results of the FPGA implementation of the symmetric bit-stream multiplier-divider are shown in Figure 5.
The RTL of the binary multiplier-divider is obtained by compiling its VerilogHDL description with the Quartus Prime compiler. Unlike the circuit in Figure 2, it contains logic elements: XOR clk_revers~0, AND clk_revers~1, and Phase Locked Loop Pll_inst. These elements make it possible to eliminate the simultaneous appearance of active single signals on the summing and subtracting inputs of the reversible counter, which can lead to the execution of only one action and the occurrence of a counting error. Pll is used to generate a short pulse to strobe an increment or decrement operation on the reversible counter. This short pulse is generated in such a way as to prevent the simultaneous change of signals at the P_minus and clk and P_plus and clk inputs, i.e., to avoid violation of the Tsu preset time and Th hold time of the internal triggers of the reversible counter. The timing diagram shows the transient process until the calculation result is reached. The characteristics of hardware costs are shown in Table 2.
There is a linear increase in all resources with the increase in device bit size, which makes it easy to predict the hardware cost as the bit size changes. The maximum possible frequencies F1 and F2 were estimated using the slow 1200 mV 85 °C model. It is impossible to identify a definite trend in the change of frequencies when changing the digit capacity. This is most likely due to the fact that when the bit capacity reaches certain values, the project trace becomes more complex, and these specific values depend on the FPGA architecture.

4.3. Bit-Stream Quadratic Converter

The results of the FPGA implementation of the symmetric bit-stream quadratic converter are shown in Figure 6.
For correct operation of the reversible counter, as in the multiplier-divider, a built-in PLL is used to generate clock pulses coming to the clk input of the reversible counters. The counter CT and flip-flop Dff with an asynchronous reset generate an internal PWM signal based on the input frequency F2. The hardware costs of such an implementation are shown in Table 3.
Figure 6b shows the simulation of the device operation when F1 and F2 constant-frequency signals are input to the device. The device reaches dynamic equilibrium at the beginning of the third period of operation. The result of the operation is represented by an integer; the fractional part of the result is lost. To avoid this, it is sufficient to increase the number of digits of the device, which allows scaling the result using coefficients equal to the integer power of the number 2. Additionally, the accuracy can be corrected by the duration of the internal PWM signal. It is desirable that its duration exceeds half of the period of frequency F2, which reduces the non-uniformity of internal bit streams. This non-uniformity is the cause of the loss of calculation accuracy.

5. Discussion

In this paper, we have proposed a circuit for a binary rate multiplier different from the binary rate multiplier traditionally used. The circuit is realized using standard digital logic modules. The proposed variant of the binary frequency multiplier, built on the basis of observing symmetry at the level of digital modules, has a regular structure. This allows to easily increase the digit capacity of the device and does not lead to the growth of the complexity of combinational circuits.
To evaluate the efficiency of our solution, we compared its characteristics with the rate multiplier implemented on the FPGA according to the traditional circuit [29]. For the correctness of the comparison of hardware costs, the auxiliary signals for controlling the operation of the multiplier and cascading were not used in the implementation of the traditional circuit. The RTL representation of the 8-bit circuit is given in Appendix A.
When realizing the circuit [29], it is required to use conjunctors with an increasing number of inputs: the inputs of the last conjunctor receive all output signals of the internal counter, reference frequency signals, and a bit of the input code. So, at the 8-bit realization of the multiplier, the number of inputs of the conjunctor is 10, 8 of which are the outputs of the counter. Two inputs are used for input code bit D and reference frequency F_ref. Obviously, the topological realization of such a device is complicated. When the device is implemented on an FPGA, the conjunction from many arguments is implemented sequentially, as shown in RTL Figure A1a in Appendix A. This implementation reduces the number of inputs on the conjunctor, but lengthens the combinational circuits, resulting in reduced circuit frequency and the manifestation of races, which in turn lead to undesirable switching events known as logic hazards. This phenomenon can be observed in the timing Figure A1c. The proposed symmetric architecture does not have this disadvantage.
The hardware costs of the traditional variant are shown in Table A1. The traditional variant is more economical, which is explained by doubling the number of triggers in the symmetric implementation, which leads to an increase in the number of cells used since each cell contains only one trigger. A comparison of the limiting frequencies shows that the traditional implementation can operate at higher frequencies. However, both the frequencies of the traditional implementation and the frequency characteristics of the proposed symmetric variant significantly exceed the frequency capabilities of the FPGA, so the frequency reduction cannot be considered a serious disadvantage limiting the application of the proposed architecture.
The proposed bit-stream multiplier-divider implements two complex operations, multiplication and division, which in the classical realization in both combinational and pipeline versions require significant costs. In this case, the calculation does not use elements of embedded DSP blocks; it removes restrictions on the families of FPGA chips that can be used to implement the binary multiplier-divider. As an alternative variant of the organization of calculations, it is possible to use traditional algorithms of arithmetic operations and their modifications.
We compared, in terms of hardware costs, our solution and implementation of the same function using library elements: counters for converting frequency streams into codes, multipliers, and dividers. The RTL of the resulting circuit is shown in Appendix B. The counters cnt_inst1 and cnt_inst2 are used to generate codes corresponding to the duration of the signals PWM1 and PWM2. The multiplier Mult_inst and the divider Div_inst are used to perform the corresponding arithmetic operations. D-flip-flop and logic elements provide a short pulse when the PWM1 signal rises; this short pulse is used to reset the counters. An external reset of the circuit is also provided. The peculiarity of the implementation is the use of the built-in multiplier, which imposes a limitation on the families of programmable chips suitable for the implementation of the device. Taking into account that embedded multipliers are nine-bit, increasing the digit capacity to 10 and more complicates the combination of multipliers and, consequently, complicates the tracing of the project, which can be observed in the analysis of Table A2. It is possible to avoid the use of embedded multipliers by implementing, for example, a matrix multiplier on logic cells, but this will lead to a significant increase in the hardware resources consumed. The stream frequencies that can be processed by the device exceed the operating frequencies of the proposed bit-stream symmetric architecture. In addition, the proposed design requires the device to operate for several periods corresponding to a transient to achieve the results. At the same time, the proposed architecture, realizing the tracking mode, compensates for short-term interferences and losses of single pulses and can be used for the computational processing of signals characterizing slowly changing processes.
The considered implementation can be modified in order to minimize hardware costs. Frequency multipliers built on the basis of a pair of counters can be realized on the basis of a single pair with copying of the combinational part for simultaneous multiplication by the input code and by the output code fixed in the feedback circuit.
As an example of such a tracking calculation, we can consider a temperature control implementation using a sensor with a PWM output. To process the sensor signal, the circuit can be simplified, as it is required to calculate the ratio of the duration of a single value of the input PWM signal to the duration of its zero value. In this case, instead of frequencies F1 and F2, it is enough to use one frequency, which will serve as a reference frequency.
Figure 7 shows a schematic of a multiplier-divider converter for a frequency temperature sensor controller, generating the output signal as a signal T with a constant duration of a single value and a variable duration of a zero value, e.g., [31].
This converter realizes the following function:
N = AT 1 T 2
where   T 1   and   T 2   are the durations of the one and zero values of the transducer output signal. The coefficient A is determined by the specific sensor model. Two symmetrical branches are realized in the circuit on a shared pair of counters, which are activated depending on the value of the input signal T. At T = 1, the positive branch operates and forms a pulse stream for the summing input of the reversing counter. At T = 0, the negative branch operates and generates a flux for the subtractive input of the counter. The peculiarities of the operation of such a device at the behavioral level are shown in detail in [32].
The proposed quadratic bit-stream converter with symmetric architecture realizes the operation of squaring a function whose arguments are input frequencies. Function (11) can be calculated in the traditional way by counting the pulses of streams F1 and F2 over some time and performing appropriate transformations with the obtained values. Such an implementation is shown in Appendix C. In the implementation of a simplified approach based on the determination of the number of pulses of flow F1 corresponding to the period of the signal F2. To count the pulses, the counter counter_F1_r is used, and the result of its work is written to the register reg_F1. A shift chain of flip-flop Pulse1 and Pulse2 is used for the correct cooperation of the counter and register. It forms two short pulses after the occurrence of the pulse of the stream F2. The first pulse is used to write the code from the counter to the register, and the second pulse is used to reset the counter. To form these pulses, an additional synchronization signal F_ref is introduced into the circuit; the frequency of this signal must exceed the frequency of F1. An important requirement for the implementation of such a converter is the presence of FPGA-embedded multipliers that realize the squaring. Similar to multiplier-divider circuits, the project design with a bit capacity greater than 10 bits becomes more complex, and this is reflected in the hardware cost characteristics as shown in Table A3.
Another important feature of the proposed bit-stream devices is the absence of overflow when calculating the intermediate values. All calculations are performed on the basis of increment and decrement operations realized on reversible counters. If changes in digit capacity are taken into account when performing intermediate multiplication and division, the implementation will be more complicated and hardware costs will be higher.
The considered converters, in addition to the output code (Nout), form the output signal as a frequency stream (Fout), which will ensure reliable signal transmission to the next levels of the computing system.
In summary, the proposed bitstream devices have the following advantages:
  • lower hardware costs compared to devices realizing traditional arithmetic calculations;
  • high reliability due to the use of negative feedback in devices and the presence of the dynamic equilibrium mode sought by the device;
  • absence of necessity to use PLD with embedded multipliers;
  • no overflow when performing intermediate calculations;
  • obtaining the output signal in frequency form, which is formed naturally in the process of performing calculations.

6. Conclusions

The paper presents the results of the research on the influence of symmetry in the design of bit-stream converters on their characteristics. The research is based on the concept of symmetric construction of converters, taking into account symmetries both at the level of converter structures and at the level of processes occurring in them. It is shown that the approach to design taking into account symmetry allows for more effective technical solutions.
Looking into the future, several promising directions of research can be emphasized. First, the study of the proposed converter realizations in the form of ASIC fragments. We believe that taking symmetries into account at the level of integrated circuit topologies will provide additional advantages. In addition, the extension of our research to more complex converters realizing higher-order functions will allow us to expand the application area of bit-stream devices by improving their characteristics.
The proposed symmetric devices can be used in the design of miniaturized primary converters for frequency sensors, which can be placed side by side. First of all, such controllers will be effective for sensors used to control slowly changing parameters or inertial processes, e.g., rotational speed, temperature, and pressure.

Author Contributions

Conceptualization, O.B. and N.S.; methodology, O.B.; software, S.M.; validation, S.M. and N.S.; formal analysis, O.B.; investigation, S.M.; resources, N.S.; data curation, S.M.; writing—original draft preparation, O.B.; writing—review and editing, S.M.; visualization, S.M.; supervision, N.S.; project administration, O.B.; funding acquisition, O.B. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported by the Ministry of Science and Higher Education of the Russian Federation by Agreement No. 075-15-2022-291 dated 15 April 2022 on the provision of a grant in the form of subsidies from the federal budget for the implementation of state support for the establishment and development of the world-class scientific center «Pavlov Center for Integrative Physiology for Medicine, High-Tech Healthcare, and Stress Resilience Technologies».

Conflicts of Interest

The authors declare no conflict of interest.

Appendix A. Realization of Binary Frequency Multiplier according to the Traditional Circuit

Figure A1. Eight-bit binary rate multiplier: (a) RTL diagram obtained by compiling the VerilogHDL description with the Quartus II compiler; (b) timing diagram of multiplier operation for input code D = 15; and (c) timing diagram of multiplier operation for input code D = 127, illustrating the appearance of the logic hazard.
Figure A1. Eight-bit binary rate multiplier: (a) RTL diagram obtained by compiling the VerilogHDL description with the Quartus II compiler; (b) timing diagram of multiplier operation for input code D = 15; and (c) timing diagram of multiplier operation for input code D = 127, illustrating the appearance of the logic hazard.
Symmetry 15 02006 g0a1
Table A1. Resources required for realization of the traditional binary rate multiplier and maximum clock frequencies depending on multiplier digit capacity.
Table A1. Resources required for realization of the traditional binary rate multiplier and maximum clock frequencies depending on multiplier digit capacity.
Bit Capacity8101214161820222426
Resource and Frequencies
Total logic elements16202631333942505458
Total combinational functions16202631333942505458
Logic element usage by number of LUT inputs
 -- 4 input functions691115161819202324
 -- 3 input functions3231244877
 -- ≤ 2 input functions791215151719222427
Logic elements by mode
 -- normal mode10121619192324303234
 -- arithmetic mode681012141618202224
Total registers8101214161820222426
Fmax, MHz619.5540.2542.0532.4517.6483.5461.8434.4417.8391.7

Appendix B. Realization of Multiply-Divide Operation with Bit Streams Using Traditional Arithmetic Converters

Figure A2. RTL diagram of the 8-bit multiplier-divider.
Figure A2. RTL diagram of the 8-bit multiplier-divider.
Symmetry 15 02006 g0a2
Table A2. Resources required for realization of the multiplier-divider and maximum clock frequencies depending on multiplier digit capacity.
Table A2. Resources required for realization of the multiplier-divider and maximum clock frequencies depending on multiplier digit capacity.
Bit Capacity8910
Resource and Frequencies
Total logic elements237294356
Total combinational functions236293355
Logic element usage by number of LUT inputs
 -- 4 input functions131743
 -- 3 input functions185233262
 -- ≤ 2 input functions384350
Logic elements by mode
 -- normal mode119147177
 -- arithmetic mode117146178
Total registers171921
Embedded Multiplier 9-bit elements112
Fmax (F1), MHz549.45550.36503.78
Fmax (F2), MHz549.15549.15517.6

Appendix C. Realization of the Operation of Squaring of Stream Frequencies Using Traditional Arithmetic Converters

Figure A3. RTL diagram of the 8-bit quadratic converter.
Figure A3. RTL diagram of the 8-bit quadratic converter.
Symmetry 15 02006 g0a3
Table A3. Resources required for realization of the quadratic converter and maximum clock frequencies depending on converter digit capacity.
Table A3. Resources required for realization of the quadratic converter and maximum clock frequencies depending on converter digit capacity.
Bit Capacity81012
Resource and Frequencies
Total logic elements109157212
Total combinational functions91135188
Logic element usage by number of LUT inputs
 -- 4 input functions325074
 -- 3 input functions416184
 -- ≤ 2 input functions182430
Logic elements by mode
 -- normal mode5275103
 -- arithmetic mode396085
Total registers263236
Embedded Multiplier 9-bit elements122
Fmax (F1), MHz60.4846.3336.11
Fmax (F2), MHz1135.071165.51131.2

References

  1. Lazarova-Molnar, S.; Mohamed, N. Reliability Analysis of Cyber-Physical Systems. In Simulation for Cyber-Physical Systems Engineering. Simulation Foundations, Methods and Applications; Risco Martín, J.L., Mittal, S., Ören, T., Eds.; Springer: Cham, Switzerland, 2020. [Google Scholar] [CrossRef]
  2. Ma, S.; Liao, F.; Chai, Y. Multimodal Sensory Computing. In Near-Sensor and In-Sensor Computing; Chai, Y., Liao, F., Eds.; Springer: Cham, Switzerland, 2022. [Google Scholar] [CrossRef]
  3. Montagna, F.; Mach, S.; Benatti, S.; Garofalo, A.; Ottavi, G.; Benini, L.; Rossi, D.; Tagliavini, G. A Low-Power Transprecision Floating-Point Cluster for Efficient Near-Sensor Data Analytics. IEEE Trans. Parallel Distrib. Syst. 2022, 33, 1038–1053. [Google Scholar] [CrossRef]
  4. Feichi, Z.; Yang, C. Near-sensor and in-sensor computing. Nat. Electron. 2020, 3, 664–671. [Google Scholar] [CrossRef]
  5. Yang, C. In-sensor computing for machine vision. Nature 2020, 579, 32–33. [Google Scholar] [CrossRef]
  6. Kirianaki, N.V.; Yurish, S.Y.; Shpak, N.O. Smart Sensors with Frequency output: State-of-the-art and Future Development. IFAC Proc. Vol. 2000, 33, 37–42. [Google Scholar] [CrossRef]
  7. Qaradaghi, V.; Mahdavi, M.; Kumar, V.; Pourkamali, S. Frequency output MEMS resonator on membrane pressure sensors. In Proceedings of the IEEE Sensors, Orlando, FL, USA, 30 October–3 November 2016. [Google Scholar] [CrossRef]
  8. Darwish, H.; Reig, C.; Cubells-Beltran, M.D.; Leger, G.; De Marcellis, A. CMOS Capacitance-to-Time Converter-Based Interface for Differential Capacitive Sensors. In Proceedings of the 2020 Global Congress on Electrical Engineering (GC-ElecEng), Valencia, Spain, 4–6 September 2020; pp. 61–64. [Google Scholar] [CrossRef]
  9. Singh, H.K.; Bezboruah, T. Micro-controller based frequency to digital converter for interfacing frequency output sensors. In Proceedings of the 2015 International Conference on Electronic Design, Computer Networks & Automated Verification (EDCAV), Shillong, India, 29–30 January 2015; pp. 34–37. [Google Scholar] [CrossRef]
  10. Kokolanski, Z.; Gavrovski, C.; Dimcev, V.; Makraduli, M. Simple Interface for Resistive Sensors Based on Pulse Width Modulation. Trans. Instrum. Meas. 2013, 62, 2983–2992. [Google Scholar] [CrossRef]
  11. Areekath, L.; George, B.; Reverter, F. An Auto-Balancing Capacitance-to-Pulse-Width Converter for Capacitive Sensors. IEEE Sens. J. 2021, 21, 765–775. [Google Scholar] [CrossRef]
  12. Safyannikov, N.; Bureneva, O. Bit-Stream Functional Converters for Decentralized Sensor Systems. In Proceedings of the 9th Mediterranean Conference on Embedded Computing (MECO), Budva, Montenegro, 8–11 June 2020. [Google Scholar] [CrossRef]
  13. Santos, E.J.P.; Silva, L.B.M. FPGA-based smart sensor implementation with precise frequency to digital converter for flow measurement. In Proceedings of the VI Southern Programmable Logic Conference (SPL), Ipojuca, Brazil, 24–26 March 2010. [Google Scholar] [CrossRef]
  14. Tirupathi, R.; Kar, S.K. On-Chip Implementable Autocalibration of Sensor Offset for Differential Capacitive Sensor Interfaces. IEEE Trans. Instrum. Meas. 2021, 70, 1–9. [Google Scholar] [CrossRef]
  15. Chen, D.-Y.; Dong, L.; Huang, Q.-A. PT-Symmetric LC Passive Wireless Sensing. Sensors 2023, 23, 5191. [Google Scholar] [CrossRef] [PubMed]
  16. Liu, H.; Li, S.; Wu, Z.; Li, L. Vector Coding Method for Symmetry Detection in the Analog Circuits. In Proceedings of the 2020 IEEE 14th International Conference on Anti-counterfeiting, Security, and Identification (ASID), Xiamen, China, 30 October–1 November 2020; pp. 82–86. [Google Scholar] [CrossRef]
  17. Tamba, V.K.; Ramadoss, J.; Pham, V.-T.; Grassi, G.; Almatroud, O.A.; Hussain, I. Symmetric Oscillator: Special Features, Realization, and Combination Synchronization. Symmetry 2021, 13, 2142. [Google Scholar] [CrossRef]
  18. Liu, M.; Li, W.; Zhu, K.; Xu, B.; Lin, Y.; Shen, L.; Tang, X.; Sun, N.; David, Z. PanS3DET: Detecting System Symmetry Constraints for Analog Circuits with Graph Similarity. In Proceedings of the 25th Asia and South Pacific Design Automation Conference (ASP-DAC), Beijing, China, 13–16 January 2020; pp. 193–198. [Google Scholar] [CrossRef]
  19. Bhattacharjee, P.K. Digital Combinational Circuits Design with the Help of Symmetric Functions Considering Heat Dissipation by Each QCA Gate. Int. J. Comput. Electr. Eng. 2010, 2, 666–672. [Google Scholar] [CrossRef]
  20. Tong, Z.; Zhao, Y.; Zhang, J.; Lin, Z.; Lin, X.; Wu, X. In-Memory Transposable Multibit Multiplication Based on Diagonal Symmetry Weight Block. IEEE Trans. Very Large Scale Integr. VLSI Syst. 2023, 31, 1454–1458. [Google Scholar] [CrossRef]
  21. Chen, H.; Zhu, K.; Liu, M.; Tang, X.; Sun, N.; Pan, D.Z. Universal Symmetry Constraint Extraction for Analog and Mixed-Signal Circuits with Graph Neural Networks. In Proceedings of the 58th ACM/IEEE Design Automation Conference (DAC), San Francisco, CA, USA, 5–9 December 2021; pp. 1243–1248. [Google Scholar] [CrossRef]
  22. Katebi, H.; Sakallah, K.A.; Markov, I.L. Generalized Boolean symmetries through nested partition refinement. In Proceedings of the International Conference on Computer-Aided Design (ICCAD ‘13), San Jose, CA, USA, 18–21 November 2013; pp. 763–770. [Google Scholar] [CrossRef]
  23. Dawar, A.; Wilsenach, G. Symmetric Arithmetic Circuits. In Proceedings of the 47th International Colloquium on Automata, Languages, and Programming (ICALP 2020), Online, 8–11 July 2020; Leibniz International Proceedings in Informatics. pp. 36:1–36:18. [Google Scholar] [CrossRef]
  24. Van, L.-D.; Lu, T.-C.; Chen, P.-Y.; Reddy, H.C. Type-4 2-D Diagonal and Four-Fold Rotational Symmetry Digital Filter Architectures. In Proceedings of the IEEE Asia Pacific Conference on Circuits and Systems (APCCAS), Chengdu, China, 26–30 October 2018; pp. 115–118. [Google Scholar] [CrossRef]
  25. Hari, S.K.S.; Shroff, S.; Mahammad, S.N.; Kamakoti, V. Efficient Building Blocks for Reversible Sequential Circuit Design. In Proceedings of the 49th IEEE International Midwest Symposium on Circuits and Systems, San Juan, PR, USA, 6–9 August 2006; pp. 437–441. [Google Scholar] [CrossRef]
  26. Vasantha, S. High speed binary rate multiplier. Proc. Indian Acad. Sci. Sect. A 1965, 65, 340–348. [Google Scholar] [CrossRef]
  27. Pratapa Reddy, V.C.V.; Rajappan, K.P. Decade rate multiplier. Proc. IEEE 1972, 60, 759. [Google Scholar] [CrossRef]
  28. Ninke; Ritchie. Shift Register Binary Rate Multipliers. IEEE Trans. Comput. 1977, C-26, 276–278. [Google Scholar] [CrossRef]
  29. Synchronous 6-bit Binary Rate Multipliers SN7497N. Available online: https://www.ti.com/lit/gpn/sn7497 (accessed on 23 October 2023).
  30. Bureneva, O.; Kupriyanov, M.; Safyannikov, N. Bit Streaming Processing Algorithms for Intelligent Hardware Converters. Appl. Sci. 2021, 11, 4899. [Google Scholar] [CrossRef]
  31. Serial Digital Output Thermometers. Available online: http://www.analog.com/media/en/technicaldocumentation/data-sheets/TMP03_04.pdf (accessed on 1 September 2023).
  32. Bureneva, O.; Mironov, S.; Safyannikov, N.; Sukhinets, Z. Functional Converter for Intelligent Sensor and Its Layout Design. Eng. Proc. 2023, 33, 50. [Google Scholar] [CrossRef]
Figure 1. Symmetrical binary rate multiplier: (a) schematic diagram of the multiplier; and (b) timing diagram of the three-digit multiplier operation for two input codes D = 111 and D = 101.
Figure 1. Symmetrical binary rate multiplier: (a) schematic diagram of the multiplier; and (b) timing diagram of the three-digit multiplier operation for two input codes D = 111 and D = 101.
Symmetry 15 02006 g001
Figure 2. Bit-stream multiplier-divider: (a) schematic diagram of the multiplier-divider; (b) timing diagram of the multiplier-divider operation.
Figure 2. Bit-stream multiplier-divider: (a) schematic diagram of the multiplier-divider; (b) timing diagram of the multiplier-divider operation.
Symmetry 15 02006 g002
Figure 3. Bit-stream quadratic converter: (a) schematic diagram of the converter; and (b) timing diagram of the converter operation.
Figure 3. Bit-stream quadratic converter: (a) schematic diagram of the converter; and (b) timing diagram of the converter operation.
Symmetry 15 02006 g003
Figure 4. Symmetrical 8-bit binary rate multiplier: (a) RTL diagram obtained by compiling the VerilogHDL description with the Quartus II compiler; (b) timing diagram of multiplier operation for input code D = 255; and (c) timing diagram of multiplier operation for input code D = 15.
Figure 4. Symmetrical 8-bit binary rate multiplier: (a) RTL diagram obtained by compiling the VerilogHDL description with the Quartus II compiler; (b) timing diagram of multiplier operation for input code D = 255; and (c) timing diagram of multiplier operation for input code D = 15.
Symmetry 15 02006 g004
Figure 5. Symmetric bit-stream binary multiplier-divider: (a) RTL circuit obtained from compilation of VerilogHDL description by Quartus Prime compiler; and (b) timing diagram of the multiplier operation for input code Nin = 100, PWM1/PWM2 = 1/2, F1 = F2.
Figure 5. Symmetric bit-stream binary multiplier-divider: (a) RTL circuit obtained from compilation of VerilogHDL description by Quartus Prime compiler; and (b) timing diagram of the multiplier operation for input code Nin = 100, PWM1/PWM2 = 1/2, F1 = F2.
Symmetry 15 02006 g005
Figure 6. Symmetric bit-stream quadratic converter: (a) RTL schematic resulting from compilation of Verilog description by Quartus Prime compiler, and (b) timing diagram of device operation for input signals F1 = 50 MHz, F2 = 196 KHz, k = 120.
Figure 6. Symmetric bit-stream quadratic converter: (a) RTL schematic resulting from compilation of Verilog description by Quartus Prime compiler, and (b) timing diagram of device operation for input signals F1 = 50 MHz, F2 = 196 KHz, k = 120.
Symmetry 15 02006 g006
Figure 7. Schematic diagram of a multiplier-divider converter for a frequency temperature sensor controller.
Figure 7. Schematic diagram of a multiplier-divider converter for a frequency temperature sensor controller.
Symmetry 15 02006 g007
Table 1. Resources required for realization of the binary rate multiplier and maximum clock frequencies depending on multiplier digit capacity.
Table 1. Resources required for realization of the binary rate multiplier and maximum clock frequencies depending on multiplier digit capacity.
Bit Capacity8101214161820222426
Resource and Frequencies
Total logic elements25323844515763707683
Total combinational functions25323844515763707683
Logic element usage by number of LUT inputs
 -- 4 input functions557991113131515
 -- 3 input functions6999121212151518
 -- ≤2 input functions14182226303438424650
Logic elements by mode
 -- normal mode13161820232527303235
 -- arithmetic mode12162024283236404448
Total registers16202428323640444852
Fmax (F_ref), MHz544.0458.0346.9416.4400.6412.3394.3383.2320.5346.4
Table 2. Resources required for realization of the bit-stream binary multiplier-divider and maximum frequency of the clock signal in dependence on multiplier-divider bit capacity.
Table 2. Resources required for realization of the bit-stream binary multiplier-divider and maximum frequency of the clock signal in dependence on multiplier-divider bit capacity.
Bit Capacity8101214161820222426
Resource and Frequencies
Total logic elements7088102120136152170186202220
Total combinational functions465866788898110120130142
Logic element usage by number of LUT inputs
 -- 4 input functions881619202424283232
 -- 3 input functions22302634363846485058
 -- ≤ 2 input functions16202428323640444852
Logic elements by mode
 -- normal mode27333541454955596369
 -- arithmetic mode19253137434955616773
Total registers4860728496108120132144156
Fmax (F1), MHz423.5330.5363.1470.1397.1297.2387.7361.6355.6319.4
Fmax (F2), MHz543.5524.4478.7471.2446.6404.2401.7385.8360.7368.7
Table 3. Fitter resource usage summary and maximum frequencies in the implementation of the Cyclone 10 LP FPGA-based bit-stream quadratic converter.
Table 3. Fitter resource usage summary and maximum frequencies in the implementation of the Cyclone 10 LP FPGA-based bit-stream quadratic converter.
Bit Capacity81012
Resource and Frequencies
Total logic elements103125146
Total combinational functions708497
Logic element usage by number of LUT inputs
 -- 4 input functions131214
 -- 3 input functions284047
 -- ≤ 2 input functions293236
Logic elements by mode
 -- normal mode384449
 -- arithmetic mode324048
Total registers7389105
Fmax (Dff), MHz118.57167.73162.13
Fmax (F1), MHz132.56159.64155.67
Fmax (Pll), MHz225.6346.74326.26
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Bureneva, O.; Safyannikov, N.; Mironov, S. Symmetry in the Bit-Stream Converter Design. Symmetry 2023, 15, 2006. https://doi.org/10.3390/sym15112006

AMA Style

Bureneva O, Safyannikov N, Mironov S. Symmetry in the Bit-Stream Converter Design. Symmetry. 2023; 15(11):2006. https://doi.org/10.3390/sym15112006

Chicago/Turabian Style

Bureneva, Olga, Nikolay Safyannikov, and Sergey Mironov. 2023. "Symmetry in the Bit-Stream Converter Design" Symmetry 15, no. 11: 2006. https://doi.org/10.3390/sym15112006

APA Style

Bureneva, O., Safyannikov, N., & Mironov, S. (2023). Symmetry in the Bit-Stream Converter Design. Symmetry, 15(11), 2006. https://doi.org/10.3390/sym15112006

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop