你好!欢迎来到深圳市品慧电子有限公司!
语言
当前位置:首页 >> 技术中心 >> 电路保护 >> 连接SPI接口器件 - 第二部分

连接SPI接口器件 - 第二部分


品慧电子讯单个时钟域SPI实现的思路与两个时钟域非常相似。这里为了便于演示没有使用PLL。同时,也不需要sync_stage模块。由于是单个时钟,需要clock_generator来生成dac_sck所需的时钟下降沿条件,dac_sck则用作状态机dac_fsm的触发条件。


LEC2 Workbench系列技术博文主要关注莱迪思产品的应用开发问题。这些文章由莱迪思教育能力中心(LEC2)的FPGA设计专家撰写。LEC2是专门针对莱迪思屡获殊荣的低功耗FPGA和解决方案集合的全球官方培训服务供应商。


莱迪思CrossLink?-NX FPGA拥有丰富的特性,可加速实现高速和低速接口。本文(系列博文的第二篇)描述了使用CrossLink-NX FPGA连接基于SPI的外部组件。第一篇博文介绍了使用两个时钟域实现SPI接口。本文将介绍使用单个时钟域实现连接ADC(亚德诺半导体公司的 ADC AD7476)的SPI接口。两个案例中呈现了两种截然不同的实现接口的方法。


一个时钟域的实现方案(dac_1c)


单个时钟SPI接口方案的实现如图1所示。


连接SPI接口器件 - 第二部分

图1:单个时钟域SPI接口的实现


单个时钟域SPI实现的思路与两个时钟域非常相似。这里为了便于演示没有使用PLL。同时,也不需要sync_stage模块。由于是单个时钟,需要clock_generator来生成dac_sck所需的时钟下降沿条件,dac_sck则用作状态机dac_fsm的触发条件。


clock_generator模块


图2所示的clock_generator模块产生时钟信号dac_clk以及显示dac_sck的下降沿。图 3 显示了 dac_sclk 和 edge_low 的关系。


连接SPI接口器件 - 第二部分

图2:clock_generator模块框图


连接SPI接口器件 - 第二部分

图3:单个时钟域dac_fsm状态机的控制结构


在转换信号被识别后,bit_count计数器加载值15。每当edge_low生效时,串行数据在时钟信号CLK_120的上升沿输出到dac_sdata上。传输16个数据位后,dac_fsm de再次发出就绪信号并等待下一个转换信号。


约束单个时钟域解决方案的设计


1. 约束时钟CLK_120


连接SPI接口器件 - 第二部分


2. 约束dac_clk


连接到dac_sck端口的时钟信号由clock_generator生成。CLK_120和dac_sck之间的关系为4分频。


连接SPI接口器件 - 第二部分


3. 约束DAC输入/FPGA输出


时间值t4、t5和t6描述了外部模块的setup/hold要求。这些要求使用set_output_delay约束进行描述。由于是单时钟域,因此需要多周期约束。


连接SPI接口器件 - 第二部分


运行单个时钟域解决方案的时序分析


正如预期那样,时序分析报告在dac_sdata输出信号上显示出了相同的性能数据。


连接SPI接口器件 - 第二部分


总结


单个时钟域的方法使用了单个时钟分配网络,由于不需要同步阶段与高级功能通信,因而具有设计上的优势。


该项目(dac_1c)以及两个时钟域的项目均可通过邮箱info@lec2-fpga.com索取。

(来源:莱迪思,作者:Eugen Krassin,莱迪思教育能力中心(LEC2)的总裁兼创始人)


免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请电话或者邮箱editor@52solution.com联系小编进行侵删。



推荐阅读:

连接SPI接口器件 - 第一部分

MOSFET性能改进:RDS(ON)的决定因素

如何使用数字信号控制器构建更好的汽车和电动汽车系统

了解 3 种静态电流 (IQ) 的规格

高压放大器在交变电场空间电荷测量研究中的应用

相关文章

    用户评论

    发评论送积分,参与就有奖励!

    发表评论

    评论内容:发表评论不能请不要超过250字;发表评论请自觉遵守互联网相关政策法规。

    深圳市品慧电子有限公司