PLD的PROTEUS电路仿真

来源: 作者: 时间:2007-02-28 19:41

    

一般的PLD设计软件只能进行PLD芯片的时序逻辑仿真,而PROTEUS能进行PLD的电路仿真,可以模拟设计的PLD芯片在电路中实际运行的情况。
    

本文介绍使用GAL16V8设计一个三八译码器,然后在PROTEUS中观察GAL16V8中三八译码器的输入与输出对应关系,以完成PLD电路仿真的方法。

    

     1.PLD的设计

    

     首先,用Protel 99SE完成PLD的设计,绘制PLD原理图过程略。

    

     在Protel中生成一个3-8译码器的PLD文件。输入信号为目标元件的②、③、④脚,输出信号为目标元件的12~19脚,6-8脚为使能控制端。

    

     Protel 99SE的PLD原理图的设计与普通原理图相同,但有几点需要注意:

    

     (1)生成PLD原理图后,在原理图中自动加入了两个PLD的元件库(PLD_Devices.lib、PLD_Symbols.lib),PLD的电路图绘制必须使用这两个库中的元件。

    

     (2)绘制PLD原理图时,必须放置输入/输出端口(输入:IPAD、输出:OPAD、输入/输出:IOPAD)元件,这些元件指定的引脚代表目标器件的引脚。

    

     在输入/输出端口元件放置好后,必须对其进行编号,还要指定该端口元件所对应连接的目标器件的引脚号。

    

     完成PLD原理图后,选择[PLD]/[Compile]进行编译,生成所需格式的文件。

    

     打开生成的.jed文件,点击右键,在弹出的窗口中选择[Export…]项,选择.jed文件的输出目标地址,就完成了PLD文件的设计。

    

     2、Proteus对PLD的仿真

    

     启动Proteus,绘制好电路图(见附图)。

    

     LED显示采用低电平时LED点亮的方式。I1~I3为GAL16V8输入口,高电平时为1,低电平时为0;IO0-IO7为输出口,LED灯亮时端口输出低电平O,熄灭时为高电平1。

    

     为了能仿真PLD元件,还必须在电路中将编译的.jed文件加入PLD元件中:将鼠标移到(AL16V8中,右击,选择元件,然后单击鼠标左键。调出"元件的属性"对话框,在"JEDEC
     Fuse Map File:"中加入.jed文件:双击"打开文件图标",选择在Protel中输出的.jed的文件。

    

     由前面PLD的设计可得到三八译码器的真值表(见附表)。

    

     为了观察16V8的输入与输出的对应关系,可在AT89SC52的程序中,将与I3~I1相连的P2.2-P2.0三个端口的信号,按真值表中的顺序依次改变,观察LED灯是否由IO0至IO7依次点亮。

    

     将单片机的程序加入AT89SC52后,在Proteus中点击Play键,观看电路仿真结果:当输入端的I1、I2、I3值按程序设定从真值表中的000-111依次改变时。输出端对应LED灯按真值表中的对应关系由IO0至IO7依次点亮,则说明PLD器件16V8设计的三八译码器译码正确。

    

     3.结语

    

     单片机与PLD的结合是当前嵌入式设计经常采用的一种方式。但如果要进行硬件电路测试和系统调试则比较麻烦,因为这两个过程必须在电路板制作好且元器件焊接完毕之后进行.而电路板的制作、元器件的安装、焊接是费时费力的,如果采用仿真工具PROTEUS进行单片机和PLD的仿真,则不用制作具体的电路板也能够完成以上工作。在使用PROTEUS运行系统虚
     拟开发成功之后再进行实际制作,可以直观地观察电路的运行情况。提前发现设计错误,极大地提高开发效率、降低开发成本、加快开发速度。

    


    

相关文章

资讯排行榜

  • 每日排行
  • 每周排行
  • 每月排行

华强资讯微信号

关注方法:
· 使用微信扫一扫二维码
· 搜索微信号:华强微电子