咱們討論簡化的RISC CPU設計。
2.RISC CPU結構
④算數(shù)運算器
算術邏輯運算單元 根據(jù)輸入的8種不同操作碼分別實現(xiàn)相應的加、與、異或、跳轉等8種基本操作運算。利用這幾種基本運算可以實現(xiàn)很多種其它運算以及邏輯判斷等操作。
其VerilogHDL 程序見下面的模塊:
//------------------------------------------
module alu (alu_out, zero, data, accum, alu_clk, opcode);
output [7:0]alu_out;
output zero;
input [7:0] data, accum;
input [2:0] opcode;
input alu_clk;
reg [7:0] alu_out;
parameter HLT =3’b000,
SKZ =3’b001,
ADD =3’b010,
ANDD =3’b011,
XORR =3’b100,
LDA =3’b101,
STO =3’b110,
JMP =3’b111;
assign zero = !accum;
always @(posedgealu_clk)
begin //操作碼來自指令寄存器的輸出opc_iaddr<15..0>的低3位
casex (opcode)
HLT: alu_out<=accum;
SKZ: alu_out<=accum;
ADD: alu_out<=data+accum;
ANDD: alu_out<=data&accum;
XORR: alu_out<=data^accum;
LDA: alu_out<=data;
STO: alu_out<=accum;
JMP: alu_out<=accum;
default: alu_out<=8'bxxxx_xxxx;
endcase
end
endmodule
//------------------------------------------
-
FPGA
+關注
關注
1630文章
21791瀏覽量
605092 -
RISC
+關注
關注
6文章
465瀏覽量
83809
原文標題:跟Raul學FPGA——第七十三篇
文章出處:【微信號:Raul_Woo,微信公眾號:工控周刊】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
評論