引腳和區域約束也就是LOC約束(location)。定義了模塊端口和FPGA上的引腳的對應關系。
那么我們應該怎么寫呢?
LOC有固定語法:
INST “instance_name” LOC = location; #location可以是多個合法位置,用逗號隔開。這種多位置約束是在布線的時候布線器選擇一個進行布線。
范圍定位語法:
INST “instance_name” LOC = location:location[SOFT];
使用LOC完成端口定義語法:
NET “Top_Module_PORT” = “Chip_Port”; #LOC的語句存在優先級,連線具有最高優先級
LOC有較多屬性,對引腳約束位置,CLBs,Slice,TBUF,塊RAM,硬核乘法器,全局時鐘(GCLKBUF0,GCLKPAD0),DLL,DCM等。
LOC的常用定位語句:
INST “instance_name” LOC = P12; #將IO引腳分給實例信號
INST “instance_name” LOC = CLN_R3C5; #將邏輯置于3行,5列的CLB中的任何一個Slice。
別的定位語句也就是把后面的LOC的位置改為MULT18X18_X0Y6(位置為乘法器MULT18X18的xy網格的(0,6)),clb_r4c5.s1,clb_r4c6.*定義的是觸發器置于4行5列CLB和4行6列的CLB中最右端的Slice中。
現在再看一下引腳約束文件,發現這個應該有一個專門的做芯片的一個方向,那就是布線。
-
FPGA
+關注
關注
1629文章
21736瀏覽量
603387
發布評論請先 登錄
相關推薦
評論