&在VHDL语言中是什么意思,具体怎么用呢?谢谢

process(clk1)beginifclk1'eventandclk1='1'thendatacom<=fskcodein&datacom(1);endif;endp... process(clk1)
begin
if clk1'event and clk1 = '1' then
datacom <= fskcodein & datacom(1);
end if;
end process;
希望能解释下这段程序,谢谢
展开
 我来答
阿冰1992
2011-08-23
知道答主
回答量:26
采纳率:0%
帮助的人:11.7万
展开全部
楼主,您好!
我刚刚查了下VHDL的资料。&是算术运算符中:并置运算符。主要用于将操作数或者是数组连接起来构成新的数组。
应用举例:
'a' & 'b' & 'c'的结果是"abcd"他们的连接对象长度要一致!
解释下:
重点 if clk1'event and clk1 = '1' then
datacom <=fskcodein & datacom(1);
不知道你的具体定义,大概描述下,假如clk1'event and clk1 得出的结果是真,那么把fskcodein和datacom(1)连接起来形成一个新的数据赋值给datacom.连接规则看上面!
谢谢!楼主!
wudi1493
2011-08-23 · TA获得超过136个赞
知道答主
回答量:49
采纳率:0%
帮助的人:49.3万
展开全部
并值符号:如果clk1上升沿到了,datacom的类型应该是std_logic_vector,假设是2位的。那么就是std_logic_vector(1 downto 0)。fskcodein应该是bit类型,那么就是把fskcodein的数值和datacom的高位组成一个新的2位的datacom。
假如datacom:out std_logic_vector(1 downto 0)
datacom<="01" 高位是0
fskcodein: out bit;
fskcodein<='0' 是0
那么新的datacom是00
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2011-08-23
展开全部
楼上说的是C、C#、C++等计算机编程语言的用法,不是VHDL语言中的用法。

& 是VHDL中的连接操作符:

signal Z_BUS:bit_vector(3 downto 0);
signal A,B,C,D:bit;
signal BYTE:bit_vector(7 downto 0);
signal A_BUS:bit_vector(3 downto 0);
signal B_BUS:bit_vector(3 downto 0);

Z_BUS <= A & B & C & D;
BYTE <= A_BUS & B_BUS.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
117726573
2011-08-24 · TA获得超过142个赞
知道小有建树答主
回答量:71
采纳率:0%
帮助的人:81.7万
展开全部
&的用法看楼上的解释
这个程序作用很简单:
当clk1的上升沿来的时候,讲fskcodein和datacom的1位合并赋给datacom
估计这里datacom是个std_logic_vector(1 downto 0)类型的,实现的就是吧fskcodein的数据移位输入
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式