乘积项结构PLD的逻辑实现原理
时间:2010-03-19 22:46来源:未知 作者:admin 点击:次
下面我们以一个简单的电路为例,具体说明PLD是如何利用以上结构实现逻辑的,电路如下图: 图3 假设组合逻辑的输出(AND3的输出)为f,则f=(A+B)*C*(!D)=A*C*!D + B*C*!D ( 我们以!D表示D的非)
下面我们以一个简单的电路为例,具体说明PLD是如何利用以上结构实现逻辑的,电路如下图:

图3
假设组合逻辑的输出(AND3的输出)为f,则f=(A+B)*C*(!D)=A*C*!D + B*C*!D ( 我们以!D表示D的“非”)
CPLD将以下面的方式来实现组合逻辑f:

图4
A,B,C,D由PLD芯片的管脚输入后进入可编程连线阵列(PIA),在内部会产生A,A反,B,B反,C,C反,D,D反8个输出。图中每一个叉表示相连(可编程熔丝导通),所以得到:f= f1 + f2 = (A*C*!D) + (B*C*!D) 。这样组合逻辑就实现了。 图3电路中D触发器的实现比较简单,直接利用宏单元中的可编程D触发器来实现。时钟信号CLK由I/O脚输入后进入芯片内部的全局时钟专用通道,直接连接到可编程触发器的时钟端。可编程触发器的输出与I/O脚相连,把结果输出到芯片管脚。这样CPLD就完成了图3所示电路的功能。
图3的电路是一个很简单的例子,只需要一个宏单元就可以完成。但对于一个复杂的电路,一个宏单元是不能实现的,这时就需要通过并联扩展项和共享扩展项将多个宏单元相连,宏单元的输出也可以连接到可编程连线阵列,再做为另一个宏单元的输入。这样CPLD就可以实现更复杂逻辑。
这种基于乘积项的CPLD基本都是由EEPROM和Flash工艺制造的,一上电就可以工作,无需其他芯片配合。 (责任编辑:admin) |
------分隔线----------------------------