關(guān)于FPGA邏輯引腳分配錯(cuò)誤:Can't place multiple pins assigned to pin location Pin ...
今天無聊,分享一下最近遇到的問題,解決方法,供大家遇到同樣的問題時(shí),快速解決。
調(diào)試485板卡,編寫邏輯,用的控制芯片是EP3C16F484I7,當(dāng)時(shí)硬件的原理圖不是我畫的,但是我需要編寫FPGA邏輯,編寫一部分邏輯后,我想簡單調(diào)試一下,所以分配了一下引腳,運(yùn)行邏輯的時(shí)候。

開始以為是引腳分配有問題,后來仔細(xì)核對(duì)硬件后發(fā)現(xiàn)硬件引腳分配并沒有出現(xiàn)錯(cuò)誤。排除了引腳非配錯(cuò)誤的情況,我們仔細(xì)看上邊的報(bào)錯(cuò)信息,意思是除了io_id[30]用到了引腳Pin_K22外,同時(shí)nCEO也用到了這個(gè)引腳Pin_K22,為什么會(huì)出現(xiàn)這樣的情況,我們知道FPGA基本上都是由SDRAM組成的,使用的時(shí)候必須將.sof當(dāng)成proram進(jìn)FPGA才能夠使用,所以FPGA保留了一些pin作為programming用,一旦FPGA經(jīng)過program之后,這些pin就可以當(dāng)成一般的I/O來使用,這些pin就是dual-purpose pin,所以遇到的問題就是我們用到的這個(gè)引腳是dual-purpose pin。
那么nCEO有什么用,每個(gè)FPGA都有nCE與nCEO兩個(gè)pin,在多個(gè)FPGA級(jí)聯(lián)的系統(tǒng)中,第一個(gè)FPGA的nCE接GND,而第一個(gè)FPGA的nCEO將連接到下一個(gè)FPGA的nCE,如此連接下來,直到最后一個(gè)FPGA時(shí),可以將nCEO floating 或者當(dāng)成普通I/O pin使用。而單片F(xiàn)PGA中, nCE直接接GND, nCEO可以直接floating或者直接當(dāng)I/O pin使用。
既然我們用的是單片F(xiàn)PGA為什么當(dāng)成普通pin會(huì)報(bào)錯(cuò)呢,主要是需要進(jìn)行一下設(shè)置。
將nCEO設(shè)置為普通I/O pin這樣我們使用的時(shí)候,就不會(huì)報(bào)錯(cuò)了。
|