在數(shù)字 IC 設(shè)計(jì)中,總是需要對(duì)一些數(shù)據(jù)進(jìn)行 大小的比較 ,例如比較兩個(gè)或者三個(gè)以上的數(shù)據(jù)的大小,接著進(jìn)行排序,最終輸出等等。于是, 比較器 (Comparator)的數(shù)字邏輯電路就應(yīng)運(yùn)而生。
基于 8 位的數(shù)值比較器的 Verilog 代碼和 RTL 電路
module Comparator(
input wire [7:0] a , // 比較數(shù)
input wire [7:0] b , // 比較數(shù)
output reg result, // 比較結(jié)果
output reg equal // 比較結(jié)果
);
// 行為描述
always @(a or b) begin
if(a > b)
{equal,result} <= 2'b01; // a 比 b 大
else begin
if(a < b)
{equal,result} <= 2'b00; // a 比 b 小
else
{equal,result} <= 2'b10; // 相等
end
end
// 數(shù)據(jù)流描述
// assign equal = (a == b) ? 1 : 0;
// assign result = (a > b) ? 1 : 0;
endmodule

代碼詳解
對(duì)兩個(gè)**** 8 比特二進(jìn)制輸入信號(hào)的大小進(jìn)行判斷:如果 a 比較大,則 out 輸出高電平;如果 b 比較大,則 out 輸出低電平;如果 a 和 b 大小相等,那么,則 equal 輸出高電平,否則 equal 輸出低電平。
對(duì)于比較器的應(yīng)用呢,其實(shí),比較器在現(xiàn)實(shí)生活中也可以作為過(guò)濾器來(lái)使用。比如我們?cè)诮y(tǒng)計(jì)成績(jī)的時(shí)候,要把不及格的學(xué)生過(guò)濾掉,那么我們就可以利用比較器,過(guò)濾掉成績(jī)不及格的學(xué)生。當(dāng)輸入的成績(jī)小于 60 分的時(shí)候就不輸出顯示出來(lái),那么最后統(tǒng)計(jì)出來(lái)的都是成績(jī)合格的學(xué)生。
-
IC設(shè)計(jì)
+關(guān)注
關(guān)注
38文章
1369瀏覽量
107907 -
比較器
+關(guān)注
關(guān)注
14文章
1886瀏覽量
111426 -
二進(jìn)制
+關(guān)注
關(guān)注
2文章
809瀏覽量
42796 -
過(guò)濾器
+關(guān)注
關(guān)注
1文章
442瀏覽量
20835 -
數(shù)字邏輯電路
+關(guān)注
關(guān)注
0文章
106瀏覽量
16479
發(fā)布評(píng)論請(qǐng)先 登錄
數(shù)字電路設(shè)計(jì)之同步時(shí)序邏輯電路
【下載】《數(shù)字邏輯電路的ASIC設(shè)計(jì)》
數(shù)字邏輯電路
組合邏輯電路設(shè)計(jì)實(shí)驗(yàn)
VHDL硬件描述語(yǔ)言與數(shù)字邏輯電路設(shè)計(jì)
數(shù)字邏輯電路設(shè)計(jì)課程
數(shù)字邏輯電路設(shè)計(jì)實(shí)踐
定時(shí)控制器邏輯電路設(shè)計(jì)
數(shù)字電子鐘邏輯電路設(shè)計(jì)
VHDL硬件描述語(yǔ)言與數(shù)字邏輯電路設(shè)計(jì)
組合邏輯電路和時(shí)序邏輯電路比較_組合邏輯電路和時(shí)序邏輯電路有什么區(qū)別
時(shí)序邏輯電路設(shè)計(jì)之同步計(jì)數(shù)器

比較器的數(shù)字邏輯電路設(shè)計(jì)
評(píng)論