手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)

这篇具有很好参考价值的文章主要介绍了手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


一、创建一个新的工程

不会新建工程的可以看一下我之前的博客,这里只展示一些简略的新建工程过程。
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
新建好工程后的页面
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)

二、添加ip核

手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
本文配置了四个时钟输出,分别是clk0(100Mhz),clk1(100Mhz,180°相位延迟),clk2(50Mhz),clk4(25Mhz)
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
点击ok直接生成
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
点击generate
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
看到如图所示界面代表IP核已经生成成功了

三、测试IP核

手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
点击“+”新建design source文件
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
将IP核的.veo文件的代码复制到新建的.v文件,并写好代码(.v文件代码如下所示)

`timescale 1ns / 1ps

module ip_clk_wiz(
    input sys_clk    ,
    input sys_rst_n  ,
    output clk_out1  ,
    output clk_out2  ,
    output clk_out3  ,
    output clk_out4  ,
    output locked
);

  clk_wiz_0 instance_name
   (
    // Clock out ports
    .clk_out1(clk_out1),     // output clk_out1
    .clk_out2(clk_out2),     // output clk_out2
    .clk_out3(clk_out3),     // output clk_out3
    .clk_out4(clk_out4),     // output clk_out4
    // Status and control signals
    .resetn(sys_rst_n), // input reset
    .locked(locked),       // output locked
   // Clock in ports
    .clk_in1(sys_clk));      // input clk_in1
    
endmodule

编写仿真文件
首先还是点击加号,创建simulation sources
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)

手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
仿真文件代码如下所示。

`timescale 1ns / 1ps


module tb_ip_clk_wiz();

    reg sys_clk;
    reg sys_rst_n;
    wire clk_100m;
    wire clk_100m_180de;
    wire clk_50m;
    wire clk_25m;
    wire locked;
    
    initial begin
        sys_clk = 1'b0;
        sys_rst_n = 1'b0;
        #200 sys_rst_n = 1'b1;
    end
    
    always #10 sys_clk = ~sys_clk;
    
    ip_clk_wiz ip_clk_wiz_u(
        .sys_clk    (sys_clk),
        .sys_rst_n  (sys_rst_n),
        .clk_out1   (clk_100m),
        .clk_out2   (clk_100m_180de),
        .clk_out3   (clk_50m),
        .clk_out4   (clk_25m),
        .locked     (locked)
    );

endmodule

点击run simulation,选中第一个行为级仿真,观察波形
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)
波形正确
手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)文章来源地址https://www.toymoban.com/news/detail-501766.html

到了这里,关于手把手教你在Vivado创建一个PLL或MMCM的IP核(超详细)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 手把手教你在Windows下搭建Vue开发环境

    最近有小伙伴不会Vue环境的部署,小孟亲自测试了下,大家有需要的可以按照下面的学习。 如果想看视频的,也可以看视频的教程: https://www.bilibili.com/video/BV1if4y1X7BS/?spm_id_from=333.788.recommend_more_video.-1vd_source=e64f225fc5daf048d2687502cb23bb3b 在Windows下搭建Vue开发环境: 官网https://n

    2024年02月08日
    浏览(65)
  • 【最新】手把手教你在VMware中安装Ubuntu虚拟机

    前言 前段时间卸载了Ubuntu双系统,但是发现还是需要使用Ubuntu,遂决定在虚拟机中装一个Ubuntu系统。 已经装有VMware的可以忽略此步。 (1)点击VMware官网下载VMware。 (2)使用Windows系统的点击红色方框处进行下载。 这是笔者下载好的Windows系统使用的VMware17.0.0 VMware17.0.0百度云

    2024年03月28日
    浏览(59)
  • 手把手教你在Docker中安装Nginx(图文超详细)

    本文介绍如何在 Windows Docker Desktop 平台安装 Nginx 容器(Linux 平台同样适用),并详细讲解如何配置 Nginx ,实现 HTTP 请求在后端服务器集群间的负载均衡。 访问 dockerhub 查找所需的镜像版本: 这里我选择 1.24.0 版,执行如下命令: 命令执行结果: 随后,我们第一次运行镜像,

    2024年03月16日
    浏览(72)
  • 9个步骤,手把手教你在Windows上安装Hadoop

    在Windows上安装Hadoop时经常会出现许多错误,很多用户使用基于Linux的操作系统。本文详细讲述如何在Windows上安装和运行Apache Hadoop,如果遇到了问题,可以参考文章中的步骤进行解决。 微信搜索关注《Java学研大本营》 在 Microsoft Windows 上运行 Apache Hadoop 是比较繁琐的任务,在

    2024年02月08日
    浏览(72)
  • 手把手教你在 Windows 环境中搭建 MQTT 服务器

    前些天要对接一家硬件商的设备数据,对方使用的 MQTT 协议点对点透传,所以又赶紧搭建 MQTT 服务器,写 .NET 程序接收数据等等,今天分享一下如何搭建 MQTT 服务器。 MQTT(Message Queuing Telemetry Transport)是一种轻量级的、基于发布/订阅模式的通信协议,专门设计用于在低带宽

    2024年02月03日
    浏览(66)
  • 新手教程科普,手把手教你在bitget walelt用Uniswap

    Uniswap 是以太坊区块链上领先的去中心化交易所 (DEX),允许用户交换和交易各种加密货币。 Uniswap 于 2018 年 11 月推出,是以太坊最早的 DApp 之一。目前有四个版本;其中V1、V2、V3都有开源代码库。 与 Coinbase 或 Binance 等传统中心化交易所 (CEX) 不同,Uniswap 不受任何单一实体控

    2024年03月20日
    浏览(52)
  • 手把手教你在windows使用Docker搭建Minio[详细教程]

    目录 1什么是Minio 2安装Docker 3Docker搭建Minio 4.创建Minio容器并运行 5.进行访问 6安装可能出现的问题         MinIO是一个基于开源的对象存储服务器,MinIO的设计目标是提供高性能、高可用性和高可靠性的对象存储服务。MinIO可以作为一个独立的对象存储服务,也可以在Kuber

    2024年02月12日
    浏览(53)
  • 手把手教你实现一个JavaWeb项目:创建一个自己的网页博客系统(前端+后端)(一)

    一篇博客带你实现一个真正的项目!  先来看看它是什么样式的: 目录: 1、大体步骤🦖:         1、创建Maven项目🦕         2、引入依赖🦕         3、创建必要的目录🦕         4、编写代码🦕         5、打包部署(基于SmartTomcat)🦕         

    2024年02月06日
    浏览(57)
  • 手把手教你在云环境炼丹(部署Stable Diffusion WebUI)

    前几天写了一篇《 手把手教你在本机安装Stable Diffusion秋叶整合包 》的文章,有些同学反映对硬件的要求太高,显卡太TM贵了。今天我再分享一个云服务器炼丹的方法,方便大家快速入门上手,这个云服务不需要特殊网络设置,能连接公网网盘,随开随用,有3090显卡,也有

    2024年02月15日
    浏览(48)
  • 手把手教你在linux环境下更换python的pip源

    搞python的肯定离不开各种各样的第三方包,比如爬虫,有requests,xpath,爬虫界的扛把子Scrapy;Web有django,flask,restframework啥的,还是挺多的,我们一般安装的方式都是pip install xx模块,但是我相信,你们肯定都遇到过这种情况。 如果我们从默认的 https://pypi.org/ 安装的过程非

    2024年02月12日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包