在过去的十几年间,FPGA取得了惊人的发展:集成度已达到1000万等效门、速度可达到400~500MHz。随着FPGA的集成度不断增大,在高密度FPGA中,芯片上时钟的分布质量就变得越来越重要。时钟延时和时钟相位偏移已成为影响系统性能的重要因素。现在,解决时钟延时问题主要使用时钟延时补偿电路。 为了消除FPGA芯片内的时钟延时,减小时钟偏差,本文设计了内置于FPGA芯片中的延迟锁相环,采用一种全数字的电路结构,将传统DLL中的用模拟方式实现的环路滤波器和压控延迟链改进为数字方式实现的时钟延迟测量电路,和延时补偿调整电路,配合特定的控制逻辑电路,完成时钟延时补偿。在输入时钟频率不变的情况下,只需一次调节过程即可完成输入输出时钟的同步,锁定时间较短,噪声不会积累,抗干扰性好。 在Smic0.18um工艺下,设计出的时钟延时补偿电路工作频率范围从25MHz到300MHz,最大抖动时间为35ps,锁定时间为13个输入时钟周期。另外,完成了时钟相移电路的设计,实现可编程相移,为用户提供与输入时钟同频的相位差为90度,180度,270度的相移时钟;时钟占空比调节电路的设计,实现可编程占空比,可以提供占空比为50/50的时钟信号;时钟分频电路的设计,实现频率分频,提供1.5,2,2.5,3,4,5,8,16分频时钟。
上传时间: 2013-07-06
上传用户:LouieWu
本文主要研究了认知无线电频谱感知功能的关键技术以及硬件实现方法。首先,提出了认知无线电频谱感知功能的硬件实现框图,包括射频前端部分和数字信号处理部分,接着简单介绍了射频前端电路的功能与特性,最后重点介绍了数字信号处理部分的FPGA实现与验证过程。 数字处理部分主要实现宽带信号的短时傅立叶分析,将中频宽带数字信号通过基于多相滤波器组的下变频模块,实现并行多通道的数字下变频,然后对每个信道进行重叠加窗处理,最后再做快速傅立叶分析(FFT),从而得到信号的时频关系。整个系统主要包括:延时抽取模块、多相滤波器模块、32点开关式流水线FFT模块、滑动窗缓冲区、256点流水线FFT模块等。 本设计采用Verilog HDL硬件描述语言进行设计,基于Xilinx公司的Virtex-4XC4VSX35芯片。整个系统采用全同步设计,可稳定工作于200MHz,其分析带宽高达65MHz,具有很高的使用价值。
上传时间: 2013-06-13
上传用户:bcjtao
现场可编程门阵列(FPGA)是一种可实现多层次逻辑器件。基于SRAM的FPGA结构由逻辑单元阵列来实现所需要的逻辑函数。FPGA中,互连线资源是预先定制的,这些资源是由各种长度的可分割金属线,缓冲器和.MOS管实现的,所以相对于ASIC中互连线所占用的面积更大。为了节省芯片面积,一般都采用单个MOS晶体管来连接逻辑资源。MOS晶体管的导通电阻可以达到千欧量级,可分割金属线段的电阻相对于MOS管来说是可以忽略的,然而它和地之间的电容达到了0.1pf[1]。为了评估FPGA的性能,用HSPICE仿真模型虽可以获得非常精确的结果,但是基于此模型需要花费太多的时间。这在基于时序驱动的工艺映射和布局布线以及静态时序分析中都是不可行的。于是,非常迫切地需要一种快速而精确的模型。 FPGA中连接盒、开关盒都是由MOS管组成的。FPGA中的时延很大部分取决于互连,而MOS传输晶体管在互连中又占了很大的比重。所以对于MOS管的建模对FPGA时延估算有很大的影响意义。对于MOS管,Muhammad[15]采用导通电阻来代替MOS管,然后用。Elmore[3]时延和Rubinstein[4]时延模型估算互连时延。Elmore时延用电路的一阶矩来近似信号到达最大值50%时的时延,而Rubinstein也是通过计算电路的一阶矩估算时延的上下边界来估算电路的时延,然而他们都是用来计算RC互连时延。传输管是非线性器件,所以没有一个固定的电阻,这就造成了Elmore时延和Rubinstein时延模型的过于近似的估算,对整体评估FPGA的性能带来负面因素。 本论文提出快速而精确的现场可编程门阵列FPGA中的互连资源MOS传输管时延模型。首先从阶跃信号推导出适合50%时延的等效电阻模型,然后在斜坡输入的时候,给出斜坡输入时的时延模型,并且给出等效电容的计算方法。结果验证了我们精确的时延模型在时间上的开销少的性能。 在岛型FPGA中,单个传输管能够被用来作为互连线和互连线之间的连接,或者互连线和管脚之间的连接,如VPR把互连线和管脚作为布线资源,管脚只能单独作为输入或者输出管脚,以致于它们不是一个线网的起点就是线网的终点。而这恰恰忽略了管脚实际在物理上可以作为互连线来使用的情况(VPR认为dogleg现象本身对性能提高不多)。本论文通过对dogleg现象进行了探索,并验证了在使用SUBSET开关盒的情况下,dogleg能提高FPGA的布通率。
上传时间: 2013-07-24
上传用户:yezhihao
电路连接 由于数码管品种多样,还有共阴共阳的,下面我们使用一个数码管段码生成器(在文章结尾) 去解决不同数码管的问题: 本例作者利用手头现有的一位不知品牌的共阳数码管:型号D5611 A/B,在Eagle 找了一个 类似的型号SA56-11,引脚功能一样可以直接代换。所以下面电路图使用SA56-11 做引脚说明。 注意: 1. 将数码管的a~g 段,分别接到Arduino 的D0~D6 上面。如果你手上的数码管未知的话,可以通过通电测量它哪个引脚对应哪个字段,然后找出a~g 即可。 2. 分清共阴还是共阳。共阴的话,接220Ω电阻到电源负极;共阳的话,接220Ω电阻到电源+5v。 3. 220Ω电阻视数码管实际工作亮度与手头现有原件而定,不一定需要准确。 4. 按下按钮即停。 源代码 由于我是按照段码生成器默认接法接的,所以不用修改段码生成器了,直接在段码生成器选择共阳极,再按“自动”生成数组就搞定。 下面是源代码,由于偷懒不用写循环,使用了部分AVR 语句。 PORTD 这个是AVR 的端口输出控制语句,8 位对应D7~D0,PORTD=00001001 就是D3 和D0 是高电平。 PORTD = a;就是找出相应的段码输出到D7~D0。 DDRD 这个是AVR 语句中控制引脚作为输出/输入的语句。DDRD = 0xFF;就是D0~D7 全部 作为输出脚了。 ARDUINO CODECOPY /* Arduino 单数码管骰子 Ansifa 2011-12-28 */ //定义段码表,表中十个元素由LED 段码生成器生成,选择了共阳极。 inta[10] = {0xC0, 0xF9, 0xA4, 0xB0, 0x99, 0x92, 0x82, 0xF8, 0x80, 0x90}; voidsetup() { DDRD = 0xFF; //AVR 定义PortD 的低七位全部用作输出使用。即0xFF=B11111111对 应D7~D0 pinMode(12, INPUT); //D12用来做骰子暂停的开关 } voidloop() { for(int i = 0; i < 10; i++) { //将段码输出PortD 的低7位,即Arduino 的引脚D0~D6,这样需要取出PORTD 最高位,即 D7的状态,与段码相加,之后再输出。 PORTD = a[i]; delay(50); //延时50ms while(digitalRead(12)) {} //如果D12引脚高电平,则在此死循环,暂停LED 跑 动 } }
上传时间: 2013-10-15
上传用户:baitouyu
看门狗是一个计数器,它需要在一定的看门狗延时周期内被清零,如果没有清零动作,看门狗电路将产生一个复位信号使系统重新启动或建立一个非屏蔽终端、执行故障恢复子程序。
上传时间: 2013-10-30
上传用户:曹云鹏
使用时钟PLL的源同步系统时序分析一)回顾源同步时序计算Setup Margin = Min Clock Etch Delay – Max Data Etch Delay – Max Delay Skew – Setup TimeHold Margin = Min Data Etch Delay – Max Clock Etch Delay + Min Delay Skew + Data Rate – Hold Time下面解释以上公式中各参数的意义:Etch Delay:与常说的飞行时间(Flight Time)意义相同,其值并不是从仿真直接得到,而是通过仿真结果的后处理得来。请看下面图示:图一为实际电路,激励源从输出端,经过互连到达接收端,传输延时如图示Rmin,Rmax,Fmin,Fmax。图二为对应输出端的测试负载电路,测试负载延时如图示Rising,Falling。通过这两组值就可以计算得到Etch Delay 的最大和最小值。
上传时间: 2013-11-05
上传用户:VRMMO
脉冲波形的产生和整形:介绍矩形脉冲波形的产生和整形电路。 在脉冲整形电路中。介绍了最常用的两类整形电路——施密特触发器和单稳态触发器电路。在本章的最后,讨论了广为应用的555定时器和用它构成施密特触发器、单稳态触发器和多谐振荡器的方法。 7.1单稳态触发器 单稳态触发器的工作特性具有如下的显著特点; 第一,它有稳态和暂稳态两个不同的工作状态; 第二,在外界触发脉冲作用下,能从稳态翻转到暂稳态,在暂稳态维持一段时间以后,再自动返问稳态; 第三,暂稳态维持时间的长短取决于电路本身的参数,与触发脉冲的宽度和幅度无关。 由于具备这些特点。单稳态触发器被广泛应用于脉冲整形、延时(产生滞后于触发脉冲的输出脉冲)以及定时(产生固定时间宽度的脉冲信号)等。 7.1.1脉冲波形的主要参数 获取矩形脉冲波形的途径不外乎有两种:一种是利用各种形式的多谐振荡器电路直接产生所需要的矩形脉冲,另一种则是通过各种整形电路把已有的周期性变化波形变换为符合要求的矩形脉冲。当然,在采用整形的方法获取矩形脉冲时,是以能够找到频率和幅度都符合要求的一种已有电压信号为前提的。 在同步时序电路中,作为时钟信号的矩形脉冲控制和协调着整个系统的工作。因此,时钟脉冲的特性直接关系到系统能否正常地工作。为了定量描述矩形脉冲的特性,通常给出图7-1 中所标注的几个主要参数。这些参数是: 脉冲周期 ——周期性重复的脉冲序列中,两个相邻脉冲之间的时间间隔。有时也使用频率 表示单位时间内脉冲重复的次数。
标签: 脉冲波形
上传时间: 2013-10-08
上传用户:gai928943
摘要: 介绍了时钟分相技术并讨论了时钟分相技术在高速数字电路设计中的作用。 关键词: 时钟分相技术; 应用 中图分类号: TN 79 文献标识码:A 文章编号: 025820934 (2000) 0620437203 时钟是高速数字电路设计的关键技术之一, 系统时钟的性能好坏, 直接影响了整个电路的 性能。尤其现代电子系统对性能的越来越高的要求, 迫使我们集中更多的注意力在更高频率、 更高精度的时钟设计上面。但随着系统时钟频率的升高。我们的系统设计将面临一系列的问 题。 1) 时钟的快速电平切换将给电路带来的串扰(Crosstalk) 和其他的噪声。 2) 高速的时钟对电路板的设计提出了更高的要求: 我们应引入传输线(T ransm ission L ine) 模型, 并在信号的匹配上有更多的考虑。 3) 在系统时钟高于100MHz 的情况下, 应使用高速芯片来达到所需的速度, 如ECL 芯 片, 但这种芯片一般功耗很大, 再加上匹配电阻增加的功耗, 使整个系统所需要的电流增大, 发 热量增多, 对系统的稳定性和集成度有不利的影响。 4) 高频时钟相应的电磁辐射(EM I) 比较严重。 所以在高速数字系统设计中对高频时钟信号的处理应格外慎重, 尽量减少电路中高频信 号的成分, 这里介绍一种很好的解决方法, 即利用时钟分相技术, 以低频的时钟实现高频的处 理。 1 时钟分相技术 我们知道, 时钟信号的一个周期按相位来分, 可以分为360°。所谓时钟分相技术, 就是把 时钟周期的多个相位都加以利用, 以达到更高的时间分辨。在通常的设计中, 我们只用到时钟 的上升沿(0 相位) , 如果把时钟的下降沿(180°相位) 也加以利用, 系统的时间分辨能力就可以 提高一倍(如图1a 所示)。同理, 将时钟分为4 个相位(0°、90°、180°和270°) , 系统的时间分辨就 可以提高为原来的4 倍(如图1b 所示)。 以前也有人尝试过用专门的延迟线或逻辑门延时来达到时钟分相的目的。用这种方法产生的相位差不够准确, 而且引起的时间偏移(Skew ) 和抖动 (J itters) 比较大, 无法实现高精度的时间分辨。 近年来半导体技术的发展, 使高质量的分相功能在一 片芯片内实现成为可能, 如AMCC 公司的S4405, CY2 PRESS 公司的CY9901 和CY9911, 都是性能优异的时钟 芯片。这些芯片的出现, 大大促进了时钟分相技术在实际电 路中的应用。我们在这方面作了一些尝试性的工作: 要获得 良好的时间性能, 必须确保分相时钟的Skew 和J itters 都 比较小。因此在我们的设计中, 通常用一个低频、高精度的 晶体作为时钟源, 将这个低频时钟通过一个锁相环(PLL ) , 获得一个较高频率的、比较纯净的时钟, 对这个时钟进行分相, 就可获得高稳定、低抖动的分 相时钟。 这部分电路在实际运用中获得了很好的效果。下面以应用的实例加以说明。2 应用实例 2. 1 应用在接入网中 在通讯系统中, 由于要减少传输 上的硬件开销, 一般以串行模式传输 图3 时钟分为4 个相位 数据, 与其同步的时钟信号并不传输。 但本地接收到数据时, 为了准确地获取 数据, 必须得到数据时钟, 即要获取与数 据同步的时钟信号。在接入网中, 数据传 输的结构如图2 所示。 数据以68MBös 的速率传输, 即每 个bit 占有14. 7ns 的宽度, 在每个数据 帧的开头有一个用于同步检测的头部信息。我们要找到与它同步性好的时钟信号, 一般时间 分辨应该达到1ö4 的时钟周期。即14. 7ö 4≈ 3. 7ns, 这就是说, 系统时钟频率应在300MHz 以 上, 在这种频率下, 我们必须使用ECL inp s 芯片(ECL inp s 是ECL 芯片系列中速度最快的, 其 典型门延迟为340p s) , 如前所述, 这样对整个系统设计带来很多的困扰。 我们在这里使用锁相环和时钟分相技术, 将一个16MHz 晶振作为时钟源, 经过锁相环 89429 升频得到68MHz 的时钟, 再经过分相芯片AMCCS4405 分成4 个相位, 如图3 所示。 我们只要从4 个相位的68MHz 时钟中选择出与数据同步性最好的一个。选择的依据是: 在每个数据帧的头部(HEAD) 都有一个8bit 的KWD (KeyWord) (如图1 所示) , 我们分别用 这4 个相位的时钟去锁存数据, 如果经某个时钟锁存后的数据在这个指定位置最先检测出这 个KWD, 就认为下一相位的时钟与数据的同步性最好(相关)。 根据这个判别原理, 我们设计了图4 所示的时钟分相选择电路。 在板上通过锁相环89429 和分相芯片S4405 获得我们所要的68MHz 4 相时钟: 用这4 个 时钟分别将输入数据进行移位, 将移位的数据与KWD 作比较, 若至少有7bit 符合, 则认为检 出了KWD。将4 路相关器的结果经过优先判选控制逻辑, 即可输出同步性最好的时钟。这里, 我们运用AMCC 公司生产的 S4405 芯片, 对68MHz 的时钟进行了4 分 相, 成功地实现了同步时钟的获取, 这部分 电路目前已实际地应用在某通讯系统的接 入网中。 2. 2 高速数据采集系统中的应用 高速、高精度的模拟- 数字变换 (ADC) 一直是高速数据采集系统的关键部 分。高速的ADC 价格昂贵, 而且系统设计 难度很高。以前就有人考虑使用多个低速 图5 分相技术应用于采集系统 ADC 和时钟分相, 用以替代高速的ADC, 但由 于时钟分相电路产生的相位不准确, 时钟的 J itters 和Skew 比较大(如前述) , 容易产生较 大的孔径晃动(Aperture J itters) , 无法达到很 好的时间分辨。 现在使用时钟分相芯片, 我们可以把分相 技术应用在高速数据采集系统中: 以4 分相后 图6 分相技术提高系统的数据采集率 的80MHz 采样时钟分别作为ADC 的 转换时钟, 对模拟信号进行采样, 如图5 所示。 在每一采集通道中, 输入信号经过 缓冲、调理, 送入ADC 进行模数转换, 采集到的数据写入存储器(M EM )。各个 采集通道采集的是同一信号, 不过采样 点依次相差90°相位。通过存储器中的数 据重组, 可以使系统时钟为80MHz 的采 集系统达到320MHz 数据采集率(如图6 所示)。 3 总结 灵活地运用时钟分相技术, 可以有效地用低频时钟实现相当于高频时钟的时间性能, 并 避免了高速数字电路设计中一些问题, 降低了系统设计的难度。
上传时间: 2013-12-17
上传用户:xg262122
EDA (Electronic Design Automation)即“电子设计自动化”,是指以计算机为工作平台,以EDA软件为开发环境,以硬件描述语言为设计语言,以可编程器件PLD为实验载体(包括CPLD、FPGA、EPLD等),以集成电路芯片为目标器件的电子产品自动化设计过程。“工欲善其事,必先利其器”,因此,EDA工具在电子系统设计中所占的份量越来越高。下面就介绍一些目前较为流行的EDA工具软件。 PLD 及IC设计开发领域的EDA工具,一般至少要包含仿真器(Simulator)、综合器(Synthesizer)和配置器(Place and Routing, P&R)等几个特殊的软件包中的一个或多个,因此这一领域的EDA工具就不包括Protel、PSpice、Ewb等原理图和PCB板设计及电路仿真软件。目前流行的EDA工具软件有两种分类方法:一种是按公司类别进行分类,另一种是按功能进行划分。 若按公司类别分,大体可分两类:一类是EDA 专业软件公司,业内最著名的三家公司是Cadence、Synopsys和Mentor Graphics;另一类是PLD器件厂商为了销售其产品而开发的EDA工具,较著名的公司有Altera、Xilinx、lattice等。前者独立于半导体器件厂商,具有良好的标准化和兼容性,适合于学术研究单位使用,但系统复杂、难于掌握且价格昂贵;后者能针对自己器件的工艺特点作出优化设计,提高资源利用率,降低功耗,改善性能,比较适合产品开发单位使用。 若按功能分,大体可以分为以下三类。 (1) 集成的PLD/FPGA开发环境 由半导体公司提供,基本上可以完成从设计输入(原理图或HDL)→仿真→综合→布线→下载到器件等囊括所有PLD开发流程的所有工作。如Altera公司的MaxplusⅡ、QuartusⅡ,Xilinx公司的ISE,Lattice公司的 ispDesignExpert等。其优势是功能全集成化,可以加快动态调试,缩短开发周期;缺点是在综合和仿真环节与专业的软件相比,都不是非常优秀的。 (2) 综合类 这类软件的功能是对设计输入进行逻辑分析、综合和优化,将硬件描述语句(通常是系统级的行为描述语句)翻译成最基本的与或非门的连接关系(网表),导出给PLD/FPGA厂家的软件进行布局和布线。为了优化结果,在进行较复杂的设计时,基本上都使用这些专业的逻辑综合软件,而不采用厂家提供的集成PLD/FPGA开发工具。如Synplicity公司的Synplify、Synopsys公司的FPGAexpress、FPGA Compiler Ⅱ等。 (3) 仿真类 这类软件的功能是对设计进行模拟仿真,包括布局布线(P&R)前的“功能仿真”(也叫“前仿真”)和P&R后的包含了门延时、线延时等的“时序仿真”(也叫“后仿真”)。复杂一些的设计,一般需要使用这些专业的仿真软件。因为同样的设计输入,专业软件的仿真速度比集成环境的速度快得多。此类软件最著名的要算Model Technology公司的Modelsim,Cadence公司的NC-Verilog/NC-VHDL/NC-SIM等。 以上介绍了一些具代表性的EDA 工具软件。它们在性能上各有所长,有的综合优化能力突出,有的仿真模拟功能强,好在多数工具能相互兼容,具有互操作性。比如Altera公司的 QuartusII集成开发工具,就支持多种第三方的EDA软件,用户可以在QuartusII软件中通过设置直接调用Modelsim和 Synplify进行仿真和综合。 如果设计的硬件系统不是很大,对综合和仿真的要求不是很高,那么可以在一个集成的开发环境中完成整个设计流程。如果要进行复杂系统的设计,则常规的方法是多种EDA工具协调工作,集各家之所长来完成设计流程。
上传时间: 2013-11-19
上传用户:wxqman
信号完整性问题是高速PCB 设计者必需面对的问题。阻抗匹配、合理端接、正确拓扑结构解决信号完整性问题的关键。传输线上信号的传输速度是有限的,信号线的布线长度产生的信号传输延时会对信号的时序关系产生影响,所以PCB 上的高速信号的长度以及延时要仔细计算和分析。运用信号完整性分析工具进行布线前后的仿真对于保证信号完整性和缩短设计周期是非常必要的。在PCB 板子已焊接加工完毕后才发现信号质量问题和时序问题,是经费和产品研制时间的浪费。1.1 板上高速信号分析我们设计的是基于PowerPC 的主板,主要由处理器MPC755、北桥MPC107、北桥PowerSpanII、VME 桥CA91C142B 等一些电路组成,上面的高速信号如图2-1 所示。板上高速信号主要包括:时钟信号、60X 总线信号、L2 Cache 接口信号、Memory 接口信号、PCI 总线0 信号、PCI 总线1 信号、VME 总线信号。这些信号的布线需要特别注意。由于高速信号较多,布线前后对信号进行了仿真分析,仿真工具采用Mentor 公司的Hyperlynx7.1 仿真软件,它可以进行布线前仿真和布线后仿真。
上传时间: 2013-11-04
上传用户:herog3