侵权投诉
订阅
纠错
加入自媒体

数字电路设计盲点实例与对策分析

  【bit_vector的数据形式变成Compile Error】

  ※现象

  利用VHDL叙述作List15-1的8位Counter设计时,使用所谓的「bit_vector」数据形式(Data Type),然而事实上bit_vector的bit数据形式抓取值为0与1,。本设计的BX bit_vector是企图设计2进位(Binary)Counter,期待BX的表示值能被当作2进位处理,在第18行该2进位祇用一个加算合成电路,不过该电路Com pile时却发生错误(Error)。

 

  

 

  ※原因分析

  主要原因是未呼叫bit_vector的算术演算Package造成上述错误(Error)。因为在第18行是作bit_vector的BX_fb与integer 1的算术演算,因此必需叫出算术演算Package,虽然第3行有呼叫st_logic_unsigned,不过该Package却无法支持(Support)bit_vector的算术演算。

  ※对策

  最简单的对策是呼叫可支持(Support) bit_vector的算术演算Package,具体方法是变更List15-1第3行的叙述:

  userk.bit_arith.all;

  必需注意的是关数名称会因Compiler有所不同,因此必需事先确认Compiler的使用说明(Manual)避免会产生错误(Error)。例如List15-2第1行至第20行就是叙述将bit_vector「Inclement」的关数,第23行至第44行也是使该关数叙述Counter,它相当于List15-2的第40行。除了使用所谓的bitinc关数之外,如果延用Source Code时,可将第1行至第20行复制(Copy)置于Source Code的前端,再以其它檔(File)读入制同一个Project,之后祇要如第25行将User Package叫出就可使用。

 

  

<上一页  1  2  3  4  5  6  7  8  
声明: 本网站所刊载信息,不代表OFweek观点。刊用本站稿件,务经书面授权。未经授权禁止转载、摘编、复制、翻译及建立镜像,违者将依法追究法律责任。

发表评论

0条评论,0人参与

请输入评论内容...

请输入评论/评论长度6~500个字

您提交的评论过于频繁,请输入验证码继续

暂无评论

暂无评论

    电子工程 猎头职位 更多
    扫码关注公众号
    OFweek电子工程网
    获取更多精彩内容
    文章纠错
    x
    *文字标题:
    *纠错内容:
    联系邮箱:
    *验 证 码:

    粤公网安备 44030502002758号