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

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3707|回复: 7

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

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

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

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

x
自己写的逻辑一直不对,求好人解答
发表于 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 下一条

X

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

GMT+8, 2025-6-27 14:24 , Processed in 0.020580 second(s), 8 queries , Gzip On, MemCached On.

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