lab02---综合RTL设计__Synthesizing a RTL Design

七月时候去了南京参加xilinx暑期学校,认识了很多可爱的伙伴,真诚不掺假的交流令我产生一种想法:技术的提升除了实践也要积极输出
接下来会不定时按照暑期学校的‘课程与实验安排’更新尽量详细的实验流程,具体操作在每次实验的.md文档中,不再赘述。

目标 objectives

  • 使用提供的XDC文件约束电路时序
  • 优化设计
  • 使用提供的基本时序约束综合设计
  • 分析综合后的设计的输出
  • 改变综合的设置并且观察这些设置对于输出的影响
  • 分析综合后的结果

步骤steps

  • 创建工程,在github中已经有源码,加载进去
  • 分析设计源文件的层次结构
  • 打开xdc约束文件查看内容
  • 修改Block Design中的设计
  • 综合设计
  • 分析时序报告
  • 生成资源使用率和功耗的报告1
  • 改变综合的设置为flatten,再次综合并分析结果
  • 查看checkpiont

步骤及相关源码:https://github.com/louisliuwei/FPGA-Design-Flow-using-Vivado/tree/master/source/lab2

代码codes

  • uart_top.v
`timescale 1ns / 1ps
module uart_top(
  // Write side inputs
  input            clk_pin,      // Clock input (from pin)
  input            rst_pin,      // Active HIGH reset (from pin)
  input            btn_pin,      // Button to swap high and low bits
  output     [7:0] led_pins      // 8 LED outputs
);
wire rx_cross;
uart_led U0(
  // Write side inputs
  .clk_pin(clk_pin),      // Clock input (from pin)
  .rst_pin(rst_pin),      // Active HIGH reset (from pin)
  .btn_pin(btn_pin),      // Button to swap high and low bits
  .rxd_pin(rx_cross),      // RS232 RXD pin - directly from pin
  .led_pins(led_pins)      // 8 LED outputs
);
//以下部分由block desgin中的部分组成
system_wrapper U1
   (
    .DDR_addr(),
    .DDR_ba(),
    .DDR_cas_n(),
    .DDR_ck_n(),
    .DDR_ck_p(),
    .DDR_cke(),
    .DDR_cs_n(),
    .DDR_dm(),
    .DDR_dq(),
    .DDR_dqs_n(),
    .DDR_dqs_p(),
    .DDR_odt(),
    .DDR_ras_n(),
    .DDR_reset_n(),
    .DDR_we_n(),
    .FIXED_IO_ddr_vrn(),
    .FIXED_IO_ddr_vrp(),
    .FIXED_IO_mio(),
    .FIXED_IO_ps_clk(),
    .FIXED_IO_ps_porb(),
    .FIXED_IO_ps_srstb(),
    .GPIO_O(rx_cross)
 );
endmodule

  • uart_led.v
  • meta_harden.v (作用为打两拍,使异步信号同步)
  • uart_rx.v
  • uart_baud_gen.v
  • uart_rx_ctl.v
  • led_ctl.v
  • uart_led_timing_pynq.xdc
  • uart_led_pins_pynq.xdc

以上代码见文中的github连接,source/lab2中

原理图schematic

闪光点flicker

  • 在synthesis后,flow navigator/synthesis/open synthesized desgin/内有很多report,可以报告当前设计的时序/资源利用/延迟/功耗 等。

  1. 综合的相关内容参考官网中ug901 vivado synethesis:https://www.xilinx.com/support/documentation/sw_manuals/xilinx2019_1/ug901-vivado-synthesis.pdf ↩︎

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值