⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 resrcshr.v

📁 多个Verilog和vhdl程序例子
💻 V
字号:
// Without resource sharing you
// get an 8-bit adder and a 8-bit subtractor feeding a mux
module add_sub1(result, a, b, add_sub);
output [7:0] result;
input [7:0] a, b;
input add_sub;
reg [7:0] result;

always @(a or b or add_sub)
begin 
	if (add_sub)
		result = a + b;
	else
		result = a - b;
end

endmodule

// With manual resource sharing you 
// get less logic:
// 8 inverters feeding a mux feeding an 8-bit adder
module add_sub2(result, a, b, add_sub);
output [7:0] result;
input [7:0] a, b;
input add_sub;
reg [7:0] result;

always @(a or b or add_sub)
begin: label
	// If you label your always block, you can have local
	// declarations. I declared temp.
	reg [7:0] temp;
	if (add_sub)
		temp = b;
	else
		temp = ~b;
	result = a + temp + !add_sub;
end

endmodule

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -