Vivado 使用教程

Vivado 使用教程

目录

一、创建工程

二、创建文件

三、编写代码

四、仿真验证

五、配置管脚

六、生成Bitstream文件并烧录

一、创建工程

1.左边创建(或打开)工程,右侧可以快速打开最近打开过的工程。

2.来到这一步,命名工程并设置工程的存放路径(这里以D触发器为例)

3.选择RTL点击next。会来到添加文件环节(可以在这里添加.v等文件,不过后面再添加是一样的)直接点击next

4.选择芯片型号(根据开发板选,这里随便选的)完成后点next会弹出信息概要,finish完成。

       

二、创建文件

完成上述步骤会进入当前界面:

1.工程管理器add sourse添加(创建)设计文件,创建文件后选择Verilog语言并命名。

2.定义端口(可选),若在这定义后,文件会自动生成端口定义的代码,比自己敲省时间更方便。

(端口没有说明类型即默认wire类型,可根据情况定义reg类型:“output reg q”)

         

3.设计文件创建完成

三、编写代码

1.代码以D触发器为例:

`timescale 1ns / 1ps //timescale 时间单位/精度 module dff( //D触发器 input wire clk, //时钟信号 input wire d, //输入信号 output reg q, //输出信号 output reg q_n //输出信号取反 ); always@(posedge clk) begin q <= d; q_n <= !d; end endmodule

2.保存后编译(Run Synthesls),再修改报错直到通过。

        图示两处都是编译。点击后来到右图点OK,Number of Jobs 即 CPU 工作线程数,这个与电脑配置有关,配置越高可选数量越多(下图二片标注有误忽略,应该是工作线程数,我忘记改了)。编译的报错可在massage里面查看,尤其注意 error。

四、仿真验证

1.编译成功后创建仿真文件并完成代码编写,参考“步骤二”中设计文件的创建:

( 需选择 “add or create simulate sourse” 

  test bench 代码如下:

`timescale 1ns / 1ps //timescale 时间单位/精度 module dff_tb( ); //仿真一般无端口列表 reg clk_sim; reg d_sim; wire q_sim; wire q_n_sim; always #10 clk_sim = ~clk_sim; //每10个时间单位对clk进行翻转,即周期为20个单位 initial begin clk_sim = 0; d_sim = 0; #20; //延时20个时间单位(20ns) d_sim = 1; #40; d_sim = 0; #100; $stop; //停止仿真 end dff dff( //模块例化: 原模块名----在顶层文件中命名为 .clk (clk_sim), //原模块端口名----要连接的端口名 .d (d_sim), .q (q_sim), .q_n (q_n_sim) ); endmodule

2.保存后编译(Run Synthesls),再修改报错直到通过。

3.波形仿真 点击Run Simulation

(注意1:当有多个tb文件时,选中要仿真的tb文件 右键设为"active")

(注意2:vivado仿真上限时间在tool-setting-simulation中设置,仿真波形不全看看是否不够)

波形如图,每当clk上升沿到来时q输出d的值,说明代码实现D触发器的功能无误。

五、配置管脚

1.Run implement(跑成功后会解锁Run simulation里最后两个禁用的仿真选项,一般也用不到)

2.跑完后点击上图Open Implement Design文字,再到状态栏点击Window - I/O Ports

分配引脚(分配过的Fixed栏会自动打勾),设置相关参数(通常I/O standar 为LVCOMS33)。

3.ctrl+s保存,并完成命名后OK会生成XDC约束文件,约束文件打开位置见图二

六、生成Bitstream文件并烧录

1.生成bit流文件

2.如图示步骤点击,自动连接硬件,确保开发板已连接且通电否则识别不到。

3.烧录:连接开发板后会在这里出现芯片型号(对应新建工程时选择的型号),右键型号后点击“Program Device”再点Program烧录。

Read more

GLM-4-9B开源:7大测评碾压Llama-3-8B的AI神器

GLM-4-9B开源:7大测评碾压Llama-3-8B的AI神器 【免费下载链接】glm-4-9b 项目地址: https://ai.gitcode.com/zai-org/glm-4-9b 智谱AI正式发布GLM-4系列开源版本GLM-4-9B,在多维度测评中全面超越Meta的Llama-3-8B,标志着国产大模型在开源领域实现重要突破。 行业现状:开源大模型进入性能比拼新阶段 2024年以来,大模型领域呈现"闭源争霸,开源突围"的竞争格局。Meta的Llama-3系列凭借8B和70B两个版本掀起开源热潮,而国内厂商正加速布局中高端开源模型市场。GLM-4-9B的推出,不仅是智谱AI继ChatGLM3后的又一力作,更通过实测数据证明国产开源模型已具备与国际主流模型同台竞技的实力。当前,90亿参数级别正成为企业级应用的黄金平衡点,既保证性能又兼顾部署成本,成为行业落地的优先选择。 核心亮点:全维度超越的"七项全能"模型 GLM-4-9B在学术测评与功能扩展两方面展现出显著优势。在MMLU(多任务语言理解)测评中,以74.7分超越Llama-3-8B-Instruct的6

By Ne0inhk

PFRL源码探秘:从Q函数到策略网络的底层实现原理

PFRL源码探秘:从Q函数到策略网络的底层实现原理 【免费下载链接】pfrlPFRL: a PyTorch-based deep reinforcement learning library 项目地址: https://gitcode.com/gh_mirrors/pf/pfrl PFRL是一个基于PyTorch的深度强化学习库,提供了从Q函数到策略网络的完整实现,帮助开发者快速构建和训练强化学习智能体。本文将深入探索PFRL的核心模块实现原理,揭示深度强化学习算法的底层运作机制。 一、Q函数架构:价值估计的核心实现 Q函数作为值函数近似的核心组件,在PFRL中有着丰富的实现。从基础的DQN到复杂的决斗网络(Dueling DQN),PFRL提供了多种Q函数架构以适应不同的问题场景。 1.1 基础Q函数实现 PFRL在pfrl/q_functions/state_q_functions.py中实现了基础的状态Q函数。其中SingleModelStateQFunctionWithDiscreteAction类是离散动作空间Q函数的基类,通过前向传播方法计算状态价值: cl

By Ne0inhk
Spec-Kit+Copilot打造AI规格驱动开发

Spec-Kit+Copilot打造AI规格驱动开发

作者:算力魔方创始人/英特尔创新大使 刘力 一,什么是Spec-Kit? 在传统的软件开发中,通常先有需求→ 写规格 → 再写代码;规格多数是“指导性文档”,而真正的业务逻辑和边界由程序员“翻译”出来。Spec-Driven Development(规格驱动开发)的理念是,将规格(spec)从“仅供参考”提升为可执行、可驱动的核心工件,直接引导后续设计、计划、任务拆解、实现等流程。spec-kit 是 GitHub 提供的一个工具集 / CLI / 模板库,用来在项目中落地这种流程! Github: https://github.com/github/spec-kit 二,搭建运行环境 本节将指导您从零开发搭建Spec-Kit的运行环境。 第一步:在Ubuntu24.04上安装uv: curl -LsSf

By Ne0inhk
【源力觉醒 创作者计划】开源、易用、强中文:文心一言4.5或是 普通人/非AI程序员 的第一款中文AI?

【源力觉醒 创作者计划】开源、易用、强中文:文心一言4.5或是 普通人/非AI程序员 的第一款中文AI?

前言 * 你有没有发现,AI 正在悄悄渗透进我们的生活:写文案、画插图、做PPT、答作业,它几乎无所不能😍 !但很多人可能会问: AI,我能用吗?用得起吗?适合我吗?特别是中文用户,面对清一色英文界面、动辄上百元的 API 费用、还要“翻墙”的闭源大模型,常常望而却步😩。 * 好消息来了,文心一言4.5 正式开源,带着「能跑、好用、懂中文」的标签亮相😎。这不仅是一款中文大模型,更像是为中文用户量身定做的一把 AI 钥匙,让你在本地就能打开 AI 世界的大门!在这个“不会用 AI 就像不会用手机”的时代,早点上手,早点受益。 * 一起来轻松玩转文心大模型吧👉一文心大模型免费下载地址: https://ai.

By Ne0inhk