<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ro">
	<id>http://wiki.dcae.pub.ro/index.php?action=history&amp;feed=atom&amp;title=The_Frequency_Divider</id>
	<title>The Frequency Divider - Revizia istoricului</title>
	<link rel="self" type="application/atom+xml" href="http://wiki.dcae.pub.ro/index.php?action=history&amp;feed=atom&amp;title=The_Frequency_Divider"/>
	<link rel="alternate" type="text/html" href="http://wiki.dcae.pub.ro/index.php?title=The_Frequency_Divider&amp;action=history"/>
	<updated>2026-05-28T08:17:25Z</updated>
	<subtitle>Istoricul versiunilor pentru această pagină din wiki</subtitle>
	<generator>MediaWiki 1.35.14</generator>
	<entry>
		<id>http://wiki.dcae.pub.ro/index.php?title=The_Frequency_Divider&amp;diff=6038&amp;oldid=prev</id>
		<title>Cbira la 10 mai 2018 06:53</title>
		<link rel="alternate" type="text/html" href="http://wiki.dcae.pub.ro/index.php?title=The_Frequency_Divider&amp;diff=6038&amp;oldid=prev"/>
		<updated>2018-05-10T06:53:20Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;ro&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Versiunea anterioară&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Versiunea de la data 10 mai 2018 06:53&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l2&quot; &gt;Linia 2:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 2:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;development with FPGA). Frequency and period of a signal are inversely proportional (f = 1 / T), so half-frequency implies doubling the period. A 50MHz signal has a 20ns period.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;development with FPGA). Frequency and period of a signal are inversely proportional (f = 1 / T), so half-frequency implies doubling the period. A 50MHz signal has a 20ns period.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;As seen in Laboratory 3, the simplest divider is a &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;numerator&lt;/del&gt;. But this implementation has limitations. Each bit has a frequency twice as low as the previous bit, so there is a discreet set of possible frequency values ​​that this implementation can provide. For example, for the 50MHz clock, the possible output values ​​are: 25MHz, 12.5MHz, 6.25MHz, 3.125MHz, 1.5625MHz, etc. If we want a clock signal with the 1Hz frequency, this deployment can not provide it.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;As seen in Laboratory 3, the simplest divider is a &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;counter&lt;/ins&gt;. But this implementation has limitations. Each bit has a frequency twice as low as the previous bit, so there is a discreet set of possible frequency values ​​that this implementation can provide. For example, for the 50MHz clock, the possible output values ​​are: 25MHz, 12.5MHz, 6.25MHz, 3.125MHz, 1.5625MHz, etc. If we want a clock signal with the 1Hz frequency, this deployment can not provide it.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File: divfreq0.png | thumb | Example of frequency divider with limit 4. Notice the time of exit signal between the two markers as 220ns]]&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;[[File: divfreq0.png | thumb | Example of frequency divider with limit 4. Notice the time of exit signal between the two markers as 220ns]]&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l19&quot; &gt;Linia 19:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Linia 19:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Implementation ==&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;== Implementation ==&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&#039;diff-marker&#039;&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The implementation of this circuit is done using an internal register for counting (with bit size equal to the port for the limit value - the counter must be able to reach the limit value), and a register for the divided clock signal output. The counting register increments until it reaches the limit value, in which case its value becomes 0, and the output register value is &lt;del class=&quot;diffchange diffchange-inline&quot;&gt;denied&lt;/del&gt;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&#039;diff-marker&#039;&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;The implementation of this circuit is done using an internal register for counting (with bit size equal to the port for the limit value - the counter must be able to reach the limit value), and a register for the divided clock signal output. The counting register increments until it reaches the limit value, in which case its value becomes 0, and the output register value is &lt;ins class=&quot;diffchange diffchange-inline&quot;&gt;0&lt;/ins&gt;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Cbira</name></author>
	</entry>
	<entry>
		<id>http://wiki.dcae.pub.ro/index.php?title=The_Frequency_Divider&amp;diff=6037&amp;oldid=prev</id>
		<title>Cbira: Pagină nouă: Some applications need a clock signal with a lower frequency than the main clock of a circuit (this is the 50MHz oscillator on the board development with FPGA). Frequency and perio...</title>
		<link rel="alternate" type="text/html" href="http://wiki.dcae.pub.ro/index.php?title=The_Frequency_Divider&amp;diff=6037&amp;oldid=prev"/>
		<updated>2018-05-10T06:52:36Z</updated>

		<summary type="html">&lt;p&gt;Pagină nouă: Some applications need a clock signal with a lower frequency than the main clock of a circuit (this is the 50MHz oscillator on the board development with FPGA). Frequency and perio...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Pagină nouă&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Some applications need a clock signal with a lower frequency than the main clock of a circuit (this is the 50MHz oscillator on the board&lt;br /&gt;
development with FPGA). Frequency and period of a signal are inversely proportional (f = 1 / T), so half-frequency implies doubling the period. A 50MHz signal has a 20ns period.&lt;br /&gt;
&lt;br /&gt;
As seen in Laboratory 3, the simplest divider is a numerator. But this implementation has limitations. Each bit has a frequency twice as low as the previous bit, so there is a discreet set of possible frequency values ​​that this implementation can provide. For example, for the 50MHz clock, the possible output values ​​are: 25MHz, 12.5MHz, 6.25MHz, 3.125MHz, 1.5625MHz, etc. If we want a clock signal with the 1Hz frequency, this deployment can not provide it.&lt;br /&gt;
&lt;br /&gt;
[[File: divfreq0.png | thumb | Example of frequency divider with limit 4. Notice the time of exit signal between the two markers as 220ns]]&lt;br /&gt;
&lt;br /&gt;
To solve this requirement, a numerator will be used, but otherwise. Instead of insulating a bit to be used as a clock signal, the counter will be given a counting limit value, and when that value is reached, the counter negates the output clock signal according to the waveforms of figure. Therefore, if the clock time of the counter is &amp;#039;&amp;#039; Tc &amp;#039;&amp;#039;, then the counter will increment at each &amp;#039;&amp;#039; Tc &amp;#039;&amp;#039; time units (each clock queue), meaning that it will reach the limit value, denoted &amp;#039;&amp;#039; n &amp;#039;&amp;#039; after &amp;#039;n * Tc&amp;#039; &amp;#039;time units. The delay of a clock input from the output register also introduces a clock period, therefore the output signal changes after each &amp;#039;&amp;#039; (n + 1) * Tc &amp;#039;&amp;#039; time units. Thus, the period of the output signal is given by changing it twice (0 -&amp;gt; 1, 1 -&amp;gt; 0), a change that lasts up to two complete counts up to the &amp;#039;n&amp;#039; limit. So, the output signal is &amp;#039;Tn = 2 * (n + 1) * Tc&amp;#039;. Passing in frequency, &amp;#039;&amp;#039; fn = fc / (2 * (n + 1)) &amp;#039;&amp;#039;, where &amp;#039;&amp;#039; n &amp;#039;&amp;#039; is the limit value given to the counter.&lt;br /&gt;
&lt;br /&gt;
It can be noticed that this implementation can not generate any output frequency, but the set of possible values ​​is higher than the previous set.&lt;br /&gt;
&lt;br /&gt;
== Interface ==&lt;br /&gt;
&lt;br /&gt;
The frequency divider interface will contain the following signals:&lt;br /&gt;
* clock signal and reset signal as inputs (being a sequential circuit);&lt;br /&gt;
* limit value given as input (the bit number for this input is specified taking into account the maximum limit value that can be given in the current application);&lt;br /&gt;
* clock divided clock, given as output of the circuit.&lt;br /&gt;
&lt;br /&gt;
== Implementation ==&lt;br /&gt;
&lt;br /&gt;
The implementation of this circuit is done using an internal register for counting (with bit size equal to the port for the limit value - the counter must be able to reach the limit value), and a register for the divided clock signal output. The counting register increments until it reaches the limit value, in which case its value becomes 0, and the output register value is denied.&lt;/div&gt;</summary>
		<author><name>Cbira</name></author>
	</entry>
</feed>