时钟信号

7 FPGA时序约束实战篇之梳理时钟树

不羁岁月 提交于 2020-01-30 03:24:33
行万里路–时序约束实战篇   我们以Vivado自带的 wave_gen 工程为例,该工程的各个模块功能较为明确,如下图所示。为了引入异步时钟域,我们在此程序上由增加了另一个时钟– clkin2 ,该时钟产生脉冲信号 pulse , samp_gen 中在 pulse 为高时才产生信号。 下面我们来一步一步进行时序约束。 1. 梳理时钟树   我们首先要做的就是梳理时钟树,就是工程中用到了哪些时钟,各个时钟之间的关系又是什么样的,如果自己都没有把时钟关系理清楚,不要指望综合工具会把所有问题暴露出来。   在我们这个工程中,有两个主时钟,四个衍生时钟,如下图所示。   确定了主时钟和衍生时钟后,再看各个时钟是否有交互,即clka产生的数据是否在clkb的时钟域中被使用。   这个工程比较简单,只有两组时钟之间有交互,即: clk_rx 与 clk_tx clk_samp 与 clk2 其中, clk_rx 和 clk_tx 都是从同一个MMCM输出的,两个频率虽然不同,但他们却是同步的时钟,因此他们都是从同一个时钟分频得到(可以在Clock Wizard的Port Renaming中看到VCO Freq的大小),因此它们之间需要用 set_false_path 来约束;而 clk_samp 和 clk2 是两个异步时钟,需要用 asynchronous 来约束。 完成以上两步

8 FPGA时序约束实战篇之主时钟约束

北城余情 提交于 2020-01-30 01:02:33
约束主时钟   在这一节开讲之前,我们先把 wave_gen 工程的 wave_gen_timing.xdc 中的内容都删掉,即先看下在没有任何时序约束的情况下会综合出什么结果? 对工程综合并Implementation后,Open Implemented Design,会看到下图所示内容。   可以看到,时序并未收敛。可能到这里有的同学就会有疑问,我们都已经把时序约束的内容都删了,按我们第一讲中提到的“因此如果我们不加时序约束,软件是无法得知我们的时钟周期是多少,PAR后的结果是不会提示时序警告的”,这是因为在该工程中,用了一个MMCM,并在里面设置了输入信号频率,因此这个时钟软件会自动加上约束。   接下来,我们在tcl命令行中输入 report_clock_networks -name main ,显示如下:   可以看出,Vivado会自动设别出两个主时钟,其中clk_pin_p是200MHz,这个是直接输入到了MMCM中,因此会自动约束;另一个输入时钟clk_in2没有约束,需要我们手动进行约束。 或者可以使用 check_timing -override_defaults no_clock 指令,这个指令我们之前的内容讲过,这里不再重复讲了。   在tcl中输入 create_clock -name clk2 -period 25 [get_ports clk_in2]

STM32 MCO输出HSE、LSI等时钟波形以及使用LSI发现内部RC震荡频率紊乱的问题

一笑奈何 提交于 2020-01-29 05:37:37
最近调试产品遇到了一个问题,现象是产品RTC计数不准,定的5s的采样周期,实际表现确是3s多,而且每次间隔还在波动,后来追查到应该是关于STM32的LSI内部RC震荡频率有时会不准,由于问题不好复现,所以采用MCO将内部RC震荡频率输出接到示波器上查看,在此记录下STM32配置MCO(基于HAL库)。 STM32是通过PA8管脚输出MCO信号的,个别大容量的型号可能有两个IO可输出MCO,我手里使用的STM32L431只有一路,调用库函数配置十分简单,只需要一句话即可: HAL_RCC_MCOConfig(RCC_MCO1, RCC_MCO1SOURCE_LSI, RCC_MCODIV_1); 我们具体看下库函数内的内容: /** * @brief Select the clock source to output on MCO pin(PA8). * @note PA8 should be configured in alternate function mode. * @param RCC_MCOx specifies the output direction for the clock source. * For STM32L4xx family this parameter can have only one value: * @arg @ref RCC_MCO1

Quartus II LPM使用指南-FIFO篇

梦想与她 提交于 2020-01-28 10:20:17
Quartus II LPM使用指南 FIFO篇 BY WG http://www.cnblogs.com/wg2011/ 目录 说明 - 2 - 摘要 - 3 - 第一章 FIFO配置全攻略 - 4 - 1.1如何配置自己需要的FIFO - 4 - 1.2输入输出端口 - 5 - 1.3时序要求 - 8 - 1.4输出状态标记和潜伏期 - 8 - 1.5避免亚稳态 - 9 - 1.6同步复位及异步复位的影响 - 9 - 1.7不同的输入输出位宽 - 10 - 1.8约束设置 - 10 - 第二章 设计实例 - 11 - 2.1设计实例概要 - 11 - 2.2系统仿真分析 - 11 - 2.2.1写操作 - 11 - 2.2.2读操作 - 12 - 2.2.3当DCFIFO被写满时 - 13 - 2.2.4完成ROM至DCFIFO的数据传递 - 13 - 2.2.5完成DCFIFO至RAM的数据传递 - 14 - 附录 FIFO配置界面: - 15 - 1 - 15 - 2 - 16 - 3 - 17 - 4 - 18 - 5 - 19 - 6 - 19 - 参考文献 - 21 - 说明 本文档根据 ALTERA 《SCFIFO and DCFIFO Megafunctions》一问整理而来。 笔者使用Quartus II 的版本及PC机操作系统版本为11.1 sp2 WIN7

FIFO知识点小结

老子叫甜甜 提交于 2020-01-27 07:58:06
1. FIFO简介 FIFO是一种先进先出数据缓存器,它与普通存储器的区别是没有外部读写地址线,使用起来非常简单,缺点是只能顺序读写,而不能随机读写。 2. 使用场景 数据缓冲:也就是数据写入过快,并且间隔时间长,也就是突发写入。那么通过设置一定深度的FIFO,可以起到数据暂存的功能,且使得后续处理流程平滑。 时钟域的隔离:主要用异步FIFO。对于不同时钟域的数据传输,可以通过FIFO进行隔离,避免跨时钟域的数据传输带来的设计和约束上的复杂度。比如FIFO的一端是AD,另一端是PCI;AD的采集速率是16位100KSPS,每秒的数据量是1.6Mbps。而PCI总线的速度是33MHz,总线宽度是32位 用于不同宽度的数据接口。例如单片机是8位,DSP是16。 3. 分类 同步FIFO:指读时钟和写时钟是同一个时钟 异步FIFO:指读写时钟是不同的时钟。 4. FIFO的常见参数 FIFO的宽度:即FIFO一次读写操作的数据位; FIFO的深度:指的是FIFO可以存储多少个N位的数据(如果宽度为N)。 满标志:FIFO已满或将要满时由FIFO的状态电路送出的一个信号,以阻止FIFO的写操作继续向FIFO中写数据而造成溢出(overflow)。 空标志:FIFO已空或将要空时由FIFO的状态电路送出的一个信号,以阻止FIFO的读操作继续从FIFO中读出数据而造成无效数据的读出

时钟与复位

痞子三分冷 提交于 2020-01-25 18:01:10
内容: 主要涵盖了设计者在设计模块或者知识产权(Intellectual Preoperty)时所要用到的一些建议。 同步设计(对ASIC时序控制最安全的方法): 由单个主时钟和主置位/复位信号驱动设计中所有的时序器件。 一、避免使用行波计数器 含义:即使用触发器输出作为下一级触发器的时钟输入端 缺点: 由于第一个触发器的输出响应导致第二个触发器的时钟输入相对于时钟信号产生偏移(延迟); 无法 在每个时钟边沿都激活 :由于延迟问题,当时钟发生跳变时,第一个触发器的输出未发生变化,从而导致第二个触发器的时钟输入变化较时钟信号晚;在每个时钟边沿都激活?可能在某几个时钟边沿激活?考虑的是第二个触发器的激活? 优点:能够减少电路的漏电流并降低电路的功耗,在低功耗设计中会取得很好的效果; 二、避免使用门控时钟 前端设计注意:含门控时钟的设计在仿真过程中可能工作正常,但是综合时会出现问题; 含义:在时钟线上使用门控单元,使用门控逻辑使能信号开关时钟; 优点:能够有效减少功耗,当时钟被门控电路关闭后,门控时钟在根部将时钟关闭,该时钟网络和其中的寄存器都会停止翻转,从而减少功耗; 同步设计中的功耗来源: 在每个时钟边沿变化的组合逻辑所产生的功耗(由触发器驱动这些逻辑组合); 由触发器产生的功耗(及时在触发器的输入和内部状态不发生变化,该功耗仍存在); 时钟树产生的功耗(通常占到总功耗的50%);

基于单片机的GPS定位模块

好久不见. 提交于 2020-01-24 14:44:43
随着时代的发展,先进的科学技术给人们的生活带来了翻天覆地的变化。各种各样的智能化产品层出不穷,推动着社会的进步。全球定位系统GPS是美国从20世纪70年代开始研制,在1994年建成,以接收导航卫星信号为基础的非自主式导航与定位系统,它以全球性、全能性、全天候性、连续实时高精度的实时时间、三维位置、三维速度为人们的生活带来了方便。随着全球定位技术的不断改进和完善,它的应用领域将会不断地扩大,必将成为信息时代不可缺少的一部分。在我们的生活中GPS定位系统给我们带来了便利,如车载GPS导航仪、GPS手持设备、GPS/GPRS远程终端控制设备等,但是他们的价格比较昂贵。本设计使用低功耗的AT89S52单片机、GPS卫星定位模块和LCD12864液晶显示模块来实现对GPS定位信息的计算和显示。GPS信息主要有GPGSV(可见卫星信息)、GPGLL(地理定位信息)、GPRMC(推荐最小定位信息)、GPVTG(地面速度信息)、GPGGA(GPS定位信息)和GPGSA(当前卫星信息)。在设计中我用软件只对GPRMC(最小定位信息)和GPGGA(GPS定位信息)进行了解析,并将解析后的数据转换成字符,通过LCD12864显示日期、时间、经度、纬度、航向、速度和海拔高度等卫星信息。本设计思路清晰、结构简易、性价比高,对研究GPS定位系统二次开发有重要作用。 1.总体设计方案 1.1系统设计框图

乘法器的优化1

人走茶凉 提交于 2020-01-24 03:18:49
计算机的最大优势在于它的运算速度。因此,当我们设计计算机当中的一个功能部件时,在保证其功能正确性的前提下,就得考虑它是否拥有足够好的性能。那么在这一节,我们就要一起对这个乘法器进行性能上的分析和优化。 首先,我们来快速回顾一下N位乘法器的工作流程。 当我们做好初始化工作之后,首先检查乘数寄存器的最低位。如果最低位为1,那么就将被乘数寄存器和乘积寄存器的内容相加,并将结果放入到乘积寄存器当中。那么这一步实际上是控制逻辑给出了若干个控制信号,包括让加法器完成加法运算,并给了乘积寄存器写入的控制信号。因为加法器的输出是连接到乘积寄存器的输入端的,所以在下一个时钟上升沿来临的时候,乘积寄存器就会对加法器的输出进行采样并保存起来,这就完成了这一步所指的工作。 然后控制逻辑会向被乘数寄存器发出左移的控制信号,在下一个时钟上升沿来临的时候,被乘数寄存器就会完成左移一位的工作。当然,如果在第一步中检查的乘数寄存器的最低位是0,那控制逻辑就不会给出让加法器进行运算,和让乘积寄存器进行写入的控制信号,而会进入到第2步,完成被乘数寄存器左移的工作。再到下一个时钟上升沿,乘数寄存器会发现其右移的控制信号有效,所以它就完成一次右移的工作。 然后判断是否已经到了第N次循环。如果没有,说明运算还没有结束,再回到第1步继续执行;如果发现已经是第N次循环,说明运算已经完成。运算的结果就在当前的乘积寄存器当中。

天文时钟介绍及选择

纵然是瞬间 提交于 2020-01-21 18:54:57
天文时钟介绍及选择 在科技的快速进步和经济飞速发展下,各个领域都对授时设备的精确度、稳定度、便携性等提出了越来越高的要求,所以时钟授时的方式和种类也在不断进步,比如基站授时、卫星授时、 电波 授时等等。 天文时钟是一种授时时钟,天文时钟是 由 天文台 精密 时 钟去控制 的 。 天文时钟是指接收 GPS和北斗卫星授时定位信号的时钟服务器,时钟服务器从GPS和北斗卫星上获取标准时间信息,并通过网络传输,为网络设备 提供精准的时间信号,对设备进行 NTP实时校时服务,时钟服务器输出1PPS(秒信号)同步脉冲信号及串口tod时间信息。 目前市场上的时钟服务器很多,也有一些是代理其他品牌的,性能和售后无法保障。而西安同步电子科技有限公司是自行研发生产的,如SYN2151型NTP时间同步服务器, 以 GPS北斗及其它定时信号 为基准,并提供 1路NTP网络输出可扩展为4路网络输出,网络输出授时精度为0.5-10ms,支持串口信号输出和1PPS脉冲信号输出等等。其中NTP是指 网络时间协议 用来 同步计算机时间 , NTP网络授时覆盖面广可给上万台设备同时进行授时,NTP请求量>14000次/秒。SYN2151型NTP时间同步服务器,提供WEB、SSH加密通信和软件监控设置的参数管理方式,提供SNMP网管功能,使用最新NTP/SNTP协议版本对时精确可靠,并且标配内置高精度恒温晶振进行守时

GPS同步时钟装置应用及选择

僤鯓⒐⒋嵵緔 提交于 2020-01-21 18:54:10
GPS同步时钟装置应用及选择 GPS是全球定位系统的简称,GPS具有全天时、全天候、高精度、定位和授时服务,GPS 卫星 授时成本低、安全可靠、覆盖范围广。GPS同步时钟装置,是指从GPS卫星上获取时间信号,将时间信号通过交换机传输给 需要 时间的设备,并实现设备和 GPS同步时钟的时间同步。GPS同步时钟装置SYN4505型性能可靠授时准确,可以给上万台客户端进行授时。 随着科学技术的发展,各个领域都对授时设备提出了越来越高的要求,而SYN4505型标准同步时钟的高精度时间基准可以为通信、电力、 机场、酒店 、 学校 、 医院、 场馆、 广播电视 、安防监控、工业控制、 地铁轻轨 、 火车站、 等领域提供标准时间信号。其中 电力系统是与时间密切相关的系统 ,电力系统各设备之间的时间同步是测量、控制和保护电网安全稳定运行的重要基础和支撑。而 地铁轻轨 的 电力监控系统运行要求,都需要采用标准时钟信号 ,就需要 GPS同步时钟为地铁提供统一的标准时间信息 。所以在日常生活和工业生产控制中, GPS同步时钟装置的应用是必不可少的。 目前市场上的授时设备有很多,供应商也有很多,消费者在选择时也会难以抉择,其实先要确定供应商是否为自行研发生产的,然后在选择产品的性能。对于终端客户的选择我们会和客户确定授时类型、以及授时精度和授时设备信号溯源进行推荐,也会根据客户确定的参数推荐