前言:中文期刊网精心挑选了触发器范文供你参考和学习,希望我们的参考范文能激发你的文章创作灵感,欢迎阅读。
触发器范文1
Goele出生在离安特卫普不远的一个村庄――布莱切特,后来她去了安特卫普上学,之后就一直在那里生活。她很喜欢安特卫普的历史,以及现在的环境和氛围,也喜欢曾在这里居住和工作过的艺术家,并且她一直以住在鲁本斯小镇而自豪――她喜欢鲁本斯运用色彩的方式,喜欢他的精湛技艺和作品中的愉悦感。Goele的母亲是一位陶瓷艺人,一直在艺术方面给予她很多支持,后来Goele在一些老师和同学的影响下开始了解当代艺术,她喜欢的艺术家有瑞士艺术家Peter Fischli&David Weiss、Pipilotti Rist、Roman Signer,比利时艺术家Michel François & Ann Veronica Janssens,美国艺术家Jimmie Durham、Mike Kelley等。有一次Goele在欧洲陶艺中心(EKWC)认识了米念的艺术家侯嘉文,聊得很投机,也促成她如今第一次来到中国做作品,本刊特别对Goele进行了采访。
Q:为了收集这些肥皂头,你去了欧洲很多国家吗?现在收集到多少了?
A:我平时向我的朋友和我遇到的人收集这些肥皂头,所以基本都是比利时的肥皂,另外,加拿大也有一个人为我收集。现在我手头约有360块肥皂头。
Q:为什么你只要用剩下的、小得几乎不能再用的肥皂?
A:它们是残留物,是使用者用手“雕刻”的剩余肥皂,因而带着他们的痕迹。这些肥皂也可以被看作石头,放在一起的时候像考古遗留物――而实际上它们确实如此,这些东西就像人们的工具。这些肥皂像其他任何残留物一样令人感觉很脏,但同时因为它们是肥皂,所以又会令人觉得干净。我在做这件事的时候也在分析事物的很多层关联。我尽量从颜色、形状、质地等各种角度来排列它们、来寻找它们的之间的关联。
Q:在过去10年中除了做这个项目你还从事其他项目和工作吗?
A:我还做了很多其他的艺术作品,也教书。简单说,向别人讨要一块肥皂并不需要花很多时间――但人们使用一块肥皂所花的时间却要长得多。我从1998年开始跟别人要肥皂,2010年我才第一次做了跟肥皂头有关的展览。
Q:当你上门去找人家要肥皂的时候人们通常都什么表情?有什么好玩儿的故事吗?
A:其实只是在北京我第一次这样挨家按户上门去找人要肥皂,以前在比利时我从没这么试过。这确实是个很好的经验,人们的反应都各不相同:有的人很耐心地听你说,有的人一声不吭,还有的人觉得像听到了不可思议的事情,有的人很友善地开始说自己的故事,并邀请我们进屋。这个时候,肥皂就像一个触发器,使得人们开始交流。我第一次做肥皂头展览的时候,邀请了所有给过我肥皂的人们,他们在现场彼此交谈,说起有关的故事。
Q:你最初怎么产生这想法的?
A:我做作品时常常使用去污的材料,比如清洁剂或者砂纸。我认为材料是理解一件作品的切入点。带有清洁和去污性质的材料代表一种功能,其实每件东西都像是一个多重功能的综合体,有点像做数学题。为了做一个作品,艺术家得知道他为什么要做以及从作品中他能得到什么。当你用一种特别的材料来做作品的时候,你会在其中找到人们之间的各种各样的关联。以前我曾经用肥皂做过一个雕塑,这个收集肥皂的想法应该是从那时候蹦出来的。对我来说,创作来自思考和感觉,是一些特别纯粹的想法和感知的混合体,这些东西对创作者来说必须是纯净的和诚恳的。
Q:你艺术创作的核心思想是什么?
A:很难三言两语说清。我的作品就像是我思想的残留物,像我为了找到回家的路而扔在路上的石头。我更喜欢在一个场景里去表达,通过我所创作的物品――其作用如同戏剧中的演员。我感兴趣的是,由艺术和物品综合产生的作品会通过怎样的方式去凝聚人群。我也思考人们怎么看他们自己的美学和世界之间的关系、怎么把美的和丑的东西并置在一起――我把这套有关想法称为“安慰机制”。
触发器范文2
关键词:触发器;电路设计;低功耗;性能优化
中图分类号:TN783文献标识码:B
文章编号:1004373X(2008)2001005
Analysis and Comparison of Performance and Energy of Flip-flop
ZHANG Xuan,ZHANG Minxuan,LI Shaoqing
(School of Computer Science,National University of Defense Technology,Changsha,410073,China)
Abstract:The development of flip-flop′s performance and energy plays animportant part in the design of total circuit,In order to design the circuit of high performance and low energy,it seems very important to make an optimization of flip-flop's performance and energy.This paper describes all kinds of parameters of flip-flop,analyses and compares some typical flip-flops,makes a comparison of several low-energy flip-flops referred in correlative paper and makes a prospect for flip-flops.It makes a matting for reasonable utilizing flip-flop existed in the standard cell and developing flip-flop of higher performance.
Keywords:flip-flop;circuit design;low energy;performance optimization
1 引 言
时序逻辑电路由存储电路和组合逻辑电路构成,存储部件保持系统的状态,组合逻辑电路负责计算时序逻辑电路的下一状态及电路输出。触发器作为一种存储电路,在数字电路系统中起着重要作用。
依据不同的标准,触发器可以划分为多种不同类型。从采样的频率进行划分,触发器可分为主从触发器和脉冲触发器;从时钟控制位置的角度进行划分触发器可分为动态触发器和静态触发器;从时钟信号的多少角度进行划分触发器可分为单时钟电平和多时钟电平触发器;从时钟的采样边沿的多少的角度进行划分触发器可分为单边沿触发器和双边沿触发器。
随着VLSI技术的不断进步,数字系统的运行速度和功耗要求不断提高,对触发器性能参数的要求也更为苛刻,要求触发器应该具有低功耗、短延时、较少的晶体管数目,较大的噪声容限和比较强的抗干扰性等特征,这些要求中,对延时和功耗的要求尤为重要。
本文从主从触发器和脉冲触发器的角度,阐述各种触发器的性能,并对一些典型的触发器进行分析和比较,对有关论文中提出的几种低功耗的触发器进行介绍。为以后选择使用寄存器和寄存器的优化工作做一定的理论铺垫。
2 触发器性能参数及几种典型触发器的介绍
2.1 时间参数
描述触发器的主要时间参数有建立时间,保持时间以及时钟到输出的延迟。时钟到输出的延时是指时钟跳变沿到输入数据传输到输出的延时;建立时间是指时钟跳变之前数据必须有效的时间;保持时间是在时钟跳变之后数据必须仍然有效的时间。如果数据建立时间太接近时间有效边沿,触发器将会失真,T为时钟周期,必须大于等于最差的时钟到输出的延时的总和。
T>=TCLK-Q+TSETUP+TLOGIC+TSKEW(1)
其中,TCLK-Q为触发器的传播延时;TSETUP为触发器的建立时间;TLOGIC为最大的组合CLK逻辑的延时;TSKEW为时钟的相对的时间偏移,如图1所示。
2.2 功耗参数
触发器的功耗由4部分组成:短路电流功耗,亚域漏流功耗,开关过程功耗,静态功耗。电压越低时,短路功耗的消耗就越少;电压越高,亚域漏流功耗越少。但是随着电压的增高,短路功耗的增加的程度比亚域漏流功耗减少的程度要大;对于开关功耗,当转换频率一定时,电压越高,消耗的功耗越高;在触发器中静态功耗相对比较小,可以忽略。所以,总的来说降低电压能减少功耗。
上面的描述可以用下式表示:把energy-per-transition定义为单个时钟周期触发器的能量消耗。ai-j是从状态转换概率;ei-j是状态转换消耗的能量;功耗可以通过公式表示为:
E=a0-0*e0-0+a0-1*e0-1+
a1-0*e1-0+a1-1*e1-1(2)
从上式分析可以看出,可以分别通过改变a和e来降低功耗。改变a的措施有减少触发器的节点的冗余跳变,改变e的措施有降低电压、减少电路节点电容以及缩减晶体管的大小。
2.3 主从触发器
主从触发器由2个锁存器组成,前一级锁存器在低(高)电平时将输入传至输出,后一级锁存器在高(低)电平时将输入传至输出。典型的主从触发器有传输门触发器(TGFF),带门控的传输门触发器(GTGFF),真单向触发器(TSPC)和对时钟偏差不敏感的触发器(C2mos,MC2mos)等。TGFF的输入信号通过反向器隔离加强,它是功耗、噪声容限、速度的最好折衷,用传输门实现主从触发器是很好的选择。GTGFF是在TGFF的基础上在主站加1个内部时钟控制门得来的,因为有了时钟控制门,GTGFF的功耗相对于TGFF要小些。内部时钟控制门减少功耗的关键在于内部时钟门逻辑和时钟功耗开销的折衷与平衡。TSPC避免了因时钟偏差引起的各种问题,只用单相位时钟来实现主从拓扑结构,使电路不产生竞争,单相位时钟触发器对局部时钟偏差不敏感,其动态实现导致高开关频率和低时钟负载, TSPC边沿触发器依赖于足够陡直的时钟斜率以限制触发器的透明时间(例如保持时间,在透明时间输入可以直接传到输出),其上升时间必须仔细优化。两相设计会引起竞争问题,但也可以采用C2MOS这样的电路技术来消除,C2MOS触发器是把传输门锁存器中连接到顶端PMOS和底端NMOS晶体管的连线去掉而得到的;伪静态C2MOS 触发器是在动态C2MOS 触发器中主从锁存器的输出端分别添加一个弱C2MOS 反馈而得到的;MC2MOS是通过C2MOS改进而来,它的低功耗的反馈保证了它的全静态操作。 PowerPC603触发器,如图2所示,使用传输门结构,有比较快的上拉能力,反馈传输门用一个钟控反相器替换,powerpc603电路结构,是传输门触发器(TGMS flip-flop)和MC2mos的组合。
2.4 脉冲触发器
脉冲触发器也是双站的触发器,第一站是脉冲产生器,第2站是一个锁存器。
图3所示是半动态触发器SDFF的原理图,前端是动态的,产生一个时钟脉冲,触发后端一个静态的锁存器,当CP为0时,X为1,脉冲触发器需要在电平无效的时候,把X点预充为高电平。当CP为1,CP的信号还没有传到与非门时,S点还是打开的,如果此时D为1,X的值就可传出去。当3个反向器的时间过去后,CP的新值传到与非门上,S关断,D的值就传不出去,这就是一个取值脉冲。混合锁存的触发器(HLFF),在结构上与SDFF相似,有一个静态的脉冲产生器,此电路的建立时间可以为负,所以寄存器本身的延时很短,但是其在上升沿附近输出可以有多次翻转,因此不应使用这一寄存器的输出来驱动动态逻辑或作为其他寄存器的时钟。灵敏放大器(MSAFF)是一个完全不同的脉冲触发器,它在需要高性能或者传送低摆幅的时候使用,它可能成为未来发展的方向之一。
主从触发器相对脉冲触发器来说有较好的内部抗竞争能力,消耗较低的功耗,但是其他参数都高于脉冲触发器。
3 比 较
在电路和系统级对触发器的延时和功耗进行优化,对触发器性能的提高有极其重要的作用。本文研究了几种典型触发器的性能,图4[1]是对各种典型触发器功耗的比较,该图显示了主从触发器比脉冲触发器消耗更少的能量,TGFF是消耗功耗最少的触发器,在低能量的设计中,它是最好的选择,它的功耗延时积比较小,TGFF是和带内部时钟门触发器比较的标准。图5[2]是对各种触发器毛刺功耗的比较,由于采样时间短,脉冲触发器消耗的毛刺功耗最小;而当主站是透明时,主从触发器对毛刺非常敏感;时钟门电路要消耗很大的毛刺功耗,这是因为时钟门逻辑不断地比较输入与输出,它忽略了时钟沿的跳变,传播毛刺(时钟的毛刺不影响触发器的时序竞争的抗干扰性,时钟的滞后问题是产生竞争的原因,解决时序竞争的办法就是采用比较高的电压)。图6[3]是对几种典型触发器跳变概率的功耗延时积的比较,它显示了在高跳变概率的电路中,SDFF和MSAFF拥有最好的功耗延时积,虽然它们的功耗延时积很好,但是在设计中更倾向于使用TGFF,因为TGFF的内部竞争力很好,很适合在有时钟滞后的大规模的电路设计中使用。(在很多的低功耗设计中,触发器很少处在关键路径上,当建立时间没有包含在触发器的延时中时,触发器的EDP的排序就会改变)。相对于主从触发器,脉冲触发器有更小的延时,这是因为它的建立时间很小,有的甚至为负,这使得脉冲触发器的竞争力比较好。带有内部时钟控制门的脉冲触发器和没有内部时钟控制门的脉冲触发器相比,竞争能力(race immunity)不太好。带有内部时钟门的主从触发器和没有内部时钟门的主从触发器相比,竞争能力比较好。例如:GTGFF和TGFF相比有更好的竞争能力,而这是以增加延时为代价的。
通过对各种触发器进行比较,考虑到结构、可靠性、管子数目,以功耗延时积作为重要指标,可以知道传输门触发器(TGMS)和PowerPC603触发器是功耗延时性能最好的全静态触发器,并且它们在功耗延时空间覆盖了相对较宽的范围,PowerPC603和传输门触发器具有最优的功耗延时积;在追求高速时可考虑脉冲触发器,例如HLFF和SDFF,SDFF因为建立时间短而成为最快的触发器,但是它们消耗了可观的功耗,约为传输门触发器(TGMS)的2倍。而真单向TSPC和动态传输门触发器在性能上和SDFF差不多,在功耗上与传输门触发器差不多,但是它们的内部结点X对于漏电流和其他噪声来源很敏感,可靠性不高,在调试模式下容易出错。
同时也有研究表明PowerPC603和HLFF的PDP值差不多,但是HLFF比PowerPC603更快。此电路的建立时间可以为负,所以寄存器本身的延时很短,但是其在上升沿附近输出可以有多次翻转,因此不应使用这一寄存器的输出来驱动动态逻辑或作为其他寄存器的时钟。
PowerPC603和C2MOS具有最好的低功耗设计的风格,SAFF可能是未来设计的主流,虽然SAFF在输出端速度有瓶颈,但是它是功耗速度的好的折衷。
4 几种改进的触发器的介绍
针对传统的寄存器的缺陷,通过对传统寄存器进行功耗和性能上的优化,提出了如下一些解决方案:通过避免不必要的结点的传递减小功耗、优化性能。避免不必要的结点的传递方法主要有数据前瞻、条件预冲、条件放电、条件占有、自适应方法等;另一种方案就是采用双边沿的技术,通过减少时钟系统的功耗减少触发器的功耗,双边沿触发器的性能是单边沿触发器性能的2倍,而功耗和单边沿触发器的功耗一样,采用双边沿技术对功耗和性能的提高具有深远的影响。
触发器范文3
打开Powerpoint2013,插入图片并缩小,切换到“开始”选项卡,单击“选择”按钮选择“选择窗格”,这样可以看到当前页面中的所有对象,双击图片名称可以修改成指定的名称,如:图1-小图,这样便于后面进行选择(见图1)。使用“选择窗格”可以精确选择特定对象,特别是当页面中对象很多,并且重叠在一起时,非常实用。
再次插入该图片,并放大覆盖整个页面,并取名为“图1-大图”,选中该图片,切换到“动画”选项卡,单击“添加动画”按钮选择“更多进入效果”弹出对话框,选择“基本缩放”(见图2),这样制作出图片放大动画。
再次单击“添加动画”按钮选择“更多退出效果”弹出对话框,选择“基本缩放”,这样制作出图片的缩小动画。单击“动画窗格”按钮,可以看到“图1-大图”应用了两种动画(见图3)。如果这里只显示一种动画效果,可能是添加动画时没有从“添加动画”按钮中进行添加,而是直接选择动画效果的。
触发器范文4
[关键词]触发器 逻辑功能 记忆法
[中图分类号]G71[文献标识码]A[文章编号]16746058(2016)300117
触发器是中职学生必须掌握的基础知识,描述触发器逻辑功能的方法有真值表、逻辑表达式、波形图、逻辑图等。由于触发方式的区别,因此学生不易记忆,容易混淆逻辑关系。笔者结合实际教学总结以下方法以便学生巧记触发器的逻辑功能。
一、触发器名称和逻辑功能关联记忆法
触发器主要有两个双稳态:0态和1态。相应输入端能使输出端Q处于0态和1态,称为置0端或置1端。在触发器接收数据期间,置0端有效,Q输出为0,置1端有效,Q输出为1,简记为置0端有效置0,置1端有效置1。在中职教材中只涉及RS触发器、JK触发器、D触发器。按照01的顺序关联触发器名称可以记为“RSKJ”。把JK触发器记忆为KJ触发器,以便符合01顺序,即RSKJ对应0101,R端、K端为置0端,S端、J端为置1端。D触发器只记住D端置1为1,置0为0,不需要特别想办法记忆。实际上应向学生说明除了RS触发器外,JK触发器J与K端不再称置0端与置1端,也就是这两端有效组合时还有别的功能,但笔者要求学生在心里还把它们记为置0端与置1端,这样,触发器功能记忆就方便了:“置0端有效置0,置1端有效置1;两者同时有效,RS不允许,JK翻转;两者同时无效,均保持功能。”
二、触发方式与记忆标志
无论是置0端还是置1端有效与否,还得取决于控制端是否有效。只有在控制端有效的前提下,触发器才接收数据,否则,即便是置0端、置1端都有效也不会输出数据。所以,控制端与置0端、置1端形成了“控制与受控”的关系。对受控端而言,有效无效表现在电平方式上,即高电平有效或者是低电平有效;对控制端而言,有效无效的表现形式有两种,一是电平触发方式,和受控端一样;二是边沿触发方式,即上升沿或下降沿有效。故对置0端、置1端只有高低电平有效的说法,对控制端CP可能是高低电平有效,也可能是边沿触发有效,确认的标志就是在电路图中CP端是否有“>”号存在,如有则上升沿有效;如有“>”且电路图边沿线外对应有圆圈标志则下降沿有效;如果没有“>”则表示电平触发方式。
在比较复杂一点的集成触发器中,一般会出现直接置0端、直接置数端,叫法多样:直接置数端、复位端、清零端。这些具有“直接”功能的端不受控制端控制,只要它们有效即进行相应的置数或清零操作,所以“直接”功能的端口在数据传输初始和结束时可能有效,起到准备和收尾工作作用,而在正常处理数据时应是无效存在的。在电路图标志端符号一般加下标加以区别,如“直接置数端SD”。
三、记清楚关键“唯一”功能,其他类触发器则联想记忆
基本RS触发器具有三个唯一:唯一学过的没有控制端的触发器;唯一的低电平有效的触发器;唯一不允许置0置1端同时有效的触发器。 对于基本RS触发器和同步RS触发器R端与S端不允许同时有效可以理解为:在逻辑电路中对数据的逻辑关系中出现同时有效时,输出Q端会根据电路原理有可能出现1,也有可能出现0,到底会出现0还是1,对RS触发器而言是不确定的,但不是0就是1,所以电路本身不会就此瘫痪,但对逻辑结果而言出现了不确定性,因此对电路本身是正常的,对逻辑关系来说是混乱的,故不允许RS端同时出现有效。另外还有一层含义,正因为电路在这种情况下还能正常工作,当出现RS端同时有效的不确定的逻辑结果对整个电路的逻辑关系不影响时,或者说数据在出现不确定逻辑结果期间,电路正好不接收数据,所以这个不确定结果也就没有在逻辑关系中表现出来。所以我们要理解为对联逻辑关系有影响时不允许,没影响时可以出现,而不是绝对不出现。这点笔者是通过分析触发器功能作逻辑波形图时,学生遇到这种情况时无法完成后发现的。 唯一功能掌握了,其他情况比较好记,如集成边没JK触发器是在控制端控制下,高电平有效,控制端是边沿触发方式,在CP有效期间,K有效置0,J有效置1,同时有效翻转,无效保持,CP无效保持。
四、对置0、置1端和CP控制端相连类触发器分析
触发器范文5
关键词:D触发器 74HC74 检测电路 故障锁存
中图分类号:TM57 文献标识码:A 文章编号:1672-3791(2014)02(a)-0185-02
1 D触发器的基本原理
1.1 触发器的基本概念
触发器是用于存储一位二进制信号的基本单元电路,具有记忆功能。触发器具备两个基本特点:一是具有两个自行保持的稳定状态0和1;二是在不同的输入信号作用下,能够置成0状态或1状态。所有的触发器都具有两个输出端Q和,所谓触发器的0状态是值输出端处于Q=0,=1状态;触发器的1状态是指输出端处于Q=1,=0状态。
1.2 D触发器的工作原理
凡是在时钟信号作用下,具有置0、置1功能的触发器,叫做D触发器。我们以利用CMOS传输门的边沿触发器为例对D触发器的工作原理进行分析。
利用CMOS传输门的D触发器,如图1所示,其电路结构上是由两个触发器构成,一主一从,但是该触发器的动作特点与主从RS触发器和JK触发器完全不同。
工作原理:CP=0时,TG1和TG4导通,TG2和TG3截止。由于TG1导通,D信号能够传输到G1门的输入端,使得主触发器的Q′=D,但是由于此时TG2截止,所以主触发器的状态无法保持,Q′始终随着D而变化;又由于TG3截止,TG4导通,所以从触发器的状态能够保持不变。当CP出现上升沿时,即CP=1时,TG1和TG4截止,TG2和TG3导通。由于TG1截止,D信号不能被传输到G1门的输入端,此时D信号的变化,不能影响主触发器的状态,又由于TG2导通,所以CP上升沿到来前一瞬间D的状态被传输到主触发器,并被主触发器保持下来;而此时TG3导通,所以主触发器的状态被传输到从触发器,即Q=Q′=D,虽然此时TG4截止,从触发器的状态不能自行保持,但是由于Q始终等于Q′,而Q′保持不变,故从触发器的状态能够得到保持。
根据上述工作原理,可得到利用CMOS传输门的D触发器的特性方程为:
Qn+1=DQn+Dn
化简得:Qn+1=D。
2 编码检测电路存在的问题
DX-600中波发射机是由美国哈里斯公司生产的全固态中波发射机,该机器系统庞大、电路结构复杂、故障检测繁琐,维护量大,维护难度高。该机器主要由3个功放单元、合成器、控制单元以及附属设备组成,主要包括射频信号系统、音频信号系统、控制与检测系统,其中控制与检测系统是核心。其工作原理是模拟的音频信号经过A/D转换后变成12BIT的数字信号,并经调制编码成为功放模块导通与否的控制信号,各导通模块输出进行合成,合成输出电压取决于瞬时功放模块导通的数目,输出经过匹配滤波,最终由四塔定向天线发射出去。
在DX-600中波发射机中,每个功放单元均有7块调制编码板,调制编码板的主要作用是将数字化的音频信号编码成控制功放模块导通的调制信号,该电路板主要包括调制编码的控制与检测电路。由于7块调制编码板的控制与检测输出部分都是并联的,作为整机调制最重要的部分,一旦某块板出现故障,立即造成机器故障关机,无法再开启,对安全播出影响巨大。
如图2所示,该电路是调制编码板的编码故障检测电路部分,当调制编码各部分正常工作时,将送出高电平信号给缓冲器U49-1、3,U49-2、4反相输出低电平信号,此时三极管Q5不导通,R54钳在高电平位置,J8-33输出高电平正常信号,同时DS9不亮;当调制编码出现电源等故障时,将送出低电平信号给缓冲器U49-1、3,U49-2、4反相输出高电平信号,此时三极管Q5导通,R54被拉低,J8-33输出低电平正常信号,送到控制板执行关机命令,同时故障检测灯DS9亮红灯,指示编码电源故障。由于7块调制编码板的检测输出是并联的,当其中一块调制编码板出现故障时,因为该板的故障检测灯DS9无法锁存指示,所以无法判断故障是哪块编码板引起的,而且更换一块电路板至少需要5 min,即使用排除法也要二三十分钟,容易造成严重的停播事故。我台发射机曾经出现过类似的调制编码板电源故障,但是由于故障检测灯DS9不能锁存,而且功放单元发生故障后立即关机了,无法判断故障来源,只能采取逐一更换电路板的方法来排除,时间久,效率低,严重影响了播出安全和播出效果。
3 编码检测电路的改进
3.1 74HC74触发器
如图3所示,该表为74HC74的功能表,74HC74为单输入端的双D触发器,其触发原理:当SET端为高电平、CLR端为低电平时,无论输入D端和时钟CP为任何状态,触发器输出Q端均为低电平;当SET端、CLR端为高电平时,此时若输入D端和CP也为高电平,则触发器输出Q端为高电平。
3.2 改进的检测电路
针对原电路无法锁存的问题,结合74HC74触发器的功能原理,我们对电路进行改进,设计了以D触发器为主的编码检测锁存电路。如图4所示,该电路与原电路相比,增加了74HC74触发器和S10复位开关。
电路原理:当调制编码各部分正常工作时,故障检测信号为高电平,经缓冲器U49-1、3,U49-2、4反相输出低电平信号,此时三极管Q5不导通,R54钳在高电平位置,J8-33输出高电平正常信号;同时送到U1的CP端为低电平,U1不触发,Q端输出保持低电平,DS9不亮;当调制编码出现电源等故障时,故障检测信号变为低电平,经缓冲器U49-1、3,U49-2、4反相输出高电平信号,此时三极管Q5导通,R54被拉低,J8-33输出低电平正常信号,送到控制板执行关机命令;同时送到U1的CP端和D端均为高电平,U1触发,Q端输出高电平,DS9亮红灯并锁存。此时可根据DS9的指示快速找到发生故障的调制编码板,按S10开关可将DS9复位。
4 结语
经过实验论证,确定改进后的编码检测电路能够实现故障指示的实时锁存以及复位功能,使技术员能够立刻找到故障点,迅速排除故障,而且故障排除时间缩短至仅为原先的1/10,实践证明效果很好,而且具有推广价值。DX系列的中波发射机虽然是目前最世界上最先进的全固态中波发射机之一,但是设计也是会有不足之处的,我们在日常维护中需要多思考,多总结,并对相关电路进行改进,更好地保证安全播出。
参考文献
[1] 范立南,代红艳,恩莉,等.数字电子技术[M].中国水利水电出版社,2005.
触发器范文6
关键词:并发控制;纠错方法;网站结构
中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2013)29-6656-05
乐观并发假设多用户并发的事务在处理时不会彼此互相影响,各事务能够在不产生锁的情况下处理各自影响的那部分数据。在提交数据更新之前,每个事务会先检查在该事务读取数据后,有没有其他事务又修改了该数据[1],其系统的正确性不仅依赖于事务的逻辑结果[2-3],而且依赖于该逻辑结果所产生的时间。如果其他事务有更新的话,正在提交的事务会进行回滚。乐观并发多数用于数据争用不大、冲突较少的环境中。
1 数据库系统的结构
1.1 触发器
触发器是对表进行插入、更新、删除的时候会自动执行的特殊存储过程[9-10]。触发器一般用在比较复杂的约束上面。触发器和普通的存储过程的区别是:触发器是当对某一个表进行操作。
触发器可以查询其他表,而且可以包含复杂的SQL语句。它们主要用于强制服从复杂的业务规则或要求[11]。
在交易记录表上的触发器代码:
CREATE TRIGGER Insert_chufa //建立一个触发器命名为Insert_chufa
AFTER INSERT ON JIAOYIBIAO //设定触发方式为在交易表进行了插入操作以后触发
FOR EACH ROW //定义触发器类型为行级触发器
AS BEGIN
INSERT 1INTO chufabiao VALUES(new.shangdai,new.shagdai,new.shenyu,new.bushu,new.goumi,new.shijian); //触发器在触发后完成的操作
从以上可以看出在交易记录表上创建了一个行级触发器(FOR EACH ROW)以达到每当一条记录插入交易记录表时就往触发表里插入一条记录[12]的目的,after insert保证了在记录先在交易记录表中插入[13-14]保证了交易记录表与触发表之间的先后关系。
1.2 表结构
一般的乐观并发控制只在事务提交时查看其时间戳[15],若时间戳发生改动则说明在此事务执行过程中有其他事务对其操作对象进行写入从而回滚此事务,在这一过程中所需要的只有交易记录表与库存表,每张表的列数也较少[16],在数据竞争较小的环境下有较高的效率,但当在数据竞争较大时效率会大大降低,为应对此环境需要对其处理流程以及表结构进行修改。
一般乐观并发表结构如表1和表2所示。
从上述表结构中可以看出改进并发在表的数量与每张表的属性上都与一般乐观并发有着一定程度的区别:
1) 在交易记录表方面改进并发算法比一般乐观并发算法多出两列,分别是剩余数量和被修改次数。
2) 在库存表方面改进并发算法将修改发生时间这一列改为此商品被修改次数。
3) 触发表里的记录是由交易记录表里的记录去掉客户代号这一列后通过触发器生成的。
bushu列代表此商品被修改次数及从此商品销售开始,被客户修改的次数。
在上述的不同点中可以看出每个表都加入了此商品被修改次数这一列,这一列对改进并发的核心算法来说是非常重要的。它代替了时间戳来查找有无数据冲突,每当服务端接收到客户端传来的购买指令就会开启一个事务在此事务中先在库存表中读取所要购买的商品信息,生成交易记录时将此商品被修改次数加1代表这是此商品的bushu+1次修改,当在此事务的执行过程当中又有一个事务对此商品进行修改那么此事务在生成交易记录时此条记录的此商品被修改次数也为bushu+1。
丢失修改类的错误发生的主要原因是,系统不知道在两次访问数据的时间间隔内有多少事务对此数据项进行了修改,在一般乐观并发中只要时间戳不同就回滚事务,之所以不能做其他操作是因为不知道时间戳在此期间改变了几次,在改进算法中被修改次数记录了在 此事务提交后数据项被修改的次数在触发表中可以看出在一个事务执行周期内有多少事务与其有数据冲突,这样就为此改进算法提供了监控和调整的前提。
2 服务器端与数据库的线程结构
客户购买商品后服务端所生成的线程对数据库的操作步骤:
1) 从库存表里读取与客户端传递的商品编号对应的商品信息并将读取的步数加1(i=bushu+1)。
设传来的商品代号为d,
2) 赋予时间戳(t)。
3) 将客户对此商品的修改(包含时间戳)插入交易记录表。
4) 待交易记录表中的触发器将此行插入触发表根据时间戳(t)找出所在行的行标(k)。
5) 在触发表中查找商品代号相同步数为i且行标小于k的元组并计数(r)。
(1) 若r=0 更新库存表。
(2) 若r>=2从触发表里删除此元组并在交易记录表中删除于此对应的元组通知客户端交易失败。
(3) 若r=1
① 找到此步数重复元组并从元组中读出剩余数量(sy),生成一新的记录将当前购买量(gml)减去剩余数量得(sy=sy-gomai)并将i加1(m=i+1),赋予时间戳(t1)。
② 向触发表中插入此经过修改后的记录。
③ 根据时间戳(t1)找出所在行的行标(k1)。
④ 在触发表中查找商品代号相同步数为m且行标小于k1的元组并计数(r1)。
⑤ 若r1=0更新库存表并将m、t1、sy更新至交易记录表对应时间戳为t的元组中。
⑥ 若r1>=1从触发表里删除此元组并在交易记录表中删除于此对应的元组通知客户端交易失败。
3 改进算法与传统乐观并发算法比较
下面具体分析一下传统乐观并发算法与其改进算法的一些特点。
设在某个时段间内有两个事务对库存表中的同一商品进行读写操作,如图1所示:
从图1对过程的描述可以看出事务1和事务2之间有着明显的数据冲突,事务1对数据库的修改丢失了。事务2在t4写入库存表时系统逻辑发生错误。
若数据库采用了传统的乐观并发控制,结果如图2所示:
从上图中可以看出经过传统的乐观并发控制当事务1和事务2发生数据冲突时为了保证系统的正确性系统将事务1对数据库做的读写操作是全部取消,事务1回滚。
可以看出这种并发方式用在购物网站中效果不好,它违反了在商品交易中先到先得的原则会给用户较差的体验。
若数据库采用了改进并发控制,结果如图3所示:
从图3中可以看出经过改进并发控制当事务1和事务2发生数据冲突时系统会在触发表里查找事务2对应的数据库操作,当系统发现事务2所对应的数据项与在其之前的事务1的数据项步数相同时会根据事务1的数据项重新生成一个数据项插入到触发表中去,在图中新数据项在t5插入触发表,经过再次判断事务2将在t6完成对库存表的写入。
改进并发控制的优点还在于当系统中没有数据冲突时每个事务相比传统的乐观并发控制的事务,执行时只多出在触发表中进行一次查找的时间,对系统效率的影响不大,但当有数据冲突时相比传统的乐观并发控制直接使事务回滚,可以看出改进算法可以使系统效率提升。
4 实际测试
4.1 测试方法
设有三个事务w1、w2、w3 ,将w1和w2同时启动,w3延时6秒后启动。其中:
w1对数据库的修改:客户4购买商品代号为12的商品5件;
w2对数据库的修改:客户6购买商品代号为12的商品4件;
w3对数据库的修改:客户2购买商品代号为12的商品6件。
在测试中使得w1与w2发生数据冲突。
分别使用传统的乐观并发控制和改进并发控制对系统进行控制,用所得结果进行比较。
4.2 测试结果
下面两幅图为经过传统的乐观并发控制和改进并发控制后系统的交易记录表里的内容:
从交易记录表与库存表的结果比较中也可以看出使用传统的乐观并发控制后的库存表的剩余为57,使用改进并发控制后的库存表的剩余为52,这表示使用改进并发控制后有一个原本要回滚的事务正确提交了,说明改进并发控制相较传统的乐观并发控制有一个较高的提交率,说明了改进并发控制对此系统有着较高的适应性。
5 结束语
此改进算法在继承了一般乐观并发算法的快速,无死锁等特点的基础上提高了系统的并发度,使得事务可以在不加锁的状态下获得一个较高的提交率。系统的结构较好的应对了丢失修改类数据的错误,这使得此系统在购物网站等方面有一个较好的应用。
参考文献:
[1] 贾智平,崔文静.分布式实时数据库系统中基于Web的并发控制[J].大连理工大学学报,2003,43(10):196-200.
[2] 陶宏才.数据库原理及设计[M].北京:清华大学出版社,2004.
[3] 廖国琼,李陶深.一种支持工程设计事务的乐观并发控制方法[J].计算机工程,2000,26(7):25-26.
[4] 潘瑞芳,朱永玲,叶福军.数据库原理及应用开发[M].北京: 中国水利水电出版社,2005.
[5] Abraham Silberschatz(美).数据库系统概念[M].杨冬青,译.北京:机械工业出版社,2002.
[6] 舒后.分布式数据库系统的并发控制方法讨论[J].微型机与应用,2002,33(12):14-17.
[7] 赵杰,李涛. SQL SERVER 数据库管理、设计与实现[M]. 北京:清华大学出版社,2004.
[8] 韩宏志.数据库设计与开发教程[M].北京:清华大学出版社, 2005.
[9] 陈俊伽,王韬.关系数据库并发控制机制研究[J].科学技术与工程, 2007,7(18):46-49.
[10] 丁宝康,董健全:数据库使用教程[M].北京:清华大学出版社,2001.
[11] Sha L Raj Kumar R John P. Lehoczky. Priority Inheritance Protocols : An Approach to Real2time Synchronization [J].IEEE Transactions on Computers,1990,39 (9):1177-1185.
[12] 王博,李腊元,冯美来.基于数据同步协议的研究与实现[J].武汉理工大学学报,2007,12(6):68-70.
[13] 张丽华,李莉.达梦数据库并发控制机制研究[M].北京:程序员出版社,2007.
[14] 蒋芳就.基于MS SQL Server分布式数据库的安全性设计[J].计算机系统应用,1999,21(2): 30-33.