芯动力——硬件加速设计方法 (18).pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
本小节核心内容 一、结绳法 1. “结绳法”适合任何时钟域的过渡。“结绳法”原理是,将快时钟信号的脉冲周期延长,等 到慢时钟同步采样后再“解绳”,还原为原来的脉冲周期宽度。 2. 结绳就是将单脉冲延长,以方便采集到数据。结绳的方法归结为2 类:(1)利用脉冲的 边沿做时钟;(2)利用脉冲的电平(部分场合要求最小脉冲宽度)做选择器或者异步复位, 置位。另外的关键点就是什么时候结绳结束(采集到了数据就要让对方回到初始状态) , 这里的操作也有2 种方法:(1)利用采集到的脉冲做异步复位,置位。(2)利用采集到 的脉冲再次结绳采集做握手响应信号。 3. 结绳法可以解决快时钟域向慢时钟域过渡的问题, 且其适用的范围很广。但是结绳法 实现较为复杂,特别是其效率不高,在对设计性能要求较高的场合应该慎用。 二、FIFO 1. 多bit 数据跨时钟域如何传输?数据流和指示信号不同:数据流大多具有连续性,即背 靠背传输;数据流要求信号具有较快的传输速度。通常来说,解决方法有两种,一种是 两个时钟域通过SRAM 来缓冲。另一种方法是FIFO。 2. FIFO 的英文名称是first in first out,是一种先进先出的储存结构;他与普通存储器的区别 是没有外部读写地址线,这样使用起来非常简单,但缺点就是只能顺序写入数据,顺序 的读出数据,其数据地址由内部读写指针自动加1 完成,不能像普通存储器那样可以由 地址线决定读取或写入某个指定的地址。 3. FIFO 的功能类似于一个调节上下游水量的一个蓄水池。FIFO 的上游结点是FIFO 的数据 输入端,在写信号有效时,数据将被写入FIFO,由FIFO 内部的写指针控制,并且在FIFO 内部,写指针递增一个单元,同时FIFO 的满信号(FIFO fulll Signal)将控制上游结点是 否发送数据;FIFO 的下游节点是FIFO 的数据输出端,当读信号有效时,FIFO 中的数据 将被读出,由 FIFO 内部的读指针控制,并且在 FIFO 内部读指针递增一个单元,同时 FIFO 空信号(FIFO empty Signal)将控制下游节点是否读出数据。如果FIFO 内部的空 间已经被写满,则实时生成满信号,以反压上游节点,上游节点停止写新的数据进来, 否则就会把已经写好的数据冲掉。如果FIFO 内部的数据全部被读,则实时生成空信号, 控制下游节点不再进行数据读操作。否则,下游节点就会将读过的数据重新再读一遍。 从这里也可以看出,空信号和满信号对于FIFO 的控制非常重要。 4. FIFO 主要用来调节上下游数据的吞吐量。第一种是,异步FIFO 读写分别采用相互异步 的不同时钟。在现代集成电路芯片中,随着设计规模的不断扩大,一个系统中往往含有 数个时钟,多时钟域带来的一个问题就是,如何设计异步时钟之间的接口电路。异步 FIFO 是这个问题的一种简便、快捷的解决方案,使用异步FIFO 可以在两个不同时钟系 统之间快速而方便地传输实时数据。第二种是,对于不同宽度的数据接口也可以用FIFO, 例如单片机位 8 位数据输出,而 DSP 可能是16 位数据输入,在单片机与 DSP 连接时 就可以使用FIFO 来达到数据匹配的目的。 5. FIFO 通常来说分为同步FIFO 和异步FIFO,其中异步FIFO 是指读写时钟不一致,读写 时钟是互相独立的,这种结构用途最广。

文档评论(0)

恬淡虚无 + 关注
实名认证
内容提供者

学高为师,身正为范.师者,传道授业解惑也。做一个有理想,有道德,有思想,有文化,有信念的人。 学无止境:活到老,学到老!有缘学习更多关注桃报:奉献教育,点店铺。

1亿VIP精品文档

相关文档