datasheet

等价型PG逻辑及其在加法器设计中的应用

2007-12-19来源: 电子设计应用 关键字:输入  网络  单元  论证

引言

在全加器设计中运用PG逻辑是非常普遍的,本文在设计和研究全加器时,根据现有的PG逻辑公式推导出了一种新的逻辑公式,并论证了两者之间的等价关系。这一新的公式能够指导全加器设计中的连线方式,灵活更改连线策略。本文将从基本原理开始逐步引出该公式,对其进行论证,并应用于全加器设计中。

全加器设计的 基本原理

N位全加器将{AN,……,A1}、{BN,……,B1}和进位输入Cin作为输入,计算得到和(SN,……,S1)以及最高位的进位输出Cout(见图1)。每一位得到的和与进位输出都直接受其上一位的影响,其进位输出也会影响下一位。最终,整个全加器的和与输出都受进位输入Cin的影响。

全加器最简单的构成方法就是把每一位的进位输出与下一位的进位输入简单地连接起来,得到的就是行波进位全加器。但在快速全加器中,是将加数和被加数中具有相同下标的位分成若干组,即多个多位组,并将各个多位组看作一个整体。通过计算多位组的PG逻辑,在求和之前可预测多位组的进位输出是传播进位输入还是直接产生进位输出。多位组所包括的位在i到j的范围内(见图2),如果该多位组的进位输出是与进位输入无关的"真"值,那么它就产生了一个进位;如果该多位组的进位输出只有当进位输入为"真"时才进位输出"真"值,那么它就传播了一个进位。对于i≥k≥j,这些信号能够递归地定义为:


通过观察可知,第i位的进位输出总是与Cin有关,所以有Ci=Ci:0,和 。由此可见,只要算出各位的Pi:i值和Gi:0。值,就可以将各位的Si值求出。而其中最关键的就是利用递归公式快速算出各Gi:0值。上述递归表达式可以用如图3所示的电路表示。

为了能够更加简洁地表达全加器电路结构,可将图3中的电路用图4所示的黑色单元表示,并用图4中的白色单元表示图5所示的G逻辑产生电路。

根据递归公式,可以得到各种不同结构的全加器,他们的逻辑级数、扇出、布线通道数、所用单元数等各不相同,在此不再赘述,只给出一种Kogge-stone树型全加器PG网络,如图6所示。图的上部即是各位的本位Pi:i和Gi:i产生逻辑,中部是PG传播网络,下部是各位的进位输出Ci。这种树型全加器具有理想的逻辑级数和扇出,但是连线复杂,也需要更多的单元。

等价型PG逻辑的论证

对上文给出的递归表达式进行进一步推导,可得出如下结果:

下面给出它的简单推导过程:

因为,

所以,

因为,

所以,上式



等价型PG逻辑的运用

运用新推导的等价型PG逻辑,可以改变PG传播网络的连接形式,如图7所示,原来某些应该独立连接的节点,现在可以利用等价型逻辑表达式将它们连在一起,比如在图7中的"5:4"和"4:3"两个节点,在图6中它们分别应该按原始公式连接"3:2"和"2:1"两点,现在可以根据新公式将它们都连接到"3:2",其它节点以此类推。而且,在图7中的"3:0"节点处负载较重,因此可以将"11:4"、"10:4"连接到"4:0",以减轻"3:0"处的负载。总的说来,改进以后的全加器在布线上可以相对于未改进的电路减少近一半,但负载相对来说也增加了一倍。因此,在实际电路中可以灵活调整连接关系,以平衡布线与负载之间的矛盾,同时对某些负载重的节点需要增加若干反相器,以增大该节点的驱动能力。

仿真与验证

本文按照等价型PG逻辑的原理编写了如上所述的15位加法器的Verilog描述,并用Modelsim对其进行了仿真,对随机数进行相加,得到了正确的结果,说明在逻辑上该PG逻辑是正确的,如图8所示。其中a、b为两个15位的随机数,ci为随机的进位输入,co为进位输出,sum是最终的和(其最高位是co)。

结语

本文根据现有PG逻辑计算公式,推导出了一种新的与之等价的逻辑表达式。将这一逻辑表达式运用到加法器设计中去,能够改变PG传播网络的结构,减少连线数目,降低布线复杂度,这样会更有利于后端的版图布线。但此方法会相应增大某些节点的负载,势必带来延迟的增加,因此需要精心设计晶体管尺寸或增加节点处的驱动能力,以使电路达到时序要求。

在今后的全加器设计中,可以根据具体情况灵活调整PG传播网络的结构,尽量使得布线与负载达到一定程度的平衡。

关键字:输入  网络  单元  论证

编辑: 引用地址:http://www.eeworld.com.cn/designarticles/eda/200712/17414.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:安捷伦科技更新先进设计系统EDA软件
下一篇:针对SPICE开发高精度Pt100 RTD仿真器

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

stm32基础实验2(按键输入—查询模式)

一、实验原理1、实现步骤 (1)使能按键对应IO口时钟。调用函数:RCC_APB2PeriphClockCmd(); (2) 初始化IO模式:上拉/下拉输入。调用函数:GPIO_Init(); (3)扫描IO口电平(库函数/寄存器/位操作)。 读取IO口输入电平三种方式 uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);(库函数) GPIOx_IDR:端口输入寄存器(寄存器) PEin(4)-读取GPIOE.4口电平(位操作)Static申明的局部变量,存储在静态存储区
发表于 2018-12-03
stm32基础实验2(按键输入—查询模式)

测量引脚/INT1(P3.3)输入的正脉冲宽度

        假设正脉冲宽度不超过定时器的值        设T1方式1,利用门控位GATE1来启动定时器。定时器的值×T即为脉冲宽度。                         ORG 1000H               &n
发表于 2018-11-23

单片机STM32的几种输入模式以及外部中断的配置

最近做毕业设计,需要用按键来触发外部中断。实验的时候是正常的,但是换了个核心板以及用上自己做的PCB电路板后,出现了一些问题。问题如下:要求:将连接按键的IO口配置为上拉输入,按键一端接IO口,一端接地,即当按键按下后,该IO口会产生一个下降沿,触发下降沿中断。问题:将相应的IO口配置好后,测了引脚的的电压,并不是3.3V左右,而是0.1V左右。于是猜想:1. 外围电路对IO口产生了影响。2. STM32内部上拉能力较弱,一次只能上拉一个IO口。于是开始从这两个想法着手解决。首先第一个,很容易就排除了。将外围电路撤掉,我用的是杜邦线,直接拔掉测量引脚上的电压,依然是0.1V左右,于是第1个猜想排除。第二个,查看万能
发表于 2018-11-23

带你学习STM8自带输入捕获功能

最近在用STM8的过程中需要用到一个频率检测的功能,还好STM8S207的定时器中自带有输入捕获功能,之前还想着用定时器计数方式来实现的,但既然人家提供了该功能,那就试试吧,由于硬件里面接的是PC1引脚就只看了Timer1,其他的定时器应该也是类似的,看了资料之后发现STM8的输入捕获其实与STC12C5A60S2中的PCA捕获模式很类似,但是看资料没有后者清晰易懂。。。在捕获模式中,基本上只用到了读进程,在STM8中有一个影子寄存器,但对于我们来说是看不到的,我们仅操作预装载寄存器即可。而且需要注意的是无论是计数器还是捕获/比较寄存器都是先读/写高8位,后读/写低8位数据。在文档中给出了一个输入捕获模式的流程[cpp] view
发表于 2018-11-20
带你学习STM8自带输入捕获功能

STM32,浮空输入-默认电平

STM32,浮空输入(GPIO_Mode_IN_FLOATING)-默认电平为高电平,用万用表测量为1.6v左右相关语句: GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IN_FLOATING; //¸浮空输入下拉输入:默认为低电平,外部高电平才能检测到高电平信号相关语句: GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD;
发表于 2018-10-15

Tiny210按键输入子系统

buttons.c驱动源码:// 参考drivers\input\keyboard\gpio_keys.c #include "linux/module.h"#include "linux/version.h"#include "linux/module.h"#include "linux/init.h"#include "linux/fs.h"#include "linux/interrupt.h"#include "linux/irq.h"#include "linux/
发表于 2018-10-12

小广播

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 市场动态 半导体生产 材料技术 封装测试 工艺设备 光伏产业 平板显示 电子设计 电子制造 视频教程

北京市海淀区知春路23号集成电路设计园量子银座1305 电话:(010)82350740 邮编:100191

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2018 EEWORLD.com.cn, Inc. All rights reserved
pt type="text/javascript" src="//v3.jiathis.com/code/jia.js?uid=2113614" charset="utf-8">