关于ALTERA的FPGA的弱上拉问题
筆者在使用的過(guò)程中發(fā)現(xiàn)FPGA的IO口如果作為輸入端口的話,默認(rèn)是懸浮輸入,這樣檢測(cè)到值就可能在1、0之間跳動(dòng)。例如,筆者做的事4*4鍵盤的掃描,沒有設(shè)置若上拉的時(shí)候,總會(huì)出現(xiàn)錯(cuò)誤的按鍵值。后來(lái)筆者猜想可能是懸浮輸入引起的,但是硬件電路又不能不允許在改變了,所以只能去需找軟件上的解決方法,這時(shí)候有人建議筆者去設(shè)置弱上拉電阻。最后經(jīng)過(guò)弱上拉設(shè)置之后問(wèn)題解決了。經(jīng)過(guò)查找筆者找到這樣的一段話:
Altera與Xilinx內(nèi)部提供的上下拉一般是弱的,也就是電阻都比較大,這樣電流比較小,充電比較慢,導(dǎo)致上下拉的速度比較緩慢。這樣做的好處,一是提供了上下拉供開漏電路使用,另一方面因?yàn)楸容^弱,可以由FPGA外面的電路來(lái)提供強(qiáng)下拉將其override掉。如果內(nèi)部比較強(qiáng),則不方便將其減弱。
筆者遇到兩種情況:1)FPGA在上電瞬間內(nèi)部邏輯還沒有配置好之前,IO口是處于弱上拉的,這種弱上拉對(duì)我們來(lái)說(shuō),有可能不是我們想要的,這時(shí)候就可以通過(guò)加下拉電阻的方法將其拉下來(lái),這個(gè)電阻一般在2~10k左右。2)像筆者在剛開始描述的那樣,需要一個(gè)上拉電阻,我們就需要手動(dòng)去設(shè)置了。這樣看來(lái)弱上拉就是非常有用的啦。
筆者在此介紹兩種設(shè)置IO口為弱上拉的方法:
第一種:(Qii版本:11.0)
1、在Qii軟件中選擇Assignments,然后選擇Assignment Editor。
2.接下來(lái)進(jìn)入如下圖所示界面,注意在右邊選擇I/O Features選項(xiàng)。
?
3、選中后出現(xiàn)下圖所示界面,然后雙擊擊To的位置的下面,
4、出現(xiàn)如下圖所示按鈕,點(diǎn)擊按鈕
5.按照下圖所示順序添加需要弱上拉的引腳,選擇完成后點(diǎn)擊“OK”,所需引腳就添加上了,
6.接下來(lái)需要對(duì)給引腳進(jìn)行配置了,如下圖所示對(duì)該引腳進(jìn)行配置 。
7.配置完成之后重新編譯,在工程文件下的*.qsf文件中就能發(fā)現(xiàn)這樣一句話:
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to fm
這句話表明,fm這個(gè)引腳已經(jīng)設(shè)置為弱上拉了。
?
第二種方法:
?
我們可以直接在TCL腳本文件中將fm這個(gè)管教直接配置成弱上拉。
set_instance_assignment -name WEAK_PULL_UP_RESISTOR ON -to fm
?
第一種方法如果熟練的話,對(duì)于比較多的管教來(lái)說(shuō)操作起來(lái)是相當(dāng)方便的。第二種方法也比較實(shí)用。
轉(zhuǎn)載于:https://www.cnblogs.com/zhezhe1988/p/3866637.html
總結(jié)
以上是生活随笔為你收集整理的关于ALTERA的FPGA的弱上拉问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 迪杰斯特拉--- 模板(求最短路径/输出
- 下一篇: lambda表达式初步