FPGA应用学习笔记--时钟域的控制 亚稳态的解决

时钟域就是同一个时钟的区域,体现在laways语句边缘触发语句中,设计规模增大就会导致时钟不同步,有时差,就要设计多时钟域。

会经过与门的延时产生的新时钟域,这种其实不推荐使用,但在ascl里面很常见

在处理时钟域的信号传递,一般会有故障具有随机性,不同工艺出现问题的可能性不同,对于亚稳态的检测很少,故障很难被发现,要设计中要注意。

要经过组合延时,就会起冲突,间隔不够

数据要保证建立时间和保持时间才有效,RTL级无法分析亚稳态的,在门级都很难,提高设计本身的设计!,通过DLL或者PLL控制相位,来达到相位匹配,消除亚稳态。要保持时钟具有整数倍关系

若两个时钟毫无关系,或者FPGA为两个系统提供接口时候,很难使用相位控制

用打两拍的方法,解决单bit的亚稳态问题

FIFO先入先出结构解决多bit数据

用fifo存储数据,然后根据时钟2调整推出数据,要注意防止溢出,要有效握手控制,满标志通知发送端已经满了,空标志通知接收端已经没有数据可以抓取了,

读状态机的示意图,写状态机类似。

相关推荐
JJ_KING&20 分钟前
FPGA实现直流电机转速、电压、电流测量系统(基于EP4CE6F17C8 + INA226)
fpga开发·课程设计
逆小舟1 小时前
【C/C++】指针
c语言·c++·笔记·学习
测试专家1 小时前
HKM9000视频处理卡
fpga开发
武文斌771 小时前
项目学习总结:LVGL图形参数动态变化、开发板的GDB调试、sqlite3移植、MQTT协议、心跳包
linux·开发语言·网络·arm开发·数据库·嵌入式硬件·学习
递归不收敛1 小时前
吴恩达机器学习课程(PyTorch适配)学习笔记:1.3 特征工程与模型优化
pytorch·学习·机器学习
kunge1v52 小时前
学习爬虫第四天:多任务爬虫
爬虫·python·学习·beautifulsoup
哲Zheᗜe༘2 小时前
了解学习MySQL数据库基础
数据库·学习·mysql
peter67684 小时前
pandas学习小结
学习·pandas
机器视觉知识推荐、就业指导4 小时前
STM32 外设驱动模块【含代码】:SG90 舵机模块
stm32·单片机·嵌入式硬件·学习
暴富奥利奥5 小时前
完成docker方式的ros环境配置
linux·学习·docker·容器