http://ijece.iaescore.com Design and implementation of silicon single-photon avalanche photodiode modeling tool for QKD

Info 2021 Single-photon detection concept is the most crucial factor that determines the performance of quantum key distribution (QKD) systems. In this paper, a simulator with time domain visualizers and configurable parameters using continuous time simulation approach is presented for modeling and investigating the performance of single-photon detectors operating in Gieger mode at the wavelength of 830 nm. The widely used C30921S silicon avalanche photodiode was modeled in terms of avalanche pulse, the effect of experiment conditions such as excess voltage, temperature and average photon number on the photon detection efficiency, dark count rate and afterpulse probability. This work shows a general repeatable modeling process for significant performance evaluation. The most remarkable result emerged from the simulated data generated and detected by commercial devices is that the modeling process provides guidance for single-photon detectors design and characterization. The validation and testing results of the single-photon avalanche detectors (SPAD) simulator showed acceptable results with the theoretical and experimental results reported in related references and the device's data


THE DEVICE THEROTICAL MODEL
In this work, the basic circuit model for SPAD which is presented by Mora et al. [9], Cova et al. [13] and He et al. [14] has been utilized. While, the physical model established by Kang [15] which relates the dark count probability (DCP) to the single-photon detection efficiency (SPDE) will be presented and used to understand the basic SPAD operation principles and the parameters that are useful to achieve high (SPDE) with low DCP.

Circuit principles for SPAD operation in the Geiger mode
SPADs are class of semiconductor devices based on a p-n junction reverse biased above breakdown voltage ( ) by the excess voltage ( ) resulting in large electric field in the depletion region. This makes SPAD's suitable for photon counting in the Geiger mode. In this mode, a single-photon can generate an avalanche current pulse in the mA range which leads to discharge the SPAD from its reverse voltage to a voltage less than [6], [13], [14]. The external quenching circuit reduces the bias voltage ( ) to a value lower than which leads to quenching the avalanche with quenching time constant ( ) [9], [13], where Cj is the junction capacitance, Cs is the stray capacitance and Rd is the diode resistance. The simplest quenching circuit that has been used in this work is called passive quenching circuit which is reported for C30921S [9], [13] as shown in Figure 1.  Figure 1. SPAD passive quenching circuit [13] The quenching circuit consists of high value quenching load resistor in series with the cathode of SPAD.
will stop the self-sustaining avalanche current. The avalanche current discharges the total capacitance made up by the sum of and and induces the voltage drop over . The operation cycle is completed by the reset of the excess voltage to its initial value when the capacitance recharge to with recovery time constant given by [9], [13].
So, the output of the detector is a current pulse with constant peak value given by [16], where ( − ) is the excess voltage above the breakdown voltage. The leading edge of the output pulse indicates the arrival time of the photon. The detector is insensitive to any photons arriving in the time between the start of the avalanche and the voltage biasing reset. This period is called the dead time ( ) of SPAD which is approximately equal to the 0.5 [13], [17].

Performance parameters
SPADs operating in Geiger mode are characterized by number of basic performance parameters. SPAD is the probability that an incident photon triggers an avalanche (true detection). On the other hand, DCR is the number of avalanches per unit time that occur in the absence of the incident photons (false detection). While the physical phenomena specific to the photon counting devices can generate additional dark counts correlated to the occurrence of previous avalanche pulses, called afterpulses [18], [19].
where  is the SPDE,  is the quantum efficiency and is the avalanche triggering probability which has a direct relation to the .
can be defined as the probability that a primary e-h pair initiates a selfsustaining avalanche process which can be approximated by the [20], where the characteristic voltage depends on the depletion layer thickness and on the weighted average of the ratio of the ionization coefficient of electrons to that of holes [20].On the other hand  depends upon the photodetector structure and the presence of a properly designed antireflection coating [20]. It can be defined by [22], where is the absorption efficiency of the photodetector, is the transit probability which depends on the material of the absorption region and the device architecture.

Dark count probability
Dark count is due to carriers thermally generated within the SPAD junction. DCP increases with temperature with Poissionian fluctuations acting as internal noise source of the detector. Furthermore, DCP also increases with due to avalanche triggering probability which also increases the detection efficiency but at the expense of the field enhancement of the carrier generation rate [16], [21]. Dark counts include primary and secondary pulses. The number of primary dark pulses due to thermally generated carriers within the SPAD junction can be represented by [15], [23], where is the primary dark current,  is the gate pulse width, and is the charge of an electron. The second source for primary dark carriers is through a series of impact ionization with an average DC gain ( ). Such dark carriers' number can be defined as [15], [23], where is the effective transit time. In contrast, a secondary dark pulses can be generated by afterpulsing effect when few carriers might be trapped from deep levels located at intermediate energies between mid-gap and band edge during each avalanche pulse and subsequently released. These released carriers can trigger the avalanche, thereby generating afterpulses correlated in time to the original avalanche triggered by the photon [20]. The number of these released dark carriers may be written as [15], [23], where  is the reciprocal of the pulse repetition rate (PRR),  is the detrap time constant. Secondary dark carriers can also be generated because the released carriers from the traps before the voltage pulse are probable to stay in the multiplication region when voltage pulse arrives. Thus, the contribution of this type can be written as [15], [23], By adding these dark counts sources, the total number of dark carriers per pulse can be defined as [15], [22], where GB is the gain-bandwidth product of the SPAD and is the average number of carriers trapped after a current pulse. Accordingly, SPDE can be calculated as, [15], [22], where ℎ the probability of weather an incident optical pulse is contains any photons or not which can be given by 1-(− ) with being the average number of incident photons per pulse. is the probability of a current pulse be generated due to photon or dark carrier when the source is ON. It is given by [15], [22], It is important to mention that the approach used to simulate DCP and depends upon the fixed point iteration method to numerically solve these terms as they appear in both sides of (11) and (13). In addition, the avalanche probability was used as a variable parameter to simulate both DCP and SPDE.

THE DEVICE CONCEPTUAL MODEL
SPAD is an optical-electrical component with one input port and one output port as shown in the corresponding conceptual model of Figure 2. From the conceptual model diagram, the attenuated coherent optical pulses are generated via modeled pulsed laser source which consists of two parts, binary pseudo random sequence (BPRS) generation unit and laser device. The modeled BPRS unit generates a binary nonreturn-to-zero (NRZ) sequence of N bits with defined pulse repetition rate. Based on the input from BPRS unit, the laser source generates Gaussian optical pulse trains with peak optical power ( ) in the range of (pW) with (ns) pulse duration with the possibility to support different optical wavelengths (). Each pulse is generated with known shape, intensity, polarization, period, and global phase. To simulate the coherent optical pulse used in this work, the model proposed by Hodson [1], [24] is used. The approximation function of coherent optical pulse has the following form; Figure 2. SPAD's conceptual model where |g (t)| represents the optical pulse Gaussian shape, where is the pulse maximum electric field, is the phase offset of the pulse, is the angle of the vector with respect to the axis, is the relative phase between the and components of the electric field and is the angular frequency.
The attenuated coherent optical pulses via the modeled optical power attenuator (PA) are sent to the modeled SPAD to simulate the detection of incoming optical pulses, dark counts including after pulses taking into account the influence of the temperature and on these performance parameters. In this model, Perkin Elmer type C30921S silicon avalanche photodiode is chosen because of its widespread use in the QKD systems. This SPAD type has high quantum efficiency equal to 77% at 830 nm. It can be operated in Geiger mode with to 50% with low DCR equal to 350 /second at -25 °C as mentioned in its commercial data sheet. The simulation of this unit starts with the generation of random in time and amplitude dark pulses with a rate depending on the value of , temperature provided by the user. Then the simulation of avalanche pulses caused by correct detection of incoming laser pulses in accordance with the detection efficiency is tested. The following parameters were considered as inputs to the simulation model, optical pulse time profile with linear polarization as defined in (14) with , transmitted optical  in (nm), the orientation of the incoming optical pulse, the attenuation level in (dB) which is based on the required set up by the user,  , , temperature.

THE STRUCTURED FLOW OF THE MODELING PROCESS AND THE METHOD USED
The purpose of SPAD modeling is to efficiently relate the system practical considerations, software design with the theoretical fundamentals such as the optical pulse generation and transmission, the optical pulse properties, the operation principles of the optical components and the system environment conditions such as the temperature. The SPAD simulator modeling process involves set of actions. The representation of these actions is known as the software development model as shown in-tier architecture in Figure 3. In this section, the structuring flow of the software development model that has been utilized to implement this simulation tool will be explained in addition to the method used in this research work.
In general, there are four actions required to implement any programming model. Firstly, the model specifications must be characterized, the model design should suit the user prerequisites, the designed model must be verified and tested and finally, the implemented model must be flexible and possible to be developed [25]- [27]. Each stage will be explained as follows:

Input port
Output port Single-photon avalanche detector  Figure 3. SPAD simulator software development model

User needs analysis
In this stage, the user prerequisites that the designed SPAD simulator can achieve are analyzed. The simulator requirements focused on successfully simulate the avalanche operation of SPAD and to investigate the interplay between the operation conditions with , dark and afterpulsing counts.

Model specifications
In this stage, the inputs provided from the simulator users with the expected outcomes will be defined. Table 1 represents the simulator specifications as inputs and outputs.

Model design
The SPAD simulator is implemented using MATLAB as it provides the essential built in math functions in addition to the programing basics that are found in the main programing languages. MATLAB as a simulation environment is an interpreted language and, therefore, may execute tasks more slowly than compiled programming language. According to this stage, the previous two stages are related to the hardware components for the simulator final design. In this work, the modular and hierarchical approaches were used as architecture for the simulator. Using this approach, the user will be flexible enough to build different implementation scenarios and the model developer will easily modify and extend the model. Figure 4 shows the designed model layers that consist of three layers each with a specific objective. The outer layer represents the application field selected by the user. In this work, only QKD system was demonstrated. The middle layer represents the main simulation operation phases that involve the optical signal generation and detection. These steps were built using various modules which consists of different integrated physical modeled components. For example, the optical signal preparation and generation phases can be conducted using the transmitter module which consists of BPRS, pulsed laser source and PA. The last layer is established using different physical electrical and optical components. This layer is considered as the construction of the modules at layer 2. The continuous time domain simulation approach that was utilized in this work was time and computation consuming approach because hundreds of optical pulses will be generated and transmitted through the system's components.

Model verification and validation process
The credibility of the SPAD's simulation model and their results are verified using the known verification and validation steps. The approach that has been used for model verification was by running the model under different conditions by applying inputs and checking the outcomes [25]- [27]. The recorded results will show how the model is programmed in a sufficient and correct way by determining the response of the model to the input parameters. In this research, MATLAB compiler was used to prove the model verification by testing the code as recommended by Sargent [25], and Balci [26].
With respect to the validation technique, the approach that was applied on the mathematical models as recommended by Sargent [25] was established by the help of the specialized references and publications in the field, commercial data sheets of C30921S silicon avalanche photodiode to define the allowed input and output limits in addition to the desired specifications to prove that the postulates and the theoretical concepts on which mathematical models are based were correct.
The last step in the validation process that was applied in this research was to test the operational validity of the modeled SPAD component. The validation of the component operation as defined by Sargent is determined by whether the simulation model's output behavior has the accuracy required for the model's intended purpose over the domain of the model's intended applicability [25]. Thus, the method that was followed was by comparing the modeled SPAD output behavior to both the output of real SPAD's device and to the known results of analytic models as recommended by Sargent [25], and Balci [26]. As the modeling results match the valid models results, the validation will be increased and thus the reliability in the modeled component and its results will be increased too. The simulated SPAD model results that belongs to the avalanche pulse analysis are compared to the results acquired on a commercial C30921S silicon avalanche photodiode. While, the simulated SPAD performance parameters results are compared to the valid simulation models presented in [15], [22]. In general, the validation of modeled SPAD modeling tool was proved via sequence of test cases under different operation conditions and with different input parameters as will be presented. The method for the modeling process that was followed over the project for each modeled components and modules is similar as shown in Figure 5.

RESULTS AND DISCUSSION
In this section, the avalanche pulse analysis and the simulator implementation and testing to evaluate the whole SPAD performance will be presented.

The avalanche output pulse
In order to correctly model the SPAD's avalanche pulse which is considered the most critical issue within this simulator for simulating the SPAD detection process, the passive quenching circuit assumed for the SPAD model, =200 k is connected in series with the photodetector and =200 . In order to simulate the avalanche current pulse on , it is important to consider the internal stray and junction capacitors to accurately determine and of the output pulse. and are assumed to be 1pf and 3pf respectively as recommended by [9,13]. To study the effect of on the output current amplitude and then on , Figure 6(a) represents the output pulse with different values. As increases, output current tends to be low with long quenching time constant which as a result limits the quenching speed and hence reduce the count rate. It can be seen from this figure that the is not fixed and can be varied according to the value of which change and . Figure 6(b) shows the impact of increasing on the SPAD output current. As increases, the probability to trigger an avalanche increases too which as a result leads to an increase in the output peak current. To check the correctness of the simulated avalanche SPAD current signal for validation purpose, it will be compared to the real avalanche pulse generated by C30921S silicon avalanche photodiode presented in Figure 7 in terms of overall pulse waveform, rise and fall time and as shown in Table 2.

Simulator testing
This section describes the SPAD simulator in addition to the testing cases to prove the simulator capability for SPAD behavior verification by comparisons of the simulator results with the mathematical models based data. The simulator can support wide spectral range starting from 500 nm up to 1000 nm which represents the allowable spectral range for C30921S. In addition, the user can change , 0 and temperature at the same time to investigate the overall SPAD performance parameters: SPDE, DCP and . Depending on the user inputs, the simulator will plot the resultant SPAD avalanche pulses in accordance with the incoming optical laser pulses taking into consideration the SPDE to decide if the pulse is detected or not as well as DCP and . Four tests were applied to verify the simulator capabilities to simulate the SPAD operation and to prove its operation validity. The results are presented for 0 =0.2. For the main GUI, the plotter to the left represents the incoming laser pulses with defined PRR and 0 . The plotter to the right illustrates the output avalanche pulses comprising the true photon detection and false avalanche detections due to dark and afterpulse detections.
Test 1: is set to 2 V and the temperature is set to -30 ℃. According to these inputs, the calculated SPDE was 9%. Therefore, the expected detected optical pulses were 3 pulses out of 25 incoming laser pulses. Figure 8 illustrates that there are 3 true photon detection pulses in red which are equal to the expected detected pulses. Pulses in turquoise represent the output avalanche detections due to thermal effects with the number equal to the calculated DCP which is 0.0023. On the other hand, pulses in black illustrate the false detections due to afterpulse effect contribution with the number equal to the calculated which is 0.0019. is set to 2 V and the temperature is increased and set to -20 ℃ as shown in Figure 9. In this test the impact of the temperature on the will be studied. As expected, the true photon detections were 3 pulses accordance to the registered . is increased to 0.0024 in comparison to the previous test as the temperature increases.
does not change with temperature, it depends on which has the same value as in Test 1. Test 3: is set to 10 V and the temperature is set to -30 ℃. In this test the effect of increasing on the SPDE, DCP and and on the avalanche pulses amplitude will be presented. Figure 10 shows the simulator results for these input values. SPDE is increased to 36% as increased. The expected number of true photon detections is equal 9 pulses. The simulator result is equal to the expected result (i.e., 9 pulses). DCP and increased to 0.0059 and 0.0052 respectively as increases due to the enhancement of the avalanche process probability which means an increase in the SPDE. The amplitude of true detection, dark and afterpulse increase as shown in the plotter. is set to 10 V and the temperature is set to 22 ℃. This test is to investigate the effect of the temperature on the SPAD performance with an increase in . Figure 11 illustrates how the SPAD performance will be affected with temperature by the increase in the thermally generated pulses. DCP is increased to 0.0602 while still has the same value as the effect of the temperature on is not included in these tests. The calculated number of true photon detections is equal 8 pulses which is approximately equal to the expected number. To check the correctness of the SPAD performance simulation results, it will be compared to the results reported in [15,22] in terms of DCP and contribution percentage to the total dark counts as a function of at different , temperatures and PRR as shown in Tables 3 and 4. Due to the difference in the measurement conditions that have been used in this work such as , , and  that were extracted from C30921S data sheet compared to the values reported in [15], [22], the SPAD simulator results are slightly different with the results presented in the analytical simulation models. Furthermore, DCP, and SPDE that were calculated by fixed point iteration method and hence the expected results have approximated values due to iterative inaccuracy. In addition, the main target of this modeling effort is to examine the functionality and the performance of the SPAD behavior under different operation conditions. This work is only an approximation of the ideal apparatus described in theory because it is impossible to build the ideal system with all related parameters. Thus, it is possible to say that the presented results accuracy is within the reasonable range which is the amount of accuracy required for the model's intended purpose.

CONCLUSION
A simulation model for SPAD's has been proposed to study the parameters and characteristics of SPAD operating in Geiger mode used to detect low level optical signals taking into account SPDE, dark counts rate, τ_d and afterpulsing. Furthermore, the simulator parameters values are configurable so it can be utilized for different scenarios of operations. It is possible to conclude that the simulation paradigm that has been used within this work is efficient to describe the modeled system components details but at the same time it is processing time and resources consuming. Thus, the recommended modeling environment for modeling such a system is to use an approach that deals with the simulation operations as synchronized discrete events organized in a logical form. The reliability of the model was verified and validated by comparing its results to the measurements of the C30921S silicon avalanche photodiode from Perkin Elmer and with the validated theoretical models. For further development of this work, the simulator model performance can be developed by using discrete event approach supported by more general programming languages such as C++ to increase the simulator reality, studying the effects of laser source parameters that affect the system performance like line width and finally, trying to embed this SPAD model within a general QKD modeling tool as a detection unit.