
数字电路设计方法与技术
讲述芯片逻辑设计过程中多个时钟之间相互协调配合的设计方案
T触发器
射频工程师
电源工程师
上位机软件工程师
低温等离子体工程师
展开
-
9. 电磁干扰
影响集成电路EMC的因素设计者要在开始设计的时候就要考虑EMC而不是在设计快结束的时候再开率噪声源:电源和地线中的电流、时钟晶振或者RC时钟、时钟电路、输出信号、开关噪声、存储器信号线高压发射多、低压受干扰严重,高频发射多、接地不充分导致收到干扰三种办法移植干扰,源头,传播途径,敏感元件展频时钟技术:针对时钟信号在fft后频域的能量进行调制,扩频,降低单频率的能量密度,从而减少EMI。一般频率范围选择的是30-90khz,该方法还可以有效提高系统之间通信的阻抗匹配兼容性。差分时钟,类比差分信号原创 2020-12-28 21:21:09 · 259 阅读 · 0 评论 -
8.消抖技术
简介开关的金属触点在断开闭合的过程中产生了多个信号,消抖就是保证只有一个信号起到作用。这样的小抖动不像快脉冲一样造成市电上的其他设备出现故障。但是会导致模拟电路快速翻转的数字信号电路出现故障。便宜的电脑键盘通常使用导电橡胶制成的薄膜触点,软橡胶和金属触点接触后,橡胶起到接触缓冲,因而不会出现抖动信号,这是硬件机械消抖的一个例子。RC消抖最常见最容易实现的消抖电路,电阻电容串起来并联到开关上起到缓解电压变换的作用。下图电路容易出现一个问题,就是快速开关的时候可能误以为是抖动而消除,导致开关不.原创 2020-12-28 20:43:20 · 1804 阅读 · 0 评论 -
7.字节处理顺序
字节处理顺序主要指的是针对数据长度和操作系统位宽不一致的解决办法大端模式和小端模式大端模式就是指高位数据(大权值的数据)存储在存储区域的起始端位置大端模式就是指低位数据(小权值的数据)存储在存储区域的起始端位置优劣比较:大端模式进制转换、和显存更有效,小端模式的多精度计算更有效不同电脑的字节顺序比较表格处理器字节顺序体系结构ARM双字节(大端小端可变)POWER_PC双字节(大端小端可变)X86小端模式常用文件及其字节顺序表格文件格式.原创 2020-12-28 19:57:16 · 171 阅读 · 0 评论 -
6.流水线的艺术
简述总的来说思路就是,一级电路处理a1,交给二级电路,在二级电路处理a1的时候,一级电路处理a2,也就是电路时钟处于工作状态,而不用等待最后一级输出a1之后再处理a2。DLX指令集的实现指令集主要分为5个部分,:指令获取(IF)指令解码、寄存器获取(ID)执行、有效地址周期(EX)访问存储器、分支完成周期(MEM)写会周期(WB)使用多周期流水线实现上述指令集需要9个周期就可以执行5条指令,单周期操作5个指令则需要25个周期,性能提升了2.8倍流水线注意事项所有共享一条流水线的指原创 2020-12-27 15:51:45 · 218 阅读 · 0 评论 -
5 低功耗设计
5.2 功耗源浪涌、静态功耗、动态功耗 是三个主要的功耗源。浪涌电流指的是期间上电的时候产生的最大输入电流,也称之为启动电流。电机的启动电流是正常满载电流的数倍。基于SRAM 的FPGA浪涌电流也很大,因为其初始状态是空白的或者可以理解为复位导通状态,加载配置连接之后就恢复长长电流待机电流、晶体管漏电流、电容漏电流也就是静态功耗动态功耗是由逻辑切换的时候造成的额外输出功耗...原创 2020-12-27 15:13:30 · 233 阅读 · 0 评论 -
4.时钟分频器
介绍芯片中常常使用不同类型的时钟分频技术。我们常常想到的是以主时钟2的幂次倍数来分频,比如2分,4分,8分等等。但是有时候也会用到奇数分频甚至小数分频。下面介绍的分频技术比常见的pll备品得到的目标时钟更有效、便宜、快速同步整数分频器MOORE状态机,实现整数分频,但是这种简单的逻辑无法产生50%的占空比输出具有50%占空比的奇数整数分频使用两个具有正交相位差的频率为期望频率一半的时钟相互异或,即可得到。非整数分频1.5倍分频,使用一个3分频电路和一个多路器,对输出进行开关叠加处理,单后原创 2020-12-17 22:07:02 · 1603 阅读 · 0 评论 -
3.7 使用FIFO传输数据
FIFO 先进先出队列(此处指硬件结构)同步FIFO架构结构如下图所示工作方式:复位后读写指针相等且都为空,此时FIFO为空,阻值对其的读操作,只可以写。当没有空间可以写的时候指针位置为SIZE-1,此时进行一个写操作会使得指针回滚到0,读写指针再次相等。空和满状态的区分:一种是使用进入空和进入满的状态逻辑先后进行判断。另一种是使用计数器做计算,这种方法容易理解但是效率低。异步FIFO异步FIFO可以使用同样的逻辑,但是需要注意亚稳态的规避。使用格雷码取代二进制计数器作为读写指针同步.原创 2020-12-17 11:48:22 · 745 阅读 · 1 评论 -
3.6握手信号方法
握手是最古老的子不同域之间传输数据的方式握手信号的传输步骤A给B发送数据的同时发送请求reqB根据自己的下一个时钟上升沿同步req成为req1B根据自己的下一个时钟上升沿识别req1成为req2(判断是否发送终止)B发送ack给A,表示已经接收到数据A根据自己的下一个时钟上升沿同步ack成为ack1A根据自己的下一个时钟上升沿识别ack成为ack2重复上述操作发送一个数据需要使用5个A周期握手信号的要求数据应该在发送时钟域内稳定至少两个时钟上升沿请求信号req的宽度应该超过两.原创 2020-12-17 11:16:13 · 1539 阅读 · 0 评论 -
3.5跨时钟域
有如下几种时钟同频零相位差时钟同频恒定相位差时钟非同频可变相位差时钟整数倍时钟有理数倍时钟3.5.1 同频零相位差时钟本质上就是单时钟设计,凑字数的3.5.2 同频恒定相位差时钟相移T/4周期的则只有3T/4时间用于数据捕获,也就是意味着需要更小的建立保持时间,如果可以满足就不需要使用同步器,直接在设计中考虑好建立保持时间即可。3.5.3 非同频可变相位差时钟整数倍的时钟:快时钟发送慢时钟接收,快时钟域输出的数据至少保持一个慢时钟的周期(可使用有限状态机FSM来实现)。慢时钟.原创 2020-12-17 10:57:34 · 123 阅读 · 0 评论 -
3.处理多个时钟
很少有芯片设计时单时钟域的,多时钟域中可能有频率不同或频率相同但是相位不同的时钟共同存在。这就会遇到建立时间&保持时间不足进而导致亚稳态的问题。建立时间:时钟脉冲达到前,输入数据需要保持稳定的时间保持时间:时钟脉冲到达后,输入数据需要保持稳定的时间多时钟设计的处理技术主要有两种方法或者规则:时钟命名规则,分模块设计命名规则参考程序设计里面的驼峰命名法分模块设计1)每个模块应当只在一个时钟下工作2)信号夸时钟域传播的时候使用同步器模块3)同步器模块的规模尽可能小跨时钟域.原创 2020-12-15 23:15:31 · 266 阅读 · 0 评论 -
2.7 控制时钟偏移
整个芯片中时钟信号到达各级电路的时间差即为时钟偏移短路径问题:即逻辑单元速度快,输出数据比时钟传播到下个逻辑单元还要快,就会造成数据丢失逻辑功能出错。解决方法:人为添加布线延迟,pcb上即是等长绕线。时钟反转,在发送寄存器上使用加了传输门的时钟,在接收寄存器上直接使用时钟,使得后者更早触发。对于约翰逊计数器和现行反馈以为寄存拿起没有作用交替使用一个时钟不同沿或者交替使用不同相位的时钟行波时钟结构,每一个触发器的输出驱动下一个触发器的时钟平衡线路长度,也就是布线等长...原创 2020-12-15 22:52:24 · 475 阅读 · 0 评论 -
数字电路的设计方法与技术 2.6 复位信号的设计策略
asic设计的时候,芯片都需要使用复位信号。复位有同步复位、异步复位两种分各种情况而定,一般来说所有的寄存器都需要提供复位信号,以确保开始工作的时候系统处于一个确定的状态。但是移位寄存器这一类在某些高速信号电路中使用的时候需要去掉复位信号以获得最佳性能。1 同步复位设计由于复位树的高扇出,导致复位带载功率大,复位信号上升沿相对来说较为缓慢,对于时钟信号来说属于一个迟到的信号,即使经过缓冲区缓冲,也要尽可能减少中间逻辑数量。同步复位的优点:同步复位一般能确保电路是100%复位综合的时候效率更.原创 2020-11-29 21:02:19 · 512 阅读 · 0 评论 -
数字电路设计方法与技术--2.5门控时钟方法学
读书笔记本节小叙:常规设计中,时钟功耗主要有三个部分组成:在每个时钟沿变化的组合逻辑所产生的功耗触发器所产生的功耗时钟树产生的功耗时钟树功耗接近整个芯片的50%,因此做好时钟在时钟树的根部对时钟进行开关。一 不含锁存器的门控时钟电路使用一个简单的逻辑门进行判断,例如与门或者或门,上升沿使用与门,下降沿使用或门为了避免过早停止或者产生多个时钟脉冲(或者时钟上的毛刺),需要在时钟活跃沿到时钟不活跃沿之间一直保持不变。二 基于锁存器的门控时钟...原创 2020-11-29 18:53:01 · 477 阅读 · 0 评论