- 博客(7)
- 资源 (1)
- 收藏
- 关注
原创 使用Verilog设计冯诺依曼结构CPU【代码】
一 冯诺依曼结构CPU图示二 代码实现的指令三 实验报告包含的内容设计思路描述1、CPU基本组成2、CPU的工作过程3、关键模块定义程序代码变量说明程序代码结构说明模拟图及分析一 冯诺依曼结构CPU图示二 代码实现的指令计算机数据总线和地址总线都是16位,指令系统包括4条指令:addi, lw, sw, add,addi: (rd) <- (rs) + imm从寄存器rs中读取数据,和立即数imm相加后,结果放到寄存器rd中。lw: (rd) <- memory((rs) + .
2021-03-14 20:05:25
1076
1
原创 C++实现Huffman编码
一 问题描述二 算法基本思路三 算法复杂性分析四 C++代码五 运行结果截图一 问题描述用字符在文件中出现的频率表来建立一个用0,1串表示各字符的最优表示方式。给出现频率高的字符较短的编码,出现频率较低的字符以较长的编码,贪心算法使平均码长达到最小的前缀码编码方案。输入:字符集C和每一字符的频率。输出:每一字符的编码。二 算法基本思路编码字符集C中每一字符c的频率是f(c)。以f为键值的优先队列Q用在贪心选择时确定算法当前要合并的两棵具有最小频率的树。一旦两棵具有最小频率的树合并后,产生一.
2021-02-27 23:04:04
2354
原创 verilog设计32位ALU
一 设计思路(一) 输入、输出(二)运算说明二 verilog代码(一)程序代码变量说明(二)程序代码(三)时序模拟图一 设计思路(一) 输入、输出三个输入:两个32位输入数X、Y及计算类型OP。两个输出:计算结果result及有无溢出overflow。计算类型代码(1)OP = 0有符号数相加,(2)OP = 1有符号数相减,(3)OP = 2无符号数相加,(4)OP = 3无符号数相减,(5)OP = 4逻辑左移(X左移Y位),(6)OP = 5逻辑右移(X右移Y位)。其中,.
2021-01-28 22:55:38
5978
1
原创 verilog设计8x8位ROM
一 设计思路二 verilog代码(一)程序代码变量说明(二)程序代码(三)时序模拟图一 设计思路采用组合逻辑电路,设计掩膜式只读存储器(Mask ROM)(在制造时写入内容,以后只能读,不能写入)。3位地址线([2:0] addr):可以实现8个存储单元(字)的寻址,8个地址及其存储的8位数据的真值表如下(下表中各地址存储的数据D是地址addr的2倍):addr2addr1addr0D7D6D5D4D3D2D1D00000000000.
2021-01-28 22:26:33
4836
原创 verilog设计8x8位RAM
一 设计思路二 verilog代码(一)程序代码变量说明(二)程序代码(三)时序模拟图一 设计思路采用时序逻辑电路,有3位地址线([2:0] addr),可以实现8个存储单元(字)的寻址。使能控制输入端CS:低电平有效,使能控制端为1时存储器处于禁止状态,输出为高阻态。写控制输入端W:低电平有效。8位数据输入端([7:0] data_in),8位数据输出端([7:0] data_out)。时钟(clk)上升沿到来:若写控制输入端(W)为低电平,则将输入的8 位数据([7:0] data_i.
2021-01-28 21:43:58
1816
原创 verilog实现16位硬件除法器(加减交替法定点补码一位除法)
一 设计思路(一)求商的符号:(二)求商的数值部分:(三)商的最后一位恒置1二 verilog代码(一)程序代码变量说明(二)程序代码结构说明1. 除法器2. 根据余数和除数的符号进行加法操作和商的操作3. 移位4. 截取最终的商和余数(三)程序代码(四)时序模拟图一 设计思路(一)求商的符号:若[X]补与[Y]补同号,[X]补 - [Y]补;若[X]补与[Y]补异号(即不够减),[X]补 + [Y]补。如果所得余数与除数同号,商上1;若余数与除数异号,商上0;商即结果的符号位。(二).
2021-01-28 21:28:41
4433
3
原创 verilog实现8位硬件乘法器(booth法补码一位乘法)
verilog实现8位硬件乘法器(booth法补码一位乘法)一 设计思路(一)输入、输出(二)booth法运算规则(三)步骤二 verilog代码(一)程序代码变量说明(二)程序代码结构说明1. 乘法器2. 根据附加位和乘数末位进行加法操作3. 移位4. 截取最后一步的部分积和乘数作为输出(三)程序代码(四)时序模拟图一 设计思路(一)输入、输出输入:两个用补码表示的二进制数(1位符号位+7位数值位)[X]补 = X0.X1X2…X7[Y]补 = Y0.Y1Y2…Y7其中,X0、Y0为符号位。
2021-01-28 21:01:44
8063
3
使用Verilog设计一个冯诺依曼结构的CPU
2021-03-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人