资源预览内容
第1页 / 共15页
第2页 / 共15页
第3页 / 共15页
第4页 / 共15页
第5页 / 共15页
第6页 / 共15页
第7页 / 共15页
第8页 / 共15页
第9页 / 共15页
第10页 / 共15页
亲,该文档总共15页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
32位ALU设计 VerilogHDL语言 modulealu alu da alu db alu clt alu shift alu zero out overflow out alu dc input 31 0 alu da input 31 0 alu db input 3 0 alu clt input 4 0 alu shift outputregalu zero out outputregoverflow out outputreg 31 0 alu dc wirealu zero wireoverflow wire 31 0 alu and 与结果wire 31 0 alu or 或结果wire 31 0 alu xor 异或结果reg 31 0 alu sll 左移结果reg 31 0 alu srl 右移结果reg 31 0 alu sra 算数右移wire 31 0 alu add 加减运算结果wirec2 加法器进位输出regSub 加法器控制端wire 31 0 alu db n b取非运算reg 31 0 alu db mux b的加减选择运算wireci 进位输出always begincase alu clt 0 alu dc alu and 逻辑与运算1 alu dc alu or 逻辑或运算 2 alu dc alu xor 逻辑异或运算3 alu dc alu sll 左移运算4 alu dc alu srl 右移运算5 alu dc alu sra 算数右移运算6 无符号加运算beginSub 0 alu dc alu add alu zero out 0 overflow out 0 end7 无符号减运算beginSub 1 alu dc alu add alu zero out 0 overflow out 0 end8 有符号加运算beginSub 0 alu dc alu add alu zero out alu zero overflow out overflow end9 有符号减运算beginSub 1 alu dc alu add alu zero out alu zero overflow out overflow end10 无符号小于置1运算beginSub 1 if c2 0 alu dc 1 elsealu dc 0 end11 有符号小于置1运算beginSub 1 if alu add 31 1 alu dc 1 elsealu dc 0 enddefault alu dc alu dc endcaseendassignalu and alu daalways begincase alu shift 0 alu sll alu da 1 alu sll alu da 1 2 alu sll alu da 2 3 alu sll alu da 3 4 alu sll alu da 4 5 alu sll alu da 5 6 alu sll alu da 6 7 alu sll alu da 7 8 alu sll alu da 8 9 alu sll alu da 9 10 alu sll alu da 10 11 alu sll alu da 11 12 alu sll alu da 12 13 alu sll alu da 13 14 alu sll alu da 14 15 alu sll alu da 15 16 alu sll alu da 16 17 alu sll alu da 17 18 alu sll alu da 18 19 alu sll alu da 19 20 alu sll alu da 20 21 alu sll alu da 21 22 alu sll alu da 22 23 alu sll alu da 23 24 alu sll alu da 24 25 alu sll alu da 25 26 alu sll alu da 26 27 alu sll alu da 27 28 alu sll alu da 28 29 alu sll alu da 29 30 alu sll 1 2 alu srl 2 3 alu srl 3 4 alu srl 4 5 alu srl 5 6 alu srl 6 7 alu srl 7 8 alu srl 8 9 alu srl 9 10 alu srl 10 11 alu srl 11 12 alu srl 12 13 alu srl 13 14 alu srl 14 15 alu srl 15 16 alu srl 16 17 alu srl 17 18 alu srl 18 19 alu srl 19 20 alu srl 20 21 alu srl 21 22 alu srl 22 23 alu srl 23 24 alu srl 24 25 alu srl 25 26 alu srl 26 27 alu srl 27 28 alu srl 28 29 alu srl 29 30 alu srl 30 31 alu srl 31 default alu srl alu da endcaseendalways begincase alu shift 0 alu sra alu da 1 alu sra alu da 31 alu da 31 1 2 alu sra 2 alu da 31 alu da 31 2 3 alu sra 3 alu da 31 alu da 31 3 4 alu sra 4 alu da 31 alu da 31 4 5 alu sra 5 alu da 31 alu da 31 5 6 alu sra 6 alu da 31 alu da 31 6 7 alu sra 7 alu da 31 alu da 31 7 8 alu sra 8 alu da 31 alu da 31 8 9 alu sra 9 alu da 31 alu da 31 9 10 alu sra 10 alu da 31 alu da 31 10 11 alu sra 11 alu da 31 alu da 31 11 12 alu sra 12 alu da 31 alu da 31 12 13 alu sra 13 alu da 31 alu da 31 13 14 alu sra 14 alu da 31 alu da 31 14 15 alu sra 15 alu da 31 alu da 31 15 16 alu sra 16 alu da 31 alu da 31 16 17 alu sra 17 alu da 31 alu da 31 17 18 alu sra 18 alu da 31 alu da 31 18 19 alu sra 19 alu da 31 alu da 31 19 20 alu sra 20 alu da 31 alu da 31 20 21 alu sra 21 alu da 31 alu da 31 21 22 alu sra 22 alu da 31 alu da 31 22 23 alu sra 23 alu da 31 alu da 31 23 24 alu sra 24 alu da 31 alu da 31 24 25 alu sra 25 alu da 31 alu da 31 25 26 alu sra 26 alu da 31 alu da 31 26 27 alu sra 27 alu da 31 alu da 31 27 28 alu sra 28 alu da 31 alu da 31 28 29 alu sra 29 alu da 31 alu da 31 29 30 alu sra 30 alu da 31 alu da 31 30 31 alu sra 31 alu da 31 alu da 31 default alu sra alu da endcaseendassignalu db n alu db 加减运算always beginif Sub 1 alu db mux alu db n elsealu db mux alu db endalu 32alu 32 1 alu add alu da alu db mux Sub c2 assignoverflow alu da 31 inputcii output 16 1 f16 outputgmm pmm wire 4 1 c wire 4 1 p wire 4 1 g jiafaqi 4alu 4 1 g 1 p 1 f16 4 1 x16 4 1 y16 4 1 cii jiafaqi 4alu 4 2 g 2 p 2 f16 8 5 x16 8 5 y16 8 5 c 1 jiafaqi 4alu 4 3 g 3 p 3 f16 12 9 x16 12 9 y16 12 9 c 2 jiafaqi 4alu 4 4 g 4 p 4 f16 16 13 x16 16 13 y16 16 13 c 3 cla 4cl 4 1 c p g cii assignpmm p 4 assignc 2 g 2 p 2 endmodule moduletest Inputsreg 31 0 alu da reg 31 0 alu db reg 3 0 alu clt reg 4 0 alu shift Outputswirealu zero out wireoverflow out wire 31 0 alu dc InstantiatetheUnitUnderTest UUT aluuut alu da alu da alu db alu db alu clt alu clt alu shift alu shift alu zero out alu zero out overflow out overflow out alu dc alu dc initialbegin InitializeInputsalu da 0 alu db 0 alu clt 0 alu shift 0 Wait100nsforglobalresettofinish 10 alu clt 0 alu da 32 hff0000ff alu db 32 hffff0000 10 alu clt 1 alu da 32 hff0000ff alu db 32 hffff0000 10 alu clt 2 alu da 32 hff0000ff alu db 32 hffff0000 10 alu clt 3 alu shift 3 alu da 32 hffffffff 10 alu clt 4 alu shift 5 alu da 32 hffffffff 10 alu clt 5 alu shift 3 alu da 32 h8fffffff 10 alu clt 6 alu da 3 alu db 5 10 alu clt 7 alu da 10 alu db 7 10 alu clt 8 alu da 32 hfffffffd alu db 32 hfffffffb 10 alu clt 8 alu da 0 alu db 0 10 alu clt 8 alu da 32 h7fffffff alu db 32 h7fffffff 10 alu clt 9 alu da 32 hfffffffd alu db 32 hfffffffb 10 alu clt 9 alu da 32 hfffffffd alu db 32 hfffffffd 10 alu clt 9 alu da 32 h80000000 alu db 32 h00000003 10 alu c
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号