咱們討論簡化的RISC CPU設(shè)計。
2.RISC CPU結(jié)構(gòu)
④算數(shù)運算器
算術(shù)邏輯運算單元 根據(jù)輸入的8種不同操作碼分別實現(xiàn)相應(yīng)的加、與、異或、跳轉(zhuǎ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
+關(guān)注
關(guān)注
1630文章
21767瀏覽量
604615 -
RISC
+關(guān)注
關(guān)注
6文章
463瀏覽量
83793
原文標(biāo)題:跟Raul學(xué)FPGA——第七十三篇
文章出處:【微信號:Raul_Woo,微信公眾號:工控周刊】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論