<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Stochastic Process on 四方喫茶舘</title><link>http://blog.cedard.top/tags/stochastic-process/</link><description>Recent content in Stochastic Process on 四方喫茶舘</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Mon, 13 Apr 2026 21:42:59 +0800</lastBuildDate><atom:link href="http://blog.cedard.top/tags/stochastic-process/index.xml" rel="self" type="application/rss+xml"/><item><title>Poisson Point Process (PPP) and Bit Error Rate (BER)</title><link>http://blog.cedard.top/p/poisson-process/</link><pubDate>Mon, 13 Apr 2026 21:42:59 +0800</pubDate><guid>http://blog.cedard.top/p/poisson-process/</guid><description>&lt;p&gt;I realize when I&amp;rsquo;m sharing my knowledge with my colleagues, they are largely not Chinese users. Therefore I&amp;rsquo;ll try to mark tech-related things down in English starting from today, in my blog.&lt;/p&gt;
&lt;h2 id="introduction"&gt;Introduction
&lt;/h2&gt;&lt;p&gt;I was taking &lt;a class="link" href="https://undergraduate.catalog.berkeley.edu/courses/1220251" target="_blank" rel="noopener"
 &gt;STAT150&lt;/a&gt; last semester from UC Berkeley. Although the teaching wasn&amp;rsquo;t as engaging as I wished for, I was able to grasp most of the useful key concepts. One of the very useful mathematical models was the Poisson point process.&lt;/p&gt;
&lt;p&gt;I encountered this process once again when I was doing my link measurement, when we were supposed to benchmark the chip&amp;rsquo;s bit error rate.&lt;/p&gt;
&lt;p&gt;Here are two questions that arise from this:&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;ol&gt;
&lt;li&gt;If a link has a bit error rate of $10^{-15}$, what does this mean?
&lt;ul&gt;
&lt;li&gt;Does this mean that if I send $10^{15}$ bits, I&amp;rsquo;m likely to see 1 error, or I&amp;rsquo;m likely to see some error?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;If I were to benchmark a link&amp;rsquo;s performance, how many bits should I send in order to confidently say that the link has a BER less than $10^{-15}$?
&lt;ul&gt;
&lt;li&gt;Does sending $10^{15}$ bits and observing no error suffice?&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ol&gt;

 &lt;/blockquote&gt;
&lt;p&gt;Without giving direct answers to both questions, let&amp;rsquo;s review some fundamentals.&lt;/p&gt;
&lt;h2 id="poisson-distribution"&gt;Poisson Distribution
&lt;/h2&gt;&lt;p&gt;We give the formal definition of a 1D Poisson distribution here.&lt;/p&gt;

 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;Definition (Poisson Distribution):&lt;/strong&gt;
A random variable $X$ follows a Poisson distribution with parameter $\lambda &amp;gt; 0$, denoted $X \sim \text{Poisson}(\lambda)$, if its probability mass function (PMF) is given by:&lt;/p&gt;
$$
&gt; \begin{align}
&gt; P(X = k) = \frac{\lambda^k e^{-\lambda}}{k!}, \quad k = 0, 1, 2, \ldots
&gt; \end{align}
&gt; $$&lt;p&gt;where $k!$ denotes the factorial of $k$.&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Key Properties:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The mean and variance of a Poisson distribution are both equal to the parameter $\lambda$:&lt;/p&gt;
$$
\begin{align}
E[X] &amp;= \lambda \\
\text{Var}(X) &amp;= \lambda
\end{align}
$$&lt;p&gt;&lt;strong&gt;Intuitive Interpretation:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The Poisson distribution models the number of events occurring in a fixed interval of time or space, given that events occur independently at a constant average rate. The parameter $\lambda$ represents the expected number of events in that interval.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Common Applications:&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Number of arrivals in a queue during a time period&lt;/li&gt;
&lt;li&gt;Number of photons detected by a sensor in a fixed duration&lt;/li&gt;
&lt;li&gt;Number of errors in a data transmission over a fixed number of bits&lt;/li&gt;
&lt;li&gt;Number of radioactive decays in a given time window&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="poisson-point-process"&gt;Poisson Point Process
&lt;/h2&gt;
 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;Definition (Poisson Point Process):&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;A Poisson point process (PPP) with rate (or intensity) $\lambda &amp;gt; 0$ is a stochastic process ${N(t) : t \geq 0}$ that counts the number of events occurring in the time interval $[0, t]$. It satisfies the following properties:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Independent Increments:&lt;/strong&gt; For any non-overlapping intervals $[t_1, t_2)$ and $[t_3, t_4)$ with $t_2 \leq t_3$, the number of events in these intervals are independent random variables.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Stationary Increments:&lt;/strong&gt; The distribution of the number of events in any interval depends only on the length of that interval, not on its starting time. Specifically, for any $t &amp;gt; 0$ and $s \geq 0$:
&lt;/p&gt;
$$
&gt; \begin{align}
&gt; N(s + t) - N(s) \sim \text{Poisson}(\lambda t)
&gt; \end{align}
&gt; $$&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;No Multiple Events:&lt;/strong&gt; The probability of more than one event occurring in an infinitesimal time interval $dt$ is negligible, i.e., $o(dt)$.&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Initial Condition:&lt;/strong&gt; $N(0) = 0$.&lt;/p&gt;
&lt;/li&gt;
&lt;/ol&gt;

 &lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Counting Process Characterization:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;For a Poisson point process with rate $\lambda$, the number of events $N(t)$ in a time interval $[0, t]$ follows a Poisson distribution:&lt;/p&gt;
$$
\begin{align}
P(N(t) = k) = \frac{(\lambda t)^k e^{-\lambda t}}{k!}, \quad k = 0, 1, 2, \ldots
\end{align}
$$&lt;p&gt;The expected number of events in time $t$ is:&lt;/p&gt;
$$
\begin{align}
E[N(t)] = \lambda t
\end{align}
$$&lt;p&gt;&lt;strong&gt;Inter-arrival Times:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;An important consequence of the Poisson point process is that the time intervals between consecutive events (inter-arrival times) are independent and exponentially distributed with rate $\lambda$. If $T_i$ denotes the time until the $i$-th event, then:&lt;/p&gt;
$$
\begin{align}
T_i \sim \text{Exponential}(\lambda), \quad f(t) = \lambda e^{-\lambda t}, \quad t \geq 0
\end{align}
$$&lt;p&gt;&lt;strong&gt;Condition on Event Count:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If we know $N(t) = k$, the positions of the $k$ events in the interval $[0, t]$ are distributed as independent and uniformly on $[0, t]$.&lt;/p&gt;
&lt;h2 id="how-does-this-relate-to-bit-error-rate"&gt;How does this relate to bit error rate?
&lt;/h2&gt;&lt;p&gt;If we operate a link, whether it will yield an error depends on whether the random jitter exceeds the eye width, thus we sample the incorrect data. Random jitter, however, follows a Gaussian distribution. If we assume the clock is centered at the quadrature point, and the eye width happens to be $6\sigma$, then we immediately arrive at the conclusion that the probability of success is $99.6%$. Given the clock is usually from a PLL whose jitter profile is a stationary process (after observing longer than the loop constant), we can safely say between symbols, the error probability is independent. Of course this is a very crude assumption because factors such as inter-symbol interference from a low-pass channel are not taken into account, but for simplicity let&amp;rsquo;s move forward with this assumption.&lt;/p&gt;
&lt;p&gt;A quick note is that an open loop oscillator&amp;rsquo;s jitter sequence is not a stationary process; it&amp;rsquo;s a random walk. Meaning if we observe long enough, the oscillator&amp;rsquo;s phase deviation will grow unbounded. In the time domain, the jitter is just the instantaneous standard deviation, which grows over time.&lt;/p&gt;
&lt;p&gt;&lt;img alt="Jitter Accumulation" class="gallery-image" data-flex-basis="306px" data-flex-grow="127" height="199" loading="lazy" sizes="(max-width: 767px) calc(100vw - 30px), (max-width: 1023px) 700px, (max-width: 1279px) 950px, 1232px" src="http://blog.cedard.top/p/poisson-process/math20260413221200.png" width="254"&gt;&lt;/p&gt;
&lt;p&gt;Now, if we observe 10 such samples, each of them has independent success probability of $99.6%$, it shouldn&amp;rsquo;t be hard to see that the probability of all 10 samples being successful is $(0.996)^{10}$. The probability of having 1 error will be if one of them is having an error, and all others are successful. To extend this result, the error profile should follow a binomial distribution:&lt;/p&gt;
$$
\begin{align}
\text{Error} \sim \text{Bin}(N, p)
\end{align}
$$&lt;p&gt;where $N$ is the number of bits sent, and $p$ is the probability of error for each bit.&lt;/p&gt;
&lt;p&gt;This whole story now sounds like we are flipping an uneven coin every single time, and the total error count follows a binomial distribution. How does this relate to Poisson process?&lt;/p&gt;
&lt;h2 id="law-of-rare-events"&gt;Law of Rare Events
&lt;/h2&gt;
 &lt;blockquote&gt;
 &lt;p&gt;&lt;strong&gt;Theorem (Law of Rare Events, Poisson Limit Theorem):&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Let $X_n \sim \text{Bin}(n, p_n)$ be a sequence of binomial random variables where $n \to \infty$ and $p_n \to 0$ such that $n \cdot p_n \to \lambda$ for some constant $\lambda &amp;gt; 0$. Then:&lt;/p&gt;
$$
&gt; \begin{align}
&gt; \lim_{n \to \infty} P(X_n = k) = \frac{\lambda^k e^{-\lambda}}{k!}, \quad k = 0, 1, 2, \ldots
&gt; \end{align}
&gt; $$&lt;p&gt;In other words, $X_n \xrightarrow{d} X$ where $X \sim \text{Poisson}(\lambda)$.&lt;/p&gt;

 &lt;/blockquote&gt;
&lt;p&gt;&lt;strong&gt;Intuitive Explanation:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;The Law of Rare Events states that when we have a large number of independent trials, each with a very small probability of success, the number of successes approximately follows a Poisson distribution. The key condition is that the product $n \cdot p$ (the expected number of events) remains constant as $n$ increases and $p$ decreases.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Practical Implications for Bit Error Rate:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;In our BER context:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;$N$ is very large (number of bits transmitted)&lt;/li&gt;
&lt;li&gt;$p$ is very small (bit error probability, e.g., $10^{-15}$)&lt;/li&gt;
&lt;li&gt;The product $\lambda = N \cdot p$ is the expected number of bit errors&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;strong&gt;Why This Matters:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Computing probabilities with a binomial distribution requires calculating factorials and large powers, which is computationally expensive. The Poisson approximation provides:&lt;/p&gt;
$$
\begin{align}
P(\text{Error count} = k) \approx \frac{(Np)^k e^{-Np}}{k!}
\end{align}
$$&lt;p&gt;This is much simpler to work with, especially for answering our original questions about BER testing.&lt;/p&gt;
&lt;h2 id="to-answer-the-two-ber-related-questions"&gt;To Answer the Two BER-Related Questions
&lt;/h2&gt;&lt;p&gt;Now, let&amp;rsquo;s answer the two questions we had from the beginning.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Question 1: If a link has BER = $10^{-15}$, what does this mean?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This means that, on average, we expect 1 error for every $10^{15}$ bits transmitted. In other words, the probability of any single bit being in error is $10^{-15}$. However, it&amp;rsquo;s totally possible that we receive 0 errors, 2 errors, 3 errors, and if you get super unlucky, all your received bits are erroneous, but this is super, super, super, super unlikely, although the probability is not zero.&lt;/p&gt;
&lt;p&gt;We use the following table to illustrate the probabilities of different error counts when we send exactly $10^{15}$ bits with BER = $10^{-15}$:&lt;/p&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;Error Count $k$&lt;/th&gt;
					&lt;th&gt;$P(\text{Error} = k)$&lt;/th&gt;
					&lt;th&gt;Cumulative Probability&lt;/th&gt;
					&lt;th&gt;Notes&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;0&lt;/td&gt;
					&lt;td&gt;$e^{-1} \approx 0.3679$&lt;/td&gt;
					&lt;td&gt;36.79%&lt;/td&gt;
					&lt;td&gt;No errors observed&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;1&lt;/td&gt;
					&lt;td&gt;$e^{-1} \approx 0.3679$&lt;/td&gt;
					&lt;td&gt;73.58%&lt;/td&gt;
					&lt;td&gt;Exactly 1 error&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;2&lt;/td&gt;
					&lt;td&gt;$\frac{1}{2}e^{-1} \approx 0.1839$&lt;/td&gt;
					&lt;td&gt;89.97%&lt;/td&gt;
					&lt;td&gt;Exactly 2 errors&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;3&lt;/td&gt;
					&lt;td&gt;$\frac{1}{6}e^{-1} \approx 0.0613$&lt;/td&gt;
					&lt;td&gt;96.10%&lt;/td&gt;
					&lt;td&gt;Exactly 3 errors&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;4&lt;/td&gt;
					&lt;td&gt;$\frac{1}{24}e^{-1} \approx 0.0153$&lt;/td&gt;
					&lt;td&gt;98.63%&lt;/td&gt;
					&lt;td&gt;Exactly 4 errors&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;5&lt;/td&gt;
					&lt;td&gt;$\frac{1}{120}e^{-1} \approx 0.0031$&lt;/td&gt;
					&lt;td&gt;99.94%&lt;/td&gt;
					&lt;td&gt;Exactly 5 errors&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;$\geq 6$&lt;/td&gt;
					&lt;td&gt;$\approx 0.0006$&lt;/td&gt;
					&lt;td&gt;$\geq 99.94%$&lt;/td&gt;
					&lt;td&gt;6 or more errors&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Interpretation:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;With $\lambda = 10^{15} \times 10^{-15} = 1$, the error count follows a Poisson distribution with parameter $\lambda = 1$. The table reveals several surprising facts:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Zero errors are most likely:&lt;/strong&gt; There&amp;rsquo;s a 36.79% chance of observing no errors at all!&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;One error is equally likely:&lt;/strong&gt; One error is also expected with 36.79% probability.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Multiple errors are possible:&lt;/strong&gt; There&amp;rsquo;s a 27.4% chance of observing 2 or more errors.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;This directly answers your first question: sending $10^{15}$ bits with BER $10^{-15}$ &lt;strong&gt;does NOT guarantee&lt;/strong&gt; you&amp;rsquo;ll see exactly 1 error. You&amp;rsquo;re actually more likely to see either 0 or 1 error, with roughly equal probability.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Question 2: How many bits should I send to confidently establish BER &amp;lt; $10^{-15}$?&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;This is more complex and requires statistical hypothesis testing. However, we can provide some intuition using the Poisson model.&lt;/p&gt;
&lt;p&gt;If we observe 0 errors after sending $N$ bits, what can we claim about the BER? Using the Poisson approximation with $\lambda = N \cdot p$:&lt;/p&gt;
$$
\begin{align}
P(\text{0 errors observed} \mid \text{true BER} = p) = e^{-Np}
\end{align}
$$&lt;p&gt;Now, here comes a concept called &amp;ldquo;confidence level.&amp;rdquo; Confidence level means the probability of getting ourselves right. For example, if we want to confirm our bit error rate is &amp;lt;1e-15, but we only send 10 bits and see 0 errors, the confidence that I can safely say my bit error rate is &amp;lt;1e-15 is very low. However if I send 1e27 bits and I see 0 error so far, I can very confidently say that the link has BER &amp;lt;1e-15.&lt;/p&gt;
&lt;p&gt;Then, how do we set our confidence level? What does this mean intuitively? Let&amp;rsquo;s take it the contrapositive way:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;If I know my bit error rate = 1e-15, that means if I send 3e15 bits, it&amp;rsquo;s 95% probable that I&amp;rsquo;ll see at least 1 error.&lt;/li&gt;
&lt;li&gt;The contrapositive of the above statement is that, if I observe 0 errors after sending 3e15 bits, I can be 95% confident that the true BER is less than 1e-15.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;The math is shown below:&lt;/p&gt;
$$
\begin{align}
e^{-Np} &amp;= 0.05 \\
-Np &amp;= \ln(0.05) \\
Np &amp;\approx 2.996 \approx 3
\end{align}
$$&lt;p&gt;This means to claim BER &amp;lt; $10^{-15}$ with 95% confidence after observing zero errors, we need:&lt;/p&gt;
$$
\begin{align}
N \cdot 10^{-15} &amp;= 3 \\
N &amp;= 3 \times 10^{15}
\end{align}
$$&lt;p&gt;&lt;strong&gt;So the answer to Question 2 is: No, sending $10^{15}$ bits and observing no error does NOT suffice.&lt;/strong&gt; You would need to send approximately $3 \times 10^{15}$ bits to claim with 95% confidence that the BER is less than $10^{-15}$.&lt;/p&gt;
&lt;h2 id="beyond-raw-ber-testing"&gt;Beyond Raw BER testing
&lt;/h2&gt;&lt;p&gt;SiTime has this useful &lt;a class="link" href="https://www.sitime.com/support/design-development-tools/ber-confidence-level-calculator" target="_blank" rel="noopener"
 &gt;webpage&lt;/a&gt; to calculate the experiment time based on the required confidence level and desired accuracy.&lt;/p&gt;
&lt;p&gt;In real practice, sending 1e27 bits is usually not physically possible. Take a 256Gbps parallel link for example, 1e27 bits testing will take 3.9e15 seconds, meaning 1e12 hours, meaning 123 million years to complete. I am not sure if human civilization will still exist by then. Therefore instead, people assume a jitter profile (DJ+RJ), for example dual dirac + Gaussian, and use only RJ component to estimate the true bit error rate. This is also known as the bathtub method.&lt;/p&gt;</description></item></channel></rss>