FPGA问题记录之:
Warning (13024): Output pins are stuck at VCC or GND
Warning (21074): Design contains 16 input pin(s) that do not drive logic

硬件平台:Cyclone IV E EP4CE10F17C8
开发平台:Quartus II 64-Bit Version 13.0.1 Build 232 06/12/2013 SP 1 SJ Full Version
实验项目:vga_colorbar
实验模块:vga_ctrl

问题代码

module  vga_ctrl
(input   wire            vga_clk     ,   //输入工作时钟,频率 25MHzinput   wire            sys_rst_n   ,   //输入复位信号,低电平有效input   wire    [15:0]  pix_data    ,   //输入像素点色彩信息output  wire    [9:0]   pix_x       ,   //输出有效显示区域像素点 X 轴坐标output  wire    [9:0]   pix_y       ,   //输出有效显示区域像素点 Y 轴坐标output  wire            hsync       ,   //输出行同步信号output  wire            vsync       ,   //输出场同步信号output  wire    [15:0]  vga_rgb         //输出像素点色彩信息
);//parameter define
parameter H_SYNC    =   10'd96  ,   //行同步H_BACK    =   10'd40  ,   //行时序后沿H_LEFT    =   10'd8   ,   //行时序左边框H_VALID   =   10'd640 ,   //行有效数据H_RIGHT   =   10'd8   ,   //行时序右边框H_FRONT   =   10'd8   ,   //行时序前沿H_TOTAL   =   10'd800 ;   //行扫描周期
parameter V_SYNC    =   10'd2   ,   //场同步V_BACK    =   10'd25  ,   //场时序后沿V_TOP     =   10'd8   ,   //场时序上边框V_VALID   =   10'd480 ,   //场有效数据V_BOTTOM  =   10'd8   ,   //场时序下边框V_FRONT   =   10'd2   ,   //场时序前沿V_TOTAL   =   10'd525 ;   //场扫描周期//reg define
reg     [9:0]   cnt_h       ;   //行同步信号计数器
reg     [9:0]   cnt_v       ;   //场同步信号计数器
//wire define
wire            rgb_valid   ;   //VGA有效显示区域//cnt_h:行同步信号计数器
always@(posedge vga_clk or negedge sys_rst_n)if(sys_rst_n == 1'b0)cnt_h   <=  10'd0;else    if(cnt_h == H_TOTAL - 1'd1)cnt_h   <=  10'd0;elsecnt_h   <=  cnt_h + 1'd1;//hsync:行同步信号
assign  hsync   =   (cnt_h  <=  H_SYNC - 1'd1) ? 1'b1 : 1'b0;//cnt_v:场同步信号计数器
always@(posedge vga_clk or negedge sys_rst_n)if(sys_rst_n == 1'b0)cnt_v   <=  10'd0;else    if((cnt_v == V_TOTAL - 1'd1) && (cnt_h == H_TOTAL - 1'd1))cnt_v   <=  10'd0;else    if(cnt_v == V_TOTAL - 1'd1)cnt_v   <=  cnt_v + 1'd1;elsecnt_v   <=  cnt_v;//vsync:场同步信号
assign  vsync   =   (cnt_h  <=  V_SYNC - 1'd1) ? 1'b1 : 1'b0;//rgb_valid:VGA 有效显示区域
assign  rgb_valid = ((cnt_h >= (H_SYNC + H_BACK + H_LEFT))&&(cnt_h < (H_SYNC + H_BACK + H_LEFT + H_VALID)))&&((cnt_v >= (V_SYNC + V_BACK + V_TOP))&&(cnt_v < (V_SYNC + V_BACK + V_TOP + V_VALID)))? 1'b1 : 1'b0;//pix_data_req:像素点色彩信息请求信号,超前 rgb_valid 信号一个时钟周期
// assign  //pix_x,pix_y:VGA有效显示区域像素点坐标
assign  pix_x = (rgb_valid == 1'b1)? (cnt_h - (H_SYNC + H_BACK + H_LEFT)) : 10'b0;
assign  pix_y = (rgb_valid == 1'b1)? (cnt_v - (V_SYNC + V_BACK + V_TOP)) : 10'b0;//vga_rgb:输出像素点色彩信息
assign  vga_rgb = (rgb_valid == 1'b1) ? pix_data : 16'b0;endmodule

报错信息:

Warning (13024): Output pins are stuck at VCC or GND
Warning (21074): Design contains 16 input pin(s) that do not drive logic

啊啊啊啊啊啊啊,排查了一个小时的错误。果然写代码时要细心啊!!!

//cnt_v:场同步信号计数器else    if((cnt_v == V_TOTAL - 1'd1) && (cnt_h == H_TOTAL - 1'd1))cnt_v   <=  10'd0;else    if(cnt_v == V_TOTAL - 1'd1)            //此处条件写错cnt_v   <=  cnt_v + 1'd1;改为:else    if((cnt_v == V_TOTAL - 1'd1) && (cnt_h == H_TOTAL - 1'd1))cnt_v   <=  10'd0;else    if(cnt_h == H_TOTAL - 1'd1)          //此处条件写错,扫描完一行后(即cnt_h达最大)场计数加一cnt_v   <=  cnt_v + 1'd1;
//vsync:场同步信号
assign  vsync   =   (cnt_h  <=  V_SYNC - 1'd1) ? 1'b1 : 1'b0;           //要细心啊,越图快越易错改为:assign  vsync   =   (cnt_v  <=  V_SYNC - 1'd1) ? 1'b1 : 1'b0;

问题解决。

总结:
1.出现
Warning (13024): Output pins are stuck at VCC or GND
Warning (21074): Design contains 16 input pin(s) that do not drive logic
一般情况下就是代码编写出错。
2.特别是图快时复制粘贴相似变量代码段然后进行修改处容易出错。
3.排查步骤总结
根据报错信息

Warning (13024): Output pins are stuck at VCC or GNDWarning (13410): Pin "pix_x[0]" is stuck at GND...

定位到相应变量(pix_x):

    output  wire    [9:0]   pix_x       ,   //输出有效显示区域像素点 X 轴坐标

在定位到对应变量(pix_x)的幅值语句:

assign  pix_x = (rgb_valid == 1'b1)? (cnt_h - (H_SYNC + H_BACK + H_LEFT)) : 10'b0;

检查赋值语句是否有误,无误则继续排查赋值语句中的其他变量(cnt_h,rgb_valid ),如赋值语句中判断语句中变量cnt_h的赋值语句:

//cnt_h:行同步信号计数器
always@(posedge vga_clk or negedge sys_rst_n)if(sys_rst_n == 1'b0)cnt_h   <=  10'd0;else    if(cnt_h == H_TOTAL - 1'd1)cnt_h   <=  10'd0;elsecnt_h   <=  cnt_h + 1'd1;

若无误则继续排查rgb_valid的赋值语句 :

//rgb_valid:VGA 有效显示区域
assign  rgb_valid = ((cnt_h >= (H_SYNC + H_BACK + H_LEFT))&&(cnt_h < (H_SYNC + H_BACK + H_LEFT + H_VALID)))&&((cnt_v >= (V_SYNC + V_BACK + V_TOP))&&(cnt_v < (V_SYNC + V_BACK + V_TOP + V_VALID)))? 1'b1 : 1'b0;

若无误则继续排查rgb_valid赋值语句中判断语句中变量cnt_h,cnt_v的赋值语句,cnt_h已排查,则只需排查cnt_v,最终找到cnt_v赋值语句中的问题。

FPGA问题记录之:Warning (13024): Output pins are stuck at VCC or GND相关推荐

  1. FPGA错误集锦(二):Output pins are stuck at VCC or GND

    最近在折腾BCD码生成器的时候,发现个玄学错误 在进行与芯片无关的RTL仿真时,一切功能正常.而当进行门级仿真和实物运行的时候,发现Data flip-flop输出都是0.今早翻了下警告,发现其实软件 ...

  2. FPGA实验记录二:VHDL组合逻辑-时序逻辑练习

    FPGA小脚丫开发板学习笔记:VHDL组合逻辑-时序逻辑练习 板子:Altera Cyclone10 STEP小脚丫FPGA开发板 IDE:QuartusII 18.1(Educational) 仿真 ...

  3. FPGA初学记录——数字时钟系统搭建(上)

    FPGA初学记录--数字时钟系统搭建(上) 野火征途Pro开发板教程--数码管动态展示拓展训练,数字时钟系统搭建 文章目录 FPGA初学记录--数字时钟系统搭建(上) 前言 一.问题简述 二.功能解析 ...

  4. FPGA实验记录五:I2C读取AHT10温湿度传感器

    FPGA实验记录五:I2C读取AHT10温湿度传感器 一.AHT10温湿度传感器 1. 简介 AHT10,新一代温湿度传感器在尺寸与智能方面建立了新的标准:它嵌入了始于回流焊的双列扁平无引脚SMD封装 ...

  5. QT问题记录之warning: ‘xxx’ will be initialized after [-Wreorder]

    QT问题记录之warning: 'xxx' will be initialized after [-Wreorder] 在使用Qt进行Application开发的过程中,经常出现如下警告: warni ...

  6. Quartus II -Warning (15714):Some pins have incomplete I/O assignments. Refer to the I/O Assignment

    Warning (15714): Some pins have incomplete I/O assignments. Refer to the I/O Assignment Warnings rep ...

  7. Quartus II -Warning (169177): 68 pins must meet Altera requirements for 3.3-, 3.0-, and 2.5-V

    Warning (169177): 68 pins must meet Altera requirements for 3.3-, 3.0-, and 2.5-V interfaces. For mo ...

  8. warning MSB8004: Output Directory does not end with a trailing slash.

    当在VC里编译时,发现这个警告,就是说设置的目录参数不是以反斜杠结束的目录名称,如下: 1>C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V ...

  9. 【FPGA学习记录1】异步FIFO的介绍

    文章目录 写在前面 1.FIFO的定义以及为什么要用FIFO.FIFO的分类 1.1什么是FIFO 1.2为什么要用FIFO 1.3FIFO的分类 2.异步FIFO的工作原理 2.1FIFO的结构 2 ...

最新文章

  1. Python抓取新浪新闻数据(三)
  2. .NET Mvc Razor也可以这样玩!
  3. python- 基础 range方法的使用
  4. 【追加功能】OFFICE插件管理工具重整后再上路,更好用易用。
  5. qt 中使用openssl_openSSL漏洞致使SSL证书安全配置评级F
  6. DBUtils 主要结果集说明
  7. 【Android源码】Activity如何加载布局
  8. bootstrap 打印组件_如何在Bootstrap项目中用Vue.js替代jQuery
  9. 远程无法连接数据库的问题
  10. 开课吧python小课学了有用吗-未来2年,会计发展新趋势,你有必要了解一下......
  11. Flutter格式化电话号码
  12. mysql adodb_指南从MySQL转向ADODB的方法_MySQL
  13. 桌面计算机里没有桌面显示不出来怎么办,电脑桌面显示不出来图标 所有软件都可以正常工作 怎么解决?...
  14. 小知识 定位测绘领域中全站仪/接收机RTK精度1cm+1ppm的含义
  15. 4399小游戏怎样下载到本地玩
  16. mw310r无线路由器怎么设置虚拟服务器,水星mw310r无线路由器接光猫怎么设置?
  17. Golang Beego框架之WebIM例子分析
  18. android 模拟工具 mac,夜神模拟器mac版-夜神安卓模拟器Mac版下载 V3.8.5.5-PC6苹果网...
  19. 大数据获取与预处理-会计欺诈检测
  20. dlib库 眨眼 张嘴

热门文章

  1. 使用计算机时按什么键打开,电脑怎么重启按什么键
  2. 专业python培训报价多少
  3. XGBoost中如何防止过拟合
  4. 线性代数物理意义学习(从几何角度出发,不同于数值解析解)
  5. mysql迁移时出现错误:INFO [alembic.runtime.migration] Context impl MySQLImpl. INFO [alembic.runtime.migrat
  6. 接收后台数据并向后台发送数据
  7. 2021工资翻倍指南:Android面经,历时一个半月,斩获3个大厂offer
  8. XDOJ-折点计数-46
  9. [实战Java高并发程序设计:读后感:参考文献]第一章
  10. 特斯拉新董事长:在我看来马斯克发推特很明智