欢迎光临散文网 会员登陆 & 注册

带符号的4路并行概率计算乘加器

2023-07-13 19:08 作者:恶人老李  | 我要投稿

clc;clear;close all;

%带符号的4路并行概率计算乘加器

%2023年6月5日16:28:34

%也就是实现这个电路的功能

%8bit带符号数,只分析7bit就好,补码转换在verilog很简单

n = 8-1;%Ab bit

m = 9-1;%Bb bit

errmap = zeros(2^n,2^m);

for i = 1:2^n

    for j =1:2^m

        Ab = i-1;

        Bb = j-1;

        count = 40;%每一个组合算count次

        thiserr = zeros(1,count);

        for k = 1:count

            rand1 = randi([0,2^(n-2)],1,2^(n-2));%时钟缩短为2^(n-2)周期

            rand2 = rand1 + 2^(n-2);

            rand3 = rand2 + 2^(n-2);

            rand4 = rand3 + 2^(n-2);

            p1 = Ab>rand1;

            p2 = Ab>rand2;

            p3 = Ab>rand3;

            p4 = Ab>rand4;

            pm1 = Bb * p1;

            pm2 = Bb * p2;

            pm3 = Bb * p3;

            pm4 = Bb * p4;

            AbBb_s = sum(pm1)+sum(pm2)+sum(pm3)+sum(pm4);

            AbBb = Ab * Bb;

            thiserr(k) = abs(AbBb_s-AbBb)/AbBb;

        end

        errmap(i,j) = mean(thiserr);

    end

end

figure;

surf(0:2^m-1, 0:2^n-1, errmap);

xlabel('Bb');

ylabel('Ab');

zlabel('误差');

title('概率计算与直接计算的误差');


带符号的4路并行概率计算乘加器的评论 (共 条)

分享到微博请遵守国家法律