本文為大家帶來九款不同的除法運算電路設計方案,包括這九款模擬電路設計的原理及設計過程。
除法運算電路設計方案一:基于模擬乘法器的除法運算電路設計
該方案采用模擬乘法器做反饋支路,模擬乘法器有兩個輸入端,一個輸出端。對于該除法運算電路,必須保證i1=i2,電路引入的才是負反饋。即當UI1》0時,,U0‘《0;而UI1《0時,U0’》0,由于U0與UI1反相,故要求U0’與U0同符號。因此,當模擬乘法器的k小于零時,UI2應小于零;而k大于零時,UI2應大于零;即k與UI2同符號。同理,若乘法模擬器的輸出端通過電阻接集成運放的同相輸入端,則為保證電路引入的是負反饋,UI2與k符號應當相反。
在上述電路圖中,設集成運放為理想運放,則Un=Up=0,為虛地,i1=i2,則
UI1/R1=-Uo/R2=-kUI1UI2/R2
整理上式,得出輸出電壓
Uo=-R2UI1/kR1UI2
令R1=1K,R2=2K
則Uo=-2UI1/kUI2
?
除法運算電路設計方案二:二輸入的除法電路
設計一個二輸入的除法電路,需要利用對數和指數運算電路實現或者用模擬乘法器在集成運放反饋通路中的應用來實現。
接通電源后,將電路板的各管腳接好,u11、u12分別接兩個輸入端。由于有兩個變量對觀察u0帶來不變,在研究u0的變化趨勢是常常用控制變量法,即u11、u12中的一個不變,一個變化引起u0變化并觀察它的變化趨勢。
除法運算電路設計方案三:基于減法的除法器的算法
對于32的無符號除法,被除數a除以除數b,他們的商和余數一定不會超過32位。首先將a轉換成高32位為0,低32位為a的temp_a。把b轉換成高32位為b,低32位為0的temp_b。在每個周期開始時,先將temp_a左移一位,末尾補0,然后與b比較,是否大于b,是則temp_a減去temp_b將且加上1,否則繼續往下執行。上面的移位、比較和減法(視具體情況而定)要執行32次,執行結束后temp_a的高32位即為余數,低32位即為商。
verilog HDL代碼
/*
* module:div_rill
* file name:div_rill.v
* syn:yes
* author:network
* modify:rill
* date:2012-09-07
*/
module div_rill
(
input[31:0] a,
input[31:0] b,
output reg [31:0] yshang,
output reg [31:0] yyushu
);
reg[31:0] tempa;
reg[31:0] tempb;
reg[63:0] temp_a;
reg[63:0] temp_b;
integer i;
always @(a or b)
begin
tempa 《= a;
tempb 《= b;
end
always @(tempa or tempb)
begin
temp_a = {32‘h00000000,tempa};
temp_b = {tempb,32’h00000000};
for(i = 0;i 《 32;i = i + 1)
begin
temp_a = {temp_a[62:0],1‘b0};
if(temp_a[63:32] 》= tempb)
temp_a = temp_a - temp_b + 1’b1;
else
temp_a = temp_a;
end
yshang 《= temp_a[31:0];
yyushu 《= temp_a[63:32];
end
endmodule
/*************** EOF ******************/
testbench代碼
[html] view plain copy/*
* module:div_rill_tb
* file name:div_rill_tb.v
* syn:no
* author:rill
* date:2012-09-07
*/
`timescale 1ns/1ns
module div_rill_tb;
reg [31:0] a;
reg [31:0] b;
wire [31:0] yshang;
wire [31:0] yyushu;
initial
begin
#10 a = $random()%10000;
b = $random()%1000;
#100 a = $random()%1000;
b = $random()%100;
#100 a = $random()%100;
b = $random()%10;
#1000 $stop;
end
div_rill DIV_RILL
(
.a (a),
.b (b),
.yshang (yshang),
.yyushu (yyushu)
);
endmodule
/******** EOF ******************/
仿真結果
評論
查看更多