芯路恒电子技术论坛

 找回密码
 立即注册

扫一扫,访问微社区

热搜: 活动
查看: 726|回复: 2

报错【176310】Can't place multiple pins assigned to pin location Pin_F16

[复制链接]
  • TA的每日心情
    开心
    2018-10-24 21:56
  • 92

    主题

    193

    帖子

    8617

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    8617
    发表于 2018-4-17 22:00:25 | 显示全部楼层 |阅读模式
    本文以经典的Starter红色学习套件为例讲解,在所有Altera 的FPGA器件上都可以通过类似的思路去分析,并使用相同的方法解决。

    关于芯路恒FPGA学习套件中使用SDRAM后在全编译时报错,提示无法分配引脚到指定Pin问题的解释以及处理方法:
    在我们芯路恒FPGA开发板上,Starter开发板使用了一片128Mbit的SDRAM存储器。当大家在自己建立工程,或者移植其他家的工程时候,往往之前一切顺利,但是在最终分配完引脚进行全编译时,都会报错,报错内容如下:
    温馨提示,点击图片可以查看高清大图
    01.png
                                  
      
    Can't place multiple pins assigned to pin location Pin_F16  (IOPAD_X34_Y18_N21)”
      
    另外在AC620开发板上,当使用通用显示扩展接口接VGA或触摸屏时,分配引脚也会遇到该问题。

    这句提示翻译成中文的意思是“无法将多个引脚分配到Pin_F 16这个管脚上”。很多第一次遇见这种问题的朋友会很郁闷,回去检查完引脚分配后,发现并没有重复(况且引脚分配器那里也不让重复分配)。然后就摸不着头脑了。
    其实,我们可以点击这个报错信息前面的三角符号,查看子级的细节提示,如下图所示:
    温馨提示,点击图片可以查看高清大图
    02.png
    通过细节信息我们可以知道,ALTERA_nCEO引脚也被分配到了F16引脚,而nCEO引脚又是什么呢?我们在CycloneIV Device Handbook中第224页找到了关于该引脚的描述:
      
    Output that drives low when configuration  is complete. In a single-device configuration, you can leave this pin  floating or use it as a user I/O pin after configuration. In a multi-device  configuration, this pin feeds the nCE pin of the next device. The nCEO of the  last device in the chain is left floating or used as a user I/O pin after  configuration.
      
    FPGA器件的配置过程完成后,该引脚输出低电。对于一个只配置一个器件的系统,用户可以将此引脚悬空,或者在配置完成后当做普通用户IO使用。在一个需要配置多设备的系统中(链式结构,使用一个Jtag链配置多个FPGA器件),该引脚连接到下一个器件的引脚的nCE。链的最后一个设备的nCEO悬空或在配置完成后作为普通用户I / O引脚使用。
      
      
    If you use the nCEO pin to feed the nCE  pin of the next device,use an external 10-k pull-up resistor to pull the  nCEO pin high to the VCCIO voltage of its I/O bank to help the internal weak  pull-up resistor.(对于多器件配置系统,翻译略)
      
      
    If you use the nCEO pin as a user I/O pin  after configuration, set the state of the pin on the Dual-Purpose Pin  settings
      
    如果用户希望将该引脚在FPGA配置完成后作为普通用户IO使用,需要设置该脚的状态为双功能引脚。(具体见后文图文说明)
      
    通过这两段话我们知道,这个引脚主要用于链式系统中,即当一个系统(单板)上有多个FPGA器件,使用一个JTAG链配置时,该引脚主要用于器件的级联控制。如果在只需要配置一个器件的系统中,则该引脚可以设置为悬空或者在器件完成配置后作为普通用户IO使用。
    在我们芯路恒FPGA学习套件上,只使用了一片FPGA,因此不存在链式配置结构,因此,我们将该引脚作为了普通用户IO使用,并且连接到了SDRAM芯片的addr7上。故而编译时会有此提示。解决方案就是按照手册中摘录的第三段话设置,将该引脚设置为双功能引脚。具体设置步骤如下:
    Quartus II中依次点击【Assigments】-> 【Device】,在弹出的界面中选择“Deviceand Pin Options”
    温馨提示,点击图片可以查看高清大图
    03.png
    在弹出的选项卡中,选择Dual-PurposePins,在右侧双击nCEO的值,在弹出的下拉选项中选择Use as regular I/O即可。
    温馨提示,点击图片可以查看高清大图
    04.png
    然后点击OK退出,重新全编译工程,就没有这个错误啦。
    大家在使用自己的开发板时,如果也提示这样的错误,可以按照这个解决思路来进行,不同的开发板,可能就是该引脚分配的功能不一样(我们芯路恒FPGA开发板是分配到了sdram的addr7上),解决方案并无任何区别。

    回复

    使用道具 举报

  • TA的每日心情
    开心
    昨天 10:43
  • 19

    主题

    229

    帖子

    3217

    积分

    超级版主

    Rank: 8Rank: 8

    积分
    3217
    发表于 2018-4-18 07:40:17 | 显示全部楼层
    很棒~支持小梅哥超详细!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    萌哒
    2018-11-8 15:02
  • 0

    主题

    12

    帖子

    37

    积分

    新手上路

    Rank: 2

    积分
    37
    发表于 2018-11-8 15:02:54 | 显示全部楼层
    666
    回复

    使用道具 举报

    *滑动验证:
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|小黑屋|手机版|Archiver|芯路恒电子技术论坛  

    GMT+8, 2018-11-20 14:01 , Processed in 0.116153 second(s), 12 queries , File On.

    Powered by Discuz! X3.3

    © 2001-2017 Comsenz Inc. Template By 【未来科技】【 www.wekei.cn 】

    快速回复 返回顶部 返回列表