CN106326158B - 用异步总线产生时钟输出的方法 - Google Patents
用异步总线产生时钟输出的方法 Download PDFInfo
- Publication number
- CN106326158B CN106326158B CN201610679683.7A CN201610679683A CN106326158B CN 106326158 B CN106326158 B CN 106326158B CN 201610679683 A CN201610679683 A CN 201610679683A CN 106326158 B CN106326158 B CN 106326158B
- Authority
- CN
- China
- Prior art keywords
- signal
- clock
- write operation
- type flip
- output
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
- G06F13/282—Cycle stealing DMA
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Bus Control (AREA)
Abstract
用异步总线产生时钟输出的方法,包括以下步骤:(1)将主设备的数据线DATA连接到D触发器的输入端,将主设备的写信号WE连接到D触发器的锁存信号LE上;D触发器的输出作为时钟信号CLK;(2)主设备在异步总线上应用DMA方式连续进行写操作;(3)数据线DATA在每次写操作时进行电平翻转,使得D触发器的输出为周期性的时钟信号CLK。本发明方法利用通用的高速异步总线及简单的外围电路来产生时钟信号,外部电路简单,外设和从设备无需自带时钟模块,能够减低成本,无需额外占用电路板的面积。
Description
技术领域
本发明涉及一种用异步总线产生时钟输出的方法。
背景技术
在电子电路中,时钟是一个数字系统重要信号,大量的数据处理、传输都需要时钟的同步或触发。电路系统有不少外设是需要提供时钟才能有效的工作起来。外设或从设备通常自带有时钟模块,或者由主设备提供时钟给外设。但很多处理器并没有设计含有数字时钟信号的输出,外设自带时钟模块会导致每个外设都要配时钟晶体或晶振等外围器件,这将导致成本增加,同时也占用电路板的面积。
发明内容
本发明所要解决的技术问题是,克服上述背景技术的不足,提供一种用异步总线产生时钟输出的方法,利用通用的高速异步总线及简单的外围电路来产生时钟信号,外部电路简单,外设和从设备无需自带时钟模块,能够减低成本,无需额外占用电路板的面积。
本发明解决其技术问题采用的技术方案是,一种用异步总线产生时钟输出的方法,包括以下步骤:
(1)将主设备的数据线DATA连接到D触发器的输入端,将主设备的写信号WE连接到D触发器的锁存信号LE上;D触发器的输出作为时钟信号CLK;
(2)主设备在异步总线上应用DMA方式连续进行写操作;
(3)数据线DATA在每次写操作时进行电平翻转,使得D触发器的输出为周期性的时钟信号CLK。
进一步,步骤(2)中,通过调整异步总线上每次写操作的时间来调整时钟信号CLK的频率。
进一步,步骤(3)中,通过写操作调整数据线上高低电平的翻转时间来调整输出时钟信号CLK的频率。
与现有技术相比,本发明的优点如下:通过通用的高速异步总线及简单的外围电路来产生稳定的时钟信号CLK,也能调整时钟信号CLK的频率,时钟信号CLK的频率可通过两种方式来进行调整:1、通过调整异步总线上每次写操作的时间来调整时钟信号CLK的频率;2、通过写操作调整数据线上高低电平的翻转时间来调整输出时钟信号CLK的频率;如果利用多个数据线进行控制,还可以输出多路的时钟信号供不同的外设使用。而且外部电路简单,配合软件可以灵活地满足各种时钟需求,外设和从设备无需自带时钟模块,能够减低成本,无需额外占用电路板的面积。
附图说明
图1是现有intel i80的总线方式的连接框图。
图2是现有intel i80的总线方式输出的写时序波形示意图。
图3是本发明实施例的电路示意图。
图4是本发明实施例的波形示意图。
图5是本发明实施例的写操作时序示意图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步详细描述。
绝大部分处理器都是有总线接口的,参照图1、图2,特别是最常用的intel i80的总线方式,其中片选信号CS是针对总线上某一特定设备,只有在片选信号CS有效时(本实施例为低电平有效),对应的接收设备才开始对写信号WE有响应,并接受写信号WE对应的数据(本实施例为写信号WE上升沿采集数据总线)。如果片选信号CS无效时,即使写信号WE有动作,也认为是针对其他的设备,此片选信号CS对应的接受设备将不做理会。通常数据总线都是连接高速外设的,总线速度是比较高速的。如果可以利用通用的高速异步总线产生合适的时钟信号,这会对很多电路应用方案的设计带来便利。
参照图3,本实施例通过通用的高速异步总线及简单的外围电路来产生需要的时钟信号,其方法包括以下步骤:
(1)将主设备的数据线DATA0连接到D触发器的输入端,将主设备的写信号WE连接到D触发器的锁存信号LE上;D触发器的输出作为时钟信号CLK;如果多根数据线DATA分别连到多个D触发器,则能产生多路的时钟信号;
(2)主设备在异步总线上应用DMA方式连续进行写操作;
普通的异步总线写操作具有不稳定性,系统多任务的分配、不同优先等级的任务或者中断都会导致主设备的处理器写操作间隔不确定,从而使得产生的输出信号时间周期不稳定。目前主流的处理器中都会支持DMA的工作方式,数据的传输并不依赖处理器的大量介入,由处理器中的DMA控制器直接掌管总线。为此本实施例利用DMA的传输方式:处理器将需要的数据准备好,则DMA会负责将数据不停的用写操作进行输出,时序上稳定而高速,最终在外部的D触发器作用下产生稳定频率的信号;
由于时钟频率根据不同的外设需求,频率也会有不同,甚至同一外设在不同的时间也需要不同的时钟频率,故调整时钟信号CLK的频率很有必要。
步骤(2)中,可通过调整异步总线上每次写操作的时间来调整时钟信号CLK的频率。每次写操作的时间通过软件配置写操作的时序参数来调整;通常写操作是有几个时序参数能够调整的,参照图5,一个Tclk时钟周期是由两个TWE写周期时间决定的,而一个TWE的时间又主要由TWS、TWL和TCH决定的,TWS表示片选信号CS有效到写信号WE有效的时间;TWL表示写信号WE低电平时间;TCH表示片选信号CS高电平时间。可以由公式计算出图5中时钟信号CLK的频率F=1/2*(TWS+TWL+TCH)。TWS、TWL和TCH三个变量在主设备的处理器中是可以设置调整的,因此通过改变设置值来调整输出的最终频率。
(3)数据线DATA在每次写操作时进行电平翻转,使得D触发器的输出为周期性的时钟信号CLK;如果数据线DATA通过写操作调整高低电平的时间和变化周期,则能产生不同频率和占空比的周期性时钟信号CLK。
在每次写操作时,写信号WE使D触发器在输出端会锁存输入端DATA0的信号电平。以图4为例说明:第一次写操作时,数据总线的DATA0信号是0,则D触发器的输出端变成低电平,并一直锁存维持低电平;第二次写操作时,DATA0信号变成1,触发器的输出端此时则变成高电平,并一直锁存维持高电平,当每次写操作时,DATA0都会反复变化,则D触发器在输出端产生高低电平周期变化的波形,也即需要的时钟信号CLK,时钟信号CLK的时钟频率是写信号WE周期频率的一半。
步骤(3)中,通过写操作调整数据线上高低电平的翻转时间来调整输出时钟信号CLK的频率。如DATA0的输出信号如果是0-0-1-1-0-0-1-1则输出的时钟频率变成写周期的1/4。通过计算时钟输出的高低变化需要几个写周期,就能得到时钟信号CLK的频率为几分之一的写周期。
通过本发明方法可得到稳定的时钟信号CLK,也能调整时钟信号CLK的频率,时钟信号CLK的频率可通过两种方式来进行调整:1、通过调整异步总线上每次写操作的时间来调整时钟信号CLK的频率;2、通过写操作调整数据线上高低电平的翻转时间来调整输出时钟信号CLK的频率;如果利用多个数据线进行控制,还可以输出多路的时钟信号供不同的外设使用。而且外部电路简单,配合软件可以灵活地满足各种时钟需求,外设和从设备无需自带时钟模块,能够减低成本,无需额外占用电路板的面积。
本领域的技术人员可以对本发明进行各种修改和变型,倘若这些修改和变型在本发明权利要求及其等同技术的范围之内,则这些修改和变型也在本发明的保护范围之内。
说明书中未详细描述的内容为本领域技术人员公知的现有技术。
Claims (1)
1.一种用异步总线产生时钟输出的方法,其特征在于,包括以下步骤:
(1)将主设备的数据线DATA连接到D触发器的输入端,将主设备的写信号WE连接到D触发器的锁存信号LE上;D触发器的输出作为时钟信号CLK;
(2)主设备在异步总线上应用DMA方式连续进行写操作;
(3)数据线DATA在多次写操作时进行电平翻转,使得D触发器的输出为周期性的时钟信号CLK;
步骤(2)中,通过调整异步总线上每次写操作的时间来调整输出时钟信号CLK的频率,具体过程如下:一个Tclk时钟周期是由两个TWE写周期时间决定的,而一个TWE的时间又主要由TWS、TWL和TCH决定的,TWS表示片选信号CS有效到写信号WE有效的时间;TWL表示写信号WE低电平时间;TCH表示片选信号CS高电平时间,时钟信号CLK的频率F=1/2*(TWS+TWL+TCH);
步骤(3)中,通过写操作调整数据线上高低电平的翻转时间来调整输出时钟信号CLK的频率,具体过程如下:在每次写操作时,写信号WE使D触发器在输出端会锁存输入端DATA0的信号电平,第一次写操作时,数据总线的DATA0信号是0,则D触发器的输出端变成低电平,并一直锁存维持低电平;第二次写操作时,DATA0信号变成1,触发器的输出端此时则变成高电平,并一直锁存维持高电平,当每次写操作时,DATA0都会反复变化,则D触发器在输出端产生高低电平周期变化的波形,也即需要的时钟信号CLK,时钟信号CLK的时钟频率是写信号WE周期频率的一半。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610679683.7A CN106326158B (zh) | 2016-08-18 | 2016-08-18 | 用异步总线产生时钟输出的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610679683.7A CN106326158B (zh) | 2016-08-18 | 2016-08-18 | 用异步总线产生时钟输出的方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106326158A CN106326158A (zh) | 2017-01-11 |
CN106326158B true CN106326158B (zh) | 2019-05-07 |
Family
ID=57743063
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610679683.7A Active CN106326158B (zh) | 2016-08-18 | 2016-08-18 | 用异步总线产生时钟输出的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106326158B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104617924A (zh) * | 2015-02-06 | 2015-05-13 | 中国人民解放军国防科学技术大学 | 高速低功耗多阈值异步置位复位保持型d型触发器 |
CN104767516A (zh) * | 2014-01-06 | 2015-07-08 | 上海华虹集成电路有限责任公司 | 异步信号同步电路 |
US9229433B1 (en) * | 2013-06-04 | 2016-01-05 | Pmc-Sierra Us, Inc. | System and method for synchronizing local oscillators |
CN105224485A (zh) * | 2014-07-03 | 2016-01-06 | 刘伯安 | 一种普适的串行数据的接收方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2527108A (en) * | 2014-06-12 | 2015-12-16 | Ibm | Tracing data from an asynchronous interface |
-
2016
- 2016-08-18 CN CN201610679683.7A patent/CN106326158B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9229433B1 (en) * | 2013-06-04 | 2016-01-05 | Pmc-Sierra Us, Inc. | System and method for synchronizing local oscillators |
CN104767516A (zh) * | 2014-01-06 | 2015-07-08 | 上海华虹集成电路有限责任公司 | 异步信号同步电路 |
CN105224485A (zh) * | 2014-07-03 | 2016-01-06 | 刘伯安 | 一种普适的串行数据的接收方法及装置 |
CN104617924A (zh) * | 2015-02-06 | 2015-05-13 | 中国人民解放军国防科学技术大学 | 高速低功耗多阈值异步置位复位保持型d型触发器 |
Also Published As
Publication number | Publication date |
---|---|
CN106326158A (zh) | 2017-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10044456B1 (en) | Clock generation with non-integer clock dividing ratio | |
US7945803B2 (en) | Clock generation for multiple clock domains | |
CN104821802B (zh) | 时钟生成方法及时钟生成电路 | |
CN1091977C (zh) | 用于非整数倍频系统的时钟同步方法电路 | |
CN101868948B (zh) | 时钟控制电路以及发送机 | |
US10146251B2 (en) | Semiconductor device | |
WO2018120612A1 (zh) | 一种数据采样方法、芯片和计算机存储介质 | |
CN106326158B (zh) | 用异步总线产生时钟输出的方法 | |
JP2012181724A (ja) | クロック同期化回路及び半導体集積回路 | |
CN108984446B (zh) | 基于fpga原语的phy接口及fpga芯片 | |
US7127628B2 (en) | Method for automatically regulating an oscillator | |
US20040003194A1 (en) | Method and apparatus for adjusting DRAM signal timings | |
US9429979B2 (en) | Circuit and method for producing USB host working clock | |
CN101877586A (zh) | 计算机时钟电路 | |
CN107046414A (zh) | 相位与频率控制电路和包括其的系统 | |
KR100656462B1 (ko) | 반도체 메모리 장치의 데이터 출력 클럭 생성 회로 및 방법 | |
CN107271891A (zh) | 一种序列脉冲上升沿加抖的装置 | |
CN104375968A (zh) | 主机端外围接口电路 | |
CN106294260B (zh) | 数据从异步总线输出到同步总线的方法 | |
JP2007312321A (ja) | シリアル・パラレル変換用の半導体集積回路 | |
CN203433407U (zh) | Usb时钟产生电路 | |
US9378175B2 (en) | Data transfer between a master and slave | |
CN103378823A (zh) | 运用脉波辨识的频率产生方法与系统 | |
JP5315882B2 (ja) | 半導体装置及び通信方法 | |
CN106294259B (zh) | 从异步总线到同步总线的写时序适配方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |