时钟频率

关于verilog分频程序

房东的猫 提交于 2019-12-18 18:41:42
众所周知,分频器是FPGA设计中使用频率非常高的基本设计之一,尽管在目前大部分设计中,广泛使用芯片厂家集成的锁相环资源,如altera 的PLL,Xilinx的DLL.来进行时钟的分频,倍频以及相移。但是对于时钟要求不高的基本设计,通过语言进行时钟的分频相移仍然非常流行,首先这种方法可以节省芯片内部的锁相环资源,再者,消耗不多的逻辑单元就可以达到对时钟操作的目的。另一方面,通过语言设计进行时钟分频,可以看出设计者对设计语言的理解程度。因此很多招聘单位在招聘时往往要求应聘者写一个分频器(比如奇数分频)以考核应聘人员的设计水平和理解程度。下面讲讲对各种分频系数进行分频的方法: 第一,偶数倍分频:偶数倍分频应该是大家都比较熟悉的分频,通过计数器计数是完全可以实现的。如进行N倍偶数分频,那么可以通过由待分频的时钟触发计数器计数,当计数器从0计数到N/2-1时,输出时钟进行翻转,并给计数器一个复位信号,使得下一个时钟从零开始计数。以此循环下去。这种方法可以实现任意的偶数分频。 第二,奇数倍分频:奇数倍分频常常在论坛上有人问起,实际上,奇数倍分频有两种实现方法: 首先,完全可以通过计数器来实现,如进行三分频,通过待分频时钟上升沿触发计数器进行模三计数,当计数器计数到邻近值进行两次翻转,比如可以在计数器计数到1时,输出时钟进行翻转,计数到2时再次进行翻转。即是在计数值在邻近的1和2进行了两次翻转

远程频率标准与数字时钟校准方案

微笑、不失礼 提交于 2019-12-16 16:12:30
本文主要结合JJF 1206-2008频率标准与数字时钟的远程校准规范,对频率标准与数字时钟的远程校准进行了简单的说明,其方法适用于原子频标,石英晶体频标的频率偏差(频率准确度)及日漂移率和精密数字时钟的时间偏差及速率的远程校准。 在传统的检测中,频标和时钟的校准方法是在同一实验室环境内,被校源与参考源直接进行比对,从而得到较小的测量结果的不确定度,并能有效的快速校准频标和时钟的所有计量特性。 SYN4104型数字同步时钟 然而随着我国精密时钟频率源在特殊场合应用的特殊性,其不能搬到有关部门进行直接校准,如陆地导航台,通讯站,电话局等所用的频标和时钟都是连续地运行;此外,有些大型的氢原子频标搬运较困难,对于这些频标和时钟可以进行远程校准。 对于这种远程校准频率标准与数字时钟的校准方法,目前普遍可采用的方法是卫星共视法。所谓共视就是两个不同位置的观测者,在同一时刻观测同一颗卫星同一信号中的同一标志实现时间同步的方法。根据比对需求,利用卫星所播发秒脉冲信号或其他固定频率时钟脉冲信号进行时差比对,得到本地钟与卫星所播发1PPS秒信号或其他固定速率时钟脉冲信号时差,然后再按照卫星共视数据处理格式进行处理,得到两地的钟差。 SYN4104型数字同步时钟 对于远程校准频率标准与数字时钟的共视校准方法以导航卫星发播的时间信号作为媒介,被校准源与参考源同时测量各自与媒介的时间差

总线

若如初见. 提交于 2019-12-15 20:58:04
总线有三种:内部总线、系统总线和外部总线。内部总线是微机内部各外围芯片与处理器之间的总线,用于芯片一级的互连;而系统总线是微机中各插件板与系统板之间的总线,用于插件板一级的互连;外部总线则是微机和外部设备之间的总线,微机作为一种设备,通过该总线和其他设备进行信息与数据交换,它用于设备一级的互连。 除了总线外,还有一些接口,他们是多种总线的集合体,或者说来者不拒。 SPI SPI(Serial Peripheral Interface): MOTOROLA公司提出的同步串行总线方式。高速同步串行口。3~4线接口,收发独立、可同步进行。 因硬件功能强大而被广泛应用。在单片机组成的智能仪器和测控系统。如果对速度要求不高,采用SPI总线模式十个不错的选择。他可以节省I/O端口,提高外设的数目和系统性能。标准SPI总线由四根线组成:串行时钟线(SCK)、主机输入/从机输出线(MISO)、主机输出/从机输入线(MOSI)和片选信号(CS)。有的SPI接口芯片带有中断信号线或没有MOSI。 SPI总线由三条信号线组成:串行时钟(SCLK)、串行数据输出(SDO)、串行数据输入(SDI)。SPI总线可以实现多个SPI设备互相连接。提供SPI串行时钟的SPI设备为SPI主机或者主设备间可以实现全双工通信,当有多个从设备时,还可以增加一条从设备选择线。如果用通用IO口模拟SPI总线,必须要有一个输出口

DSP学习笔记(三)——TMS320F28335硬件结构

ε祈祈猫儿з 提交于 2019-12-11 17:02:24
本文转载连接: https://blog.csdn.net/wasser000/article/details/91843085 第二章 TMS320F28335 硬件结构 1 TMS320F28335 硬件概述 Tms320f28335主要有8个部分组成,由32位的cpu内核、集成内存、总线、DMA、DMA总线、中断管理、控制率加速器、外设总线、外设等部分。 总线为哈佛结构,cpu可在一个时钟周期完成对数据存储器与程序存储器的访问。 DMA总线,可以使特定模块直接与内存交换数据,不过cpu。 2 cpu架构 2.1 内核 F28335属于C28x+FPU(Floating Point Unit,浮点运算单元)的C28x 系列增强型DSP 控制器(Digital Signal Controllers,DSC),包括一个32位定点cpu一个32位浮点运算单元。 浮点数格式遵循ieee-754标准。(IEEE 754规定了四种表示浮点数值的方式:单精确度(32位)、双精确度(64位)、延伸单精确度(43比特以上,很少使用)与延伸双精确度(79比特以上,通常以80位实现)。只有32位模式有强制要求,其他都是选择性的。) 2.2 乘法器 F28335内嵌一个16×16位和32×32位的乘法器及乘累加核(MAC),可以在一个指令周期完成32×32位乘法进行累加运算。 2.3 移位器

DIY Ruby CPU 分析 Part II

落花浮王杯 提交于 2019-12-07 00:40:50
【编者按】作者 Emil Soman,Rubyist,除此之外竟然同时也是艺术家,吉他手,Garden City RubyConf 组织者。本文是 DIY Ruby CPU Profiling 的第二部分。本文系 OneAPM 工程师编译整理。 在第一部分中我们学习了 CPU 分析的含义和进行 CPU 分析的两种方法,点此处 回顾第一篇精彩内容 。在这一部分我们将研究 CPU time 和 Wall time,这些部分总被用来测量执行开销。我们也会写一些实现这些测量方法的代码作为建立 CPU 分析的第一步。 ##Part II. CPU time 和 Wall time ###Wall time Wall time 是在一个方法被调用和返回之间的真实时间。因此,如果你想要测量一个方法执行的 「Wall clock time」,理论上可以用秒表来测量。只要在方法开始执行时打开秒表,在方法返回时按下停止。这个时间通常也被称为真实时间。 关于 Wall time 很重要的一点是,可以预见,每次试图测量同一段代码可能得到不同的结果。这是因为一系列后台进程会影响 Wall time. 当 CPU 同时运行多个进程的时候,操作系统给同时运行的进程排期并且试图为它们公平的分配 CPU 空间。这意味着 CPU 花费的总时间被分成多个片而我们的方法只占用其中的一些时间片。因此,当 Wall

07_stm32时钟树

依然范特西╮ 提交于 2019-12-06 14:14:23
一:stm32时钟树介绍   时钟对于单片机来说是非常重要的, 它为单片机工作提供一个稳定的机器周期从而使系统能够正常运行。 时钟系统犹如人的心脏, 一旦有问题整个系统就崩溃。 我们知道 STM32 属于高级单片机, 其内部有很多的外设, 但不是所有外设都使用同一时钟频率工作, 比如内部看门狗和 RTC, 它只需 30 几 KHz 的时钟频率即可工作, 所以内部时钟源就有多种选择。 在前面章节的介绍中, 我们知道 STM32系统复位后首先进入 SystemInit 函数进行时钟的设置, 将 STM32F1 系统时钟设置为 72MHz(我们开发板上使用的 STM32F103ZET6 最大可达到 72M(超频除外) ),然后进入主函数。 那么这个系统时钟大小如何得来, 其他外设的时钟又如何划分,这些问题都可以通过一张时钟树图找到答案, 只要理解好时钟树, STM32 一切时钟的来龙去脉就会非常清楚。 下面就来了解下时钟树, 如图所示, 我们把时钟树拆分逐个介绍。   在 STM32 时钟系统中, 有 5 个重要的时钟源, 分别是 LSI、 LSE、 HSI、 HSE、PLL。 按照时钟频率分可分为高速时钟源和低速时钟源, 在这 5 个中 HSI, HSE 以及 PLL 属于高速时钟, LSI 和 LSE 属于低速时钟。 按照时钟来源可分为外部时钟源和内部时钟源, 外部时钟源就是在

03_使用寄存器点亮第一盏灯

佐手、 提交于 2019-12-06 12:23:00
一:stm32 GPIO介绍 1. GPIO概念   GPIO(general purpose intput output) 是通用输入输出端口的简称, 可以通过软件来控制其输入和输出。 STM32 芯片的 GPIO 引脚与外部设备连接起来,从而实现与外部通讯、 控制以及数据采集的功能。 不过 GPIO 最简单的应用还属点亮 LED 灯了, 只需通过软件控制 GPIO 输出高低电平即可。 当然 GPIO 还可以作为输入控制, 比如在引脚上接入一个按键, 通过电平的高低判断按键是否按下。   那么是不是所有引脚都是 GPIO 呢? 当然不是, STM32 引脚可以分为这么几大类:   (1) 电源引脚: 引脚图中的 VDD、 VSS、 VREF+、 VREF-、 VSSA、 VDDA 等都属于电源引脚。   (2) 晶振引脚: 引脚图中的 PC14、 PC15 和 OSC_IN、 OSC_OUT 都属于晶振引脚, 不过它们还可以作为普通引脚使用。   (3) 复位引脚: 引脚图中的 NRST 属于复位引脚, 不做其他功能使用。   (4) 下载引脚: 引脚图中的 PA13、 PA14、 PA15、 PB3 和 PB4 属于 JTAG 或SW 下载引脚。 不过它们还可以作为普通引脚或者特殊功能使用, 具体的功能可以查看芯片数据手册, 里面都会有附加功能说明。 当然, STM32

K60时钟分析

梦想的初衷 提交于 2019-12-04 21:44:38
转载:https://blog.csdn.net/hcx25909/article/details/7164650 1.飞思卡尔K60时钟系统 飞思卡尔K60时钟系统如上图所示,可以发现器件的源时钟源一共有4个: ①内部参考时钟源,包括 Fast IRC和 slow IRC (IRC--Internal Reference Clock) ②外部参考时钟源,只一个EXTAL管脚作为时钟输入,这个可以使用有源晶体振荡器来实现 ③外部晶体谐振器,使用EXTAL和XTAL两个管脚来输入 ④外部32K RTC 谐振器,用于实时时钟的时钟输入 在图中可以看到,要为系统提供时钟信号,关键是要最终生成 MCGOUTCLK 输出。MCGOUTCLK 再经过分频便可以提供Core/system clocks、Bus clock、FlexBus clock和Flash clock。MCGOUTCLK 的产生有3个途径: ①由内部参考时钟源 Fast IRC 直接提供,这个时钟源集成在芯片的内部(包括Slow IRC),频率是2M ②由 FLL 或者 PLL 模块来提供 ③由外部时钟来直接提供,包括外部参考时钟源(1个管脚输入)、外部晶体谐振器经内部OSC logic产生的XTAL_CLK 和 RTC OSC logic 的时钟输出。 一般情况下,MCGOUTCLK 是由PLL或者FLL倍频来产生的

SPI接口

匿名 (未验证) 提交于 2019-12-03 00:27:02
注:本博文大部分内容由华清远见彭丹老师整理! 一、SPI总线协议 1. SPI特点 1.1 采用主-从模式(Mater-Slave) SPI 规定了两个 SPI 设备之间通信必须由主设备 (Master) 来控制次设备 (Slave). 一个 Master 设备可以通过提供 Clock 以及对 Slave 设备进行片选 (Slave Select) 来控制多个 Slave 设备, SPI 协议还规定Slave 设备的 Clock 由 Master 设备通过 SCK 管脚提供给 Slave 设备,Slave 设备 本身不能产生 或控制 Clock, 没有 Clock 则 Slave 设备不能正常工作。 1.2 采用同步方式(Synchronous)传输数据 Master 设备会根据将要交换的数据来产生相应的时钟脉冲(Clock Pulse), 时钟脉冲组成了时钟信号(Clock Signal) , 时钟信号通过 时钟极性 (CPOL) 和 时钟相位 (CPHA) 控制着两个 SPI 设备间何时数据交换以及何时对接收到的数据进行采样, 来保证数据在两个设备之间是同步传输的. 关于时钟极性, 时钟相位名词含义下面会有解释。 1.3 数据交换(DataExchanges) SPI 设备间的数据传输之所以又被称为数据交换, 是因为 SPI 协议规定一个

zynq 的时钟频率

匿名 (未验证) 提交于 2019-12-03 00:22:01
AXI4 interface模式下 Performance up to 300 MHz PL的时钟频率上限应该和PLL的最高输出是一致的,或者说在PLL输出最高频时,PL可以正常的传递信号,arm的频率一般设置为默认的677MHz。 文章来源: zynq 的时钟频率