fpga实现神经元

该博客介绍了如何使用FPGA来实现二输入的逻辑与或功能,通过加法器和状态机构建,未涉及乘法器。已通过仿真验证,但实际板子上的运行效果尚未测试。
摘要由CSDN通过智能技术生成

实现二输入逻辑与,逻辑或。没有用到乘法器,只用加法器和状态机,仿真没有问题,板子上运行还没有测试,仅供参考吧!

module perception(clk,en_start,en_train,data_in,rst_n,y_o,w_0);

input en_start;//神经元开始工作
input en_train;//是训练还是测试1训练,0测试
input clk;
input rst_n;//复位
input [3:0]data_in;
output y_o;//输出
output [12:0]w_0;
//reg [2:0]count_input;  //0 代表输入为0 0 1,    用case语句
    //1 代表输入为0 1 1,    实现net=w0*x1+w1*x2+w2*x3
    //2 代表输入为1 0 1,    x1、x2为输入,x3为偏置
    //3 代表输入为1 1 1,    w为参数




reg [2:0]ch_jud;  
//reg d_n;//参考值  
reg signed [12:0]net;  //神经元输入的和
reg o_n;//神经元的输出
reg signed [10:0]w00;//计算参数
reg signed [10:0]w01;
reg signed [10:0]w02;
reg signed [10:0]w10;//更新参数
reg signed [10:0]w11;
reg signed [10:0]w12;
//计数,控制计算状态
reg [4:0]state;
localparam IDLE=5'b00001,
NET_SUM=5'b00010,
JUDGE=5'b00100,
CHANGE=5'b01000,
UPDATE=5'b10000;
reg [10:0]ARF;
always@(posedge clk or negedge rst_n)
begin
if(!rst_n)
begin
state=IDLE;
w00=11'b00010011000;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值