在线咨询 切换到宽版
eetop公众号 创芯大讲堂 创芯人才网

 找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

搜全文
查看: 3870|回复: 7

[求助] a大于-100并且a小于100怎么用verilog描述

[复制链接]
发表于 2015-9-11 15:13:33 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
自己写的逻辑一直不对,求好人解答
发表于 2015-9-11 16:41:15 | 显示全部楼层
定义的数据有符号位,就可以了
回复 支持 反对

使用道具 举报

发表于 2015-9-12 19:09:23 | 显示全部楼层
本帖最后由 xcrabx77 于 2015-9-12 19:30 编辑

wire signed [15:0];
if(a>-16'd100 && a<16'd100)
回复 支持 反对

使用道具 举报

发表于 2015-9-14 15:59:20 | 显示全部楼层
wire signed [15:0];
if(a>-16'd100 && a<16'd100)
回复 支持 反对

使用道具 举报

 楼主| 发表于 2015-9-14 16:43:54 | 显示全部楼层
回复 4# 999
module dayu(a,clk,reset,out
    );
input signed[9:0]a;
input reset;
input clk;
output out;
reg out;
always@(posedge clk)
begin
if(reset)
out<=0;
else
if(a>=-10'd100)
out<=1;
else
out<=0;
end

endmodule
我这段代码编写的逻辑不正确,out一直不变是不是哪里逻辑有问题?麻烦帮忙看下吧,加了signed
回复 支持 反对

使用道具 举报

发表于 2015-9-14 19:45:10 | 显示全部楼层
是仿真不对还是上板后不对
前面发下tb
后者抓下a看看
回复 支持 反对

使用道具 举报

发表于 2015-9-14 21:47:42 | 显示全部楼层
建议使用补码操作  
wire [9:0] a ;
if ( a<16'd100 && a> (16'd1024 - 16'd100) )
不确定对你是否有帮助
回复 支持 反对

使用道具 举报

发表于 2015-9-15 09:25:49 | 显示全部楼层
硬件编码跟软件编程,最基本的区别就是是否能够映射到实际的电路上
硬件代码设计,一定要明确代码与硬件电路的一一对应关系
针对lz提到的符号数的运算,楼上给的建议刚好,使用补码运算
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条


手机版| 小黑屋| 关于我们| 联系我们| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-10-14 01:33 , Processed in 0.014325 second(s), 3 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表