在一般电信营业厅中午上班吗上班,工资大概多少

一。关于未用到引脚
未用到的含义是,该引脚/管脚没有分配任何功能,即未被使用(unused)。
为了防止系统上电后,未用到管脚电平为GND或VCC,造成系统混乱,请务必将为用到管脚设置为 输入高阻态。
设置方法如下:
菜单 assignment -& device -& device and pin options.. 里面设置。
将unused pins项目中的状态更改为 as input tri-stated即可
这里面还有别的状态选择,如:输入高阻加弱上拉,但是调试中发现,设置为输入高阻加弱上拉后,有可能导致芯片受干扰,目前原因不明,因此这里推荐如果没有特殊用途,设置为输入高阻态是最保险的。
二。其他内容:关于未分配引脚
对应未用到(unused),Quartus里还有另一个概念,就是未分配(unassigned),指的是Verilog程序中有的输入输出端口,但是没有分配一个引脚给它。这种情况同样是非常危险的,因为Quartus可能会随机分配一个引脚给它,造成难以判断原因和分析的系统故障,因此请务必给每一个输入输出端口分配引脚,无用的输入输出端口请删除
阅读(...) 评论()var sogou_ad_id=731545;
var sogou_ad_height=90;
var sogou_ad_width=980;(window.slotbydup=window.slotbydup || []).push({
id: '3284507',
container: s,
size: '0,0',
display: 'inlay-fix'
quartus问题汇总大全
【问题】Pin Planner 的使用问题:在QuartusII 7.2 ,时序仿真都通过,但是,一旦使用Pin Planner设定引脚后,时序仿真就发生变化,与功能仿真结果不一致,不是理想的结果。使用Pin Planner时要注意些什么问题呢?
【解答】如果在没有设定引脚时就进行时序仿真,那么在后仿真就会不准确。因为当设定引脚以后,需要重新进行布局布线,这和没有设定引脚是不同的,因此,布线的改变自然会影响到时序的改变。通常的做法是:先做好所有的设定,生成网表文件和延时文件,再加上激励文件进行仿真,这个时候的仿真结果是最接近实际情况的。通常的pin设定没有特定要求,差分信号是成对的。所以请不要搞错。时钟信号尽量使用专用的时钟引脚;普通I/O没有什么限制,做好时序约束就可以了。2、
【问题】怎样配置cyclone FPGA的管脚功能?【解答】FPGA芯片的引脚分为好多类,有通用IO,有时钟网络,有复位网络,这些引脚的具体功能是在布线时由用户选择的。你可以自由的配置这些引脚的功能,但最好根据芯片的数据手册进行选择,如将时钟配置到专用时钟引脚上,将复位配置到专用复位引脚上,否则会影响最终的布线结果。3、【问题】分配fpga管脚时该怎么选择,引脚有什么属性需要考虑,quartus2中引脚有几个属性:Reserved,Group,I/O Bank,Vref Group,I/O standard( 3.3-V LVTTL(default) )分别是什么意思,要怎么设置?【解答】首先说IO standard:这个是用于支持对应不同的电平标准。FPGA IO口的电压由IO bank上的VCC引入。一个bank上引入3.3V TTL电平,那么此时整个bank上输出3.3V的TTL电平。设置这个第一是为了和current strength一起计算功率。第二个是用于在IO口上加载正确的上拉/下拉电阻。只要你设置完成,Quartus会按照你的电平标准自动布线。
第二是IO Bank:你在quartus pin planner 的top view下右键然后点击 show IO banks,这个时候就会看到FPGA的管脚被几种颜色划分开了。一种颜色下的IO口代表一组bank。你在吧管脚的location约束完成以后。IO Bank会自动填充完毕的。
第三是Group:Group就是你所输出的信号的名字啦。比如你有一组信号叫cnt。你对cnt的某一根赋值,那么。。这里的Group会自动填充为cnt 。
第四是Reserved:这个是对管脚内部的IO逻辑进行约束的,你在下面可以看到一些值。介绍几个吧。bidrectional:双向,tri-state:三态等等。这个约束的是FPGA在IO端的输入输出区域的逻辑。比如你选择tri-state。那么这个时候,在你IO口前部的IO区,quartus会自动给你生成一个三态门。
第五个是Vref Group:这个Group是bank内部的细分区域,因为一个bank可能多达60个脚。为了快速定位,你可以利用这个vref group来找到某个管脚。(这个是非修改属性)无法修改。4、【问题】我的理解:IO standard是根据你所要输入的电平来设置,Group是根据所分配的信号端口自动确定,而每个引脚的IO Bank本身已经确定! 另外,分配的引脚所属的IO Bank不同有关系吗?引脚的分配除了要考虑专用引脚和用户引脚的区别外,还要考虑什么因素?【解答】理解是正确的,另外,跨越IO bank的信号没有问题。只是注意跨bank的电平是否一致即可。对于跨IO bank的延迟对于FPGA而言没有多少延迟。管脚分配呢,你可以看一下quartus里面pin planner内部那张 top view对于每个管脚的说明。大多数管脚是可以当做普通IO使用的。只是有些特殊要求的时候。只可以使用对应的IO,比如差分输入,高时钟输入等等。这个是要参照对应器件的IO 手册来决定的。而且对应的设计大多数的器件生产商都会给出参考设计。里面包括了IO的设计,pcb的设计以及内部程序端口的约束。所以具体问题具体分析。5、【问题】什么是锁相环(PLL)?锁相环的工作原理是什么?锁相环电路对硬件电路连接有什么要求?
【解答】锁相环是一种反馈电路,其作用是使得电路上的时钟和某一外部时钟的相位同步。PLL通过比较外部信号的相位和由压控晶振(VCXO)的相位来实现同步的,在比较的过程中,锁相环电路会不断根据外部信号的相位来调整本地晶振的时钟相位,直到两个信号的相位同步。
在数据采集系统中,锁相环是一种非常有用的同步技术,因为通过锁相环,可以使得不同的数据采集板卡共享同一个采样时钟。因此,所有板卡上各自的本地80MHz和20MHz时基的相位都是同步的,从而采样时钟也是同步的。因为每块板卡的采样时钟都是同步的,所以都能严格地在同一时刻进行数据采集。
通过锁相环同步多块板卡的采样时钟所需要的编程技术会根据您所使用的硬件板卡的不同而不同。对于基于PCI总线的产品(M系列数据采集卡,PCI数字化仪等),所有的同步都是通过RTSI总线上的时钟和触发线来实现的;这时,其中一块版板卡会作为主卡并且输出其内部时钟,通过RTSI线,其他从板卡就可以获得这个用于同步的时钟信号,对于基于PXI总线的产品,则通过将所有板卡的时钟于PXI内置的10MHz背板时钟同步来实现锁相环同步的。关于更多的不同仪器的锁相环技术,请点击下面相关的连接。
1) QuartusII对代码进行时序仿真时出现Error: Can't continue timing simulation because delay annotation information for design is missing.
原因:如果只需要进行功能仿真,不全编译也是可以进行下去的,但时序仿真就必须进行全编译(即工具栏上的紫色实心三角符号那项)。全仿真包括四个模块:综合器(Synthesis)、电路装配器(Fitter)、组装器(Assember)和时序分析器(Timing Analyzer),任务窗格中会有成功标志(对号)。
2) 在下载运行的时候,出现下面的错误:
Warning: The JTAG cable you are using is not supported for Nios II systems.
You may experience intermittent JTAG communicationfailures with this cable. Please use a USB Blaster revision B.
在运行之前已经将.sof文件下载到开发板上面了,但是依然出现上面的问题。
解决:在配置的时候,在run之后,进行配置,选择target connection,在最后一项:NIOS II Terminal Communication Device中,要选择none(不要是Jtag_uart)如果采用USB Blaster,可以选择Jtag_uart。
之后再run就ok了!
3)Error: Can't compile duplicate declarations of entity &count3& into library &work&
此错误一般是原理图文件的名字和图中一个器件的名字重复所致,所以更改原理图文件的名字保存即可。
-------------------
1.Found clock-sensitive change during active clock edge at time &time& on register &&name&&
原因:vector source file中时钟敏感信号(如:数据,允许端,清零,同步加载等)在时钟的边缘同时变化.而时钟敏感信号是不能在时钟边沿变化的.其后果为导致结果不正确.
措施:编辑vector source file
2.Verilog HDL assignment warning at &location&: truncated with size &number& to match size of target (&number&
原因:在HDL设计中对目标的位数进行了设定,如:reg[4:0]而默认为32位, 将位数裁定到合适的大小
措施:如果结果正确,无须加以修正,如果不想看到这个警告,可以改变设定的位数
3.All reachable assignments to data_out(10) assign '0', register removed by optimization
原因:经过综合器优化后,输出端口已经不起作用了
4.Following 9 pins have nothing, GND, or VCC driving datain port -- changes to this connectivity may change fitting results
原因:有9个脚为空或接地或接上了电源
措施:有时候定义了输出端口,但输出端直接赋&0&,便会被接地,赋&1&接电源. 如果你的设计中这些端口就是这样用的,那便可以不理会这些warning
5.Found pins functioning as undefined clocks and/or memory enables
原因:是你作为时钟的PIN没有约束信息.可以对相应的PIN做一下设定就行了. 主要是指你的某些管脚在电路当中起到了时钟管脚的作用,比如flip-flop的clk 管脚,而此管脚没有时钟约束,因此QuartusII把&clk&作为未定义的时钟.
措施:如果clk不是时钟,可以加&not clock&的约束;如果是,可以在clock setting当中加入;在某些对时钟要求不很高的情况下,可以忽略此警告或在这里修改:Assignments&Timing analysis settings...&Individual
clocks...&...
6.Timing characteristics of device EPM570T144C5 are preliminary
原因:因为MAXII 是比^新的元件在 QuartusII 中的r序并不是正式版的,要等 Service Pack
措施:只影响 Quartus 的 Waveform
7.Warning: Clock latency analysis for PLL offsets is supported for the current device family, but is not enabled
措施:将setting中的timing Requirements&Option--&More Timing Setting--&setting--&Enable Clock Latency中的on改成OFF
8.Found clock high time violation at 14.8 ns on register &|counter|lpm_counter:count1_rtl_0|dffs[11]&
原因:违反了steup/hold时间,应该是后仿真,看看波形设置是否和时钟沿符合steup/hold时间
措施:在中间加个寄存器可能可以解决问题
9.warning: circuit may not operate.detected 46 non-operational paths clocked by clock clk44 with clock skew larger than data delay
原因:时钟抖动大于数据延时,当时钟很快,而if等类的层次过多就会出现这种问 题,但这个问题多是在器件的最高频率中才会出现
措施:setting--&timing Requirements&Options--&Default required fmax 改小一些,如改到50MHZ
10.Design contains &number& input pin(s) that do not drive logic
原因:输入引脚没有驱动逻辑(驱动其他引脚),所有的输入引脚需要有输入逻辑
措施:如果这种情况是故意的,无须理会,如果非故意,输入逻辑驱动.
11.Warning:Found clock high time violation at 8.9ns on node 'TEST3.CLK'
原因:FF中输入的PLS的保持时间过短
措施:在FF中设置较高的时钟频率
12.Warning: Found 10 node(s) in clock paths which may be acting as ripple and/or gated clocks -- node(s) analyzed as buffer(s) resulting in clock skew
原因:如果你用的 CPLD 只有一组全局时钟时,用全局时钟分频产生的另一个时 钟在布线中当作信号处理,不能保证低的时钟歪斜(SKEW).会造成在这个时钟 上工作的时序电路不可靠,甚至每次布线产生的问题都不一样.
措施:如果用有两组以上全局时钟的 FPGA 芯片,可以把第二个全局时钟作为另 一个时钟用,可以解决这个问题.
13.Critical Warning: Timing requirements were not met. See Report window for details.
原因:时序要求未满足,
措施:双击Compilation Report--&Time Analyzer--&红色部分(如clock setup:'clk'等)--&左键单击list path,查看fmax的SLACK REPORT再根据 提示解决,有可能是程序的算法问题
14.Can't achieve minimum setup and hold requirement &text& along &number& path(s). See Report window for details.
原因:时序分析发现一定数量的路径违背了最小的建立和保持时间,与时钟歪斜 有关,一般是由于多时钟引起的
措施:利用Compilation Report--&Time Analyzer--&红色部分(如clock hold:'clk'等),在slack中观察是hold time为负值还是setup time 为负值, 然后在:Assignment--&Assignment Editor--&To中增加时钟名(from
node finder),Assignment Name中增加 和多时钟有关的Multicycle 和Multicycle Hold选项,如hold time为负,可 使Multicycle hold的值&multicycle,如设为2和1.
15: Can't analyze file -- file E://quartusii/*/*.v is missing
原因:试图编译一个不存在的文件,该文件可能被改名或者删除了
措施:不管他,没什么影响
16.Warning: Can't find signal in vector source file for input pin |whole|clk10m
原因:因为你的波形仿真文件( vector source file )中并没有把所有的输入 信号(input pin)加进去,对于每一个输入都需要有激励源的
17.Error: Can't name logic scfifo0 of instance &inst& -- has same name as current design file
原因:模块的名字和project的名字重名了
措施:把两个名字之一改一下,一般改模块的名字
18.Warning: Using design file lpm_fifo0.v, which is not specified as a design file for the current project, but contains definitions for 1 design units and 1 entities in project Info: Found entity 1: lpm_fifo0
原因:模块不是在本项目生成的,而是直接copy了别的项目的原理图和源程序 而生成的,而不是用QUARTUS将文件添加进本项目
措施:无须理会,不影响使用
19.Timing characteristics of device &name& are preliminary
原因:目前版本的QuartusII只对该器件提供初步的时序特征分析
措施:如果坚持用目前的器件,无须理会该警告.关于进一步的时序特征分析会在后续版本的Quartus得到完善.
20.Timing Analysis does not support the analysis of latches as synchronous elements for the currently selected device family
原因:用analyze_latches_as_synchronous_elements setting可以让 Quaruts II来分析同步锁存,但目前的器件不支持这个特性
措施:无须理会.时序分析可能将锁存器分析成回路.但并不一定分析正确.其 后果可能会导致显示提醒用户:改变设计来消除锁 存器
21.Warning:Found xx output pins without output pin load capacitance assignment
原因:没有给输出管教指定负载电容
措施:该功能用于估算TCO和功耗,可以不理会,也可以在Assignment Editor 中为相应的输出管脚指定负载电容,以消除警告
22.Warning: Found 6 node(s) in clock paths which may be acting as ripple and/or gated clocks -- node(s) analyzed as buffer(s) resulting in clock skew
原因:使用了行波时钟或门控时钟,把触发器的输出当时钟用就会报行波时钟, 将组合逻辑的输出当时钟用就会报门控时钟
措施:不要把触发器的输出当时钟,不要将组合逻辑的输出当时钟,如果本身如 此设计,则无须理会该警告
23.Warning (10268): Verilog HDL information at lcd7106.v(63): Always Construct contains both blocking and non-blocking assignments
原因: 一个always模块中同时有阻塞和非阻塞的赋值
24.Warning: Can't find signal in vector source file for input pin |whole|clk10m
原因:这个时因为你的波形仿真文件( vector source file )中并没有把所有的输入信号(input pin)加进去, 对于每一个输入都需要有激励源的
25 Warning:Output pins are stuck at VCC or GND
如果正是希望某些输出被固定置高电平或低电平或者无所谓,就不用管它,否则请检查代码。这样的输出其实没有什么意义.
26.Warning (10208): honored full_case synthesis attribute - differences between design synthesis and simulation may occur。
/* synopsys full_case */; D2 g/ w& N6 S* p6 T; W! C/ `8 M
意思就是:, }# Q# _) p) U' @, ]/ ~; b
告诉合成软件你的case几乎是full case,你(designer)可以保证没有列出的case分支是永远也不会发生的。8 r0 a! o- T! h8 l+ O. {
目的:告诉合成软体不用去考虑没有列出的case分支,便于化简。
限制:当然只有synopsys 的合成软体可以看懂了!所以不建议用,最好还是用default。
缺点:前后仿真不一致,综合的结果和期望的不一致。
27:Warning: No exact pin location assignment(s) for 16 pins of 16 total pins
定义的管脚没有和外部的管脚连接.
28:Warning: Ignored locations or region assignments to the following nodes
Warning: Node &78ledcom[4]& is assigned to location or region, but does not exist in design
设计中没提到&78ledcom[4]& ,而分配了管脚给它。
说明:有时候运行了TCL脚本文件后需要修改,修改后有一些先前分配的管脚不需要了,如果没有delete,则会出现此提示。
解决办法:assignments-&pins,把不用的管脚删除即可(TCL脚本文件里的多余管脚分配语句最好也一起delete)。
PS:到此为止,有错误或警告时按F1查看帮组即可,笨!!!
标签(Tag):
------分隔线----------------------------
------分隔线----------------------------查看: 2551|回复: 0
Quartus II中FPGA的管脚分配保存方法
& &&&在网上看到一个管脚分配的帖子,正好调自己的板子要用,方法够简单,共同学习,在编写自己的管脚扽陪内容时候可以在AD中导出netlist,对应里面的内容进行简单的编辑就可以做好自己的板子的TCL了。
& && & 一、摘要
将Quartus II中FPGA管脚的分配及保存方法做一个汇总。
二、管脚分配方法FPGA 的管脚分配,除了在QII软件中,选择“Assignments -&Pin”标签(或者点击按钮) ,打开Pin Planner,分配管脚外,还有以下2种方法。方法一:Import Assignments 步骤1:使用记事本或类似软件新建一个txt文件(或csv文件),按如下格式编写管脚分配内容(不同的开发版,其内容也不同,本文以我使用的DIY_DE2开发板为范例)。【这种方式格式最为简单】
注意:To和Location两个关键字中间有一个半角逗号
图1 pin.txt步骤2:在QII软件中,选择“Assignments-& Import Assignments”。如图所示,导入xxx.txt或者xxx.csv文件即可
图2 导入pin.txt步骤3:在QII软件中,选择“Assignments-& Pin”标签(或者点击 按钮) ,打开Pin Planner,验证管脚是否分配正确。
图3 验证管脚是否分配正确方法二:导入source xxx.tcl文件 步骤1:在QII软件中,使用“Assignments-& Remove Assignments”标签,移除管脚分配内容,以确保此次操作,分配的管脚没有因为覆盖而出现错误的情况。
图4 Remove Assignments
注:在未执行任何管脚分配操作新工程中,可跳过步骤1。步骤2:使用记事本或类似软件新建一个tcl文件,按如下格式编写管脚分配内容(不同的开发版,其内容也不同,本文以我使用的DIY_DE2开发板为范例)。
注意关键字set_location_assignment和-to的用法。
图5 pin.tcl步骤3:执行pin.tcl
方法1:在QII软件中,使用“View-& Utility Windows-& Tcl Console”标签,打开Quartus II Tcl Console。执行语句:
图6 source pin.tcl
方法2:在QII软件中,使用“Tools-& Tcl Scripts …”标签,打开Tcl Scripts。
图7 Tcl Scripts
选择pin.tcl,选择“Run”标签,执行Tcl文件。步骤4:同方法1的步骤3。
三、FPGA管脚分配文件保存方法使用别人的工程时,有时找不到他的管脚文件,但可以把他已经绑定好的管脚保存下来,输出到文件里。方法一:查看引脚绑定情况,quartus-& assignment-& Pins,打开FPGA引脚界面,在这个界面的菜单中可以保存引脚文件为csv格式(表格形式)和tcl格式。
步骤:File-& Export…-& 选择保存名字和保存格式。
方法二:直接输出管脚配置,assignmengt-& Export assignmengt,可以保存配置为qsf格式,该格式可以用记事本查看,在该文件中同样包含了引脚信息。注意:保存时会在原工程文件夹下新建一个文件夹。
至于元件的其它配置方式,可以在qsf文件和tcl文件中用语句来设置,也可以在Assignment-& device,界面中设置。
加载:使用已经有的引脚文件时,在选项assignment -& Import assignment,中可以选择要加载的引脚文件。此时,可以加载qsf 和 csv(或txt)文件。
保存的csv(txt)文件、qsf文件和 tcl文件的区别:
csv(txt)文件:包含芯片所有管脚信息,包括分配的和未分配的;
qsf文件:包含管脚分配信息和芯片信息;
tcl文件:只包含已分配管脚信息。
Powered by

我要回帖

更多关于 电信营业厅上下班时间 的文章

 

随机推荐