当前位置: 首页 > wzjs >正文

wordpress搭建crm网站外部优化的4大重点

wordpress搭建crm,网站外部优化的4大重点,制作文字图片,网页版传奇霸主攻略1. 实验目标 设计一个能实现如下功能的4位带符号位的 补码 ALU&#xff1a; Table 4 ALU 功能列表  功能选择 功能 操作 000 加法 AB 001 减法 A-B 010 取反 Not A 011 与 A and B 100 或 A or B 101 异或 A xor B 110 比较大小 If A<B then out1…

1. 实验目标

设计一个能实现如下功能的4位带符号位的 补码 ALU:

Table 4 ALU 功能列表 

功能选择

功能

操作

000

加法

A+B

001

减法

A-B

010

取反

Not A

011

A and B

100

A or B

101

异或

A xor B

110

比较大小

If A<B then out=1; else out=0;

111

判断相等

If A==B then out=1; else out=0;

ALU进行加减运算时,需要能够判断结果是否为0,是否溢出,是否有进位等。这里,输入的操作数A和B都已经是补码。比较大小请按带符号数的方式设置。

执行逻辑操作时不需要考虑overflow和进位。

由于开发板上输入有限,可以使用SW作为数据输入,button作为选择端。使用SW作选择器。

2. 通过实验的收获

1. 理解ALU 功能单元单元

2. 理解进位和溢出位的区别。进位是加法器每个比特相加过程中的中间结果。而溢出位是最终结果用来判断计算结果是否有效的指示信息。

3. 如何通过C代码读取硬件模块中的值

3. 实现过程

1. 新增 alu_bit4.v 模块文件

利用组合逻辑实现计算,利用case语句实现对溢出位的判断。下面是实验中的部分代码。

// 预计算所有可能的操作结果assign not_A     = ~A;assign and_result = A & B;assign or_result  = A | B;assign xor_result = A ^ B;assign add_result = {1'b0, A} + {1'b0, B};  // 扩展为5位进行加法assign sub_result = {1'b0, A} - {1'b0, B};  // 扩展为5位进行减法// 根据opcode选择执行的操作always @(*) begincase (opcode)3'b000: begin  // 加法result  = add_result[3:0];carry   = add_result[4];  // 进位为最高位overflow = (A[3] == B[3]) && (result[3] != A[3]); // 符号相同但结果符号不同end3'b001: begin  // 减法result  = sub_result[3:0];carry   = ~sub_result[4];  // 减法的借位取反overflow = (A[3] != B[3]) && (result[3] != A[3]); // 符号不同但结果符号异常end

2.修改top.v文件

例化ALU模块,同时将计算结果的变量添加到输出端口,方便main.cpp进行访问

module top(input clk,input rst,input [4:0] btn,input [15:0] sw,input ps2_clk,input ps2_data,input uart_rx,output uart_tx,output [15:0] ledr,output VGA_CLK,output VGA_HSYNC,output VGA_VSYNC,output VGA_BLANK_N,output [7:0] VGA_R,output [7:0] VGA_G,output [7:0] VGA_B,output [7:0] seg0,output [7:0] seg1,output [7:0] seg2,output [7:0] seg3,output [7:0] seg4,output [7:0] seg5,output [7:0] seg6,output [7:0] seg7,output [3:0] result, //实验三:简易4bit ALUoutput zero, //实验三:简易4bit ALUoutput overflow,//实验三:简易4bit ALUoutput carry //实验三:简易4bit ALU
);//实验三:简易4bit ALU// output declaration of module alu_4bitalu_4bit u_alu_4bit(.A        	(sw[3:0]        ),.B        	(sw[7:4]        ),.opcode   	(sw[10:8]      ),.result   	(result    ),.zero     	(zero      ),.overflow 	(overflow  ),.carry    	(carry     )
);
3.修改main.cpp 文件

添加对输出结果的打印

      printf("A = %d,B = %d ,opcode = %b, result = %3d ,zero = %d ,overflow = %d ,carry = %d  \n",top->sw & 0x0f,(top->sw >> 4) & 0x0f,(top->sw >> 8) & 0x07, top->result, top->zero, top->overflow, top->carry);
4.运行结果

SW[3:0] 为输入A

SW[7:4] 为输入B

SW[10:8] 为计算选择器

在npc目录下 ,运行make run 可以实验体验

下图位一个 6-2  的实验输出

http://www.dtcms.com/wzjs/313698.html

相关文章:

  • 网站开发 需求说明书百度浏览器官网
  • 网站 提示建设中大数据营销策略有哪些
  • 购物网站的开发新app推广方案
  • 公司后台的网站代理维护更新系统优化工具
  • 中山专业做网站的公司图片外链上传网站
  • 自建网站定位百度云搜索引擎网站
  • luolibobo wordpress上海网站关键词排名优化报价
  • 偃师市住房和城乡建设局网站今日时政新闻
  • 万网网站域名注册网页设计框架
  • 服装网站的建设策划太原百度关键词排名
  • 图片制作表情包怎么做seo引擎搜索
  • 建筑网站免费山东做网站
  • 可商用的图片素材网站企业seo外包公司
  • 做网站利用自己电脑百度seo排名软
  • 响应式网站 教程怎么制作网站详细流程
  • 松江专业做网站公司怎么打广告吸引客户
  • 海淘科技上海网站设计第三方营销平台有哪些
  • 巩义网站建设案例课堂随州网络推广
  • 企业网站空间多大合适百度指数怎么查
  • 广州网站开发设计公司排名检测
  • 邯郸做网站价格网站模板哪里好
  • 中国设计师联盟网站你就知道
  • 关于网站备案前置审批的相关说明 吉林网站交易
  • 网站域名备案 更改吗免费h5制作网站
  • 游戏开服网seo排名优化公司哪家好
  • 网站建设需要多少钱知乎网销怎么销售的
  • 如何在雅虎台湾做企业网站公司企业网站制作
  • 武汉网站建设027网址安全检测中心
  • 上海网站制作与推广搜狗推广
  • 内丘网站建设杭州排名优化公司