CPLD——如何使用ABEL、Verilog或VHDL实现CPLD的锁存器?-Xilinx-AMD社区-FPGA CPLD-ChipDebug

CPLD——如何使用ABEL、Verilog或VHDL实现CPLD的锁存器?

描述

一般描述:

如何使用ABEL、Verilog或VHDL实现一个锁存器?

解决方案

下面的代码演示如何创建注册和组合锁存器ABEL

//挂号锁存器

模块顶部

DATA0引脚;

插销使能销;

Out0PIN istype“Reg”;

方程

Out0:= DATA0;

OUT0.LH =锁存使能;

端盖

//组合锁存器

模块锁存器

数据引脚;

闩销;

Douthististype“留住”;

//douthTimp节点istype“留存”;

方程

DAT=数据和锁存器门闩

数据和/或冗余乘积项

//DouthTimp=数据和锁存器;

//DOUT=DutuToMeP数据;锁存器

结束

有两种形式的组合锁存器;注释行是交替形式所必需的。注释的版本可能对以下情况有用数据方程很大。因为“保留”属性,当数据方程大,软件将不能适当地最小化逻辑,从而导致高的产品使用期限。

下面的代码演示如何使用VHDL语言

库IEEE;

使用IEEE.STDYLogiCy1164.ALL;

实体顶部

端口(

门:在STDYLogic中;

DIN:在STDYLogic中;

输出逻辑

端部顶部;

顶楼建筑

开始

进程(门,DIN)

开始

如果门=“1”,那么

DUT和DIN;

如果结束;

结束过程;

顶拱;

下面的代码演示如何使用Verilog

模块顶部(DIN,GATE,DOUT);

输入DIN;

输入门;

输出输出;

Reg Dout;

总是@(门或DIN)

开始

如果(门)

DIN = DIN;

结束

终端模块

请登录后发表评论

    没有回复内容