Thư viện tri thức trực tuyến
Kho tài liệu với 50,000+ tài liệu học thuật
© 2023 Siêu thị PDF - Kho tài liệu học thuật hàng đầu Việt Nam

Tìm hiểu ngôn ngữ DHVL.doc
Nội dung xem thử
Mô tả chi tiết
TRÖÔØNG ÑAÏI HOÏC KYÕ THUAÄT THAØNH PHOÁ HOÀ CHÍ MINH
KHOA COÂNG NGHEÄ THOÂNG TIN
LUAÄN VAÊN TOÁT NGHIEÄP
NOÄI DUNG ÑEÀ TAØI :
TÌM HIEÅU NGOÂN NGÖÕ VHDL.
VIEÁT CHUÔNG TRÌNH THIEÁT KEÁ MAÏCH COÄNG
8 BIT SONG SONG BCD CHO 2 TOAÙN HAÏNG
GIAÙO VIEÂN HÖÔÙNG DAÃN : THAÀY NGUYEÃN QUOÁC TUAÁN.
SINH VIEÂN THÖÏC HIEÄN : ÑAËNG MINH TUAÁN
Naêm 1999
LÔØI GIÔÙI THIEÄU
Maùy tính coù vò trí quan troïng trong cuoäc soáng,pheùp coängï (adding) laø pheùp toaùn
thöôøng gaëp trong caùc coâng vieäc haèng ngaøy cuõng nhö trong caùc baøi toaùn kyõ thuaät,
kinh teá nhaèm ñeå tính toaùn moät caùch nhanh choùng .Vieäc hieåu bieát thoâng caùc keát caáu
heä thoáng maùy tính laø quan troïng,nghóa laø naém vöõng keát caáu veà maët phaàn cöùng, toå
chöùc thieát keá maïch (caùc maïch ñieän beân trong heä thoáng maùy). Ñieàu naøy daãn ñeán moät
yeâu caàu: caàn coù moät ngoân ngöõ laäp trình coù heä thoáng ñaùp öùng yeâu caàu naøy thoâng qua
maùy tính. Hieän ñaõ coù raát nhieàu phaàn meàm öùng duïng treân lónh vöïc naøy, tuy nhieân
phaàn lôùn khoâng coù tính meàm deûo, linh hoaït, laäp trình chuû ñoäng trong thieát keá.
Moät ngoân ngöõ ñaõ ñöôïc öùng duïng vaø ñang ñöôïc phaùt trieån maïnh ñöôïc giôùi thieäu ôû
ñaây: Ngoân ngöõ VHDL cuøng vôùi phaàn meàm öùng duïng Leonardo vaø Max+plus II.
Em tieán haønh nghieân cöùu caùc chöùc naêng cuûa ngoân ngöõ VHDL caùch söû duïng
phaàn meàm Leonardo vaø Max+plus II ñeå vieát chöông trình thieát keá maïch coäng 2
soá BCD song song
Em xin traân troïng caùm ôn Thaày Nguyeãn Quoác Tuaán vaø caùc thaày coâ trong Khoa
Coâng Ngheä Thoâng Tin Tröôøng Ñaïi Hoïc Kyõ Thuaät ñaõ raát taän tình höôùng daãn vaø
giuùp ñôõ em trong thôøi gian laøm luaän vaên .
PHAÀN I
CAÙCH SÖÛ DUÏNG PHAÀN MEÀM
LEONARDO VAØ MAX+PLUS II
A. CAÙCH SÖÛ DUÏNG LEONARDO.
1. Lôøi môû ñaàu:
Exemplar logic’s Leonardo coâng cuï toång hôïp toái öu vaø phaàn tích maïch logic moät caùch linh
hoaït vaø coù tính taùc ñoäng laãn nhau , ñaõ phaùt trieån ñeå cho pheùp söû duïng caùc thieát keá coâng ngheä
ñoäc laäp : ASIC,FPGA vaø CPLD. Ngöôøi thieát keá coù theå cuûng coá nhöõng thieát keá ñaõ laøm sang
moät thieát keá khaùc , baûo quaûn vaø vaän duïng thöù baäc thieát keá ,söû duïng ngoân ngöõ moâ taû phaàn cöùng
(VHDL) ñeå theå hieän thieát keá cuûa chuùng .
Boä saùch höôùng daãn söû duïng leonardo bao goàm :
Leonardo User Guide giôùi thieäu caùch duøng Leonardo vaø nhöõng doøng thieát keá coù saün cuûa noù.
Leonardo command Reference qui ñònh chi tieát veà caùch söû duïng leänh vaø bieán.
Leonardo synthesis and Technology Guide qui ñònh chi tieát veà caùch toå hôïp vaø toái öu vaø
cuõng qui ñònh cho chuùng ta nhöõng thoâng tin ñeå caøi ñaët coâng cuï trong coâng ngheä .
Leonardo User Guide coù 8 thaønh phaàn :
Phaàn 1 : Giôùi thieäu
Phaàn 2 : Caùch khôûi ñoäng Leonardo ( coù 4 cheá ñoä laøm vieäc vaø 2 cheá ñoä thöïc thi)
Phaàn 3 : Giôùi thieäu veà Flow Guide giuùp baïn khôûi ñoäng thieát laäp doøng thieát keá.
Phaàn 4 : Giao dieän ñoà hoaï (GUI) cuûa Leonardo
Phaàn 5 : Vaøi ñieåm ñaëc bieät trong giao dieän doøng leänh ( command line)
Phaàn 6 : Vaén taét nhöõng leänh trong Leonardo, caùc böôùc caàn thieát keá ñeå xaây döïng doøng thieát
keá .
Phaàn 7 : Moâ taû caùch maø Leonardo löu tröõ döõu lieäu thieát keá.
Phaàn 8 : Moâ taû caùch xem qua thöù baäc cuûa thieát keá .
Leonardo laø moät moâi tröôøng thieát keá coù tính thöù baäc aûng höôûng laãn nhau bao goàm caùc toái öu raøng
buoäc . Leonardo baûo quaûn thöù baäc vaø cho pheùp chuyeån ñoåi qua laïi hoaëc taïo ra caùc thöù caáp thöù baäc
ñeå toái öu keát quûa , ta phaûi chi tieát hoaù cho thoâng tin cho moãi caáp thöù baäc . Leonardo coù theå chaïy
ñöôïc ôû cheá ñoä INTERACTIVE hoaëc coâng cuï BUTTON. Khi chaïy cheá ñoä INTERACTIVE chuùng
ta thöïc hieän :
- Xem qua thöù baäc
- Ñieàu khieån aûnh höôûng doøng thieát keá.
- Xem nhöõng thoâng baùo veà area vaø rieâng ôû baát kyø caáp naøo .
- Laäp raøng buoäc vaø toái öu ôû moïi caáp
- Xem maïch vaø ñöôøng daãn .
2. Khôûi ñoäng leonardo:
Hai cheá hoaït ñoäng :
a.Interactive : 2 giao dieän.
- Giao dieän tröïc tieáp
- Giao dieän doøng leänh .
*Batch (Boù):
- Script mode.
- Galileo compatibility mode
Taát caû nhöõng leänh nhöõng leänh coù theå chaïy töø Gui,doøng leänh ôû cöõa soå chính hoaëc töø hoäp thoaïi
(Dialogue).Hôn nöõ noù coù theå chaïy qua laïi töø Gui vaø doøng leänh hoaëc töø baèng boù (batch) duøng
Script file.
* Cheá ñoä Interactive:
-Graphical user interface : Goõ vaøo leonardo
-Goõ Leonardo – help ñeå xem doøng leänh :
+Neáu trong neàn Unix hoaëc dos goõ :leonardo
+Neáu trong neàn window goõ Star Leonardo
- Doøng leänh (Command line Interface) : Goõ Elsyn
Töø maøn hình giao dieäb trong Unix vaø Dos Shell chuùng ta goõ leänh : Elsyn
-Goõ leänh Elsyn – Help ñeå xem option doøng leänh (leänh maø khoâng chaïy ñöôïc ôû neàn Unix
nhöng chaïy ñöôïc trong neàn Windows , chuùng ta goõ Star elsyn ). Leonardo taïo ra moät shell TCL
qui ñònh töø daáu nhaéc , chuùng ta coù theå nghieân cöùu traïng thaùi thieát keá traïng thaùi chuyeån ñoåi nhö ñaõ
mong muoán vaø chaïy laïi chi tieát cuûa thieát keá vôùi caùch duøng thieát laäp khaùc ñeå xem nhöõng keát quaû
khaùc coù theå thu ñöôïc.
b. BATCH:
Script mode (user-defined flow):
Goõ : Elsyn - File [script-filr]
Leonardo seõ chaïy Tcl Script – file vaø thoaùt . Kòch baûn (Script) suû duïng baát kyø leänh ñaõ ñöôïc
ñònh nghóa ñaày ñuû trong Leonardo vaø khoâng coá ñònh nhö vôùi Galileo Compatibility.Taát caû caùc
leänh Tcl vaø leänh coù theå tìm thaáy trong ñöôøng daån .
Döôùi ñaây laø ví duï veà File Script:
Load – Library X14
Read my_file.vhd
Optimize - targertX14-eff quick
Write my_ file.xnf
Galileo compatibility mode:
Chaïy mode Galileo Compatibility ôû Leonardo trong moâi tröôøng Unix hoaëc Dos shell ta goõ
leänh :
Elsyn Input_file Output_file argurments
Leonardo sau ñoù thöïc thi Tcl Galileo.scr
$ EXAMPLAR/data/galileo.scr
Moâ taû naøy laøm theo thaùi ñoä doøng leänh cuaû galileo gc
Ví duï : elsyn my_file.vhd my_file.xnf –target X14 –effort quick
Leänh toái öu thieát keá VHDL trong file .vhd cho coâng ngheä Xinlinx 4000, vôùi toái öu nhanh , vaø ghi
keát quaû ra maûng my_file.xnf.
3.Flow guide:
Laø coâng cuï giuùp chuùng ta coù theå bieát doøng leänh trong thieát keá trong Leonardo. Ta coù theå duøng
cheá doä default hoaëc do trình caøi ñaët (customize), caû hai höôùng naøy ñoøi hoûi ôû moãi böôùc phaûi tuaàn
töï vaø quy ñònh nhuõng thoâng tin ñeå chaïy moãi leänh . Moãi böôùc moãi hoäp thoaïi (Dialog Box) chuùng
ta phaûi chæ roõ leänh choïn .Baûn thaân leänh ñaõ ñöôïc theå hieän ôû cöõa soå chính Leonardo , nôi maø output
töø leänh cuõng ñöôïc hieån thò .
Chuùng ta coù theå hoïc hai caùch duøng : Dialog Box vaø doøng leänh .
* Running the Flow guide :
Ñeå söû duïng flowGuide , Click tuaàn töï treân moãi Button ñeå hieån thò hoäp thoaïi cuõa moãi leänh. Khi hoäp
thoaïi ñaõ ñöôïc choïn,1 moâ taû vaén taét cuûa hoäp vaø caùch söû duïng cuûa noù ñöôïc hieån thò trong Flowguide
.
Ñeå chaïy moãi leänh ta ñöa vaøo nhöõng thoâng tin yeâu caàu vaø choïn button cuûa hoäp thoaïi . Leänh vaø
output cuûa noù seõ ñöôïc hieän thò treân cöõa soå chính moät caùch chính xaùc nhö chuùng ta goõ vaøo ñoù .
Khi hoaøn thaønh moãi leänh thì nhaép button keá tieáp theo moät trình töï .
* Customize flowguide :
Hoäp thoaïi naøy cho pheùp chuùng ta choïn baát kyø item naøo cho thieát keá .Ñeå deå hieåu hôn veà
moãi item aûnh höôûng ra sau ta dôøi currsor qua item ñoù ñeå hieän moät baûng help hình caàu vôùi thoâng
tin veà Flowguide seõ ñöôïc boå sung neáu item ñoù ñöôïc choïn . Sau khi ñöôïc choïn taát caû item mong
muoán , nhaán button Run flowguide ñeå hieän Flow Guide cuûa mình . Neáu khoâng coù item naøo thay
ñoåi chuùng ta seõ thaáy flowguide default.Ñeå löu Flow guide cuûa mình choïn Save Setting Now töø
Menu Option (hoaëc choïn Save Setting On Exit). Laàn sau Flow guide seõ laø Default. Chuùng ta coù theå
baät taét Customize Flow Guide töø Change Preferrence .
4.Caùch duøng Gui:
* Cöûa soå chính Leonardo:
Cho chuùng ta xöõ lyù doøng leänh leonardo vaø leänh Tcl khaùc ,cuõng nhö vaøi leänh cuûa heä thoáng nhö
cd,pwd… vaø leänh khaùc coù theå tìm thaáy trong ñöôøng daãn .
+ Duøng phím muõi teân ñeå duøng chaïy nhöõng leänh tröôùc ñoù .
+ Goõ vaø leänh :( söû duïng ñöôïc Cut vaø Copy,Paste)
+^w:xoaù töø tröôùc ñoù ,^a veà ñaàu doøng .
+Taát caû leänh xaây döïng c aùch duøng hôïp leänh ñöôïc hieän thò nhö laø input,neáu chuùng ta ñaõ goõ
chuùng ( vaø cuõng caøi saún trong taäp leänh maø chuùng ta coù theå cuoán qua baèng baøn phím muõi teân).
* File menu:
Danh saùch caùc option trong file menu nhö sau:
+Edit file : maøn hình soaïn thaûo Leonardo
+ Run Script : nguoàn kòch baûn Tcl (leänh Tcl Source filename-filename ñöôïc chuùng ta choïn)
.
+Save stranscript:löu Transcript (toaøn boä vaên baûn ñöôïc hieän thò trong cöõa soå chính
Leonardo bao goàm input vaø output ) - Leänh naøy ñöôïc duøng ôû baát kyø thôøi ñieåm naøo
vaø phaûi chæ roõ teân file maø chuùng ta muoán löu . Coù haïn cheá toái ña soá doøng ñöôïc hieän thò
trong transcript (default=1000 doøng)
+Clear transcript : Xoaù taát caû doøng leänh trong transcript
+Exit : thoaùt khoûi leonardo
* Command menu :
Moãi item trong :I/O,Optimize,report vaø Hierachy hieån thò ra hoäp ñoái thoaïi cho pheùp chuùng
ta thieát laäp caùc thoâng soá cuûa leänh vaø chaïy leänh noù .Leänh maø ñöôïc xaây döïng trong hoäp thoaïi
ñöôïc theå hieän trong doøng leänh keøm theo baát kyø output töø leänh ñoù .
+ I/O command menu:
Load library :naïp thö vieän coâng ngheä (Actel,Flex,..)
Read :ñoïc caùc file nguoàn (VHDL,verilog,…)
Load modgen :naïp khoái phaùt sinh Modgen
Write :ghi file ñích
+Optimize command menu:
+Report command menu:
+Hierachy command menu:
+Tool menu:
Taát caû caùc option trong tool menu nhö sau:
Flowguide : hieån thò Flowguide hoaëc customize flowguide
Design Browser: Hieån thò Design Browser: Hieän thò maïch
Schematic viewer: hieän thò maïch.
Constraint editor: hieän trình soaïn thaûo raøng buoäc cho pheùp chuùng ta coù theå laäp caùc thuoäc tính
(raøng buoäc) treân baát kyø ñoái töôïng naøo trong thieát keá .
Convenience Procedures: hieän thò hoäp thoaïi Convenience Procedures cho pheùp truy xuaát 1 vaøi
thuû tuïc Tcl-nôi ñaõ qui ñònh ñeå taïo ra nhöõng coâng vieäc deã daøng thöïc hieän .
+Option menu :
Caùc moâ taû cuûa Option Menu nhö sau:
Change Preferrences: Cho pheùp chuùng ta caøi caùch duøng GUI
Baloon Help :Neáu ñöôïc choïn baûng help hình troøn ,ñöôïc hieån thò baùt cöù luùc naøo taïi vò trí
curror.
Toolbar :hieän toolbar toång quaùt nhaát .Coù theå thay ñoåi vò trí cuõ toolbar trong “option
Change references”
Chuù yù phaûi löu caùch thieát laäp ñoù neáu chuùng ta muoán caùch ñònh vò naøy cho laàn khôûi ñoäng
leonardo sau .
Save setting on exit: taát caû caùc thieát laäp khi thoaùt khoûi Leonardo ñöôïc löu laïi trong laàn sau.
Save setting now: löu caùc thieát laäp hieän thôøi vôùi filr caáu hình leonardo.ini
+Help menu:
Cho pheùp chuùng ta hieän thò caùc thoâng baùo help cho taát caû :
- Leänh :(töông ñöông goõ help command)
- Bieán :(töông ñöông goõ help-variables)
* Customizing the gui :
+ Change Preferences
Chöùc naêng cuûa caùc option trong hoäp thoaïi nhö sau:
- Show about box at starup : hieän thò about box moãilaàn khôûi ñoäng gui
- Ask to save transcript
Before delete : nhaéc nhôû baïn löu caùc transcript khi soá doøng vöôït quaù soá doøng qui ñònh toái ña
tröôùc khi töï ñoäng xoaù
Show customize flow
Guide screeen before flow guide:hieän hoäp ñoái thoaïi flowguide khi baïn choïn button flow guide
cöõa soå chính .
Toolbar Position:vi trí ngaàm ñònh cho caùc toolbar
-Theo chieàu doïc neáu choïn left hoaëc right.
- Theo chieàu ngang neáu choïn top hoaëc button.
Chuù yù :Neáu toolbar ñaõ ñöôïc hieän thò khi item ñaõ bò thay ñoåi
.Max lines :
Chæ roõ doøng quy ñònh toái ña ñöôïc hieån thò ôû cöûa soå chính tröôùc khi xoaù transcript .
Default =1000. Khi vöôït quaù giôùi haïn naøy, baïn ñöôïc nhaéc ñeå löu laïi transcript tröôùc khi bò xoaù
10% cuoái cuøng cuûa doøng vöôït quaù, baïn vaãn coù theå thaáy ñöôïc ôû output gaàn nhaát .
.Editor :söû duïng khi chuùng ta choïn “edit file” töø file menu trong maøn hình cöõasoå chính .
Window color :Cho bieát maøu neàn cöûa soå, coù theå ñöa vaøo baát kyø giaù trò trong moãi vaên baûn hoaëc
ôû daïng thaäp luïc phaân . Cuõng coù theå cho giaù trò töø Button Listbox, neáu click ñuùng baát kyø Item naøo
trong luùc “Set Color Type “, maøn neàn cuûa Listbox seõ thay ñoåi , vì theá chuùng ta coù theå thaáy ñöôïc
maøu naøo thích hôïp.
.Input Textcolor : Cho bieát maøu cuûa vaên baûn treân cöûa soå
.Prompt color : Cho bieát maøu cuûa thoâng baùo loåi .Laäp “set color type”=error
.Set color type : cho bieát giaù trò maøu ñeå thay ñoåi khi chuùng ta choïn moät söï löïa choïn trong
listbox vaø khoâng laøm thay ñoåi maøu neàn hoaëc maøu vaên baûn.
*Boå sung file khôûi ñoäng :
Khi choïn Option save setting now (hoaëc khi chuùng ta thoaùt khoûi Gui vôùi Option Save
Setting On Exit taát caû caùc hieän thôøi ñöôïc löu vaøo File Leonardo.ini trong thö muïc khôûi ñoäng
.Chuùng ta coù theå caøi ñaët file cuïc boä naøy baèng caùch theâm vaøo baát kyø leänh Tcl naøo chuùng ta
caàn .Moät ví duï chung seõ ñöôïc theâm vaøo hoäp thoaïi thö vieän Load Library. File toaøn cuïc
$EXAMPLAR/data/leonardo.ini luoân luoân ôû goác khi khôûi ñoäng . Neáu ngaåu nhieân xaûy ra moät
tk/tcl maõ nguoàn ñaõ ñöôïc ñònh vò trong thö muïc $EXAMPLAR/data/leonardo.ini vaø cuõng ñaõ ñöôïc
boå sung .
* Theâm vaøo moät thö vieän :
Duøng hoäp thoaïi load library.Haõy soaïn thaûo file leonardo.ini trong thö muïc khôûi ñoäng
(choïn option /save setting now neáu noù khoâng hieän dieän truôùc ñoù ) vaø theâm vaøo 1 doøng leänh döôùi
ñaây vaøo phaàn treân:
Append glbvar_priv(techlist)
“mem nam “ library_name_modgen_library_nam “lib cype:11 11”.
5.Giao dieän doøng leänh :
Phaàn naøy moâ taû veà giao dieän doøng leänh , noù cho pheùp :
*Thöïc hieän caùc böôùc ñoäc laäp cuûa quaù trình toång hôïp .
*Ñoïc caùc thieát keá vaøo trong cô sôû döû lieäu leonardo .
*Vieát ñuû caùc thieát keá .
*Naïp caùc coâng ngheä vaø caùc coâng ngheä taïo ra mo dun.
*Toái öu hoaù caùc thieát keá trong cô sôû döû lieäu cho coâng ngheä ñaët bieät.
*Taïo area vaø caùc baùo caùo ñònh thôøi.
Caùc leänh ñöôïc nhaäp vaøo ôû daáu nhaéc khi ôû cheá ñoä töông taùc hoaëc coù theå ñöôïc löu trong file
vaø sau cuøng ñöôïc duøng nhö 1 kòch baûn .
Chuù thích : Taát caû caùc leänh coù theå ñöôïc nhaäp vaøo töø cöõa soå chính leonardo GUI cuõng
gioáng nhö doøng leänh elsyn(non GUI) vaø kòch baûn Tcl.
Leänh help:
Coù theå hieän thò thoâng tin veà caùc doøng leänh baèng caùch duøng leänh help .Leänh help duøng
bieåu thöùc hôïp leä (teân coù coù hoaëc khoâng coù kyù töï lieân keát) vaø in caùch söû duïng cho caùc leänh maø
saép xeáp bieåu thöùc hôïp leä.
Ví duï :help pre* seõ hieän thò thoâng tin veà taát caû caùc leänh maø baét ñaàu vôùi chuoãi pre
Boå sung löïa choïn vaø leänh töï ñoäng :
Giao dieän doøng leäng cuûa leonardo coù söï boå sung leänh töï ñoäng :Ta khoâng ohaûi goõ ñaày ñuõ
leänh khi maø nghóa coù noù khoâng bò caám .
Caùc leänh Leonardo thöôøng coù nhieàu tuyø choïn , löïa choïn thöïc hieän söï boå sung töï ñoäng baïn
khoâng caàn nhaäp vaøo ñaày ñuû .
Naëc danh (Aliasing)
Leonardo ñöa ra leänh Alias cho pheùp caùc chuùng ta coù theå xaùc ñònh teân rieâng cho caùc
chuoãi leänh ñöôïc duøng chung .
Alias Lp List Design - Port
Bieán
Leonardo hoå trôï ngoân ngöõ Tcl. Do ñoù pheùp gaùn bieán vaø söï xaùc ñònh phuø hôïp voùi cuù phaùp
Tcl (set cho thieát laäp bieán vaø $ var_name ñeå ñònh vò trí 1 bieán)
Coù 1 taäp hôïp nhöõng bieán coù lieân keát tröïc tieáp ñeán maùy toång hôïp leonardo. Nhöõng bieán
naøy coù aûnh höôõng ñeán caùch vaän haønh cuûa leänh toång hôïp. Danh saùch bieán leonardo hieän thò ñaày
ñuû khi duøng leänh Help_Variables (Help –V laø ñaày ñuû )
Caøi ñaët giao dieän doøng leänh :
Leonardo naïp kòch baûn döôùi ñaây khi khôûi ñoäng :
$EXEMPLAR/data/leonardo.ini
Coù theå caøi ñaët giao dieän doøng leänh baèng caùch ñieàu chænh file exemplar.ini. Thoâng thöôøng
duøng nhöõng alias vaø caùc thuû tuïc Tcl nhö View_Schematic vaø Push_Design ñaõ ñöôïc xaùc ñònh
trong file naøy coù theå theâm vaøo ñònh nghóa cuaû mình trong file naøy. Neáu ñaõ coù file Examplar.ini
trong thö muïc cuïc boä Leonardo naïp file thay vì trong luùc khôûi ñoäng laø
$EXAMPLAR/data/leonardo.ini.
6.Caùc doøng döõ kieäu :
Phaàn naøy moâ taû moät soá leänh cho pheùp xaây döïng caùc doøng thieát keá .Neáu söû duïng GUI coù
theå xem Flowguide moät coâng cuï hoïc töøng böôùc xuyeân suoát doøng toång hôïp . Ñeå coù theå chi tieát
ñöôïc caùch söû duïng moät leänh ñaùnh vaøo Help command name hoaëc tham khaûo soå tay
Leonardo command reference.
Caùc kyõ thuaät Loading :
Baét ñaàu baát kyø doøng thieát keá naøo , naïp caùc thö vieän coâng ngheä maø ta caàn thieát naïp cho
coâng ngheä ñích ñeå toång hôïp ,vaø coâng ngheä nguoàn vôùi moät daûy (netlist) ñònh roõ coâng ngheä .Ta
duøng leänh load_library ñeå naïp coâng ngheä , ví duï :
Load_library act3
Leänh naøy naïp vaøo coâng ngheä Actel Act3 vaøo trong cô sôû döõ lieäu leonardo.
Moät danh saùch ñaày ñuû caùc coâng ngheä ñöôïc cung caáp bôûi Exemplar ñöôïc lieät keâ trong hoäp
thoaïi naïp thö vieän cuaû leonardo GUI. Caùc taäp tin coâng ngheä ñöôïc ñònh vò trong
$exemplar/lib.Coù theû thu ñöôïc cac thö vieän coâng ngheä boå sung töø nhöõng nhaø baùn haøng cung
caáp hoaëc caùc phoøng thí nghieäm hopaëc nhoùm söu taàm thöù 3.
Chuyeån ñoåi exemplar neáu caàn 1 thö vieän coâng ngheä caàn thieát maø khoâng thoaùt khoûi cd.
Vieäc theå hieän thieát keá :
Keá tieáp ñoïc caùc taäp tin thieát keá , neáu thieát keá laø moät taäp tin ñôn giaûn duøng leänh read ñeå ñoïc noù
.Leänh read coù theå ñoïc nhöõng taäp tin ñöôïc ñònh daïng VHDL, verilog ,edif vaø xnf .Neáu duøng caùc
taäp tin VHDL hoaëc verilog vaø coù thieát keá ñöôïc löu trong nhieàu taäp tin hoaëc duøng caùc taäp tin
VHDL maø chæ bao goàm caùc goùi VHDL caàn thieát ñoái vôùi thieát keá thì toát hôn neân duøng leänh
analyze ñoïc taäp tin VHDL vaø verilog vaø jöu tröõ noù trong caáu truùc döõ lieäu trung gian leänh analyze
khoâng taïo thieát keá ôû thôøi ñieåm naøy . Chuùng ta coù theå phaân tích caùc goùi VHDL vaãn khoâng chöùa
ñöïng moät thieát keá hoaëc thoâng soá thöïc theå VHDL hoaëc khoái verilog .
Caùc leänh phoå duïng :
Chuùng ta coù theå thöïc thi caùc leänh sau khi ñoïc thieát keá , tröôùc hoaëc sau söï toái öu :
* Write : ghi thieát keá ñeán caùc taäp tin ,neáu ghi ra VHDL hoaëc verilog tröôùc khi toái öu ñaïc taû coâng
ngheä RTL style VHDL hoaëc Verilog seõ ñöôc ghi bao goànm caùc phaùt bieåu doøng döõ lieäu ôû möùc thaáp.
* Report _area -all : leänh naøy cho pheùp chuùng ta tìm thaáy nhieàu thoâng tin veà kích thöôùc vaø söï
phöùc taïp thieát keá tröôùc söï toái öu . Noù ñeám taát caû caùc Cell cuûa nuùt laù ñaëc taû coâng ngheä cung caáp
soá löôïng caùc coång AND, OR, DFF, MUX vaø caùc toaùn töû
* Group/ungroup/unfold :
Leänh naøy thao taùc phaân caáp thieát keá.
* View_schematic
Leänh naøy laø ñeû xem sô ñoà Netscope vaø theå hieän thieát keá möùc cao .Noù naïp töï ñoäng thö
vieän kyù hieäu caùc cell trong thieát keá .
Neáu chuùng ta muoán ñöa veà möùc goác , duøng leänh sau:
(ungroup –all –hierachy}
Ñeå löu moät thieát keá ñeán 1 taäp tin ghi noù ra 1 file edif.Coù theå khoâi phuïc thieát keá sau ñoù
baèng caùch ñoïc file edif.
Neáu muoán khoâi phuïc moät thieát keá trong moät phaàn môùi ,baûo ñaûm thö vieän coâng ngheä ñaõ
ñöôïc naïp ñoái vôùi thieát keá ñöôïc aùnh xaï tröôùc khi khoâi phuïc thieát keá töø file edif .
Leonardo ñeå löu tröû nhöõng thoâng tin khoâng aån .Thoâng tin trong file edif ñaày ñuû ñeå caøi
ñaët laïi thieát keá .
Söï toái öu ñoäc laäp coâng ngheä noùi chung chuùng ta coù theå thöïc thi moät vaøi preoptimization treân thieát keá tröôùc khi nhaém vaøo baát kyø coâng ngheä naøo duøng leänh preoptimization. Leänh pre – optimize-common-logic –unsigned.logic – extract thöïc thi söï lan truyeàn
khoâng ñoåi ,loaïi boû caùc bieåu thöùc phuï chung ,loaïi boû caùc maïch logic khoâng duøng vaø laáy
counter/recorder ram.Leänh naøy thöïc thi söï toái öu ñoäc laäp coâng ngheä treân taát caû caùc möùc phaân
caáp trong thieát keá . Noù khoâng thay ñoåi söï phaân caáp .Noù cuõng khoâng lan truyeàn xuyeân suaát söï
phaân caáp ñöôïc ñònh vò hoaëc di chuyeãn maïch logic caùc möùc phaân caáp .
Söï taïo khoái :
Chuùng ta coù theå thöïc hieän taát caû caùc taùc vuï cuaû caùc toaùn töû , vôùi caùc coång ôû möùc thaáp baèng bôûi
caùch duøng leänh Resolve_modgen.Neáu muoán duøng caùc boä taïo khoái ñaëc taû coâng ngheä ñeå thöïc
hieän trong caùc toaùn töû , thöïc thi leänh load moät keânh ñaàu tieân.
Söï toái öu ñaëc taû coâng ngheä :
Duøng leänh optimize seõ aùnh xaïcaùc maïch logic ñeán caùc cell coâng ngheä ñích hoaëc caùc baûng tra cöùu
vaø boå sung boä ñeäm I/O ñeán thieát keá möùc ñænh leänh naøy khoâng thay ñoåi ranh giôùi phaân caáp
nhöng noù seõ thöïc thi toái öu treân möùc cuûa moãi
Phaân caáp vôùi caùc tuyø choïn effort=quick cho keát quaû nhanh nhaát vaø caùc toái öu caùc khu vöïc nhoû .
Ngoaøi ra coøn caùc ñieàu kieän:
Xaùc laäp caùc raøng buoäc :
Söï toái öu thôøi gian:
Söï chuaån bò cho soaïn thaûo:
Caùc coâng ngheä LUT:Xilinx
7. The design database:
Goàm caùc muïc sau:
7.1-Thieát keá moâ hình thoâng tin data:
7.2-Truy xuaát data thieát keá :
8.Söû duïng xem nhanh thieát keá :
Library windows:
Hierachy windows:
Theå hieän doøng ñoái töôïng ñöôïc löïa choïn vaø thieát keá hieän taïi :
Caùc nuùt cuoái maøn hình(bottom row of button):
8.1-Vieäc löïa choïn caùc ñoái töôïng :
8.2-Xaùc laäp caùc ñoái töôïng hieän taïi :
8.3-Söï thao taùc caùc ñoái töôïng theå hieän:
8.4-Boå sung 1 view ñeán cöõa soå hierachy:
8.5-Thaùo boû 1 view cöõa soå hierachy:
8.6-Caäp nhaät design browser :
8.7-Thoâng tin trong coät cöûa soå hierachy:
Cöõa soå hierachy theå hieän 2 coät :
• Coät 1: theå hieän söï moâ taû graphic/text cuûa caùc ñoái töôïng thieát keá .
• Coät 2: caùc thoâng tin boå sung veà 2 loaïi ñoái töôïng : caùc instance vaø port.
B.CAÙCH SÖÛ DUÏNG MAX+PLUS II
* TOÅNG QUAÙT:
Trong quùa trình thieát keá vaø toång hôïp maïch moät yeâu caàu ñaët ra cuoái cuøng laø kieåm tra ñöôïc maïch
ñaõ thieát keá coù keát quûa ñuùng theo yeâu caàu . Trong caùc phaàm meàm veà toång hôïp vaø kieåm tra maïch
coù phaàn meàm Max+plusII laø moät trong nhöõng phaàn meàm raát maïnh veà toång hôïp vaø kieåm tra maïch .
Sau ñaây toâi trình baøy caùch söû duïng veà phaàn meàm naøy :
1. Khôûi ñoäng phaàn meàm Max+plusII :
Sau khi phaàn meàm Max+plus II ñaõ ñöôïc caøi ñaët ta tieán haønh khôûi ñoäng nhö sau :
• Böôùc 1 : Baám vaøo bieåu töôïng MAX2WIN
Sau khi baám vaøo bieåu töôïng ñeå khôûi ñoäng maøn hình Max+PlusII hieän ra nhö sau:
Trình baøy cuûa maøn hình Max+ Plus2 goàm caùc thaønh phaàn sau:
-Doøng 1 :Thanh Toolbar duøng hieän thò thö muïc vaø taäp tin hieän haønh .
-Doøng 2 : Goàm 5 muïc chính :
+ Maxplus2
+ File