<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Comput. Neurosci.</journal-id>
<journal-title>Frontiers in Computational Neuroscience</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Comput. Neurosci.</abbrev-journal-title>
<issn pub-type="epub">1662-5188</issn>
<publisher>
<publisher-name>Frontiers Research Foundation</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fncom.2012.00006</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Computational Neuroscience</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Modeling the Nucleus Laminaris of the Barn Owl: Achieving 20&#x02009;ps Resolution on a 85-MHz-Clocked Digital Device</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author">
<name><surname>Salomon</surname> <given-names>Ralf</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
</contrib>
<contrib contrib-type="author" corresp="yes">
<name><surname>Heinrich</surname> <given-names>Enrico</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
<xref ref-type="author-notes" rid="fn001">&#x0002A;</xref>
</contrib>
<contrib contrib-type="author">
<name><surname>Joost</surname> <given-names>Ralf</given-names></name>
<xref ref-type="aff" rid="aff1"><sup>1</sup></xref>
</contrib>
</contrib-group>
<aff id="aff1"><sup>1</sup><institution>Faculty of Computer Science and Electrical Engineering, University of Rostock</institution> <country>Rostock, Germany</country></aff>
<author-notes>
<fn fn-type="edited-by"><p>Edited by: Hava T. Siegelmann, Rutgers University, USA</p></fn>
<fn fn-type="edited-by"><p>Reviewed by: Misha Tsodyks, Weizmann Institute of Science, Israel; Hava T. Siegelmann, Rutgers University, USA</p></fn>
<fn fn-type="corresp" id="fn001"><p>&#x0002A;Correspondence: Enrico Heinrich, Faculty of Computer Science and Electrical Engineering, University of Rostock, 18051 Rostock, Germany. e-mail: <email>enrico.heinrich&#x00040;uni-rostock.de</email></p></fn>
</author-notes>
<pub-date pub-type="epub">
<day>02</day>
<month>02</month>
<year>2012</year>
</pub-date>
<pub-date pub-type="collection">
<year>2012</year>
</pub-date>
<volume>6</volume>
<elocation-id>6</elocation-id>
<history>
<date date-type="received">
<day>22</day>
<month>08</month>
<year>2011</year>
</date>
<date date-type="accepted">
<day>17</day>
<month>01</month>
<year>2012</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x000A9; 2012 Salomon, Heinrich and Joost.</copyright-statement>
<copyright-year>2012</copyright-year>
<license license-type="open-access" xlink:href="http://www.frontiersin.org/licenseagreement"><p>This is an open-access article distributed under the terms of the <uri xlink:href="http://creativecommons.org/licenses/by-nc/3.0/">Creative Commons Attribution Non Commercial License</uri>, which permits non-commercial use, distribution, and reproduction in other forums, provided the original authors and source are credited.</p></license>
</permissions>
<abstract>
<p>The nucleus laminaris of the barn owl auditory system is quite impressive, since its underlying time estimation is much better than the processing speed of the involved neurons. Since precise localization is also very important in many technical applications, this paper explores to what extent the main principles of the nucleus laminaris can be implemented in digital hardware. The first prototypical implementation yields a time resolution of about 20&#x02009;ps, even though the chosen standard, low-cost device is clocked at only 85&#x02009;MHz, which leads to an internal duty cycle of approximately 12&#x02009;ns. In addition, this paper also explores the utility of an advanced sampling scheme, known as <italic>unfolding-in-time</italic>. It turns out that with this sampling method, the prototype can easily process input signals of up to 300&#x02009;MHz, which is almost four times higher than the sampling rate.</p>
</abstract>
<kwd-group>
<kwd>nucleus laminaris</kwd>
<kwd>barn owl</kwd>
<kwd>high resolution time measurement</kwd>
<kwd>localization</kwd>
<kwd>FPGA</kwd>
</kwd-group>
<counts>
<fig-count count="13"/>
<table-count count="0"/>
<equation-count count="0"/>
<ref-count count="10"/>
<page-count count="9"/>
<word-count count="4367"/>
</counts>
</article-meta>
</front>
<body>
<sec sec-type="introduction">
<label>1</label> <title>Introduction</title>
<p>The barn owl auditory system constitutes an impressive localization system (Kempter et al., <xref ref-type="bibr" rid="B7">1996</xref>). Its performance is mainly due to the architecture of the nucleus laminaris (see, also, Figure <xref ref-type="fig" rid="F1">1</xref>). It employs a rather large number of neurons, which all operate as coincidence detectors. These coincidence detectors connect to two reciprocal (anti-parallel) axonal &#x0201C;delay&#x0201D;-lines. These axonal delay lines induce additional delays on the acoustic signals as they travels from one coincidence detector to the next one. In so doing, the axonal delay lines change the mutual timing between the two signals that are originating at the two ears; actually, the timing between the two signals is unique at every coincidence detector. As a consequence all coincidence detectors evaluate a different timing (of the external sound signal), and their spatial distribution corresponds to the location of the extern sound signal.</p>
<fig id="F1" position="float">
<label>Figure 1</label>
<caption><p><bold>The barn owl auditory system (nucleus laminaris) consists of a decent number of neurons, which all operate as coincidence detectors and which are all connected to axonal delay lines</bold>. Depending on the location of the sound source, all the neurons exhibit different activities.</p></caption>
<graphic xlink:href="fncom-06-00006-g001.tif"/>
</fig>
<p>Localization is not only relevant in nature but also in numerous technical applications. The global positioning system (GPS, Misra and Enge, <xref ref-type="bibr" rid="B10">2006</xref>; and in the near future, Galileo, European Commission, <xref ref-type="bibr" rid="B5">2003</xref>, as well) is one of those examples that have penetrated our everyday life. Despite its wide acceptance, GPS has also a few shortcomings. For example, GPS is not available underneath trees nor is it available in indoor environments, such as buildings and tunnels. Furthermore, GPS yields a precision of roughly 8&#x02009;m, which can be improved to less than 1&#x02009;m under certain circumstances.</p>
<p>Due to technological advances, many applications, such as Multimodal Smart Appliance Ensembles for Mobile Applications<xref ref-type="fn" rid="fn1"><sup>1</sup></xref>, require robust indoor localization systems, that yield a precision in the range of a 1-cm or below at costs as low as possible. Ubisense (Ubisense Ltd.)<xref ref-type="fn" rid="fn2"><sup>2</sup></xref> and iLoc (Knauth et al., <xref ref-type="bibr" rid="B8">2009</xref>) are very good examples for state-of-the-art indoor localization systems.</p>
<p>A further challenge is induced, if electromagnetic signals are to be used, which is often the case; because electromagnetic signals travel with the speed of light <italic>c</italic>&#x02009;&#x0003D;&#x02009;3&#x02009;&#x000D7;&#x02009;10<sup>8</sup>&#x02009;m/s, a resolution of 1&#x02009;cm corresponds to approximately 30&#x02009;ps, which cannot be achieved with currently available low-cost digital systems. Because of these requirements, this paper investigates to which extent the main principles of the nucleus laminaris can be realized in digital hardware. To this end, Section II summarizes the localization problem from a technical point of view.</p>
<p>Section III approaches the <italic>digital implementation</italic> of the neuronal coincidence detectors. Basically, the digital coincidence detector consists of a simple exclusive-or gate, which &#x0201C;mixes&#x0201D; the two incoming signals, and an additional counter, which evaluates the gate&#x02019;s activation time, which directly corresponds to the signals&#x02019; difference, i.e., the phase shift. Because of its internal structure, this localization system is called exclusively XOR-ed counter array, or X-ORCA for short.</p>
<p>X-ORCA&#x02019;s internal structure is simple and quite regular. These properties make X-ORCA particularly suitable for the implementation on field-programmable gate arrays (FPGAs; Altera Document CII51002-3.1, <xref ref-type="bibr" rid="B1">2007</xref>) and application-specific integrated circuits (ASICs). An FPGA is a digital circuit that consists of thousands of logical gates, which all can be freely configured as well as freely interconnected at the programmers dispense. Section IV briefly discusses a first prototypical implementation on such a digital device.</p>
<p>The first prototype has been tested in various configurations. Section V summaries the experimental results, which indicate that the prototype is able to achieve a resolution as small as 20&#x02009;ps even though the chosen digital device is clocked as slow as 85&#x02009;MHz, which corresponds to a duty cycle of about 12&#x02009;ns.</p>
<p>The initial tests have employed a standard sampling scheme, where the sampling rate <italic>f</italic><sub>sample</sub>&#x02009;&#x000BB;&#x02009;<italic>f<sub>e</sub></italic> is much higher than the signal frequency. Section VI explores an additional sampling scheme, known as unfolding-in-time (Hertz et al., <xref ref-type="bibr" rid="B6">1991</xref>). It turns out that this scheme allows for signal frequencies way above the sampling rate; the first prototype easily processes up to 300&#x02009;MHz as is shown in Section VI, even though the sampling rate is still at 85&#x02009;MHz. Finally, Section VII concludes this paper with a brief discussion.</p>
</sec>
<sec>
<label>2</label> <title>Problem Description: Localization</title>
<p>Localization is a process that derives new, so-far unknown points from a set of given reference points by evaluating angles and/or distances. Generally, such localization systems come in two flavors: (1) a set of receivers (passive infrastructure) determines the location of an active sender, or (2) a passive receiver derives its own position from the signals emitted by a set of active transmitters. In accordance with the barn owl (and almost all other animals), this paper assumes the first setup.</p>
<p>For educational purpose and for the ease of development, this paper assumes a one-dimensional setup as is illustrated in Figure <xref ref-type="fig" rid="F2">2</xref>; an extension to a two or three-dimensional setup can be simply realized by duplicating or trippling the one-dimensional setup, and is thus not further discussed in this paper.</p>
<fig id="F2" position="float">
<label>Figure 2</label>
<caption><p><bold>This paper assumes a standard setup, which is simplified to one dimension here</bold>. The two receivers read the transmitter&#x02019;s signals after they have traveled the two distances <italic>L&#x02009;</italic>&#x0002B;&#x02009;&#x00394;<italic>x</italic> and <italic>L</italic>&#x02009;&#x02212;&#x02009;&#x00394;<italic>x</italic>. Thus, the time difference &#x00394;<italic>t&#x02009;</italic>&#x0003D;&#x02009;<italic>t</italic><sub>1</sub>&#x02009;&#x02212;&#x02009;<italic>t</italic><sub>2</sub>&#x02009;&#x0003D;&#x02009;2&#x00394;<italic>x</italic>/<italic>c</italic> is a result of the transmitter&#x02019;s off-center position &#x00394;<italic>x</italic>. The system indirectly determines &#x00394;<italic>t&#x02009;</italic>&#x0003D;&#x02009;&#x00394;&#x003C6;/(2&#x003C0;<italic>f</italic>) by estimating the phase shift &#x00394;&#x003C6; between the two incoming signals <italic>r</italic><sub>1</sub>(<italic>t</italic>) and <italic>r</italic><sub>2</sub>(<italic>t</italic>).</p></caption>
<graphic xlink:href="fncom-06-00006-g002.tif"/>
</fig>
<p>In a one-dimensional setup, an active transmitter <italic>T</italic> emits a (sound or electromagnetic) signal <italic>s</italic>(<italic>t</italic>)&#x02009;&#x0003D;&#x02009;<italic>A</italic> sin (2&#x003C0;<italic>f</italic>(<italic>t</italic>&#x02009;&#x02212;&#x02009;<italic>t</italic><sub>0</sub>)) with frequency <italic>f</italic>, amplitude <italic>A</italic>, and time offset <italic>t</italic><sub>0</sub>. After traveling the two distances <italic>L&#x02009;</italic>&#x0002B;&#x02009;&#x00394;<italic>x</italic> and <italic>L</italic>&#x02009;&#x02212;&#x02009;&#x00394;<italic>x</italic>, the signals arrive at the two receivers <italic>R</italic><sub>1</sub> and <italic>R</italic><sub>2</sub>. Since this traveling happens with a finite speed <italic>c</italic>, it arrives at the receivers after the time delays &#x00394;<italic>t</italic><sub>1</sub>&#x02009;&#x0003D;&#x02009;(<italic>L&#x02009;</italic>&#x0002B;&#x02009;&#x00394;<italic>x</italic>)/<italic>c</italic> and &#x00394;<italic>t</italic><sub>2</sub>&#x02009;&#x0003D;&#x02009;(<italic>L</italic>&#x02009;&#x02212;&#x02009;&#x00394;<italic>x</italic>)/<italic>c</italic>.</p>
<p>Normally, both receivers employ an amplifier and a Schmitt trigger, which converts any input signal into a rectangular one. Therefore, the two receivers provide the rectangular signals <italic>r</italic><sub>1</sub>(<italic>t</italic>&#x02009;&#x02212;&#x02009;<italic>t</italic><sub>0</sub>&#x02009;&#x02212;&#x02009;&#x00394;<italic>t</italic><sub>1</sub>) and <italic>r</italic><sub>2</sub>(<italic>t</italic>&#x02009;&#x02212;&#x02009;<italic>t</italic><sub>0</sub>&#x02009;&#x02212;&#x02009;&#x00394;<italic>t</italic><sub>2</sub>), with &#x00394;<italic>t</italic><sub>1</sub> and &#x00394;<italic>t</italic><sub>2</sub> denoting the aforementioned time delays that are due to the finite signal traveling speed.</p>
<p>Finally, the localization system has to determine the time difference &#x00394;<italic>t&#x02009;</italic>&#x0003D;&#x02009;&#x00394;<italic>t</italic><sub>1</sub>&#x02009;&#x02212;&#x02009;&#x00394;<italic>t</italic><sub>2</sub> between the two received signals <italic>r</italic><sub>1</sub>(<italic>t</italic>&#x02009;&#x02212;&#x02009;<italic>t</italic><sub>0</sub>&#x02009;&#x02212;&#x02009;&#x00394;<italic>t</italic><sub>1</sub>) and <italic>r</italic><sub>2</sub>(<italic>t</italic>&#x02009;&#x02212;&#x02009;<italic>t</italic><sub>0</sub>&#x02009;&#x02212;&#x02009;&#x00394;<italic>t</italic><sub>2</sub>). If the localization system knows the signal frequency <italic>f</italic>, it can accomplish this in an indirect way &#x00394;<italic>t&#x02009;</italic>&#x0003D;&#x02009;&#x00394;&#x003C6;/(2&#x003C0;<italic>f</italic>) by determining the phase shift &#x00394;&#x003C6; between the two signals.</p>
<p>It might be, though, that both the physical setup and the localization system have further internal delays, such as switches, cables of different lengths, repeaters, and further logical gates. However, these internal delays can all be omitted, since they can be easily eliminated in a proper calibration process.</p>
<p>Localization by measuring the time-difference-of-arrival becomes particularly challenging, if the system is based on electromagnetic signals, which travel with the speed of light <italic>c</italic>&#x02009;&#x02248;&#x02009;3&#x02009;&#x000D7;&#x02009;10<sup>8</sup>&#x02009;m/s. For example, an electromagnetic signals travels 1&#x02009;cm in approximately 33&#x02009;ps.</p>
</sec>
<sec>
<label>3</label> <title>The X-ORCA Localization System</title>
<p>This section proposes a localization system called X-ORCA, which is an acronym for XOR-ed counter array. On an abstract level, this system has quite the same architecture as the barn owl auditory systems. It consists of two inputs (the two ears), two regular wires (the two axonal delays), and quite a number of coincidence detectors (the neurons).</p>
<p>The description of the (digital) coincidence detectors requires a little more care. First of all, simple logic gates cannot be operating as coincidence detectors. But, &#x0201C;coincidence&#x0201D; of two signals can be interpreted such that there is no difference between them; in other words, they are identical at all times. The difference of two signals is easy to detect, a simple XOR gates can do the job. An XOR gate delivers a logical one, if either of the two inputs has a logical one but not both. Thus, the proportion of a logical one with respect to a logical zero at the output of an XOR gate expresses the phase shift &#x003C6; between the two inputs (see, also, Section II).</p>
<p>With an XOR gate as the combiner of the two inputs, the task is to measure the average duration of the logical ones at its output. This can be achieved with the circuitry illustrated in Figure <xref ref-type="fig" rid="F3">3</xref>. The output of the XOR gate is connected to the enable input of a simple counter. This counter increases its value, if at the clock signal (actually the transition from a logical zero to a logical one), the enable input is activated. Thus, the counter value is proportional to the timely proportion of logical ones at the XOR gate&#x02019;s output and the total number of clock cycles. This value is thus proportional to the phase shift &#x00394;&#x003C6; between both input signals.</p>
<fig id="F3" position="float">
<label>Figure 3</label>
<caption><p><bold>The combination of a simple XOR gate and a subsequent counter is able to operate as a coincidence detector</bold>. The counter value is proportional to the proportion of logical ones at the XOR gate&#x02019;s output and the total number of clock cycles. The counter value is thus proportional to the phase shift &#x00394;&#x003C6; between both input signals.</p></caption>
<graphic xlink:href="fncom-06-00006-g003.tif"/>
</fig>
<p>For example, let us assume an input signal with a frequency of <italic>f&#x02009;</italic>&#x0003D;&#x02009;100&#x02009;MHz and a phase shift of &#x00394;&#x003C6;&#x02009;&#x0003D;&#x02009;&#x003C0;/4&#x02009;&#x0003D;&#x02009;45&#x000B0;. Then, if the counter is clocked at a rate of 10&#x02009;GHz over a signal&#x02019;s period T&#x02009;&#x0003D;&#x02009;1/(100&#x02009;MHz)&#x02009;&#x0003D;&#x02009;10&#x02009;ns, the counter will assume a value of <italic>v&#x02009;</italic>&#x0003D;&#x02009;25. In this example, all the given numbers, particularly the chosen frequencies, are for educational purposes only, and may not be realistic in a specific implementation.</p>
<p>As has already been seen in the barn owl auditory system, X-ORCA also employs a large number of coincidence detectors (see Figure <xref ref-type="fig" rid="F4">4</xref>), which are all connected to two reciprocal (anti-parallel) &#x0201C;delay&#x0201D; wires <italic>w</italic><sub>1</sub> and <italic>w</italic><sub>2</sub> on which the two signals <italic>r</italic><sub>1</sub>(<italic>t</italic>) and <italic>r</italic><sub>2</sub>(<italic>t</italic>) travel with approximately two third of the speed of light <italic>c<sub>w</sub></italic>&#x02009;&#x02248;&#x02009;2/3<italic>c</italic>.</p>
<fig id="F4" position="float">
<label>Figure 4</label>
<caption><p><bold>X-ORCA places all phase detectors along two reciprocal (anti-parallel) &#x0201C;delay&#x0201D; wires <italic>w</italic><sub>1</sub> and <italic>w</italic><sub>2</sub> on which the two signals <italic>r</italic><sub>1</sub>(<italic>t</italic>) and <italic>r</italic><sub>2</sub>(<italic>t</italic>) travel with approximately two third of the speed of light <italic>c<sub>w</sub></italic>&#x02009;&#x02248;&#x02009;2/3<italic>c</italic></bold>. Because the two wires <italic>w</italic><sub>1</sub> and <italic>w</italic><sub>2</sub> are <italic>reciprocal</italic>, all phase detectors have different internal delays &#x003C4;<italic><sub>i</sub></italic>.</p></caption>
<graphic xlink:href="fncom-06-00006-g004.tif"/>
</fig>
<p>The mode of operation of the X-ORCA system is quite identical to that of the barn owl. Let us start with the coincidence detector (neurons) at which the two inputs match, i.e., both inputs have a vanishing phase shift &#x003C6;&#x02009;&#x0003D;&#x02009;0. Then, due to the &#x0201C;delays&#x0201D; along the two wires <italic>w</italic><sub>1</sub> and <italic>w</italic><sub>2</sub>, the coincidence detectors to the right and left observe non-matching inputs, i.e., non-vanishing phase shifts &#x003C6;&#x02009;&#x02260;&#x02009;0. If the delay wires cause a time delay &#x003B4; between two coincidence detectors, then these detectors observe a total time shift of 2&#x003B4;. That is, the duration of a logical one is also increased or decrease by 2&#x003B4;.</p>
<p>Normally, the time difference 2&#x003B4; is much smaller than the duty cycle of the counter, and would thus not have any effect. However, if sampling over a sufficiently long time span, this tiny time delay will eventually affect the <italic>final</italic> counter value.</p>
</sec>
<sec>
<label>4</label> <title>The First Prototype</title>
<p>The first X-ORCA prototype was implemented on an Altera Cyclone II FPGA (Altera Document MNLN051805-1.3, <xref ref-type="bibr" rid="B2">2007</xref>). This device charges about 50 USD, offers 33,216 logic elements, and can be clocked at about 85&#x02009;MHz. The <italic>development board</italic>, which is required only during research and development, charges about 500 USD and features all the required components, interfaces, and development tools.</p>
<p>Figure <xref ref-type="fig" rid="F5">5</xref> shows a top-level view of the X-ORCA prototype. It consists of 140 phase detectors, a common data bus, a Nios II soft core processor (Altera Document NII5V1-7.2, <xref ref-type="bibr" rid="B3">2007</xref>), and a system PLL that runs at 85&#x02009;MHz. The Nios II processor manages all the counters of the phase detectors, and reports the results via an interface to a PC.</p>
<fig id="F5" position="float">
<label>Figure 5</label>
<caption><p><bold>On the top-level, the X-ORCA implementation consists of 140 phase detectors (aligned from top to bottom), a Nios II processor, a first PLL for the system, a second PLL for the localization signal with a frequency of 300&#x02009;MHz, and just a little bit of additional infrastructure</bold>.</p></caption>
<graphic xlink:href="fncom-06-00006-g005.tif"/>
</fig>
<p>Due to the limited laboratory equipment, the transmitter is realized as a simple function generator that emits a sinusoidal signal. In order to focus on the core system, wireless communication capabilities were not employed; rather, the prototype is connected to the function generator via a regular wire as well as a line stretcher (Microlab, <xref ref-type="bibr" rid="B9">2008</xref>). Such a line stretcher can be extended or shorted, and can thus change the signal propagation time accordingly.</p>
<p>It should be noted, though, that X-ORCA&#x02019;s <italic>internal</italic> &#x0201C;delay wires&#x0201D; <italic>w</italic><sub>1</sub> and <italic>w</italic><sub>2</sub> are realized as pure passive internal wires, connecting the device&#x02019;s logic elements, as previously announced in Section III.</p>
</sec>
<sec>
<label>5</label> <title>Results</title>
<p>Figures <xref ref-type="fig" rid="F6">6</xref>&#x02013;<xref ref-type="fig" rid="F11">11</xref> summarize the experimental results that were achieved with the first X-ORCA prototype under different configurations. Unless otherwise stated, these figures present the counter values <italic>v<sub>i</sub></italic> of <italic>n&#x02009;</italic>&#x0003D;&#x02009;140 different phase detectors, which were clocked at a rate of 85&#x02009;MHz.</p>
<fig id="F6" position="float">
<label>Figure 6</label>
<caption><p><bold>The figure shows the counter values <italic>v<sub>i</sub></italic> of <italic>n&#x02009;</italic>&#x0003D;&#x02009;140 phase detectors when fed with two 19&#x02009;MHz signals with zero phase shift &#x00394;&#x003C6;&#x02009;&#x0003D;&#x02009;0</bold>.</p></caption>
<graphic xlink:href="fncom-06-00006-g006.tif"/>
</fig>
<p>Figure <xref ref-type="fig" rid="F6">6</xref> shows the behavior of the X-ORCA architecture when using the external 19&#x02009;MHz localization signal. In this experiment, one of the connections from the function generator to the input pad of the development board was established by a line stretcher (Microlab, <xref ref-type="bibr" rid="B9">2008</xref>), whereas the other one was made of a regular copper wire. Figure <xref ref-type="fig" rid="F6">6</xref> shows the values <italic>v<sub>i</sub></italic> of the <italic>n&#x02009;</italic>&#x0003D;&#x02009;140 counters, which were still clocked at 85&#x02009;MHz over a measurement period of 10,000,000 ticks.</p>
<p>In addition, Figure <xref ref-type="fig" rid="F6">6</xref> reveals some technological FPGA internals that might be already known to the expert reader: neighboring logic elements do not necessarily have equivalent technical characteristics and are not interconnected by a regular wire grid. As a consequence, the counter values <italic>v<sub>i</sub></italic> and <italic>v</italic><sub><italic>i</italic>&#x02009;&#x0002B;&#x02009;1</sub> of two neighboring phase detectors do not steadily increase or decrease, which makes the curve look a bit rough. This effect can be compensated. Each counter has a unique and constant internal delay, therefore, the counter values <italic>v<sub>i</sub></italic> can be plotted over the internal delay &#x003C4;<italic><sub>i</sub></italic> that results in a flat curve as shown in Figure <xref ref-type="fig" rid="F7">7</xref>.</p>
<fig id="F7" position="float">
<label>Figure 7</label>
<caption><p><bold>The figure shows the derived counter values <italic>v<sub>i</sub></italic> of <italic>n&#x02009;</italic>&#x0003D;&#x02009;140 phase detectors when fed with two 19&#x02009;MHz signals with zero phase shift &#x00394;&#x003C6;&#x02009;&#x0003D;&#x02009;0 (solid line), with about &#x02212;0.3&#x000B0; phase shift &#x00394;&#x003C6;&#x02009;&#x02248;&#x02009;&#x02212;0.3&#x000B0; (dashed line), and with about &#x0002B;0.3&#x000B0; phase shift &#x00394;&#x003C6;&#x02009;&#x02248;&#x02009;&#x0002B;0.3&#x000B0; (dotted line)</bold>.</p></caption>
<graphic xlink:href="fncom-06-00006-g007.tif"/>
</fig>
<p>The three graphs in Figure <xref ref-type="fig" rid="F7">7</xref> refer to a phase shift of &#x00394;&#x003C6;&#x02009;&#x02208;&#x02009;{&#x02212;0.3&#x000B0;, 0, &#x0002B;0.3&#x000B0;}, which corresponds to time delays &#x00394;<italic>t</italic>&#x02009;&#x02208;&#x02009;&#x02212;0.02, 0, &#x0002B;0.02&#x02009;ns. It should be noted that the graph of this figure appears as a straight line, since the internal time delays &#x003C4;<italic><sub>i</sub></italic> span much less than an entire period of the 19&#x02009;MHz signal.</p>
<p>Figure <xref ref-type="fig" rid="F8">8</xref> presents a different view of Figure <xref ref-type="fig" rid="F7">7</xref>: In the graph, every dot represents the sum <italic>v</italic><sub>tot</sub>&#x02009;&#x0003D;&#x02009;&#x003A3;<italic><sub>i</sub>v<sub>i</sub></italic> of all <italic>n&#x02009;</italic>&#x0003D;&#x02009;140 counter values <italic>v<sub>i</sub></italic>; that is, an entire graph of Figure <xref ref-type="fig" rid="F7">7</xref> is collapsed into one single dot. The graph shows 29 measurements in which the line stretcher was extended by 1&#x02009;cm step by step. It can be seen that a length difference of &#x00394;<italic>x&#x02009;</italic>&#x0003D;&#x02009;1&#x02009;cm decreases <italic>v</italic><sub>tot</sub> by about 2 million. This result <italic>suggests</italic> that with a localization of 19&#x02009;MHz, X-ORCA is able to detect a length difference of about &#x00394;<italic>x&#x02009;</italic>&#x0003D;&#x02009;1&#x02009;mm, which equals a time resolution of about 0.003&#x02009;ns.</p>
<fig id="F8" position="float">
<label>Figure 8</label>
<caption><p><bold>The figure shows the delay value indicator resulting from adjustable delay line lengths when fed with two 19&#x02009;MHz signals</bold>.</p></caption>
<graphic xlink:href="fncom-06-00006-g008.tif"/>
</fig>
<p>The second focus of the practical experiments was to explore the lower limit of the normalized time delay &#x00394;<italic>t</italic>&#x02009;&#x000B7;&#x02009;<italic>f</italic>. To this end, the prototype was exposed to two localization signals with varying time delays. The localization frequencies were set to <italic>f</italic>&#x02009;&#x02208;&#x02009;{1.14&#x02009;MHz, 111&#x02009;kHz, 11&#x02009;kHz}. The results are plotted in Figures <xref ref-type="fig" rid="F9">9</xref>&#x02013;<xref ref-type="fig" rid="F11">11</xref>.</p>
<fig id="F9" position="float">
<label>Figure 9</label>
<caption><p><bold>This figure shows the delay value indicator for two 1.14&#x02009;MHz localization signals for various lengths of the utilized line stretcher</bold>.</p></caption>
<graphic xlink:href="fncom-06-00006-g009.tif"/>
</fig>
<fig id="F10" position="float">
<label>Figure 10</label>
<caption><p><bold>This figure shows the delay value indicator for two 111&#x02009;kHz localization signals for various lengths of the utilized line stretcher</bold>.</p></caption>
<graphic xlink:href="fncom-06-00006-g010.tif"/>
</fig>
<fig id="F11" position="float">
<label>Figure 11</label>
<caption><p><bold>This figure shows the delay value indicator for two 11&#x02009;kHz localization signals for various lengths of the utilized line stretcher</bold>.</p></caption>
<graphic xlink:href="fncom-06-00006-g011.tif"/>
</fig>
<p>All three figures show the very same qualitative behavior. The only difference is the absolute value of the delay value indicator: a decrease of the localization frequency by a factor of 10 leads to a reduction of the delay value indicator by the very same amount; with the identical time delay &#x00394;<italic>t</italic> the phase shift is only a tenth, if the frequency is also just a tenth.</p>
</sec>
<sec>
<label>6</label> <title>Beyond the Limit <italic>f</italic><sub>Sample</sub>&#x02009;&#x000BB;&#x02009;<italic>f<sub>e</sub></italic></title>
<p>From a technical point of view, it might be interesting to explore the upper limit of the frequency <italic>f<sub>e</sub></italic> of the input signal, which was illustrated as the transmitter <italic>T</italic> in Figure <xref ref-type="fig" rid="F2">2</xref>. At first glance, it should be <italic>f<sub>e</sub></italic>&#x02009;&#x000AB;&#x02009;<italic>f</italic><sub>sample</sub> way smaller than the sampling frequency <italic>f</italic><sub>sample</sub> in order to obtain a reasonable resolution of the phase shift &#x00394;&#x003C6;&#x02009;&#x02265;&#x02009;&#x003C0;<italic>f<sub>e</sub></italic>/<italic>f</italic><sub>sample</sub>. That is, the higher the input frequency the more the resolution degrades. However, since both the input and the sample signal are <italic>periodic</italic> by their very nature, X-ORCA offers other options. One option is known as unfolding-in-time (Hertz et al., <xref ref-type="bibr" rid="B6">1991</xref>), and is described in Subsection VI-A. With this option, the input frequency is not anymore bound to the sampling frequency; rather, it is only limited by the processing speed of the very first stage of the digital implementation device. Subsection VI-B reports results for <italic>f<sub>e</sub>&#x02009;</italic>&#x0003D;&#x02009;300&#x02009;MHz, which is simply the limit of the chosen FPGA device.</p>
<sec>
<label>6.1</label> <title>Unfolding-in-time</title>
<p>The upper part of Figure <xref ref-type="fig" rid="F12">12</xref> illustrates the &#x0201C;standard&#x0201D; form of sampling a signal <italic>Q</italic>(<italic>t</italic>) that has frequency <italic>f<sub>e</sub></italic> and has thus a signal period <italic>T&#x02009;</italic>&#x0003D;&#x02009;1/<italic>f<sub>e</sub></italic>. Then, the samples could be taken at 0, <italic>t</italic>, 2<italic>t</italic>, &#x02026;, (<italic>n</italic>&#x02009;&#x02212;&#x02009;1)<italic>t</italic>, with <italic>t&#x02009;</italic>&#x0003D;&#x02009;<italic>T</italic>/<italic>n</italic> denoting the duration between two consecutive samples, and <italic>n</italic> denoting the number of samples per signal period <italic>T</italic>. This obviously leads to a resolution of the measurable phase shift &#x00394;&#x003C6;&#x02009;&#x02265;&#x02009;&#x003C0;/<italic>n</italic>.</p>
<fig id="F12" position="float">
<label>Figure 12</label>
<caption><p><bold>Unfolding-in-time &#x02013; the sampling points can be distributed over an extended period of time</bold>. Rather than sampling at 0, <italic>t</italic>, 2<italic>t</italic>, &#x02026;, (<italic>n</italic>&#x02009;&#x02212;&#x02009;1)<italic>t</italic>, the samples could also be taken at 0, (<italic>t&#x02009;</italic>&#x0002B;&#x02009;<italic>T</italic>), 2(<italic>t&#x02009;</italic>&#x0002B;&#x02009;<italic>T</italic>), &#x02026;, (<italic>n</italic>&#x02009;&#x02212;&#x02009;1)(<italic>t&#x02009;</italic>&#x0002B;&#x02009;<italic>T</italic>).</p></caption>
<graphic xlink:href="fncom-06-00006-g012.tif"/>
</fig>
<p>The naive approach discussed above does not take into account that both the input and the sampling signal are periodic by their very nature. In this special case, the sampling points can be distributed over an extended period of time. Rather than sampling at 0, <italic>t</italic>, 2<italic>t</italic>, &#x02026;, (<italic>n</italic>&#x02009;&#x02212;&#x02009;1)<italic>t</italic>, the samples could also be taken at 0, (<italic>t&#x02009;</italic>&#x0002B;&#x02009;<italic>T</italic>), 2(<italic>t&#x02009;</italic>&#x0002B;&#x02009;<italic>T</italic>), &#x02026;, (<italic>n</italic>&#x02009;&#x02212;&#x02009;1)(<italic>t&#x02009;</italic>&#x0002B;&#x02009;<italic>T</italic>), as is illustrated in the lower part of Figure <xref ref-type="fig" rid="F12">12</xref>. As a consequence, the sampling process requires <italic>nT</italic> time. For the following reason, this process is also known as unfolding-in-time (Hertz et al., <xref ref-type="bibr" rid="B6">1991</xref>): if considering only the modulus <italic>t<sub>i</sub></italic>mod<italic>T</italic>, all sampling points collapse to the standard sampling procedure 0, <italic>t</italic>, 2<italic>t</italic>, &#x02026;, (<italic>n</italic>&#x02009;&#x02212;&#x02009;1)<italic>t</italic> as described above. Conversely, by properly choosing a sampling scheme, virtually high sampling frequencies can be obtained, even though the actual sampling frequency <italic>f</italic><sub>sample</sub> is low.</p>
<p>The chosen time lag &#x0201C;<italic>t&#x02009;</italic>&#x0002B;&#x02009;<italic>T</italic>&#x0201D; of the sampling scheme described above can be further relaxed. It suffices to set the time lag to &#x0201C;&#x003BA;<italic>t&#x02009;</italic>&#x0002B;&#x02009;<italic>jT</italic>,&#x0201D; with &#x003BA; and <italic>j</italic> denoting arbitrary natural numbers, as long as &#x003BA; and the number of samples <italic>n</italic> are prime. For example, with <italic>n&#x02009;</italic>&#x0003D;&#x02009;4, &#x003BA;&#x02009;&#x0003D;&#x02009;3, <italic>j&#x02009;</italic>&#x0003D;&#x02009;2, and <italic>t&#x02009;</italic>&#x0003D;&#x02009;<italic>T</italic>/4, the samples would be taken at 0, 3<italic>t&#x02009;</italic>&#x0002B;&#x02009;2<italic>T</italic>, 2<italic>t&#x02009;</italic>&#x0002B;&#x02009;5<italic>T</italic>, 1<italic>t&#x02009;</italic>&#x0002B;&#x02009;8<italic>t</italic>, which virtually collapse to 0, <italic>t</italic>, 2<italic>t</italic>, 3<italic>t</italic>.</p>
</sec>
<sec>
<label>6.2</label> <title>Results for <italic>f<sub>e</sub></italic>&#x02009;&#x0003D;&#x02009;300&#x02009;MHz</title>
<p>The available laboratory equipment did not allow for external localization frequencies <italic>f<sub>e</sub></italic> larger than 19&#x02009;MHz. Therefore, the second set of experiments utilized a second system-internal PLL (see, also, Figure <xref ref-type="fig" rid="F5">5</xref>), which runs at 300&#x02009;MHz.</p>
<p>Figure <xref ref-type="fig" rid="F13">13</xref> shows the <italic>n&#x02009;</italic>&#x0003D;&#x02009;140 counter values <italic>v<sub>i</sub></italic> for two 300&#x02009;MHz (localization) signals that have a zero phase shift &#x00394;&#x003C6;&#x02009;&#x0003D;&#x02009;0 (solid line), a phase shift &#x00394;&#x003C6;&#x02009;&#x0003D;&#x02009;&#x02212;30.9&#x000B0; (dotted line), and a phase shift &#x00394;&#x003C6;&#x02009;&#x0003D;&#x02009;&#x0002B;29.5&#x000B0; (dashed line). The input signals were sampled 1,000,000 times, which corresponds to an averaging over 196 periods, with virtually 5100 samples per period of the localization signal (please, see also the discussion presented in Subsection VI-A). It can be clearly seen that the minimum is at counter index no. 32 with increasing counter values to the right and left as can be expected from X-ORCA&#x02019;s internal architecture.</p>
<fig id="F13" position="float">
<label>Figure 13</label>
<caption><p><bold>The figure shows the counter values <italic>v<sub>i</sub></italic> of <italic>n&#x02009;</italic>&#x0003D;&#x02009;140 phase detectors when fed with two 300&#x02009;MHz signals with zero phase shift &#x00394;&#x003C6;&#x02009;&#x0003D;&#x02009;0 (solid line), with a phase shift &#x00394;&#x003C6;&#x02009;&#x0003D;&#x02009;&#x02212;30.9&#x000B0; (dotted line), as well as with a phase shift &#x00394;&#x003C6;&#x02009;&#x0003D;&#x02009;&#x0002B;29.5&#x000B0; (dashed line)</bold>.</p></caption>
<graphic xlink:href="fncom-06-00006-g013.tif"/>
</fig>
<p>Figure <xref ref-type="fig" rid="F13">13</xref> shows the same qualitative behavior already shown in Figure <xref ref-type="fig" rid="F7">7</xref>. That is, already the first prototype is able to determine the phase shift of two 300&#x02009;MHz signals, even though these signals are sampled at only 85&#x02009;MHz. The figure also shows that a time difference of &#x00394;<italic>t</italic>&#x02009;&#x02248;&#x02009;0.3&#x02009;ns consistently shifts the &#x0201C;counter curve&#x0201D; by about 15 counters. This results <italic>suggests</italic> that at 300&#x02009;MHz, the prototype would be able to detect a time delay as small as &#x00394;<italic>t&#x02009;</italic>&#x0003D;&#x02009;0.02&#x02009;ns, which equals to a length resolution of about &#x00394;<italic>x</italic>&#x02009;&#x02248;&#x02009;6&#x02009;mm.</p>
<p>Unfortunately, the available FPGA device does not allow for higher frequencies of the localization signal, and thus does not allow for finding the true limits for <italic>f<sub>e</sub></italic>.</p>
</sec>
</sec>
<sec sec-type="discussion">
<label>7</label> <title>Discussion</title>
<p>This paper has presented a digital implementation, of the barn owl&#x02019;s nucleus laminaris. The model is called X-ORCA, and is intended to be used in technical applications, such as localization. In its core, X-ORCA exploits the finite traveling speed of signals along anti-parallel wires, and estimates the timing landscape by employing a large number of rather imprecise correlation detectors.</p>
<p>The first prototype runs on a rather old Altera Cyclone II board, and achieves a resolution of about 20&#x02009;ps for input signals of up to 300&#x02009;MHz. The obtained resolution in time corresponds to a spatial resolution of about 6&#x02009;mm, if using electromagnetic signals and having suitable sensors.</p>
<p>Unfortunately, the available laboratory equipment did not allow to test the true limits of the first prototype. This particularly applies to the maximal frequency <italic>f<sub>e</sub></italic> of the localization signal and to the achievable resolution with respect to &#x00394;<italic>x</italic>. These tests will be certainly subject of future research.</p>
<p>Future research will also be devoted to the integration of wireless communication modules. The best option for that approach seems to be the utilization of a software-defined radio module, such as the Universal Software Radio Peripheral 2 (USRP2; Ettus Research LLC<xref ref-type="fn" rid="fn3"><sup>3</sup></xref>). Finally, future research will port the first prototype onto more state-of-the-art development boards, such as an Altera Stratix V FPGA (Altera Document SV5V1-1.0, <xref ref-type="bibr" rid="B4">2010</xref>).</p>
</sec>
<sec>
<title>Conflict of Interest Statement</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
</body>
<back>
<ack>
<p>The authors gratefully thank Volker K&#x000FC;hn and Sebastian Vork&#x000F6;per for their helpful discussions. This work was supported in part by the DFG graduate school 1424. Special thanks are due to Matthias Hinkfoth for valuable comments on draft versions of the paper.</p>
</ack>
<ref-list>
<title>References</title>
<ref id="B1"><citation citation-type="book"><collab>Altera Document CII51002-3.1.</collab> (<year>2007</year>). <source>Cyclone II Device Handbook</source>. <publisher-loc>San Jose, CA</publisher-loc>: <publisher-name>Altera Corp</publisher-name>.</citation></ref>
<ref id="B2"><citation citation-type="book"><collab>Altera Document MNLN051805-1.3.</collab> (<year>2007</year>). <source>Nios Development Board Cyclone II Edition Reference Manual</source>. <publisher-loc>San Jose, CA</publisher-loc>: <publisher-name>Altera Corp</publisher-name>.</citation></ref>
<ref id="B3"><citation citation-type="book"><collab>Altera Document NII5V1-7.2.</collab> (<year>2007</year>). <source>Nios II Processor Reference Handbook</source>. <publisher-loc>San Jose, CA</publisher-loc>: <publisher-name>Altera Corp</publisher-name>.</citation></ref>
<ref id="B4"><citation citation-type="book"><collab>Altera Document SV5V1-1.0.</collab> (<year>2010</year>). <source>Stratix V Device Handbook</source>. <publisher-loc>San Jose, CA</publisher-loc>: <publisher-name>Altera Corp</publisher-name>.</citation></ref>
<ref id="B5"><citation citation-type="book"><collab>European Commission.</collab> (<year>2003</year>). <source>The Galileo Project &#x02013; GALILEO Design Consolidation</source>, <publisher-loc>Guildford</publisher-loc>.</citation></ref>
<ref id="B6"><citation citation-type="book"><person-group person-group-type="author"><name><surname>Hertz</surname> <given-names>J.</given-names></name> <name><surname>Krogh</surname> <given-names>A.</given-names></name> <name><surname>Palmer</surname> <given-names>R. G.</given-names></name></person-group> (<year>1991</year>). <source>Introduction to the Theory of Neural Computation</source>. <publisher-loc>Redwood City, CA</publisher-loc>: <publisher-name>Addison-Wesley Publishing Co</publisher-name>.</citation></ref>
<ref id="B7"><citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kempter</surname> <given-names>R.</given-names></name> <name><surname>Gerstner</surname> <given-names>W.</given-names></name> <name><surname>van Hemmen</surname> <given-names>J. L.</given-names></name></person-group> (<year>1996</year>). <article-title>Temporal coding in the sub-millisecond range: model of barn owl auditory pathway.</article-title> <source>Adv. Neural Inf. Process Syst.</source> <volume>8</volume>, <fpage>124</fpage>&#x02013;<lpage>130</lpage>.</citation></ref>
<ref id="B8"><citation citation-type="book"><person-group person-group-type="author"><name><surname>Knauth</surname> <given-names>S.</given-names></name> <name><surname>Jost</surname> <given-names>C.</given-names></name> <name><surname>Klapproth</surname> <given-names>A.</given-names></name></person-group> (<year>2009</year>). <article-title>&#x0201C;iLoc: a localisation system for visitor tracking and guidance,&#x0201D;</article-title> in <conf-name>Proceedings of the 7th IEEE International Conference on Industrial Informatics 2009 (INDIN 2009)</conf-name>, <conf-loc>Cardiff</conf-loc>, <fpage>262</fpage>&#x02013;<lpage>266</lpage>.</citation></ref>
<ref id="B9"><citation citation-type="book"><collab>Microlab.</collab> (<year>2008</year>). <source>Microlab: &#x0201C;Line Stretchers, SR Series&#x0201D;, Datasheed</source>. <publisher-loc>Parsippany, NJ</publisher-loc>: <publisher-name>Microlab Company</publisher-name>.</citation></ref>
<ref id="B10"><citation citation-type="book"><person-group person-group-type="author"><name><surname>Misra</surname> <given-names>P.</given-names></name> <name><surname>Enge</surname> <given-names>P.</given-names></name></person-group> (<year>2006</year>). <source>Global Positioning System: Signals, Measurements, and Performance</source>, <edition>2nd Edn</edition>. <publisher-loc>Lincoln, MA</publisher-loc>: <publisher-name>Ganya-Jamuna Press</publisher-name>.</citation></ref>
</ref-list>
<fn-group>
<fn id="fn1"><p><sup>1</sup><uri xlink:href="http://www.informatik.uni-rostock.de/musama.html">http://www.informatik.uni-rostock.de/musama.html</uri></p></fn>
<fn id="fn2"><p><sup>2</sup><uri xlink:href="http://www.ubisense.net">http://www.ubisense.net</uri></p></fn>
<fn id="fn3"><p><sup>3</sup><uri xlink:href="http://www.ettus.com">http://www.ettus.com</uri></p></fn>
</fn-group>
</back>
</article>
