加法器

[复制链接]
2745|2
 楼主| 成成 发表于 2007-4-9 10:09 | 显示全部楼层 |阅读模式
我在QuartusII下编译以下程序:<br /><br />--&nbsp;工程名称:ADDER_CTRL.qpf<br />--&nbsp;文件名称:ADDER_CTRL.vhd<br />--&nbsp;带控制端口的加法器<br />--&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;┌──────┐<br />--&nbsp;&nbsp;in1&gt──┤&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;│<br />--&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;│&nbsp;&nbsp;&nbsp;&nbsp;adder&nbsp;&nbsp;&nbsp;├──&gt&nbsp;pout<br />--&nbsp;&nbsp;in2&gt──┤&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;│<br />--&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;└──┬───┘&nbsp;&nbsp;<br />--&nbsp;&nbsp;cnt1&nbsp;&gt────┘<br />-------------------------------<br />--&nbsp;library&nbsp;include<br />-------------------------------<br />library&nbsp;ieee;<br />library&nbsp;work;<br />use&nbsp;ieee.std_logic_1164.all;<br />use&nbsp;ieee.std_logic_arith.all;<br />USE&nbsp;work.all;<br /><br />entity&nbsp;adder_ctrl&nbsp;is<br />port(<br />&nbsp;&nbsp;&nbsp;&nbsp;in1&nbsp;:&nbsp;in&nbsp;bit_vector(0&nbsp;to&nbsp;3);<br />&nbsp;&nbsp;&nbsp;&nbsp;in2&nbsp;:&nbsp;in&nbsp;bit_vector(0&nbsp;to&nbsp;3);<br />&nbsp;&nbsp;&nbsp;&nbsp;cnt1:&nbsp;in&nbsp;bit;<br />&nbsp;&nbsp;&nbsp;&nbsp;pout:&nbsp;out&nbsp;bit_vector(0&nbsp;to&nbsp;3));<br />end&nbsp;adder_ctrl;<br /><br />architecture&nbsp;func&nbsp;of&nbsp;adder_ctrl&nbsp;is<br />begin<br />&nbsp;&nbsp;&nbsp;&nbsp;process(cnt1)<br />&nbsp;&nbsp;&nbsp;&nbsp;begin<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;if(cnt1='1')then<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;pout&nbsp;&lt=&nbsp;in1&nbsp;+&nbsp;in2;<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;end&nbsp;if;<br />&nbsp;&nbsp;&nbsp;&nbsp;end&nbsp;process;<br />end&nbsp;func;<br /><br />编译时出现以下错误:<br />Error:&nbsp;VHDL&nbsp;error&nbsp;at&nbsp;adder_ctrl.vhd(34):&nbsp;<br />can't&nbsp;determine&nbsp;definition&nbsp;of&nbsp;operator&nbsp;&quot;&quot;+&quot;&quot;&nbsp;--&nbsp;found&nbsp;0&nbsp;possible&nbsp;definitions<br />不知道错在哪里。
hideid 发表于 2007-4-14 06:29 | 显示全部楼层

加2个库文件就行了

use&nbsp;ieee.std_logic_unsigned.all;<br />use&nbsp;ieee.numeric_std.all;
hideid 发表于 2007-4-14 06:52 | 显示全部楼层

补充:

刚才没看清楚,还有1个问题:<br />原来你用的是bit类型,那库都是std_logic的,当然不行。所以要把你的端口定义,换成是std_logic和std_logic_vector;<br /><br /><br /><br />
您需要登录后才可以回帖 登录 | 注册

本版积分规则

13

主题

56

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部