unnormal 发表于 2012-9-19 13:47:55

VHDL语言问题

各位前辈,小弟学习FPGA遇到这样的一个问题,在Verilog中的`define AAA   (count==3'd0)   这种用法我想在VHDL中使用,应该怎么样写啊?在此先谢谢各位前辈了,小弟刚刚学习,希望前辈指点一下!谢谢!

usingavr 发表于 2012-9-19 13:59:43

好像没有这种用法。但VHDL有一些语法可以实现参数和代码的复用,好像是generic generate等等

unnormal 发表于 2012-9-19 14:08:21

usingavr 发表于 2012-9-19 13:59 static/image/common/back.gif
好像没有这种用法。但VHDL有一些语法可以实现参数和代码的复用,好像是generic generate等等 ...

谢谢您啊我也是在找这个不过没有找到因为我刚学所以我以为是因为我学的不够的原因所以想问一下再次谢谢您啊嘿嘿{:handshake:}

今世小浪子 发表于 2012-9-20 15:16:15

`define AAA   (count==3'd0)

你直接 写成 ‘define AAA 3'h0;不得了 非得那么个形式

sky5566 发表于 2012-9-20 19:13:19

今世小浪子 发表于 2012-9-20 15:16 static/image/common/back.gif
`define AAA   (count==3'd0)

你直接 写成 ‘define AAA 3'h0;不得了 非得那么个形式

我也有问题请教,使用 16 位资料怎么取 0~8 位bit 给 Q?
Q 是 ( 8 downto 0 )
Q <=x"FFF"( 8 downto 0 );

今世小浪子 发表于 2012-9-21 21:26:19

sky5566 发表于 2012-9-20 19:13 static/image/common/back.gif
我也有问题请教,使用 16 位资料怎么取 0~8 位bit 给 Q?
Q 是 ( 8 downto 0 )
Q

如你所说 一16位数据定义为 reg a = 16‘h7777,取其0~8位?(0~8为9位你确定?)只需取 a 即可!

sky5566 发表于 2012-9-22 00:15:17

今世小浪子 发表于 2012-9-21 21:26 static/image/common/back.gif
如你所说 一16位数据定义为 reg a = 16‘h7777,取其0~8位?(0~8为9位你确定?)只需取 a


VHDL
例如 signal    Q : std_logic_vector(8 downto 0);
但是0x7777放入 Q <= h"7777"(6 downto 0);


今世小浪子 发表于 2012-9-23 22:35:23

sky5566 发表于 2012-9-22 00:15 static/image/common/back.gif
VHDL
例如 signal    Q : std_logic_vector(8 downto 0);
但是0x7777放入 Q

VHDL也一样   只要取(15 downto 0)中的 (8 downto 0)

sky5566 发表于 2012-9-23 23:42:03

本帖最后由 sky5566 于 2012-9-24 00:06 编辑

今世小浪子 发表于 2012-9-23 22:35 static/image/common/back.gif
VHDL也一样   只要取(15 downto 0)中的 (8 downto 0)

你还是误解我的意思..
Q已经是 (8 downto 0) ,但是0x7777 非(8 downto 0)
来源是 0x7777,目地是Q
也就是说 0x7777提取 (8 downto 0) 放到Q

h"7777"(8 downto 0)<==保證錯誤
页: [1]
查看完整版本: VHDL语言问题