0% found this document useful (0 votes)
19 views52 pages

07 - Combinational Logic - Comparators

The document describes the design and implementation of comparators for comparing binary numbers. It discusses one-bit, two-bit, three-bit and n-bit comparators using logic gates and VHDL. It also describes greater than/less than comparators and uses a generic parameter for a reconfigurable n-bit comparator circuit.

Uploaded by

Jorge Rey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views52 pages

07 - Combinational Logic - Comparators

The document describes the design and implementation of comparators for comparing binary numbers. It discusses one-bit, two-bit, three-bit and n-bit comparators using logic gates and VHDL. It also describes greater than/less than comparators and uses a generic parameter for a reconfigurable n-bit comparator circuit.

Uploaded by

Jorge Rey
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 52

Combinational Logic:

COMPARATORS

Digital Systems Design


OBJECTIVES
• Describe combinational logic circuits
• Design multiplexers and
demultiplexers
• Design decoders and encoders
• Design code converters
• Design comparison circuits
• Design Arithmetic circuits
• Write VHDL codes for basic
combinational circuits
ONE-bit comparator
ONE-bit comparator

Designed Circuit

Quartus Generated Circuit


TWO-bit comparator – Hierarchical implementation
THREE-bit comparator
• Two binary numbers are equal if their corresponding bits are equal.

x : IN STD_LOGIC_VECTOR (2 DOWNTO 0)
3
Comparator q : OUT STD_LOGIC

y : IN STD_LOGIC_VECTOR (2 DOWNTO 0)
3
THREE-bit comparator
• Two binary numbers are equal if their corresponding bits are equal.

x : IN STD_LOGIC_VECTOR (2 DOWNTO 0)
3
Comparator q : OUT STD_LOGIC

y : IN STD_LOGIC_VECTOR (2 DOWNTO 0)
3

𝑥 = 𝑦 ⇒ 𝑥(2)⨁𝑦(2) (𝑥1)⨁𝑦(1) 𝑥 0 ⨁𝑦(0) = 1


THREE-bit comparator
3-bit Comparator VHDL Code

Quartus Generated Circuit


GENERIC statement
• GENERIC is a way of specifying a generic parameter

• A static parameter that can be modified and adapted to different


applications.

• The purpose is to confer the code more flexibility and reusability.


GENERIC statement

• A GENERIC must be declared in the ENTITY.


• The specified parameter will then be truly global (that is, visible to the
whole design, including the ENTITY itself ).
Example:

• Design a combinational circuit that receives as input n-bit vector, and


its output will be ‘1’ if all bits of the input are 1´s.
Example: AND Reduction

N inputs
Example: AND Reduction

x(n-1)
´1´

x(2)
´1´

x(1)
´1´

x(0)
´1´
Example: AND Reduction
Example: AND Reduction
Example: AND Reduction
Example: AND Reduction
Example: AND Reduction
Example: AND Reduction
Example: AND Reduction
GENERATE Statement
• GENERATE is a concurrent statement.
• It allows a section of code to be repeated a number of times, thus
creating several instances of the same assignments.

• Notice that GENERATE must be labeled.


N-bit Equality

• Let´s go back to the problem of the generic N-bit equality

x : IN STD_LOGIC_VECTOR (N-1 DOWNTO 0)


N Lg/ls eq : OUT STD_LOGIC
Comparator
y : IN STD_LOGIC_VECTOR (N-1 DOWNTO 0)
N
N-bit Equality
x(n-1) in0
1-Bit eq
Comparator
y(n-1) in1

inN
eq
andReduction eq
x(1) in0
1-Bit
in1
eq
Comparator in0
y(1) in1

x(0) in0
1-Bit eq
Comparator
y(0) in1
N-bit Equality
N-bit Equality
N-bit Equality
N-bit Comparator Instantiation with 4-bits Quartus Generated Circuit
N-bit Equality
N-bit Comparator Instantiation with 8-bits Quartus Generated Circuit
GreaterThan – LessThan Comparator
• A circuit to determine whether one binary number is greater than
another, or less than another.

x : IN STD_LOGIC_VECTOR (2 DOWNTO 0) eq : OUT STD_LOGIC


3 Lg/ls
Comparator Lg : OUT STD_LOGIC
y : IN STD_LOGIC_VECTOR (2 DOWNTO 0)
3 Ls : OUT STD_LOGIC
GreaterThan – LessThan Comparator

x :=“101” x :=“101”

y :=“110” y :=“011”

x :=“011” x :=“010”

y :=“011” y :=“011”
GreaterThan – LessThan Comparator

x :=“101” ‘0’ x :=“101” ‘0’


‘0’ ‘1’
y :=“110” y :=“011”
‘1’ ‘0’

x :=“011” ‘1’ x :=“010” ‘0’


‘0’ ‘0’
y :=“011” y :=“011”
‘0’ ‘1’
THREE-bit GreaterThan
x2 x1 x0 y2 y1 y0 LG x2 x1 x0 y2 y1 y0 LG
0 0 0 0 0 0 0 1 0 0 0 0 0 1
0 0 0 0 0 1 0 1 0 0 0 0 1 1
0 0 0 0 1 0 0 1 0 0 0 1 0 1
0 0 0 0 1 1 0 1 0 0 0 1 1 1
0 0 0 1 0 0 0 1 0 0 1 0 0 0
0 0 0 1 0 1 0 1 0 0 1 0 1 0
0 0 0 1 1 0 0 1 0 0 1 1 0 0
0 0 0 1 1 1 0 1 0 0 1 1 1 0
0 0 1 0 0 0 0 1 0 1 0 0 0 1
0 0 1 0 0 1 0 1 0 1 0 0 1 1
0 0 1 0 1 0 0 1 0 1 0 1 0 1
0 0 1 0 1 1 0 1 0 1 0 1 1 1
0 0 1 1 0 0 0 1 0 1 1 0 0 1
0 0 1 1 0 1 0 1 0 1 1 0 1 0
0 0 1 1 1 0 0 1 0 1 1 1 0 0
0 0 1 1 1 1 0 1 0 1 1 1 1 0
0 1 0 0 0 0 1 1 1 0 0 0 0 1
0 1 0 0 0 1 1 1 1 0 0 0 1 1
0 1 0 0 1 0 0 1 1 0 0 1 0 1
0 1 0 0 1 1 0 1 1 0 0 1 1 1
0 1 0 1 0 0 0 1 1 0 1 0 0 1
0 1 0 1 0 1 0 1 1 0 1 0 1 1
0 1 0 1 1 0 0 1 1 0 1 1 0 0
0 1 0 1 1 1 0 1 1 0 1 1 1 0
0 1 1 0 0 0 1 1 1 1 0 0 0 1
0 1 1 0 0 1 1 1 1 1 0 0 1 1
0 1 1 0 1 0 1 1 1 1 0 1 0 1
0 1 1 0 1 1 0 1 1 1 0 1 1 1
0 1 1 1 0 0 0 1 1 1 1 0 0 1
0 1 1 1 0 1 0 1 1 1 1 0 1 1
0 1 1 1 1 0 0 1 1 1 1 1 0 1
0 1 1 1 1 1 0 1 1 1 1 1 1 0
THREE-bit comparator
x2 x1 x0 y2 y1 y0 LG x2 x1 x0 y2 y1 y0 LG
0 0 0 0 0 0 0 m0 1 0 0 0 0 0 1 m32 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 0 0 0 0 1 0 m1 1 0 0 0 0 1 1 m33 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 0 0 0 1 0 0 m2 1 0 0 0 1 0 1 m34 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 0 0 0 1 1 0 m3 1 0 0 0 1 1 1 m35 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 0 0 1 0 0 0 m4 1 0 0 1 0 0 0 m36
0 0 0 1 0 1 0 m5 1 0 0 1 0 1 0 m37
0 0 0 1 1 0 0 m6 1 0 0 1 1 0 0 m38
0 0 0 1 1 1 0 m7 1 0 0 1 1 1 0 m39
0 0 1 0 0 0 0 m8 1 0 1 0 0 0 1 m40 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 0 1 0 0 1 0 m9 1 0 1 0 0 1 1 m41 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 0 1 0 1 0 0 m10 1 0 1 0 1 0 1 m42 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 0 1 0 1 1 0 m11 1 0 1 0 1 1 1 m43 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 0 1 1 0 0 0 m12 1 0 1 1 0 0 1 m44 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 0 1 1 0 1 0 m13 1 0 1 1 0 1 0 m45
0 0 1 1 1 0 0 m14 1 0 1 1 1 0 0 m46
0 0 1 1 1 1 0 m15 1 0 1 1 1 1 0 m47
0 1 0 0 0 0 1 m16 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0 1 1 0 0 0 0 1 m48 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 0 0 0 1 1 m17 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0 1 1 0 0 0 1 1 m49 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 0 0 1 0 0 m18 1 1 0 0 1 0 1 m50 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 0 0 1 1 0 m19 1 1 0 0 1 1 1 m51 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 0 1 0 0 0 m20 1 1 0 1 0 0 1 m52 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 0 1 0 1 0 m21 1 1 0 1 0 1 1 m53 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 0 1 1 0 0 m22 1 1 0 1 1 0 0 m54
0 1 0 1 1 1 0 m23 1 1 0 1 1 1 0 m55
0 1 1 0 0 0 1 m24 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0 1 1 1 0 0 0 1 m56 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 1 0 0 1 1 m25 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0 1 1 1 0 0 1 1 m57 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 1 0 1 0 1 m26 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0 1 1 1 0 1 0 1 m58 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 1 0 1 1 0 m27 1 1 1 0 1 1 1 m59 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 1 1 0 0 0 m28 1 1 1 1 0 0 1 m60 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 1 1 0 1 0 m29 1 1 1 1 0 1 1 m61 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 1 1 1 0 0 m30 1 1 1 1 1 0 1 m62 → 𝑥2 𝑥1 𝑥0 𝑦2 𝑦1 𝑦0
0 1 1 1 1 1 0 m31 1 1 1 1 1 1 0 m63
THREE-bit GreaterThan
Table 1
Group minterm Binary
x2 x1 x0 y2 y1 y0 Minterm
0 - - - - - - -
0 1 0 0 0 0 m16
m16 0 1 0 0 0 0
0 1 0 0 0 1 m17 1
m32 1 0 0 0 0 0
0 1 1 0 0 0 m24
m17 0 1 0 0 0 1
0 1 1 0 0 1 m25
m24 0 1 1 0 0 0
0 1 1 0 1 0 m26
m33 1 0 0 0 0 1
1 0 0 0 0 0 m32 2
m34 1 0 0 0 1 0
1 0 0 0 0 1 m33
m40 1 0 1 0 0 0
1 0 0 0 1 0 m34
m48 1 1 0 0 0 0
1 0 0 0 1 1 m35
m25 0 1 1 0 0 1
1 0 1 0 0 0 m40
m26 0 1 1 0 1 0
1 0 1 0 0 1 m41
m35 1 0 0 0 1 1
1 0 1 0 1 0 m42
m41 1 0 1 0 0 1
1 0 1 0 1 1 m43
3 m42 1 0 1 0 1 0
1 0 1 1 0 0 m44
m44 1 0 1 1 0 0
1 1 0 0 0 0 m48
m49 1 1 0 0 0 1
1 1 0 0 0 1 m49
m50 1 1 0 0 1 0
1 1 0 0 1 0 m50
m52 1 1 0 1 0 0
1 1 0 0 1 1 m51
m43 1 0 1 0 1 1
1 1 0 1 0 0 m52
4 m51 1 1 0 0 1 1
m53 1 1 0 1 0 1
Table 2
Group minterm Binary

THREE-bit GreaterThan 0
m16-m17
- -
0
-
1
- -
0 0
-
0
-
-
Table 1 m16-m24 0 1 - 0 0 0
Group minterm Binary m32-m33 1 0 0 0 0 -
1
0 - - - - - - - m32-m24 1 0 0 0 - 0
m16 0 1 0 0 0 0 m32-m40 1 0 - 0 0 0
1 m32-m48 1 - 0 0 0 0
m32 1 0 0 0 0 0
m17 0 1 0 0 0 1 m17-m25 0 1 - 0 0 1
m24 0 1 1 0 0 0 m24-m25 0 1 1 0 0 -
m33 1 0 0 0 0 1 m24-m26 0 1 1 0 - 0
2 m34-m35 1 0 0 0 1 -
m34 1 0 0 0 1 0
m40 1 0 1 0 0 0 m34-m42 1 0 - 0 1 0
m48 1 1 0 0 0 0 2 m40-m41 1 0 1 0 0 -
m25 0 1 1 0 0 1 m40-m42 1 0 1 0 - 0
m26 0 1 1 0 1 0 m40-m44 1 0 1 - 0 0
m35 1 0 0 0 1 1 m48-m49 1 1 0 0 0 -
m41 1 0 1 0 0 1 m48-m50 1 1 0 0 - 0
3 m42 1 0 1 0 1 0 m48-m52 1 1 0 - 0 0
m44 1 0 1 1 0 0 m35-m43 1 0 - 0 1 1
m49 1 1 0 0 0 1 m35-m51 1 - 0 0 1 1
m50 1 1 0 0 1 0 m41-m43 1 0 1 0 - 1
m52 1 1 0 1 0 0 m42-m43 1 0 1 0 1 -
3
m43 1 0 1 0 1 1 m49-m51 1 1 0 0 - 1
4 m51 1 1 0 0 1 1 m49-m53 1 1 0 - 0 1
m53 1 1 0 1 0 1 m50-m51 1 1 0 0 1 -
m52-m53 1 1 0 1 0 -
THREE-bit comparator Group minterm
Table 3
Binary
Table 2 m16-m17-m24-m25 0 1 0 0 0 -
Group minterm Binary
0 - - - - - - -
m16-m17-m48-m49 - 1 0 0 0 -
m16-m17 0 1 0 0 0 - m16-m24-m17-m25 0 1 - 0 0 -
m16-m24 0 1 - 0 0 0 m32-m33-m34-m35 1 0 0 0 - -
m32-m33 1 0 0 0 0 - 1 m32-m33-m40-m41 1 0 - 0 0 -
1
m32-m24 1 0 0 0 - 0
m32-m40 1 0 - 0 0 0
m32-m33-m48-m49 1 - 0 0 0 -
m32-m48 1 - 0 0 0 0 m32-m40-m34-m42 1 0 - 0 - 0
m17-m25 0 1 - 0 0 1 m32-m24 1 0 0 0 - 0
m24-m25 0 1 1 0 0 - m32-m48 1 - 0 0 0 0
m24-m26 0 1 1 0 - 0
m24-m26 0 1 1 0 - 0
m34-m35 1 0 0 0 1 -
m34-m42 1 0 - 0 1 0 m34-m35-m42-m43 1 0 - 0 1 -
2 m40-m41 1 0 1 0 0 - m34-m35-m50-m51 1 - 0 0 1 -
m40-m42 1 0 1 0 - 0 m34-m42-m35-m43 1 0 - 0 1 -
m40-m44 1 0 1 - 0 0
m40-m42-m41-m43 1 0 1 0 - -
m48-m49 1 1 0 0 0 -
m48-m50 1 1 0 0 - 0 2 m48-m49-m52-m53 1 1 0- 0-
m48-m52 1 1 0 - 0 0 m48-m52-m49-m53 1 1 0- 0-
m35-m43 1 0 - 0 1 1 m24-m26 0 1 1 0 - 0
m35-m51 1 - 0 0 1 1
m40-m42 1 0 1 0 - 0
m41-m43 1 0 1 0 - 1
m42-m43 1 0 1 0 1 - m40-m44 1 0 1 - 0 0
3
m49-m51 1 1 0 0 - 1 m48-m50 1 1 0 0 - 0
m49-m53 1 1 0 - 0 1 m35-m51 1 - 0 0 1 1
m50-m51 1 1 0 0 1 - 4
m49-m51 1 1 0 0 - 1
m52-m53 1 1 0 1 0 -
THREE-bit GreaterThan Table 4
Group minterm Binary m16 m17 m24 m25 m26 m32 m33 m34 m35 m40 m41 m42 m43 m44 m48 m49 m50 m51 m52 m53
m16-m17-m24-m25 0 1 - 0 0 - X X X X
m16-m17-m48-m49 - 1 0 0 0 - X X X X
m16-m24-m17-m25 0 1 - 0 0 - X X X X
m32-m33-m34-m35 1 0 0 0 - - X X X X
1 m32-m33-m40-m41 1 0 - 0 0 - X X X X
m32-m33-m48-m49 1 - 0 0 0 - X X X X
m32-m40-m34-m42 1 0 - 0 - 0 X X X X
m32-m24 1 0 0 0 - 0 X X
m32-m48 1 - 0 0 0 0 X X
m24-m26 0 1 1 0 - 0 X X
m34-m35-m42-m43 1 0 - 0 1 - X X X X
m34-m35-m50-m51 1 - 0 0 1 - X X X X
m34-m42-m35-m43 1 0 - 0 1 - X X X X
m40-m42-m41-m43 1 0 1 0 - - X X X X
2 m48-m49-m52-m53 1 1 0- 0 - X X X X
m48-m52-m49-m53 1 1 0- 0 - X X X X
m24-m26 0 1 1 0 - 0 X X
m40-m42 1 0 1 0 - 0 X X
m40-m44 1 0 1 - 0 0 X X
m48-m50 1 1 0 0 - 0 X X
m35-m51 1 - 0 0 1 1 X X
4
m49-m51 1 1 0 0 - 1 X X

𝑓 = 𝑥2 𝑥1 𝑥0 𝑦1 𝑥0 +
THREE-bit GreaterThan Table 4
Group minterm Binary m16 m17 m24 m25 m26 m32 m33 m34 m35 m40 m41 m42 m43 m44 m48 m49 m50 m51 m52 m53
m16-m17-m24-m25 0 1 - 0 0 - X X X X
m16-m17-m48-m49 - 1 0 0 0 - X X X X
m16-m24-m17-m25 0 1 - 0 0 - X X X X
m32-m33-m34-m35 1 0 0 0 - - X X X X
1 m32-m33-m40-m41 1 0 - 0 0 - X X X X
m32-m33-m48-m49 1 - 0 0 0 - X X X X
m32-m40-m34-m42 1 0 - 0 - 0 X X X X
m32-m24 1 0 0 0 - 0 X X
m32-m48 1 - 0 0 0 0 X X
m24-m26 0 1 1 0 - 0 X X
m34-m35-m42-m43 1 0 - 0 1 - X X X X
m34-m35-m50-m51 1 - 0 0 1 - X X X X
m34-m42-m35-m43 1 0 - 0 1 - X X X X
m40-m42-m41-m43 1 0 1 0 - - X X X X
2 m48-m49-m52-m53 1 1 0- 0 - X X X X
m48-m52-m49-m53 1 1 0- 0 - X X X X
m24-m26 0 1 1 0 - 0 X X
m40-m42 1 0 1 0 - 0 X X
m40-m44 1 0 1 - 0 0 X X
m48-m50 1 1 0 0 - 0 X X
m35-m51 1 - 0 0 1 1 X X
4
m49-m51 1 1 0 0 - 1 X X

𝑓 = 𝑥2 𝑥1 𝑥0 𝑦1 𝑥0 + 𝑥2 𝑥1 𝑦2 𝑦1
THREE-bit GreaterThan Table 4
Group minterm Binary m16 m17 m24 m25 m26 m32 m33 m34 m35 m40 m41 m42 m43 m44 m48 m49 m50 m51 m52 m53
m16-m17-m24-m25 0 1 - 0 0 - X X X X
m16-m17-m48-m49 - 1 0 0 0 - X X X X
m16-m24-m17-m25 0 1 - 0 0 - X X X X
m32-m33-m34-m35 1 0 0 0 - - X X X X
1 m32-m33-m40-m41 1 0 - 0 0 - X X X X
m32-m33-m48-m49 1 - 0 0 0 - X X X X
m32-m40-m34-m42 1 0 - 0 - 0 X X X X
m32-m24 1 0 0 0 - 0 X X
m32-m48 1 - 0 0 0 0 X X
m24-m26 0 1 1 0 - 0 X X
m34-m35-m42-m43 1 0 - 0 1 - X X X X
m34-m35-m50-m51 1 - 0 0 1 - X X X X
m34-m42-m35-m43 1 0 - 0 1 - X X X X
m40-m42-m41-m43 1 0 1 0 - - X X X X
2 m48-m49-m52-m53 1 1 0- 0 - X X X X
m48-m52-m49-m53 1 1 0- 0 - X X X X
m24-m26 0 1 1 0 - 0 X X
m40-m42 1 0 1 0 - 0 X X
m40-m44 1 0 1 - 0 0 X X
m48-m50 1 1 0 0 - 0 X X
m35-m51 1 - 0 0 1 1 X X
4
m49-m51 1 1 0 0 - 1 X X

𝑓 = 𝑥2 𝑥1 𝑥0 𝑦1 𝑥0 + 𝑥2 𝑥1 𝑦2 𝑦1 + 𝑥2 𝑥1 𝑥0 𝑦2
THREE-bit GreaterThan Table 4
Group minterm Binary m16 m17 m24 m25 m26 m32 m33 m34 m35 m40 m41 m42 m43 m44 m48 m49 m50 m51 m52 m53
m16-m17-m24-m25 0 1 - 0 0 - X X X X
m16-m17-m48-m49 - 1 0 0 0 - X X X X
m16-m24-m17-m25 0 1 - 0 0 - X X X X
m32-m33-m34-m35 1 0 0 0 - - X X X X
1 m32-m33-m40-m41 1 0 - 0 0 - X X X X
m32-m33-m48-m49 1 - 0 0 0 - X X X X
m32-m40-m34-m42 1 0 - 0 - 0 X X X X
m32-m24 1 0 0 0 - 0 X X
m32-m48 1 - 0 0 0 0 X X
m24-m26 0 1 1 0 - 0 X X
m34-m35-m42-m43 1 0 - 0 1 - X X X X
m34-m35-m50-m51 1 - 0 0 1 - X X X X
m34-m42-m35-m43 1 0 - 0 1 - X X X X
m40-m42-m41-m43 1 0 1 0 - - X X X X
2 m48-m49-m52-m53 1 1 0- 0 - X X X X
m48-m52-m49-m53 1 1 0- 0 - X X X X
m24-m26 0 1 1 0 - 0 X X
m40-m42 1 0 1 0 - 0 X X
m40-m44 1 0 1 - 0 0 X X
m48-m50 1 1 0 0 - 0 X X
m35-m51 1 - 0 0 1 1 X X
4
m49-m51 1 1 0 0 - 1 X X

𝑓 = 𝑥2 𝑥1 𝑥0 𝑦1 𝑥0 + 𝑥2 𝑥1 𝑦2 𝑦1 + 𝑥2 𝑥1 𝑥0 𝑦2 + 𝑥2 𝑥1 𝑥0 𝑦1
GreaterThan – LessThan Comparator
• To determine whether one binary number is greater than another, the
most significant bits (MSBs) are tested first:
• If they were not equal, the number with an MSB of 1 is the larger number.
• If the MSBs are equal, the next bit positions are tested using the same
process.
• The complement of the process is used to determine whether one
binary number is less than another.
GreaterThan – LessThan Comparator
• To determine whether one binary number is greater than another, the
most significant bits (MSBs) are tested first:
• If they were not equal, the number with an MSB of 1 is the larger number.
• If the MSBs are equal, the next bit positions are tested using the same
process.
• The complement of the process is used to determine whether one
binary number is less than another.
GreaterThan – LessThan Comparator

• To determine whether one binary number is greater than another, the


most significant bits (MSBs) are tested first:
• If they were not equal, the number with an MSB of 1 is the larger number.
• If the MSBs are equal, the next bit positions are tested using the same
process.
• The complement of the process is used to determine whether one
binary number is less than another.
GreaterThan – LessThan Comparator

• To determine whether one binary number is greater than another, the


most significant bits (MSBs) are tested first:
• If they were not equal, the number with an MSB of 1 is the larger number.
• If the MSBs are equal, the next bit positions are tested using the same
process.
• The complement of the process is used to determine whether one
binary number is less than another.
GreaterThan – LessThan Comparator
𝑥 > 𝑦 ⇒ 𝑥 2 𝑦 2 + (𝑥 2 𝑦 2 ) 𝑥 1 𝑦 1 + (𝑥 1 𝑦 1 ) 𝑥 0 𝑦 0 =1
x2 x1 x0 y2 y1 y0 LG x2' x1' x0' y2' y1' y0' x1y1′ x1′y1 (x1′y1)' (x0y0′) (x1′y1)′(x0y0′) x1y1′ + (x1′y1)′(x0y0′) x2y2' x2'y2 (x2'y2)' G
0 0 0 0 0 0 0 1 1 1 1 1 1 0 0 1 0 0 0 0 0 1 0
0 0 0 0 0 1 0 1 1 1 1 1 0 0 0 1 0 0 0 0 0 1 0
0 0 0 0 1 0 0 1 1 1 1 0 1 0 1 0 0 0 0 0 0 1 0
0 0 0 0 1 1 0 1 1 1 1 0 0 0 1 0 0 0 0 0 0 1 0
0 0 0 1 0 0 0 1 1 1 0 1 1 0 0 1 0 0 0 0 1 0 0
0 0 0 1 0 1 0 1 1 1 0 1 0 0 0 1 0 0 0 0 1 0 0
0 0 0 1 1 0 0 1 1 1 0 0 1 0 1 0 0 0 0 0 1 0 0
0 0 0 1 1 1 0 1 1 1 0 0 0 0 1 0 0 0 0 0 1 0 0
0 0 1 0 0 0 1 1 1 0 1 1 1 0 0 1 1 1 1 0 0 1 1
0 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 0 0 0 0 0 1 0
0 0 1 0 1 0 0 1 1 0 1 0 1 0 1 0 1 0 0 0 0 1 0
0 0 1 0 1 1 0 1 1 0 1 0 0 0 1 0 0 0 0 0 0 1 0
0 0 1 1 0 0 0 1 1 0 0 1 1 0 0 1 1 1 1 0 1 0 0
0 0 1 1 0 1 0 1 1 0 0 1 0 0 0 1 0 0 0 0 1 0 0
0 0 1 1 1 0 0 1 1 0 0 0 1 0 1 0 1 0 0 0 1 0 0
0 0 1 1 1 1 0 1 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0
0 1 0 0 0 0 1 1 0 1 1 1 1 1 0 1 0 0 1 0 0 1 1
0 1 0 0 0 1 1 1 0 1 1 1 0 1 0 1 0 0 1 0 0 1 1
0 1 0 0 1 0 0 1 0 1 1 0 1 0 0 1 0 0 0 0 0 1 0
0 1 0 0 1 1 0 1 0 1 1 0 0 0 0 1 0 0 0 0 0 1 0
0 1 0 1 0 0 0 1 0 1 0 1 1 1 0 1 0 0 1 0 1 0 0
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 0 1 0 0
0 1 0 1 1 0 0 1 0 1 0 0 1 0 0 1 0 0 0 0 1 0 0
0 1 0 1 1 1 0 1 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0
0 1 1 0 0 0 1 1 0 0 1 1 1 1 0 1 1 1 1 0 0 1 1
0 1 1 0 0 1 1 1 0 0 1 1 0 1 0 1 0 0 1 0 0 1 1
0 1 1 0 1 0 1 1 0 0 1 0 1 0 0 1 1 1 1 0 0 1 1
0 1 1 0 1 1 0 1 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0
0 1 1 1 0 0 0 1 0 0 0 1 1 1 0 1 1 1 1 0 1 0 0
0 1 1 1 0 1 0 1 0 0 0 1 0 1 0 1 0 0 1 0 1 0 0
0 1 1 1 1 0 0 1 0 0 0 0 1 0 0 1 1 1 1 0 1 0 0
0 1 1 1 1 1 0 1 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0
GreaterThan – LessThan Comparator
𝑥 > 𝑦 ⇒ 𝑥 2 𝑦 2 + (𝑥 2 𝑦 2 ) 𝑥 1 𝑦 1 + (𝑥 1 𝑦 1 ) 𝑥 0 𝑦 0 =1
x2 x1 x0 y2 y1 y0 LG x2' x1' x0' y2' y1' y0' x1y1′ x1′y1 (x1′y1)' (x0y0′) (x1′y1)′(x0y0′) x1y1′ + (x1′y1)′(x0y0′) x2y2' x2'y2 (x2'y2)' G
1 0 0 0 0 0 1 0 1 1 1 1 1 0 0 1 0 0 0 1 0 1 1
1 0 0 0 0 1 1 0 1 1 1 1 0 0 0 1 0 0 0 1 0 1 1
1 0 0 0 1 0 1 0 1 1 1 0 1 0 1 0 0 0 0 1 0 1 1
1 0 0 0 1 1 1 0 1 1 1 0 0 0 1 0 0 0 0 1 0 1 1
1 0 0 1 0 0 0 0 1 1 0 1 1 0 0 1 0 0 0 0 0 1 0
1 0 0 1 0 1 0 0 1 1 0 1 0 0 0 1 0 0 0 0 0 1 0
1 0 0 1 1 0 0 0 1 1 0 0 1 0 1 0 0 0 0 0 0 1 0
1 0 0 1 1 1 0 0 1 1 0 0 0 0 1 0 0 0 0 0 0 1 0
1 0 1 0 0 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 1 1
1 0 1 0 0 1 1 0 1 0 1 1 0 0 0 1 0 0 0 1 0 1 1
1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0 1 0 1 1
1 0 1 0 1 1 1 0 1 0 1 0 0 0 1 0 0 0 0 1 0 1 1
1 0 1 1 0 0 1 0 1 0 0 1 1 0 0 1 1 1 1 0 0 1 1
1 0 1 1 0 1 0 0 1 0 0 1 0 0 0 1 0 0 0 0 0 1 0
1 0 1 1 1 0 0 0 1 0 0 0 1 0 1 0 1 0 0 0 0 1 0
1 0 1 1 1 1 0 0 1 0 0 0 0 0 1 0 0 0 0 0 0 1 0
1 1 0 0 0 0 1 0 0 1 1 1 1 1 0 1 0 0 1 1 0 1 1
1 1 0 0 0 1 1 0 0 1 1 1 0 1 0 1 0 0 1 1 0 1 1
1 1 0 0 1 0 1 0 0 1 1 0 1 0 0 1 0 0 0 1 0 1 1
1 1 0 0 1 1 1 0 0 1 1 0 0 0 0 1 0 0 0 1 0 1 1
1 1 0 1 0 0 1 0 0 1 0 1 1 1 0 1 0 0 1 0 0 1 1
1 1 0 1 0 1 1 0 0 1 0 1 0 1 0 1 0 0 1 0 0 1 1
1 1 0 1 1 1 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0
1 1 1 0 0 0 1 0 0 0 1 1 1 1 0 1 1 1 1 1 0 1 1
1 1 1 0 0 1 1 0 0 0 1 1 0 1 0 1 0 0 1 1 0 1 1
1 1 1 0 1 0 1 0 0 0 1 0 1 0 0 1 1 1 1 1 0 1 1
1 1 1 0 1 1 1 0 0 0 1 0 0 0 0 1 0 0 0 1 0 1 1
1 1 1 1 0 0 1 0 0 0 0 1 1 1 0 1 1 1 1 0 0 1 1
1 1 1 1 0 1 1 0 0 0 0 1 0 1 0 1 0 0 1 0 0 1 1
1 1 1 1 1 0 1 0 0 0 0 0 1 0 0 1 1 1 1 0 0 1 1
1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 1 0
2-bit Lg-Ls Comparator

Lg

Ls
2-bit Lg-Ls Comparator

Lg

Ls
N-bit Equality
N-bit Generic Comparator VHDL Code

Quartus Generated Circuit


N-bit Equality
N-bit Generic Comparator VHDL Code

Quartus Generated Circuit

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy