「Verilog学习笔记」编写乘法器求解算法表达式

专栏前言

本专栏的内容主要是记录本人学习Verilog过程中的一些知识点,刷题网站用的是牛客网

复制代码
`timescale 1ns/1ns

module calculation(
	input clk,
	input rst_n,
	input [3:0] a,
	input [3:0] b,
	output [8:0] c
	);

	reg [8:0] data1, data2 ; 

	assign c = data2 ; 

	always @ (posedge clk or negedge rst_n) begin 
		if (!rst_n) data1 <= 0 ; 
		else data1 <= (a << 3) + (a << 2) + (b << 2) + (b << 0) ; 
	end

	always @ (posedge clk or negedge rst_n) begin 
		if (!rst_n) begin
			data1 <= 0 ; 
			data2 <= 0 ; 
		end
		else data2 <= data1 ; 
	end

endmodule
相关推荐
遇印记7 分钟前
大二java学习笔记:二维数组
java·笔记·学习
爱吃甜品的糯米团子39 分钟前
Linux 学习笔记之进程管理、网络基础与常用软件安装
linux·网络·学习
bnsarocket2 小时前
Verilog和FPGA的自学笔记6——计数器(D触发器同步+异步方案)
笔记·fpga开发·verilog·自学·硬件编程
博览鸿蒙2 小时前
FPGA职位经典笔/面试题(附答案与解析)
fpga开发
Purple Coder2 小时前
面试-上海电力大学研一的学习经验
学习
LK_073 小时前
【Open3D】Ch.3:顶点法向量估计 | Python
开发语言·笔记·python
饮浊酒3 小时前
Python学习-----小游戏之人生重开模拟器(普通版)
python·学习·游戏程序
li星野3 小时前
打工人日报#20251011
笔记·程序人生·fpga开发·学习方法
摇滚侠3 小时前
Spring Boot 3零基础教程,yml配置文件,笔记13
spring boot·redis·笔记
QT 小鲜肉3 小时前
【个人成长笔记】在Ubuntu中的Linux系统安装 anaconda 及其相关终端命令行
linux·笔记·深度学习·学习·ubuntu·学习方法